2016-08-03 9 views
0

フォームからReport Builderにパラメータ値を渡すにはどうすればよいですか? ?Delphi - フォームビルダーへのパラメータの受け渡し

または間違い

レポートビルダーSQL:

SELECT * FROM Member Where MemberID = :MemberID 

フォームコード:

procedure TfmRbTest.Button1Click(Sender: TObject); 
begin 
    ppReport1.Template.FileName = 'Member.rtm' 
    ppReport1.Template.LoadFileName; 
    ppReport1.Parameters['MemberID'].Value := '000001'; 
    ppReport1.Print; 
end; 
+0

フィールドMemberIDはデータベースでどのように定義されていますか? – Dsm

+0

ppReport1.add( 'MemberID'、dtString、 '000001')を試しましたか?データ型を '000001'のものに置き換えてください。 –

+0

MemberID - VARCHAR(12)、 – Woondy

答えて

1

あなたは必ずするのに十分な情報を提供するが、ここでは私の推測ではありません。

パラメータタイプには注意が必要です。あなたが生成するSQLは、別の方法として、私はあなたのようにコードを残すことができると思いますMEMBERIDがテキストである場合、あなたは以下のコード

procedure TfmRbTest.Button1Click(Sender: TObject); 
begin 
    ppReport1.Template.FileName = 'Member.rtm' 
    ppReport1.Template.LoadFileName; 
    ppReport1.Parameters['MemberID'].Value := '''000001'''; 
    ppReport1.Print; 
end; 

で生成されます

SELECT * FROM Member where MemberID = '000001' 

が必要

SELECT * FROM Member where MemberID = 000001 

ですとし、クエリを

SELECT * FROM Member where MemberID = ':MemberID' 
に変更します

しかし、私は100%ではありません。

関連する問題