全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:3088
推到 Plurk!
推到 Facebook!

Rave report的問題

答題得分者是:老大仔
eaglepan
一般會員


發表:2
回覆:4
積分:1
註冊:2002-04-03

發送簡訊給我
#1 引用回覆 回覆 發表時間:2009-08-13 15:13:32 IP:61.221.xxx.xxx 訂閱
問題一:
如果在rave report 中設計了兩個Text component :Text1及Text2,當Delphi程式中adoquery欄位A 結果是'1'時,Text1.Visible=True,而 Text2.Visible=False;當欄位A 結果是'2'時,Text2.Visible=True,而 Text1.Visible=False 。這在程式中如何設計? 謝謝!

問題二:
以前使用Quick report在QRDBText的Properties項目中有一個Wordwap的設定,在Rave report中有嗎?謝謝!
eaglepan
一般會員


發表:2
回覆:4
積分:1
註冊:2002-04-03

發送簡訊給我
#2 引用回覆 回覆 發表時間:2009-08-19 17:40:48 IP:60.248.xxx.xxx 訂閱
我搜尋以前的解法如下,但編譯時會有error,我使用Delphi 2009:

procedure Tspq209.bb_PrintFormClick(Sender: TObject);
var
MyPage: TRavePage;←編譯時,此處會顯示error,[DCC Error] F_SPQ209.pas(803): E2003 Undeclared identifier: 'TRavePage'
MyText: TRaveText;←編譯時,此處會顯示error,[DCC Error] F_SPQ209.pas(804): E2003 Undeclared identifier: 'TRaveText'
begin
aq_print.Close;
aq_print.Parameters.ParamByName('s10601').Value :=
aq_spq106.FieldByName('s106_01').AsString;
aq_print.Open;
if aq_print.IsEmpty then
begin
ShowMessage('沒有符合的資料可以列印!');
Exit;
end;
try
RvProject1.Open;
MyPage := RvProject1.ProjMan.FindComponent('Report1.Page1',nil) as TRavePage;
MyText := RvProject1.ProjMan.FindComponent('Text87',MyPage) as TRaveText;
if aq_spq106.FieldByName('s106_02').AsString='30166' then
MyText.Visible := True
else
MyText.Visible := False;
RvProject1.Execute;
finally
RvProject1.Close;
aq_print.close;
end;
end;
老大仔
尊榮會員


發表:78
回覆:837
積分:1088
註冊:2006-07-06

發送簡訊給我
#3 引用回覆 回覆 發表時間:2009-08-19 17:58:43 IP:120.107.xxx.xxx 未訂閱
uses RvClass, RvCsStd
eaglepan
一般會員


發表:2
回覆:4
積分:1
註冊:2002-04-03

發送簡訊給我
#4 引用回覆 回覆 發表時間:2009-08-20 10:39:46 IP:60.248.xxx.xxx 訂閱
謝謝老大仔的解答,編譯已過關。可是在執行時出現錯誤訊息
Access violation at address 0057F8FB in module 'P_SPQ.exe'.Read of address 0000003C.」。

procedure Tspq209.bb_PrintFormClick(Sender: TObject);
var
MyPage: TRavePage;
M8,M87: TRaveText;
begin
aq_print.Close;
aq_print.Parameters.ParamByName('s10601').Value :=
aq_spq106.FieldByName('s106_01').AsString;
aq_print.Open;
if aq_print.IsEmpty then
begin
ShowMessage('沒有符合的資料可以列印!');
Exit;
end;
try
RvProject1.Open;
MyPage := RvProject1.ProjMan.FindRaveComponent('Project1.Page1',nil) as TRavePage;
M8 := RvProject1.ProjMan.FindRaveComponent('Text8',MyPage) as TRaveText;
M87 := RvProject1.ProjMan.FindRaveComponent('Text67',MyPage) as TRaveText;
if aq_spq106.FieldByName('s106_02').AsString='30166' then
begin
M8.Visible := False;←執行到此處就錯了
M87.Visible := True;
end
else
begin
M87.Visible := False;
M8.Visible := True;
end;
RvProject1.Execute;
finally
RvProject1.Close;
aq_print.close;
end;
end;
eaglepan
一般會員


發表:2
回覆:4
積分:1
註冊:2002-04-03

發送簡訊給我
#5 引用回覆 回覆 發表時間:2009-09-07 16:19:55 IP:60.248.xxx.xxx 訂閱
此問題已解決。解決方法就是:將Rave reports BE 7.6.1版 升級成7.6.2版 就ok了。
系統時間:2024-04-18 8:34:53
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!