Context: |
Class Method (Function) |
Library/Class: |
FileExport Class |
Function FileExport.GetNotesFieldIndex() As Integer
This function returns the index of the Notes field as listed in the Selected Field List that matches (is linked to) the Word field as passed on in the parameter wfd.
For performance reasons, Integra builds an internal index table, linking each Word field or bookmark listed in the Selected Field List with its counterpart in Notes. The index table is stored in stats.FdIndex (StaticVars runtime object). The table is created with the export of the first Notes document. This is controlled by stats.FdIdxSet.
Note:
- Fields and or bookmarks can occur multiple times in a Word template. Each doubled, trippled, etc. Word field links to the same Notes field.
- Fields in Word are organised in multiple object arrays that are organised by sections, and each section in header, footer and body (document). As a result, the index of the Word field as passed in wfd is not sufficient to describe the field index. It is required to determine the location or section (fdloc).
- As releases prior to 4.3 only optimise the fields stored in the body section, the location parameter is not required. Hence the Notes field index for Word fields not located in the body section is calculated for every such field and Notes document exported. Albeit the posibility to disable header and footer fields in the Integra profile as these are extremly bad performing prior to Integra 4.3
Version 4.3+
GetNotesFieldIndex(stats As StaticVars, wfd As Long, WdFdType As Integer, fdloc As Integer)
Whereas in previous versions of Integra only Word mailmerge and form fields where supported, in Integra 4.3 also OCX and bookmarks are supported field types. As a result the index table (stats.FdIndex) has considerably changed in Integra 4.3.
Another difference is that Integra 4.3 builds the index table for all supported Word field types and locations.
Parameters:
Handle to Integra's runtime object stats
wfd (Long)
Index to the Word field table of type as defined in WdFdType
WdFdType (Integer)
One of the supported Word field types
fdloc (Integer)
Serialised location of the field within the Word document.
All prior releases
GetNotesFieldIndex (stats As StaticVars, wfd As Long, lbnd As Long, ubnd As Long)
Parameters:
Handle to Integra's runtime object stats
wfd (Long)
Index to the Word field table of type as defined in WdFdType
lbnd (Long)
Lower bound is set to 1for all Word profiles, except for Word Label profiles where an offset is calculated for the currently to be filled label
ubnd (Long)
Upper bound is set to stats.FDCount for all Word profiles, except for Word Label profiles where an offset is calculated for the currently to be filled label
Return Value:
Index of a field listed in the Selected Field List ( export.record.structure.fname; see also export.record.fvalues ) that is linked to the Word field as passed on in the parameter wfd.
|