Topic: Привязка скрипта к работающей SQL кнопке - окна диалога / уведомления

DriveSoft, выручи плиз, понимаю что вопросы у меня более чем емкие, потому как тему "по мелочи" стараюсь не создавать и пишу когда накопятся важные вопросы:

В проекте есть форма внесения данных, кнопка сохранения сделана SQL скриптом (т.к. необходимо добивать некоторые дефолтные значения в базу при сохранении данных (например тип записи "Сотрудник"))
Задачу сохранения данных эта кнопка выполняет хорошо, но есть особенность:
- При нажатии на кнопку визуально не происходит абсолютно ничего

а) Как можно написать в SQL запросе или в скрипте : закрыть форму после сохранения (не обязательно: и обновить таблицу GRID)  (хотелось бы код сразу, если не сложно, что бы не биться головой об код).

б) Как можно написать код скрипта: что бы при нажатии на кнопку "Сохранить" или "Добавить"  появлялась табличка "Запись добавлена/отредактирована успешно"?
Я танцевал с бубном, пытаясь использовать скрипт "Hello World" , стандартный, заменив процедуру на нажатие кнопки, но при запуске проекта то ";" expected, то ")" expected

в) Совсем не обязательно, но каприз такой предвидится: Возможность выбрать закрыть форму добавления данных или продолжить вносить следующую запись.

г) Можно ли в запросе или в скрипте придумать кнопку "отчистить поля для ввода"?

Re: Привязка скрипта к работающей SQL кнопке - окна диалога / уведомления

Как я уже говорил, не должно быть проблем с дефолтным значением Сотрудник, которое можно задать на этапе проектирования, скиньте проект на support@drive-software.com думаю все это можно сделать без использоваться SQL


а,б) У кнопки есть событие OnAfterClick, которое срабатывает после того, как кнопка выполнит заданное ей действие, т.е. после выполнения SQL запроса в вашем случае, код примерно такой

procedure Form2_Button1_OnAfterClick (Sender: string);
begin
  ShowMessage ('Запись добавлена/отредактирована успешно'); // сообщение
  Form2.Close; // закрываем форму
  
  // для обновления GRID можно из скрипта нажать на кнопку поиска, которая выводит результат поиска в данный GRID
  Form1.Button1.Click;
end;

в,г) можно создать две кнопки для сохранения, одна сохраняет запись и закрывает форму, а вторая кнопка будет сохранять запись и чистить поля поля, чтобы очистить например текстовое поле, можно написать так Form1.Edit1.Text := '';


* в приведенном выше коде, необходимо имена компонентов заменить на свои.

Dmitry.

3 (edited by kodecs 2014-06-02 12:22:56)

Re: Привязка скрипта к работающей SQL кнопке - окна диалога / уведомления

Подкрутил немного проект, сделал дефолтные поля для записи, спасибо, от скриптов сохранения избавились.
У меня нарисовался еще один вопрос: В уроках есть создание групп к которым принадлежит абонент.. Мне нужно нечто подобное сделать, НО под них не создавая отдельных таблиц..

Кейс-ситуация: приложение будет создано для учета ТМЦ и например Сетевых данных компьютеров..
Вход: Имеем таблицу СОТРУДНИКИ, с множеством столбцов... Так же имеем таблицу с подробностями о компах, так же много столбцов.
Необходимо: Сделать связи так, что бы можно было создать выпадающие списки, или что то подобное, для привязки ПОЛЬЗОВАТЕЛЕЙ к компу и наоборот Компа к пользователю.. Не создавая каждого пользователя по два раза, а использую уже имеющийся столбик ФИО в основной базе СОТРУДНИКИ
Выход: Выбрав уже существующего сотрудника можно посмотреть ТТХ его компа , IP и т.д. или выбрав комп - посмотреть кто за ним сидит

Надеюсь это возможно придумать.. У меня был прогресс более или менее, но уже наклацал так что не вспомню как к этому прогрессу вернуться, но там, из выпадающего списка сохранялось значение числовое (я так понимаю порядковый номер строки, без учета сортировки), а не ФИО

EDIT: Выслал вам на почту Проект (Project0_4)

Re: Привязка скрипта к работающей SQL кнопке - окна диалога / уведомления

Вам нужна связь многие ко многим?
когда компьютер может иметь несколько пользователей, а пользователь может иметь несколько компьютеров?

Dmitry.

Re: Привязка скрипта к работающей SQL кнопке - окна диалога / уведомления

DriveSoft wrote:

Вам нужна связь многие ко многим?
когда компьютер может иметь несколько пользователей, а пользователь может иметь несколько компьютеров?

Можно и так (Думаю случаи будут наблюдаться когда у сотрудника два компа и более), но чаще один к одному, т.е. у пользователя один компьютер, один монитор, один телефон и т.д. и что бы в двухстороннем порядке я мог сделать отчет и что закреплено за пользователем и какой пользователь сидит за этим оборудованием

Re: Привязка скрипта к работающей SQL кнопке - окна диалога / уведомления

Посмотрите этот проект, в качестве примера реализации отношения многие ко многим.

База данных авторов и их книг, у авторов может быть несколько книг и у книги может быть несколько авторов, в вашем случае авторы будут компьютерами, а книги автора будут пользователями компьютера.

В примере есть еще таблица Genre для жанра книг, в вашем случае не нужна.


В общих чертах, связь многие ко многим реализуется тремя таблицами, в вашем случае, таблицей компьютеров, таблицей пользователями и таблицей отношениями между пользователями и компьютерами.

Post's attachments

Attachment icon Books and Authors.zip 4.93 kb, 578 downloads since 2014-06-02 

Dmitry.

Re: Привязка скрипта к работающей SQL кнопке - окна диалога / уведомления

Вроде процесс пошел, спасибо большое smile
Попробую теперь поразбираться в этих связях, что бы сделать все удобно, потому что их будет бесчисленное множество smile)