為什麼這欄位,StringGrid都是null值呢 |
答題得分者是:2007
|
lovemari
中階會員 發表:134 回覆:224 積分:76 註冊:2005-08-18 發送簡訊給我 |
小弟在撰寫相關報表
下了下列SQL (如下表) 都是用RecordCount來填值 可是下列SQL StringGrid 跑出來卻是空白的 感覺很怪 其它欄位即使RecordCount = 0 也會帶出0出來 我曾經也用這段SQL 直接在SQL PLUS 跑 可以跑 日期不同也會有值 可我的StringGrid 就是空白 好怪喔 [code delphi] with csTemp18 do begin Close; Params.Clear; Params.CreateParam(ftString, 'DATE1', ptInput); Params.CreateParam(ftString, 'DATE2', ptInput); s7 := 'SELECT A.RMA_NO,A.SERIAL_NUMBER,A.PRODUCT_LINE,A.UPDATE_TIME "送修日期",MAX(D.REPAIR_TIME) "維修日期", ' 'MAX(F.YEAR_SEQ) - E.YEAR_SEQ "花費時間",COUNT(A.SERIAL_NUMBER) ' 'FROM SAJET.G_RMA_DETAIL A, ' 'SAJET.G_SN_STATUS B, ' 'SAJET.G_SN_DEFECT C, ' 'SAJET.G_SN_REPAIR D, ' 'SAJET.CANON_RMA_DAY E, ' 'SAJET.CANON_RMA_DAY F ' 'WHERE (A.SERIAL_NUMBER = B.SERIAL_NUMBER OR A.SERIAL_NUMBER = B.CUSTOMER_SN) ' 'AND B.SERIAL_NUMBER = C.SERIAL_NUMBER ' 'AND C.SERIAL_NUMBER = D.SERIAL_NUMBER ' 'AND A.RMA_nO = C.WORK_ORDER ' 'AND A.RMA_nO = D.WORK_ORDER ' 'AND C.RECID = D.RECID ' 'AND TO_CHAR(A.UPDATE_TIME,''YYYYMMDD'') = E.AGE_DATE ' 'AND TO_CHAR(D.REPAIR_TIME,''YYYYMMDD'') = F.AGE_DATE ' 'AND TO_CHAR(D.REPAIR_TIME,''YYYYMMDD'') BETWEEN :DATE1 AND :DATE2 ' 'AND TO_CHAR(A.UPDATE_TIME,''YYYYMMDD'') < :DATE1 ' //上各月 'AND (F.YEAR_SEQ - E.YEAR_SEQ) > ''12'' ' 'GROUP BY A.RMA_NO,A.SERIAL_NUMBER,A.PRODUCT_LINE,A.UPDATE_TIME,E.YEAR_SEQ ' 'ORDER BY MAX(F.YEAR_SEQ) - E.YEAR_SEQ '; Params.ParamByName('DATE1').AsString := FormatDateTime('yyyymmdd', DateTimePicker7.DateTime); Params.ParamByName('DATE2').AsString := FormatDateTime('yyyymmdd', DateTimePicker8.DateTime); commandText := s7; open; r5 := RecordCount; begin with StringGrid11 do begin Cells[1, 9] := IntToStr(r5); RowCount := RowCount 1; end; end; cLOSE; end; [/code]
------
Program : Delphi 7 DataBase : Oracle 9i Client : ClientDataSet |
2007
中階會員 發表:54 回覆:90 積分:98 註冊:2008-08-12 發送簡訊給我 |
Cells[1, 9] := IntToStr(r5); <---筆數都是塡到這位置嗎?? RowCount := RowCount 1; <---那為什麼要一直加一??? DELPHI 我不會 ,來問問而以 ===================引 用 lovemari 文 章=================== with StringGrid11 do begin Cells[1, 9] := IntToStr(r5); RowCount := RowCount 1; end; |
lovemari
中階會員 發表:134 回覆:224 積分:76 註冊:2005-08-18 發送簡訊給我 |
RowCount+1 那各是我之前不是用RecordCount來填值
忘記把RowCount 1拿掉了 我剛剛發現我錯誤了 我填錯格了 (可我怎一直以為是這格沒錯) 沒事了= = ===================引 用 2007 文 章=================== Cells[1, 9] := IntToStr(r5); <---筆數都是塡到這位置嗎?? RowCount := RowCount 1; <---那為什麼要一直加一??? DELPHI 我不會 ,來問問而以 ===================引 用 lovemari 文 章=================== with StringGrid11 do begin Cells[1, 9] := IntToStr(r5); RowCount := RowCount 1; end;
------
Program : Delphi 7 DataBase : Oracle 9i Client : ClientDataSet |
P.D.
版主 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
抱歉, 雖然你選擇缺席, 但我認為因為 2007 回覆指出 疑點, 然後才使得你注意問題所在, 我個人認為應該把分數給2007, 所以擅自主張修正, 對於此事如果當事者認為侵犯個人意志的話, 再敦請站務人員調整回來
===================引 用 lovemari 文 章=================== RowCount 1 那各是我之前不是用RecordCount來填值 忘記把RowCount 1拿掉了 我剛剛發現我錯誤了 我填錯格了 (可我怎一直以為是這格沒錯) 沒事了= = ===================引 用 2007 文 章=================== Cells[1, 9] := IntToStr(r5); <---筆數都是塡到這位置嗎?? RowCount := RowCount 1; <---那為什麼要一直加一??? DELPHI 我不會 ,來問問而以 ===================引 用 lovemari 文 章=================== with StringGrid11 do begin Cells[1, 9] := IntToStr(r5); RowCount := RowCount 1; end; |
2007
中階會員 發表:54 回覆:90 積分:98 註冊:2008-08-12 發送簡訊給我 |
謝謝 P.D. 版大 ===================引 用 P.D. 文 章=================== 抱歉, 雖然你選擇缺席, 但我認為因為 2007 回覆指出 疑點, 然後才使得你注意問題所在, 我個人認為應該把分數給2007, 所以擅自主張修正, 對於此事如果當事者認為侵犯個人意志的話, 再敦請站務人員調整回來 ===================引 用 lovemari 文 章=================== RowCount 1 那各是我之前不是用RecordCount來填值 忘記把RowCount 1拿掉了 我剛剛發現我錯誤了 我填錯格了 (可我怎一直以為是這格沒錯) 沒事了= = ===================引 用 2007 文 章=================== Cells[1, 9] := IntToStr(r5); <---筆數都是塡到這位置嗎?? RowCount := RowCount 1; <---那為什麼要一直加一??? DELPHI 我不會 ,來問問而以 ===================引 用 lovemari 文 章=================== with StringGrid11 do begin Cells[1, 9] := IntToStr(r5); RowCount := RowCount 1; end; |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |