<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="pdAPI.xsl"?>
<PD_METHODS>
<COMMENT>
---------- PD_METHODS_API
</COMMENT>

<METHOD>

<FILE_NAME>pdAddRow.js</FILE_NAME>

<FUNCTION>pdAddRow()</FUNCTION>

<ARG_NAMES>strPDtableName, arrPDvalues</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>N/A or void</RETURN>     

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>PDtable not found.</DESC></EXC>
    <EXC><CODE>-8</CODE><DESC>Number of array elements does not match number of PDnames.</DESC></EXC>
    <EXC><CODE>-111</CODE><DESC>pdTable structure does not match pdModel structure.</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdCheckArgument.js</FILE_NAME>

<FUNCTION>pdCheckArgument()</FUNCTION>

<ARG_NAMES>varToBeChecked, strPDmethodName</ARG_NAMES>

<INTERACTION>Utilities</INTERACTION>

<EXPOSED>no</EXPOSED>

<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-20</CODE><DESC>Defined variable not passed to method</DESC></EXC>

</EXCEPTIONS>

</METHOD>            

<METHOD>

<FILE_NAME>pdCheckArray.js</FILE_NAME>

<FUNCTION>pdCheckArray()</FUNCTION>

<ARG_NAMES>arrToBeChecked, strMethodName</ARG_NAMES>

<INTERACTION>Utilities</INTERACTION>

<EXPOSED>no</EXPOSED>

<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-33</CODE><DESC>Variable passed to method is not an array</DESC></EXC>
    <EXC><CODE>-34</CODE><DESC>Two dimentional array passed to method</DESC></EXC>
    <EXC><CODE>-35</CODE><DESC>Associative array passed to method</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdCheckDuplicates.js</FILE_NAME>

<FUNCTION>pdCheckDuplicates()</FUNCTION>

<ARG_NAMES>objDBobj, strName, strValue</ARG_NAMES>

<INTERACTION>Utilities</INTERACTION>

<EXPOSED>no</EXPOSED>

<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-5</CODE><DESC>More than one match found.</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdCheckNumber.js</FILE_NAME>

<FUNCTION>pdCheckNumber()</FUNCTION>

<ARG_NAMES>numToBeChecked, strMethodName</ARG_NAMES>

<INTERACTION>Utilities</INTERACTION>

<EXPOSED>no</EXPOSED>

<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-32</CODE><DESC>Invalid number (primitive) passed to method</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdCheckString.js</FILE_NAME>

<FUNCTION>pdCheckString()</FUNCTION>

<ARG_NAMES>strToBeChecked, strMethodName</ARG_NAMES>

<INTERACTION>Utilities</INTERACTION>

<EXPOSED>no</EXPOSED>

<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-31</CODE><DESC>Invalid string (primitive) passed to method</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdCommit.js</FILE_NAME>

<FUNCTION>pdCommit()</FUNCTION>

<ARG_NAMES>objDBobj, strPDtableName</ARG_NAMES>

<INTERACTION>Binder Object</INTERACTION>

<EXPOSED>no</EXPOSED>

<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>PDtable not found.</DESC></EXC>
    <EXC><CODE>-12</CODE><DESC>ActiveX Object not defined.</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdCountAllRows.js</FILE_NAME>

<FUNCTION>pdCountAllRows()</FUNCTION>

<ARG_NAMES>strPDtableName</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>number</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>PDtable not found</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdCountRowsByKey.js</FILE_NAME>

<FUNCTION>pdCountRowsByKey()</FUNCTION>

<ARG_NAMES>strPDtableName, strPDcolumnKey, strPDvalueKey</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>number</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>PDtable not found.</DESC></EXC>
    <EXC><CODE>-3</CODE><DESC>PDname not found.</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdCreateFormStoreName.js</FILE_NAME>

<FUNCTION>pdCreateFormStoreName()</FUNCTION>

<ARG_NAMES>strHTMLdocName, strFormId</ARG_NAMES>

<INTERACTION>Utilities</INTERACTION>

<EXPOSED>no</EXPOSED>

<RETURN>string</RETURN>

<EXCEPTIONS>

    <EXC><CODE></CODE><DESC></DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdCreateObject.js</FILE_NAME>

<FUNCTION>pdCreateObject()</FUNCTION>

<ARG_NAMES>strPDtableName, strPDcolumnName, arrPDvalue</ARG_NAMES>

