PLC/DCS type reports (Tag Data).
[CR-LF]
PERIODIC PRINTINGS [CR-LF]
[CR-LF]
06/05/02 15:55:27 ENTER_BOP [CR-LF]
[CR-LF]
Page : 001[CR-LF]
N Name of GSYS Customer setpoint Descriptive Value[CR-LF]
[CR-LF]
1 P40GNTRT.#F4EA00_TT013A 1AVVP TT013 1AVVP TT013 *** 01 *** 'C [CR-LF]
2 P40GNTRT.#F4IA00_TT013B 1BVVP TT013 1BVVP TT013 *** 01 *** 'C [CR-LF]
3 P40GNTRT.#F4CA00_TT003A 1AVVP TT003 1AVVP TT003 *** 01 *** 'C [CR-LF]
4 P40GNTRT.#F4GA00_TT003B 1BVVP TT003 1BVVP TT003 *** 01 *** 'C [CR-LF]
5 P40GNTRT.#F45A00_ATT001 1AFBP TT001 1AFBP TT001 91 'C [CR-LF]
6 P40GNTRT.#F45A00_BTT001 1BFBP TT001 1BFBP TT001 91 'C [CR-LF]
7 P40GNTRT.#F4MA00_LT102 10SKD LT102 10SKD LT102 -32 mm [CR-LF]
8 P40GNTRT.#F4MA00_LT202 10SKD LT202 10SKD LT202 7979 mm [CR-LF]
9 P40GNTRT.#F4BA00_TT003 1AGHP TT003 1AGHP TT003 422 'C [CR-LF]
10 P40GNTRT.#F4FA00_TT003 1BGHP TT003 1BGHP TT003 428 'C [CR-LF]
11 P40GNTRT.#F4DA00_TT003 1AGBP TT003 1AGBP TT003 309 'C [CR-LF]
12 P40GNTRT.#F4HA00_TT003 1BGBP TT003 1BGBP TT003 299 'C [CR-LF]
13 P40GNTRT.#F4NA00_FT352A 00TPG FT352A 00TPG FT352A 7.4 kg/s [CR-LF]
14 P40GNTRT.#F4NA00_FIT352 00TPG FIT352 00TPG FIT352 30089 Nm3/h [CR-LF]
15 P40GNTRT.#F4NA00_FIT453 00TPG FIT453 00TPG FIT453 10 Nm3/h [CR-LF]
16 P40GNTRT.#F4NA00_FIT473 00TPG FIT473 00TPG FIT473 -5 Nm3/h [CR-LF]
17 P40GNTRT.#F4B_AHP_STM_FLO 1AVVP HP STM FLOW 1AVVP HP STM FLOW 91 t/h [CR-LF]
18 P40GNTRT.#F4B_BHP_STM_FLO 1BVVP HP STM FLOW 1BVVP HP STM FLOW 89 t/h [CR-LF]
19 P40GNTRT.#F4BA00_FTV006 10SVA FTV006 10SVA FTV006 0.1 t/h [CR-LF]
20 P40GNTRT.#F4BA00_FTV013 10SVA FTV013 10SVA FTV013 0.2 t/h [CR-LF]
21 P40GNTRT.#F44A00_TT001 10ACO TT001 10ACO TT001 69 'C [CR-LF]
22 P40GNTRT.#F44A00_TT007 10ACO TT007 10ACO TT007 57 'C [CR-LF]
23 P40GNTRT.#F45A00_TT004 10CEX TT004 10CEX TT004 90 'C [CR-LF]
24 P40GNTRT.#F46A00_PT003 10FBP PT003 10FBP PT003 9.5 bar [CR-LF]
25 P40GNTRT.#F4BA00_PT002 10VVP PT002 10VVP PT002 75 bar [CR-LF]
26 P40GNTRT.#F4BA00_PT001A 1AVVP PT001 1AVVP PT001 76 bar [CR-LF]
27 P40GNTRT.#F4DA00_PT001B 1BVVP PT001 1BVVP PT001 77 bar [CR-LF]
28 P40GNTRT.#F4BA00_PT011A 1AVVP PT011 1AVVP PT011 14.8 bar [CR-LF]
29 P40GNTRT.#F4DA00_PT011B 1BVVP PT011 1BVVP PT011 14.7 bar [CR-LF]
30 P40GNTRT.#F4DA00_PT012 10VVP PT012 10VVP PT012 14.2 bar [CR-LF]
31 P40GNTRT.#F47A01_PSN 1AVVP ZT012 1AVVP ZT012 0 % [CR-LF]
32 P40GNTRT.#F48A01_PSN 1AVVP ZT014 1AVVP ZT014 -2 % [CR-LF]
33 P40GNTRT.#F49A01_PSN 1BVVP ZT012 1BVVP ZT012 0 % [CR-LF]
34 P40GNTRT.#F4AA01_PSN 1BVVP ZT014 1BVVP ZT014 1 % [CR-LF]
35 P40GNTRT.#F40A00_TT005 10VVP TT005 10VVP TT005 476 'C [CR-LF]
36 P40GNTRT.#F41A00_TT006 10VVP TT006 10VVP TT006 497 'C [CR-LF]
37 P40GNTRT.#F43A00_TT015 10VVP TT015 10VVP TT015 318 'C [CR-LF]
38 P40GNTRT.#F43A00_TT016 10VVP TT016 10VVP TT016 297 'C [CR-LF]
39 P40GNTRT.#F4FA00_PT002 10CEX PT002 10CEX PT002 10.0 bar [CR-LF]
40 P40GNTRT.#F4BA01_PSN 1AGHP ZT001 1AGHP ZT001 1 % [CR-LF]
41 P40GNTRT.#F4L_DISPA_SPT 10KRG DISPA SPT 10KRG DISPA SPT *** 01 *** MW [CR-LF]
42 P40GNTRT.#F4BA00_PT001 1AGHP PT001 1AGHP PT001 1.0 bar [CR-LF]
43 P40GNTRT.#F4BA00_TT002 10VVP TT002 10VVP TT002 500 'C [CR-LF]
44 P40GNTRT.#F4CA00_TT002 1AGHP TT002 1AGHP TT002 64 'C [CR-LF]
45 P40GNTRT.#F40A00_TT012 10VVP TT012 10VVP TT012 290 'C [CR-LF]
46 P40GNTRT.#F4CA00_FT001 1AGHP FT001 1AGHP FT001 1.6 t/h [CR-LF]
47 P40GNTRT.#F4EA00_FT001 1AGBP FT001 1AGBP FT001 *** 01 *** t/h [CR-LF]
48 P40GNTRT.#F4FA01_PSN 1BGHP ZT001 1BGHP ZT001 2 % [CR-LF]
49 P40GNTRT.#F4NA00_WOB_IDX 00TPG AIT350 00TPG AIT350 39.9 MJ/Nm [CR-LF]
[FF]
[CR-LF]
PERIODIC PRINTINGS [CR-LF]
[CR-LF]
06/05/02 15:55:27 ENTER_BOP [CR-LF]
[CR-LF]
Page : 002[CR-LF]
N Name of GSYS Customer setpoint Descriptive Value[CR-LF]
[CR-LF]
50 P40GNTRT.#F4FA00_PT001 1BGHP PT001 1BGHP PT001 0.4 bar [CR-LF]
51 P40GNTRT.#F4DA00_PT204 10GRE PT204 10GRE PT204 16.1 bar [CR-LF]
52 P40GNTRT.#F4GA00_TT002 1BGHP TT002 1BGHP TT002 64 'C [CR-LF]
53 P40GNTRT.#F4IA00_TT001 1BGBP TT001 1BGBP TT001 66 'C [CR-LF]
54 P40GNTRT.#F4GA00_FT001 1BGHP FT001 1BGHP FT001 2.9 t/h [CR-LF]
55 P40GNTRT.#F4IA00_FT001 1BGBP FT001 1BGBP FT001 0.4 t/h [CR-LF]
56 P40GNTRT.#F4DA01_PSN 1AGBP ZT001 1AGBP ZT001 4 % [CR-LF]
57 P40GNTRT.#F4NA00_WOB_GRV 00TPG AIT350B 00TPG AIT350B 0.80 MJ/Nm3 [CR-LF]
58 P40GNTRT.#F4DA00_PT002 1AGBP PT002 1AGBP PT002 0.2 bar [CR-LF]
59 P40GNTRT.#F4NA00_WOB_LHV 00TPG AIT350A 00TPG AIT35A 29.9 MJ/Nm3 [CR-LF]
60 P40GNTRT.#F4EA00_TT001 1AGBP TT001 1AGBP TT001 66 'C [CR-LF]
61 P40GNTRT.#F4HA00_PT002 1BGBP PT002 1BGBP PT002 0.2 bar [CR-LF]
62 P40GNTRT.#F4HA01_PSN 1BGBP ZT001 1BGBP ZT001 0 % [CR-LF]
63 P40GNTRT.#F4NA00_PT252 00TPG PT252 00TPG PT252 *** 01 *** bar [CR-LF]
64 B404DOPE.#F4DA01_PSG 1AGBP PCV001 PSG 1AGBP PCV001 PSG 0 % [CR-LF]
65 B404EOPE.#F4EA01_PSG 1AGBP UCV002 PSG 1AGBP UCV002 PSG 0 % [CR-LF]
66 B404HOPE.#F4HA01_PSG 1BGBP PCV001 PSG 1BGBP PCV001 PSG 0 % [CR-LF]
67 B404IOPE.#F4IA01_PSG 1BGBP UCV002 PSG 1BGBP UCV002 PSG 0 % [CR-LF]
68 B404BOPE.#F4BR03_SPT 1AGHP PCV001 CH3 SPT 1AGHP PCV001 CH3 SPT 76.8 bar [CR-LF]
69 B404BOPE.#F4BA00_SPT 10GHP COMMON PRESSURE 10GHP COMMON PRESSURE 75 bar [CR-LF]
70 B4045OPE.#F45A01_PSG 10FBP TCV002 PSG 10FBP TCV002 PSG 0 % [CR-LF]
71 B4047OPE.#F47A01_PSG 1AVVP UCV012 PSG 1AVVP UCV012 PSG 0 % [CR-LF]
72 B4048OPE.#F48A01_PSG 1AVVP UCV014 PSG 1AVVP UCV014 PSG 0 % [CR-LF]
73 B4049OPE.#F49A01_PSG 1BVVP UCV012 PSG 1BVVP UCV012 PSG 0 % [CR-LF]
74 B404AOPE.#F4AA01_PSG 1BVVP UCV014 PSG 1BVVP UCV014 PSG 0 % [CR-LF]
75 B404BOPE.#F4BA01_PSG 1AGHP PCV001 PSG 1AGHP PCV001 PSG 0 % [CR-LF]
76 B404BOPE.#F4BA00_SPT_ST 10GHP SPTST 10GHP SPTST 71 bar [CR-LF]
77 B404COPE.#F4CA01_PSG 1AGHP UCV003 PSG 1AGHP UCV003 PSG 0 % [CR-LF]
78 B404FOPE.#F4FA01_PSG 1BGHP PCV001 PSG 1BGHP PCV001 PSG 0 % [CR-LF]
79 B404GOPE.#F4GA01_PSG 1BGHP UCV003 PSG 1BGHP UCV003 PSG 0 % [CR-LF]
80 B404LOPE.#F4L_KRG_COMMON 10KRG COMMON 10KRG COMMON 41 % [CR-LF]
81 P41GNTRT.#F3GA02_TT208 10CVF TT208 10CVF TT208 50 'C [CR-LF]
82 P41GNTRT.#F3GA02_TT202 10CVF TT202 10CVF TT202 86 'C [CR-LF]
83 P41GNTRT.#F3GA02_TT204 10CVF TT204 10CVF TT204 84 'C [CR-LF]
84 P41GNTRT.#F3GA02_TT206 10CVF TT206 10CVF TT206 85 'C [CR-LF]
85 P41GNTRT.#F3GA03_TT301 10CVF TT301 10CVF TT301 55 'C [CR-LF]
86 P41GNTRT.#F3GA03_TT308 10CVF TT308 10CVF TT308 47 'C [CR-LF]
87 P41GNTRT.#F3GA03_TT302 10CVF TT302 10CVF TT302 80 'C [CR-LF]
88 P41GNTRT.#F3GA03_TT304 10CVF TT304 10CVF TT304 80 'C [CR-LF]
89 P41GNTRT.#F3GA03_TT306 10CVF TT306 10CVF TT306 85 'C [CR-LF]
90 P41GNTRT.#F3IA01_TT100 10CRF TT100 10CRF TT100 *** 01 *** 'C [CR-LF]
91 P41GNTRT.#F3IA01_TT101 10CRF TT101 10CRF TT101 *** 01 *** 'C [CR-LF]
92 P41GNTRT.#F3IA01_TT102 10CRF TT102 10CRF TT102 51 'C [CR-LF]
93 P41GNTRT.#F3IA01_TT103 10CRF TT103 10CRF TT103 *** 01 *** 'C [CR-LF]
94 P41GNTRT.#F3IA01_PT101 10CRF PT101 10CRF PT101 2 bar [CR-LF]
95 P41GNTRT.#F3IA01_TT105 10CRF TT105 10CRF TT105 *** 01 *** 'C [CR-LF]
96 P41GNTRT.#F3IA01_TT106 10CRF TT106 10CRF TT106 43 'C [CR-LF]
97 P41GNTRT.#F3FA01_PT001 10APB PT001 10APB PT001 26.9 barg [CR-LF]
98 P41GNTRT.#F3IA01_PT104 10CRF PT104 10CRF PT104 1.7 bar [CR-LF]
[FF]
[CR-LF]
PERIODIC PRINTINGS [CR-LF]
[CR-LF]
06/05/02 15:55:27 ENTER_BOP [CR-LF]
[CR-LF]
Page : 003[CR-LF]
N Name of GSYS Customer setpoint Descriptive Value[CR-LF]
[CR-LF]
99 P41GNTRT.#F3MA01_FT001 10CRF FT001 10CRF FT001 53 mbar [CR-LF]
100 P41GNTRT.#F3IA01_PT204 10CRF PT204 10CRF PT204 1.5 bar [CR-LF]
101 P41GNTRT.#F34A00_FT002 10CEX FT002 10CEX FT002 186 mbar [CR-LF]
102 P41GNTRT.#F37A00_LT001A 10CEX LT001A 10CEX LT001A 328 mm [CR-LF]
103 P41GNTRT.#F37A00_LT001B 10CEX LT001B 10CEX LT001B 362 mm [CR-LF]
104 P41GNTRT.#F31A00_TT002 10CEX TT002 10CEX TT002 55 'C [CR-LF]
105 P41GNTRT.#F31A01_PSN 10CEXZT003 10CEXZT003 34 % [CR-LF]
106 P41GNTRT.#F3PA00_PT011 10SAP PT011 10SAP PT011 6.9 bar [CR-LF]
107 P41GNTRT.#F33A01_TT101 10CEX TT101 10CEX TT101 65 'C [CR-LF]
108 P41GNTRT.#F33A01_PDT101 10CEX PDT101 10CEX PDT101 12 mbar [CR-LF]
109 P41GNTRT.#F33A02_TT201 10CEX TT201 10CEX TT201 43 'C [CR-LF]
110 P41GNTRT.#F33A02_PDT201 10CEX PDT201 10CEX PDT201 0 mbar [CR-LF]
111 P41GNTRT.#F33A00_PT001 10CEX PT001 10CEX PT001 10.1 bar [CR-LF]
112 P41GNTRT.#F3PA00_PT021 10SAP PT021 10SAP PT021 7.4 bar [CR-LF]
113 P41GNTRT.#F35A01_PSN 10CEX ZT004 10CEX ZT004 -1 % [CR-LF]
114 P41GNTRT.#F37A01_PSN 10CEX ZT001 10CEX ZT001 36 % [CR-LF]
115 P41GNTRT.#F38A01_PSN 10ADG ZT001 10ADG ZT001 18 % [CR-LF]
116 P41GNTRT.#F31A00_LT003A 10ADG LT003A 10ADG LT003A 1627 mm [CR-LF]
117 P41GNTRT.#F31A00_LT003B 10ADG LT003B 10ADG LT003B 1616 mm [CR-LF]
118 P41GNTRT.#F38A00_PT001 10ADG PT001 10ADG PT001 0.18 barg [CR-LF]
119 P41GNTRT.#F39A00_PT003 10ADG PT003 10ADG PT003 14.0 bar [CR-LF]
120 P41GNTRT.#F3AA00_TT001 10ADG TT001 10ADG TT001 105 'C [CR-LF]
[CR-LF]
[CR-LF]
[CR-LF]
[CR-LF]
[CR-LF]
[CR-LF]
[FF]
The majority of PLC/DCS applications for PrintFaqtory involve the printing of tag data. All PLCs and DCSs can print a full or partial list of their internal tags and corresponding data. If the device prints to PrintFaqtory then the tag data will be available via OPC, DDE, Modbus and ODBC. This is ALWAYS the easiest and cheapest way of accessing your tags. Everybody knows how to make the PLC/DCS print tag data and nobody needs to go on a training course to implement this functionality. PrintFaqtory costs much much less than a proprietary OPC Server and is several orders of magnitude easier to configure.
Below is a typical example of a tag printout from a DCS as displayed in PrintFaqtory. On this page we will show you how to configure PrintFaqtory to capture this data. Please review ‘Report Basics’ for information on report formatting. If you want to try this example as an exercise with PrintFaqtory, Copy EVERYTHING (use Ctl-A to select all) on this page and paste into the PrintFaqtory ‘Raw Data’ tab and then click the ‘Build RTF’ button.
Step 1.1. Create new ‘Document Type’
From the ‘Doc Definition’ tab, click ‘New’.

The ‘Add Document Type’ screen below opens. Choose a UNIQUE name for this Document. In this case we will use ‘ENTER_BOP’.

Step 1.2. Select the ‘Identity String(s)’.
The Identity Strings are any unchanging text on the report that will identify this report from all others. In this case, we will use ‘PERIODIC PRINTINGS’ and ‘ENTER_BOP’. ‘PERIODIC PRINTINGS’ is entered into ’IdentityString1’ and ‘’ENTER_BOP’ is entered into ‘IdentityString2, as below. Note the ‘Data Save Mode’ setting of ‘Tag with History’. This means that the data will be saved as tag data (new values overwrite old in the main Line table) with a historical record for every change of the tag values.

Step 1.3. Identify the Line Item Start String.
The Line Item Start String is the report text that precedes the start of the Line Items. In nearly all cases, it will be the last column caption (or to be on the safe side, ALL the column captions). In this case, we will select ‘Value[CR-LF][CR-LF]’, (note the addition of the [CR-LF] tokens) as below.

Step 1.4. Identify the Line Item End String.
The Line Item End String is the report text that is immediately after the Line Items. In this case, there is no text after the Line Item segment, only control codes so we will select three consecutive ‘[CR-LF]’ tokens to identify the end of the line segment as below.

Step 1.5. Identify the Line Item Terminator String.
The Line Item Terminator String is the report text that is printed at the end of every line in the Line Item segment. In nearly all cases it will be a ‘[CR-LF]’ token. This is entered as below.

The report definition is now complete. Click the ‘Save’
button to save this Document Definition. Note, clicking on any other tab will automatically save the preceding tab’s data. The ‘Save’ button is only for saving the current tab (i.e. when testing).
As this report contains page breaks with a reprint of the column headers, this data must be removed from the Line Item segment of the report. Clicking on the
button opens the ‘Line Item Properties’ screen below.

Step 1.6. Identify the start of the page break.
As can be seen above, the Line Input Segment includes all the page break text. The range of text that comprises the entire page break section must be defined by first identifying where this text starts. The first text that appears after the Line Item Data is ‘[CR-LF]’, ‘[FF]’ and ‘[CR-LF]’ tokens. These are entered into the Start 1 field as below
Step 1.7. Identify the end of the page break.
The end of the page break segment is the text immediately preceding the start of data. In this case it is the reprint of the column headers. Just as in defining the start of the Line Item segment, we will select ‘Value[CR-LF][CR-LF]’ as the end of the page break text and enter it into the ‘End 1’ field as below.

Clicking the ‘Refresh’ button
reformats the Line Item segment, removing the area defined as the page break(s) as below. Note how tags 49 and 50 have no text between them at all. If there was any remaining control codes (quite common) then they can be removed by checking the relevant check box e.g.. to remove form feeds ([FF]), check the ‘Remove [FF] checkbox’.

Now that the document definition is complete, we can define the Headers. Click the Headers tab. On this report, there is only one header, the date and time of the report (the only other possible header is ‘ENTER_BOP’, but as that is the table name, it is already well defined)

Step 2.1. Define the Field Name.
Under ‘Field Name’, enter ‘Report_Datetime’ with a data type of ‘DATETIME’ as below.

Step 2.2. Identify the Header Start String.
The Header Start String is the text immediately precedes the data. In this case the Header Start String is ’PERIODIC PRINTINGS [CR-LF][CR-LF]’ Copy and paste this text from the lower text display into the ‘Start String’ field as below.

Step 2.3. Identify the Header End String.
The Header End String is the text immediately after the data. In this case it is ‘ENTER_BOP’. Enter this into the ‘End String’ field as below.

Now that the Header definitions are complete, we can define the Line Items. We will be defining Line Item fields for all the columns ‘Tag_No’, ‘Tag_Name’, ‘Customer_Setpoint’, ‘Tag_Description’, ‘Tag_Value’ and ‘Tag_Units’. As we have defined the Data Save Mode as being type ‘Tag’ then we have to define a minimum of two fields ‘Tag_Name’ and ‘’Tag_Value’. Click the ‘Line Items’ tab.

Step 3.1. Define the Field Name.
Under ‘Field Name’, enter ‘Tag_No’ with a data type of ‘INTEGER’ as below

