Programming Guide


Chapter 4 . Library Function Overview

This chapter summarizes the Prolifics library functions and lists them by category. Groups of closely related variant functions are listed under a single root name. The functions sm_r_form, sm_d_form, and sm_l_form, for example, are all grouped under the heading sm_form.

Functions marked with § are not installed in the distribution and cannot be directly called from JPL. All other functions can be called from JPL.


Initialization/Reset

The following library functions are called in order to initialize or reset certain aspects of the Prolifics runtime environment. Those that are necessary for the proper operation of Prolifics are called from within the supplied main routine source modules jmain.c and jxmain.c.

Table 4-1 Initialization/Reset

sm_cancel

Resets the display and exits

sm_do_uinstalls§

Installs an application's event functions

sm_inimsg§

Creates a displayable error message on failure of an init ialization function

sm_initcrt§

Initializes the display and Prolifics data structures

sm_install§

Installs application event functions

sm_jtop§

Starts Prolifics

sm_launch

Invokes a process without waiting for it to return

sm_leave§

Prepares to temporarily leave a Prolifics application

sm_resetcrt§

Resets the terminal to the operating system's default state

sm_return§

Prepares for return to Panther application

sm_vinit

Initializes the video translation table

§ Cannot be called directly from JPL.


Screen and Viewport Control

Control viewports, the display of screens, and the form and window stacks:

Table 4-2 Screen/Viewport Control

sm_at_cur§

Displays a window at the cursor location

sm_close_window

Closes the current window

sm_form

Opens a screen as a form

sm_formlist§

Updates the list of memory-resident files

sm_issv

Checks whether a screen is in the saved list

sm_jclose

Closes the current window or form

sm_jform

Displays a screen as a form

sm_jwindow

Displays a window at a given position

sm_load_screen

Preloads a screen into memory

sm_rmformlist§

Purges the memory-resident form list

sm_setsibling

Specifies to open the next screen as a sibling of the current window

sm_shrink_to_fit

Removes trailing empty array elements and shrinks the screen

sm_svscreen§

Registers a list of screens on the save list

sm_unload_screen

Unloads a screen, freeing the memory associated with it

sm_unsvscreen§

Removes screens from the save list

sm_wcount

Obtains the number of currently open windows

sm_wdeselect

Restores the previously active window

sm_win_shrink

Trims the current screen

sm_window§

Opens a window at a given position

sm_winsize

Lets users interactively move and resize a window

sm_wrotate

Rotates the display of sibling windows

sm_wselect

Activates a window

§ Cannot be called directly from JPL.


Interscreen Messaging

Send and receive data from one screen to another:

Table 4-3 Interscreen Messaging

sm_append_bundle_data

Sends data to a bundle item

sm_append_bundle_done

Optimizes memory allocated for a send bundle

sm_append_bundle_item

Adds a data item to a bundle

sm_create_bundle

Creates a send bundle

sm_free_bundle

Destroys a send bundle

sm_get_bundle_data

Reads an occurrence of bundle item data

sm_get_bundle_item_count

Counts the number of data items in a bundle

sm_get_bundle_occur_count

Counts the number of occurrences in a data item

sm_get_next_bundle_name

Gets the name of the bundle created before the one specified

sm_is_bundle

Checks whether a bundle exists

sm_receive

Executes a JPL receive command

sm_send

Executes a JPL send command


Widget Creation/Deletion

Table 4-4 Widget Creation/Deletion

sm_obj_copy

Copies a widget

sm_obj_delete

Deletes a widget


Property Access

Set and get properties of Prolifics objects–for example, screens, widgets, and the application itself:

Table 4-5 Property Access

sm_prop_error

Gets the error code returned by the last properties API function call

sm_prop_get

Gets a property setting

sm_prop_id

Returns an integer handle for an application compo nent

sm_prop_name_to_id

Gets the integer ID of a Prolifics property

sm_prop_set

Sets a property


Field/Array Data Access

Access data in fields and arrays:

Table 4-6 Field/Array Data Access

sm_amt_format

Writes formatted data to a field

sm_calc

Executes a math expression

sm_cl_unprot

Clears data from unprotected widgets

sm_clear_array

Clears all data in an array

sm_copyarray

Copies the contents of one array to another

sm_dblval§

Returns the value of a field as a double precision floating point number

sm_dlength

Gets the length of a field's contents

sm_doccur

Deletes occurrences from a field

sm_dtofield§

Writes a real number to a field

sm_fptr§

Gets the contents of a field

sm_getfield§

Copies the contents of a field

sm_intval§

Gets the integer value of a field

sm_ioccur

Inserts blank occurrences into an array

sm_is_no

Tests a field for no

sm_is_yes

Tests a field for yes

sm_itofield§

Writes an integer value to a field

sm_list_objects_count

Counts the widgets contained by an application object

sm_list_objects_end

Destroys an object contents list

sm_list_objects_next

Traverses the widgets contained by an application object

sm_list_objects_start

Constructs a list of widgets contained by an ap plication object

sm_lngval§

Gets the long integer value of a field

sm_ltofield§

Writes a long integer value to a field

sm_null

Tests whether a field is null

sm_obj_sort

Sorts an object's occurrences

sm_obj_sort_auto

Sorts an object's occurrences according to grid settings

sm_optmnu_id

Gets the ID of an option menu or combo box

sm_putfield

Puts a string into a field

sm_sdtime

Gets the formatted system date and time

sm_strip_amt_ptr

Strips non-digit characters from a string

sm_udtime§

Formats a user-supplied date and time

sm_upd_select§

Updates the contents of an option menu or combo box

sm_ww_length

Gets the number of characters in a wordwrapped multiline text widget

sm_ww_read§

Copies the contents of a wordwrapped text widget into a text buffer

sm_ww_write

Writes text into a wordwrapped multiline text wid get

§ Cannot be called directly from JPL.


Group Access

The following functions access groups. Groups are made up of fields that have attributes and data in them. The value of a group indicates the set of selected constituent fields, although it is not recommended that that value ever be accessed or modified directly with any of the field access functions discussed in the preceding sections.

Table 4-7 Group Access

sm_deselect

Deselects an occurrence in a selection widget group

sm_ftog§

Converts field references to selection group references

sm_i_gtof§

Converts a selection group name and occurrence into a field number and occurrence

sm_n_gval

Forces execution of a group's validation function

sm_next_sync

Finds the next synchronized array

sm_select

Selects an occurrence in a selection group

§ Cannot be called directly from JPL.


Local Data Block Access

The following functions access local data blocks, or LDBs. Note that if a field data access function references a field by name–for example, sm_n and sm_i_variants–and the name field does not exist on the active screen, it looks in an active LDB for an entry of the same name.

Table 4-8 Local Data Block Access

sm_allget

Loads data from the active LDBs to the current screen

sm_dd_able

Turns LDB write-through on or off for all LDBs

sm_ldb_fld_get

Copies data from LDBs to specific fields on the current screen

sm_ldb_fld_store

Copies data from specific fields to LDBs

sm_ldb_getfield§

Gets the contents of an LDB entry

sm_ldb_get_active

Gets the handle of the most recently loaded active LDB

sm_ldb_get_inactive

Gets the handle of the most recently loaded inactive LDB

sm_ldb_get_next_active

Gets the active LDB loaded before the one specified

sm_ldb_get_next_inactive

Gets the inactive LDB loaded before the one specified

sm_ldb_handle

Gets the handle of an LDB

sm_ldb_init§

Initializes or reinitializes LDBs

sm_ldb_is_loaded

Tests whether an LDB is loaded

sm_ldb_load

Loads an LDB into memory

sm_ldb_name

Gets the name of an LDB of the specified handle

sm_ldb_next_handle

Gets the handle of previously loaded LDB with the same name as the specified LDB

sm_ldb_pop

Pops LDBs off the LDB save stack

sm_ldb_push

Pushes all LDBs onto a save stack

sm_ldb_putfield

Reads data into an LDB entry

sm_ldb_state_get

