Форум: "Основная";
Текущий архив: 2004.11.28;
Скачать: [xml.tar.bz2];
ВнизРабота с переменными в FastScript Найти похожие ветки
← →
AndrewK (2004-11-11 15:34) [0]Доброго времени суток.
Подскажите пожалуйста, как можно сделать такую вещь:
Есть две переменные:
FieldValue : Variant;
Result : Integer;
Есть код на PascalScript для FastScript, примерно такого вида:begin
if FieldValue = "Text" then
Result := 1
else
Result := 0;
end.
Надо из программы передать в скрипт переменные FieldValue и Result, обработать его и получить значение переменной Result для дальнейшей работы.
Вот код:function TForm1.GetConditionResult (Condition : String; FieldValue : Variant) : Integer;
var Res : Integer;
begin
fsScript.SyntaxType := "PascalScript";
fsScript.Lines.Text := Condition;
fsScript.AddVariable("FieldValue", "Variant", FieldValue);
fsScript.AddVariable("Result", "Integer", 0);
if fsScript.Compile then
fsScript.Execute
else
ShowMessage(fsScript.ErrorMsg);
Res := fsScript.Variables["Result"];
Result := Res;
end;
При попытке выполнить функцию вываливается ошибка "Incompatible types: "Class Integer", "Integer"".
Как с этим бороться?
← →
AndrewK (2004-11-11 16:28) [1]Вопрос решен.
Кому интерестно, то во решение:function TForm1.GetConditionResult (Condition : String; FieldValue : Variant) : Integer;
var Res : Integer;
begin
fsScript.Clear;
fsScript.Lines.Text := Condition;
fsScript.Parent := fsGlobalUnit;
fsScript.SyntaxType := "PascalScript";
fsScript.AddVariable("FieldValue", "Variant", FieldValue);
fsScript.AddVariable("Result", "Integer", 0);
if fsScript.Compile then
fsScript.Execute
else
ShowMessage(fsScript.ErrorMsg);
Res := fsScript.Variables["Result"];
Result := Res;
end;
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.11.28;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.035 c