QReport的Detail無法顯示資料 |
答題得分者是:smallfox
|
cilan
一般會員 發表:6 回覆:13 積分:3 註冊:2011-06-13 發送簡訊給我 |
程式片段如下:
procedure TfrmAst31.btnPrn5Click(Sender: TObject); var strSQL:String; QryTemp:TADOQuery; begin QryTemp:=TADOQuery.Create(nil); QryTemp.LockType:=ltReadOnly; QryTemp.ConnectionString := AstDM.conAsset; strSQL:= 'select a.*,b.DEPNA as LOCATNA, c.DEPNA as DEPNONA, d.SUPNA as SUPNONA, e.TEL as SUPTEL from ' ' ASBASSM a ' ' LEFT JOIN ASBDEPT b on b.DEPNO=a.LOCAT ' ' LEFT JOIN ASBDEPT c on c.DEPNO=a.DEPNO ' ' LEFT JOIN ASBSUPM d on d.SUPNO=a.SUPNO ' ' LEFT JOIN ASBSUPM e on e.SUPNO=a.SUPNO ' ' where (a.MODIMRK <> ''D'' or a.MODIMRK is null) '; QryTemp.SQL.Text:=strSQL; try QryTemp.Open; Application.CreateForm(TfrmASSET, frmASSET); with frmASSET do begin qrCreator.Caption:= DMast.pSysInfo^.sSysAcc; rptASSET.Dataset := QryTemp; qrASSNO.Dataset := QryTemp; qrASSNA.Dataset := QryTemp; qrASSSN.Dataset := QryTemp; qrTYPENO.Dataset := QryTemp; qrSUPNA.Dataset := QryTemp; qrTEL.Dataset := QryTemp; qrGETDAY.Dataset := QryTemp; qrLOCAT.Dataset := QryTemp; qrDEPNA.Dataset := QryTemp; qrMEMO.Dataset := QryTemp; qrASSNO.DataField := QryTemp.Fieldbyname('ASSNO').AsString; qrASSNA.DataField := QryTemp.Fieldbyname('ASSNA').AsString; qrASSSN.DataField := QryTemp.Fieldbyname('ASSSN').AsString; qrTYPENO.DataField := QryTemp.Fieldbyname('TYPENO').AsString; qrSUPNA.DataField := QryTemp.Fieldbyname('SUPNONA').AsString; qrTEL.DataField := QryTemp.Fieldbyname('SUPTEL').AsString; qrGETDAY.DataField := QryTemp.Fieldbyname('GETDAY').AsString; qrLOCAT.DataField := QryTemp.Fieldbyname('LOCATNA').AsString; qrDEPNA.DataField := QryTemp.Fieldbyname('DEPNONA').AsString; qrMEMO.DataField := QryTemp.Fieldbyname('AMEMO').AsString; end; if messagedlg('預覽報表畫面?',mtinformation,[mbyes,mbno],0) =mryes then frmASSET.rptAsset.Preview else frmASSET.rptAsset.Print ; finally QryTemp.Free; end; end; TfrmASSET是報表的Layout 資料來源QryTemp是用ADOQuery的查詢結果 是資料來源的問題嗎?至少這段語法在SQL上是可以正確查出資料的. 嘗試找範例程式做參考,在QR元件上的設定上並沒有特殊差異, 稍早還出現ColumnHeader不顯示的插曲, 最後怎麼解決問題的,自已也搞不清了! 對QReport不熟悉......,請各位先進指導一下! 謝謝!
------
- 嵐 - |
smallfox
高階會員 發表:2 回覆:113 積分:128 註冊:2003-02-19 發送簡訊給我 |
改寫下列程式碼:
qrASSNO.DataField := 'ASSNO'; qrASSNA.DataField := 'ASSNA'; qrASSSN.DataField := 'ASSSN'; qrTYPENO.DataField := 'TYPENO'; qrSUPNA.DataField := 'SUPNONA'; qrTEL.DataField := 'SUPTEL'; qrGETDAY.DataField := 'GETDAY'; qrLOCAT.DataField := 'LOCATNA'; qrDEPNA.DataField := 'DEPNONA'; qrMEMO.DataField := 'AMEMO'; 試看看.... |
cilan
一般會員 發表:6 回覆:13 積分:3 註冊:2011-06-13 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |