Q&A

  • Delphi7.0에서 Crystal8.0을 이용한 출력시 문제점
<!--CodeS-->
procedure TForm1.Button1Click(Sender: TObject);
var
    s:string;
begin

    CrystalReport1.ReportFileName := 'c:\report1.rpt';

    s := 'Test1 = "kdjfkdsa"';
    CrystalReport1.Formulas[0] := s;   // <<--  "매개변수의 개수가 잘못되었습니다. "라는 error가 뜸...

    s := 'Test2 = 999';
    CrystalReport1.Formulas[1] := s;   // <<--  "매개변수의 개수가 잘못되었습니다. "라는 error가 뜸...

    CrystalReport1.Action:=1;

end;
<!--CodeE-->

위 코드란의 에러메세지가 납니다.
Formula의 문자형, 숫자형의 type은 일치합니다.
매개 변수의 개수가 잘못되었다는게 이해가 되지 않습니다.
경험 있으신 고수님의 조언을 부탁합니다.
그럼 오늘도 열심히....
1  COMMENTS
  • Profile
    김정익 2006.09.13 05:22


    crystal_tlb 파일의 아래 부분을 수정 하세요

    procedure TCrystalReport.Set_Formulas(index: Smallint; const px: WideString);
      { Warning: The property Formulas has a setter and a getter whose
        types do not match. Delphi was unable to generate a property of
        this sort and so is using a Variant as a passthrough. }
    var
      InterfaceVariant: OleVariant;
    begin
      InterfaceVariant := DefaultInterface;
      InterfaceVariant.Formulas[index] := px;// := index;
    //  InterfaceVariant.Formulas := px;
    end;