В теме о пересчете итогов одним из утверждений было, то что необходимо оборачивать в транзакцию пересчет итогов в родительском файле при окончании изменений дочерних записей.
Если речь шла о сетевой программе, то мне не совсем понятно, что будут делать остальные пользователи, в момент от начала до завершения транзакции. Этот вопрос у меня лично возникает достаточно часто, видимо я не совсем понимаю сам механизм работы транзакций.
Вопрос: объясните на данном примере как все будет работать, с учетом многопользовательской программы
Написал: PAA(27)
Транзакции (было: пересчет итогов в форме)
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Смотря какая база данных. Сетевой BTRIEVE/PERVASIVE может обрабатывать сотни
транзакций от разных пользователей в сек. Так что никто ничего ждать не
будет.
При проводке документа добавляется один документ в базу документа, и
обновляется две записи из файла счетов (пересчет остатков). Это самый
простой случай. Для TPS и DAT я не в курсе, там судя по все запущено и
требует большего геммороя. Для SQL все еще проще:), но об этом тебе другие
раскажут...
С уважением, Ставич Олег
Укрсиббанк г.Харьков
oldstav@ukrsibbank.com
(Добавление)
Зависит от задачи (какие транзакции) и какая база. В случае TPS будут ждать
друг друга, т.к. с началом транзакции ее файлы захватываются. Поэтому нельзя
включать в транзакцию диалоговые операции. Все должно делаться максимально
быстро. На нормальном сервере, если транзакции не претендуют на одни и те-же
записи (обрабатываются разные счета), то они могут идти параллельно.
WBR, Nick Tsigouro. MailTo:Nick@arsis.ru
Написал: ClaList(2)
транзакций от разных пользователей в сек. Так что никто ничего ждать не
будет.
При проводке документа добавляется один документ в базу документа, и
обновляется две записи из файла счетов (пересчет остатков). Это самый
простой случай. Для TPS и DAT я не в курсе, там судя по все запущено и
требует большего геммороя. Для SQL все еще проще:), но об этом тебе другие
раскажут...
С уважением, Ставич Олег
Укрсиббанк г.Харьков
oldstav@ukrsibbank.com
(Добавление)
Зависит от задачи (какие транзакции) и какая база. В случае TPS будут ждать
друг друга, т.к. с началом транзакции ее файлы захватываются. Поэтому нельзя
включать в транзакцию диалоговые операции. Все должно делаться максимально
быстро. На нормальном сервере, если транзакции не претендуют на одни и те-же
записи (обрабатываются разные счета), то они могут идти параллельно.
WBR, Nick Tsigouro. MailTo:Nick@arsis.ru
Написал: ClaList(2)