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

StringGrid_欄位_"日期"_隨選取條件而變換

答題得分者是:Brian77
doll_candy
初階會員


發表:110
回覆:53
積分:32
註冊:2002-04-22

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-08-18 20:56:08 IP:61.223.xxx.xxx 未訂閱
請問各位大大 1.有N 個TABLE 例:結帳單a,應收單b,銷貨單c,進貨單d...等Table 2.Select Date_col from Table_a union Select Date_col from Table_b union Select Date_col from Table_c union Select Date_col from Table_d 3.得 不重覆之Date 值 4.寫入StringGrid中 5.case Date of 日期一:... 日期二:... . . . 例設定條件後查詢之日期between '20030806' and '20030819': 第一次:0806,0808,0809,0810,0815,0818,0819 Table結帳單a之Date:0808,0819 Table應收單b之Date:0809,0818 Table銷貨單c之Date:0808,0815 Table進貨單d之Date:0806,0810 需答如下:StringGrid畫面 0806 0808 0809 0810 0815 0818 0819 結帳單a 30 50 應收單b 70 89 銷貨單c 50 90 進貨單d 60 20 例設定條件後查詢之日期'20030701' and '20030715': 第一次:0703,0705,0708,0709,0710,0713,0715 Table結帳單a之Date:0705,0715 Table應收單b之Date:0708,0713 Table銷貨單c之Date:0705,0710 Table進貨單d之Date:0703,0709 StringGrid畫面 0703 0705 0708 0709 0710 0713 0715 結帳單a 30 50 應收單b 70 89 銷貨單c 50 90 進貨單d 60 20 請問case of 要如何寫或是用其它方法 小妹我拜託大家了 Thanks doll_candy
------
doll_candy
Brian77
中階會員


發表:8
回覆:114
積分:94
註冊:2002-05-17

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-08-18 22:57:46 IP:61.221.xxx.xxx 未訂閱
不太清楚你要問的.. SELECT Date_Col,Value_Col,"結帳單" AS Data_Source FROM Table_A UNION SELECT Date_Col,Value_Col,"應收單" AS Data_Source FROM Table_B UNION SELECT Date_Col,Value_Col,"銷貨單" AS Data_Source FROM Table_C UNION SELECT Date_Col,Value_Col,"進貨單" AS Data_Source FROM Table_D 再依 Date_Col 和 Data_Source 將 Value_Col 填入相對的格子 是問這個嗎?
doll_candy
初階會員


發表:110
回覆:53
積分:32
註冊:2002-04-22

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-08-19 00:15:08 IP:61.223.xxx.xxx 未訂閱
引言: 5.case Date of 日期一:... 日期二:... . . . 例設定條件後查詢之日期between '20030806' and '20030819': 第一次:0806,0808,0809,0810,0815,0818,0819 Table結帳單a之Date:0808,0819 Table應收單b之Date:0809,0818 Table銷貨單c之Date:0808,0815 Table進貨單d之Date:0806,0810 需答如下:StringGrid畫面 0806 0808 0809 0810 0815 0818 0819 結帳單a 30 50 應收單b 70 89 銷貨單c 50 90 進貨單d 60 20 例設定條件後查詢之日期'20030701' and '20030715': 第一次:0703,0705,0708,0709,0710,0713,0715 Table結帳單a之Date:0705,0715 Table應收單b之Date:0708,0713 Table銷貨單c之Date:0705,0710 Table進貨單d之Date:0703,0709 StringGrid畫面 0703 0705 0708 0709 0710 0713 0715 結帳單a 30 50 應收單b 70 89 銷貨單c 50 90 進貨單d 60 20 請問case of 要如何寫或是用其它方法
--------------------------------------------------- 應該說是 如例子:依查詢條件 第一次: case 語法 case Date of 0806: 寫入欄1 0808: 寫入欄2 0809: 寫入欄3 0810: 寫入欄4 0815: 寫入欄5 0818: 寫入欄6 0819: 寫入欄7 第二次:case 語法 case Date of 0703: 寫入欄1 0705: 寫入欄2 0708: 寫入欄3 0709: 寫入欄4 0710: 寫入欄5 0713: 寫入欄6 0715: 寫入欄7 如此會因不同查詢日期而異才是讓我頭痛的問題 doll_candy
------
doll_candy
Brian77
中階會員


發表:8
回覆:114
積分:94
註冊:2002-05-17

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-08-19 10:10:05 IP:61.61.xxx.xxx 未訂閱
由於日期項目不固定, 所以不適用 Case 可用迴圈搜尋的方式
for i:=1 to StringGrid1.ColCount-1 do
begin
  if StringGrid1.Cells[i,0]=Query1.FieldByName('Date_Col').asString then
  begin
    StringGrid1.Cells[i,第幾次]:=Query1.FieldByName('Value_Col').asString;
    break;
  end;
end;
doll_candy
初階會員


發表:110
回覆:53
積分:32
註冊:2002-04-22

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-08-19 10:52:35 IP:61.218.xxx.xxx 未訂閱
引言: 由於日期項目不固定, 所以不適用 Case 可用迴圈搜尋的方式
for i:=1 to StringGrid1.ColCount-1 do
begin
  if StringGrid1.Cells[i,0]=Query1.FieldByName('Date_Col').asString then
  begin
    StringGrid1.Cells[i,第幾次]:=Query1.FieldByName('Value_Col').asString;
    break;
  end;
end;
謝謝,我看了一下,好像就是我所要的 我要連程式作業測試看看 < >< > 我終於可以放下心中大石了 doll_candy
------
doll_candy
系統時間:2024-05-18 16:53:30
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!