| 上一篇主題 :: 下一篇主題   | 
	
	
	
		| 發表人 | 
		內容 | 
	
	
		Terry1211
 
 
  註冊時間: 2008-03-13 文章: 63
 
  第 1 樓
  | 
		
			
				 發表於: 星期一 三月 31, 2008 3:13 pm    文章主題: 巨集(&) | 
				     | 
			 
			
				
  | 
			 
			
				請教大家
 
我要跨年查詢歷史資料庫,語法如下
 
 
delta = Year(Thisform.txtenddate.Value)-Year(Thisform.txtbgndate.Value)
 
For i=0 To delta
 
	nowyear= (Year(Thisform.txtbgndate.Value)+i)-1911
 
	dbfl="E:\temp\n"+Padl(Allt(Str(nowyear)),2,"0")+".dbf" &&資料庫位置
 
	Use &dbfl In 0 ALIAS mmm
 
	Select *;
 
        from mmm;
 
	Where mmm.Date Between Thisform.txtbgndate.Value And Thisform.txtenddate.Value
 
Endfor
 
Close All
 
 
會出現"Alias name is always in use",想請問&(巨集)是否無法這樣使用 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		nelsonchuang
 
 
  註冊時間: 2003-09-04 文章: 564 來自: 臺灣
  第 2 樓
  | 
		
			
				 發表於: 星期一 三月 31, 2008 3:27 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				答案很明顯地已經出來了,你有去瞭解Alias name is always in use這一句話的意義嗎? _________________ 大家好,請多指教 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		syntech
 
 
  註冊時間: 2003-05-16 文章: 4252 來自: Taipei,Taiwan
  第 3 樓
  | 
		
			
				 發表於: 星期一 三月 31, 2008 3:35 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				和 巨集 無關 +1 _________________ 如果公司有下列困擾:
 
1. 找不到便宜,快速,簡易的 生產排程軟體
 
2. 不知道如何快速排定 採購計劃
 
3. 成本抓不準,自己算比軟體算有用
 
4. 想學習系統規劃,想找系統架構的顧問
 
 
請聯絡我們,也許我們幫得上忙 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		Terry1211
 
 
  註冊時間: 2008-03-13 文章: 63
 
  第 4 樓
  | 
		
			
				 發表於: 星期一 三月 31, 2008 4:48 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				感謝兩位回應
 
我發現到,假如我查詢93-96年的DBF,
 
雖然For跑了三次,但抓到的DBF卻都是93,
 
不知道哪否給我個方向,如何利用迴圈同時動態抓出93-96的DBF,^^ | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		syntech
 
 
  註冊時間: 2003-05-16 文章: 4252 來自: Taipei,Taiwan
  第 5 樓
  | 
		
			
				 發表於: 星期一 三月 31, 2008 6:04 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				1." APPEND FROM " 很好用
 
2. DEBUG 是你的責任. 顯示出來看看不就知道了 _________________ 如果公司有下列困擾:
 
1. 找不到便宜,快速,簡易的 生產排程軟體
 
2. 不知道如何快速排定 採購計劃
 
3. 成本抓不準,自己算比軟體算有用
 
4. 想學習系統規劃,想找系統架構的顧問
 
 
請聯絡我們,也許我們幫得上忙 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		chilin
 
  
  註冊時間: 2003-10-01 文章: 79 來自: Taipei,Taiwan
  第 6 樓
  | 
		
			
				 發表於: 星期一 三月 31, 2008 10:28 pm    文章主題: 別名已使用 | 
				     | 
			 
			
				
  | 
			 
			
				delta = Year(Thisform.txtenddate.Value)-Year(Thisform.txtbgndate.Value) 
 
For i=0 To delta 
 
nowyear= (Year(Thisform.txtbgndate.Value)+i)-1911 
 
dbfl="E:\temp\n"+Padl(Allt(Str(nowyear)),2,"0")+".dbf" &&資料庫位置 
 
Use &dbfl In 0 ALIAS mmm 
 
Select *; 
 
from mmm; 
 
Where mmm.Date Between Thisform.txtbgndate.Value And Thisform.txtenddate.Value 
 
use in mmm &&將alias mmm 關閉
 
Endfor 
 
Close All | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		saint
 
 
  註冊時間: 2003-07-14 文章: 211
 
  第 7 樓
  | 
		
			
				 發表於: 星期二 四月 01, 2008 11:08 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				應該是你用了..OO語法...
 
VFP的 SQL Parse 會看不懂你用的 Thisform.txtbgndate.Value 
 
換一下吧..= =" | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		 |