Gets the current state of the LDB

sm_ldb_state_set

Changes the state of the LDB

sm_ldb_unload

Unloads LDBs from memory

sm_lstore

Copies everything from screen to LDB

§ Cannot be called directly from JPL.


Validation

The following functions provide an application interface to the field and group validation processes:

Table 4-9 Validation

dm_val_relative

Sets bits for validation after SQL SELECT statements are executed

sm_ckdigit

Validates data with a check digit function

sm_cl_all_mdts

Clears mdt property for all occurrences

sm_fval

Forces field validation

sm_n_gval

Forces execution of a group's validation function

sm_s_val

Validates the current screen

sm_tst_all_mdts§

Finds the first modified occurrence on the current screen

sm_validate

Validates the specified object–screen, widget or widget group

§ Cannot be called directly from JPL.


Cursor Control

Control the positioning and display of the cursor on the active screen:

Table 4-10 Cursor Control

sm_backtab

Backtabs to the previous unprotected field

sm_c_off

Turns the cursor off

sm_c_on

Turns the cursor on

sm_c_vis

Turns the cursor position display on or off

sm_disp_off

Gets the cursor's offset in the current field

sm_gofield

Moves the cursor into a field

sm_home

Homes the cursor

sm_last

Positions the cursor in the last field

sm_nl

Positions the cursor to the first unprotected field beyond the current line

sm_off_gofield

Moves the cursor into a field, offset from the left

sm_sh_off

Gets the cursor location relative to the start of a shifting field

sm_tab

Moves the cursor to the next unprotected field


Display Terminal I/O

Set the interface to Prolifics terminal I/O:

Table 4-11 Display Terminal I/O

sm_bel

Issues a beep from the terminal

sm_bkrect

Sets the background color of a rectangle

sm_flush

Flushes delayed writes to the display

sm_getkey

Gets the logical value of the key hit

sm_input

Opens the keyboard for data entry and menu selection

sm_key_integer

Gets the integer value of a logical key mnemonic

sm_keyfilter

Controls keystroke record/playback filtering

sm_keyhit

Tests whether a key is typed ahead

sm_keyinit

Initializes a key translation table

sm_keylabel

Gets the printable name of a logical key

sm_keyoption

Sets cursor control key options

sm_m_flush

Flushes the status line

sm_rescreen

Refreshes the data displayed on the screen

sm_resize

Notifies Prolifics of a change in the display size

sm_ungetkey

Pushes a translated key onto the input queue

sm_xlate_table§

Installs or deinstalls an 8-bit character translation table

§ Cannot be called directly from JPL.


Message Display

Access and display runtime application messages:

Table 4-12 Message Display

sm_d_msg_line

Displays a message on the status line

sm_femsg§§

Displays an error message and awaits user acknowledgement

sm_ferr_reset§§

Displays an error message and awaits user acknowledgement

sm_fqui_msg§§

Displays an error message preceded by a constant tag

sm_fquiet_err§§

Displays an error message preceded by a constant tag

sm_hlp_by_name

Displays a help window

sm_message_box

Displays a message in a dialog box

sm_msg

Displays a message at a given column on the status line

sm_msg_del

Removes a class of messages from memory

sm_msg_get

Finds a message

sm_msg_read§

Reads messages from a message file

sm_msgfind

Finds a message given its number

sm_sb_insert

Inserts a status bar section

sm_sb_delete

Deletes a status bar section

sm_sb_format

Sets a format string for a status bar section

sm_sb_gettext

Gets contents of a status bar section

sm_sb_settext

Sets contents of a status bar section

sm_setbkstat

Sets background text for status line

sm_setstatus

Turns alternating background status message on or off

§ Cannot be called directly from JPL.

§§ In JPL, error messages are handled by the msg command.


Mass Storage and Retrieval

Move data to or from sets of fields in the screen or LDB:

Table 4-13 Mass Storage and Retrieval

sm_restore_data§

Restores previously saved data to the screen

sm_rs_data§

Restores saved data to some of the screen

sm_save_data§

Saves screen contents

