| 上一篇主題 :: 下一篇主題   | 
	
	
	
		| 發表人 | 
		內容 | 
	
	
		eather
 
 
  註冊時間: 2004-04-10 文章: 1
 
  第 1 樓
  | 
		
			
				 發表於: 星期二 九月 21, 2004 10:21 am    文章主題: 報表問題-如何將'20040728'加上5轉換為日期 | 
				     | 
			 
			
				
  | 
			 
			
				| 如何將欄位型態為文字而非日期格式之數字,加上一固定值,報表列印時,將該值轉換為日期???[/img] | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		syntech
 
 
  註冊時間: 2003-05-16 文章: 4252 來自: Taipei,Taiwan
  第 2 樓
  | 
		
			
				 發表於: 星期二 九月 21, 2004 11:08 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				CTOD(substr('20040728',1,4)+"/"+substr('20040728',5,2)+"/"+substr('20040728',7,2))+5
 
 
其中可能有陷阱,等你發現....    _________________ 如果公司有下列困擾:
 
1. 找不到便宜,快速,簡易的 生產排程軟體
 
2. 不知道如何快速排定 採購計劃
 
3. 成本抓不準,自己算比軟體算有用
 
4. 想學習系統規劃,想找系統架構的顧問
 
 
請聯絡我們,也許我們幫得上忙 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		KKKLYNN
 
 
  註冊時間: 2004-09-17 文章: 357
 
  第 3 樓
  | 
		
			
				 發表於: 星期二 九月 21, 2004 12:18 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				注意最後的字串型轉數字型,還有整數化的處理,然後再轉回字串,再結合....
 
但為何原設定為字串型態(設定為日期就簡單多了,直接加數字就好)
 
我也是初學者,當初系統發展時也吃了上述的苦
 
設定字串要轉日期比較麻煩,日期轉字串就簡單多了 DTOS()
 
若格式上就用格式的轉換來處理
 
以上希望對您有幫助 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		bin1x
 
 
  註冊時間: 2004-08-27 文章: 462
 
  第 4 樓
  | 
		
			
				 發表於: 星期二 九月 21, 2004 2:23 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				要考慮的狀況有
 
1.2月28  不是閏年
 
2.2月29  閏年
 
3.7月31  單月31 雙月30
 
4.8月31  之後 單月30 雙月31
 
有自己寫好函數來用比較好 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		garfield Site Admin
  
  註冊時間: 2003-01-30 文章: 2160
 
  第 5 樓
  | 
		
			
				 發表於: 星期二 九月 21, 2004 11:27 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				ctod( tran('20040728' ,'@R 9999/99/99')) + 5 _________________ 利用>>搜尋<<的功能會比問的還要快得到答案. | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		LKH
 
 
  註冊時間: 2004-09-17 文章: 31 來自: 香港
  第 6 樓
  | 
		
			
				 發表於: 星期二 九月 21, 2004 11:45 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				 	  | garfield 寫到: | 	 		  | ctod( tran('20040728' ,'@R 9999/99/99')) + 5 | 	  
 
 
很好的方案.
 
 
簡單!  直接! _________________ 謝謝賜教 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		朱育興
 
 
  註冊時間: 2003-08-25 文章: 661 來自: 台中市大里區
  第 7 樓
  | 
		
			
				 發表於: 星期二 九月 21, 2004 11:56 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				執行 ctod( tran('20040728' ,'@R 9999/99/99')) + 5 這句需注意在執行前其必需
 
 
SET DATE YMD
 
 
否則答案會是空日期 _________________ 希望有更多人來參與
 
 VFP wiki - 需要大家一起完成的VFP電子書與FAQ  | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		garfield Site Admin
  
  註冊時間: 2003-01-30 文章: 2160
 
  第 8 樓
  | 
		
			
				 發表於: 星期三 九月 22, 2004 12:51 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				育興兄, 你都把 syntech, 所提到的"其中可能有陷阱"都指出來了.   _________________ 利用>>搜尋<<的功能會比問的還要快得到答案. | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		朱育興
 
 
  註冊時間: 2003-08-25 文章: 661 來自: 台中市大里區
  第 9 樓
  | 
		 | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		LKH
 
 
  註冊時間: 2004-09-17 文章: 31 來自: 香港
  第 10 樓
  | 
		
			
				 發表於: 星期三 九月 22, 2004 11:00 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				 	  | 朱育興 寫到: | 	 		  | 喔!我還真多嘴,看到 LKH 的回答就忍不住提醒他一聲。 | 	  
 
 
謝謝你的提示   
 
在討論區中得到各方的提示及意見是很好的, 很多時跟著去做未必解決, 自己一定要花點腦汁去思考, 這正是寫 program 的樂趣. _________________ 謝謝賜教 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		yoncen
 
  
  註冊時間: 2005-08-29 文章: 35
 
  第 11 樓
  | 
		
			
				 發表於: 星期三 九月 07, 2005 5:19 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				'@R ^9999/99/99',加個^即可。不需要set date ymd _________________ 從事企業ERP開發,學會止境,精益求精。 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		215001
 
 
  註冊時間: 2003-06-11 文章: 393
 
  第 12 樓
  | 
		
			
				 發表於: 星期三 九月 07, 2005 8:03 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				或改用
 
xdate='20040728'
 
? DATE( VAL(left(xdate,4)),VAL(substr(xdate,5,2)),VAL(substr(xdate,7,2)) )+5 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		lygcw9603
 
 
  註冊時間: 2011-12-25 文章: 130
 
  第 13 樓
  | 
		
			
				 發表於: 星期日 三月 17, 2024 10:37 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				| ? CTOD(TRANSFORM(VAL("20040728"), "@D")) + 5 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		 |