|
|
|
Транзакции в ADO + WTL
|
|||
|---|---|---|---|
|
#18+
Проект на C++ (WTL, ADO) Есть два диалога WTL В одном "Создается транзакция: pCon->BeginTrans()" Если в этой же функции создаются и открываются Recodsetы, все в порядке Если в этой фунции создается диалог и в нем создается рекордсет открытии: "Cannot create new connection because in manual or distributed transaction mode" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2005, 16:42 |
|
||
|
Транзакции в ADO + WTL
|
|||
|---|---|---|---|
|
#18+
т.е. ты создаёшь транзакцию и стопоришь её модальным окном? А если мадам покурить ушла на пару часиков? ______________________________________________ Вы имеете право хранить молчание! Всё что Вы скажете может быть использовано против Вас в суде! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2005, 16:56 |
|
||
|
Транзакции в ADO + WTL
|
|||
|---|---|---|---|
|
#18+
Ну да, что же далать, нужно при после закрытия по OK модального диалога иметь возможность откатить из главной формы изменения ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2005, 17:12 |
|
||
|
Транзакции в ADO + WTL
|
|||
|---|---|---|---|
|
#18+
CORALEXНу да, что же далать, нужно при после закрытия по OK модального диалога иметь возможность откатить из главной формы изменения Надо же дать возможность простому пользователю подвесить систему на полдня. Но это относится скорее к проектированию, лирика, короче. А проблема, imho, в и в нем создается рекордсет открытии , вернее, в том, как он там создается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2005, 17:16 |
|
||
|
Транзакции в ADO + WTL
|
|||
|---|---|---|---|
|
#18+
Например так: CoCreateInstance(__uuidof(Recordset), NULL, CLSCTX_ALL, __uuidof(_Recordset), (void**)&m_pRec); m_pRec->CursorLocation = adUseClient; _bstr_t query = "select ID_LICENZ, PR_IZMC, ID_IZMEN, VID_IZMC, DOCUM, NDOK, NDOC_RGF, CELI, OSNOV, ORGAN, PRIM, DPREDF, DNIZMP, DNIZMF, DOIZMP, DOIZMF, DREGD, DNRGF, CHANGE_DATE from IZMEN where ID_IZMEN="; query += _bstr_t(m_iID); m_pRec->Open(query, _variant_t((IDispatch *)m_pCon,true), adOpenForwardOnly, adLockOptimistic, adCmdUnspecified); if (!m_bEdit) m_pRec->AddNew(); Потом m_pRec->Update(); Именно при Open возникает эта ошибка ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2005, 17:20 |
|
||
|
Транзакции в ADO + WTL
|
|||
|---|---|---|---|
|
#18+
авторИменно при Open возникает эта ошибка Перед Open, наверное, стоить дофетчить все открытые наборы на клиента и сказать им Close, может поможет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2005, 17:25 |
|
||
|
Транзакции в ADO + WTL
|
|||
|---|---|---|---|
|
#18+
Да это так но почему работает в той же функции ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2005, 17:32 |
|
||
|
Транзакции в ADO + WTL
|
|||
|---|---|---|---|
|
#18+
CORALEXНу да, что же далать, нужно при после закрытия по OK модального диалога иметь возможность откатить из главной формы изменения Не ты первый, не ты последний , кто решил пойти по этому скользкому пути... Хорошо, хоть идти тебе по нему очень недолго ... до первого внедрения. Работать это не будет. Надеюсь СУБД-то MSSQLServer ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2005, 23:12 |
|
||
|
Транзакции в ADO + WTL
|
|||
|---|---|---|---|
|
#18+
Да SQL Server Посоветуйте тогда как же сделать если в диалоге вводится запись, а потом выдается 2 MessageBox и если пользователь выбал нет, то нужно откатить изменения внесенные в диалоге, и далее целая серия изменений которые в случае ошибки также надо отменить (переоформление) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2005, 12:15 |
|
||
|
Транзакции в ADO + WTL
|
|||
|---|---|---|---|
|
#18+
Вы с Excell работали? Представьте что при вводе данных в таблицу будут появлятся 2 диалога. Зачем? Что за текст там? опишите, не жалея чернил, что будет написано в Help'e к Вашей проге, чтобы не ставить пользователей в тупик. ______________________________________________ Вы имеете право хранить молчание! Всё что Вы скажете может быть использовано против Вас в суде! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2005, 12:28 |
|
||
|
Транзакции в ADO + WTL
|
|||
|---|---|---|---|
|
#18+
Это переоформление лицензии, при нажатии на форме на кнопку появляется диалог где вводятся служебные данные по переоформлению записываются в таблицу (так построены формы (сохранение при выходе)) затем выбор лицензии на кот. преоф. или ввод новой и далее работа с таблицами лицензии и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2005, 12:52 |
|
||
|
Транзакции в ADO + WTL
|
|||
|---|---|---|---|
|
#18+
CORALEXЭто переоформление лицензии, при нажатии на форме на кнопку появляется диалог где вводятся служебные данные по переоформлению записываются в таблицу (так построены формы (сохранение при выходе)) затем выбор лицензии на кот. преоф. или ввод новой и далее работа с таблицами лицензии и т.д. Лучше необходимые данные кешировать на клиенте выполнять с ними все действия, а уже потом в короткой транзакции писать на сервер... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2005, 13:26 |
|
||
|
|

start [/forum/topic.php?fid=57&gotonew=1&tid=2033045]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
49ms |
get topic data: |
7ms |
get first new msg: |
4ms |
get forum data: |
2ms |
get page messages: |
29ms |
get tp. blocked users: |
1ms |
| others: | 240ms |
| total: | 359ms |

| 0 / 0 |
