Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2017.01.15;
Скачать: [xml.tar.bz2];

Вниз

TUniTable   Найти похожие ветки 

 
bestonix ©   (2011-07-13 09:17) [0]

Доброго здоровья уважаемые.
Разбираюсь в чужих исходниках и пытаюсь исправлять ошибки.
Столкнулся с совершенно непонятной проблемой. На форме есть визуальный компонент TcxGrid к нему "привязан TUniTable. Одному из полей таблицы присваивается значение выбираемое из списка другой формы. Процесс присвоения выглядит так:
if dmSecBD.taOPERS.State = dsBrowse then begin
     dmSecBD.taOPERS.Edit;
     dmSecBD.taOPERS.FieldByName("PERSONID").AsInteger := ASelectionList[0].PersonID;
end;

Все визуально для пользователя в процессе работы программы хорошо. При Scroll"елре видны значения которые присвоены строкам. Переоткрывание, обновление списка на форме не теряют значений. НО, перезапуск программы показывает, что на самом деле все пусто. В самих полях таблицы значение NULL.
"Вынул" я на белый свет это поле в программе и руками "забил" данные. Все сохраняется как и положено, причем в случае ручного ввода и через выбор значения из списка другой формы события отрабатываются одни и те же. Но почему при ручном вводе значение сохраняется, а присвоенные через форму нет ?????

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

Буду благодарен за любые советы, подсказки и т.п.
С уважением Дмитрий


 
Кщд   (2011-07-13 10:02) [1]

commit?


 
bestonix ©   (2011-07-13 10:37) [2]


> Кщд   (13.07.11 10:02) [1]
>
> commit?


TUniTabel аналог TTable.  Тут метод POST и он отрабатывает.
После него свойство State переходит из состояния dsEdit в dsBrowse.


 
Кщд   (2011-07-13 10:47) [3]

ещё раз: после редактирования у вас не происходит commit.


 
SQLEXPRESS   (2011-07-13 12:15) [4]

если в соединении не указано, что commit автоматический,
то его надо явно делать.

можно 150 раз сказать Post, это будет видно только для текущего сеанса,
пока не будет commit.


 
bestonix ©   (2011-07-13 14:13) [5]

Коллеги благодарю Вас за проявленную настойчивость в убеждении.
Действительно, принудительно прописал Commit и вуаля.

С уважением Дмитрий.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2017.01.15;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.063 c
15-1453057828
Кто б сомневался
2016-01-17 22:10
2017.01.15
raise exception до Application.Run НЕ покажет сообщение.


2-1421883809
Германн
2015-01-22 02:43
2017.01.15
Разработка приложения на системе с монитором низкого разрешения


2-1424366803
Black7777
2015-02-19 20:26
2017.01.15
Обмен данными БД от клиентов


15-1455954062
Beck
2016-02-20 10:41
2017.01.15
Правильная реализация


15-1457040604
Юрий
2016-03-04 00:30
2017.01.15
С днем рождения ! 4 марта 2016 пятница





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский