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 am trying to create a report that will show changes between two time periods. I've created two HOLD files, each containing data from a different time period (current and prior month). I am trying to perform a MATCH on these two HOLD files to find the unmatched records and receive an error "Unable to parse MASTER file PRIOR (0)" (PRIOR is the name of the HOLD). Any suggestions?
Here is the procedure (htmlcss removed): SET ASNAMES = ON JOIN NBRJOBS.NBRJOBS.NBRJOBS_PIDM AND NBRJOBS.NBRJOBS.NBRJOBS_POSN AND NBRJOBS.NBRJOBS.NBRJOBS_SUFF IN NBRJOBS TO MULTIPLE NBRBJOB.NBRBJOB.NBRBJOB_PIDM AND NBRBJOB.NBRBJOB.NBRBJOB_POSN AND NBRBJOB.NBRBJOB.NBRBJOB_SUFF IN NBRBJOB TAG J4 AS J4 END TABLE FILE NBRJOBS SUM 'MAX.NBRJOBS.NBRJOBS.NBRJOBS_EFFECTIVE_DATE' AS 'MAX,NBRJOBS.NBRJOBS.NBRJOBS_EFFECTIVE_DATE' BY 'NBRJOBS.NBRJOBS.NBRJOBS_PIDM' HEADING "" FOOTING "" WHERE ( J4.NBRBJOB.NBRBJOB_CONTRACT_TYPE EQ 'P' ) AND ( NBRJOBS.NBRJOBS.NBRJOBS_EFFECTIVE_DATE FROM '&CurrentMonthBeginDate' TO '&CurrentMonthEndDate' ); ON TABLE SET PAGE-NUM OFF ON TABLE NOTOTAL ON TABLE HOLD AS MAXJOB FORMAT FOCUS INDEX 'NBRJOBS.NBRJOBS.NBRJOBS_PIDM' END JOIN SPRIDEN.SPRIDEN.SPRIDEN_PIDM IN SPRIDEN TO MULTIPLE MAXJOB.SEG01.NBRJOBS_PIDM IN MAXJOB TAG J0 AS J0 END JOIN J0.SEG01.NBRJOBS_PIDM AND J0.SEG01.MAX IN SPRIDEN TO MULTIPLE NBRJOBS.NBRJOBS.NBRJOBS_PIDM AND NBRJOBS.NBRJOBS.NBRJOBS_EFFECTIVE_DATE IN NBRJOBS TAG J8 AS J8 END TABLE FILE SPRIDEN PRINT 'SPRIDEN.SPRIDEN.SPRIDEN_PIDM' 'SPRIDEN.SPRIDEN.SPRIDEN_ID' 'SPRIDEN.SPRIDEN.SPRIDEN_LAST_NAME' 'SPRIDEN.SPRIDEN.SPRIDEN_FIRST_NAME' 'SPRIDEN.SPRIDEN.SPRIDEN_MI' 'J8.NBRJOBS.NBRJOBS_POSN' 'J8.NBRJOBS.NBRJOBS_SUFF' 'J8.NBRJOBS.NBRJOBS_STATUS' HEADING "" FOOTING "" WHERE ( SPRIDEN.SPRIDEN.SPRIDEN_CHANGE_IND EQ MISSING ); ON TABLE SET PAGE-NUM OFF ON TABLE NOTOTAL ON TABLE HOLD AS EMPLOYEEJOBS FORMAT FOCUS INDEX 'SPRIDEN.SPRIDEN.SPRIDEN_PIDM' END JOIN EMPLOYEEJOBS.SEG01.SPRIDEN_PIDM AND EMPLOYEEJOBS.SEG01.NBRJOBS_POSN IN EMPLOYEEJOBS TO MULTIPLE NBRBJOB.NBRBJOB.NBRBJOB_PIDM AND NBRBJOB.NBRBJOB.NBRBJOB_POSN IN NBRBJOB TAG J12 AS J12 END JOIN J12.NBRBJOB.NBRBJOB_PIDM AND J12.NBRBJOB.NBRBJOB_POSN IN EMPLOYEEJOBS TO MULTIPLE NBRJOBS.NBRJOBS.NBRJOBS_PIDM AND NBRJOBS.NBRJOBS.NBRJOBS_POSN IN NBRJOBS TAG J13 AS J13 END JOIN EMPLOYEEJOBS.SEG01.SPRIDEN_PIDM IN EMPLOYEEJOBS TO MULTIPLE PEBEMPL.PEBEMPL.PEBEMPL_PIDM IN PEBEMPL TAG J14 AS J14 END DEFINE FILE EMPLOYEEJOBS AY_FY_Indicator/A3= IF J14.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'AA' THEN 'AY' ELSE IF J14.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'AB' THEN 'AY' ELSE IF J14.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'AB' THEN 'AY' ELSE IF J14.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'AC' THEN 'AY' ELSE IF J14.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'AD' THEN 'FY' ELSE IF J14.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'AE' THEN 'FY' ELSE IF J14.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'AH' THEN 'FY' ELSE IF J14.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'AN' THEN 'AY' ELSE IF J14.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'AT' THEN 'AY' ELSE IF J14.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'AY' THEN 'AY' ELSE IF J14.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'CS' THEN 'AY' ELSE IF J14.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'NR' THEN 'AY' ELSE IF J14.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'PH' THEN 'FY' ELSE IF J14.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'PL' THEN 'FY' ELSE IF J14.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'S4' THEN 'AY'; END TABLE FILE EMPLOYEEJOBS SUM 'EMPLOYEEJOBS.SEG01.SPRIDEN_ID' AS 'ID' 'EMPLOYEEJOBS.SEG01.SPRIDEN_LAST_NAME' AS 'LNAME' 'EMPLOYEEJOBS.SEG01.SPRIDEN_FIRST_NAME' AS 'FNAME' 'J14.PEBEMPL.AY_FY_Indicator' AS 'AY_FY' 'EMPLOYEEJOBS.SEG01.NBRJOBS_POSN' AS 'POSN' 'EMPLOYEEJOBS.SEG01.NBRJOBS_STATUS' AS 'STATUS' 'J13.NBRJOBS.NBRJOBS_ECLS_CODE' AS 'ECLS' 'J13.NBRJOBS.NBRJOBS_PICT_CODE' AS 'PICT' 'J13.NBRJOBS.NBRJOBS_ORGN_CODE_TS' AS 'TS_ORG' BY 'EMPLOYEEJOBS.SEG01.SPRIDEN_PIDM' AS 'PIDM' WHERE ( J12.NBRBJOB.NBRBJOB_CONTRACT_TYPE EQ 'P' ) AND ( J13.NBRJOBS.NBRJOBS_PICT_CODE EQ 'MN' ) AND ( NOT J13.NBRJOBS.NBRJOBS_ECLS_CODE IN ('FF','FH','FP') ); ON TABLE SET PAGE-NUM OFF ON TABLE NOTOTAL ON TABLE HOLD AS CURRENTMONTHJOBS FORMAT FOCUS INDEX 'EMPLOYEEJOBS.SEG01.SPRIDEN_PIDM' END TABLE FILE NBRJOBS SUM 'NBRJOBS.NBRJOBS.NBRJOBS_PIDM' 'MAX.NBRJOBS.NBRJOBS.NBRJOBS_EFFECTIVE_DATE' AS 'MAX,NBRJOBS.NBRJOBS.NBRJOBS_EFFECTIVE_DATE' HEADING "" FOOTING "" WHERE ( NBRJOBS.NBRJOBS.NBRJOBS_EFFECTIVE_DATE GE '&NBRJOBS_EFFECTIVE_DATE.Prior Month End Date.' ) AND ( J4.NBRBJOB.NBRBJOB_CONTRACT_TYPE EQ 'P' ); ON TABLE SET PAGE-NUM OFF ON TABLE NOTOTAL ON TABLE HOLD AS MAXJOB_PRIORMONTH FORMAT FOCUS INDEX 'NBRJOBS.NBRJOBS.NBRJOBS_PIDM' END JOIN SPRIDEN.SPRIDEN.SPRIDEN_PIDM IN SPRIDEN TO MULTIPLE MAXJOB_PRIORMONTH.SEG01.NBRJOBS_PIDM IN MAXJOB_PRIORMONTH TAG J1 AS J1 END JOIN J1.SEG01.NBRJOBS_PIDM AND J1.SEG01.MAX IN SPRIDEN TO MULTIPLE NBRJOBS.NBRJOBS.NBRJOBS_PIDM AND NBRJOBS.NBRJOBS.NBRJOBS_EFFECTIVE_DATE IN NBRJOBS TAG J2 AS J2 END TABLE FILE SPRIDEN PRINT 'SPRIDEN.SPRIDEN.SPRIDEN_PIDM' 'SPRIDEN.SPRIDEN.SPRIDEN_ID' 'SPRIDEN.SPRIDEN.SPRIDEN_LAST_NAME' 'SPRIDEN.SPRIDEN.SPRIDEN_FIRST_NAME' 'J8.NBRJOBS.NBRJOBS_POSN' 'J8.NBRJOBS.NBRJOBS_SUFF' 'J8.NBRJOBS.NBRJOBS_STATUS' HEADING "" FOOTING "" WHERE SPRIDEN.SPRIDEN.SPRIDEN_CHANGE_IND EQ MISSING; ON TABLE SET PAGE-NUM OFF ON TABLE NOTOTAL ON TABLE HOLD AS EMPLOYEEJOBS_PRIORMONTH FORMAT FOCUS INDEX 'SPRIDEN.SPRIDEN.SPRIDEN_PIDM' END JOIN EMPLOYEEJOBS_PRIORMONTH.SEG01.SPRIDEN_PIDM AND EMPLOYEEJOBS_PRIORMONTH.SEG01.NBRJOBS_POSN IN EMPLOYEEJOBS_PRIORMONTH TO MULTIPLE NBRBJOB.NBRBJOB.NBRBJOB_PIDM AND NBRBJOB.NBRBJOB.NBRBJOB_POSN IN NBRBJOB TAG J3 AS J3 END JOIN J3.NBRBJOB.NBRBJOB_PIDM AND J3.NBRBJOB.NBRBJOB_POSN IN EMPLOYEEJOBS_PRIORMONTH TO MULTIPLE NBRJOBS.NBRJOBS.NBRJOBS_PIDM AND NBRJOBS.NBRJOBS.NBRJOBS_POSN IN NBRJOBS TAG J5 AS J5 END JOIN EMPLOYEEJOBS_PRIORMONTH.SEG01.SPRIDEN_PIDM IN EMPLOYEEJOBS_PRIORMONTH TO MULTIPLE PEBEMPL.PEBEMPL.PEBEMPL_PIDM IN PEBEMPL TAG J7 AS J7 END DEFINE FILE EMPLOYEEJOBS_PRIORMONTH FY_AY_Indicator/A3= IF J7.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'AA' THEN 'AY' ELSE IF J7.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'AA' THEN 'AY' ELSE IF J7.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'AB' THEN 'AY' ELSE IF J7.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'AC' THEN 'AY' ELSE IF J7.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'AD' THEN 'FY' ELSE IF J7.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'AE' THEN 'FY' ELSE IF J7.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'AH' THEN 'FY' ELSE IF J7.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'AN' THEN 'AY' ELSE IF J7.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'AT' THEN 'AY' ELSE IF J7.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'AY' THEN 'AY' ELSE IF J7.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'CS' THEN 'AY' ELSE IF J7.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'NR' THEN 'AY' ELSE IF J7.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'PH' THEN 'FY' ELSE IF J7.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'PL' THEN 'FY' ELSE IF J7.PEBEMPL.PEBEMPL_LCAT_CODE EQ 'S4' THEN 'AY'; END TABLE FILE EMPLOYEEJOBS_PRIORMONTH SUM 'EMPLOYEEJOBS_PRIORMONTH.SEG01.SPRIDEN_ID' AS 'ID' 'EMPLOYEEJOBS_PRIORMONTH.SEG01.SPRIDEN_LAST_NAME' AS 'LNAME' 'EMPLOYEEJOBS_PRIORMONTH.SEG01.SPRIDEN_FIRST_NAME' AS 'FNAME' 'J5.NBRJOBS.NBRJOBS_ORGN_CODE_TS' AS 'TS_ORG' 'EMPLOYEEJOBS_PRIORMONTH.SEG01.NBRJOBS_POSN' AS 'POSN' 'EMPLOYEEJOBS_PRIORMONTH.SEG01.NBRJOBS_SUFF' AS 'SUFF' 'J5.NBRJOBS.NBRJOBS_EFFECTIVE_DATE' AS 'EFF_DT' 'J5.NBRJOBS.NBRJOBS_STATUS' AS 'STATUS' 'J7.PEBEMPL.FY_AY_Indicator' AS 'FY_AY' 'J7.PEBEMPL.PEBEMPL_EMPL_STATUS' AS 'EMPL_ST' 'J7.PEBEMPL.PEBEMPL_CURRENT_HIRE_DATE' AS 'CURR_HD' 'J7.PEBEMPL.PEBEMPL_TERM_DATE' AS 'TERM_DT' BY 'EMPLOYEEJOBS_PRIORMONTH.SEG01.SPRIDEN_PIDM' AS 'PIDM' WHERE ( J3.NBRBJOB.NBRBJOB_CONTRACT_TYPE EQ 'P' ) AND ( NOT J5.NBRJOBS.NBRJOBS_ECLS_CODE IN ('FF','FH','FP') ) AND ( J5.NBRJOBS.NBRJOBS_PICT_CODE EQ 'MN' ); ON TABLE SET PAGE-NUM OFF ON TABLE NOTOTAL ON TABLE HOLD AS PRIORMONTHJOBS FORMAT FOCUS INDEX 'EMPLOYEEJOBS_PRIORMONTH.SEG01.SPRIDEN_PIDM' ENDThis message has been edited. Last edited by: Joan Diaz,
WebFOCUS 7.6.9 Windows all output (Excel, HTML, PDF)
Changed HOLD file name, sorry. The hold file is PRIORMONTHJOBS. There is no MATCH command because I am trying to add it (through the GUI) and am unable to add the MATCH.
WebFOCUS 7.6.9 Windows all output (Excel, HTML, PDF)
The problem is that all the steps needed to make the HOLD you want to use in your MATCH take to long. It seems WF has a certain time-out. Result is that the HOLD is not available. Hence the error "unable to parse master file".
You can increase the "Connection Timeout" in the Environment Properties, but the only helps a little bit.
Why WF actually starts to really query all steps to determine what the HOLD looks like, I DON'T KNOW. ( we've told this to our IBI-contact, but we get no answer. )
Best solution ( for now ) is to add SET XRETRIEVE = OFF
In the beginning.
This will allow you to make all reports, matches etc. You just have to switch it "ON" again to test.
I hope someone from IBI could elaborate on this. This is, currently, our biggest issue with WF.
They tell us everything should work fine with the GUI. But things like this force us to do it in code.
_____________________ WF: 8.0.0.9 > going 8.2.0.5
Posts: 668 | Location: Veghel, The Netherlands | Registered: February 16, 2010
I was going to do a post about the exact same thing today as I was having the same problem yesterday. From what I can tell it seems to be a Report Painter thing. When I went in to the text and added it that way it worked fine. The funny thing is that when I try to go in to that code in Report Painter I still get the Parsing error. Also both my hold files names are only 8 characters long.
WebFOCUS 7.7.03 Windows all output (Excel, HTML, PDF)
Thank you for the responses. I've changed the HOLD file names to be 8 char or less. I tried to set XRETRIEVAL=OFF but received a different error regarding the system configuration. I was able to add the MATCH in text and it worked (using only one match field, when I added an additional field I receive an error, but think there is an issue with my syntax that I will have to work through). I'll work through the text editor to insert the MATCH.
WebFOCUS 7.6.9 Windows all output (Excel, HTML, PDF)