Step 3.1. Find the String Start & End Positions.
If NONE of your columns EVER contains any white space within the data (eg. numeric only values) then this and the next step can be ignored. PrintFaqtory will be able to find the data automatically. If your column data DOES contain white spaces, as in this example, then the beginning and end of the data has to be defined. In the text display, delete everything above the first line of data as below.

Now select the maximum text that will ever appear in our ‘Tag_No’ field as below.

Enter the displayed ‘Start No.’ and ‘Length’ values into the field’s ‘String Start Position’ and ‘String Length’ as below.

Repeating for the second field ‘Tag_Name’ gives the configuration below. Note, as this is the OPC tag name then we have to check the ‘Name’ check box.

Repeating for all the remaining fields gives the configuration below. Note the setting of the check boxes and their corresponding field names (the field names can be anything, the check boxs inform PrintFaqtory which is which).

In the report, some of the values are in a Alarm condition with values like ‘*** 01 ***’. Most OPC clients will interpret this text as having a value of 0. To indicate that these values are alarm conditions (to be stored in the Alarm table) and to assign a more meaningful value, click the ‘Alarm’ button
. This brings up the ‘Alarm Definitions’ screen below. The ‘Alarm Substitute String’ field is optional.

Step 4.1. Testing your report.
Select the ‘Raw Data’ tab and ensure that the correct report is displayed as below.

Click the ‘Process’ button and switch to the ‘Extracted Data’ tab. If you have entered the definitions correctly, the ‘Extracted Data’ will look like below. This is a display of the last data that was saved to the database. If you have made a mistake in your field definitions, then this tab will give you plenty of clues as to what is wrong and where.

(C) 2003 John Burch Read our Privacy Policy