<INTERACTION>Utilities</INTERACTION>

<EXPOSED>no</EXPOSED>

<RETURN>ActiveX Object</RETURN>

<EXCEPTIONS>

    <EXC><CODE></CODE><DESC></DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdDeleteAllRows.js</FILE_NAME>

<FUNCTION>pdDeleteAllRows()</FUNCTION>

<ARG_NAMES>strPDtableName</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>PDtable not found</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdDeleteRowByKey.js</FILE_NAME>

<FUNCTION>pdDeleteRowByKey()</FUNCTION>

<ARG_NAMES>strPDtableName, strPDcolumnKey, strPDvalueKey</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>PDtable not found</DESC></EXC>
    <EXC><CODE>-3</CODE><DESC>PDname not found</DESC></EXC>
    <EXC><CODE>-4</CODE><DESC>No matches found</DESC></EXC>
    <EXC><CODE>-5</CODE><DESC>More than one match found</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdDeleteRowByNum.js</FILE_NAME>

<FUNCTION>pdDeleteRowByNum()</FUNCTION>

<ARG_NAMES>strPDtableName, numPDrow</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>N/A or void</RETURN>       

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>PDtable not found</DESC></EXC>
    <EXC><CODE>-6</CODE><DESC>PDrow number not found</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdDeleteRowsByKey.js</FILE_NAME>

<FUNCTION>pdDeleteRowsByKey()</FUNCTION>

<ARG_NAMES>strPDtableName, strPDcolumnKey, strPDvalueKey</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>PDtable not found.</DESC></EXC>
    <EXC><CODE>-3</CODE><DESC>PDname not found.</DESC></EXC>
    <EXC><CODE>-4</CODE><DESC>No matches found.</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdFindRowNumByKey.js</FILE_NAME>

<FUNCTION>pdFindRowNumByKey()</FUNCTION>

<ARG_NAMES>strPDtableName, strPDcolumnKey, strPDvalueKey</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>row number or -0.5 if none found</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>PDtable not found.</DESC></EXC>
    <EXC><CODE>-3</CODE><DESC>PDname not found.</DESC></EXC>
    <EXC><CODE>-5</CODE><DESC>More than one match found.</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdFindRowNumsByKey.js</FILE_NAME>

<FUNCTION>pdFindRowNumsByKey()</FUNCTION>

<ARG_NAMES>strPDtableName, strPDcolumnKey, strPDvalueKey</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>arrRowNums</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>PDtable not found</DESC></EXC>
    <EXC><CODE>-3</CODE><DESC>PDcolumn not found</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdGetAttributeNames.js</FILE_NAME>

<FUNCTION>pdGetAttributeNames()</FUNCTION>

<ARG_NAMES>strBinderId</ARG_NAMES>

<INTERACTION>Utilities</INTERACTION>

<EXPOSED>no</EXPOSED>

<RETURN>Array</RETURN>

<EXCEPTIONS>

    <EXC><CODE></CODE><DESC></DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdGetHTMLdocName.js</FILE_NAME>

<FUNCTION>pdGetHTMLdocName()</FUNCTION>

<ARG_NAMES></ARG_NAMES>

<INTERACTION>Utilities</INTERACTION>

<EXPOSED>no</EXPOSED>

<RETURN>string</RETURN>

<EXCEPTIONS>

    <EXC><CODE></CODE><DESC></DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdInitialize.js</FILE_NAME>

<FUNCTION>pdInitialize()</FUNCTION>

<ARG_NAMES>strPDtableName</ARG_NAMES>

<INTERACTION>PDtable</INTERACTION>

<EXPOSED>no</EXPOSED>

<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE></CODE><DESC></DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdInstantiate.js</FILE_NAME>

<FUNCTION>pdInstantiate()</FUNCTION>

<ARG_NAMES>strPDtableName</ARG_NAMES>

<INTERACTION>Binder Object</INTERACTION>

<EXPOSED>no</EXPOSED>

<RETURN>AxObj</RETURN>

<EXCEPTIONS>

    <EXC><CODE></CODE><DESC></DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdLoadFromStore.js</FILE_NAME>

<FUNCTION>pdLoadFromStore()</FUNCTION>

<ARG_NAMES>strPDtableName, strBinderId</ARG_NAMES>

<INTERACTION>Binder Object</INTERACTION>

<EXPOSED>no</EXPOSED>

