Проблема с доступом к полям Tfrxadoquery

отредактировано 07:24 Раздел: FastScript
Добрый день!

Использую Delphi7 + FastReport 4.7.61 + FastScript (внутри дизайнера). Также внутри отчета прилеплен TfrxAdoDatabase и TfrxADOQuery. Коннект осуществляется к MSSQL 2008 Express.

Задача:
Выполнить запрос к таблице БД и вывести результат в отчет. При этом одно из полей является binary полем, в котором находятся зашифрованные данные. Это поле должно передаваться в процедуру Delphi и там расшифровываться, а результат (в виде нескольких значений) возвращаться в отчет.

Проблема:
Пробовал передавать в процедуру Delphi значение поля как:
<QQ."TaxesKeyData">,
QQ.FieldByName('TaxesKeyData').AsVariant,
QQ.Fields[3].AsVariant

передается какая то белиберда, а не то, что в табле.
(QQ: TfrxADOQuery, Data: binary(36) в MSSQL).

вот код FS:
procedure InternalDSFiscaltmOnAfterData(Sender: TfrxComponent);
var
  Money, Commission, Nds: double;
  OpCount: integer;
  pass: variant;
  Pdata: variant;    
begin
  pass := QQ.FieldByName('TaxesKeyData').AsVariant;
  Pdata := QQ.FieldByName('Data').AsVariant;                    
  Execute(pass, Pdata, Money, Commission, nds, OpCount);
  Memo1.Text := FloatToStr(Money);
  Memo2.Text := FloatToStr(Commission);
  Memo3.Text := FloatToStr(nds);
  Memo4.Text := IntToStr(OpCount);  
end;

Вопрос:

Как правильно передавать (читать) значение binary-поля ?

в Delphi я, обычно, делал так:
var
  data: array[1..36] of byte;
begin
  ...
  QQ.FieldByName('TaxesKeyData').GetData(@data);
  ...

но в FastScript метода GetData почемуто нет... или он не работает

Комментарии

  • отредактировано 07:24
    Всем большое спасибо! :)

    разобрался сам.

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.