skip to main content
OpenEdge Development: ADM Reference
Alphabetical Listing of WebSpeed-specific API Routines
 
Alphabetical Listing of WebSpeed-specific API Routines
The WebSpeed environment coexists with and makes use of HTML. In this respect, it is different than the standard ABL/ADM environment, and SmartObjects operating in it require a separate set of supporting routines.
The default paths to the files defining the SmartObjects for WebSpeed are:
*Class SourcePath src/web2
*Class RcodePathweb2
*Class TemplatePath src/web2/template
This chapter lists and describes all SmartObject API routines dedicated to the WebSpeed environment. For ADM2 routines not specific to the WebSpeed environment, see the other chapters in this guide. For lists of methods, procedures, and properties organized by object type, see the Index.
addColumnLink
Specifies that a column in the HTML table should appear with a hyperlink. The attributes needed to support this are specified in the other input parameters.
Location: wbtable.p
Parameters:  
INPUT pcColumn AS CHARACTER
The name of the column you want hyperlinked.
INPUT pcURL AS CHARACTER
The linked object. Must be a valid URL reference.
INPUT pcTarget AS CHARACTER
The HTML frame reference that receives the response. The reference _self specifies that the current HTML frame should be used.
INPUT pcMouseOver AS CHARACTER
A function that returns the character string that should be displayed on the mouseOver event in the HTML page.
INPUT pcJoinParam AS CHARACTER
Specifies the required parameters to add to the URL to join this data-source to the linked object’s data-source. Valid values are:
*ROWID — Adds the parameters ExternalRowids with the current rowids as data to the URL, as well as ExternalTables with the Table property as data
*blank — No join needs to take place and no parameters except the default BackRowids are added to the URL—usually used to return to the calling object
Returns: LOGICAL
Notes:  
*The Wizard creates a link for one selected column, but the function is able to add links to all the columns in the object.
*The Embedded SpeedScript (.htm) files created by the Report wizard show examples of this function call in use.
*The actual HTML code to generate the link is in urlLink with the logic that adds join parameters in urlJoinParams. If the linked object (pcURL) is unspecified, the link will not be generated in the HTML code.
*The parameters ExternalTables and BackRowids are always added to the specified URL, while ExternalObject is added when the data-source is a SmartDataObject.
*The Wizard creates a link for one selected column, but the function is able to add links to all the columns in the object.
*The Embedded SpeedScript (.htm) files created by the Report wizard show examples of this function call in use.
*The actual HTML code to generate the link is in urlLink with the logic that adds join parameters in urlJoinParams. If the linked object (pcURL) is unspecified, the link will not be generated in the HTML code.
*The parameters ExternalTables and BackRowids are always added to the specified URL, while ExternalObject is added when the data-source is a SmartDataObject.
*The linked object must be able to interpret the data specified in the pcJoinParams. This is usually done by specifying that the linked object should be able to use this object’s data-source as an External table or object when the object is created in the Wizard. This will generate a comma‑separated ExternalTableList property in the linked object, with either a matching pipe‑separated ForeignFieldList or two ExternalWhereList and ExternalJoinList properties. The ForeignFieldList property must have an entry that defines a ForeignFields property for the columns that are passed on this link, while the two others have matching entries that specify how the external tables are joined to the query.
*The list of columns is the only way to link objects that have SmartDataObjects as data-sources, but can also be used for database queries.
*When the ROWID option is used, the external tables are physically added to the receiving dynamic query if they are not already present, and the query–prepare is changed to use the corresponding rowids in the WHERE clause for these tables.
*The pcMouseOver needs to reference a function so that the mouse-over text can show current values for the actual row. This can be achieved by letting the function call columnProps in the data-source. The wizard will generate this function to return the text that is specified in the “Status” field in the wizard. You can refer to functions or properties in the actual data-source in this field inside a pair of back-ticks. The code generator will generate this into a valid run-time expression.
*All the URL link parameters, including the list of columns, will be added to the linked object’s contextFields property. This guarantees that the linked object stays joined on subsequent requests to perform navigation, transaction, or search.
*All the parameters passed to this function will be added to internal properties that will be used when the HTML code is generated. The column name will be added to the LinkColumns, which is a comma‑separated property that holds the name of all the linked columns. The other parameter passed to this function is added to other internal properties the LinkURLs, LinkTargets, LinkTexts, and LinkJoins respectively. All of them are comma‑separated except the last one, which is CHR(1)-separated.
Examples:  
/* Add two hyperlinks, one on the custNum to call the customer detail and one
   on the salesRep field to call the salesrep detail. */
 
addColumnLink(’custNum’,         /* Column name */
              ’detcust.html’,    /* WebObject   */
              ’_self’,           /* TargetFrame */
              ’custStatusLine’,  /* Function name for Status Line */
              ’custNum’).        /* column to use as foreign field */
 
addColumnLink(’salesRep’,        /* Column name */
              ’detsls.html’,     /* WebObject   */
              ’_self’,           /* TargetFrame */
              ’salesStatusLine’, /* Function name for Status Line */
              ’salesRep’).       /* column to use as foreign field */
 
FUNCTION custStatusLine RETURNS CHARACTER ():
  RETURN "Show detail for customer " + columnStringValue("custNum") + ".".
END.
 
FUNCTION salesStatusLine RETURNS CHARACTER ():
  RETURN "Show detail for salesrep " + columnStringValue("salesRep") + ".".
END. 
addContextFields
Adds fields to the list of fields that are used to keep context for the next request.
Location: webrep.p
Parameters:  
INPUT pcNewContextFields AS CHARACTER
List of new URL parameters to add to the list.
Returns: LOGICAL
Notes:  
*The Property should be used whenever the HTML page needs to store the context.
*The Embedded SpeedScript templates already do this on all the URLs that are generated.
addSearchCriteria
Adds SearchName and SearchValue to the data-source query.
Location: webrep.p
Parameters:  
INPUT pcColumn AS CHARACTER
The Column’s name in the data-source.
INPUT pcValue AS CHARACTER
Search value.
Returns: LOGICAL
Notes: None
addTDModifier
Adds one or more HTML attributes for the <TD> tag of a specific column.
Location: wbtable.p
Parameters:  
INPUT pcColumn AS CHARACTER
The name of the column that will use the attribute.
INPUT pcModifier AS CHARACTER
One or more HTML attributes where the value is in double quoted HTML format.
Returns: LOGICAL
Notes:  
*The pcModifier passed to this function will be added to any existing TD modifier attributes for this column. The actual data is stored in the internal TdModifier property. This is a comma‑separated list that holds entries for each of the columns in the object.
*The HTML attributes must be in the format <attribute> = “<value>”, which makes it necessary to use either single quotes around the character expression or a tilde before the double quote.
Examples:  
/* Specify a HTML background color for the custNum column */
addTDModifier ("custnum",’ align="left" bgcolor = "#FFFa00"’).
anyMessage
Determines whether there are any messages in the message queue.
Location: webrep.p
Parameters: None
Returns: LOGICAL
Notes:  
*If it returns TRUE, something has generated an error and a corresponding message.
*If there is a handle for the data-source, check both there and internally, because WebSpeed-specific errors are always stored internally.
AddMode
ADDMode property. If set to TRUE, the assignFields procedure creates a new record.
Note: Write only.
assignColumnFormat
Sets a column’s format.
Location: webrep.p
Parameters:  
INPUT pcColumn AS CHARACTER
The column’s name in the data-source.
INPUT pcFormat AS CHARACTER
The new format.
Returns: LOGICAL
Note: Currently this is not a local override when a SmartDataObject is used, unless the SmartDataObject is destroyed on each request.
assignColumnHelp
Overrides default HELP.
Location: webrep.p
Parameters:  
INPUT pcColumn AS CHARACTER
The column’s name in the data-source.
INPUT pcHelp AS CHARACTER
The new help text.
Returns: LOGICAL
Note: Currently this is not a local override when a SmartDataObject is used, unless the SmartDataObject is destroyed on each request.
assignColumnLabel
Overrides the default label.
Location: webrep.p
Parameters:  
INPUT pcColumn AS CHARACTER
The column’s name in the data-source.
INPUT pcLabel AS CHARACTER
The new label.
Returns: LOGICAL
Note: Currently this is not a local override when a SmartDataObject is used, unless the SmartDataObject is destroyed on each request.
assignColumnWidth
Unused function.
Location: webrep.p
Parameters:  
INPUT pColum AS CHARACTER
INPUT pWidth AS DECIMAL
Returns: LOGICAL
Note: Currently not in use.
assignExtentAttribute
Enables the user to override field attributes for columns with extents.
Location: webrep.p
Parameters:  
INPUT pcHandle AS HANDLE
Buffer–field handle.
INPUT piExtent AS INTEGER
Extent.
INPUT pcList AS CHARACTER
The columns attribute, used to store ALL entries if there are differences.
INPUT pcValue AS CHARACTER
The new value.
Returns: CHARACTER PRIVATE
Notes:  
*The buffer handle stores one value for help, label, and width. This is used to be able to have different attributes for each extent.
*Currently used for HELP and LABEL.
*The function is currently private. This must change if needed for valexp in wbdata.p.
assignFields
Procedure that assigns the current form buffer values in the enabled fields/objects to the SmartDataObject, the database, and/or to local object variables.
Location: html-map.p
Parameters: None
Note: Commonly used in a HTML Mapping object’s process-web-request procedure.
Examples:  
PROCEDURE process-web-request:
  IF REQUEST_METHOD = "POST":U THEN DO:
    /* Copy HTML input field values to the form buffer fields. */
    RUN inputFields.
    /* Find the datasource record that needs to be assigned. */
    RUN findRecords.
    /* Assign form buffer field values to the datasource. */
    RUN assignFields.
    /* Display datasource field values to the form buffer fields. */
    RUN displayFields.
    /* Enable form buffer fields. */
    RUN enableFields.
    /* Output the static HTML page and form buffer field values to the web
       stream. */
    RUN outputFields.
  END.
END.
assignFields
Procedure that retrieves the object’s column values from the Web and saves them in the data-source. The AddMode property determines whether the data will be saved to the current record or to a new one.
Location: wbdata.p
Parameters: None
Notes:  
*The DataColumns property defines the contents of the webObject and determines which columns to assign.
*The get–field with the name property as input parameter is used to retrieve the data value.
*This procedure is normally not called directly, but by ProcessWebRequest, which uses the values of the two Web fields MaintOption and AddMode to decide its actions. The web page usually has a set of transaction buttons that all share the name MaintOption. This procedure will be called when this value is submit. The web page will also have a hidden field, AddMode,that serves as a context keeper. This field would have been set to YES by the previous request, if the object now is in add mode.
*If the data-source is a SmartDataObject, all columns (unless the columnReadOnly property returns TRUE) will be passed along with their corresponding values using the SmartDataObject’s submitRow function.
*If the data-source is a database, this procedure starts the actual transaction when validateColumns() returns TRUE. The values retrieved from the Web will be assigned directly to the buffers by assigning the BUFFER–VALUE attribute.
*To create a new record, the AddMode property must be set to TRUE before calling this routine. When the data-source is a SmartDataObject, the SmartDataObject will be set in add mode by a call to the SmartDataObject’s addRow function. The returned RowObject ROWID will be used as the first parameter to the submitRow(). When the data-source is a database, the LockRow() function that is called within the transaction block to upgrade the lock, will create a new record when the AddMode is TRUE.
assignTDModifier
Assigns one or more HTML attributes for the <TD> tag of a specific column.
Location: wbtable.p
Parameters:  
INPUT pcColumn AS CHARACTER
The name of the column that will use the attribute.
INPUT pcModifier AS CHARACTER
One or more HTML attributes where the value is in double‑quoted HTML format.
Returns: LOGICAL
Notes:  
*The pcModifier passed to this function will overwrite any existing TD modifier attributes for this column. The actual data is stored in the internal TdModifier property. This is a comma‑separated list that holds entries for each of the columns in the object.
*The HTML attributes must be in the format <attribute> = “<value>”, which makes it necessary to use either single quotes around the character expression or a tilde before the double quote.
Examples:  
/* Specify a HTML background color for the custNum column */
assignTDModifier ("custnum",’align="left" bgcolor = "#FFFa00"’).
bufferHandle
Gets the handle of a buffer by name.
Location: html-map.p
Parameters:  
INPUT pcTableName AS CHARACTER
The name of a table in the query or object.
Returns: HANDLE
Notes: None
bufferHandle
Gets the handle of a buffer by table name.
Location: webrep.p
Parameters:  
INPUT pcTableName AS CHARACTER
The name of a table in the query.
Returns: HANDLE
Notes: None
columnDataType
Returns a column’s data type from the data-source.
Location: webrep.p
Parameters:  
INPUT pcColumn AS CHARACTER
The Column’s name in the data-source.
Returns: CHARACTER
Notes: None
columnFormat
Returns a columns format from the data-source.
Location: webrep.p
Parameters:  
INPUT pcColumn AS CHARACTER
The column’s name in the data-source.
Returns: CHARACTER
Notes: None
columnHandle
Returns the buffer handle of a column in the internal query.
Location: webrep.p
Parameters:  
INPUT pcColumn AS CHARACTER
The column’s name in the data-source.
Returns: HANDLE
Note: This function is not used if the DataSource is a SmartDataObject.
columnHelp
Return a column’s help text from the data-source.
Location: webrep.p
Parameters:  
INPUT pcColumn AS CHARACTER
The column’s name in the data-source.
Returns: CHARACTER
Notes: None
columnHTMLName
Finds the HTML field name of a column.
Location: html-map.p
Parameters:  
INPUT pcColumn AS CHARACTER
Column name.
Returns: CHARACTER
Notes: None
Examples:  
 
/* Loop through datasource columns. */
DO iFld = 1 TO NUM-ENTRIES(cColumns):
  cColName = ENTRY(iFld,cColumns).
  IF DYNAMIC-FUNCTION(’columnReadOnly’:U IN hDataSource, cColName) THEN NEXT.
 
  /* Build CHR(1)-separated list of column and HTML names. */
  ASSIGN
    cHTMLName  = DYNAMIC-FUNCTION(’columnHTMLName’:U 
      IN TARGET-PROCEDURE,cColName)
    cColString = cColString + (IF cColString = "":U THEN "":U ELSE CHR(1))
                   + cColName + CHR(1) + get-field(cHTMLName).
