Topic: Дата обновления

Добрый день!
Прошу помощи у знатоков. Есть форма загрузки данных из файла Excel. Подскажите, как можно сделать так, чтобы после нажатия кнопки "Загрузить данные" на основной форме с таблицей, в которую как раз и загрузились данные из файла, отображалась надпись типа "Последнее обновление БД: 28.09.2023 08:16".
Благодарю!

Re: Дата обновления

Привет
Это помогает?
Derek.

Post's attachments

Attachment icon load from spreadsheet.zip 448.63 kb, 68 downloads since 2023-09-28 

Re: Дата обновления

derek wrote:

Привет
Это помогает?
Derek.

Дерек, большое спасибо за Вашу помощь! А возможно тоже самое, но чтобы не всплывало окно сообщения, а именно на форме в лэйбле или текстовом поле такое же отображалось? Еще раз благодарю!

Re: Дата обновления

Не, ну народ обленился.... Одну строчку в коде заменить не могут.
https://myvisualdatabase.com/forum/view … hp?id=6262

Визуальное программирование: блог и телеграм-канал.

Re: Дата обновления

k245 wrote:

Не, ну народ обленился.... Одну строчку в коде заменить не могут.
https://myvisualdatabase.com/forum/view … hp?id=6262

Я не программист, а самоучка. Пытаюсь разобраться. Сам пытался поменять, как Вы выразились, строчку, но ничего не вышло, поэтому и прошу помощи. А Вам вместо того, чтобы хейтить лучше бы проявить доброжелательность по примеру Дерека, который постоянно не отказывает и идет на помощь!

Re: Дата обновления

Vickus wrote:
k245 wrote:

Не, ну народ обленился.... Одну строчку в коде заменить не могут.
https://myvisualdatabase.com/forum/view … hp?id=6262

Я не программист, а самоучка. Пытаюсь разобраться. Сам пытался поменять, как Вы выразились, строчку, но ничего не вышло, поэтому и прошу помощи. А Вам вместо того, чтобы хейтить лучше бы проявить доброжелательность по примеру Дерека, который постоянно не отказывает и идет на помощь!

Не проблема: если вы продемонстрируете свои попытки в виде вашего проекта, в котором какая-то часть не работает, я вам лично всё подправлю.


И где вы тут увидели хейтерство? А вот культуру общения на форуме - да, насаждаю ))
https://sun9-79.userapi.com/impg/I-vTwMJbe1Ukj5ZEBzN8cWRIPwohncN2cjWRhA/0PhoO9gVGS0.jpg?size=1200x595&quality=96&sign=d5bdfc8180fb10df651c7f37fb4ecbeb&c_uniq_tag=d-1KiMOXHUVwUXE_EMUj4w3KxLpSDdeUpt7V0aj3AVI&type=album


P.S. Что касается вашей задачи, то нужно правильно формулировать запрос. Вам не просто нужно, чтобы где-то на форме отображалась дата обновления после загрузки. Скорей всего вам необходимо, чтобы эта дата запоминалась в базе и отображалась всё время. А вот обновлялась после того, как загрузили данные из Excel, верно?

Визуальное программирование: блог и телеграм-канал.

Re: Дата обновления

k245 wrote:
Vickus wrote:
k245 wrote:

Не, ну народ обленился.... Одну строчку в коде заменить не могут.
https://myvisualdatabase.com/forum/view … hp?id=6262

Я не программист, а самоучка. Пытаюсь разобраться. Сам пытался поменять, как Вы выразились, строчку, но ничего не вышло, поэтому и прошу помощи. А Вам вместо того, чтобы хейтить лучше бы проявить доброжелательность по примеру Дерека, который постоянно не отказывает и идет на помощь!

Не проблема: если вы продемонстрируете свои попытки в виде вашего проекта, в котором какая-то часть не работает, я вам лично всё подправлю.


И где вы тут увидели хейтерство? А вот культуру общения на форуме - да, насаждаю ))
https://sun9-79.userapi.com/impg/I-vTwMJbe1Ukj5ZEBzN8cWRIPwohncN2cjWRhA/0PhoO9gVGS0.jpg?size=1200x595&quality=96&sign=d5bdfc8180fb10df651c7f37fb4ecbeb&c_uniq_tag=d-1KiMOXHUVwUXE_EMUj4w3KxLpSDdeUpt7V0aj3AVI&type=album


P.S. Что касается вашей задачи, то нужно правильно формулировать запрос. Вам не просто нужно, чтобы где-то на форме отображалась дата обновления после загрузки. Скорей всего вам необходимо, чтобы эта дата запоминалась в базе и отображалась всё время. А вот обновлялась после того, как загрузили данные из Excel, верно?

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

Re: Дата обновления

Vickus wrote:

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

Если нужно ТОЛЬКО В МОМЕНТ ОБНОВЛЕНИЯ, тогда достаточно на форме (Form1)  метку разместить (labUpdateDate).
Чтобы на метке появилась надпись, присвойте свойству caption нужное значение:

procedure Form1_buttonabout_OnAfterClick (Sender: TObject);
begin
   Form1.labUpdateDate.Caption := 'Last Updated On:  ' + datetostr(now) + '   At:  ' + timetostr(time);
end;

