![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 05.05.2022
Сообщений: 10
|
![]()
Мое почтение
![]() Вот фрагмент кода главного окна: void CNotebooksDlg::OnButtonAddNewDevice () { // TODO: Add your control notification handler code here CDialog::OnOK(); CAddNewDeviceDlg window; window.DoModal(); } А вот код окна добавления данных (сразу после того, как в базу будет внесена новая запись): ... CNotebooksDlg window; window.DoModal(); CDialog::OnOK(); ... Премного благодарен ![]() |
![]() |
![]() |
![]() |
#2 |
фрилансер, препод.
Участник клуба
Регистрация: 11.10.2019
Сообщений: 1,040
|
![]()
вынеси код заполнения списка в отдельную функцию и вызывай её как из InitDialog, так и после закрытия модального диалога
|
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 05.05.2022
Сообщений: 10
|
![]() |
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 05.05.2022
Сообщений: 10
|
![]()
Думал новую тему создать, но попробую в дополнение к текущей все-таки - не могу еще один момент осознать: забираю из файла *.mdb поля таблиц в запросе - все нормально, кроме поля с датой. Почему-то поле пишется в переменную CString в формате "2022-05-09 00:00:00", а мне нужно получить, к примеру, "09.05.22". Открывал базу в MS Access, все вроде бы правильно, поле типа "дата", там все отображается корректно. Ну самое тупое - можно считать в таком виде дату, потом процедуру написать, которая будет отделять день/месяц/год и записывать в CString, но хотелось бы попроще вариант придумать...
|
![]() |
![]() |
![]() |
#5 |
фрилансер, препод.
Участник клуба
Регистрация: 11.10.2019
Сообщений: 1,040
|
![]() |
![]() |
![]() |
![]() |
#6 | |
Пользователь
Регистрация: 05.05.2022
Сообщений: 10
|
![]() Цитата:
SqlString2 = "SELECT Main.[S/N], Employers.Employer, History.Date FROM Main INNER JOIN (Employers INNER JOIN History ON Employers.employer_code = History.employer_code) ON Main.device_code = History.device_code"; SqlString2+=" WHERE [S/N]="; SqlString2+="'"; SqlString2+=sSerial; SqlString2+="' ORDER BY History.Date"; У меня поле Date из таблицы History, именно его нужно считать в формате DD.MM.YYYY, но не пойму, как в запрос вставить всю эту конструкцию... В примерах фигурирует вот такое: convert(varchar, getdate(), 104) , но мне нужно не считывать текущую дату, а именно забирать из таблицы. |
|
![]() |
![]() |
![]() |
#8 | |||
Пользователь
Регистрация: 05.05.2022
Сообщений: 10
|
![]() Цитата:
Цитата:
Цитата:
Upd: Выкрутился иначе, вручную: while( !recset2.IsEOF() ) { recset2.GetFieldValue("Date",sDate) ; sYear=sDate; sMonth=sDate; sDay=sDate; sYear.Delete(4,15); sMonth.Delete(7,12); sMonth.Delete(0,5); sDay.Delete(10,9); sDay.Delete(0,8); sDate=sDay+"."+sMonth+"."+sYear; recset2.GetFieldValue("Employer",sE mpl); recset2.MoveNext(); } recset2.Close(); Так как однозначно известна длина поля и формат, просто "откусываю" день, месяц и год, а затем склеиваю все это через "." в нужный формат даты. Последний раз редактировалось shupike; 05.06.2022 в 15:11. |
|||
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Обновление списка баз данных в BDE | abtat | C/C++ Базы данных | 0 | 07.01.2020 13:42 |
Обновление списка баз данных в BDE | abtat | C++ Builder | 0 | 07.01.2020 10:47 |
обновление списка | slipp | Win Api | 7 | 20.11.2013 22:43 |
Обновление списка TStringList | eXa | Компоненты Delphi | 3 | 11.08.2007 16:24 |