END.
columnHTMLName
Returns a unique valid HTML identifier/name for the column.
Location: webrep.p
Parameters:  
INPUT pcColumn AS CHARACTER
The column’s name in the data-source.
Returns: CHARACTER
Note: Replaces "." and "-" in field name so it can be used as valid HTML objects. JavaScript cannot operate on objects with dashes or periods in the name.
columnLabel
Returns the Column’s label.
Location: webrep.p
Parameters:  
INPUT pcColumn AS CHARACTER
The column’s name in the data-source.
Returns: CHARACTER
Notes: None
columnReadOnly
Returns TRUE if the column is non updatable.
Location: webrep.p
Parameters:  
INPUT pcColumn AS CHARACTER
The column’s name in the data-source.
Returns: LOGICAL
Notes: None
columnStringValue
Returns the character value of the column named in the input parameter, or the Initial Value from the data dictionary if the UpdateMode flag is set to ADD.
Location: webrep.p
Parameters:  
INPUT pcColumn AS CHARACTER
The column’s name in the data-source.
Returns: CHARACTER
Notes:  
*The UpdateMode flag is set with the call: setUpdateMode(’ADD’).
*For additional information, see the “getUpdateMode” section.
columnTable
Overrides to handle HTML mapping objects with neither query nor SDO.
Location: html-map.p
Parameters:  
INPUT pcColumn AS CHARACTER
Returns: CHARACTER
Notes: None
columnTDModifier
Returns the HTML attributes for the <TD> tag of a specific column.
Location: wbtable.p
Parameters:  
INPUT pcColumn AS CHARACTER
The name of a column.
Returns: CHARACTER
Notes:  
*This function is intended for internal use when the <TD> tags for the HTML columns are generated.
*The actual data is stored in the internal TdModifier property. This is a comma‑separated list that holds entries for each of the columns in the object.
columnValMsg
Returns the validation message of a particular column. This is the text that serves as the error message when a validation fails.
Location: wbdata.p
Parameters:  
INPUT pcColumn
The name of a column in the data-source. Can be qualified with table name and/or database name when the data-source is a database.
Returns: CHARACTER
Notes:  
*The function is data-source transparent and calls the function with the same name in the data-source when the data-source is a SmartDataObject.
*The value returned by this function will be added to the error message when validateColumns encounters a column that fails validation.
constructObject
Procedure that runs from adm–create–objects to run a SmartObject and to establish its parent and initial property settings. This is used internally to start the SmartDataObject that is the dataSource and set the instance properties.
Location: html-map.p
Parameters:  
INPUT pcProcName AS CHARACTER
Procedure name to run.
INPUT phParent AS HANDLE
Not used. INPUT pcPropList AS CHARACTER
Property list to set.
OUTPUT phObject AS HANDLE
New procedure handle.
Note: Related routine: adm–create–objects.
dataAvailable
Procedure that overrides dataAvailable.
Location: html-map.p
Parameters:  
INPUT pcMode AS CHARACTER
See query.p
Note: This is a workaround to avoid running query.p logic when this object uses a data-source.
deleteBuffer
Deletes the current record of a query’s buffer from the database. Returns TRUE when it succeeds and FALSE if it fails.
Location: wbdata.p
Parameters:  
INPUT Buffer AS HANDLE
The current record’s buffer handle.
Returns: LOGICAL
Notes:  
*This function is only used when the data-source is a database.
*It is called from deleteRow, inside of the transaction block, for each of the query buffers returned by the DeleteTables property.
*The default function uses the BUFFER–DELETE method on the passed handle.
*The main purpose of deleteBuffer is to override BUFFER–DELETE for the deletion of a particular table. This is necessary when a table has a schema validation. The BUFFER–DELETE that usually deletes dynamic buffer records does not delete these tables. The AppBuilder detail wizard will generate the necessary override function in the target–procedure’s source.
*A message will be added to the ADM 2 message queue if the delete fails.
deleteOffsets
Procedure that deletes all HTML field offset temp-table records for a HTML mapping procedure.
Location: html-map.p
Parameters: None
Note: Intended for internal use only.
deleteRow
Delete the current row from the data-source.
Location: wbdata.p
Parameters: None
Returns: LOGICAL
Notes:  
*The function is data-source transparent and calls the function with the same name when the data-source is a SmartDataObject.
*If the data-source is a SmartDataObject, it will get its RowObject ROWID and use it as an input parameter to the SmartDataObject’s deleteRow.
*If the data-source is a database, it uses the table names returned from the DeleteTables property and passes the buffer’s handle found in the query to the deleteBuffer function.
destroy
Procedure that deletes this Web object’s associated offset records in memory and this object if it was run PERSISTENT.
Location: admweb.p
Parameters: None
Notes: None
destroyDataObject
Shuts down the current data object.
Location: webrep.p
Parameters: None
Returns: LOGICAL
Notes: None
destroyObject
Procedure that destroys the procedure including the offset.
Location: admweb.p
Parameters: None
Notes: None
destroyObject
Procedure that performs any necessary cleanup before the object is destroyed.
Location: webrep.p
Parameters: None
Note: The main purpose of this procedure is not to delete the TARGET–PROCEDURE, but to perform specified cleanup when the data-source is a SmartDataObject. The SmartDataObject Instance Properties DestroyStateless and DisconnectAppserver determine whether the SmartDataObject is to be destroyed or disconnected.
disconnectObject
Procedure that disconnects from the AppServer if there is one.
Location: webrep.p
Parameters: None
Note: First disconnectObject does an explicit destroyObject on the AppServer to give that object an opportunity to clean up. This procedure is invoked from destroyObject or can be run directly to disconnect without exiting.
dispatchUtilityProc
Procedure that calls the standard utility procedure, as defined in tagmap.dat, for the current Web object.
Location: html-map.p
Parameters:  
INPUT p_method AS CHARACTER
The method procedure to run in the utility procedure (WEB.INPUT, WEB.OUTPUT).
INPUT p_field-hdl AS HANDLE
OpenEdge object handle.
INPUT p_field-data AS CHARACTER
Data to send to the procedure.
INPUT p_item-counter AS INTEGER
Radio-set item to process.
OUTPUT p_result AS LOGICAL
Indicates method ran successfully.
Note: Intended for internal use only.
displayFields
Procedure that copies SmartDataObject or database values to the displayed object and field form buffer screen values.
Location: html-map.p
Parameters: None
Note: Commonly used in process-web-request procedure.
Examples:  
PROCEDURE process-web-request:
  IF REQUEST_METHOD = "POST":U THEN DO:
    /* Copy HTML input field values to the form buffer fields. */
    RUN inputFields.
    /* Find the datasource record that needs to be assigned. */
    RUN findRecords.
    /* Assign form buffer field values to the datasource. */
    RUN assignFields.
    /* Display datasource field values to the form buffer fields. */
    RUN displayFields.
    /* Enable form buffer fields. */
    RUN enableFields.
    /* Output the static HTML page and form buffer field values to the web
       stream. */
    RUN outputFields.
  END.
END.
enableFields
Procedure that enables object and field form buffer widgets by setting their SENSITIVE attribute to TRUE.
Location: html-map.p
Parameters: None
Note: Commonly used in process–web–request procedure.
Examples:  
PROCEDURE process-web-request:
  IF REQUEST_METHOD = "POST":U THEN DO:
    /* Copy HTML input field values to the form buffer fields. */
    RUN inputFields.
    /* Find the datasource record that needs to be assigned. */
    RUN findRecords.
    /* Assign form buffer field values to the datasource. */
    RUN assignFields.
    /* Display datasource field values to the form buffer fields. */
    RUN displayFields.
    /* Enable form buffer fields. */
    RUN enableFields.
    /* Output the static HTML page and form buffer field values to the web
       stream. */
    RUN outputFields.
  END.
END.
exclusiveLockBuffer
Exclusively locks a buffer in the query.
Location: wbdata.p
Parameters:  
INPUT phBuffer AS HANDLE
Buffer being locked.
Returns: LOGICAL PRIVATE
Note: Defined as private because its only used by deleteBuffer and lockRow, and there is no check whether this is a table in the query.
extentAttribute
Returns the attribute for a variable with extent.
Location: webrep.p
Parameters:  
INPUT piExtent AS INTEGER
Extent.
INPUT pcList AS CHARACTER
The columns attribute, which is used to store ALL entries if any one is different.
Returns: CHARACTER PRIVATE
Notes:  
*The buffer handle stores one value for help, label, and so forth. To have different attributes for each extent, they are stored with delimiter CHR(3).
*Used for LABEL and HELP.
*Currently private. This must change if it is needed for ValExp.
extentValue
Returns the extent number if a field name has brackets.
Location: webrep.p
Parameters:  
INPUT pcColumn AS CHARACTER
The column’s name in the data-source.
Returns: INTEGER
Note: Returns 0 if no brackets in the name.
fetchCurrent
Procedure that repositions the data-source query to the rowids stored in the CurrentRowids property.
Location: webrep.p
Parameters: None
Notes:  
*This procedure is called from fetchNext and fetchPrev in order to re-establish context before the actual navigation takes place.
*The Property CurrentRowids is immediately set from the Web field with the same name to keep the context between each request.
fetchFirst
Procedure that repositions the data-source query to the first row.
Location: webrep.p
Parameters: None
Notes: None
fetchLast
Procedure that repositions the query of the data-source to the first row of the last page.
Location: wbtable.p
Parameters: None
Notes:  
*This procedure is an override of fetchLast in webrep.p and contains the logic necessary to move the cursor backward to the row that should appear on the top of the last page. It does this by calling the PageBackward function after it has executed SUPER to reposition to what is the TRUE last row of the data-source.
*The reason that this function is named fetchLast and not fetchLastPage to simplify the interface and conceal navigation details from the caller.
fetchLast
Procedure that repositions the data-source to the query’s last row.
Location: webrep.p
Parameters: None
Notes: None
fetchNext
Procedure that repositions the query of the data-source to the first row of the next page.
Location: wbtable.p
Parameters: None
Notes:  
*This procedure totally overrides the fetchNext in webrep.p and contains the logic necessary to move the cursor forward from the Web page’s current row to reposition to the row that appears on the top of the next page.
*The reason that this function is named fetchNext and not fetchNextPage is to simplify the interface and conceal navigation details from the caller.
fetchNext
Procedure that repositions the data-source query to the next row.
Location: webrep.p
Parameters: None
Note: The procedure re-establishes context with a call to fetchCurrent before the actual navigation takes place.
fetchPrev
Procedure that repositions the query of the data-source to the first row of the previous page.
Location: wbtable.p
Parameters: None
Note: This procedure is an override of fetchPrev in webrep.p and contains the logic necessary to move the cursor backward to the row that should appear on the top of the previous page. It does this by calling the PageBackward function after it has executed SUPER to find the current row received from the Web page, and repositions to what is the current row’s TRUE previous row. The reason that this function is named fetchPrev and not fetchPrevPage is to simplify the interface and conceal navigation details from the caller.
fetchPrev
Procedure that repositions the data-source query to the previous row.
Location: webrep.p
Parameters: None
Note: The procedure re-establishes context with a call to fetchCurrent before the actual navigation takes place.
fieldExpression
Creates an expression for a field.
Location: webrep.p
Parameters:  
INPUT pColumn AS CHARACTER
INPUT pOperator AS CHARACTER
INPUT pValue AS CHARACTER
Returns: CHARACTER
Notes: None
findRecords
Procedure that opens the SmartDataObject or database query that finds the records in this frame.
Location: html-map.p
Parameters: None
Note: Commonly used in process–web–request procedure.
Examples:  
PROCEDURE process-web-request:
  IF REQUEST_METHOD = "POST":U THEN DO:
    /* Copy HTML input field values to the form buffer fields. */
    RUN inputFields.
    /* Find the datasource record that needs to be assigned. */
    RUN findRecords.
    /* Assign form buffer field values to the datasource. */
    RUN assignFields.
    /* Display datasource field values to the form buffer fields. */
    RUN displayFields.
    /* Enable form buffer fields. */
    RUN enableFields.
    /* Output the static HTML page and form buffer field values to the 
       web stream. */
    RUN outputFields.
  END.
END.
getAttribute
Returns the value of a standard Web-related attribute.
Location: admweb.p
Parameters:  
INPUT p_attr-name AS CHARACTER
The name of the attribute. Possible names are type, version, web–state, web–timeout, web–timeout–handler, web–time–remaining. Other names can be used, provided that the special–get–attribute procedure to handle them exists in the target procedure.
Returns: CHARACTER (value of the attribute).
Notes: None
Examples:  
RUN getAttribute ("web-state").
cWebState = RETURN-VALUE.
getContextFields
Retrieves the ContextFields property (see webrprop.i), a comma‑separated list of Fields for which URL parameters are needed to keep context for subsequent requests to this object.
Location: webrep.p
Parameters: None
Returns: CHARACTER
Notes:  
*The Property should be used whenever the HTML page needs to append the context information to the URL being sent out as URL parameters. This can be seen in a Web report generated using the Report wizard in the following line:
 
