Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.11.28;
Скачать: 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 вся ветка

Текущий архив: 2004.11.28;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.028 c
14-1100067128
Kerk
2004-11-10 09:12
2004.11.28
И еще раз про образование.


1-1100536394
InfMag
2004-11-15 19:33
2004.11.28
Изменение массива не работает


1-1100169710
MAVOR
2004-11-11 13:41
2004.11.28
заменить


14-1099976334
Defunct
2004-11-09 07:58
2004.11.28
разговаривать на любые отвлеченные темы


14-1100249493
Ten199
2004-11-12 11:51
2004.11.28
Как купить EhLib или как мы работаем...