As of December 1, 2020, Focal Point is retired and repurposed as a reference repository. We value the wealth of knowledge that's been shared here over the years. You'll continue to have access to this treasure trove of knowledge, for search purposes only.
Join the TIBCO Community TIBCO Community is a collaborative space for users to share knowledge and support one another in making the best use of TIBCO products and services. There are several TIBCO WebFOCUS resources in the community.
From the Home page, select Predict: WebFOCUS to view articles, questions, and trending articles.
Select Products from the top navigation bar, scroll, and then select the TIBCO WebFOCUS product page to view product overview, articles, and discussions.
Request access to the private WebFOCUS User Group (login required) to network with fellow members.
Former myibi community members should have received an email on 8/3/22 to activate their user accounts to join the community. Check your Spam folder for the email. Please get in touch with us at community@tibco.com for further assistance. Reference the community FAQ to learn more about the community.
I'm trying to get my head around this -- I'm not familiar with Zulu or UTC time fields, which is what I believe the NEXTRUNTIME field is, although the format of the field is A32V (according to the ?FF I ran). How can I get this to show on a report in HMDYY format? I have just been using code, but I suppose I could convert to SQL pass-thru. I'm just trying to get a list of reports with a future NEXTRUNTIME. Thanks! --DebThis message has been edited. Last edited by: DWaybright,
WebFOCUS 8.2.03 (production), 8.2.06 (testing) AppStudio, InfoAssist Windows, All Outputs
Posts: 183 | Location: Indiana | Registered: December 05, 2017
It looks like it is using The ECMAScript epoch and timestamps, which is the number of milliseconds that have elapsed since midnight on January 1, 1970, UTC.
January 1, 1970, UTC is the same as the UNIX epoch, which is the predominant base value for computer-recorded date and time values.
Open the dev tools in a browser, go to the console and enter
new Date( [value of NEXTRUNTIME] )
You will see the date.
**EDIT Unless NEXTRUNTIME = '00000000000009223372036854775807' in which case it means NEXTRUNTIME = 'never'
So, looking at Chuck's code above, it is converting the string to a number and adding that number of miliseconds to the UNIX epoch of January 1, 1970, UTC.This message has been edited. Last edited by: Hallway,
Hallway
Prod: 8202M1
Test: 8202M4
Repository:
OS:
Outputs:
Posts: 608 | Location: Salt Lake City, UT, USA | Registered: November 18, 2015
Chuck -- Thanks! That gave me what I needed. Hallway -- Thanks for the explanation. I do appreciate knowing why something works and what I'm really looking at.
--Deb
WebFOCUS 8.2.03 (production), 8.2.06 (testing) AppStudio, InfoAssist Windows, All Outputs
Posts: 183 | Location: Indiana | Registered: December 05, 2017
Ummm, scratch that, just need to click on the "Community Center" link at the top of this page and then choose "Tips and Techniques" from the bottom link in the centre of the "Forum Highlights" section. Zulu Time - How to Read the ReportCaster Schedule File
T
In FOCUS since 1986
WebFOCUS Server 8.2.01M, thru 8.2.07 on Windows Svr 2008 R2
WebFOCUS App Studio 8.2.06 standalone on Windows 10
Posts: 5694 | Location: United Kingdom | Registered: April 08, 2004
In addition to the article written by Susannah in 2003(?), You can obtain an indicator whether the current time zone is affected by daylight saving.
This is what I use -
-* Call reg.exe to obtain the current time offset due to BST
CMD REG QUERY HKLM\SYSTEM\CURRENTCONTROLSET\CONTROL\TIMEZONEINFORMATION /V ACTIVETIMEBIAS > TZ.TXT
-RUN
-* Allocate the timezone data so that we can read the values
FILEDEF TZDATA DISK TZ.TXT (LRECL 80 RECFM V
-RUN
-* Read the values from the line containing the word 'ACTIVETIMEBIAS'
-:LAB_000;
-READ TZDATA &TZDATA.A80.
-IF &TZDATA OMITS 'ACTIVETIMEBIAS' THEN GOTO :LAB_000;
-SET &HEXVAL = GETTOK(&TZDATA, 80, -1, 'x', 10, 'A10');
-* Using the returned hexadecimal value, determine the epoch time to feed into the conversion
-* of the START_STAMP which is a count of milliseconds since the epoch time.
-*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-* WARNING: As the machine current time offset is used, any data that is loaded COULD be
-* an hour out.
-*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-SET &EPOCH = DECODE &HEXVAL('ffffffc4' '19700101 01:00:00' ELSE '19700101 00:00:00');
-TYPE The EPOCH time being used is &EPOCH.EVAL
and then in a define -
EPOCH/HYYMDs = HINPUT(&EPOCH.LENGTH, &EPOCH.QUOTEDSTRING, 8, 'HYYMDs');
BEG_TIMESTAMP/HYYMDs = IF START_STAMP NE '' THEN HADD(EPOCH, 'ms', EDIT(START_STAMP), 8, BEG_TIMESTAMP) ELSE EPOCH;
END_TIMESTAMP/HYYMDs = IF END_STAMP NE '' THEN HADD(EPOCH, 'ms', EDIT(END_STAMP), 8, END_TIMESTAMP) ELSE EPOCH;
T
In FOCUS since 1986
WebFOCUS Server 8.2.01M, thru 8.2.07 on Windows Svr 2008 R2
WebFOCUS App Studio 8.2.06 standalone on Windows 10
Posts: 5694 | Location: United Kingdom | Registered: April 08, 2004