Tags:
tag this topic
create new tag
view all tags
---+ APPX Runtime Subroutine API _This page lists all the available API's in the current version of Appx. Various API's have been released at different times and are documented in the release notes for that release, this page lists all of them in one location. The initial set of API's was released in version 5.1._ <br />%TOC% ---+++ General Information All of these new subroutines are defined in the (---) application and begin with a period (.). They all use a standard call interface and use the same framework for returning results and reporting errors. They are grouped by name prefix so that related subroutines are grouped together by function. Data is passed into and returned from these subroutines by use of the PASS statement. Failure information is returned by use of a work field with the same name as the subroutine. This failure code field is tokenized so you can scan to see the failure reasons that can be returned. Note that the work field has a scope of 'Detached', and so will retain it's value from invocation to invocation, as well as across all invocation types. If the subroutine accepts parameters (i.e., READ, WRITE, APPEND to --- .STREAM OPEN), the parameters are case insensitive. If the subroutine has required parameters and you do not PASS the correct number of parameters, the subroutine will issue a CANCEL identifying which parameter was missing. ---++ General Subroutines ---+++ Application Routines ---++++ [[0LASubrAppBeginInitialSetup][.BEGIN INITIAL SETUP]] Changes the current application to the 'Initial Setup' phase. ---++++ [[0LASubrAppBeginLiveOpn][.BEGIN LIVE OPERATIONS]] Changes the current application to the 'Live Operations' phase. ---++++ [[0LASubrAppBeginRecovery][.BEGIN RECOVERY PROCESSING]] Changes the current application to the 'Recovery Processing' phase. ---++++ [[0LASubrAppSelectDatabase][.SELECT DATABASE]] Switches to the specified database. ---+++ Utility Routines ---++++ [[0LASubrUtilAddUser][.UTIL ADD USER]] Adds a user to the Appx User file. ---++++ [[0LASubrUtilAddHook][.UTIL ADD HOOK]] Adds a record to the Hook file. ---++++ [[0LASubrUtilCheckRbs][.UTIL CHECK RBS]] Checks the security access for the specified user when Role Based Security is used. ---++++ [[0LASubrUtilCheckSecurity][.UTIL CHECK SECURITY]] Checks the security code for the specified user. ---++++ [[0LASubrUtilChgAuxPass][.UTIL CHG AUX PASS]] Changes the Auxiliary password for the specified user. ---++++ [[0LASubrUtilChgHook][.UTIL CHG HOOK]] Changes fields on the Hook File. ---++++ [[0LASubrUtilChgUser][.UTIL CHG USER]] Changes fields on the Appx User File. ---++++ [[0LASubrUtilClearPassList][.UTIL CLEAR PASS LIST]] Clears any unfilled PASS requests. ---++++ [[0LASubrUtilCompileProc][.UTIL COMPILE PROC]] Compiles the specified Process Type/Name or Application. ---++++ [[0LASubrUtilComputeHash][.UTIL COMPUTE HASH]] Computes the SHA-2 hash value of the given string ---++++ [[0LASubrUtilDelUser][.UTIL DEL USER]] Deletes a user from the Appx User File. ---++++ [[0LASubrUtilDelHook][.UTIL DEL HOOK]] Deletes a record from the Hook File. ---++++ [[0LASubrUtilEmail][.UTIL EMAIL]] Sends an Email. ---++++ [[0LASubrUtilFieldGet][.UTIL FIELD GET]] Retrieves the value of the specified field name. ---++++ [[0LASubrUtilFieldSet][.UTIL FIELD SET]] Sets a value into the specified field name. ---++++ [[0LASubrUtilGetEmName][.UTIL GET EM NAME]] For a given Process Type/Name, returns the Em name. ---++++ [[0LASubrUtilGetHookRecords][.UTIL GET HOOK RECORDS]] Copies the engine Hook records into a temporary file for modification. ---++++ [[0LASubrUtilGetMessages][.UTIL GET MESSAGES]] Populates the --- MESSAGES file with any messages that were issued ---++++ [[0LASubrUtilKillSession][.UTIL KILL SESSION]] Cancels the specified process ---++++ [[0LASubrUtilLoadStackFile][.UTIL LOAD STACK FILE]] Loads --- STACK with the current process stack. ---++++ [[0LASubrUtilMakeDynamicKey][.UTIL MAKE DYNAMIC KEY]] Not Implemented ---++++ [[0LASubrUtilMarkSet][.UTIL MARK SET]] Marks a process so you can return to it immediately via .UTIL MARK REWIND ---++++ [[0LASubrUtilMarkRewind][.UTIL MARK REWIND]] Returns immediately to a previously marked process, closing all processes in between. ---++++ [[0LASubrUtilModeScrollBehav][.UTIL MOD SCROLL BEHAV]] This subroutine allows the user to select a record on a scrolling display by just clicking it. ---++++ [[0LASubrUtilProcssDd][.UTIL PROCESS DD]] Processes the Data Dictionary for the selected Application or File. ---++++ [[0LASubrUtilProcssQueryRec][.UTIL PROCESS QRY REC]] Writes the current record to the Query pointer file. ---++++ [[0LASubrUtilPutHookRecords][.UTIL PUT HOOK RECORDS]] Activates the hooks in the temporary file. ---++++ [[0LASubrUtilSecrRest][.UTIL SECR REST]] Restores Security codes from the archive ---++++ [[0LASubrUtilSecrSave][.UTIL SECR SAVE]] Saves Security codes to the archive ---++++ [[0LASubrUtilSleep][.UTIL SLEEP]] Pauses for the specified number of seconds. ---++++ [[0LASubrUtilSleepWithTimer][.UTIL SLEEP WITH TIMER]] Pauses for the specified number of seconds with a countdown timer. ---++++ [[0LASubrUtilSubrClose][.UTIL SUBR CLOSE]] Closes the subroutine you created using .UTIL SUBR CREATE ---++++ [[0LASubrUtilSubrCreate][.UTIL SUBR CREATE]] Adds a subroutine to the specified application. ---++++ [[0LASubrUtilSubrDelete][.UTIL SUBR DELETE]] Deletes a subroutine from the application. ---++++ [[0LASubrUtilSubrWriteIlf][.UTIL SUBR WRITE ILF]] Writes ILF code to a subroutine in the Application. ---++++ [[0LASubrUtilSwitchUser][.UTIL SWITCH USER]] Changes to a different user. ---++++ [[0LASubrUtilTimeoutExit][.UTIL TIMEOUT EXIT]] Exits or logout a user after a set timeout period. ---++++ [[0LASubrUtilTimeoutSet][.UTIL TIMEOUT SET]] Sets the keyboard timeout value. ---++++ [[0LAUtilUpdateDocument][.UTIL UPDATE DOCUMENT]] Update process documentation via ILF ---+++ XML Processing Routines ---++++ [[0DXSubrXmlImport][.XML IMPORT]] Processes an XML file and optionally imports it. ---++++ [[0DXSubrXmlPurge][.XML PURGE]] Deletes the work files used by a particular import session. ---++++ [[0LASubrXmlWriterOpen][.XML WRITER OPEN]] Creates and opens an XML file on the server and adds <?xml?> to it. ---++++ [[0LASubrXmlWriterClose][.XML WRITER CLOSE]] Closes an XML file and frees up memory used by XML Writer. ---++++ [[0LASubrXmlWriterElemStart][.XML WRITER ELEM START]] Opens an element in an XML file. ---++++ [[0LASubrXmlWriterElemEnd][.XML WRITER ELEM END]] Closes the most recent opened element in an XML file ---++++ [[0LASubrXmlWriterAddData][.XML WRITER ADD DATA]] Adds data to the most recent opened element in an XML file. ---++++ [[0LASubrXmlWriterCdatStart][.XML WRITER CDAT START]] Opens a cdata element in an XML file ---++++ [[0LASubrXmlWriterCdatEnd][.XML WRITER CDAT END]] Adds cdata end tag to an XML file ---++++ [[0LASubrXmlWriterAddAttr][.XML WRITER ADD ATTR]] Adds an attribute name, value pair to the most recent opened element in an XML file. ---+++ JSON Processing Routines ---++++ [[0LASubrJsonParse][.JSON PARSE]] Processes a JSON string and imports it. ---++++ [[0LASubrJsonParseFile][.JSON PARSE FILE]] Processes a JSON file and imports it. ---+++ Web Processing Routines ---++++ [[0LASubrImportCgiData][.IMPORT CGI DATA]] Populates Appx Variables from STDIN. ---+++ WIDGET Routines ---++++ [[0LASubrWidgetApplyTheme][.WIDGET APPLY THEME]] Applies a GUI Theme to the current image. ---++++ [[0LASubrWidgetCnvClrToRgb][.WIDGET CNV CLR TO RGB]] Converts an alpha/hex color code to decimal. ---++++ [[0LASubrWidgetCnvRgbToClr][.WIDGET CNV RGB TO CLR]] Converts a decimal color code to alpha/hex. ---++++ [[0LASubrWidgetCountRows][.WIDGET COUNT ROWS]] Returns the count of selected rows in the specified table widget ---++++ [[0LASubrWidgetDelByName][.WIDGET DEL BY NAME]] Deletes selected widgets. ---++++ [[0LASubrWidgetDelModeBtn][.WIDGET DEL MODE BTN]] Deletes the mode buttons from the toolbar. ---++++ [[0LASubrWidgetDelScrollBtn][.WIDGET DEL SCROLL BTN]] Deletes the scroll buttons from the toolbar. ---++++ [[0LASubrWidgetDelStdMenus][.WIDGET DEL STD MENUS]] Deletes the standard pull down menus. ---++++ [[0LASubrWidgetHideByName][.WIDGET HIDE BY NAME]] Hides selected widgets. ---++++ [[0LASubrWidgetHideModeBtn][.WIDGET HIDE MODE BTN]] Hides the mode buttons on the toolbar. ---++++ [[0LASubrWidgetHideScrolBtn][.WIDGET HIDE SCROL BTN]] Hides the scroll buttons on the toolbar. ---++++ [[0LASubrWidgetHideStdMenus][.WIDGET HIDE STD MENUS]] Hides the standard pull down menus. ---++++ [[0LASubrWidgetMissingTheme][.WIDGET MISSING THEME]] Finds all Inputs/Menus that do not use .WIDGET APPLY THEME. ---++++ *[[0LASubrWidgetReloadDatasrc][.WIDGET RELOAD DATASRC]]* Reloads all the data in a Table Widget ---++++ [[0LASubrWidgetSetFromMwdgt][.WIDGET SET FROM MWDGT]] Copies the memory file to --- WIDGET. ---++++ [[0LASubrWidgetSetIntoMwdgt][.WIDGET SET INTO MWDGT]] Copies the current --- WIDGET file to a memory file. ---++++ [[0LASubrWidgetSetTheme][.WIDGET SET THEME]] Sets the current Theme Name. ---++++ <a href="0LASubrWidgetSetTooltip" target="_blank">.WIDGET SET TOOLTIP</a> Sets or clears the tooltip for selected widgets ---++++ [[0LASubrWidgetShowByName][.WIDGET SHOW BY NAME]] Shows previously hidden widgets. ---++++ [[0LASubrWidgetShowModeBtn][.WIDGET SHOW MODE BTN]] Shows previously hidden mode buttons on the toolbar. ---++++ [[0LASubrWidgetShowScrolBtn][.WIDGET SHOW SCROL BTN]] Shows previously hidden scroll buttons on the toolbar. ---++++ [[0LASubrWidgetShowStdMenus][.WIDGET SHOW STD MENUS]] Shows the previously hidden standard pull down menus. ---++++ [[0LASubrWidgetViewRuntime][.WIDGET VIEW RUNTIME]] Shows properties of the current --- WIDGET file. ---++ Data Manipulation Subroutines ---+++ Conversion Routines ---++++ [[0LASubrConvertBytesToHex][.CONVERT BYTES TO HEX]] Converts a field to hexadecimal characters. ---++++ [[0LASubrConvertHexPrToNum][.CONVERT HEX PR TO NUM]] Converts a hex pair of alpha characters to a decimal number. ---++++ [[0LASubrConvertHtmlToText][.CONVERT HTML TO TEXT]] Converts HTML text to plain APPX text ---++++ [[0LASubrConvertNumToHexPr][.CONVERT NUM TO HEX PR]] Converts a decimal number to a hex pair of alpha characters. ---++++ [[0LASubrConvertSplitNumber][.CONVERT SPLIT NUMBER]] Splits a number into its whole and fractional parts. ---++++ [[0LASubrConvertTextToHtml][.CONVERT TEXT TO HTML]] Converts a text field to HTML encoding ---++++ [[0LASubrConvertTranslate][.CONVERT TRANSLATE]] Converts a string from one language to another. ---++++ [[0LASubrConvertToBase64][.CONVERT TO BASE64]] Converts Appx raw data to Base64 data. ---++++ [[0LASubrConvertFromBase64][.CONVERT FROM BASE64]] Converts Base64 data to Appx raw data. ---+++ Text Routines ---++++ [[0LASubrTextCreatePad][.TEXT CREATE PAD]] Fills a field with a single character. ---++++ [[0LASubrTextCutAtPos][.TEXT CUT AT POS]] Removes characters from a text/alpha field. ---++++ [[0LASubrTextFind][.TEXT FIND]] Find the position of text in a text/alpha field. ---++++ [[0LASubrTextFindAndReplace][.TEXT FIND AND REPLACE]] Find and replace text in a text/alpha field. ---++++ [[0LASubrTextFromUnicode][.TEXT FROM UNICODE]] Transcodes the specified text from a Unicode field to a RAW Field. ---++++ [[0LASubrTextGetLength][.TEXT GET LENGTH]] Determine the length of a text/alpha field. ---++++ [[0LASubrTextGetUniname][.TEXT GET UNINAME]] Returns the name of the given Unicode character. ---++++ [[0LASubrTextInsertAtPos][.TEXT INSERT AT POS]] Inserts characters into a text/alpha field. ---++++ [[0LASubrTextLowerToUpper][.TEXT LOWER TO UPPER]] Convert lower case to upper case in a text/alpha field. ---++++ [[0LASubrTextParseLine][.TEXT PARSE LINE]] Parse a string into separate fields. ---++++ [[0LASubrTextSetUniname][.TEXT SET UNINAME]] Returns the named Unicode character ---++++ [[0LASubrTextToUnicode][.TEXT TO UNICODE]] Transcodes the RAW text to a Unicode field. ---++++ [[0LASubrTextUnicodeComp][.TEXT UNICODE COMP]] Compares 2 Unicode fields. ---++++ [[0LASubrTextUpperToLower][.TEXT UPPER TO LOWER]] Convert upper case to lower case in a text/alpha field. ---++ System Information Subroutines ---+++ Server Environment Routines ---++++ [[0LASubrEnvGetAppxpath][.ENV GET APPXPATH]] Returns the path to the location of Appx data files. ---++++ [[0LASubrEnvGetCmdLineParm][.ENV GET CMD LINE PARM]] Returns the value of a command line parameter. ---++++ [[0LASubrEnvGetConfigInfo][.ENV GET CONFIG INFO]] Populates PDF fields with configuration information. ---++++ [[0LASubrEnvGetEncodings][.ENV GET ENCODINGS]] Populates the --- ENCODINGS file. ---++++ [[0LASubrEnvGetEnvVariable][.ENV GET ENV VARIABLE]] Returns the value of an environment variable. ---++++ [[0LASubrEnvGetEnv(All)][.ENV GET ENV (ALL)]] Returns the value of all environment variables. ---++++ [[0LASubrEnvGetOsType][.ENV GET OS TYPE]] Return the type of operating system Appx is running on. ---++++ [[0LASubrEnvGetParentProc][.ENV GET PARENT PROC]] Returns the name and type of the parent process. ---++++ [[0LASubrEnvGetPathName][.ENV GET PATH NAME]] Returns the pathname of the requested APPX data file. ---++++ [[0LASubrEnvGetPathSep][.ENV GET PATH SEP]] Returns the directory separator character of the host operating system. ---++++ [[0LASubrEnvGetScreenSize][.ENV GET SCREEN SIZE]] Returns the size of the Appx screen in rows and columns. ---++++ [[0LASubrEnvSetEnvVariable][.ENV SET ENV VARIABLE]] Sets the value of an environment variable (not yet implemented). ---++++ [[0LASubrEnvViewLicenseInfo][.ENV VIEW LICENSE INFO]] Displays the APPX license info for the current application. ---+++ Client Routines ---++++ [[0LASubrClientCheckForGui][.CLIENT CHECK FOR GUI]] Returns a flag to indicate if the user is running the Desktop Client. ---++++ [[0LASubrClientCheckVersion][.CLIENT CHECK VERSION]] Returns the version of the Desktop Client. ---++++ [[0LASubrClientDisplayFile][.CLIENT DISPLAY FILE]] Downloads and opens a file on the user's PC. ---++++ [[0LASubrClientDownloadFile][.CLIENT DOWNLOAD FILE]] Downloads a file to the user's PC. ---++++ [[0LASubrClientGetClipboard][.CLIENT GET CLIPBOARD]] Gets the current content of the system clipboard. ---++++ [[0LASubrClientGetConstant][.CLIENT GET CONSTANT]] Returns the value of a client constant ---++++ [[0LASubrClientLoadUrl][.CLIENT LOAD URL]] Loads a URL, document, runs a command on the user's PC or changes a client setting. ---++++ [[0LASubrClientPlaySound][.CLIENT PLAY SOUND]] Plays a .wav file on the user's PC. ---++++ [[0LASubrClientSetClipboard][.CLIENT SET CLIPBOARD]] Puts data on the system clipboard. ---++++ [[0LASubrClientUploadFile][.CLIENT UPLOAD FILE]] Uploads a file from the Client to the server. ---++ File System Utilities Subroutines ---+++ File Manipulation Routines These subroutines provide you with a way to manipulate files on the file system without having to check the O/S type (i.e., using 'cp' vs 'copy', or different kernel calls). ---++++ [[0LASubrFileCopy][.FILE COPY]] Copies a file from one location to another, creating any required directories. ---++++ [[0LASubrFileCreate][.FILE CREATE]] Creates the specified file. ---++++ [[0LASubrFileCreateArchive][.FILE CREATE ARCHIVE]] Creates an archive of the specified files, in either TAR or TGZ format. ---++++ [[0LASubrFileCsvExport][.FILE CSV EXPORT]] Exports the specified File to CSV format. ---++++ [[0LASubrFileCsvImport][.FILE CSV IMPORT]] Imports a CSV formatted file into the specified APPX file. ---++++ [[0LASubrFileDelete][.FILE DELETE]] Deletes the given file from the filesystem. ---++++ [[0LASubrFileExists][.FILE EXISTS]] Tests for the existence of the given file in the filesystem. ---++++ [[0LASubrFileExtractArchive][.FILE EXTRACT ARCHIVE]] Extracts all the files from a previously created archive. ---++++ [[0LASubrFileMakeDir][.FILE MAKE DIR]] Creates the given directory and parent directories in the filesystem. ---++++ [[0LASubrFileMove][.FILE MOVE]] Moves a file or directory from one location to another, creating any required directories ---++++ [[0LASubrFileRestruct][.FILE RESTRUCT]] Restructures the specified file. ---++++ [[0LASubrFileSetSpecs][.FILE SET SPECS]] Sets the file specifications ---++++ [[0LASubrFileSplitFilename][.FILE SPLIT FILENAME]] Splits the filename from the file extension and returns both. ---++++ [[0LASubrFileSplitPathname][.FILE SPLIT PATHNAME]] Splits the filename from the path and returns both. ---+++ Stream File Routines The stream routines provide a way to work directly with text files, or to get the standard output of a command (via pipes). ---++++ [[0LASubrStreamClose][.STREAM CLOSE]] Closes a file stream and frees up the stream resources for that file. ---++++ [[0LASubrStreamCloseAll][.STREAM CLOSE ALL]] Closes all file streams and frees up the stream resources for those files. ---++++ [[0LASubrStreamOpen][.STREAM OPEN]] Opens a stream to the given file creating the file and path as needed. ---++++ [[0LASubrStreamRead][.STREAM READ]] Read data from the given stream. ---++++ [[0LASubrStreamWrite][.STREAM WRITE]] Write data to the given stream. ---++ Role Based Security Routines The Role Based Security routines provide a way for you to add RBS maintenance capabilities to your applications. This can be useful if you want your users to maintain RBS but do not want to give them full System Administrator access. ---++++ <a href="0LASubrRbsHierarchyMtce" target="_blank">.RBS HIERARCHY MTCE</a> Invokes the 'Security Hierarchy Maintenance' program, bypassing the System Administrator requirement (System Administration -> Role Based Security -> Security Hierarchy Maintenance). ---++++ <a href="0LASubrRbsProcessSecurity" target="_blank">.RBS PROCESS SECURITY</a> Allows the designer to invoke ' Access Control List - Processes' for a particular parent / child pair (System Administration -> Role Based Security -> Access Control List - Processes). ---++++ <a href="0LASubrRbsRegen" target="_blank">.RBS REGEN</a> Rebuilds the internal RBS cross reference file for the selected apps. ---++++ <a href="0LASubrRbsUpdateSecacl" target="_blank"> .RBS UPDATE SECACL</a> Allows the designer to update the RBS Access Control file directly. ---++ Data API Subroutines These subroutines are only useful when working with the <a href="APPXDataAPI" target="_blank">Data API</a> in Release 5.5.0 and higher. ---++++ <a href="0LASubrDataDebugLog" target="_blank">.DATA DEBUG LOG</a> Use this subroutine to write a free format message to the debug log. ---++++ <a href="0LASubrDataWriteStream" target="_blank">.DATA WRITE STREAM</a> Use this to return results to the caller. ---++++ <a href="0LASubrDataGetParamValue" target="_blank">.DATA GET PARAM VALUE</a> Use this to get the value of a parameter from the URL. ---++++ <a href="0LASubrDataBadRequest" target="_blank">.DATA BAD REQUEST</a> Use this to return a free format error message to the caller. -- Main.JeanNeron - 2013-05-28
E
dit
|
A
ttach
|
Watch
|
P
rint version
|
H
istory
: r32
<
r31
<
r30
<
r29
<
r28
|
B
acklinks
|
V
iew topic
|
Ra
w
edit
|
M
ore topic actions
Topic revision: r32 - 2022-05-25
-
MisaghKarimi
Home
Site map
Main web
MedicaidBilling web
Sandbox web
TWiki web
Main Web
Users
Groups
Index
Search
Changes
Notifications
RSS Feed
Statistics
Preferences
View
Raw View
Print version
Find backlinks
History
More topic actions
Edit
Raw edit
Attach file or image
Edit topic preference settings
Set new parent
More topic actions
Account
Log In
E
dit
A
ttach
Copyright © 2008-2025 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki?
Send feedback