Показать сообщение отдельно
Старый 22.01.2014, 17:47   #10  
AndrewRa is offline
AndrewRa
Участник
 
6 / 10 (1) +
Регистрация: 20.12.2012
После выноса проверки в клиентский метод анализ дампа очередного падения указал на другое место!
Спасибо за советы, - ситуация сдвинулась с места!


Теперь падение происходит дальше по коду, просто при переначитке записи: salesTable.reread();
Может, попробовать перенести на клиент и эту часть функционала, или даже весь класс (свойство класса RunOn)?

Вообще-то, обращения серверных классов к клиентским курсорам (когда под интерфейсными формами лежат серверные классы) у нас очень распространены (я думаю, как и везде).
И раньше, до использования форм на терминальном сервере, проблем не было (да и сейчас нет, на прочих клиентских машинах, кроме терминального сервера).

Я тут подумал, на терминальном сервере у нас установлена другая операционка - Windows Server 2012 R2 (а на сервере АОСа Windows Server 2008 R2).
Не могут ли с этим быть связаны подобные нерегулярные ошибки при чтении на сервере созданного на клиенте курсора?

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

По поводу "написать вместо args.record().RecId просто args.record()" - уже пробовал, в первоначальном варианте было именно args.record().
Читал где-то на форуме, что это может помочь (хотя, судя по приведенной Олегом ссылке на тему, большинство за args.record())...