This is just a theory question as I have a work-around.
The challenge is displaying multiple sum values in an across table that have different format types. It'd be nice to display each of the values without having to use FPRINT so that subtotals could be utilized. Subtotals unfortunately don't work with FPRINT in a COMPUTE statement (to my knowledge, happy for someone to prove me wrong).
So here is an example:
TABLE FILE CAR SUM COMPUTE COLVAL/D12.2 = PaidAmount BY Country BY TOTAL COMPUTE COLID/I1 = 1; ON TABLE HOLD AS 'HOLD_1' END TABLE FILE CAR SUM COMPUTE COLVAL/D12C = Number_Sales BY Country BY TOTAL COMPUTE COLID/I1 = 2; ON TABLE HOLD AS 'HOLD_2' END TABLE FILE HOLD_1 SUM COLVAL AS '' ACROSS COLID BY Country MORE HOLD_2 ENd
As this code is written right now, I will get an error since the format in the COLVAL SUM fields between the two hold files are different.
Can anyone think of a way other than using FPRINT in the Compute statement to have different formats in the same field in a Universal Concatenation statement in order to have subtotal functionality in the resulting Concatenated table?This message has been edited. Last edited by: Brandon Andrathy,
Use dynamic formatting -
SET ASNAMES = ON SET HOLDLIST = PRINTONLY TABLE FILE CAR SUM COMPUTE COLVAL/D12.2 = RCOST; COMPUTE FORMAT/A8 = 'D12.2'; BY COUNTRY BY TOTAL COMPUTE COLID/I1 = 1; ON TABLE HOLD AS HOLD_1 END -RUN TABLE FILE CAR SUM COMPUTE COLVAL/D12.2 = DCOST; COMPUTE FORMAT/A8 = 'D12C'; BY COUNTRY BY TOTAL COMPUTE COLID/I1 = 2; ON TABLE HOLD AS HOLD_2 END -RUN TABLE FILE HOLD_1 SUM COLVAL/FORMAT AS '' ACROSS COLID BY COUNTRY MORE FILE HOLD_2 END
Thank you sir!!
|Powered by Social Strata|