<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>PDtable not found</DESC></EXC>
    <EXC><CODE>-9</CODE><DESC>Binder Div element ID attribute not found</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdMethodTemplate.js</FILE_NAME>

<FUNCTION>pdMethodTemplate()</FUNCTION>

<ARG_NAMES>strArgument1, numArgument2</ARG_NAMES>

<INTERACTION>Utilities</INTERACTION>

<EXPOSED>no</EXPOSED>

<RETURN>Boolean</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-x</CODE><DESC>Description matches pd_methods.html document</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdModifyRowByKey.js</FILE_NAME>

<FUNCTION>pdModifyRowByKey()</FUNCTION>

<ARG_NAMES>strPDtableName, strPDcolumnKey, strPDvalueKey, arrPDnewValues</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>PDtable not found</DESC></EXC>
    <EXC><CODE>-3</CODE><DESC>PD column not found</DESC></EXC>
    <EXC><CODE>-4</CODE><DESC>No matches found</DESC></EXC>
    <EXC><CODE>-5</CODE><DESC>More than one match found</DESC></EXC>
    <EXC><CODE>-8</CODE><DESC>Number of array elements does not match number of columns</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdModifyRowByNum.js</FILE_NAME>

<FUNCTION>pdModyfyRowByNum()</FUNCTION>

<ARG_NAMES>strPDtableName, numPDrow, arrPDnewValues</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>PDtable not found</DESC></EXC>
    <EXC><CODE>-6</CODE><DESC>PDrow number not found</DESC></EXC>
    <EXC><CODE>-8</CODE><DESC>Number of array elements does not match number of columns</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdModifyRowsByKey.js</FILE_NAME>

<FUNCTION>pdModifyRowsByKey()</FUNCTION>

<ARG_NAMES>strPDtableName, strPDcolumnKey, strPDvalueKey, arrPDnewValues</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>PDtable not found</DESC></EXC>
    <EXC><CODE>-3</CODE><DESC>pdColumn not found</DESC></EXC>
    <EXC><CODE>-4</CODE><DESC>No matches found</DESC></EXC>
    <EXC><CODE>-8</CODE><DESC>Number of array elements does not match number of columns</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdModifyValByKey.js</FILE_NAME>

<FUNCTION>pdModifyValByKey()</FUNCTION>

<ARG_NAMES>strPDtableName, strPDcolumnKey, strPDvalueKey, strPDnewValue</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>PDtable not found</DESC></EXC>
    <EXC><CODE>-3</CODE><DESC>PDcolumn not found</DESC></EXC>
    <EXC><CODE>-4</CODE><DESC>No matches found</DESC></EXC>
    <EXC><CODE>-5</CODE><DESC>More than one match found</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdModifyValByKeyAndCol.js</FILE_NAME>

<FUNCTION>pdModifyValByKeyAndCol()</FUNCTION>

<ARG_NAMES>strPDtableName, strPDcolumnKey, strPDvalueKey, strPDcolToMod, strPDnewValue</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>PDtable not found</DESC></EXC>
    <EXC><CODE>-3</CODE><DESC>PDcolumn not found</DESC></EXC>
    <EXC><CODE>-4</CODE><DESC>No matches found</DESC></EXC>
    <EXC><CODE>-5</CODE><DESC>More than one match found</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdModifyValByRowNumAndCol.js</FILE_NAME>

<FUNCTION>pdModifyValByRowNumAndCol()</FUNCTION>

<ARG_NAMES>strPDtableName, numPDrow, strPDcolumnName, strPDnewValue</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>PDtable not found</DESC></EXC>
    <EXC><CODE>-3</CODE><DESC>PDcolumn not found</DESC></EXC>
    <EXC><CODE>-6</CODE><DESC>PDrow number not found</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdModifyValsByCol.js</FILE_NAME>

<FUNCTION>pdModifyValsByCol()</FUNCTION>

<ARG_NAMES>strPDtableName, strPDcolumnName, strPDnewValue</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>PDtable not found</DESC></EXC>
    <EXC><CODE>-3</CODE><DESC>PDcolumn not found</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdModifyValsByKey.js</FILE_NAME>

<FUNCTION>pdModifyValsByKey()</FUNCTION>

<ARG_NAMES>strPDtableName, strPDcolumnKey, strPDvalueKey, strPDnewValue</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>PDtable not found</DESC></EXC>
    <EXC><CODE>-3</CODE><DESC>PDcolumn not found</DESC></EXC>
    <EXC><CODE>-4</CODE><DESC>No matches found</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdModifyValsByKeyAndCol.js</FILE_NAME>

