a!sblInvokeWriter() Function

Invokes the method that will result in a modification to data in Siebel.

Syntax

a!sblInvokeWriter( scsExternalSystemKey, usePerUserCredentials, hostname, port, enterpriseApp, appManager, language, businessService, method parameters)

Common Parameters:

scsExternalSystemKey: (Text) The key from the Third Party Credentials admin console page that corresponds to the set of credentials that should be used to authenticate.

usePerUserCredentials: (Boolean) If true the credentials set in the Third-Party Credentials settings page by the current user running the expression will be used. If false the site-wide credential values will be used.

hostname: (Text) The hostname of the Siebel server. For example, siebel.example.com.

port: (Number (Integer)) The port the Siebel server is listening on. For example, 2321.

enterpriseApp: (Text) The enterprise application of the target system. For example, "SBA_82".

appManager: (Text) The active application manager of the target system. For example, "SSEObjMgr_enu".

language: (Text) The target system language. For example, "enu".

Specific Parameters:

businessService: (Text) The name of the Siebel Business Service on which to invoke the method.

method: (Text) The name of the method to invoke.

parameters: (Any Type) The input parameters for the method, given as a dictionary where the parameter names are the dictionary field names and the parameter values are give as the dictionary field values.

Returns

Writer

This function returns a writer and must be used with the bind() function.

See also:

Examples

Invoke a Function To Make a Change on Siebel

When the user clicks on the buttons, this interface calls a function that performs a write on Siebel. In this case, the invoked method, "Update", appends the account ID to the account name for the account whose ID is passed by this interface. Since this is an invokeWriter, it does not return a result to Appian, and a separate query must be performed to view the results of this action.

Copy and paste the expression into the INTERFACE DEFINITION in EXPRESSION MODE, save it, then call the interface in a Tempo Report to test.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
=load(
  local!sblInvokeWriter: bind(
    null,
    a!sblInvokeWriter(
      scsExternalSystemKey: cons!SBL_SCS_KEY,
      usePerUserCredentials: true,
      hostname: cons!SBL_HOSTNAME,
      port: cons!SBL_PORT,
      enterpriseApp: cons!SBL_APP,
      appManager: cons!SBL_APP_MANAGER,
      language: cons!SBL_LANGUAGE,
      businessService: "UpdateAccount",
      method: "Update",
      parameters: _
    )
  ),
  {
      a!textField(
        instructions: "businessService: UpdateAccount, method: Update, AccId: 1-5J1C",
        readOnly: true,
        value: "Invoke Writer Response"
      ),
      a!buttonArrayLayout(
        buttons: {
          a!buttonWidget(
            label: "Invoke",
            value: { AccId: "1-5J1C" },
            saveInto: local!sblInvokeWriter
          )
        }
      )
  }
)
FEEDBACK