July 30, 2009, 11:45 AM
Don Robison[SOLVED] Subtracting 30 minutes from the system data and time
I am trying to subtract 30 minutes for the system time
-SET &D_ST_DATE = &YYMD;
-SET &D_ST_TIME = EDIT(HHMMSS('A8'),'99$99$99');
-SET &DT_TIME = EDIT(&D_ST_DATE, '9999/99/99') |''| EDIT(&D_ST_TIME, '99:99:99');
-*-SET &DT_TIME1 = HADD(&DT_TIME,'MINUTE',-30,8, &DT_TIME1);
-SET &DT_TIME1 = HADD(&DT_TIME, 'MINUTE',-30, 8, &DT_TIME1);
not sure what I am doing wrong
This message has been edited. Last edited by: Kerry, July 30, 2009, 11:49 AM
Francis MarianiUnfortunately, when using Date-Time functions in Dialogue manager, you have to first convert the DM variable to a Date-Time field, as in this example:
-*-- Date/Time using Dialogue Manager --------------------------------------------
-SET &ECHO=ALL;
SET HOLDLIST = PRINTONLY
SET HOLDFORMAT = ALPHA
-RUN
-SET &CUR_DATE = &YYMD;
-SET &CUR_TIME = EDIT(HHMMSS('A8'),'99$99$99');
-SET &CUR_DTTM = &CUR_DATE | &CUR_TIME;
-*-- Syntax --------------------------------------------------
-*-- HINPUT(inputlength, 'inputstring', length, outfield)
-*-- HADD(value, 'component', increment, length, outfield)
-*-- HCNVRT(value, '(fmt)', length, outfield)
-SET &NEW_DTTM = HCNVRT(HADD(HINPUT(14, '&CUR_DTTM.EVAL' , 14, 'HYYMDS'), 'MINUTE', -30, 8, 'HYYMDS'), '(HYYMDS)', 20, 'A20');
-SET &NEW_DTTM1 = EDIT(&NEW_DTTM, '9999$99$99$99$99$99');
-TYPE Old: &CUR_DTTM / New: &NEW_DTTM or &NEW_DTTM1
Francis
Give me code, or give me retirement. In FOCUS since 1991
Production: WF 7.7.05M, Dev Studio, BID, MRE, WebSphere, DB2 / Test: WF 8.1.05M, App Studio, BI Portal, Report Caster, jQuery, HighCharts, Apache Tomcat, MS SQL Server