powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Сохранение изменённых данных DW в таблицах БД
19 сообщений из 19, страница 1 из 1
Сохранение изменённых данных DW в таблицах БД
    #37324689
lmiha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго времени суток!
Буду признателен за краткое описание различий и правил применения методов:
dw.AcceptText()
dw.Update()
Вопрошаю в связи с необходимостью выловить "глюк" (нерегулярно возникающий),
часть данных изменённых в dw не изменяется в БД.
Код приблизительно такой:

IF dw.dw.AcceptText()=1 THEN
IF dw.Update()=1 THEN
commit;
ELSE
MessageBox('!','Ошибка2')
rollback;
Return(-2)
END IF
ELSE
MessageBox('!','Ошибка1')
rollback;
Return(-1)
END IF
...
Рейтинг: 0 / 0
Сохранение изменённых данных DW в таблицах БД
    #37324749
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lmiha,

Если кратко, то эти два метода между собой не имеют ничего общего. AcceptText вообще с базой никак не работает. Глюк там у вас в чем-то другом.
...
Рейтинг: 0 / 0
Сохранение изменённых данных DW в таблицах БД
    #37324780
PaulJB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А Вы получаете какое либо сообщение об ошибке, из перечисленных Вами, когда данные не сохраняются?
...
Рейтинг: 0 / 0
Сохранение изменённых данных DW в таблицах БД
    #37324794
lmiha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо откликнувшимся!
PaulJB - сообщений не получаю. ;(

Вдогонку...
Перед вышеприведенным кодом проверяю коннект к БД

<запрос>
IF SQLCA.sqlcode= -1 THEN
MessageBox('!', 'Где сеть?!')
RETURN 0
END IF
...
Рейтинг: 0 / 0
Сохранение изменённых данных DW в таблицах БД
    #37324813
AIS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lmiha... часть данных изменённых в dw не изменяется в БД...
Подоздеваю, что не сохраняются те данные, которые либо не отвечают формату столбца и поэтому игнорируються БД, либо после ввода значения в последнюю ячейку не было "перехода" и изменения в этой ячейке не были приняты РВ.
...
Рейтинг: 0 / 0
Сохранение изменённых данных DW в таблицах БД
    #37324955
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А вообще-то такое код
Код: plaintext
1.
IF dw.dw.AcceptText()= 1  THEN
 IF dw.Update()= 1  THEN
вызывает сильные подозрения.
...
Рейтинг: 0 / 0
Сохранение изменённых данных DW в таблицах БД
    #37325009
lmiha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Локшин МаркА вообще-то такое код
Код: plaintext
1.
IF dw.dw.AcceptText()= 1  THEN
 IF dw.Update()= 1  THEN
вызывает сильные подозрения.

"не виноватая я..!"
а в чём подозреваюсь? ;)
...
Рейтинг: 0 / 0
Сохранение изменённых данных DW в таблицах БД
    #37325037
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если первое dw - это DataWindow, то такой код вообще работать не будет
Код: plaintext
dw.dw.AcceptText()
...
Рейтинг: 0 / 0
Сохранение изменённых данных DW в таблицах БД
    #37325500
lmiha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Локшин Марк,
dw.AcceptText()
...
Рейтинг: 0 / 0
Сохранение изменённых данных DW в таблицах БД
    #37326198
Фотография AIZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
IF SQLCA.sqlcode= - 1  THEN
MessageBox('!', 'Где сеть?!')
RETURN  0 
END IF 

Вообще-то таким образом коннект не проверишь. Просто получите факт КАКОЙ-ТО ошибки при UPDATE. Нужно смотреть переменные SQLCA.
...
Рейтинг: 0 / 0
Сохранение изменённых данных DW в таблицах БД
    #37328299
PaulJB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А событие DbError у dw код имеет или пустое ?
...
Рейтинг: 0 / 0
Сохранение изменённых данных DW в таблицах БД
    #37328378
lmiha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PaulJB,

Имеет...

//ловим гада
MessageBox('Помилка збереження!', Trim(Left(sqlerrtext, Pos(sqlerrtext,"No changes made to database.") - 1)), StopSign!)
rollback;
return 1
...
Рейтинг: 0 / 0
Сохранение изменённых данных DW в таблицах БД
    #37328412
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А можно попроще? И уберите код из DbError
Код: plaintext
1.
2.
3.
IF SQLCA.sqlcode= - 1  THEN
MessageBox('Помилка', 'sqlerrtext = ' + sqlca.sqlerrtext +' sqldbcode = '+string(sqlca.sqldbcode) )
RETURN  0 
END IF 
...
Рейтинг: 0 / 0
Сохранение изменённых данных DW в таблицах БД
    #37328418
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, это не сработает как проверка сети
Это как-раз после выполнения update необходимо проверять
...
Рейтинг: 0 / 0
Сохранение изменённых данных DW в таблицах БД
    #37328452
lmiha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
spas2001,

Спасибо, поставлю после Update().
А зачем из DbError убирать?
(порча масла кашей?)
...
Рейтинг: 0 / 0
Сохранение изменённых данных DW в таблицах БД
    #37328504
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Небольшая выдержка из help-a
RTFMUse with DataWindow/DataStore When using a Transaction object with a DataWindow, the DataWindow DBError event is triggered before the DBError event of the Transaction object. The return value for the DataWindow DBError event is used to indicate whether the Transaction object's DBError event should be triggered in turn. When the return value of the DataWindow DBError event is 0 or 1, the Transaction object's DBError event is also triggered if it is defined. When the return value of the DataWindow DBError event is 2 or 3, the Transaction object's DBError event is ignored.
...
Рейтинг: 0 / 0
Сохранение изменённых данных DW в таблицах БД
    #37328608
lmiha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
spas2001А можно попроще?
;)
...
Рейтинг: 0 / 0
Сохранение изменённых данных DW в таблицах БД
    #37328928
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Короче, убери оттуда перехват ошибки, чтобы он в коде начал отслеживаться
...
Рейтинг: 0 / 0
Сохранение изменённых данных DW в таблицах БД
    #37329019
lmiha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
spas2001,

Пробую...
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Сохранение изменённых данных DW в таблицах БД
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]