| 上一篇主題 :: 下一篇主題   | 
	
	
	
		| 發表人 | 
		內容 | 
	
	
		huan388
 
 
  註冊時間: 2007-07-29 文章: 10
 
  第 1 樓
  | 
		
			
				 發表於: 星期一 十月 06, 2008 4:37 pm    文章主題: 利用VFP做出二維表 | 
				     | 
			 
			
				
  | 
			 
			
				各位大哥好
 
跟各位請教該如何用程式把類似以下以下資料變成二維表
 
類似做出EXCEL的樞紐分析表
 
 
假設有表 TABLE_A   第一列為欄位名稱  資料如下
 
 
月份     單位    金額
 
------------------
 
9702    東區    100
 
9702    西區    200
 
9703    東區    300 
 
 
我想將單位的內容變成欄位名稱 變成如以下的表
 
月份   東區  西區
 
----------------
 
9702  100   200
 
9703  300      0
 
 
其中單位可能有幾百種 每次出現也不一定 
 
我知道用EXCEL樞紐分析表很容易
 
有沒有辦法 再DBF就顯示成這種型態呢
 
非常感謝大家 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		syntech
 
 
  註冊時間: 2003-05-16 文章: 4252 來自: Taipei,Taiwan
  第 2 樓
  | 
		
			
				 發表於: 星期一 十月 06, 2008 4:54 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				先用 excel 作好再轉成dbf.  XD _________________ 如果公司有下列困擾:
 
1. 找不到便宜,快速,簡易的 生產排程軟體
 
2. 不知道如何快速排定 採購計劃
 
3. 成本抓不準,自己算比軟體算有用
 
4. 想學習系統規劃,想找系統架構的顧問
 
 
請聯絡我們,也許我們幫得上忙 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		ckp6250
 
 
  註冊時間: 2004-07-30 文章: 1645
 
  第 3 樓
  | 
		
			
				 發表於: 星期一 十月 06, 2008 5:17 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				Vfp9 中 的 Tool-Task Pane - Solution Samples-Active X-Automation-Manipulate display characteristics of a graph 
 
 
有範例 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		garfield Site Admin
  
  註冊時間: 2003-01-30 文章: 2160
 
  第 4 樓
  | 
		 | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		chilin
 
  
  註冊時間: 2003-10-01 文章: 79 來自: Taipei,Taiwan
  第 5 樓
  | 
		
			
				 發表於: 星期一 十月 06, 2008 8:42 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				SELECT 0
 
SELECT 單位 FROM TABLE_A GROUP BY 單位 INTO CURSOR TC_COL
 
_VFP=[SELECT 月份]
 
SCAN
 
   _FNAME=ALLTRIM(TC_COL.單位)
 
   _VFP=_VFP+[,SUM(IIF(單位=']+_FNAME+[',1,0)*金額) AS ]+_FNAME
 
ENDSCAN
 
USE IN TC_COL
 
_VFP=_VFP+[ FROM TABLE_A GROUP BY 月份 INTO CURSOR TC1]
 
SELECT 0
 
&_VFP
 
BROW _________________ 一個喜愛Latte的男人 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		huan388
 
 
  註冊時間: 2007-07-29 文章: 10
 
  第 6 樓
  | 
		
			
				 發表於: 星期一 十月 13, 2008 5:28 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				chilin兄
 
很感謝你
 
你那段程式碼就是我想要的
 
這邊高手真的很多
 
其他大哥也一併感謝啦 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		goodnight
 
  
  註冊時間: 2008-10-13 文章: 473 來自: 台南市
  第 7 樓
  | 
		
			
				 發表於: 星期二 四月 28, 2009 7:54 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				 	  | chilin 寫到: | 	 		  SELECT 0
 
SELECT 單位 FROM TABLE_A GROUP BY 單位 INTO CURSOR TC_COL
 
_VFP=[SELECT 月份]
 
SCAN
 
   _FNAME=ALLTRIM(TC_COL.單位)
 
   _VFP=_VFP+[,SUM(IIF(單位=']+_FNAME+[',1,0)*金額) AS ]+_FNAME
 
ENDSCAN
 
USE IN TC_COL
 
_VFP=_VFP+[ FROM TABLE_A GROUP BY 月份 INTO CURSOR TC1]
 
SELECT 0
 
&_VFP
 
BROW | 	  
 
 
請問一下 , 有沒有人知道
 
_VFP=[SELECT 月份]
 
這段的目的為何, 我用 VFP9 執行會發生 DATA TYPE MISMATCH | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		chilin
 
  
  註冊時間: 2003-10-01 文章: 79 來自: Taipei,Taiwan
  第 8 樓
  | 
		
			
				 發表於: 星期三 四月 29, 2009 8:41 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				範例中TABLE_A 檔案結構如下:
 
CREATE CURSOR TABLE_A (月份 C(4),單位 C(4),金額 N(6))
 
欄位:月份 及 單位 都是字串型態
 
 
請將 _VFP 變數顯示出來看便知曉
 
WAIT WINDOW _VFP
 
OR
 
STRTOFILE(_VFP,[C:\SQL.TXT]) _________________ 一個喜愛Latte的男人 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		bin1x
 
 
  註冊時間: 2004-08-27 文章: 462
 
  第 9 樓
  | 
		
			
				 發表於: 星期五 五月 01, 2009 1:29 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				這種東西
 
我一開始的作法是
 
create 一個temp cursor 或檔案
 
用個邏輯判斷屬於那欄的就寫到那邊,不過我會事先group by 起來
 
(效率可能會比較好)
 
後來
 
我用了另外一種寫法就是(先決條件是知道多少單位)
 
select "東區",sum(金額),"西區",0 where 單位 ="東區"
 
union all; 
 
select "東區",0,"西區",sum(金額) where 單位 ="西區"
 
 
類似像這樣
 
很白痴,只是想完全用sql 來解決問題
 
意外發現,欄位命名的問題,和欄位位數的問題
 
後來自己有沒有再用比較合理的方法來解決,忘了
 
順便一提
 
用二維表格方法,最後還是要以報表方式來呈現
 
所以基本上
 
在報表上作手腳(多欄的報表),就不會有二維表格這個問題發生了
 
討論群有類似的討論 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		ruby
 
 
  註冊時間: 2003-06-03 文章: 25
 
  第 10 樓
  | 
		 | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		 |