<FUNCTION>pdModifyValsByKeyAndCol()</FUNCTION>

<ARG_NAMES>strPDtableName, strPDcolumnKey, strPDvalueKey, strPDcolToMod, strPDnewValue</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>PDtable not found</DESC></EXC>
    <EXC><CODE>-3</CODE><DESC>PDcolumn not found</DESC></EXC>
    <EXC><CODE>-4</CODE><DESC>No matches found</DESC></EXC>
    <EXC><CODE>-5</CODE><DESC>More than one match found</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdProcessMultipleSelect.js</FILE_NAME>

<FUNCTION>pdProcessMultipleSelect()</FUNCTION>

<ARG_NAMES>objFormElement</ARG_NAMES>

<INTERACTION>Utilities</INTERACTION>

<EXPOSED>no</EXPOSED>

<RETURN>objNewSelect</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-36</CODE><DESC>Object passed to method is not a multiple select.</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdReadElementContent.js</FILE_NAME>

<FUNCTION>pdReadElementContent()</FUNCTION>

<ARG_NAMES>htmIframe</ARG_NAMES>

<INTERACTION>Utilities</INTERACTION>

<EXPOSED>no</EXPOSED>

<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE></CODE><DESC></DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdReadRowByKey.js</FILE_NAME>

<FUNCTION>pdReadRowByKey()</FUNCTION>

<ARG_NAMES>strPDtableName, strPDcolumnKey, strPDvalueKey</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>Associative Array with PDcolumn/PDvalue pairs</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>PDtable not found</DESC></EXC>
    <EXC><CODE>-3</CODE><DESC>pdColumn not found</DESC></EXC>
    <EXC><CODE>-4</CODE><DESC>No matches found</DESC></EXC>
    <EXC><CODE>-5</CODE><DESC>More than one match found</DESC></EXC>

</EXCEPTIONS>                  

</METHOD>

<METHOD>

<FILE_NAME>pdReadRowByNum.js</FILE_NAME>

<FUNCTION>pdReadRowByNum()</FUNCTION>

<ARG_NAMES>strPDtableName, numPDrow</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>Associative Array with PDcolumn/PDvalue pairs</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>PDtable not found</DESC></EXC>
    <EXC><CODE>-6</CODE><DESC>PDrow number not found</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdReadRowsByKey.js</FILE_NAME>

<FUNCTION>pdReadRowsByKey()</FUNCTION>

<ARG_NAMES>strPDtableName, strPDcolumnKey, strPDvalueKey</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>Assoc. Array[][]</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>PDtable not found</DESC></EXC>
    <EXC><CODE>-3</CODE><DESC>PDcolumn not found</DESC></EXC>
    <EXC><CODE>-4</CODE><DESC>No matches found</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdReadValByKeyAndCol.js</FILE_NAME>

<FUNCTION>pdReadValByKeyAndCol()</FUNCTION>

<ARG_NAMES>strPDtableName, strPDcolumnKey, strPDvalueKey, strPDcolToRead</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>string</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>PDtable not found</DESC></EXC>
    <EXC><CODE>-3</CODE><DESC>PDcolumn not found</DESC></EXC>
    <EXC><CODE>-4</CODE><DESC>No matches found</DESC></EXC>
    <EXC><CODE>-5</CODE><DESC>More than one match found</DESC></EXC>
    <EXC><CODE>-7</CODE><DESC>PDcolumn to read not found</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdReadValByRowNumAndCol.js</FILE_NAME>

<FUNCTION>pdReadValByRowNumAndCol()</FUNCTION>

<ARG_NAMES>strPDtableName, numPDrow, strPDcolumnName</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>string</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>PDtable not found</DESC></EXC>
    <EXC><CODE>-6</CODE><DESC>PDrow number not found</DESC></EXC>
    <EXC><CODE>-7</CODE><DESC>PDcolumn to read not found</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdReadValsByCol.js</FILE_NAME>

<FUNCTION>pdReadValsByCol()</FUNCTION>

<ARG_NAMES>strPDtableName, strPDcolumnName</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>Array</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>PDtable not found</DESC></EXC>
    <EXC><CODE>-7</CODE><DESC>PDcolumn to read not found</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdReadValsByKeyAndCol.js</FILE_NAME>