sm_sv_data§

Saves partial screen contents

sm_sv_free§

Frees a buffer that contains saved screen data

sm_svscreen§

Registers a list of screens on the save list

§ Cannot be called directly from JPL.


Global Data and Changing Prolifics Behavior

Get access to global data and manipulate their settings:

Table 4-14 Global Data and Changing Application Behavior

sm_inquire

Gets the value of a global integer variable

sm_iset

Changes the value of a global integer variable

sm_ms_inquire

Gets information about the mouse's current state

sm_mus_time§

Gets the system time of the last mouse click

sm_occur_no

Gets the current occurrence number

sm_option

Sets a behavior variable

sm_pinquire

Gets the value of a global string

sm_pset

Modifies the value of a global string

sm_soption

Sets a string option

§ Cannot be called directly from JPL.


Menus

Get and change properties of menus and menu items:

Table 4-15 Menus

sm_menu_bar_error

Returns the last error returned by a menu function

sm_menu_change§

Sets a menu's properties

sm_menu_create

Defines a menu at runtime

sm_menu_delete

Removes a menu from the specified script

sm_menu_get

Gets a menu's property

sm_menu_install

Makes a menu available for display

sm_menu_remove

Removes a menu from display

sm_mncrinit6§

Initializes support for the menu subsystem

sm_mnitem_change§§

Sets a menu item's property

sm_mnitem_create§

Inserts a new item into a menu

sm_mnitem_delete

Removes an item from a menu

sm_mnitem_get

Gets a menu item's property

sm_mnscript_load

Loads a menu script into memory and makes its me nus available for installation

sm_mnscript_unload

Removes a script from memory and destroys all me nus installed from it

sm_popup_at_cur

Invokes the current widget's pop-up menu

§ Cannot be called directly from JPL.
§§ Wrapper functions for sm_mnitem_change are prototyped in funclist.c and callable from JPL. For a list of these functions and their parameter declarations, refer to
Table 5-13


Database Interaction

Table 4-16 Database Initialization

dm_dbi_init§

Initializes for database interaction

dm_init§

Initializes access to a specific database engine

dm_reset§

Disables support for a named database engine

§ Cannot be called directly from JPL.

Table 4-17 Database Access

dm_cursor_connection

Gets the connection name for a database cursor

dm_cursor_consistent

Determines if a cursor is on the default connection

dm_cursor_engine

Determines the database engine of a cursor

dm_dbms

Executes a DBMS command directly from C

dm_dbms_noexp§

Executes a DBMS command without colon preprocessing

dm_exec_sql

Generates and executes SQL statements

dm_expand§

Formats a string for an engine

dm_free_sql_info

Frees memory associated with an SQL statement

dm_gen_sql_info

Generates a data structure used in SQL SELECT statements

dm_get_db_conn_handle

Gets a handle to a database connection logon structure

dm_get_db_cursor_handle

Gets a handle to a database cursor's structure

dm_getdbitext§

Gets the text of the last-executed DBMS command

dm_is_connection

Verifies that a connection is open

dm_is_cursor

Checks to see if a cursor exists

dm_is_engine§

Verifies that a database engine is initialized

dm_set_driver_option

Sets engine driver option

dm_set_max_fetches

Sets the maximum number of rows in a se lect set

dm_set_max_rows_per_fetch

Sets the maximum number of rows per fetch

§ Cannot be called directly from JPL.

Table 4-18 Database Binary Variables

dm_bin_create_occur§

Gets or allocates an occurrence in a binary variable

dm_bin_delete_occur§

Deletes an occurrence in a binary variable

dm_bin_get_dlength§

Gets the length of an occurrence in a binary variable

dm_bin_get_occur§

Gets the data in an occurrence of a binary variable

dm_bin_length§

Gets the maximum length of an occurrence in a binary variable

dm_bin_max_occur§

Gets the maximum number of occurrences in a binary variable

dm_bin_set_dlength§

Sets the length of an occurrence in a binary variable

§ Cannot be called directly from JPL.

Table 4-19 SQL Generation

