Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Откат изменений в ADO
|
|||
|---|---|---|---|
|
#18+
Как правильно обеспечить возможность отказа от внесения новой (изменения ) записи Используя MSDataShape? У меня есть два рекордсета : Main и Child. Например, накладная и содержание накладной. Я ввожу новую накладную , а потом отказываюсь от ввода. Или при редактировании были введены новые строки в накладную, и какие – то удалены , а потом отказываюсь от изменений. Новые записи я добавляю так: … Main->AddNew(); … //накладная Main->GetFields()->GetItem("Nomer")->Value =vNomer; … Main->UpdateBatch(adAffectCurrent); Child = Main->GetFields()->GetItem("IDRelation")->Value; //подчиненный рекордсет Child->AddNew(); … //строчка в накладной Child->Fields->GetItem("TovarID")->Value =vTovarID; … //записываю внешний ключ иначе выдается ошибка целостности Child->Fields->GetItem("ParentID")->Value = Main->GetFields()->GetItem("ID")->Value; … Child ->UpdateBatch(adAffectAll); … то есть пока в я не запишу в базу строку родительского рекордсета UpdateBatch(adAffectCurrent); в строки дочернего рекордсета не записываются в БД Помогите , плиз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2002, 15:04 |
|
||
|
Откат изменений в ADO
|
|||
|---|---|---|---|
|
#18+
Тут есть несколько путей 1. До окончании полного ввода в нормализованные таблицы не заносятся parent и child (накладная и ее детали). Сответствующая информация лежит либо в переменных окружения, либо в стеках (например, временные таблицы) После подтверждения сразу заносится и родитель и детали 2. Сначала в таблицу-родитель заносится "пустышка", к которой приписываются детали. Потом "пустышка" модифицируется У обоих подходов есть свои плюсы и минусы, но откат и в том и в другом случае очевиден ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2002, 15:08 |
|
||
|
Откат изменений в ADO
|
|||
|---|---|---|---|
|
#18+
Спасибо за отклик. Нашел! Проверял только под MSSQLServer. таблица Main - поле ключа ID таблица Child - поле ключа ID, поле внешнего ключа - MainID 1) В таблице Main : PrimaryKey - ID 2) В таблице Child : PrimaryKey - ID+MainID ; RelationShip: Main.ID - Child.MainID 3) теперь все получается:… Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2002, 17:32 |
|
||
|
|

start [/forum/topic.php?fid=58&tid=2119481]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
74ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
35ms |
get tp. blocked users: |
1ms |
| others: | 278ms |
| total: | 434ms |

| 0 / 0 |
