瀏覽單個文章
kec
Major Member
 
kec的大頭照
 

加入日期: Feb 2004
您的住址: Terran Empire
文章: 283
引用:
作者ccx1103
我不太會cobol, 但是單看程式碼, 問題未必出在這段程式.
這段程式只是在檢查日期後,傳回日期

10 DATE-CHK-YY PIC 99.
改成
10 DATE-CHK-YY PIC 999. 即可

其餘並沒有什麼重要的...
大概就是 100年+1911=2011年,
2011/4 整除就是閏年,閏年的2月=29天。
但是 2011/400 整除不是潤年
其他大概是檢視月份between 1 to 12,
日期 between 1~30 or 1~31
感覺出錯的機會並不大

只把DATE-CHK-YY改成PIC 999是不行地。
DATE-CHK-YY、DATE-CHK-MM與DATE-CHK-DD(各兩位數字)是對應到DATE-CHK-1,而DATE-CHK-1只有六位數字。DATE-CHK-1要能改成七位數字才行,這牽涉到程式其他部分怎麼用DATE-CHK-1。

或許用ETL(Extract, Transform and Load)工具把舊資料轉進DB是比較可行的作法。
__________________
--------------------
一個航太時代的句點
2012年4月27日 OV-101 Space Shuttle Enterprise運抵紐約
舊 2011-06-30, 12:54 AM #8
回應時引用此文章
kec離線中