dm_gen_change_execute_using

Adds or replaces a bind value in a DBMS EXECUTE statement for SQL generation

dm_gen_change_select_from

Edits the FROM clause in a SELECT statement for automatic SQL genera tion

dm_gen_change_select_group_by

Edits the GROUP BY clause in a SELECT statement for automatic SQL generation

dm_gen_change_select_having

Edits the HAVING clause in a SELECT statement for automatic SQL generation

dm_gen_change_select_list

Edits the select list for automatic SQL generation

dm_gen_change_select_order_by

Edits the ORDER BY clause in a SELECT statement for automatic SQL generation

dm_gen_change_select_suffix

Appends text to the end of a SELECT statement for automatic SQL genera tion

dm_gen_change_select_where

Edits the WHERE clause in a SELECT statement for automatic SQL genera tion

dm_gen_get_tv_alias

Gets the correlation name, or alias, for a table view


Transaction Manager

Table 4-20 Transaction Manager Access

dm_disable_styles

Suppresses the application of transaction manager styles

dm_enable_styles

Enables the application of transaction manager styles

dm_set_tm_clear_fast

Clears all fields in a server view

sm_tm_clear

Clears all fields in the table view

sm_tm_command

Executes a transaction command

sm_tm_event

Returns the event number for the specified transac tion manager event name

sm_tm_event_name

Returns the transaction manager event name for the specified event number

sm_tm_handling

Processes a handling method property

sm_tm_inquire

Gets an integer attribute of the current transaction

sm_tm_iset

Sets the value of an integer transaction attribute

sm_tm_old_bi_context

Sets a backward compatibility flag

sm_tm_pcopy§

Gets a string attribute of the current transaction and stores a copy

sm_tm_pinquire

Gets a string attribute of the current transaction for immediate use

sm_tm_pset

Sets the value of a string transaction attribute

§ Cannot be called directly from JPL.

T
Table 4-21 Transaction Manager Event Processing

sm_tm_clear_model_events

Empties the transaction event stack

sm_tm_continuation_validity§

Checks whether CONTINUE events are permitted for the current table view

sm_tm_pop_model_event

Pops an event off the transaction event stack

sm_tm_push_model_event

Pushes an event onto the transaction event stack

§ Cannot be called directly from JPL.

Table 4-22 Transaction Manager Error and Message Handling

sm_tm_command_emsgset

Initiates error message processing for a transaction manager error code

sm_tm_command_errset

Initiates error processing for a transaction manager error code

sm_tm_dbi_checker

Tests for common database errors during transaction manager processing

sm_tm_error§

Reports an error condition

sm_tm_errorlog

Controls error log processing

sm_tm_failure_message

Specifies an error message for a failed event

sm_tm_msg_count_error

Reports a transaction manager error

sm_tm_msg_emsg

Reports an error of emsg severity

sm_tm_msg_error

Reports an error

§ Cannot be called directly from JPL.

Table 4-23 Before-image Access in the Transaction Manager

sm_bi_compare

Compares widgets in the current table view with their before-image values

sm_bi_copy

Copies current values of a range of occurrences to the before-images

sm_bi_initialize

Initializes before-image data for widgets in the current table view

sm_get_bi_data

Returns the specified before-image data

sm_get_tv_bi_data

Gets before-image data


GUI Access

The following functions are applicable for GUI Panther applications. Those that contain _mw_ or _xm_ are specific to Windows or Motif only.

Table 4-24 GUI Access

sm_adjust_area

Recalculates widget positions

sm_attach_drawing_func§

Associates a drawing function with a widget

sm_delay_cursor

Changes the state of the mouse pointer

sm_drawingarea§

Gets a handle to the current screen that can be passed to the window manager

sm_mw_get_client_wnd

Gets a handle to the client area of the MDI frame

sm_mw_get_cmd_show

Returns the initial state of an application

sm_mw_get_frame_wnd

Gets a handle to the MDI frame

sm_mw_get_instance§

Gets a handle to the current instance of a Windows program

sm_mw_get_prev_instance

