SI
SI
discoversearch

We've detected that you're using an ad content blocking browser plug-in or feature. Ads provide a critical source of revenue to the continued operation of Silicon Investor.  We ask that you disable ad blocking while on Silicon Investor in the best interests of our community.  If you are not using an ad blocker but are still receiving this message, make sure your browser's tracking protection is set to the 'standard' level.
Technology Stocks : Discuss Year 2000 Issues

 Public ReplyPrvt ReplyMark as Last ReadFilePrevious 10Next 10PreviousNext  
To: Jim who wrote (5146)4/1/1999 2:19:00 AM
From: B.K.Myers  Read Replies (1) of 9818
 
Jim,

We have a couple of systems that use two position dates, and we simply inserted a few lines of code into each program (a subroutine actually), that says if the length of the year is two, then, if the year is greater then 50, add 1900 else add 2000. This works for most logic, display, and printing functions (assuming it will fit on the screen or report), but you are correct when it comes to sorts and date
keys.


This is the same technique that my client used for their Y2K remediation, except we used 1970 as our pivot year. Interestingly enough, some of their other systems used different pivot years, 1920 and 1950. They are going to have to stay on top of these different window periods when they share information. This shouldn't be a problem for a couple of more decades. Hopefully someone will remember this discrepancy 20 years from now.

There is also a very subtle error that can occur when you use this technique. Most of our dates are kept in numeric fields and these fields are not always populated. For example, fields that contain an end date may not be populated until sometime in the future, so the numeric date field is initialized to zero. When you test only the year field for a value of zero, you add 2000 to year field and end up with a date of 20000000 (YYYYMMDD).

Obviously this is not correct. It has resulted in both program crashes and incorrect results in our testing. The crashes were caused by some rather creative code that some programmers added to the programs to deal with the oddities of date math. If you use this technique, please be sure to test your systems thoroughly.

Jim, I read the link that you included in your posting to me. I enjoyed the reading the posting but I have several comments about the paper. When I have some more spare time, I will post my comments on this site.

B.K.
Report TOU ViolationShare This Post
 Public ReplyPrvt ReplyMark as Last ReadFilePrevious 10Next 10PreviousNext