Вниз
Скачать: CL | DM;

Работа с переменными в 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.021 c
1-1100531696
PC
2004-11-15 18:14
2004.11.28
ScrollBar в окне с BorderStyle = bsNone


3-1099044019
Andreww
2004-10-29 14:00
2004.11.28
[ODAC] Можно ли изменить состояние dataset перед ApplyUpdates?


3-1099288220
NewDelpher
2004-11-01 08:50
2004.11.28
Нет соединения с MS SQL-2000


14-1100091864
YurikGL
2004-11-10 16:04
2004.11.28
Скрепка в outlook express 6.0


1-1100564575
GuAV
2004-11-16 03:22
2004.11.28
func(T1* ptr1, T2& tref)




   Наверх