(WORKAROUND)OVER not rendering in Document composer
I have the following code which i am attempting to leverage in document composer. However it only displays the first OVER and does not display the second or third components. Looking for ideas . I am committed to document composer however this particular piece I am willing to do whatever it takes to display this CLOB field. this is just what I was able to come up with the SQL person i was working with suggested. Separately this code works just dandy. Inside document composer not so nice.
Thanks
ENGINE SQLORA SET DEFAULT_CONNECTION BANPRD SQL SQLORA PREPARE SQLOUT FOR SELECT "ATVUSRC"."ATVUSRC_DESC", "AMRPUSR"."AMRPUSR_EFFECT_DATE", "AMRPUSR"."AMRPUSR_EFFECT_DATE", REGEXP_REPLACE(ASCIISTR(substr(amrpusr_value,1,3900)), '\\[[:xdigit:]]{4}', '') amrpusr_value, REGEXP_REPLACE(ASCIISTR(substr(amrpusr_value,3901,3900)), '\\[[:xdigit:]]{4}', '') amrpusr_value2, REGEXP_REPLACE(ASCIISTR(substr(amrpusr_value,7801,3900)), '\\[[:xdigit:]]{4}', '') amrpusr_value3 FROM "AMRPUSR", "ATVUSRC" WHERE ( "AMRPUSR"."AMRPUSR_USRC_CODE" = "ATVUSRC"."ATVUSRC_CODE" ) and ( ( "AMRPUSR"."AMRPUSR_PIDM" = &PIDM ) ) END SET NODATA = '' SET PRINTPLUS = ON TABLE FILE SQLOUT PRINT COMPUTE DEFDATE/MDYY = AMRPUSR_EFFECT_DATE; NOPRINT ATVUSRC_DESC NOPRINT AMRPUSR_VALUE AS '' OVER AMRPUSR_VALUE2 AS '' OVER AMRPUSR_VALUE3 AS '' BY HIGHEST AMRPUSR_EFFECT_DATE NOPRINT
ON AMRPUSR_EFFECT_DATE SUBHEAD " " "" " ON TABLE SUBHEAD "Research/Screening Data" " " ON TABLE SET PAGE-NUM NOLEAD ON TABLE NOTOTAL ON TABLE PCHOLD FORMAT PDF ON TABLE SET HTMLCSS ON ON TABLE SET STYLE * INCLUDE = IBFS:/EDA/PRDODSP/_EDAHOME/ETC/endeflt.sty, $ TYPE=DATA, BACKCOLOR='NONE', $ TYPE=TITLE, COLOR='BLACK', BACKCOLOR='NONE', STYLE=-UNDERLINE+BOLD, $ TYPE=TABHEADING, LINE=1, JUSTIFY=LEFT, $ TYPE=TABHEADING, LINE=1, OBJECT=TEXT, ITEM=1, SIZE=11, STYLE=ITALIC+UNDERLINE, $ TYPE=TABHEADING, LINE=2, JUSTIFY=LEFT, $ TYPE=TABHEADING, LINE=2, OBJECT=TEXT, ITEM=1, SIZE=11, STYLE=ITALIC+UNDERLINE, $ TYPE=SUBHEAD, BORDER-TOP=LIGHT, BORDER-BOTTOM=LIGHT, BORDER-TOP-COLOR=RGB(52 55 58), BORDER-BOTTOM-COLOR=RGB(52 55 58), $ TYPE=SUBHEAD, BY=1, LINE=1, OBJECT=TEXT, ITEM=1, BACKCOLOR=RGB(205 205 205), $ TYPE=REPORT, COLUMN=N4, WRAP=6.000000, $ TYPE=REPORT, COLUMN=N5, WRAP=6.000000, $ TYPE=REPORT, COLUMN=N6, WRAP=6.000000, $ ENDSTYLE ENDThis message has been edited. Last edited by: Geoff Fish,
I was unable to reproduce the problem on my system with this code. See if this works for you.
TABLE FILE CAR SUM CAR.BODY.DEALER_COST OVER CAR.BODY.RETAIL_COST OVER CAR.BODY.SALES BY LOWEST CAR.ORIGIN.COUNTRY BY LOWEST CAR.COMP.CAR BY LOWEST CAR.CARREC.MODEL ON TABLE SET PAGE-NUM NOLEAD ON TABLE SET ASNAMES ON ON TABLE NOTOTAL ON TABLE PCHOLD FORMAT PDF ON TABLE SET HTMLCSS ON ON TABLE SET STYLE * INCLUDE = IBFS:/EDA/EDASERVE/_EDAHOME/ETC/endeflt.sty, $ TYPE=REPORT, ARGRAPHENGINE=JSCHART, CALC-LOCATION=TOP, $ TYPE=REPORT, OBJECT=STATUS-AREA, JUSTIFY=LEFT, PAGE-LOCATION=BOTTOM, $ ENDSTYLE END This message has been edited. Last edited by: FP Mod Chuck,
Thank you for using Focal Point!
Chuck Wolff - Focal Point Moderator WebFOCUS 7x and 8x, Windows, Linux All output Formats
October 17, 2017, 08:52 AM
Geoff Fish
Chuck thanks for the response, I believe the issue is present due to the fact that data is cut and pasted into the form window When entered. the car file doesn't have the ASCII issues of the data base that I am working with nor the field size its TX50 but the data base field is well north of 30K alpha.
I tried both HTML and PDF the report works well by itself but when I incorporate into the document composer it loses the 2nd and 3rd fields
ENGINE SQLORA SET DEFAULT_CONNECTION BANPRD
SQL SQLORA PREPARE SQLOUT FOR
SELECT "ATVUSRC"."ATVUSRC_DESC",
"AMRPUSR"."AMRPUSR_EFFECT_DATE",
"AMRPUSR"."AMRPUSR_EFFECT_DATE",
REGEXP_REPLACE(ASCIISTR(substr(amrpusr_value,1,3900)), '\\[[:xdigit:]]{4}', '') amrpusr_value
FROM "AMRPUSR",
"ATVUSRC"
WHERE ( "AMRPUSR"."AMRPUSR_USRC_CODE" = "ATVUSRC"."ATVUSRC_CODE" ) and
( ( "AMRPUSR"."AMRPUSR_PIDM" = &PIDM ) )
UNION
SELECT "ATVUSRC"."ATVUSRC_DESC",
"AMRPUSR"."AMRPUSR_EFFECT_DATE",
"AMRPUSR"."AMRPUSR_EFFECT_DATE",
REGEXP_REPLACE(ASCIISTR(substr(amrpusr_value,3901,3900)), '\\[[:xdigit:]]{4}', '') amrpusr_value
FROM "AMRPUSR",
"ATVUSRC"
WHERE ( "AMRPUSR"."AMRPUSR_USRC_CODE" = "ATVUSRC"."ATVUSRC_CODE" ) and
( ( "AMRPUSR"."AMRPUSR_PIDM" = &PIDM ) )
UNION
SELECT "ATVUSRC"."ATVUSRC_DESC",
"AMRPUSR"."AMRPUSR_EFFECT_DATE",
"AMRPUSR"."AMRPUSR_EFFECT_DATE",
REGEXP_REPLACE(ASCIISTR(substr(amrpusr_value,7801,3900)), '\\[[:xdigit:]]{4}', '') amrpusr_value
FROM "AMRPUSR",
"ATVUSRC"
WHERE ( "AMRPUSR"."AMRPUSR_USRC_CODE" = "ATVUSRC"."ATVUSRC_CODE" ) and
( ( "AMRPUSR"."AMRPUSR_PIDM" = &PIDM ) )
END
SET NODATA = ''
SET PRINTPLUS = ON
TABLE FILE SQLOUT
PRINT
COMPUTE DEFDATE/MDYY = AMRPUSR_EFFECT_DATE; NOPRINT
ATVUSRC_DESC NOPRINT
AMRPUSR_VALUE AS ''
BY HIGHEST AMRPUSR_EFFECT_DATE NOPRINT
ON AMRPUSR_EFFECT_DATE SUBHEAD
" "
"" "
ON TABLE SUBHEAD
"Research/Screening Data"
" "
ON TABLE SET PAGE-NUM NOLEAD
ON TABLE NOTOTAL
ON TABLE PCHOLD FORMAT PDF
ON TABLE SET HTMLCSS ON
ON TABLE SET STYLE *
INCLUDE = IBFS:/EDA/PRDODSP/_EDAHOME/ETC/endeflt.sty,
$
ENDSTYLE
END
Originally posted by Geoff Fish: ill give it a try
This gave the same result
However I have new code I am working with that looks promising SEE BELOW
ENGINE SQLORA SET DEFAULT_CONNECTION BANPRD SQL SQLORA PREPARE SQLOUT FOR SELECT "ATVUSRC"."ATVUSRC_DESC", "AMRPUSR"."AMRPUSR_EFFECT_DATE", "AMRPUSR"."AMRPUSR_EFFECT_DATE", AMRPUSR_VALUE FROM "AMRPUSR", "ATVUSRC" WHERE ( "AMRPUSR"."AMRPUSR_USRC_CODE" = "ATVUSRC"."ATVUSRC_CODE" ) and ( ( "AMRPUSR"."AMRPUSR_PIDM" = &PIDM ) ) END SET NODATA = '' SET PRINTPLUS = ON TABLE FILE SQLOUT PRINT COMPUTE DEFDATE/MDYY = AMRPUSR_EFFECT_DATE; NOPRINT ATVUSRC_DESC NOPRINT AMRPUSR_VALUE AS ' ' BY HIGHEST AMRPUSR_EFFECT_DATE NOPRINT
ON AMRPUSR_EFFECT_DATE SUBHEAD "ON TABLE SET PAGE-NUM NOLEAD ON TABLE NOTOTAL ON TABLE PCHOLD FORMAT HTML ON TABLE SET HTMLCSS ON ON TABLE SET STYLE * INCLUDE = IBFS:/EDA/PRDODSP/_EDAHOME/ETC/endeflt.sty, $ TYPE=DATA, BACKCOLOR='NONE', $ TYPE=TITLE, COLOR='BLACK', BACKCOLOR='NONE', STYLE=-UNDERLINE+BOLD, $ ENDSTYLE END
My problem now is that it wraps too quickly and only uses about third of the page width space. I was under the impression that I would have to break this into 3 or more subfields however with SQL passthrough it seems i am getting all the data even that in excess of 4096. The field format in the report painter says its a TX50. If i can find a way to control the wrap I may be able to leverage this
The field format in the report painter says its a TX50. If i can find a way to control the wrap I may be able to leverage this
Could it not be an option to change the field format for a regular alpha field (/A) ?
WF will try to split text string according to the TX format specified length (in your case 50) without splitting a word and according to available space (and other rules). So each row should not exceed 50 characters but each lines may vary in length.
WF versions : Prod 8.2.04M gen 33, Dev 8.2.04M gen 33, OS : Windows, DB : MSSQL, Outputs : HTML, Excel, PDF In Focus since 2007
October 17, 2017, 02:49 PM
Geoff Fish
its a CLOB field in oracle could be as many as 30K, the default coming out of SQL passthrough is TX50, can i write a compute to change that or must i use a hold file? Cause what I think your saying is change it to TX??
In the end OVER would not give me the result I needed when brought into document composer. No I m not sure why. The OVER worked fine as a stand alone report when added to a compound document i would only get the first print field and the others disappeared. ???
This is a workaround that will do for now.
ENGINE SQLORA SET DEFAULT_CONNECTION BANPRD SQL SQLORA PREPARE SQLOUT FOR SELECT "ATVUSRC"."ATVUSRC_DESC", "AMRPUSR"."AMRPUSR_EFFECT_DATE", "AMRPUSR"."AMRPUSR_EFFECT_DATE", REGEXP_REPLACE(ASCIISTR(substr(amrpusr_value,1,3900)), '\\[[:xdigit:]]{4}', '') amrpusr_value, REGEXP_REPLACE(ASCIISTR(substr(amrpusr_value,3901,3900)), '\\[[:xdigit:]]{4}', '') amrpusr_value2, REGEXP_REPLACE(ASCIISTR(substr(amrpusr_value,7801,3900)), '\\[[:xdigit:]]{4}', '') amrpusr_value3 FROM "AMRPUSR", "ATVUSRC" WHERE ( "AMRPUSR"."AMRPUSR_USRC_CODE" = "ATVUSRC"."ATVUSRC_CODE" ) and ( ( "AMRPUSR"."AMRPUSR_PIDM" = &PIDM ) ) END SET NODATA = '' SET PRINTPLUS = ON TABLE FILE SQLOUT PRINT COMPUTE DEFDATE/MDYY = AMRPUSR_EFFECT_DATE; NOPRINT ATVUSRC_DESC NOPRINT COMPUTE CONCVAL/TX130 = AMRPUSR_VALUE || AMRPUSR_VALUE2 || AMRPUSR_VALUE3; AS ' ' BY HIGHEST AMRPUSR_EFFECT_DATE NOPRINT ON AMRPUSR_EFFECT_DATE SUBHEAD "ON TABLE SUBHEAD "Research Data" " " ON TABLE SET PAGE-NUM NOLEAD ON TABLE NOTOTAL ON TABLE PCHOLD FORMAT HTML ON TABLE SET HTMLCSS ON ON TABLE SET STYLE * INCLUDE = IBFS:/EDA/PRDODSP/_EDAHOME/ETC/endeflt.sty, $ TYPE=REPORT, FONT='TREBUCHET MS', SIZE=8, COLOR=RGB(66 70 73), STYLE=NORMAL, WRAP=7.500000, $ TYPE=DATA, BACKCOLOR='NONE', $ TYPE=TITLE, COLOR='BLACK', BACKCOLOR='NONE', STYLE=-UNDERLINE+BOLD, $ TYPE=TABHEADING, LINE=1, JUSTIFY=LEFT, $ TYPE=TABHEADING, LINE=1, OBJECT=TEXT, ITEM=1, SIZE=11, STYLE=ITALIC+UNDERLINE, $ TYPE=TABHEADING, LINE=2, JUSTIFY=LEFT, $ TYPE=TABHEADING, LINE=2, OBJECT=TEXT, ITEM=1, STYLE=NORMAL, $ ENDSTYLE END