Gets a handle to the previous instance of a Windows program

sm_mw_PrintScreen

Prints a Prolifics screen

sm_translatecoords§

Translates screen coordinates to display coordinates

sm_widget§

Gets a handle to a widget

sm_win_shrink

Trims the current screen

sm_xm_get_base_window§

Gets a widget ID to the base window

sm_xm_get_display§

Gets a pointer to the current display

§ Cannot be called directly from JPL.


DDE (Dynamic Data Exchange)

Exchange data between Prolifics Windows applications and other Windows applications.

Table 4-25 DDE

sm_dde_client_connect_cold

Creates a cold DDE link to a server

sm_dde_client_connect_hot

Creates a hot DDE link to a server

sm_dde_client_connect_warm

Creates a warm DDE link to a server

sm_dde_client_disconnect

Destroys a DDE link to a server

sm_dde_client_off

Disables DDE client activity

sm_dde_client_on

Enables DDE client activity

sm_dde_client_paste_link_cold

Creates a cold DDE paste link between a widget and a DDE server

sm_dde_client_paste_link_hot

Creates a hot DDE paste link between a widget and a DDE server

sm_dde_client_paste_link_warm

Creates a warm DDE paste link be tween a widget and a DDE server

sm_dde_client_request

Requests data from a DDE server

sm_dde_execute

Sends a command to a DDE server

sm_dde_install_notify§

Installs a callback function that exe cutes on changes in warm link data

sm_dde_poke

Pokes data into a DDE server

sm_dde_server_off

Disables DDE server activity

sm_dde_server_on

Enables DDE server activity

§ Cannot be called directly from JPL.


File Access

Table 4-26 File Access

sm_fi_path

Returns the full path name of a file

sm_file_copy

Copies a file

sm_file_exists

Checks whether a file exists

sm_file_move

Copies a file and deletes its source

sm_file_remove

Deletes a file

sm_filebox§

Opens a file selection dialog box

sm_filetypes

Adds an option to the file type option menu

sm_fio_a2f

Writes the contents of an array to a file

sm_fio_close

Closes an open file stream

sm_fio_editor

Invokes an external text editor for an array

sm_fio_error

Gets the error returned by the last call to a file I/O func tion

sm_fio_error_set

Sets the file I/O error

sm_fio_f2a

Writes a file's contents to an array

sm_fio_getc

Reads the next byte from the specified file stream

sm_fio_gets

Reads a line from a file

sm_fio_handle§

Gets a handle to an open file

sm_fio_open

Opens the specified file and returns a handle to the JPL caller

sm_fio_putc

Writes a single byte to an open file

sm_fio_puts

Writes a line of text to an open file

sm_fio_rewind

Resets the file stream to the beginning of a file

sm_jfilebox

Opens a file selection dialog box

sm_tmpnam

Creates a unique file name

§ Cannot be called directly from JPL.


Library Access

Table 4-27 Library Access

sm_l_close

Closes a library and frees all memory associated with it

sm_l_open

Opens a library

sm_l_open_syslib

Opens a library as a system library

sm_slib_error

Gets the system return for the last call to sm_slib_load

sm_slib_install

Installs a function from a DLL into a Prolifics application

sm_slib_load

Loads a dynamic link library (DLL) and makes its functions available for installation


JPL

Table 4-28 JPL

sm_jplcall

Executes a JPL procedure

sm_jplpublic

Executes JPL's public command

sm_jplunload

Executes JPL's unload command


JetNet/BEA Tuxedo Processing

Table 4-29 JetNet/BEA Tuxedo Processing

sm_tp_exec§

Executes a middleware API JPL command

sm_tp_free_arg_buf§

Frees memory allocated by argument list generation functions

sm_tp_gen_insert§

Generates an argument list of fields for an INSERT operation

sm_tp_gen_sel_return§

Generates a list of fields for the returned select set of a SELECT or VIEW operation

sm_tp_gen_sel_where§

Generates a list of fields for the WHERE clause of a SELECT or VIEW operation

sm_tp_gen_val_link§

Generates a list of fields to be validated in a val idation link operation

