× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



We have fields in the format CCYYMMDD
They are numbers in which all zeros, all nines are valid contents
for example the date Feb 21 is in there as 20080221
If your data is in a different format, you may have to adjust my ALGORITHM

DA = DIGITS(CCYYMMDD)

If the name of the original field was CCYYMMDD
and if it was numeric, then the result field DA now has the same data in alpha string format ... stuff has to be in that data type to do content manipulation.

DT = DATE(SUBSTR(DA,5,2)||'/'||
SUBSTR(DA,7,2)||'/'||
SUBSTR(DA,3,2))

The vertical lines are concatenating the substrings of pairs of digits
to put the data in the form MM/DD/YY and redefine it as an IBM ISO Date Type Format
so that we can do date math on this result

Having done this with several different date fields we can now do things in query/400 like:

DAYS_DIFF = DAYS(DT_NEW) - DAYS(DT_OLD)
where a positive # is days into the future
and a negative # is days into the past

TODAY = CURRENT(DATE)
gets us today's date in mm/dd/yy formt ... the date the query got run
TOMORROW = CHAR(CURRENT(DATE)) + 1 DAY(ISO)
or
TOMORROW = DAYS(CURRENT(DATE)) + 1
YEAR_AGO = CURRENT(DATE) - 1 YEAR
DAYS_AGO = DAYS(TODAY) - DAYS(DT_CHANGE)
as in how many days ago this customer order got shipped

Last day of month
= CURRENT(DATE) + 1 MONTH - DAY(CURRENT(DATE))

First day of month
= CURRENT(DATE) + 1 DAY - DAY(CURRENT(DATE))

You'll need to test this kind of stuff to make sure I transcribed it correctly.

Al Mac Wheel
who uses Query/400 because everything is wanted yesterday

TIA

Don F. Cavaiani
IT Manager
Amerequip Corp.
920-894-7063

"It's amazing what you can accomplish if you don't care who gets the credit." Harry S. Truman



--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/midrange-l.



As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.