<FUNCTION>pdReadValsByKeyAndCol()</FUNCTION>

<ARG_NAMES>strPDtableName, strPDcolumnKey, strPDvalueKey, strPDcolToRead</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>Array</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>PDtable not found</DESC></EXC>
    <EXC><CODE>-3</CODE><DESC>PDcolumn not found</DESC></EXC>
    <EXC><CODE>-4</CODE><DESC>No matches found</DESC></EXC>
    <EXC><CODE>-7</CODE><DESC>PDcolumn to read not found</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdRefreshBinder.js</FILE_NAME>

<FUNCTION>pdRefreshBinder()</FUNCTION>

<ARG_NAMES>strBinderId</ARG_NAMES>

<INTERACTION>Utilities</INTERACTION>

<EXPOSED>no</EXPOSED>

<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-18</CODE><DESC>Element not found.</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdRemoveAttributes.js</FILE_NAME>

<FUNCTION>pdRemoveAttributes()</FUNCTION>

<ARG_NAMES>arrAttrNames</ARG_NAMES>

<INTERACTION>Utilities</INTERACTION>

<EXPOSED>no</EXPOSED>

<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-16</CODE><DESC>Attribute does not exist.</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdSaveForLookup.js</FILE_NAME>

<FUNCTION>pdSaveForLookup()</FUNCTION>

<ARG_NAMES>strToSave</ARG_NAMES>

<INTERACTION>Utilities</INTERACTION>

<EXPOSED>no</EXPOSED>

<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-17</CODE><DESC>String passed to method must not contain spaces.</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdSaveFormValue.js</FILE_NAME>

<FUNCTION>pdSaveFormValue()</FUNCTION>

<ARG_NAMES>objElement, objBinder, strUserDataFileName</ARG_NAMES>

<INTERACTION>Form Object</INTERACTION>

<EXPOSED>no</EXPOSED>

<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE></CODE><DESC></DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdSaveToStore.js</FILE_NAME>

<FUNCTION>pdSaveToStore()</FUNCTION>

<ARG_NAMES>strPDtableName, strBinderId</ARG_NAMES>

<INTERACTION>Binder Object</INTERACTION>

<EXPOSED>no</EXPOSED>

<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-9</CODE><DESC>The page was not properly instrumented.</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdTableToDBobj.js</FILE_NAME>

<FUNCTION>pdTableToDBobj()</FUNCTION>

<ARG_NAMES>strPDtableName, *strPDtableType</ARG_NAMES>

<INTERACTION>PDtable</INTERACTION>

<EXPOSED>no</EXPOSED>

<RETURN>AxObj</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>PDtable not found.</DESC></EXC>
    <EXC><CODE>-10</CODE><DESC>Invalid file purpose.</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdTest.js</FILE_NAME>

<FUNCTION>pdTest()</FUNCTION>

<ARG_NAMES></ARG_NAMES>

<INTERACTION>Utilities</INTERACTION>


<RETURN>objWindow</RETURN>

<EXCEPTIONS>

    <EXC><CODE></CODE><DESC></DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdTransformRowByKey.js</FILE_NAME>

<FUNCTION>pdTransformRowByKey()</FUNCTION>

<ARG_NAMES>strPDtableName, strPDcolumnKey, strPDvalueKey, strHTMdivTagId, *strXSLfileName</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>File not found (XML or XSL)</DESC></EXC>
    <EXC><CODE>-3</CODE><DESC>PDcolumn not found</DESC></EXC>
    <EXC><CODE>-4</CODE><DESC>No matches found</DESC></EXC>
    <EXC><CODE>-5</CODE><DESC>More than one match found</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdTransformRowByNum.js</FILE_NAME>

<FUNCTION>pdTransformRowByNum()</FUNCTION>

<ARG_NAMES>strPDtableName, numPDrow, strHTMdivTagId, *strXSLfileName</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>File not found (XML or XSL)</DESC></EXC>
    <EXC><CODE>-6</CODE><DESC>PDrow number not found</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdTransformRowsByKey.js</FILE_NAME>

<FUNCTION>pdTransformRowsByKey()</FUNCTION>

<ARG_NAMES>strPDtableName, strPDcolumnKey, strPDvalueKey, strHTMdivTagId, *strXSLfileName</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>File not found (XML or XSL)</DESC></EXC>
    <EXC><CODE>-3</CODE><DESC>PDcolumn not found</DESC></EXC>
    <EXC><CODE>-4</CODE><DESC>No matches found</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdTransformValByKey.js</FILE_NAME>