sm_tp_gen_val_return§

Generates a list of fields for the returned select set of a validation link operation

sm_tp_get_svc_alias§

Returns the alias assigned to a server

sm_tp_get_tux_callid§

Returns the BEA Tuxedo identifier for a service call

§ Cannot be called directly from JPL.


Open Middleware Connectivity

The following functions can be used with all service components, regardless of the technology used to deploy the components–COM or EJB.

Table 4-30 Open Middleware Connectivity

sm_log

Writes a message to a log file

sm_obj_call

Calls a service component's method

sm_obj_create

Instantiates a service component

sm_obj_delete_id

Destroys a service component

sm_obj_get_property

Gets a service component's property setting

sm_obj_onerror

Installs an error handler

sm_obj_set_property

Sets a property for a service component

sm_raise_exception

Sends an error code back to the client

sm_receive_args

Receives a list of in and in/out parameters for a method

sm_return_args

Returns a list of in/out and out parameters for a method


COM/MTS Processing

Table 4-31 COM/MTS Processing

sm_com_load_picture

Returns the object ID for a graphics file in COM format

sm_com_QueryInterface§

Accesses an interface of a COM component

sm_com_result

Gets the error code returned by the last call to a COM component

sm_com_result_msg

Gets the error message returned by the last call to a COM component

sm_com_set_handler

Sets an event handler for the specified event on a COM component

§ Cannot be called directly from JPL.

Table 4-32 MTS Database Transactions

sm_mts_CreateInstance

Creates a new object for use in the existing transaction

sm_mts_DisableCommit

Prohibits the transaction from being committed

sm_mts_EnableCommit

Allows the transaction to be committed

sm_mts_IsInTransaction

Determines if the object is participating in a transaction

sm_mts_SetAbort

Tells MTS to abort the transaction

sm_mts_SetComplete

Tells MTS the work is complete (and ready to be committed)

Table 4-33 MTS Property Access

sm_mts_CreateProperty

Creates a named property

sm_mts_CreatePropertyGroup

Creates a named property group

sm_mts_GetPropertyValue

Gets the value of a property

sm_mts_PutPropertyValue

Sets a property's value

Table 4-34 MTS Security Checking

sm_mts_IsCallerInRole

Determines if the caller of the component is in a role

sm_mts_IsSecurityEnabled

Determines if security is currently enabled


Reports

Table 4-35 Reports

sm_rw_error_message

Returns the last error message generated by report processing

sm_rw_play_metafile

Displays or prints a report that is in metafile format

sm_rw_runreport

Invokes the report generator from a user-written function


Web Applications

Table 4-36 Web Applications

sm_web_get_cookie

Returns the value of a specified cookie

sm_web_invoke_url

Invokes a URL on the Web

sm_web_log_error

Writes Web application errors to a log file

sm_web_save_global

Creates a context global variable

sm_web_set_cookie

Sets HTML cookies on a client

sm_web_unsave_all_globals

Redesignates all context global variables as transient globals

sm_web_unsave_global

Redesignates a context global variable as a transient global


Mail

Table 4-37 Mail

sm_mail_attach

Attaches a file to the email message

sm_mail_file_text

Specifies the file containing the text of the email message

sm_mail_message

Send a simple email message

sm_mail_new

Creates a new mail object

sm_mail_send

Sends a mail object

sm_mail_text

Specifies the widget containing the text of the email message

sm_mail_widget

Specifies the widget to be included as an image attachment to an email message


XML

Table 4-38 XML

sm_xml_export§

Generate XML from Panther screens and widgets

sm_xml_export_file

Export Panther-generated XML to a file

sm_xml_import§

Import XML to a Panther screen

sm_xml_import_file

Import XML to a Panther screen from a file

§ Cannot be called directly from JPL.


Miscellaneous

Table 4-39 Miscellaneous

sm_dicname§

Sets the repository name

sm_isabort

Tests and sets the abort control flag

sm_set_help

Puts an application into help mode

sm_shell

Executes a system call

§ Cannot be called directly from JPL.