Focal Point Banner


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.


Focal Point    Focal Point Forums  Hop To Forum Categories  WebFOCUS/FOCUS Forum on Focal Point     [SOLVED] subtracting HYYMDS fields

Read-Only Read-Only Topic
Go
Search
Notify
Tools
[SOLVED] subtracting HYYMDS fields
 Login/Join
 
Silver Member
posted
Hi, I need to subtract two date fields in HYYMDS format and return the number of business days. Anyone have an idea how to do this?
Thanks in advance for your help!

This message has been edited. Last edited by: Kerry,


WebFOCUS 7.6.10, Windows Vista, Oracle, Output-Excel/PDF/HTML
 
Posts: 39 | Registered: September 20, 2007Report This Post
Gold member
posted Hide Post
Here is one way to do it:

  

SET BUSDAYS = _MT_TF_

-SET &START_DATE = '20120416';
-SET &END_DATE   = '20120430';

DEFINE FILE CAR
START_DATE/YYMD WITH CAR = &START_DATE ;
END_DATE/YYMD 	       = &END_DATE ;
END
TABLE FILE CAR
PRINT
START_DATE
END_DATE
COMPUTE DIFF/I5 = DATEDIF(START_DATE,END_DATE,'BD');
BY CAR
IF RECORDLIMIT EQ 1
END


WF 7.6.10, Windows, PDF, Excel
 
Posts: 75 | Location: Dallas, TX | Registered: February 12, 2004Report This Post
Expert
posted Hide Post
For Datetime format fields, you can use the HDIFF function.

I quick search of the forum for "SUBTRACT HYYMDS" would have given you the answer.


Waz...

Prod:WebFOCUS 7.6.10/8.1.04Upgrade:WebFOCUS 8.2.07OS:LinuxOutputs:HTML, PDF, Excel, PPT
In Focus since 1984
Pity the lost knowledge of an old programmer!

 
Posts: 6347 | Location: 33°49'23.0"S, 151°11'41.0"E | Registered: October 31, 2006Report This Post
Gold member
posted Hide Post
HDIFF doesn't account for Business Days.

BUSDAYS works with DATEDIF.


WF 7.6.10, Windows, PDF, Excel
 
Posts: 75 | Location: Dallas, TX | Registered: February 12, 2004Report This Post
Silver Member
posted Hide Post
Thanks! The requirement has changed so I'm calculating using Calendar Days now. I'm now using HDIFF but I can't seem to get the decimal portion to show. Here's my DEFINE'd field:

NEWCT/D12.2=HDIFF(DATE1, DATE2, 'DAY', NEWCT);

However, only full days are shown. So, for example, if DATE1 = 2012/02/28 09:06:05 and DATE2 = 2012/03/12 14:09:14, I get 13 instead of 13.21. Is there anyway around this?


WebFOCUS 7.6.10, Windows Vista, Oracle, Output-Excel/PDF/HTML
 
Posts: 39 | Registered: September 20, 2007Report This Post
Expert
posted Hide Post
Instead of working with days, work with hours, minutes or seconds, then calc the days from that.


Waz...

Prod:WebFOCUS 7.6.10/8.1.04Upgrade:WebFOCUS 8.2.07OS:LinuxOutputs:HTML, PDF, Excel, PPT
In Focus since 1984
Pity the lost knowledge of an old programmer!

 
Posts: 6347 | Location: 33°49'23.0"S, 151°11'41.0"E | Registered: October 31, 2006Report This Post
Virtuoso
posted Hide Post
Wouldn't that cause problems around DST changes?


WebFOCUS 8.1.03, Windows 7-64/2008-64, IBM DB2/400, Oracle 11g & RDB, MS SQL-Server 2005, SAP, PostgreSQL 11, Output: HTML, PDF, Excel 2010
: Member of User Group Benelux :
 
Posts: 1669 | Location: Enschede, Netherlands | Registered: August 12, 2010Report This Post
Silver Member
posted Hide Post
This is what was given as a solution, from a co-worker...

NEWCT/D12.2=HDIFF(DATE1,DATE2, 'MINUTE', NEWCT);

This will give you the number of minutes between the two dates. You would then need to add:

NEWCT2/D12.2=NEWCT/1440;

This will convert the minutes to days with a decimal.


Thanks for all of your suggestions!


WebFOCUS 7.6.10, Windows Vista, Oracle, Output-Excel/PDF/HTML
 
Posts: 39 | Registered: September 20, 2007Report This Post
  Powered by Social Strata  

Read-Only Read-Only Topic

Focal Point    Focal Point Forums  Hop To Forum Categories  WebFOCUS/FOCUS Forum on Focal Point     [SOLVED] subtracting HYYMDS fields

Copyright © 1996-2020 Information Builders