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.
This code was working in WF 7.1.7 not working in WF 7.7.04. I'm new to focus. Not sure what they are trying to do. Create a dummy row in a focus table?
Any help is appreciated
JOIN CLEAR * JOIN BLANK WITH BUSINESS_UNIT_NAME IN HOLD TO ALL BLANK IN TWGIF100
DEFINE FILE HOLD LEGAL_ENTITY_SORT/A4 = IF (FOCLIST EQ 1) THEN LEGAL_ENTITY_SORT ELSE IF (FOCLIST EQ 2) THEN '9999' ELSE ' '; COMPANY_CODE/A8 = IF (FOCLIST EQ 1) THEN COMPANY_CODE ELSE IF (FOCLIST EQ 2) THEN 'TOTAL' ELSE ' '; END
TABLE FILE HOLD SUM &PCTNUMFLD &PCTDIVFLD COMPUTE PCTA/&DOLLAR_FMT1 = IF (&PCTDIVFLD EQ 0) THEN 0 ELSE (&PCTNUMFLD / &PCTDIVFLD) * 100;
BY COMPANY_CODE BY LEGAL_ENTITY_SORT BY BUSINESS_UNIT_SUMMARY_SORT BY BUSINESS_UNIT_SUMMARY_NAME BY BUSINESS_UNIT_SORT BY BUSINESS_UNIT_NAME
WHERE (FOCLIST LE 2);
ON TABLE HOLD END -RUN -SET &SAYTIMEMSG = 'Create Row Totals (dummy Legal Entity created)'; -INCLUDE USAYTIME -IF (&SAYTIMEERR NE 0) THEN GOTO NODATA;
JOIN CLEAR * JOIN BLANK WITH BUSINESS_UNIT_NAME IN HOLD TO ALL BLANK IN TWGIF100This message has been edited. Last edited by: steveyosteve,
JOIN BLANK WITH BUSINESS_UNIT_NAME IN HOLD TO ALL BLANK IN TWGIF100
This statement indicates a field named BLANK is being DEFINEd in file HOLD and then JOINed to a similarly-named field in TWGIF100. However, your code does not show a DEFINE for field BLANK. I suppose field BLANK may already exist in file HOLD, which may explain why this code worked in an earlier release but does not in newer releases (due to code tightenening). Another bad practice I notice in your code is the repeated use of the same HOLD file name, namely "HOLD". You should at least differentiate them with names like HOLD1, HOLD2, HOLD3, etc., to avoid confusing WebFOCUS and the developers who must maintain it.
WebFOCUS 7.7.05
Posts: 1213 | Location: Seattle, Washington - USA | Registered: October 22, 2007
I added BLANK to the hold file and the report works. Just have to see if the results are the same as they were with previous release.
DEFINE FILE HOLD BLANK /A1 = ' '; LEGAL_ENTITY_SORT/A4 = IF (FOCLIST EQ 1) THEN LEGAL_ENTITY_SORT ELSE IF (FOCLIST EQ 2) THEN '9999' ELSE ' '; COMPANY_CODE/A8 = IF (FOCLIST EQ 1) THEN COMPANY_CODE ELSE IF (FOCLIST EQ 2) THEN 'TOTAL' ELSE ' '; END
You should code a WITH phrase in the define, to match that in the join:
JOIN BLANK WITH BUSINESS_UNIT_NAME IN HOLD TO ALL BLANK IN TWGIF100
DEFINE FILE HOLD
BLANK/A1 WITH BUSINESS_UNIT_NAME = ' ';
. . .
The WITH phrase, in both contexts, tells TABLE at what point in navigation to evaluate the field -- in the present example, whenever a new instance of the segment containing BUSINESS_UNIT_NAME is read in.
Posts: 1925 | Location: NYC | In FOCUS since 1983 | Registered: January 11, 2005