ASSIGN TmpUrl= url-format(?,getContextFields(),?).
*The Embedded SpeedScript templates for both Report and Detail Web objects use this function. ExternalTables, ExternalRowIds, and Columns that are used as Foreignfields are examples of context fields.
getCurrentPage
Called by adm–create–objects. Checks the current page.
Location: html-map.p
Parameters: None
Returns: INTEGER
Note: Intended for internal use only.
getCurrentRowids
Returns the String of comma‑delimited rowids in the CurrentRowid property. (See webrprop.i.)
Location: webrep.p
Parameters: None
Returns: CHARACTER
Notes:  
*The rowids stored in this property come from the URL parameter list and are requested in fetchCurrent.
*Rowids for the external tables are also stored in the CurrentRowid property. The function getTableRowids will return the rowids for the query’s original tables.
getDeleteTables
Retrieves a comma-separated list of tables to be deleted.
Location: wbdata.p
Parameters: None
Returns: CHARACTER
Note: The getTables is used if this attribute is not set.
getForeignFieldList
Retrieves the alternative list of foreign fields corresponding to the ExternalTableList.
Location: webrep.p
Parameters: None
Returns: CHARACTER
Notes: None
getFrameHandle
Returns the frame handle of the object.
Location: wbdata.p
Parameters: None
Returns: HANDLE
Notes: None
getNavigationMode
Returns the current navigation mode. NOT IN USE.
Location: webrep.p
Parameters: None
Returns: CHARACTER
Notes: Not in use.
getNextHtmlField
Procedure that reads the HTML file one line at a time, sending each line to the Web stream, up to the next HTML field definition.
Location: html-map.p
Parameters:  
INPUT-OUTPUT next-line AS CHARACTER
Full text of current line.
INPUT-OUTPUT line-no AS INTEGER
Line position counter.
INPUT-OUTPUT start-line-no AS INTEGER
Beginning field definition line.
INPUT-OUTPUT start-line-offset AS INTEGER
Beginning field definition column.
INPUT-OUTPUT end-line-no AS INTEGER
Ending field definition line.
INPUT-OUTPUT end-line-offset AS INTEGER)
Ending field definition column.
INPUT-OUTPUT field-def AS CHARACTER
Field definition between <“ and ”>.
INPUT-OUTPUT clip-bytes AS INTEGER)
Chars on line already processed.
Note: Internal use only. The field definition is extracted from the [row, column] offsets [start–line–no, start–line–offset] to [end–line–no, end–line–offset] and returned.
getQueryEmpty
Checks to verify whether or not the data source or query is empty.
Location: webrep.p
Parameters: None
Returns: LOGICAL
Notes: None
getQueryWhere
Gets the current WHERE clause for the query.
Location: webrep.p
Parameters: None
Returns: CHARACTER
Notes: None
getRowids
Gets the ROWID(s) of the current row or rows.
Location: webrep.p
Parameters: None
Returns: CHARACTER
Notes: None
getSearchColumns
Gets the SearchColumns property. (see webrprop.i.)
Location: webrep.p
Parameters: None
Returns: CHARACTER
Note: Contains a comma‑delimited list of columns that are used to search in the current data-source. Currently supports only one column.
getServerConnection
Returns SESSION:SERVER-CONNECTION-ID through ServerConnection property.
Location: webrep.p
Parameters: None
Returns: CHARACTER
Notes: None
getTableRowids
Retrieves a list of current rowids by using getRowids, and then uses the ExternalTables property (see webrprop.i) to remove the External Tables from the list, returning a list of rowids for only the records requested by the current object.
Location: webrep.p
Parameters: None
Returns: CHARACTER
Note: Used to pass as external rowids to a called object.
getTableRows
Returns the number of rows in the table.
Location: wbtable.p
Parameters: None
Returns: INTEGER
Notes: None
getTables
Overrides to use the property for HTML mapping with no data-source.
Location: html-map.p
Parameters: None
Returns: CHARACTER
Notes: None
getTables
Returns a comma‑delimited list of tables from which data will be retrieved, either from a SmartDataObject or database.
Location: webrep.p
Parameters: None
Returns: CHARACTER
Notes: None
getUpdateMode
Returns the value of the updateMode flag, which governs the behavior of ColumnStringValue. If updateMode is set to Add, ColumnStringValue returns initial values of a column. If updateMode is not set to Add, ColumnStringValue returns the current value of the column.
Location: webrep.p
Parameters: None
Returns: CHARACTER
Notes: None
getWebState
Returns the Web state for a Web object.
Location: admweb.p
Parameters: None
Returns: CHARACTER (Possible values are state–aware, state–less, timed–out.)
Notes: None
Examples:  
cWebState = getWebState().
getWebTimeout
Returns the timeout in minutes for a state–aware Web object.
Location: admweb.p
Parameters: None
Returns: DECIMAL (Timeout in minutes).
Notes: None
Examples:  
dWebTimeout = getWebTimeout().
getWebTimeRemaining
Returns the time remaining for a state–aware Web object.
Location: admweb.p
Parameters: None
Returns: DECIMAL (Time remaining).
Notes: None
Examples:  
dWebTimeout = getWebTimeRemaining().
getWebToHdlr
Returns the name of the Web object or procedure to run when the currently running state–aware Web object times out.
Location: admweb.p
Parameters: None
Returns: CHARACTER (Name of the object/procedure to run.)
Notes: None
Examples:  
cWebToHdlr = getWebToHdlr().
htmAssociate
Procedure that maps HTML fields to their Web object widget counterparts.
Location: html-map.p
Parameters:  
INPUT htmField AS CHARACTER
HTML field name.
INPUT wdtField AS CHARACTER
Web object field name.
INPUT widHandle AS HANDLE
Web object field handle.
Note: Internal use only. AppBuilder-maintained, read-only. The essential HTML mapping procedure.
HTMLAlert
Generates an alert-box in the HTML.
Location: webrep.p
Parameters:  
INPUT pcMessage AS CHARACTER
The message to display.
Returns: LOGICAL
Note: The message is generated with JavaScript.
HTMLColumn
Outputs the columns value within an HTML <TD> tag, including the HREF definitions to create defined hyperlinks.
Location: wbtable.p
Parameters:  
INPUT pcColumn
The name of the column to output.
Returns: LOGICAL
Note: Checks the LinkColumns property to see if any link attributes are defined. An HREF will be generated to create the hyperlink if an object is specified. If a function is defined for the status line, it will be called and the returned text will be generated in a mouse-over event. The urlLink function is called to add necessary link parameters to the HREF link.
HTMLSetFocus
Sets focus to a field in a WebPage.
Location: webrep.p
Parameters:  
INPUT pcForm AS CHARACTER
The NAME of the HTML form of the field.
INPUT pcColumn AS CHARACTER
OpenEdge column name.
Returns: LOGICAL
Notes:  
*The generated code is JavaScript.
*The columnHTMLName function returns a valid HTML field name for the passed Column.
HTMLTable
Outputs the entire HTML <TABLE>.
Location: wbtable.p
Parameters: None
Returns: LOGICAL
Notes:  
*Checks the data type of the column and adds the HTML attribute to right align decimals and integers with the help of the addTDModifier function.
*Adds labels to the HTML table if UseColumnLabels is set to TRUE.
*Calls the HTMLColumn function for each column. This is done as many times as specified in the TableRows property.
initializeObject
Procedure that sets the list of displayed and enabled objects, fields, or both.
Location: html-map.p
Parameters: None
Note: Intended for internal use only.
inputFields
Procedure that receives field input from the Web browser and populates the form buffer field values.
Location: html-map.p
Parameters: None
Note: Runs the WEB.INPUT procedure for each HTML field in the offset (.off) file. Commonly used in process–web–request procedures.
Examples:  
PROCEDURE process-web-request:
  IF REQUEST_METHOD = "POST":U THEN DO:
    /* Copy HTML input field values to the form buffer fields. */
    RUN inputFields.
    /* Find the datasource record that needs to be assigned. */
    RUN findRecords.
    /* Assign form buffer field values to the datasource. */
    RUN assignFields.
    /* Display datasource field values to the form buffer fields. */
    RUN displayFields.
    /* Enable form buffer fields. */
    RUN enableFields.
    /* Output the static HTML page and form buffer field values to the 
       web stream. */
    RUN outputFields.
  END.
