Topic: введенные данные и файл

Добрый день.
Подскажите, пожалуйста.
- Я создал проект, но каждый раз при новом открытии проекта, что-бы добавить туда данные, не отображаются в таблице (table grid) уже введенные данные. Мне надо каждый раз снова нажимать добавить, а потом можно ничего туда не вводить, и сохранить - только после этих манипуляций таблица отображает введенные мною ранее данные.
Как это происходит и почему?
- И второй вопрос. Добавил возможность работы с файлами. Но как реализовать таким образом программу, что-бы файл, который я подтянул, (который соответствует, скажем, конкретному человеку) кидался в папку, которая автоматом создается после этих действий?
Т.е. я делаю новую запись, указываю ФИО, код, эл. почту, и подтягиваю файл ключа (все файлы ключа имеют одинаковое имя !), и после ввода всех данных, после нажатия кнопки "сохранить", - создавалась папка в папке с проектом, которая имеет названия соответствующее полю ФИО (в проекте)..

Или может, я слишком много хочу?

заранее благодарен

Re: введенные данные и файл

Здравствуй,
Отвечает ли это на ваш первый вопрос?
Derek.

Post's attachments

Attachment icon allrecords.jpg 232.47 kb, 145 downloads since 2018-03-27 

Re: введенные данные и файл

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

Re: введенные данные и файл

rain200485 wrote:

Добрый день.
Подскажите, пожалуйста.
- Я создал проект, но каждый раз при новом открытии проекта, что-бы добавить туда данные, не отображаются в таблице (table grid) уже введенные данные. Мне надо каждый раз снова нажимать добавить, а потом можно ничего туда не вводить, и сохранить - только после этих манипуляций таблица отображает введенные мною ранее данные.
Как это происходит и почему?


Пожалуйста приложите ваш проект (zip файл без exe и dll), также укажите форму и название компонента, проверю в чем дело.



rain200485 wrote:

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

Или может, я слишком много хочу?

заранее благодарен


Создайте событие OnClick для кнопки с действием "Сохранить запись"

procedure frmEmployee_Button2_OnClick (Sender: string; var Cancel: boolean);
begin
     frmEmployee.DBFile1.dbCopyTo := 'files\'+frmEmployee.edLastName.Text + ' ' + frmEmployee.edFistName.Text;
end;

Также можете скачать проект с примером:

Post's attachments

Attachment icon DBFile each record in separate folder.zip 6.9 kb, 325 downloads since 2018-03-28 

Dmitry.

Re: введенные данные и файл

Доброе утро.
Обошел неотображаемость данных в таблице созданием кнопки поиска. 
Ваш код подправил под свои нужды...

Но:
- Почему в событиях LastName (frmEmployee) стоят значения OnChange и OnExit   ?  что они значат? без них тоже ведь все нормально и правильно работает? или нет?
- в событиях на форме Form1 также значения стоят на LastName,   а на кнопке Edit стоит значение OnAfterClick
- на гриде в событиях стоят много значений - onchange, onheaderclick, onsortcolumn

что они дают и на что влияют?


