Ошибка при использовании TClientDataSet

Автор Kulikcha, 25.04.23, 21:49:01

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Kulikcha

Добрый день.

Есть такой фрагмент кода в автооперации.

Program Main;
var
VarData : TClientDataSet;
RetCode : Variant;
ErrMsg : Variant;
begin                                     
    VarData := TClientDataSet.Create(nil);
    TechStageN := Route.inPreviousStageCount + 5;
    TechStage := Route.Stage(TechStageN); 
    VarData := RunMethod('GetRouteItemVariables', [TechStage.inID]);   
                                                                   
    VarData.First;                                           
     
    While not VarData.Eof do
    begin                       
       MsgBox('fddfdd', 
         VarData.FieldByName('_NAME').AsString,
         MB_OK+MB_ICONINFORMATION);           
       VarData.Next;         
    end;                             
    SetResultOperation(true);                                               
end; 

При попытке его выполнения выдаётся ошибка такого вида

Начальник отдела: Проверить документацию, подписать
При выполнении метода бизнес-логики WorkFlow произошла ошибка
Метод: "WFSetTaskState"
Сообщение: "Ошибка в скрипте автооперации [Проверить состояния всех завершённых процессов]
RUNTIME ERROR
Access violation at address 1FF901EE in module 'WORKFL~1.DLL'. Read of address 00000000 when evaluating instruction CallProc ($FFFFFFFF,$0,$2006FF00,$ADE7640,'First').
Stack content is: [Null,Null,Null].
Source position: 12,18"


Показывает на строку VarData.First. Версия Лоцмана 2018 года. Буду признателен за возможные наводки по поводу причин возникшей проблемы. Вообще заметил, что на любое использование типа TClientDataSet выдаётся похожая ошибка.


Frailty

Цитата: Kulikcha от 25.04.23, 21:49:01VarData := RunMethod('GetRouteItemVariables', [TechStage.inID]);

Здесь необходимо добавить
VarData.Data := RunMethod('GetRouteItemVariables', [TechStage.inID])
+ Благодарностей: 1