END.
joinExternalTables
Adds external tables to the buffers in the database query.
Location: webrep.p
Parameters:  
INPUT pcTables AS CHARACTER
A comma‑separated list of tables to join.
INPUT pcRowids AS CHARACTER
The corresponding list of ROWIDS.
Returns: LOGICAL
Notes:  
There are two ways to treat a list of external tables where one or more of the tables already are in the query:
*As a default, use the corresponding ExternalRowid in the where clause in the query. All other tables are disregarded.
*If the external table list is defined in the ExternalTables attribute, disregard the tables that are in the query and join to the OTHER tables. (ExternalJoinList and ExternalWhereList already have the right number of entries.)
joinForeignFields
Finds the foreign fields to use for the passed external tables or object and creates the new query statement in the data-source. Gets the values from the Web and adds the columns and values to the query.
Location: webrep.p
Parameters:  
INPUT pcObject AS CHARACTER
A table or SmartDataObject name that has an entry in the ForeignFieldsList.
Returns: LOGICAL
Notes: None
lockRow
Locks all the records for the query or creates records for the tables in the query if the AddMode property is set to TRUE. Returns FALSE if it fails to lock the record for some reason.
Location: wbdata.p
Parameters:  
INPUT pLock AS CHARACTER
If the option begins “EXCLUSIVE” the records will be locked exclusively. Otherwise the records will be NO–LOCKed.
Returns: LOGICAL
Notes:  
*The function is only used for database data-sources.
*The function returns FALSE and adds the necessary error messages to the ADM 2 message queue if the record is unavailable or locked.
*Used internally by assignFields and deleteRow and not intended for external use.
*Also used internally to reset the lock to NO–LOCK when a transaction ends.
openQuery
Opens the database query in the data-source.
Location: webrep.p
Parameters: None
Returns: LOGICAL
Notes: None
outputFields
Procedure that replaces the tagged HTML field definition with the data values stored in the form buffer.
Location: html-map.p
Parameters: None
Note: Merges the HTML file with the results of running the WEB.OUTPUT procedure, if one exists, for each HTML field. Otherwise just the HTML field definition is output. When available, default utility procedures containing the WEB.OUTPUT procedure are run, based on HTML field type. Commonly used in process–web–request procedure.
Examples:  
PROCEDURE process-web-request:
  IF REQUEST_METHOD = "POST":U THEN DO:
    /* Copy HTML input field values to form buffer fields. */
    RUN inputFields.
    /* Find datasource record that needs to be assigned. */
    RUN findRecords.
    /* Assign form buffer field values to datasource. */
    RUN assignFields.
    /* Display datasource field values to form buffer fields. */
    RUN displayFields.
    /* Enable form buffer fields. */
    RUN enableFields.
    /* Output static HTML page and form buffer field values to web stream. */
    RUN outputFields.
  END.
END.
pageBackward
Reads the previous record from the data-source the number of times required to find the row that should be the top row in the table in order to make the current record the last record.
Location: wbtable.p
Parameters: None
Returns: LOGICAL
Notes:  
*This is all additional logic that makes fetchPrev and fetchLast override their SUPER.
*The function is called from fetchNext if the last row is encountered as fetchNext loops through the number of records specified in the TableRows property. It finds the row that should appear on the top of the next page.
processWebRequest
Procedure that processes the request from the Web. This is an override of the webrep.p version and has the additional logic necessary to handle transaction requests.
Location: wbdata.p
Parameters: None
Notes:  
*The logic in this procedure is based on the values of the two Web fields MaintOption and AddMode which are maintained on the HTML page and received as part of the web request.
*The value of the Web field AddMode is passed to the object’s AddMode property to distinguish between the creation of a new record or a save of the current.
*When MaintOption is submit, the assignFields procedure is called. When MaintOption is delete, the deleteRow function is called.
*When “MaintOption” is “submit” or “delete” the value returned from the Rowids property is set to the CurrentRowids property after the request has been executed. This property is maintained in the HTML page as a context keeper and is usually maintained by the SUPER procedure. It needs to be updated here in case the current record was deleted or a new record has become the current.
*The procedure has logic to deal with the case of an empty query. It changes the mode of an object to Add by assigning the UpdateMode property’s value to Add. This change is accompanied by an addMessage call that results in a corresponding message being generated in the HTML page.
processWebRequest
Procedure that processes the request from the Web. This is an override of the webrep.p version and contains additional logic to be able to produce an HTML page with several rows in a table.
Location: wbtable.p
Parameters: None
Notes:  
*The actual HTML page is generated in the HTMLTable function.
*Because the object is read-only it does not go into add mode when the query is empty. IN this case, an error message is added to the ADM 2 message queue.
*The procedure ends with a destroyObject call, which is important when the data-source is a SmartDataObject, even if the TARGET–PROCEDURE is not run persistently. The reason is that destroyObject might destroy the SmartDataObject and/or disconnect any AppServer connection depending on the Instance Properties of the SmartDataObject.
processWebRequest
Procedure that processes the submitted request from the Web.
Location: webrep.p
Parameters: None
Notes:  
*The following Web data are retrieved with get–field:
*CurrentRowids — A list of the rowids that are currently in use for this object on the Web.
*Navigate — Next,Prev,First,Last,Search.
*Maintoption — Add,Delete,Submit.
*SearchValue — Use when Navigate = Search.
*ExternalObjects — Data-source objects to join to (comma separated).
*ExternalTables — Tables to join to (comma separated).
*ExternalRowids — ROWIDs that correspond to ExternalTables ROWIDs (comma separated).
*After the data-source query has been manipulated according to the received Web data and other properties, the data-source query is opened.
*If this is a search and the query is empty, the query is reopened and a message is added to the ADM 2 message queue to inform the user that no data was found.
*The last action that is performed is to set the CurrentRowids property from the Rowids property. This must be done last because the property is used in navigation and because, to keep context for the next request, the property must reflect the new current record as it is going to be passed back to the Web page.
readOffsets
Procedure wrapper that wraps a procedure that reads the HTML mapping offset file and populates internal AppBuilder temp-tables.
Location: html-map.p
Parameters:  
INPUT cWebFile AS CHARACTER
Name of offset file.
Note: Internal use only.
removeEntry
Removes an entry from a list.
Location: webrep.p
Parameters:  
INPUT pNum AS INTEGER
INPUT pList AS CHARACTER
Returns: CHARACTER PRIVATE
Notes:  
*PRIVATE, not recommended for use.
*Delimiter is always comma.
reOpenQuery
Resets the data-source query to its original state.
Location: webrep.p
Parameters: None
Returns: LOGICAL
Note: This is the state after context has been reset, but before a search or query has been performed.
rowidExpression
Creates ROWID expression for dynamic query Rowid(table) = to–rowid(rowidchar).
Location: webrep.p
Parameters:  
INPUT pcBuffer AS CHARACTER
Buffer name in the query.
INPUT pcRowid AS CHARACTER
STRING of the Rowid.
Returns: CHARACTER PRIVATE
Notes: None
setAddMode
Sets the ADDMode property. If set to TRUE, the assignFields procedure will create a new record.
Location: wbdata.p
Parameters:  
INPUT plAdd AS LOGICAL
The new value for the property.
Returns: LOGICAL
Notes: None
setAppService
Stores the AppService in which the SmartDataObject is to be started. This routine should be called before startDataObject. If the datasource is valid it must be disconnected it if it is connected to a different partition.
Location: webrep.p
Parameters:  
INPUT pAppService AS CHARACTER
The AppService in which the SDO will start.
Returns: LOGICAL
Note: This value will be passed to the SDO before initialization.
set-attribute-list
Accepts the value of the complete object attribute list and runs procedures to set individual attributes.
Location: admweb.p
Parameters:  
INPUT p-attr-list AS CHARACTER
A comma-separated attribute list with the format name=value. Typical attributes are web–timeout, web–state, and web–timeout–handler. In addition, other names can be used provided that the special–get–attribute procedure to handle them exists in the target procedure.
Returns: None
Note: Not all attributes are settable. Those that are a part of an event such as enable/disable (which set ENABLED on/off) or hide/view (which set HIDDEN on/off), can be queried through getAttribute, but are read-only.
Examples:  
RUN set-attribute-list ("web-state=persistent, web-timeout=60").
setBuffers
Sets the Buffers property (see webrprop.i), a comma‑separated list of database tables (not SmartDataObject) to be retrieved by this object.
Location: webrep.p
Parameters:  
INPUT pcTables AS CHARACTER
Tables to use in the database query.
Returns: LOGICAL
Note: This will clear all previously defined buffers.
setColumns
Sets the DataColumns property (see webprop.i), a comma‑separated list of database tables (not SmartDataObject) to be retrieved by this object.
Location: webrep.p
Parameters:  
INPUT pcColumns AS CHARACTER
A comma‑separated list of column names.
Returns: LOGICAL
Note: The function is named setColumns instead of setDataColumns for backwards compatibility.
setContextFields
Sets the ContextFields property (see webrprop.i), a comma‑separated list of fields for which URL parameters are needed to keep context for subsequent requests to this object.
Location: webrep.p
Parameters:  
INPUT pcContextfield AS CHARACTER
The new property.
Returns: LOGICAL
Note: Use addContextFields to add to the list.
setCurrentRowids
Sets the String of comma‑delimited rowids in the CurrentRowid property that will be used by fetchCurrent. (See webrprop.i.)
Location: webrep.p
Parameters:  
INPUT pcRowids AS CHARACTER
A list of ROWIDS.
Returns: LOGICAL
Notes:  
*Typically this would be set from a URL parameter or hidden field.
*The purpose of this property is to store the context of the current record received from the Web once, so that it only needs to RUN fetchCurrent whenever it is needed.
setDeleteTables
Stores a comma-separated list of tables to be deleted.
Location: wbdata.p
Parameters:  
INPUT pcDeleteTables AS CHARACTER
Returns: LOGICAL
Notes:  
*This can be used to delete only one of the joined tables, it can also be useful to define the sequence of deletion.
*The empty string is treated as a "*": if the argument is a blank, then the deleteRow() will delete all the tables in the query.
setExternalJoinList
Sets the ExternalJoinList property (see webrprop.i), a comma‑separated list of URL parameters that are needed to join an external table (supplied by the ExternalTables URL parameter) to retrieve data for this request. In report and detail Web objects, this is specified on the External Tables and Objects Page in the QueryBuilder.
Location: webrep.p
Parameters:  
INPUT pcExternalJoinList AS CHARACTER
A pipe ( | )‑separated list of OF phrases.
Returns: LOGICAL
Notes: None
Examples:  
 