Про метку и её свойства можно почитать здесь: https://k245.ru/mvdb/metka-tdblabel.html


P.S. Как только вы закроете программу, информация о дате обновления исчезнет. И при последующем запуске в метке ничего отображаться не будет. Это я так, на всякий случай озвучиваю )))

Визуальное программирование: блог и телеграм-канал.

Re: Дата обновления

k245 wrote:
Vickus wrote:

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

Если нужно ТОЛЬКО В МОМЕНТ ОБНОВЛЕНИЯ, тогда достаточно на форме (Form1)  метку разместить (labUpdateDate).
Чтобы на метке появилась надпись, присвойте свойству caption нужное значение:

procedure Form1_buttonabout_OnAfterClick (Sender: TObject);
begin
   Form1.labUpdateDate.Caption := 'Last Updated On:  ' + datetostr(now) + '   At:  ' + timetostr(time);
end;

Про метку и её свойства можно почитать здесь: https://k245.ru/mvdb/metka-tdblabel.html


P.S. Как только вы закроете программу, информация о дате обновления исчезнет. И при последующем запуске в метке ничего отображаться не будет. Это я так, на всякий случай озвучиваю )))

Большое спасибо! Я точно также сделал чуть раньше, все так и получилось. А чтобы дата сохранялась, необходимо в БД добавить поле типа dateupddb? И вместо лэйбла текстовое поле? А что дальше подскажете?

Re: Дата обновления

Если есть необходимость хранить эти данные в базе, то дальше нужно немного теории почитать:
Про БД, таблицы и поля - https://k245.ru/mvdb/relyatsionnye-bazy-dannyh.html
Про SQL - https://drive.google.com/file/d/1BK2H9q … drive_link
Чтобы дальнейшие объяснения были вам понятны.


Но могут быть и другие решения, не связанные с SQL, например, сохранять эту дату в файле настройки. Settings.ini


Тут все зависит от бизнес-задачи, для которой эта самая дата нужна. А про задачу вы ещё ничего не рассказали: для кого нужна эта дата, что он с ней будет делать и как эта дата влияет на процесс его работы?


Попробуйте составить ТЗ (https://k245.ru/bez-rubriki/proektirovanie.html), работать станет намного легче smile

Визуальное программирование: блог и телеграм-канал.

Re: Дата обновления

k245 wrote:

Если есть необходимость хранить эти данные в базе, то дальше нужно немного теории почитать:
Про БД, таблицы и поля - https://k245.ru/mvdb/relyatsionnye-bazy-dannyh.html
Про SQL - https://drive.google.com/file/d/1BK2H9q … drive_link
Чтобы дальнейшие объяснения были вам понятны.


Но могут быть и другие решения, не связанные с SQL, например, сохранять эту дату в файле настройки. Settings.ini


Тут все зависит от бизнес-задачи, для которой эта самая дата нужна. А про задачу вы ещё ничего не рассказали: для кого нужна эта дата, что он с ней будет делать и как эта дата влияет на процесс его работы?


Попробуйте составить ТЗ (https://k245.ru/bez-rubriki/proektirovanie.html), работать станет намного легче smile

Спасибо за все советы. Дата необходима для визуального контроля. Есть две программы: одна с интерфейсом для пользователя, другая для администратора. Администратор обновляет БД, а пользователь открывая основную форму должен видеть и понимать какой "свежести" данная БД и давно ли ее обновляли. Как-то так. Обновил администратор базу, в таблице появились новые записи или наоборот - удалены, у пользователя есть кнопочка "обновить таблицу", он жмет и видит, что данные были обновлены администратором полчаса назад, как раз в тот промежуток времени пока программа была открыта пользователем и была свернута (неактивна). Вот как-то так.

Re: Дата обновления

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

Визуальное программирование: блог и телеграм-канал.

Re: Дата обновления

k245 wrote:

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

Не могли бы Вы пример прислать?
1.Я создал в таблице БД Main поле dateupd (ДАТА/ВРЕМЯ).
2. На основной форме вынес DatePicker с привязкой к полю dateupd БД Main.
3. На форме Frm_Import на кнопке "Импортировать в базу" создал событие Frm_Import_Button3_OnAfterClick.
А на самом главном я ничего сделать не могу. В скрипте пишу "FrmMain.dupdate.DateTime := ...; (((

14 (edited by dazzleqq 2023-09-30 14:59:37)

Re: Дата обновления

Можно и так (обновленный вариант Derek) big_smile:D:D
P.S. Возможно неправльно, но за то работает) (лучше конечно DateTimerPicker использовать и обновлять не кнопкой, а скриптом, дабы лишними кнопками не засорять форму)

Post's attachments

Attachment icon load from spreadsheet 2.rar 405.93 kb, 53 downloads since 2023-09-30 

Re: Дата обновления

Вот еще вариант

Post's attachments

Attachment icon load from spreadsheet 3.rar 405.75 kb, 55 downloads since 2023-09-30 

Re: Дата обновления

dazzleqq wrote:

Можно и так (обновленный вариант Derek) big_smile:D:D
P.S. Возможно неправльно, но за то работает) (лучше конечно DateTimerPicker использовать и обновлять не кнопкой, а скриптом, дабы лишними кнопками не засорять форму)

Большое человеческое вам спасибо!