и у меня еще вопросы по поводу подцепления файла.
могу ли я добавить еще один dbfile чтобы в ранее созданную папку (предыдущим скриптом) подкидывались еще 2 файла (одним кликом)?
мне просто нужно добавить второй дбфайл? ну в этом то проблемы не будет, а как мне указать, что кидать файлы нужно именно в ту же папку (которая заранее создана?   -  просто в скрипте добавить еще одну запись после  +  ?
У меня сейчас так:
add.DBFile1.dbCopyTo := 'files\'+add.ed3_PIB.Text ;

А мне надо добавить еще в конец, что-бы было так?
add.DBFile1.dbCopyTo := 'files\'+add.ed3_PIB.Text  '  ' + add.DBFile2.dbCopyTo := 'files\'  ;

Верно?

Заранее благодарен

Re: введенные данные и файл

в общем предоставлю программу, потому, что у меня теперь при каждом добавлении новой записи остаются записи предыдущей...
да и в памяти остается висеть закрытое приложение...
и в колонке сертиф. додано?  -  не проставляется да или нет

странно как-то...

Post's attachments

Attachment icon ACSK_key_2017.zip 711.24 kb, 276 downloads since 2018-03-29 

Re: введенные данные и файл

rain200485 wrote:

Доброе утро.
Обошел неотображаемость данных в таблице созданием кнопки поиска. 
Ваш код подправил под свои нужды...

Но:
- Почему в событиях LastName (frmEmployee) стоят значения OnChange и OnExit   ?  что они значат? без них тоже ведь все нормально и правильно работает? или нет?
- в событиях на форме Form1 также значения стоят на LastName,   а на кнопке Edit стоит значение OnAfterClick
- на гриде в событиях стоят много значений - onchange, onheaderclick, onsortcolumn

что они дают и на что влияют?

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

Dmitry.

Re: введенные данные и файл

rain200485 wrote:

и у меня еще вопросы по поводу подцепления файла.
могу ли я добавить еще один dbfile чтобы в ранее созданную папку (предыдущим скриптом) подкидывались еще 2 файла (одним кликом)?
мне просто нужно добавить второй дбфайл? ну в этом то проблемы не будет, а как мне указать, что кидать файлы нужно именно в ту же папку (которая заранее создана?   -  просто в скрипте добавить еще одну запись после  +  ?
У меня сейчас так:
add.DBFile1.dbCopyTo := 'files\'+add.ed3_PIB.Text ;

А мне надо добавить еще в конец, что-бы было так?
add.DBFile1.dbCopyTo := 'files\'+add.ed3_PIB.Text  '  ' + add.DBFile2.dbCopyTo := 'files\'  ;

Верно?

Заранее благодарен

Должно быть так

procedure add_Button1_OnClick (Sender: string; var Cancel: boolean);
begin
     add.DBFile1.dbCopyTo := 'files\'+add.ed3_PIB.Text;
     add.DBFile2.dbCopyTo := 'files\'+add.ed3_PIB.Text;
end;
Dmitry.

Re: введенные данные и файл

rain200485 wrote:

в общем предоставлю программу, потому, что у меня теперь при каждом добавлении новой записи остаются записи предыдущей...
да и в памяти остается висеть закрытое приложение...
и в колонке сертиф. додано?  -  не проставляется да или нет

странно как-то...


Ошибочно выбрано действие для кнопки "Додати" - "Показать запись", необходимо выбрать действие "Новая запись"


Также неправильно настроена кнопка "Відобразити записи"


Приложение остается висеть в памяти, т.к. при закрытии формы Form1, главная форма остается не закрытой frmlogin, ее также необходимо закрывать

procedure Form1_OnClose (Sender: string; Action: string);
begin
    frmLogin.Close;
end;

Поправил ваш проект, приложил к сообщению:

Post's attachments

Attachment icon ACSK_key_2017_fixed.zip 13.01 kb, 307 downloads since 2018-03-29 

Dmitry.

10 (edited by rain200485 2018-03-30 05:33:52)

Re: введенные данные и файл

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


и также при запуске приложения не показываются данные в таблице (грид, которые уже введены были)

а кнопка поиск - все правильно делала, - вы исправили на отображение данных из форм поиска,  но те две формы с поиском по ФИО и каб - они отдельно выводят данные в грид, и они правильно работают.
так что кнопка "відобразити записи" - работала  по назначению.

Re: введенные данные и файл

rain200485 wrote:

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

Форма не закрывается сама по себе, она скрывается, и остается в памяти

frmLogin.Hide;

Проект, который я вам прислал, не остается висеть в памяти.


rain200485 wrote:

и также при запуске приложения не показываются данные в таблице (грид, которые уже введены были)

Если форма открывается с помощью скрипта, данные в гриде не обновляются автоматически, добавьте вызов метода dbUpdate для грида, после Form1.Show;

     // if SQL query found login and password
     if (s <> '0') and (s<>'') then
     begin
          sUser := frmLogin.edUser.Text;       // remember username
          Form1.Caption := 'User: ' + sUser;
          frmLogin.Hide;                       // close login form
          Form1.Show;
          Form1.TG1.dbUpdate; // добавить
     end else MessageDlg('логін або пароль не дійсні!', mtError, mbOk, 0);   // message if the password is incorrect
Dmitry.