/*This example is from a report web object that is looking for an 
  external table of customer, and will present orders, orderlines and
  items based on the ExternalJoinlist as shown.*/
 
setExternalJoinList(’Order.CustNum = Customer.CustNum,OF Order,OF OrderLine’).
setExternalTableList
Sets the ExternalTableList property (see webrprop.i), a pipe‑separated list of comma-separated lists of External Tables that might be used to retrieve data for this request. In report and detail Web objects, this is specified on the External Tables and Objects Page in the QueryBuilder.
Location: webrep.p
Parameters:  
INPUT pcExternalTableList AS CHARACTER
A pipe ( | )‑separated list of comma‑separated tables.
Returns: LOGICAL
Note: The ExternalJoinList and ExternalWhereList and/or ForeignFieldList have corresponding entries.
Examples:  
/* If you have a report of orders called reord.html you might call that report
   from any of the following types of objects:
 
   Objects that provide ExternalTables=customer in the URL, along with
   information (rowid or foreign fields) that allow this report to retrieve
   only orders for a particular customer.
 
   Objects that provide ExternalTables=salesrep,customer in the URL, along
   with information (rowids or foreign fields) that allow this report to
   retrieve only orders for a particular customer sold by a particular
   salesrep.
 
   Objects that provide ExternalTables=salesrep in the URL, along with 
   information (rowid or foreign fields) that allow this report to retrieve
   only orders sold by a particular salesrep.
 
   To allow external joins from any of these types of web objects, you would
   use the following call to setExternalTables: */
 
   setExternalTableList (’customer|salesrep,customer|salesrep’).
 
/* setForeignFieldList, setExternalJoinList and setExternalWhereList have 
   corresponding pipe-delimited entries such as the following: */
 
setExternalJoinList
   (’OF customer|Order.CustNum = Customer.CustNum AND
   Order.SalesRep = Salesrep|Order.SalesRep = Salesrep’).
setForeignFieldList (’custnum|salesrep,custnum|salesrep’).
setExternalWhereList (’|Order.PromiseDate < 12/12/99|’).
setExternalTables
Sets the ExternalTables property (see webrprop.i), a comma‑separated list of the current List of ExternalTables to use to retrieve data for this request.
Location: webrep.p
Parameters:  
INPUT pcExternalTables AS CHARACTER
A comma‑separated list of table names.
Returns: LOGICAL
Notes: None
setExternalWhereList
Sets the ExternalWhereList property (see webrprop.i), which contains an optional pipe‑separated list of WHERE clause field expressions that correspond to the ExternalTableList Property.
Location: webrep.p
Parameters:  
INPUT pcExternalWhereList AS CHARACTER
A pipe ( | )‑separated list of field expressions.
Returns: LOGICAL
Notes:  
*The expressions are defined when the QueryBuilder is called from the External Tables and Object page of Wizards for Embedded SpeedScript objects (report and detail objects).
*WHERE clauses that are set with the Where radio-set in the Edit Join query builder page on the External Tables and Objects Page of the Report and Detail Wizard are stored in this property.
*WHERE clauses that are in the ExternalJoinList are merged with the clauses in the ExternalWhereList Property. This is useful in cases in which WHERE clauses that reference more than one table need to be built, such as the following:
 
EACH Order WHERE Order.CustNum = Customer.CustNum
  AND Order.SalesRep = Salesrep.SalesRep NO-LOCK INDEXED-REPOSITION
setForeignFieldList
Sets the ForeignFieldList property (see webrprop.i), a pipe (|)‑separated list of comma‑separated lists of the use to format URL parameters to pass to the next Web object.
Location: webrep.p
Parameters:  
INPUT pcForeignFieldList AS CHARACTER
Returns: LOGICAL
Notes: None
setFrameHandle
Stores the handle of the frame.
Location: wbdata.p
Parameters:  
INPUT pHdl AS HANDLE
Returns: LOGICAL
Notes: None
setLinkColumns
Stores the columns that have hyperlinks as a comma‑separated list in the LinkURLs property (see wbtaprop.i).
Location: wbtable.p
Parameters:  
INPUT pLinkColumns AS CHARACTER
The comma‑separated list of columns.
Returns: LOGICAL
Notes: None
Examples:  
 
