Focal Point
Reading Data into &variables from a FOCUS hold file
December 05, 2007, 08:42 AM
thefozReading Data into &variables from a FOCUS hold file
Hi All.
Is it possible to read the values from one column into amper variables from a FOCUS hold file.
This hold file will be pivoted and I would like to know what the column names will be so I can re-order the columns in my report.
Many Thanks
DevStudion 7.6.1 SQL Server 2005
DevStudio 7.6.1. SQL Server 2005
December 05, 2007, 09:08 AM
FrankDutchFox
After your fex with the hold command you can type this
? HOLD
and you will see the fields and there format
that might help you a bit.
|
Frank |
| prod: WF 7.6.10 platform Windows, databases: msSQL2000, msSQL2005, RMS, Oracle, Sybase,IE7 test: WF 7.6.10 on the same platform and databases,IE7 |
December 05, 2007, 09:12 AM
FrankDutchexample
TABLE FILE CAR
SUM
SALES AS ''
BY CAR
ACROSS COUNTRY
ON TABLE NOTOTAL
ON TABLE HOLD FORMAT FOCUS
END
? HOLD
The five across fields give you five different fields all named with the country code.
You can now run a report based upon these fields
|
Frank |
| prod: WF 7.6.10 platform Windows, databases: msSQL2000, msSQL2005, RMS, Oracle, Sybase,IE7 test: WF 7.6.10 on the same platform and databases,IE7 |
December 05, 2007, 09:13 AM
GinnyJakesTo put the contents of a hold file column into an amper variable, you need to create the hold file then do a -READ to populate the variables.
TABLE FILE CAR
PRINT COUNTRY
ON TABLE HOLD FORMAT ALPHA
END
-RUN
-READ HOLD NOCLOSE &COUNTRY.10.
At this point, you can do whatever you need to with the amper variable.
Hope this helps.
Ginny
---------------------------------
Prod: WF 7.7.01 Dev: WF 7.6.9-11
Admin, MRE,self-service; adapters: Teradata, DB2, Oracle, SQL Server, Essbase, ESRI, FlexEnable, Google
December 05, 2007, 09:21 AM
thefozCheers. I shall give those ago.
DevStudio 7.6.1. SQL Server 2005
December 05, 2007, 10:03 AM
thefozIf there are many records in the file, will the -READ command fill up an array?
i.e. In the country example there will be
&COUNTRY1 = 'England'
&COUNTRY2 = 'USA'....
Many Thanks
DevStudio 7.6.1. SQL Server 2005
December 05, 2007, 10:17 AM
GinnyJakesYou can do that if you want. You need to use the Dialogue Manager index syntax. You can put the -READ in a -REPEAT loop and bump up a counter. Your code might look something like this:
TABLE FILE CAR
PRINT COUNTRY
ON TABLE HOLD FORMAT ALPHA
END
-RUN
-SET &LIMIT=&LINES;
-SET &I=1;
-REPEAT ENDLOOP &LIMIT TIMES
-READ HOLD NOCLOSE &COUNTRY.10.
-SET &COUNTRY.&I=&COUNTRY;
-TYPE &COUNTRY.&I
-SET &I=&I+1;
-ENDLOOP
Ginny
---------------------------------
Prod: WF 7.7.01 Dev: WF 7.6.9-11
Admin, MRE,self-service; adapters: Teradata, DB2, Oracle, SQL Server, Essbase, ESRI, FlexEnable, Google
December 05, 2007, 10:42 AM
thefozThanks Ginny. That has worked a treat.
Don't suppose you know how to get rid of the white space that appears between the first row of data and the column headers on a pivot table?
DevStudio 7.6.1. SQL Server 2005
December 05, 2007, 10:44 AM
Tony Aquote:
This hold file will be pivoted and I would like to know what the column names will be so I can re-order the columns in my report.
To get the column names you can use the little used CHECK FILE syntax -
TABLE FILE CAR
SUM RCOST
DCOST
BY COUNTRY
BY CAR
BY MODEL
ON TABLE HOLD AS REPDATA
END
-RUN
CHECK FILE REPDATA HOLD
TABLE FILE HOLD
PRINT FIELDNAME
ON TABLE SAVE AS COLNAMES
END
-RUN
-SET &Cnt = 0;
-READ COLNAMES &Column&Cnt.EVAL.A66.
-REPEAT :Loop WHILE &IORETURN EQ 0;
-SET &Cnt = &Cnt + 1;
-READ COLNAMES &Column&Cnt.EVAL.A66.
-:Loop
-? &Column
The HOLD file will have various columns within it containing various information about the individual fields (columns) and the three most commonly required are FIELDNAME, ALIAS and FORMAT. I have only pulled out the fieldname column and then read it into variables.
T
In FOCUS since 1986 | WebFOCUS Server 8.2.01M, thru 8.2.07 on Windows Svr 2008 R2 | | |
WebFOCUS App Studio 8.2.06 standalone on Windows 10 | |
December 05, 2007, 12:15 PM
GinnyJakesFoz,
No, I do not. I don't play with pivot tables very much.
Maybe someone else does and can post a solution for you.
Ginny
---------------------------------
Prod: WF 7.7.01 Dev: WF 7.6.9-11
Admin, MRE,self-service; adapters: Teradata, DB2, Oracle, SQL Server, Essbase, ESRI, FlexEnable, Google