크리스탈리포트 3.0(4.5)에서 만들어진 파일을 수정하지 않고 8.0이나 9.2에서 사용하려고 합니다. 다른 문제는 어떻게든 해결이 될 것 같은데
Formula값을 넘기지 못해 진행이 안되고 있습니다.
버전이 올라가면서 Formula값을 받는 방법이 바뀐것인지 아니면 외부에서 넘기는 Formula는 사용하지 못하는것인지 알고 싶습니다.
혹시 해결방법을 아시는 분은 답변달아 주시면 감사하겠습니다.
-현재 사용중인 방법은 아래와 같습니다.
Table1.DataBaseName := ExtractFilePath(Application.ExeName);
BatchMove1.Execute;
CrystalReport1.ReportFileName := ExtractFilePath(Application.ExeName) + 'rp1.rpt';
CrystalReport1.Formulas[0] := 'dt = "' + DateTimeToStr
(Query1.ParamByName('dt').AsDateTime) + '"';
CrystalReport1.Formulas[1] := 'e_dt = "' + DateTimeToStr
(Query1.ParamByName('e_dt').AsDateTime) + '"';
CrystalReport1.Action := 1;
====================================================================
위와같이 넘기면 에러가 나는군요...왜 그럴까요???
수고 많습니다.
저는DelPhi4.0, 크리스탈리포트 7.0을 사용하고 있습니다.
저는 아래부분을 이렇게 사용합니다.
참고만 하세요
Formulas.Clear;
Formulas.Retrieve;
WindowState:=wsMaximized;
Formulas.Name := 'in_d1';
Formulas.Formula.Text := '"'+DateEdit1.Text +'"';
Formulas.Name := 'in_d2';
Formulas.Formula.Text := '"'+DateEdit2.Text +'"';
Formulas.Name := 'cu_n1';
Formulas.Formula.Text := '"'+Label2.Caption +'"';
if (Label3.Caption = 'W') then
begin
str1:=FormatFloat('###,###,###,###',kfEdit1.Value);
str1:='W'+' ' + str1;
Formulas.Name := 'to_ta1';
Formulas.Formula.Text :='"'+str1+'"';
str2:=FormatFloat('###,###,###,###',kfEdit2.Value);
str2:='W'+' ' + str2;
Formulas.Name := 'to_ta2';
Formulas.Formula.Text :='"'+str2+'"';
str3:=FormatFloat('###,###,###,###',kfEdit3.Value);
str3:='W'+' ' + str3;
Formulas.Name := 'to_ta3';
Formulas.Formula.Text :='"'+str3+'"';
end;
수고하세요