|
Go
![]() |
New
![]() |
Search
![]() |
Notify
![]() |
Tools
![]() |
Reply
![]() |
|
|
Member |
I am trying to convert a program that works fine in MRE to be run in ReportCaster. I have started to debug the program and it is a little tedious to say the least. Any help on the following error I have encountered?
TABLE FILE FCT_IndexWeek PRINT COMPUTE INDXVAL/D10.1 = INDEXVALUE * 100; WHERE (YEAR EQ 2007) AND (WEEKNUMBER EQ 45); ON TABLE SAVE AS INDXSAV END -RUN UNRECOGNIZED COMMAND ALPHANUMERIC RECORD NAMED INDXSAV FIELDNAME ALIAS FORMAT LENGTH INDEXVALUE IndexValue P10.5 10 INDXVAL D10.1 10 TOTAL 20 -READ INDXSAV &X.A10 &SEAFAC.A10 -RUN Task error: UNRECOGNIZED COMMAND No report to distribute. Prod -WebFOCUS 7.1.4 Devel -WebFOCUS 7.6 Platform -SqlServer2005 |
||
|
|
Expert |
OK, so you're getting an UNRECOGNISED COMAAND error and you've shown us the output. Unfortunately the output doesn't reflect what the actual code is so place -SET &ECHO = ON; at the top of your code and then post the part of the output that gives the error.
Within MRE there are often pieces of code that are included particularly for MRE (depending upon how the code was produced - editor, report painter etc.) so the preceding code might have a reflection upon it running in RC. Also, rather than wait for it to run from RC just place it in an app folder and run it from there before your final test from RC. T Old FOCUS coders never die, they just become functionally stable. (Tony A
|
|||||
|
|
Master |
The fact that you get both the error message and the notification of the hold file being written, strengthens the previous comment, namely that there must be something BEFORE the code shown taht results in the error message.
The code you put in here is apparently correct, since it results in a saved file. GamP
|
|||||
|
|
Member |
Thanks for the replies. Since it runs fine in MRE, Here is the complete output I get from RC.
ReportCaster Log Report Schedule ID: S122hcotjh01, Job Description: Weekly Summary Process: J12osjr83161 Schedule ID: S122hcotjh01 Start Time: 2007-11-13 08:40:48 End Time: 2007-11-13 08:40:59 Message Code Message Text BTP1010 Starting worker thread BTP1020 Starting task: snapshot task BTP1020 Task type: EDA RPC BTP1020 Procedure name: resbiz_ready/snap_pdf.fex BTP1020 Connecting to server EDASERVE with execution id DPDOM\rburch BTP1020 Executing focexec. BTP1020 -* THE FOLLOWING FIELDS WERE NOT INCLUDED. BTP1020 -*DONWEEKOFMONTH DONWEEKOFQUARTER BTP1020 -* DONDAYOFWEEK DONDAYOFMONTH DONDAYOFQUARTER BTP1020 -* CALMONTH BTP1020 -* THIS PROGRAM RETURNS THE LAST COMPLETE ENTITY BTP1020 -*&DONVQTRC CURRENT QUARTER BTP1020 -*&DONVMTHC CURRENT MONTH BTP1020 -*&DONVWEEKC CURRENT WEEK BTP1020 -*&DONVFISCMTHC CURRENT FISCAL MONTH BTP1020 -*&DONVFISCQTRC CURRENT FISCAL QTR BTP1020 -*&DONVFISCWKC CURRENT FISCAL WK BTP1020 -*&DONDAYNAME LITERAL NAME OF TODAY BTP1020 -* BTP1020 -* THE GIVE YOU THE WEEK YOU ARE IN BTP1020 -* THE FOLLOWING FIELDS ARE FOR MONTH TO DATE , WEEK TO DATE ,AND QUARTER TO DATE CALCULATIONS BTP1020 -*&DONVQTR CURRENT QUARTER BTP1020 -*&DONVMTH CURRENT MONTH BTP1020 -*&DONVWEEK CURRENT WEEK BTP1020 -*&DONVFISCMTH CURRENT FISCAL MONTH BTP1020 -*&DONVFISCQTR CURRENT FISCAL QTR BTP1020 -*&DONVFISCWK CURRENT FISCAL WK BTP1020 TABLE FILE FCL_DONCALENDAR BTP1020 PRINT BTP1020 DONYEAR DONQUARTER DONMONTH DONMONTHOFQUARTER BTP1020 DONWEEK DONDAY FISCALWEEK FISCALMONTH FISCALQTR DATEYMD DAYNAME BTP1020 WHERE ( DATEYMD EQ 20071112 ) ; BTP1020 -*ON TABLE SET HOLDLIST PRINTONLY BTP1020 ON TABLE SAVE AS HOLDWEEKCD FORMAT ALPHA BTP1020 END BTP1020 -RUN BTP1020 -READ HOLDWEEKCD &GETYEAR.A6. &GETQTR.A6. &GETMONTH.A6. &GETMTHQTR.A6. &GETWEEK.A6. &GETDAY.A6. &GETFISCALWK.A7. &GETFISCALMTH.A11. &GETFISCALQTR BTP1020 -SET &DONVDAY = 315; BTP1020 -SET &DONVYMD = EDIT(20071112, 99999999 ); BTP1020 -SET &DONVDAYNAME = EDIT(000003Mon , $$$$$$999$$$ ); BTP1020 -SET &DONVYEAR = EDIT( 2007, $$9999 ); BTP1020 -SET &DONVYEARC =2007 -1; BTP1020 -SET &DONVQTR = EDIT( 4, $$$$99 ); BTP1020 -SET &DONVQTRC = IF 4 = 1 THEN 4 ELSE 4 -1; BTP1020 -SET &DONVMTH = EDIT( 11, $$$$99 ); BTP1020 -SET &DONVMTHC = IF 11 = 1 THEN 12 ELSE 11 -1; BTP1020 -SET &DONVAR3 = EDIT( 2, $$$$99 ); BTP1020 -SET &DONVFISCWK = EDIT(2007w45, 9999999 ); BTP1020 -SET &DONVFISCWK7A = EDIT(2007w45, 9999$$$ ); BTP1020 -SET &DONVFISCWK7B = EDIT(2007w45, $$$$9$$ ); BTP1020 -SET &DONVFISCMTH = EDIT(2007m11:Nov, 99999999999 ); BTP1020 -SET &DONVFISCMTH7A = EDIT(2007m11:Nov, 99999 ); BTP1020 -SET &DONVFISCMTH7B= EDIT(2007m11:Nov, $$$$$99 ); BTP1020 -SET &DONVFISCMTH7D= EDIT(2007m11:Nov, $$$$$$$9999 ); BTP1020 -SET &DONVFISCMTH7B= IF 11 = 1 THEN 12 ELSE 11 -1; BTP1020 -SET &DONVFISCMTHC= IF 10 LT 10 THEN 2007m | 0 | 10 |:Nov ELSE 2007m | 10 |:Nov; BTP1020 -SET &DONVFISCQTR= EDIT(2007q4 , 9999999 ); BTP1020 -SET &DONVFISCQTR7A = EDIT(2007q4 , 99999 ); BTP1020 -SET &DONVFISCQTR7B= EDIT(2007q4 , $$$$$9 ); BTP1020 -SET &DONVFISCQTR7B= IF 4 = 1 THEN 4 ELSE 4 -1; BTP1020 -SET &DONVFISCQTRC= 2007q | 3; BTP1020 -SET &DONVWEEK = EDIT( 45, $$$$99 ) ; BTP1020 -SET &PRIORYEAR = IF 45 = 1 THEN Y ELSE N ; BTP1020 -IF N = N THEN GOTO CURRENT; BTP1020 -CURRENT BTP1020 -SET &USEYEAR = 2007; BTP1020 -SET &DONVFISCWK7A= 2007 ; BTP1020 -SET &DONVWEEKC = 45 -1; BTP1020 -SET &DONVFISCWK7C= EDIT(2007w45, $$$$$99 ); BTP1020 -SET &DONVFISCWK7C= 45 -1; BTP1020 -SET &DONVFISCWKC= IF (44 LT 10) THEN 2007 | w | 0 | 44 ELSE BTP1020 - 2007 | w |44; BTP1020 -ONEC BTP1020 -* ..................................................................................................... BTP1020 -SET &selyear = 2007; BTP1020 -SET &prvyear = 2007 - 1; BTP1020 -* SET &selmth = &DONVMTH; BTP1020 -SET &selmth = 11; BTP1020 -* DONVMTH BTP1020 -SET &selweek = 45; BTP1020 -* SET &selweek = &DONVWEEK -1 ; BTP1020 -* SET &selweek = &DONVWEEK -1; BTP1020 -* DONVWEEK BTP1020 -SET &pyweek = 45 + 1; BTP1020 -* SET &pyweek = &DONVWEEK; BTP1020 -* goto endreport BTP1020 -* Changes in 2008 (no week 53 issues) BTP1020 -* 01/31/2007 added -1 to donvweek above BTP1020 -* 04/03/2007 changed donvmth to donvmthc BTP1020 -* FOR RERUN PURPOSES USE HARDCODED VALUES IF TUESDAY IS PAST BTP1020 -* Last Updated on Wed Aug 8 Run BTP1020 -*SET &selyear = 2007; BTP1020 -*SET &prvyear = 2006; BTP1020 -*SET &selmth = 8; BTP1020 -*SET &selweek = 31; BTP1020 -*SET &pyweek = 32; BTP1020 -* Use &DONVWEEK After testing complete BTP1020 -* 3 9 10 BTP1020 SET PANEL = 400 BTP1020 SET WIDTH = 400 BTP1020 SET MESSAGE = ON BTP1020 -RUN BTP1020 SQL SQLMSS PREPARE TOTSTOR FOR BTP1020 SELECT OWNER, MARKETNAME, STORENUMBER,COMPFLAG FROM dpdw.dbo.SMX_CurrentStoreView T3 BTP1020 END BTP1020 SQL SQLMSS BTP1020 COMMIT BTP1020 END BTP1020 -* SKIP XXXXXXXX BTP1020 -* GOTO PBYPASS BTP1020 -*------------------------------------------------------------------------------------------------------ BTP1020 -*------------------------------------------------------------------------------------------------------ BTP1020 SQL SQLMSS PREPARE NETOUT3 FOR BTP1020 -* CURRENT YEAR BTP1020 -* ============ BTP1020 SELECT BTP1020 CASE WHEN (T1.WEEKNUMBER <= 45) BTP1020 AND (T1.SALESYEAR IN(2007)) BTP1020 THEN T1.NETSALES BTP1020 ELSE 0 END AS NETSALES BTP1020 ,1 AS STORECOUNT BTP1020 ,T1.WEEKNUMBER BTP1020 ,T1.SALESYEAR BTP1020 ,T1.STORENUMBER BTP1020 ,T1.TOTALTRANSACTIONS BTP1020 ,T1.GROSSSALES BTP1020 ,T3.MARKETNAME BTP1020 ,T3.OWNER BTP1020 ,T4.NETSALES AS BGTNETSALES BTP1020 ,SM.TOTALTRP BTP1020 ,T1.SOURCE BTP1020 FROM dpdw.dbo.TRX_WeeklyTotals T1 BTP1020 -*------------------------------------------------------------------------------------------------------ BTP1020 LEFT OUTER JOIN dpdw.dbo.SMX_StoreRecordSales T2 BTP1020 ON (T1.WEEKNUMBER = T2.SALESWEEK) BTP1020 AND (T1.SALESYEAR = T2.SALESYEAR) BTP1020 AND (T1.STORENUMBER = T2.STORENUMBER) BTP1020 INNER JOIN dpdw.dbo.SMX_CurrentStoreView T3 BTP1020 ON (T1.STORENUMBER = T3.STORENUMBER) BTP1020 LEFT OUTER JOIN dpdw.dbo.BGT_WeeklyIndex T4 BTP1020 ON (T1.STORENUMBER = T4.STORENUMBER) BTP1020 AND (T1.WEEKNUMBER = T4.WEEKNUMBER) BTP1020 AND (T1.SALESYEAR = T4.FISCALYEAR) BTP1020 INNER JOIN (SELECT M1.FISCALYEAR AS SALESYEAR, M1.WEEKNUMBER , M1.TOTALTRP BTP1020 , S3.OWNER, S3.MARKETNAME BTP1020 FROM dpdw.dbo.mcl_marketingoverview M1 BTP1020 INNER JOIN dpdw.dbo.smx_storegroup S2 BTP1020 ON (S2.STOREGROUPID = M1.STOREGROUPID) BTP1020 INNER JOIN dpdw.dbo.smx_currentstoreview S3 BTP1020 ON (S3.MARKETCODE = S2.CODE) BTP1020 INNER JOIN dpdw.dbo.smx_storecomphistory S4 BTP1020 ON (S4.SALESYEAR = M1.FISCALYEAR) BTP1020 AND (S4.WEEKNUMBER = M1.WEEKNUMBER) BTP1020 AND (S3.STORENUMBER = S4.STORENUMBER) BTP1020 -* BTP1020 WHERE M1.FISCALYEAR IN (2007) BTP1020 AND M1.WEEKNUMBER BETWEEN 1 AND 45 BTP1020 AND S2.CODE LIKE( M% ) BTP1020 AND S4.COMPFLAG <> 0 BTP1020 GROUP BY S3.OWNER, S3.MARKETNAME, M1.FISCALYEAR, M1.WEEKNUMBER, M1.TOTALTRP BTP1020 ) SM BTP1020 ON (SM.OWNER = T3.OWNER) BTP1020 AND (SM.MARKETNAME = T3.MARKETNAME) BTP1020 AND (SM.SALESYEAR = T1.SALESYEAR) BTP1020 AND (SM.WEEKNUMBER = T1.WEEKNUMBER) BTP1020 -*------------------------------------------------------------------------------------------------------ BTP1020 WHERE T1.SALESYEAR IN (2007) BTP1020 AND T1.WEEKNUMBER BETWEEN 1 AND 45 BTP1020 AND T3.COMPFLAG <> 0 BTP1020 ORDER BY T3.OWNER, T3.MARKETNAME BTP1020 -*------------------------------------------------------------------------------------------------------ BTP1020 END BTP1020 SQL SQLMSS BTP1020 COMMIT BTP1020 END BTP1020 -RUN BTP1020 -GOTO PBYPASS; BTP1020 -PBYPASS BTP1020 -* INCLUDE PREVIOUS YEAR DATA * BTP1020 SQL SQLMSS PREPARE NETOUT2 FOR BTP1020 -* PREVIOUS YEAR BTP1020 -* ============= BTP1020 -* Change back to &selweek for FY 2008 BTP1020 SELECT BTP1020 CASE WHEN (T1.WEEKNUMBER <= 46) BTP1020 AND (T1.SALESYEAR IN(2006)) BTP1020 THEN T1.NETSALES BTP1020 ELSE 0 END AS NETSALES BTP1020 ,1 AS STORECOUNT BTP1020 ,T1.WEEKNUMBER BTP1020 ,T1.SALESYEAR BTP1020 ,T1.STORENUMBER BTP1020 ,T1.TOTALTRANSACTIONS BTP1020 ,T1.GROSSSALES BTP1020 ,T3.MARKETNAME BTP1020 ,T3.OWNER BTP1020 ,T4.NETSALES AS BGTNETSALES BTP1020 ,SM.TOTALTRP BTP1020 ,T1.SOURCE BTP1020 FROM dpdw.dbo.TRX_WeeklyTotals T1 BTP1020 -*------------------------------------------------------------------------------------------------------ BTP1020 LEFT OUTER JOIN dpdw.dbo.SMX_StoreRecordSales T2 BTP1020 ON (T1.WEEKNUMBER = T2.SALESWEEK) BTP1020 AND (T1.SALESYEAR = T2.SALESYEAR) BTP1020 AND (T1.STORENUMBER = T2.STORENUMBER) BTP1020 INNER JOIN dpdw.dbo.SMX_CurrentStoreView T3 BTP1020 ON (T1.STORENUMBER = T3.STORENUMBER) BTP1020 LEFT OUTER JOIN dpdw.dbo.BGT_WeeklyIndex T4 BTP1020 ON (T1.STORENUMBER = T4.STORENUMBER) BTP1020 AND (T1.WEEKNUMBER = T4.WEEKNUMBER) BTP1020 AND (T1.SALESYEAR = T4.FISCALYEAR) BTP1020 INNER JOIN (SELECT M1.FISCALYEAR AS SALESYEAR, M1.WEEKNUMBER , M1.TOTALTRP BTP1020 , S3.OWNER, S3.MARKETNAME BTP1020 FROM dpdw.dbo.mcl_marketingoverview M1 BTP1020 INNER JOIN dpdw.dbo.smx_storegroup S2 BTP1020 ON (S2.STOREGROUPID = M1.STOREGROUPID) BTP1020 INNER JOIN dpdw.dbo.smx_currentstoreview S3 BTP1020 ON (S3.MARKETCODE = S2.CODE) BTP1020 INNER JOIN dpdw.dbo.smx_storecomphistory S4 BTP1020 ON (S4.SALESYEAR = M1.FISCALYEAR) BTP1020 AND (S4.WEEKNUMBER = M1.WEEKNUMBER) BTP1020 AND (S3.STORENUMBER = S4.STORENUMBER) BTP1020 -* BTP1020 WHERE M1.FISCALYEAR IN (2006) BTP1020 -* Change back to 1 and &selweek for FY 2008 BTP1020 AND M1.WEEKNUMBER BETWEEN 1 AND 46 BTP1020 AND S2.CODE LIKE( M% ) BTP1020 AND S4.COMPFLAG <> 0 BTP1020 GROUP BY S3.OWNER, S3.MARKETNAME, M1.FISCALYEAR, M1.WEEKNUMBER, M1.TOTALTRP BTP1020 ) SM BTP1020 ON (SM.OWNER = T3.OWNER) BTP1020 AND (SM.MARKETNAME = T3.MARKETNAME) BTP1020 AND (SM.SALESYEAR = T1.SALESYEAR) BTP1020 AND (SM.WEEKNUMBER = T1.WEEKNUMBER) BTP1020 -*------------------------------------------------------------------------------------------------------ BTP1020 WHERE T1.SALESYEAR IN(2006) BTP1020 -* Change back to 1 and &selweek for FY 2008 BTP1020 AND T1.WEEKNUMBER BETWEEN 2 AND 46 BTP1020 AND T3.COMPFLAG <> 0 BTP1020 ORDER BY T3.OWNER, T3.MARKETNAME BTP1020 -*------------------------------------------------------------------------------------------------------ BTP1020 END BTP1020 SQL SQLMSS BTP1020 COMMIT BTP1020 END BTP1020 -RUN BTP1020 -GOTO PBYPASS1 BTP1020 -PBYPASS1 BTP1020 -* SKIP SECTION BTP1020 -* SUBTRACT ONE FROM WEEK (SINCE 53 WEEK YEAR) TO PUT IN LINE WITH YEAR 2007 MATCH BTP1020 -* THE ACTUAL WEEK ONE WILL REMAIN THE SAME TO CREATE A SECOND WEEK NUMBER ONE BTP1020 DEFINE FILE NETOUT2 BTP1020 WEEKNUMBER/I4 = IF WEEKNUMBER EQ 1 THEN WEEKNUMBER BTP1020 ELSE WEEKNUMBER -1; BTP1020 END BTP1020 TABLE FILE NETOUT2 BTP1020 PRINT BTP1020 NETSALES BTP1020 STORECOUNT BTP1020 WEEKNUMBER BTP1020 SALESYEAR BTP1020 STORENUMBER BTP1020 TOTALTRANSACTIONS BTP1020 GROSSSALES BTP1020 MARKETNAME BTP1020 OWNER BTP1020 BGTNETSALES BTP1020 TOTALTRP BTP1020 SOURCE BTP1020 ON TABLE HOLD AS NETOUT2B BTP1020 -* ON TABLE PCHOLD FORMAT EXL2K BTP1020 -* HTML BTP1020 -* TEST PREVIOUS YEARS HOLD DATA HERE BTP1020 END BTP1020 -GOTO SKIP111 BTP1020 -SKIP111 BTP1020 TABLE FILE NETOUT2B BTP1020 PRINT * BTP1020 BY STORENUMBER NOPRINT BTP1020 BY WEEKNUMBER NOPRINT BTP1020 -* ON TABLE PCHOLD FORMAT HTML BTP1020 ON TABLE HOLD AS NETOUT2A BTP1020 MORE BTP1020 FILE NETOUT3 BTP1020 END BTP1020 -RUN BTP1020 -GOTO PBYPASS2 BTP1020 -PBYPASS2 BTP1020 -*------------------------------- END OF SQL PASS THROUGH --------------------------------------------- BTP1020 -*------------------------------- WEB FOCUS REPORT LOGIC ----------------------------------------------- BTP1020 -SET &STARTWEEK = X ; BTP1020 -SET &ENDWEEK = X ; BTP1020 TABLE FILE FCL_DONCALENDAR BTP1020 SUM BTP1020 FST.DONWEEK LST.DONWEEK BTP1020 WHERE DONMONTH EQ 11 BTP1020 WHERE DONYEAR EQ 2007; BTP1020 ON TABLE SAVE AS HOLDPERFL BTP1020 END BTP1020 -RUN BTP1020 ALPHANUMERIC RECORD NAMED HOLDPERF BTP1020 0 FIELDNAME ALIAS FORMAT LENGTH BTP1020 DONWEEK DonWeek I6 6 BTP1020 DONWEEK DonWeek I6 6 BTP1020 TOTAL 12 BTP1020 -READ HOLDPERFL &STARTWEEK.A6. X1 &ENDWEEK.A6. BTP1020 -RUN BTP1020 -SET &A = 44; BTP1020 -SET &B= 47; BTP1020 DEFINE FILE SMX_STORECOMPHISTORY BTP1020 PCOMP/I11 = IF (SALESYEAR EQ 2006) BTP1020 THEN COMPFLAG ELSE 0 ; BTP1020 CCOMP/I11 = IF (SALESYEAR EQ 2007) BTP1020 THEN COMPFLAG ELSE 0 ; BTP1020 -* BTP1020 -* MUST KEEP THE WEEKNUMBER FROM THE COMP TABLE IN SYNC WITH THE WEEKNUMBER ON THE WEEKLY TOTALS TABLE BTP1020 -* BTP1020 -* Do not subtract week for FY2008 - can eliminate WEEKNUMBER in the Define Section BTP1020 WEEKNUMBER/I4 = IF (SALESYEAR EQ 2006) BTP1020 THEN WEEKNUMBER -1 BTP1020 ELSE WEEKNUMBER; BTP1020 -* BTP1020 -* YEAR6/A1 = IF ((SALESYEAR EQ &prvyear) AND ((WEEKNUMBER GE 1) AND (WEEKNUMBER LE &pyweek))) THEN Y ELSE N ; BTP1020 -* YEAR7/A1 = IF ((SALESYEAR EQ &selyear) AND (WEEKNUMBER LE &selweek)) THEN Y ELSE N ; BTP1020 END BTP1020 TABLE FILE SMX_STORECOMPHISTORY BTP1020 SUM SALESYEAR PCOMP CCOMP BTP1020 BY STORENUMBER BY WEEKNUMBER ACROSS SALESYEAR BTP1020 WHERE WEEKNUMBER GE 1 BTP1020 WHERE WEEKNUMBER LE 46 BTP1020 -* Change back to &selweek for FY 2008 BTP1020 WHERE SALESYEAR EQ 2007 OR 2006 BTP1020 -* WHERE YEAR6 EQ Y OR YEAR7 EQ Y BTP1020 -* WHERE ((WEEKNUMBER LE &selweek) AND (SALESYEAR EQ &selyear)) OR ((WEEKNUMBER BETWEEN 2 AND &pyweek) AND (SALESYEAR EQ &prvyear)) BTP1020 ON TABLE HOLD AS COMPSW BTP1020 -* ON TABLE PCHOLD FORMAT HTML BTP1020 END BTP1020 -RUN BTP1020 MATCH FILE COMPSW BTP1020 SUM E04 E08 BTP1020 BY STORENUMBER BY WEEKNUMBER NOPRINT BTP1020 -*BY OWNER BY MARKETNAME BY STORENUMBER BY SALESYEAR BY WEEKNUMBER BTP1020 ON TABLE HOLD AS NETOUT1 BTP1020 RUN BTP1020 -* FILE NETOUT2 BTP1020 FILE NETOUT2A BTP1020 PRINT * BTP1020 BY STORENUMBER BY WEEKNUMBER BY SALESYEAR NOPRINT BTP1020 ON MATCH HOLD AS NETOUT1 OLD-AND-NEW BTP1020 END BTP1020 -RUN BTP1020 -GOTO SKIP123 BTP1020 -SKIP123 BTP1020 DEFINE FILE NETOUT1 BTP1020 TSTCOMP/A1 = IF ((CCOMP EQ 0) AND (PCOMP EQ 0)) THEN Y ELSE N ; BTP1020 END BTP1020 TABLE FILE NETOUT1 BTP1020 PRINT * BTP1020 -* IF TSTCOMP EQ N BTP1020 WHERE (CCOMP NE 0) AND (PCOMP NE 0) BTP1020 -* ON TABLE HOLD AS NETOUT BTP1020 -* WHERE STORENUMBER EQ 344 OR 347 OR 350 BTP1020 -* SHOW HOLD FILE BEFORE PROCESSING OCCURS BTP1020 -* ON TABLE PCHOLD FORMAT EXL2K BTP1020 -* HTML BTP1020 ON TABLE HOLD AS NETOUT1 BTP1020 END BTP1020 -GOTO SKIPTODAY BTP1020 -SKIPTODAY BTP1020 DEFINE FILE NETOUT1 BTP1020 -* WSTORECNT /D12 = IF ((SALESYEAR EQ &selyear) BTP1020 -* AND (WEEKNUMBER EQ &selweek)) THEN STORECOUNT BTP1020 -* ELSE IF ((SALESYEAR EQ &prvyear) BTP1020 -* AND (WEEKNUMBER GE &STARTWEEK AND WEEKNUMBER LE &pyweek)) THEN STORECOUNT ELSE 0; BTP1020 -* BTP1020 WSTORECNT /D12 = IF (SALESYEAR EQ 2007) BTP1020 AND (WEEKNUMBER EQ 45) THEN STORECOUNT ELSE 0; BTP1020 MSTORECNT /D12 = IF (SALESYEAR EQ 2007) BTP1020 AND (WEEKNUMBER GE 44 AND WEEKNUMBER LE 45) THEN STORECOUNT ELSE 0; BTP1020 -* AND (SALESMONTH EQ &selmth ) THEN STORECOUNT ELSE 0; BTP1020 -* YSTORECNT /D12 = IF (SALESYEAR EQ &selyear) THEN STORECOUNT BTP1020 -* ELSE IF (SALESYEAR EQ &prvyear) THEN STORECOUNT ELSE 0; BTP1020 YSTORECNT /D12 = IF (SALESYEAR EQ 2007) THEN STORECOUNT ELSE 0; BTP1020 -*--------------------------------------------------------------------------------------------------- BTP1020 WCURSALES /D12 = IF (SALESYEAR EQ 2007) BTP1020 AND (WEEKNUMBER EQ 45) THEN NETSALES ELSE 0; BTP1020 WPRVSALES /D12 = IF (SALESYEAR EQ 2006) BTP1020 AND (WEEKNUMBER EQ 45) THEN NETSALES ELSE 0; BTP1020 MCURSALES /D12 = IF (SALESYEAR EQ 2007) BTP1020 AND (WEEKNUMBER GE 44 AND WEEKNUMBER LE 45) THEN NETSALES ELSE 0; BTP1020 MPRVSALES /D12 = IF (SALESYEAR EQ 2006) BTP1020 AND (WEEKNUMBER GE 44 AND WEEKNUMBER LE 45) THEN NETSALES ELSE 0; BTP1020 CURSALES /D12 = IF (SALESYEAR EQ 2007) THEN NETSALES ELSE 0; BTP1020 PRVSALES /D12 = IF (SALESYEAR EQ 2006) THEN NETSALES ELSE 0; BTP1020 -*--------------------------------------------------------------------------------------------------- BTP1020 TCURTRN /D12 = IF (SALESYEAR EQ 2007) THEN TOTALTRANSACTIONS ELSE 0; BTP1020 TPRVTRN /D12 = IF (SALESYEAR EQ 2006) THEN TOTALTRANSACTIONS ELSE 0; BTP1020 MTCURTRN /D12 = IF (SALESYEAR EQ 2007) BTP1020 AND (WEEKNUMBER GE 44 AND WEEKNUMBER LE 45) THEN TOTALTRANSACTIONS ELSE 0; BTP1020 MTPRVTRN /D12 = IF (SALESYEAR EQ 2006) BTP1020 AND (WEEKNUMBER GE 44 AND WEEKNUMBER LE 45) THEN TOTALTRANSACTIONS ELSE 0; BTP1020 WTCURTRN /D12 = IF (SALESYEAR EQ 2007) BTP1020 AND (WEEKNUMBER EQ 45) THEN TOTALTRANSACTIONS ELSE 0; BTP1020 WTPRVTRN /D12 = IF (SALESYEAR EQ 2006) BTP1020 AND (WEEKNUMBER EQ 45) THEN TOTALTRANSACTIONS ELSE 0; BTP1020 -*--------------------------------------------------------------------------------------------------- BTP1020 CGROSSALES /D12 = IF (SALESYEAR EQ 2007) THEN GROSSSALES ELSE 0; BTP1020 PGROSSALES /D12 = IF (SALESYEAR EQ 2006) THEN GROSSSALES ELSE 0; BTP1020 MCGROSSALES /D12 = IF (SALESYEAR EQ 2007) BTP1020 AND (WEEKNUMBER GE 44 AND WEEKNUMBER LE 45) THEN GROSSSALES ELSE 0; BTP1020 MPGROSSALES /D12 = IF (SALESYEAR EQ 2006) BTP1020 AND (WEEKNUMBER GE 44 AND WEEKNUMBER LE 45) THEN GROSSSALES ELSE 0; BTP1020 WCGROSSALES /D12 = IF (SALESYEAR EQ 2007) BTP1020 AND (WEEKNUMBER EQ 45) THEN GROSSSALES ELSE 0; BTP1020 WPGROSSALES /D12 = IF (SALESYEAR EQ 2006) BTP1020 AND (WEEKNUMBER EQ 45) THEN GROSSSALES ELSE 0; BTP1020 -*--------------------------------------------------------------------------------------------------- BTP1020 -* REMOVE THE FRANCHISE NUMBERS FROM COMP PERFORMANCE VS BUDGET SECTION OF REPORT (MUST BE COMPANY AS OWNER) BTP1020 BGTSALES /D12 = IF (SALESYEAR EQ 2007) BTP1020 AND (OWNER = Company ) BTP1020 THEN BGTNETSALES BTP1020 ELSE 0; BTP1020 MBGTSALES /D12 = IF (SALESYEAR EQ 2007) BTP1020 AND (WEEKNUMBER GE 44 AND WEEKNUMBER LE 45) BTP1020 AND (OWNER = Company ) BTP1020 THEN BGTNETSALES BTP1020 ELSE 0; BTP1020 WBGTSALES /D12 = IF (SALESYEAR EQ 2007) BTP1020 AND (WEEKNUMBER EQ 45) BTP1020 AND (OWNER = Company ) BTP1020 THEN BGTNETSALES BTP1020 ELSE 0; BTP1020 -* BTP1020 -* BGTSALES /D12 = IF (SALESYEAR EQ &selyear) THEN BGTNETSALES ELSE 0; BTP1020 -* MBGTSALES /D12 = IF (SALESYEAR EQ &selyear) BTP1020 -* AND (WEEKNUMBER GE &STARTWEEK AND WEEKNUMBER LE &selweek) THEN BGTNETSALES ELSE 0; BTP1020 -* WBGTSALES /D12 = IF (SALESYEAR EQ &selyear) BTP1020 -* AND (WEEKNUMBER EQ &selweek) THEN BGTNETSALES ELSE 0; BTP1020 -*--------------------------------------------------------------------------------------------------- BTP1020 CTRPWKSALES /D12 = IF (SALESYEAR EQ 2007) BTP1020 AND (WEEKNUMBER EQ 45) THEN TOTALTRP ELSE 0; BTP1020 PTRPWKSALES /D12 = IF (SALESYEAR EQ 2006) BTP1020 AND (WEEKNUMBER EQ 45) THEN TOTALTRP ELSE 0; BTP1020 -*--------------------------------------------------------------------------------------------------- BTP1020 OWN2 /A50V = All ; BTP1020 OWN3 /A50V = AHd ; BTP1020 OWNERA /A50V = IF (OWNER EQ Company ) THEN ACompany ELSE AFranchise ; BTP1020 MKTNAM /A50V = Amkt ; BTP1020 SALESMONTH /I2 = 11; BTP1020 END BTP1020 -*====================================================================================================== BTP1020 TABLE FILE NETOUT1 BTP1020 SUM BTP1020 CURSALES AS YCURSALES BTP1020 PRVSALES AS YPRVSALES BTP1020 BGTSALES AS YBGTSALES BTP1020 YSTORECNT BTP1020 TCURTRN AS YCURTRN BTP1020 TPRVTRN AS YPRVTRN BTP1020 CGROSSALES AS YCGROSSALES BTP1020 PGROSSALES AS YPGROSSALES BTP1020 -* YTD TRANACTONS BTP1020 COMPUTE YTRNAVG/D16 = (TCURTRN / YSTORECNT) ; BTP1020 COMPUTE YAVGNET/D7.2 = (CURSALES / TCURTRN ); BTP1020 COMPUTE YPAVGNET/D7.2 = (PRVSALES / TPRVTRN ); BTP1020 COMPUTE YTRNGWPRV/D7.1 = ((TPRVTRN - TCURTRN ) / TPRVTRN) * (-1 * 100); BTP1020 COMPUTE YAVGGWPRV/D7.1 = ((YAVGNET - YPAVGNET)/ YPAVGNET) * 100; BTP1020 -* YTD AUV BTP1020 COMPUTE YMKTAUV/D16 = (CURSALES / (YSTORECNT )) ; BTP1020 -* YTD COMP BTP1020 COMPUTE YCHGVSPRV/D7.1 = ((PRVSALES - CURSALES) / PRVSALES) * (-1 * 100); BTP1020 -* YTD COMP VS BUDGET BTP1020 -* COMPUTE YBGTCHVSGPRV/D7.1 = IF (BGTSALES EQ MISSING) OR (BGTSALES EQ 0) BTP1020 -* THEN 0 ELSE YCHGVSPRV - (((BGTSALES/PRVSALES)-1)*100); BTP1020 COMPUTE YBGTCHVSGPRV/D7.1S=0; BTP1020 -* BTP1020 BY OWN3 AS OWNER BTP1020 BY MKTNAM AS MARKETNAME BTP1020 -* BTP1020 -*------------------------------------------------------------------------------------------------------ BTP1020 -* MTD BTP1020 SUM BTP1020 MCURSALES BTP1020 MPRVSALES BTP1020 MBGTSALES BTP1020 MSTORECNT BTP1020 MTCURTRN BTP1020 MTPRVTRN BTP1020 MCGROSSALES BTP1020 MPGROSSALES BTP1020 -* YTD TRANACTONS BTP1020 COMPUTE MTRNAVG/D16 = (MTCURTRN / MSTORECNT) ; BTP1020 COMPUTE MAVGNET/D7.2 = (MCURSALES / MTCURTRN ) ; BTP1020 COMPUTE MPAVGNET/D7.2 = (MPRVSALES / MTPRVTRN ); BTP1020 COMPUTE MTRNGWPRV/D7.1 = ((MTPRVTRN - MTCURTRN ) / MTPRVTRN) * (-1 * 100); BTP1020 COMPUTE MAVGGWPRV/D7.1 = ((MAVGNET - MPAVGNET) / MPAVGNET) * 100; BTP1020 -* MTD AUV BTP1020 COMPUTE MMKTAUV/D16 = (MCURSALES / MSTORECNT) ; BTP1020 -* MTD COMP BTP1020 COMPUTE MCHGVSPRV/D7.1 = ((MPRVSALES - MCURSALES) / MPRVSALES) * (-1 * 100); BTP1020 -* MTD COMP VS BUDGET BTP1020 -* COMPUTE MBGTCHVSGPRV/D7.1 = IF (MBGTSALES EQ MISSING) OR (MBGTSALES EQ 0) BTP1020 -* THEN 0 ELSE MCHGVSPRV - (((MBGTSALES/MPRVSALES)-1)*100); BTP1020 COMPUTE MBGTCHVSGPRV/D7.1S =0; BTP1020 BY OWN3 AS OWNER BTP1020 BY MKTNAM AS MARKETNAME BTP1020 BY HIGHEST 1 SALESMONTH BTP1020 -*------------------------------------------------------------------------------------------------------ BTP1020 -* Weekly BTP1020 SUM BTP1020 WSTORECNT BTP1020 WCURSALES BTP1020 WPRVSALES BTP1020 WBGTSALES BTP1020 WTCURTRN BTP1020 WTPRVTRN BTP1020 WCGROSSALES BTP1020 WPGROSSALES BTP1020 -* YTD TRANACTONS BTP1020 COMPUTE WTRNAVG/D12 = (WTCURTRN / WSTORECNT) ; BTP1020 COMPUTE WAVGNET/D7.2 = (WCURSALES / WTCURTRN ); BTP1020 COMPUTE WPAVGNET/D7.2 = (WPRVSALES / WTPRVTRN ); BTP1020 COMPUTE WTRNGWPRV/D7.1 = ((WTPRVTRN - WTCURTRN ) / WTPRVTRN) * (-1 * 100); BTP1020 COMPUTE WAVGGWPRV/D7.1 = ((WAVGNET - WPAVGNET) / WPAVGNET) * 100; BTP1020 -* Weekly AUV BTP1020 COMPUTE WMKTAUV/D16 = (WCURSALES / (WSTORECNT )) ; BTP1020 -* Weekly COMP BTP1020 COMPUTE WCHGVSPRV/D7.1 = ((WPRVSALES - WCURSALES) / WPRVSALES) * (-1 * 100); BTP1020 -* WEEKLY COMP VS BUDGET BTP1020 -* COMPUTE WBGTCHVSGPRV/D7.1 =IF (WBGTSALES EQ MISSING) OR (WBGTSALES EQ 0) BTP1020 -* THEN 0 ELSE WCHGVSPRV - (((WBGTSALES/WPRVSALES)-1)*100); BTP1020 COMPUTE WBGTCHVSGPRV/D7.1S =0; BTP1020 -* BTP1020 CTRPWKSALES NOPRINT BTP1020 PTRPWKSALES NOPRINT BTP1020 COMPUTE BTP1020 CURTRP /I6 = IF (OWNER EQ Company ) THEN MAX.CTRPWKSALES ELSE 0; BTP1020 COMPUTE BTP1020 PRVTRP /I6 = IF (OWNER EQ Company ) THEN MAX.PTRPWKSALES ELSE 0; BTP1020 COMPUTE BTP1020 SOURCE /I1 = MAX.SOURCE; BTP1020 BY OWN3 AS OWNER BTP1020 BY MKTNAM AS MARKETNAME BTP1020 BY HIGHEST 1 SALESMONTH BTP1020 BY HIGHEST 1 WEEKNUMBER BTP1020 ON TABLE SET ASNAMES ON BTP1020 ON TABLE HOLD AS HDRALL BTP1020 -* ON TABLE PCHOLD FORMAT HTML BTP1020 END BTP1020 -RUN BTP1020 -GOTO SKIPHDRALL BTP1020 -SKIPHDRALL BTP1020 -*====================================================================================================== BTP1020 TABLE FILE NETOUT1 BTP1020 SUM BTP1020 CURSALES AS YCURSALES BTP1020 PRVSALES AS YPRVSALES BTP1020 BGTSALES AS YBGTSALES BTP1020 YSTORECNT BTP1020 TCURTRN AS YCURTRN BTP1020 TPRVTRN AS YPRVTRN BTP1020 CGROSSALES AS YCGROSSALES BTP1020 PGROSSALES AS YPGROSSALES BTP1020 -* YTD TRANACTONS BTP1020 COMPUTE YTRNAVG/D16 = (TCURTRN / YSTORECNT) ; BTP1020 COMPUTE YAVGNET/D7.2 = (CURSALES / TCURTRN ); BTP1020 COMPUTE YPAVGNET/D7.2 = (PRVSALES / TPRVTRN ); BTP1020 COMPUTE YTRNGWPRV/D7.1 = ((TPRVTRN - TCURTRN ) / TPRVTRN) * (-1 * 100); BTP1020 COMPUTE YAVGGWPRV/D7.1 = ((YAVGNET - YPAVGNET)/ YPAVGNET) * 100; BTP1020 -* YTD AUV BTP1020 COMPUTE YMKTAUV/D16 = (CURSALES / YSTORECNT) ; BTP1020 -* YTD COMP BTP1020 COMPUTE YCHGVSPRV/D7.1 = ((PRVSALES - CURSALES) / PRVSALES) * (-1 * 100); BTP1020 -* YTD COMP VS BUDGET BTP1020 COMPUTE YBGTCHVSGPRV/D7.1 = IF (BGTSALES EQ MISSING) OR (BGTSALES EQ 0) BTP1020 THEN 0 ELSE (YCHGVSPRV - ( ( (BGTSALES/PRVSALES)-1) *100) ) ; BTP1020 BY OWNERA AS OWNER BTP1020 BY OWN2 AS MARKETNAME BTP1020 -*------------------------------------------------------------------------------------------------------ BTP1020 -* MTD BTP1020 SUM BTP1020 MCURSALES BTP1020 MPRVSALES BTP1020 MBGTSALES BTP1020 MSTORECNT BTP1020 STORECOUNT BTP1020 MTCURTRN BTP1020 MTPRVTRN BTP1020 MCGROSSALES BTP1020 MPGROSSALES BTP1020 -* YTD TRANACTONS BTP1020 COMPUTE MTRNAVG/D16 = (MTCURTRN / MSTORECNT) ; BTP1020 COMPUTE MAVGNET/D7.2 = (MCURSALES / MTCURTRN ) ; BTP1020 COMPUTE MPAVGNET/D7.2 = (MPRVSALES / MTPRVTRN ); BTP1020 COMPUTE MTRNGWPRV/D7.1 = ((MTPRVTRN - MTCURTRN ) / MTPRVTRN) * (-1 * 100); BTP1020 COMPUTE MAVGGWPRV/D7.1 = ((MAVGNET - MPAVGNET) / MPAVGNET) * 100; BTP1020 -* MTD AUV BTP1020 COMPUTE MMKTAUV/D16 = (MCURSALES / MSTORECNT) ; BTP1020 -* MTD COMP BTP1020 COMPUTE MCHGVSPRV/D7.1 = ((MPRVSALES - MCURSALES) / MPRVSALES) * (-1 * 100); BTP1020 -* MTD COMP VS BUDGET BTP1020 COMPUTE MBGTCHVSGPRV/D7.1 = IF (MBGTSALES EQ MISSING) OR (MBGTSALES EQ 0) BTP1020 THEN 0 ELSE (MCHGVSPRV - (((MBGTSALES/MPRVSALES)-1)*100)); BTP1020 BY OWNERA AS OWNER BTP1020 BY OWN2 AS MARKETNAME BTP1020 BY HIGHEST 1 SALESMONTH BTP1020 -*------------------------------------------------------------------------------------------------------ BTP1020 -* Weekly BTP1020 SUM BTP1020 WSTORECNT BTP1020 WCURSALES BTP1020 WPRVSALES BTP1020 WBGTSALES BTP1020 WTCURTRN BTP1020 WTPRVTRN BTP1020 WCGROSSALES BTP1020 WPGROSSALES BTP1020 -* YTD TRANACTONS BTP1020 COMPUTE WTRNAVG/D12 = (WTCURTRN / WSTORECNT) ; BTP1020 COMPUTE WAVGNET/D7.2 = (WCURSALES / WTCURTRN ); BTP1020 COMPUTE WPAVGNET/D7.2 = (WPRVSALES / WTPRVTRN ); BTP1020 COMPUTE WTRNGWPRV/D7.1 = ((WTPRVTRN - WTCURTRN ) / WTPRVTRN) * (-1 * 100); BTP1020 COMPUTE WAVGGWPRV/D7.1 = ((WAVGNET - WPAVGNET) / WPAVGNET) * 100; BTP1020 -* Weekly AUV BTP1020 COMPUTE WMKTAUV/D16 = (WCURSALES / (WSTORECNT )) ; BTP1020 -* Weekly COMP BTP1020 COMPUTE WCHGVSPRV/D7.1 = ((WPRVSALES - WCURSALES) / WPRVSALES) * (-1 * 100); BTP1020 -* WEEKLY COMP VS BUDGET BTP1020 COMPUTE WBGTCHVSGPRV/D7.1 = IF (WBGTSALES EQ MISSING) OR (WBGTSALES EQ 0) BTP1020 THEN 0 ELSE (WCHGVSPRV - (((WBGTSALES/WPRVSALES)-1)*100)); BTP1020 -* BTP1020 CTRPWKSALES NOPRINT BTP1020 PTRPWKSALES NOPRINT BTP1020 COMPUTE BTP1020 CURTRP /I6 = 0; BTP1020 COMPUTE BTP1020 PRVTRP /I6 = 0; BTP1020 COMPUTE BTP1020 SOURCE /I1 = 0; BTP1020 BY OWNERA AS OWNER BTP1020 BY OWN2 AS MARKETNAME BTP1020 BY HIGHEST 1 SALESMONTH BTP1020 BY HIGHEST 1 WEEKNUMBER BTP1020 ON TABLE SET ASNAMES ON BTP1020 ON TABLE HOLD AS RPTHDR BTP1020 END BTP1020 -RUN BTP1020 TABLE FILE NETOUT1 BTP1020 -* OVER All LEVEL BTP1020 SUM BTP1020 CURSALES AS SYCURSALES BTP1020 PRVSALES AS SYPRVSALES BTP1020 BGTSALES AS SYBGTSALES BTP1020 YSTORECNT AS SYSTORECNT BTP1020 TCURTRN AS SYCURTRN BTP1020 TPRVTRN AS SYPRVTRN BTP1020 CGROSSALES AS SYCGROSSALES BTP1020 PGROSSALES AS SYPGROSSALES BTP1020 -* YTD TRANACTONS BTP1020 COMPUTE SYTRNAVG/D16 = (TCURTRN / YSTORECNT) ; BTP1020 COMPUTE SYAVGNET/D7.2 = (CURSALES / TCURTRN ); BTP1020 COMPUTE SYPAVGNET/D7.2 = (PRVSALES / TPRVTRN ); BTP1020 COMPUTE SYTRNGWPRV/D7.1 = ((TPRVTRN - TCURTRN ) / TPRVTRN) * (-1 * 100); BTP1020 COMPUTE SYAVGGWPRV/D7.1 = ((SYAVGNET - SYPAVGNET)/ SYPAVGNET) * 100; BTP1020 -* YTD AUV BTP1020 COMPUTE SYMKTAUV/D16 = (CURSALES / YSTORECNT) ; BTP1020 -* YTD COMP BTP1020 COMPUTE SYCHGVSPRV/D7.1 = ((PRVSALES - CURSALES) / PRVSALES) * (-1 * 100) ; BTP1020 -* YTD COMP VS BUDGET BTP1020 COMPUTE SYGTCHVSGPRV/D7.1 = IF (BGTSALES EQ MISSING) OR (BGTSALES EQ 0) BTP1020 THEN 0 ELSE (SYCHGVSPRV - (((BGTSALES/PRVSALES)-1)*100)); BTP1020 -*====================================================================================================== BTP1020 SUM BTP1020 CURSALES AS CYCURSALES BTP1020 PRVSALES AS CYPRVSALES BTP1020 BGTSALES AS CYBGTSALES BTP1020 MCURSALES AS CYCURNETSALES BTP1020 MPRVSALES AS CYPRVNETSALES BTP1020 YSTORECNT AS CYSTORECNT BTP1020 TCURTRN AS CYCURTRN BTP1020 TPRVTRN AS CYPRVTRN BTP1020 CGROSSALES AS CYCGROSSALES BTP1020 PGROSSALES AS CYPGROSSALES BTP1020 -* YTD TRANACTONS BTP1020 COMPUTE CYTRNAVG/D16 = (TCURTRN / YSTORECNT) ; BTP1020 COMPUTE CYAVGNET/D7.2 = (CURSALES / TCURTRN ); BTP1020 COMPUTE CYPAVGNET/D7.2 = (PRVSALES / TPRVTRN ); BTP1020 COMPUTE CYTRNGWPRV/D7.1 = ((TPRVTRN - TCURTRN ) / TPRVTRN) * (-1 * 100); BTP1020 COMPUTE CYAVGGWPRV/D7.1 = ((CYAVGNET - CYPAVGNET)/ CYPAVGNET) * 100; BTP1020 -* YTD AUV BTP1020 COMPUTE CYMKTAUV/D16 = (CURSALES / YSTORECNT) ; BTP1020 -* YTD COMP BTP1020 COMPUTE CYCHGVSPRV/D7.1 = ((PRVSALES - CURSALES) / PRVSALES) * (-1 * 100); BTP1020 -* YTD COMP VS BUDGET BTP1020 COMPUTE CYBGTCHVSGPRV/D7.1 = IF (BGTSALES EQ MISSING) OR (BGTSALES EQ 0) BTP1020 THEN 0 ELSE (CYCHGVSPRV - (((BGTSALES/PRVSALES)-1)*100)); BTP1020 -* MTD COMP BTP1020 COMPUTE CY_CHGVSPRV/D7.1 = ((MPRVSALES - MCURSALES) / MPRVSALES) * (-1 * 100); BTP1020 BY OWNER BTP1020 -*====================================================================================================== BTP1020 SUM BTP1020 CURSALES AS YCURSALES BTP1020 PRVSALES AS YPRVSALES BTP1020 BGTSALES AS YBGTSALES BTP1020 YSTORECNT BTP1020 TCURTRN AS YCURTRN BTP1020 TPRVTRN AS YPRVTRN BTP1020 CGROSSALES AS YCGROSSALES BTP1020 PGROSSALES AS YPGROSSALES BTP1020 -* YTD TRANACTONS BTP1020 COMPUTE YTRNAVG/D16 = (TCURTRN / YSTORECNT) ; BTP1020 COMPUTE YAVGNET/D7.2 = (CURSALES / TCURTRN ); BTP1020 COMPUTE YPAVGNET/D7.2 = (PRVSALES / TPRVTRN ); BTP1020 COMPUTE YTRNGWPRV/D7.1 = ((TPRVTRN - TCURTRN ) / TPRVTRN) * (-1 * 100); BTP1020 COMPUTE YAVGGWPRV/D7.1 = ((YAVGNET - YPAVGNET)/ YPAVGNET) * 100; BTP1020 -* YTD AUV BTP1020 COMPUTE YMKTAUV/D16 = (CURSALES / YSTORECNT) ; BTP1020 -* YTD COMP BTP1020 COMPUTE YCHGVSPRV/D7.1 = ((PRVSALES - CURSALES) / PRVSALES) * (-1 * 100); BTP1020 -* YTD COMP VS BUDGET BTP1020 COMPUTE YBGTCHVSGPRV/D7.1 = IF (BGTSALES EQ MISSING) OR (BGTSALES EQ 0) BTP1020 THEN 0 ELSE (YCHGVSPRV - (((BGTSALES/PRVSALES)-1)*100)); BTP1020 BY OWNER BTP1020 BY MARKETNAME BTP1020 -*------------------------------------------------------------------------------------------------------ BTP1020 -* MTD BTP1020 SUM BTP1020 MCURSALES BTP1020 MPRVSALES BTP1020 MBGTSALES BTP1020 MSTORECNT BTP1020 STORECOUNT BTP1020 MTCURTRN BTP1020 MTPRVTRN BTP1020 MCGROSSALES BTP1020 MPGROSSALES BTP1020 -* YTD TRANACTONS BTP1020 COMPUTE MTRNAVG/D16 = (MTCURTRN / MSTORECNT) ; BTP1020 COMPUTE MAVGNET/D7.2 = (MCURSALES / MTCURTRN ) ; BTP1020 COMPUTE MPAVGNET/D7.2 = (MPRVSALES / MTPRVTRN ); BTP1020 COMPUTE MTRNGWPRV/D7.1 = ((MTPRVTRN - MTCURTRN ) / MTPRVTRN) * (-1 * 100); BTP1020 COMPUTE MAVGGWPRV/D7.1 = ((MAVGNET - MPAVGNET) / MPAVGNET) * 100; BTP1020 -* MTD AUV BTP1020 COMPUTE MMKTAUV/D16 = (MCURSALES / MSTORECNT) ; BTP1020 -* MTD COMP BTP1020 COMPUTE MCHGVSPRV/D7.1 = ((MPRVSALES - MCURSALES) / MPRVSALES) * (-1 * 100); BTP1020 -* MTD COMP VS BUDGET BTP1020 COMPUTE MBGTCHVSGPRV/D7.1 = IF (MBGTSALES EQ MISSING) OR (MBGTSALES EQ 0) BTP1020 THEN 0 ELSE (MCHGVSPRV - (((MBGTSALES/MPRVSALES)-1)*100)); BTP1020 BY OWNER BTP1020 BY MARKETNAME BTP1020 BY HIGHEST 1 SALESMONTH BTP1020 -*------------------------------------------------------------------------------------------------------ BTP1020 -* Weekly BTP1020 SUM BTP1020 WSTORECNT BTP1020 WCURSALES BTP1020 WPRVSALES BTP1020 WBGTSALES BTP1020 WTCURTRN BTP1020 WTPRVTRN BTP1020 WCGROSSALES BTP1020 WPGROSSALES BTP1020 WBGTSALES BTP1020 -* YTD TRANACTONS BTP1020 COMPUTE WTRNAVG/D12 = (WTCURTRN / WSTORECNT) ; BTP1020 COMPUTE WAVGNET/D7.2 = (WCURSALES / WTCURTRN ); BTP1020 COMPUTE WPAVGNET/D7.2 = (WPRVSALES / WTPRVTRN ); BTP1020 COMPUTE WTRNGWPRV/D7.1 = ((WTPRVTRN - WTCURTRN ) / WTPRVTRN) * (-1 * 100); BTP1020 COMPUTE WAVGGWPRV/D7.1 = ((WAVGNET - WPAVGNET) / WPAVGNET) * 100; BTP1020 -* Weekly AUV BTP1020 COMPUTE WMKTAUV/D16 = (WCURSALES / (WSTORECNT )) ; BTP1020 -* Weekly COMP BTP1020 COMPUTE WCHGVSPRV/D7.1 = ((WPRVSALES - WCURSALES) / WPRVSALES) * (-1 * 100); BTP1020 -* WEEKLY COMP VS BUDGET BTP1020 COMPUTE WBGTCHVSGPRV/D7.1 = IF (WBGTSALES EQ MISSING) OR (WBGTSALES EQ 0) BTP1020 THEN 0 ELSE (WCHGVSPRV - (((WBGTSALES/WPRVSALES)-1)*100)); BTP1020 -* BTP1020 MAX.CTRPWKSALES NOPRINT BTP1020 MAX.PTRPWKSALES NOPRINT BTP1020 COMPUTE BTP1020 CURTRP /I6 = MAX.CTRPWKSALES ; BTP1020 COMPUTE BTP1020 PRVTRP /I6 = MAX.PTRPWKSALES; BTP1020 COMPUTE BTP1020 SOURCE /I1 = MAX.SOURCE; BTP1020 BY OWNER BTP1020 BY MARKETNAME BTP1020 BY HIGHEST 1 SALESMONTH BTP1020 BY HIGHEST 1 WEEKNUMBER BTP1020 ON TABLE SET ASNAMES ON BTP1020 ON TABLE HOLD AS RPTOUT BTP1020 END BTP1020 -RUN BTP1020 TABLE FILE NETOUT1 BTP1020 -* OVER All LEVEL BTP1020 SUM BTP1020 CURSALES AS SYCURSALES BTP1020 PRVSALES AS SYPRVSALES BTP1020 BGTSALES AS SYBGTSALES BTP1020 YSTORECNT AS SYSTORECNT BTP1020 TCURTRN AS SYCURTRN BTP1020 TPRVTRN AS SYPRVTRN BTP1020 CGROSSALES AS SYCGROSSALES BTP1020 PGROSSALES AS SYPGROSSALES BTP1020 COMPUTE SYTRNAVG/D16 = (TCURTRN / YSTORECNT) ; BTP1020 COMPUTE SYAVGNET/D7.2 = (CURSALES / TCURTRN ); BTP1020 COMPUTE SYPAVGNET/D7.2 = (PRVSALES / TPRVTRN ); BTP1020 COMPUTE SYTRNGWPRV/D7.1 = ((TPRVTRN - TCURTRN ) / TPRVTRN) * (-1 * 100); BTP1020 COMPUTE SYAVGGWPRV/D7.1 = ((SYAVGNET - SYPAVGNET)/ SYPAVGNET) * 100; BTP1020 -* YTD AUV BTP1020 COMPUTE SYMKTAUV/D16 = (CURSALES / YSTORECNT) ; BTP1020 -* YTD COMP BTP1020 COMPUTE SYCHGVSPRV/D7.1 = ((PRVSALES - CURSALES) / PRVSALES) * (-1 * 100) ; BTP1020 -* YTD COMP VS BUDGET BTP1020 COMPUTE SYBGTCHVSGPRV/D7.1 = IF (BGTSALES EQ MISSING) OR (BGTSALES EQ 0) BTP1020 THEN 0 ELSE (SYCHGVSPRV - (((BGTSALES/PRVSALES)-1)*100)); BTP1020 -*====================================================================================================== BTP1020 SUM BTP1020 CURSALES AS CYCURSALES BTP1020 PRVSALES AS CYPRVSALES BTP1020 BGTSALES AS CYBGTSALES BTP1020 MCURSALES AS CYCURNETSALES BTP1020 MPRVSALES AS CYPRVNETSALES BTP1020 YSTORECNT AS CYSTORECNT BTP1020 TCURTRN AS CYCURTRN BTP1020 TPRVTRN AS CYPRVTRN BTP1020 CGROSSALES AS CYCGROSSALES BTP1020 PGROSSALES AS CYPGROSSALES BTP1020 -* YTD TRANACTONS BTP1020 COMPUTE CYTRNAVG/D16 = (TCURTRN / YSTORECNT) ; BTP1020 COMPUTE CYAVGNET/D7.2 = (CURSALES / TCURTRN ); BTP1020 COMPUTE CYPAVGNET/D7.2 = (PR Prod -WebFOCUS 7.1.4 Devel -WebFOCUS 7.6 Platform -SqlServer2005 |
|||
|
|
Member |
Sorry, Tried to put in too much output and wouldn't fit. Here is the tables logic right before the unrecognized command and also following the error.
BTP1020 -* GET TOTAL STORES BTP1020 TABLE FILE STORTOT1 BTP1020 SUM MKALLSTR MKSTRCOMP BTP1020 COMPUTE MARKETNAME/A50V = All ; BTP1020 BY OWNER BTP1020 ON TABLE SET ASNAMES ON BTP1020 ON TABLE HOLD AS STORTOTA BTP1020 -* ON TABLE PCHOLD FORMAT HTML BTP1020 END BTP1020 -RUN BTP1020 DEFINE FILE STORTOTA BTP1020 MARKETNAME = Amkt ; BTP1020 OWNER = AHd ; BTP1020 END BTP1020 TABLE FILE STORTOTA BTP1020 SUM MKALLSTR MKSTRCOMP BTP1020 BY MARKETNAME BY OWNER BTP1020 ON TABLE HOLD AS STORTOTB BTP1020 -* ON TABLE PCHOLD FORMAT HTML BTP1020 END BTP1020 DEFINE FILE STORTOTA BTP1020 OWNER = IF OWNER EQ Company THEN ACompany ELSE AFranchise ; BTP1020 END BTP1020 -*------------------------------------------------------------------------------------------------------ BTP1020 TABLE FILE STORTOTA BTP1020 SUM MKALLSTR MKSTRCOMP BTP1020 BY MARKETNAME BY OWNER BTP1020 -* ON TABLE PCHOLD FORMAT HTML BTP1020 ON TABLE HOLD AS STORTOT BTP1020 MORE BTP1020 FILE STORTOTB BTP1020 MORE BTP1020 FILE STORTOT1 BTP1020 END BTP1020 -RUN BTP1020 TABLE FILE SMX_CURRENTSTOREVIEW BTP1020 -* SUM BTP1020 SUM COMPFLAG BTP1020 AllSTR AS MKTALLSTR BTP1020 MKTSTRCOMP BTP1020 BY MARKETNAME BTP1020 BY OWN2 AS OWNER BTP1020 WHERE SALESYEAR EQ 2007 BTP1020 AND WEEKNUMBER EQ 45 BTP1020 ON TABLE SET ASNAMES ON BTP1020 -*ON TABLE PCHOLD FORMAT HTML BTP1020 ON TABLE HOLD AS STORAll BTP1020 END BTP1020 -RUN BTP1020 -*------------------------------------------------------------------------------------------------------ BTP1020 -*------------------------------------------------------------------------------------------------------ BTP1020 -*------------------------------------------------------------------------------------------------------ BTP1020 -FSKIP BTP1020 MATCH FILE STORTOT BTP1020 SUM BTP1020 MKALLSTR BTP1020 MKSTRCOMP BTP1020 BY MARKETNAME BTP1020 BY OWNER BTP1020 AFTER MATCH HOLD OLD-OR-NEW BTP1020 RUN BTP1020 FILE STORAll BTP1020 PRINT MKTALLSTR BTP1020 MKTSTRCOMP BTP1020 BY MARKETNAME BTP1020 BY OWNER BTP1020 AFTER MATCH HOLD OLD-OR-NEW BTP1020 RUN BTP1020 FILE RPTCOL BTP1020 PRINT * BTP1020 BY MARKETNAME BTP1020 BY OWNER BTP1020 AFTER MATCH HOLD AS STORLST OLD-OR-NEW BTP1020 END BTP1020 ========================================================================================= BTP1020 -* GET THE SEASONALITY FACTOR BTP1020 -SET &SELYEAR=2007; BTP1020 -SET &SELWEEK=45; BTP1020 TABLE FILE FCT_IndexWeek BTP1020 PRINT COMPUTE INDXVAL/D10.1 = INDEXVALUE * 100; BTP1020 WHERE (YEAR EQ 2007) AND (WEEKNUMBER EQ 45); BTP1020 ON TABLE SAVE AS INDXSAV BTP1020 END BTP1020 -RUN BTP1020 UNRECOGNIZED COMMAND BTP1020 ALPHANUMERIC RECORD NAMED INDXSAV BTP1020 0 FIELDNAME ALIAS FORMAT LENGTH BTP1020 INDEXVALUE IndexValue P10.5 10 BTP1020 INDXVAL D10.1 10 BTP1020 TOTAL 20 BTP1020 -READ INDXSAV &X.A10 &SEAFAC.A10 BTP1020 -RUN BTP1020 -*TABLE FILE FCT_IndexWeek BTP1020 -* PRINT COMPUTE INDXVAL/F6.1 = INDEXVALUE * 100; BTP1020 -* WHERE (YEAR EQ &selyear) AND (WEEKNUMBER EQ &selweek); BTP1020 -* ON TABLE SET HOLDLIST PRINTONLY BTP1020 -* ON TABLE SAVE AS INDXSAV BTP1020 -*END BTP1020 -*-RUN BTP1020 -* BTP1020 -*-READ INDXSAV &SEAFAC.A6. BTP1020 -*-RUN BTP1020 -* -SET &C = &SEAFAC; BTP1020 -* 11122007 BTP1020 -* -TYPE &SEAFAC BTP1020 -*====================================================================================================== BTP1020 -* GET THE Venues BTP1020 -* SET MESSAGE = ON BTP1020 DEFINE FILE SMX_VENUE BTP1020 CNTVEN/I6 WITH VENUETYPE = 1; BTP1020 VENNAM/A15 = IF (VENUETYPE EQ 2) THEN Venues ELSE BTP1020 IF (VENUETYPE EQ 1) THEN Take N Bake ELSE ; BTP1020 END BTP1020 TABLE FILE SMX_VENUE BTP1020 SUM BTP1020 CNTVEN AS TOTVEN BTP1020 SUM BTP1020 VENNAM BTP1020 CNTVEN BTP1020 BY VENUETYPE NOPRINT BTP1020 WHERE ACTIVE NE 0 BTP1020 ON TABLE SET HOLDLIST PRINTONLY BTP1020 ON TABLE SAVE AS VEN BTP1020 -* ON TABLE PCHOLD FORMAT HTML BTP1020 END BTP1020 -RUN BTP1020 ALPHANUMERIC RECORD NAMED VEN BTP1020 0 FIELDNAME ALIAS FORMAT LENGTH BTP1020 CNTVEN I6 6 BTP1020 VENNAM A15 15 BTP1020 CNTVEN I6 6 BTP1020 TOTAL 27 BTP1020 -SET &CNT = 0; BTP1020 -REPEAT LPVEN 2 TIMES BTP1020 -SET &CNT = 0 + 1; BTP1020 -READ VEN &TOTVEN1.I6. &VENNAM1.A15. &CNTVEN1.I6. BTP1020 -TYPE 41 Take N Bake 29 BTP1020 41 Take N Bake 29 BTP1020 -REPEAT LPVEN 2 TIMES BTP1020 -SET &CNT = 1 + 1; BTP1020 -READ VEN &TOTVEN2.I6. &VENNAM2.A15. &CNTVEN2.I6. BTP1020 -TYPE 41 Venues 12 BTP1020 41 Venues 12 BTP1020 -LPVEN BTP1020 -*====================================================================================================== BTP1020 -*====================================================================================================== BTP1020 -SET &QOT = ; BTP1020 DEFINE FILE STORLST BTP1020 WINDX/D6.1 = 99.4/10; BTP1020 HDRMTH/Mtr = 11; BTP1020 SELIT/I2 = IF (OWNER CONTAINS Company ) THEN 0 BTP1020 ELSE IF (OWNER CONTAINS Franchise ) THEN 1 BTP1020 ELSE 3; BTP1020 CNNC/I6 = 1; BTP1020 END BTP1020 TABLE FILE STORLST BTP1020 SUM BTP1020 CNT.SELIT NOPRINT BTP1020 COMPUTE CNTSEL/I4 = IF MARKETNAME EQ Amkt OR All THEN 4 BTP1020 ELSE CNT.SELIT ; BTP1020 BY MARKETNAME BTP1020 SUM * BTP1020 COMPUTE BTP1020 SELOW/A50V = EDIT(CNTSEL) | OWNER | EDIT(SELIT); BTP1020 COMPUTE BTP1020 MKTSRT/A104V = IF (CNTSEL EQ 2) BTP1020 THEN EDIT(CNTSEL) | EDIT(SELIT) | MARKETNAME BTP1020 ELSE EDIT(CNTSEL) | MARKETNAME | EDIT(SELIT) ; BTP1020 BY MARKETNAME BTP1020 BY SELIT BTP1020 WHERE TOTAL (CNTSEL EQ 4 OR 3) OR (CNTSEL EQ 2 AND SELIT NE 3) BTP1020 ON TABLE HOLD AS STORSRT BTP1020 -* ON TABLE PCHOLD FORMAT HTML BTP1020 END BTP1020 -SET &SELYEAR=2007; BTP1020 -SET &SELWEEK=45; BTP1020 -SET &PREVYEAR = 2006; BTP1020 -GOTO BYPASS34; BTP1020 -BYPASS34 BTP1020 -*EXIT BTP1020 -*====================================================================================================== BTP1020 -* GET THE SEASONALITY FACTOR BTP1020 TABLE FILE FCT_IndexWeek BTP1020 PRINT COMPUTE INDXVAL/D10.1 = INDEXVALUE * 100; BTP1020 WHERE (YEAR EQ 2007) AND (WEEKNUMBER EQ 45); BTP1020 ON TABLE SAVE AS INDXSAV BTP1020 END BTP1020 -RUN BTP1020 ALPHANUMERIC RECORD NAMED INDXSAV BTP1020 0 FIELDNAME ALIAS FORMAT LENGTH BTP1020 INDEXVALUE IndexValue P10.5 10 BTP1020 INDXVAL D10.1 10 BTP1020 TOTAL 20 BTP1020 -READ INDXSAV &X.A10 &SEAFAC.A10 BTP1020 -RUN Prod -WebFOCUS 7.1.4 Devel -WebFOCUS 7.6 Platform -SqlServer2005 |
|||
|
|
Expert |
One possible issue:
In your MATCH command MATCH FILE STORTOT ... you have too many AFTER MATCH statements - there are three files being matched, and you have three AFTER MATCH statements, you should have only two. And you should have a -RUN statement after every END statement, if only to execute the stacked commands and immediately get the error, if there is one. The "UNRECOGNIZED COMMAND" would most likely be displayed immediately after the MATCH command instead of later in the program, causing confusion. Francis Env 1: WebFOCUS 5.3.2 Servlet - MRE/BID/Self Service/ReportCaster - MS Windows Server 2003 - IIS/New Atlanta ServletExec - MS SQL Server 2000 - DataMigrator 5.3.4 Env 2: WebFOCUS 7.6.5 Servlet - MRE/BID/Self Service - MS Windows XP SP2 - Apache Tomcat/5.5.25 - MS SQL Server 2000 Env 3: WebFOCUS 5.3.3 CGI - Self Service - AIX 5.2 - IBM DB2 Output formats: HTML, Excel 2000 and PDF |
|||
|
|
Member |
Thanks for the information Francis. It's my first attempt at debugging somebody's code I inherited in RC. I guess we all encounter it sooner or later. I'll get back to you on the results.
Prod -WebFOCUS 7.1.4 Devel -WebFOCUS 7.6 Platform -SqlServer2005 |
|||
|
|
Member |
I will add this to the discussion. ReportCaster is very unforgiving on errors or warnings. We get the Unrecognized Command a lot. We use Textpad to edit fexs and I think sometimes it puts in a hidden control character or a bad carriage control. The programs run fine through our self-service app, but the minute you run through reportcaster it complains. Also, it's very had to isolate because where you get it in the output depends on -runs or -reads and such.
|
|||
|
|
Member |
Thanks for the information. Mine also run fine in the self-service app but had to add a few DEFINE's and other things to get it working in RC. Now the problem I see is the programs that have already been programmed and are candidates for RC will have to have extra time allowed before Production Ready. Maybe someone can explain why the programs are different in the two areas (Managed Reporting and Report Caster). I guess it obviously doesn't compile the same.
Prod -WebFOCUS 7.1.4 Devel -WebFOCUS 7.6 Platform -SqlServer2005 |
|||
|
|
Master |
Harris MRP you're right - one of the non dev studio editors text,word or note pad tends to stick two characters at the beginning of file under what circumstances I don't know but this is definitely a problem we encounter.
Server: WF 7.6.2 ( BID/Rcaster) Platform: W2003Server/IIS6/Tomcat/SQL Server repository Adapters: SQL Server 2000/Oracle 9.2 Desktop: Dev Studio 765/XP/Office 2003 Applications: IFS/Jobscope/Maximo |
|||
|
|
Master |
You also have a === that doesn't have a -* in front of it.
About the editor, using tabs used to cause problems with WebFocus, I haven't tested it in more recent versions I've just gotten into the habit of not using it. This message has been edited. Last edited by: PBrightwell, Pat WF 5.3.2 AIX, NT, AS/400, Focus AS/400, AIX, Oracle, JDE, DB2, Lotus Notes |
|||
|