<FUNCTION>pdTransformValByKey()</FUNCTION>

<ARG_NAMES>strPDtableName, strPDcolumnKey, strPDvalueKey, strHTMdivTagId, *strXSLfileName</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>File not found (XML or XSL)</DESC></EXC>
    <EXC><CODE>-3</CODE><DESC>PDcolumn not found</DESC></EXC>
    <EXC><CODE>-4</CODE><DESC>No matches found</DESC></EXC>
    <EXC><CODE>-5</CODE><DESC>More than one match found</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdTransformValByKeyAndCol.js</FILE_NAME>

<FUNCTION>pdTransformValByKeyAndCol()</FUNCTION>

<ARG_NAMES>strPDtableName, strPDcolumnKey, strPDvalueKey, strPDcolToTransform, strHTMdivTagId, *strXSLfileName</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>File not found (XML or XSL)</DESC></EXC>
    <EXC><CODE>-3</CODE><DESC>PDcolumn not found</DESC></EXC>
    <EXC><CODE>-4</CODE><DESC>No matches found</DESC></EXC>
    <EXC><CODE>-5</CODE><DESC>More than one match found</DESC></EXC>
    <EXC><CODE>-7</CODE><DESC>PDcolumn to transform not found</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdTransformValByRowNumAndCol.js</FILE_NAME>

<FUNCTION>pdTransformValByRowNumAndCol()</FUNCTION>

<ARG_NAMES>strPDtableName, numPdrow, strPDcolumnName, strHTMdivTagId, *strXSLfileName</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>File not found (XML or XSL)</DESC></EXC>
    <EXC><CODE>-6</CODE><DESC>PDrow number not found</DESC></EXC>
    <EXC><CODE>-7</CODE><DESC>PDcolumn to transform not found</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdTransformValsByCol.js</FILE_NAME>

<FUNCTION>pdTransformValsByCol()</FUNCTION>

<ARG_NAMES>strPDtableName, strPDcolumnName, strHTMdivTagId, *strXSLfileName</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>N/A</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>File not found (XML or XSL)</DESC></EXC>
    <EXC><CODE>-7</CODE><DESC>PDcolumn to transform not found</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdTransformValsByKeyAndCol.js</FILE_NAME>

<FUNCTION>pdTransformValsByKeyAndCol()</FUNCTION>

<ARG_NAMES>strPDtableName, strPDcolumnKey, strPDvalueKey, strPDcolToTransform, strHTMdivTagId, *strXSLfileName</ARG_NAMES>

<INTERACTION>Table Object</INTERACTION>


<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-1</CODE><DESC>File not found (XML or XSL)</DESC></EXC>
    <EXC><CODE>-3</CODE><DESC>PDcolumn not found</DESC></EXC>
    <EXC><CODE>-4</CODE><DESC>No matches found</DESC></EXC>
    <EXC><CODE>-7</CODE><DESC>PDcolumn to transform not found</DESC></EXC>

</EXCEPTIONS>

</METHOD>

<METHOD>

<FILE_NAME>pdValidatePDtable.js</FILE_NAME>

<FUNCTION>pdValidatePDtable()</FUNCTION>

<ARG_NAMES>objPDtableAxObj</ARG_NAMES>

<INTERACTION>Utilities</INTERACTION>

<EXPOSED>no</EXPOSED>

<RETURN>N/A or void</RETURN>

<EXCEPTIONS>

    <EXC><CODE>-102</CODE><DESC>Attribute not found in PDtable root element</DESC></EXC>
    <EXC><CODE>-103</CODE><DESC>Unexpected element found</DESC></EXC>
    <EXC><CODE>-105</CODE><DESC>PDrow tag names are not identical</DESC></EXC>
    <EXC><CODE>-106</CODE><DESC>Only three levels are allowed in PDtable</DESC></EXC>
    <EXC><CODE>-107</CODE><DESC>PDrow name used as PDcolumn name</DESC></EXC>
    <EXC><CODE>-108</CODE><DESC>Duplicate PDcolumn names</DESC></EXC>
    <EXC><CODE>-109</CODE><DESC>PDrow has no PDcolumns</DESC></EXC>
    <EXC><CODE>-110</CODE><DESC>PDcolumn number mismatch</DESC></EXC>

</EXCEPTIONS>

</METHOD>
</PD_METHODS>