setLinkColumns ("custnum,salesrep")
setLinkColumns
Stores a comma‑separated list of columns that have hyperlinks.
Location: webrep.p
Parameters:  
INPUT pcLinkColumns AS CHARACTER
A comma‑separated list of column names.
Returns: LOGICAL
Notes: None
setQueryWhere
Prepares the query with a new OPEN QUERY statement or a new expression.
Location: webrep.p
Parameters:  
INPUT pcMode AS CHARACTER
The new WHERE clause or expression.
Returns: LOGICAL
Notes: None
setSearchColumns
Stores the SearchColumns value. (Currently one.)
Location: webrep.p
Parameters:  
INPUT pcSearchColumns AS CHARACTER
A column name in the data-source.
Returns: LOGICAL
Notes: None
setServerConnection
Sets SERVER_CONNECTION_ID property from SESSION:SERVER-CONNECTION-ID.
Location: webrep.p
Parameters: None
Returns: LOGICAL
Notes: None
setTableModifier
Stores the Specified HTML attributes for the <table> tag in TableModifier property (see wbtaprop.i).
Location: wbtable.p
Parameters:  
INPUT pTableModifier AS CHARACTER
One or more HTML attributes that will be used in the TABLE tag.
Returns: LOGICAL
Note: The Embedded SpeedScript (.htm) files created by the Report wizard show examples of this function call in use.
Examples:  
setTableModifier(’ border="2" cellspacing=10’)
setTableRows
Stores the specified number of rows for the HTML table in TableRows property (see wbtaprop.i).
Location: wbtable.p
Parameters:  
INPUT PRows AS INTEGER
Number of rows to display in the HTML page.
Returns: INTEGER
Note: The Embedded SpeedScript (.htm) files created by the Report wizard show examples of this function call in use.
Examples:  
setTableRows(10)
setUpdateMode
Sets the value of the updateMode flag, which governs the behavior of ColumnStringValue. If updateMode is set to Add, ColumnStringValue returns initial values of a column. If updateMode is not set to Add, ColumnStringValue returns the current value of the column.
Location: webrep.p
Parameters:  
INPUT pcMode AS CHARACTER
Either yes or no.
Returns: LOGICAL
Note: This call is used in processWebRequest in web objects created using the report and detail wizards. In these objects, the hidden field AddMode is set to the value of UpdateMode when a page is sent to the WebBrowser, which is detected when the WebPage is returned.
setUseColumnLabels
Stores a logical specifying whether to use column labels for the HTML table in UseColumnLabels property (see wbtaprop.i).
Location: wbtable.p
Parameters:  
INPUT pUseLabels AS LOGICAL
Returns: LOGICAL
Note: This is using the LABEL and not the COLUMN–LABEL of the field. (There is no logic to take care of the ! in column–labels).
Examples:  
 
setUseColumnLabels(no)
setWebState
Sets the Web state to state–aware and the timeout for Web objects.
Location: admweb.p
Parameters:  
INPUT pdWebTimeout AS DECIMAL
The number of minutes to remain state–aware.
Returns: LOGICAL
Notes: None
Examples:  
lReturn = setWebState(5.0).
setWebToHdlr
Sets the name of the Web object or procedure to run when the currently running state–aware Web object times out.
Location: admweb.p
Parameters:  
INPUT pcWebToHdlr CHARACTER
The Web-object name.
Returns: LOGICAL
Note: Web object must be on the Agent’s PROPATH.
Examples:  
lReturn = setWebToHdlr("mytohdlr.w").
showDataMessages
Runs fetchMessages to retrieve all data-related messages (normally database update-related error messages) and calls the HTMLAlert function to show them in an alert box on the Web.
Location: webrep.p
Parameters: None
Returns: CHARACTER
Notes:  
*Returns the name of the field (if any) from the first error message, to allow the caller to use it to position the cursor.
*This procedure expects to receive back a single string from fetchMessages with one or more messages delimited by CHR(3), and within each message the message text, field name (or blank) + a table name (or blank), delimited by CHR(4), if present.
startDataObject
Starts or connects to the SmartDataObject. If the AppService attribute is set in this object, it must also be set in the SmartDataObject before that SmartDataObject is initialized.
Location: webrep.p
Parameters:  
INPUT pcDataSource AS CHARACTER
Procedure name of the SmartDataObject to be started (for example, dcust.w).
Returns: LOGICAL
Note: The properties ”OpenOnInit”,”CheckLastOnOpen” and ”RebuildOnRepos” are always set to TRUE.
timingOut
Procedure that sets the Web state to timed–out for a Web object.
Location: admweb.p
Parameters: None
Note: RUN timingOut is equivalent to setWebState (0).
urlJoinParams
Generate the URL parameter to use as join information for a linked object.
Location: webrep.p
Parameters:  
INPUT pcJoinParam AS CHARACTER
Specifies which parameters must be added to the URL in order to join this data-source to the linked object’s data-source. The following are the valid values for this parameter:
*ROWID specifies that record information should be passed as rowids in the ExternalRowids URL parameter (only when using database as data-source).
*A comma‑separated list of column names; for example, "custnum,state,salesrep".
*Blank. No link information is needed.
Returns: CHARACTER
Notes:  
*This is called from urlLink with the correct entry from the CHR(3)‑delimited JoinLinks attribute.
*Add ”?” as the last entry to the parameter to specify that the first parameter should be separated with ”?” (the FIRST URL parameter).
urlLink
Returns the necessary URL parameters to pass record information to a linked object.
Location: webrep.p
Parameters:  
INPUT pcWebObject AS CHARACTER
The object to call (can have URL parameters).
INPUT pcJoinParam AS CHARACTER
Specifies which parameters must be added to the URL in order to join this data-source to the linked object’s data-source. The following are the valid values for this parameter:
*ROWID specifies that record information should be passed as rowids in the ExternalRowids URL parameter (only when using database as data-source).
*A comma‑separated list of column names; for example, "custnum,state,salesrep".
*Blank. No link information is needed.
Returns: CHARACTER
Notes: None
validateColumns
Returns TRUE if all of the database columns in the optionally defined frame are validated. The frame is generated specifically for this purpose.
Location: wbdata.p
Parameters: None
Returns: LOGICAL
Notes:  
*The function is only used when the data-source is a database.
*The Embedded SpeedScript detail wizard optionally generates a frame containing all the database columns that have been specified to inherit data dictionary validation. This function does the actual parsing and validation of the database columns in that frame.
*The function retrieves the actual values to validate from the Web unless it finds fields in the EnabledFields Property. In that case, it assumes that the values already have been moved to the frame. The intention of this logic is to support HTML mapping objects.
*The HTML mapping object does not call this default. The use of EnabledFields to indicate whether the values should be retrieved from the Web or already are in the frame is very likely to change.
validateColumnValue
Verifies whether or not a value is the correct data type.
Location: webrep.p
Parameters:  
INPUT pcColumn AS CHARACTER
The column’s name in the data-source.
INPUT pcValue AS CHARACTER
Value to validate.
Returns: LOGICAL
Note: Returns TRUE if Column Value is valid, FALSE if it is not.