Siebel Mobile Connector Guide: March 2008
Siebel Mobile Connector Guide: March 2008
Copyright 2005, 2008, Oracle. All rights reserved. The Programs (which include both the software and documentation) contain proprietary information; they are provided under a license agreement containing restrictions on use and disclosure and are also protected by copyright, patent, and other intellectual and industrial property laws. Reverse engineering, disassembly, or decompilation of the Programs, except to the extent required to obtain interoperability with other independently created software or as specified by law, is prohibited. The information contained in this document is subject to change without notice. If you find any problems in the documentation, please report them to us in writing. This document is not warranted to be errorfree. Except as may be expressly permitted in your license agreement for these Programs, no part of these Programs may be reproduced or transmitted in any form or by any means, electronic or mechanical, for any purpose. PRODUCT MODULES AND OPTIONS. This guide contains descriptions of modules that are optional and for which you may not have purchased a license. Siebels Sample Database also includes data related to these optional modules. As a result, your software implementation may differ from descriptions in this guide. To find out more about the modules your organization has purchased, see your corporate purchasing agent or your Siebel sales representative. If the Programs are delivered to the United States Government or anyone licensing or using the Programs on behalf of the United States Government, the following notice is applicable: U.S. GOVERNMENT RIGHTS. Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the Programs, including documentation and technical data, shall be subject to the licensing restrictions set forth in the applicable Oracle license agreement, and, to the extent applicable, the additional rights set forth in FAR 52.227-19, Commercial Computer Software--Restricted Rights (June 1987). Oracle USA, Inc., 500 Oracle Parkway, Redwood City, CA 94065. The Programs are not intended for use in any nuclear, aviation, mass transit, medical, or other inherently dangerous applications. It shall be the licensee's responsibility to take all appropriate fail-safe, backup, redundancy and other measures to ensure the safe use of such applications if the Programs are used for such purposes, and we disclaim liability for any damages caused by such use of the Programs. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. The Programs may provide links to Web sites and access to content, products, and services from third parties. Oracle is not responsible for the availability of, or any content provided on, third-party Web sites. You bear all risks associated with the use of such content. If you choose to purchase any products or services from a third party, the relationship is directly between you and the third party. Oracle is not responsible for: (a) the quality of third-party products or services; or (b) fulfilling any of the terms of the agreement with the third party, including delivery of products or services and warranty obligations related to purchased products or services. Oracle is not responsible for any loss or damage of any sort that you may incur from dealing with any third party.
Contents
Chapter 1: Chapter 2:
Usage Scenarios
Sample Sales Voice Scenario 12 Sample Customer Service Voice Scenario Sample Wireless Sales Scenario 13
Architecture Overview
14 16
Chapter 3:
Installation Prerequisites
20
21
22
Server Configuration Files and DLL Files 22 Configuring the smc.cfg File 23 Configuring the smcalert.cfg File 24 Configuring a User Agent for the Siebel Mobile Connector Applications
25
26
Chapter 4:
Contents
41
Getting Updates
GetSMCUpdate
48
48
50
Chapter 5:
55
64
66
71
Chapter 6:
Configuring Alerts
76
77
Contents
SMC Account Detail - Contacts View 83 SMC Account Detail - Opportunities View 83 SMC Account Detail - Activities View 83 SMC Account Detail - Service Requests View 83 Account Attachment View 84 SMC Account List Applet 84 Account Form Applet 85 SMC Account Contact List Applet 86 SMC Oppty List Applet 87 SMC Account Activity List Applet 88 SMC Account Service List Applet 89 Account Attachment Applet 90 Account Entry Applet 91
93
SMC Activity View 94 SMC Activity Detail View 94 SMC Activity Detail - Contacts View 94 Activity Attachment View 95 SMC Activity List Applet 95 Activity Form Applet 96 SMC Activity Contact List Applet 99 Activity Attachment Applet 99
100
SMC Contact View 101 SMC Contact Detail View 101 SMC Contact Detail - Opportunities View 102 Contact Attachment View 102 SMC Contact Detail - Service Request View 102 SMC Contact Detail - Accounts View 102 SMC Contact Detail - Activities View 103 SMC Contact List Applet 103 Contact Form Applet 104 SMC Oppty List Applet 106 Contact Attachment Applet 108 SMC Service Request List Applet 108 SMC Contact Account List Applet 109 SMC Activity List Applet 110
112
SMC Opportunity View 113 SMC Opportunity Detail View 113 SMC Opportunity Detail - Contacts View
113
Contents
SMC Opportunity Detail - Activities View 114 Opportunity Attachment View 114 SMC Opportunity List Applet 114 Opportunity Form Applet 115 SMC Opportunity Contact List Applet 116 SMC Opportunity Activity List Applet 117 Opportunity Attachment Applet 118
119
SMC Service Request View 120 SMC Service Request Detail View 120 Service Request Detail View 120 Service Request Detail View with Attachments SMC Service Request List Applet 121 Service Request Detail Applet 121 Service Request Activity List Applet 123 Service Request Attachment List Applet 124
120
125
126
SMC eService Request View 126 SMC eService Request List Applet
127
SMC eService Order View 128 SMC eService Orders List Applet 128 SMC eOrder Line Items List Applet 129
130
132
133
134
135
Responsibility View 135 Responsibility List Administration Applet View List Administration Applet 136 User List Administration Applet 136
Contents
Index
Contents
10
In this chapter, you will find an overview of Oracles Siebel Mobile Connector and a brief explanation of its architecture. Additionally, scenarios are given to provide understanding of the Siebel Mobile Connector from the point of view of the users of partner applications. Finally, there is information about this guide and additional documentation.
The Metadata Business Service allows customers and partners to filter data offered through the preconfigured application definitions without having to use Siebel Tools to permanently change the application configuration. The Siebel Mobile Connector generates style sheets to limit the data returned from an applet. The style sheets are stored as XSL documents on the Siebel Server. The pre-built Siebel Mobile Connector application definition has been optimized for mobile applications. These optimized views are aimed at improving performance on mobile devices. Because the Siebel Mobile Connector handles the details of abstracting the lower-level data model, it may not be necessary for third-party application developers to rewrite their code following an upgrade to Siebel applications. Thus, the upgrade path for applications using the Siebel Mobile Connector becomes relatively independent of the Siebel upgrade path. If you need to customize the application definition beyond applying style sheets, Siebel Tools can be used. The Siebel Mobile Connector uses the same development toolset (Siebel Tools), and the same logical data model as all other Siebel Business Applications.
11
Additionally, the Siebel Mobile Connector provides an Alert Business Service to communicate changes to specific business components. Notifications can be pushed to employees, partners or customers who spend a majority of their time outside the office. This business service creates an XML document that can be pushed to customer or partner-developed mobile applications. For example, the reassignment of a service request from one service technician to another triggers a workflow; in this process the Alert Business Service creates an XML document with the relevant, predefined data and sends it to the mobile application, thereby allowing the application to dispatch a wireless message to both parties indicating their reassignment.
Usage Scenarios
This section provides an understanding of the Siebel Mobile Connector from the point of view of the users of partner applications. These usage scenarios are here for illustrative purposes. Siebel Alliance partners who have built validated solutions can be found listed on Oracles Web site: http:/ /www.oracle.com.
1 2 3 4 5 6 7 8 9
Joelle calls into the Sales Voice application from a mobile phone. The system greets her with (h)ello. Welcome to the Sales Voice application. Please say your user ID number or enter it using the keypad. Joelle responds with her user ID number. The system responds (p)lease enter your PIN. Joelle responds with her PIN number and the system authenticates her log in as a valid user of the Siebel Sales system. The system responds (y)ou have new leads. Would you like to go to Opportunities, Contacts, Accounts, or Calendar? Joelle: Contacts. System: You are in Contacts. What opportunities do you want to look up? Joelle: Look up John Hiatt.
10 System: John Hiatt is found. 11 Joelle: Call John Hiatt. 12 The Sales Voice system places a call to John Hiatt and logs off Joelle from the system.
12 Siebel Mobile Connector Guide Version 8.1
Allan Street calls the customer support line of the refrigerators manufacturer to place a service request to have a service technician come repair his refrigerator. This service request is entered into Siebel Call Center, prioritized, and routed to field service centers or dispatchers. Allan receives his service request ticket number so he can check the status of his request. A few hours later, Allan calls into the Customer Service Voice application to check on the status of his service request. The system greets him with (h)ello. Welcome to the Customer Service Voice application. Please say your ticket number or enter it using the keypad. Allan speaks his ticket number and the system authenticates his log in as an anonymous user. The Customer Service Voice application requests the information for this ticket from the Siebel Call Center application. The system plays back the ticket information: Your ticket number is 654321. Your request is regarding repair of refrigerator model RF1. Your order is currently assigned for repair tomorrow at 1 p.m. Allan decides that the description does not have enough detail, so he updates the description with the various sounds his refrigerator is making (the description is attached as an audio file). The problem is worse than he thought, so Allan escalates the service request since the repair technician is not scheduled to arrive until tomorrow afternoon. The Customer Service Voice application records Allans changes and updates the ticket information in the Siebel database. Because the tickets priority was escalated, a service manager is alerted through email to the change. Allans changes have triggered an alert condition that is monitored by the Alert Business Service. Aware of the new information that Allan entered into the Customer Service Voice application, the service manager assigns a service technician to pay Allan Street an immediate visit. Allan completes his phone call and the Customer Service Voice application logs him off automatically.
2 3 4
13
Maria Smith is a salesperson working outside the office. While she is on a sales call, the regional manager assigns Maria an opportunity for a very important prospect. The Wireless Sales application uses the Siebel Mobile Connector interface to retrieve data from the company's Siebel Sales application.
Maria receives a Short Message Service (SMS) message on her personal digital assistant. The message tells her that a new sales opportunity has been assigned to her and is awaiting her action to accept or reject the opportunity. She is able to accept the opportunity through two-way SMS. However, she wants to get more details. To get more details about the opportunity, Maria enters her login and password into an HTML form on the Web page displayed by the wireless browser running the Wireless Sales application. The system authenticates her login as a valid user of the Siebel Sales system. The system presents her with a Siebel user interface optimized for display in a mobile environment. Maria taps the Opportunities screen, and a screen is displayed with the data for her opportunities. Maria queries for new Opportunities and finds the new lead assigned to her. She reviews the details of the new prospect and places a call to the primary contact to begin the sales cycle. When she accepts the opportunity, the Wireless Sales application sends the update for the opportunity to the Siebel database.
3 4 5 6
Architecture Overview
The Siebel Mobile Connector allows application developers to create applications that query for (or pull) information, get information pushed to the application, or create, edit or update information in the Siebel database. The following components are involved in transactions using the Siebel Mobile Connector: A Siebel database. This is the database that users of the mobile application will access. The Siebel Server. These components execute business logic for the Siebel application and provide an XML interface between third-party applications and the Siebel database. The Siebel Server components include the Data Manager, Object Manager, Siebel Web Engine and the Siebel Mobile Connector. The Siebel Web Engine. Siebel Web Engine is a component of the Siebel Server that makes possible the deployment of Business applications in HTML, WML and XML. A Web browser client interacts with the Siebel database through Siebel Web Engine. The Siebel Web Engine contains the XML Web Interface that processes XML requests. Siebel Mobile Connector. The Siebel Mobile Connector contains an optimized application definition, the Alert Business Service, the Metadata Business Service, the GetSMCUpdate method within SWE and the Reference Configuration sample application. Third-party application developers can use the Siebel Mobile Connector to access sales, service, or self-service data, create style sheets to filter Siebel data, retrieve updates, and generate and send alert (push) workflows. The Siebel Mobile Connector uses the XML Web Interface of SWE to retrieve information from the Siebel Mobile Connector application definition (or any other Siebel application definition).
14
Siebel Business Process Administration. This is a component that allows alerts to be sent to a third-party application server. It is a business application that can be customized by defining and managing the workflows that the alerts are based on. A Reference Configuration Sample. This sample is provided to show how to access the Metadata Business Service. The sample generates style sheets used by the third-party application and alerts based on defined business processes. It also allows the application developer to configure smcalert.cfg, the configuration file used by the Alert Business Service to determine the transport mechanism. It is hosted by an enterprise on a Microsoft Windows 2000 Web server. Third parties may wish to expose this capability within their own toolset, allowing developers to configure the third-party application. A third-party application server. This middleware application server exposes the infrastructure necessary for building mobile applications between the Siebel application and the end user. The middleware application server is responsible for queries for and retrieval of Siebel data. It interfaces with the Siebel Web Engine XML Web Interface using XML commands and presenting the data as required to the end-user. For example, a voice application server would contain the necessary telephony, speech recognition, and text-to-speech capability to interface with a user though a speech application. Additionally, a wireless online or offline application would contain the necessary client-server queuing software to allow the storage and forwarding of messages from the server to the client or vice versa. A mobile client. In deployments of applications in wireless environments, Siebel data is accessed by users with client software residing on a mobile device such as a personal digital assistant or mobile phone. The client software is capable of accessing the third-party application and displaying a user interface in HTML, WML or other mark-up language. It is not necessary that the application platform be a mobile device; other platforms can also be used with the Siebel Mobile Connector. In the Siebel architecture, no components are hosted on the client.
15
About the Siebel Mobile Connector How to Work with the Siebel Mobile Connector
Figure 1 illustrates the architecture of a system using the Siebel Mobile Connector to provide access to the Siebel database from a third-party mobile application.
Figure 1.
Each block in Figure 1 represents a separate machine, although some of the components shown separately could be installed on a single machine.
16
About the Siebel Mobile Connector How to Work with the Siebel Mobile Connector
1 2
Using the third-party applications user interface, the user requests information residing in the Siebel database. The third-party application passes the information requested by the user to Siebel Web Engine (SWE) in the form of an XML document. The request is made through HyperText Transfer Protocol (HTTP), Java Data Bean, COM Data Control or any Siebel object interface. The Siebel Mobile Connector, which is part of the Siebel Server, invokes SWE to retrieve information from the Siebel database. This information is then passed back through Siebel Object Manager to SWE. When SWE has the requested data, it returns it in the form of an XML document to the thirdparty application. If less than the total data set is wanted, the request specifies a style sheet that should be applied to the data. The style sheets are located at the Siebel Server. The third-party application parses the XML document and presents the Siebel data to the user in its own user interface.
3 4 5
NOTE: If your application provides online or offline capabilities, it must have the capability for storing and forwarding messages. In other words, your application must have a feature that queues messages between server and client, allowing the exchange of messages. For more detailed information on how the business services of the Siebel Mobile Connector work, see How the Metadata Business Service Works on page 53 and How the Alert Business Service Works on page 75.
17
About the Siebel Mobile Connector How to Work with the Siebel Mobile Connector
18
The Siebel Mobile Connector is a separately-licensed Siebel product option that is integrated into the architecture of Siebel 7.5, sharing the same Siebel Server, tool set (Siebel Tools), and installer as the rest of the Siebel Business Applications suite. As such, this document focuses on the incremental steps required to enable the Siebel Mobile Connector as part of installing Siebel Business Applications. The Siebel Mobile Connector supports the same platforms supported by other Siebel Business applications. Operating systems, databases, and browsers supported by other Siebel Business Applications are supported by the Siebel Mobile Connector.
Installation Prerequisites
Before you begin installing the Siebel Mobile Connector, make sure that you have the appropriate license keys for the number of users that your enterprise plans to support. You must enter the license key for the Siebel Mobile Connector in order to use the product. The Siebel Mobile Connector components are installed automatically during the installation of Siebel Server and Siebel Web Engine. For more information, see the Siebel Server Installation Guide for the operating system you are using.
19
COM Data Control. This component must be installed on the Siebel server if your application will use this method for accessing the Siebel XML Web Interface. Also, it must be installed on the machine where you are running the Reference Configuration Sample application. This control should be automatically installed when Siebel eAI is installed. You can verify that the control is installed by viewing the registry and checking to see whether SiebelDataControl.SiebelDataControl.1 is registered. Java Data Bean Interface. This component must be installed on the Siebel Server if your application will use this method for accessing the Siebel XML Web Interface. This control should be automatically installed when Siebel eAI is installed. For more information on the Java Data Bean Interface, see these Siebel JAR files included with your installation: SiebelJI_Common.jar and SiebelJI_lang.jar (where lang is the Language Pack you want to deploy) located in \sea75x\siebsrvr\CLASSES.
Figure 2.
20
Figure 3.
Figure 4.
21
Installing the Siebel Mobile Connector Configuring the Siebel Mobile Connector
Enable the following Server Components: Enterprise Application Integration and Workflow Management. NOTE: This step is optional. It is only necessary if you want to enable the Alert Business Service.
Select the Batch Comp Admin tab and click Synchronize. NOTE: Synchronization may take several minutes to complete.
22
Installing the Siebel Mobile Connector Configuring the Siebel Mobile Connector
Two DLL files are created for Mobile Connector during installation. These files are located in the drive:\dir_name\siebsrvr\bin directory (where drive is the drive and dir_name is the directory where Siebel Server was installed): sscalt.dll (sscalt.so on UNIX) ssmdbldr.dll (ssmdbldr.so on UNIX)
NOTE: On UNIX systems, file locations will be different. In a typical install, the smc.cfg and smcalert.cfg files are located in a directory such as /sea75x/siebsrvr/bin/enu. The files sscalt.so and ssmdbldr.so are located in a directory such as /sea75x/siebsrvr/lib.
2 3 4 5
Open the smc.cfg file in a text editor such as Notepad. Locate the section with the [SWE] parameters. Set HighInteractivity to FALSE for standard interactivity mode or TRUE for high interactivity mode. Save the file. If you are finished with configuration, then restart the Siebel Server.
You can set the number of list rows returned by a query to a value other than the default (seven records). While the default is acceptable for a typical mobile application, your application could have special needs where it would be desirable to set a different value for the default. For example, if you are enabling a wireless browser application on a phone, you may only want four records to display on the small screen size. Or, if your application will be extracting dynamic grammars, you may want to retrieve a larger number of records when doing this batch process (for instance, 100 records per query).
23
Installing the Siebel Mobile Connector Configuring the Siebel Mobile Connector
2 3
Open the smc.cfg file in a text editor such as Notepad. Locate the section with the NumberOfListRows parameters. By default, the value is 7. Change the value of this parameter if you want to specify a different number of rows.
Save the file. If you are finished with configuration, then restart the Siebel Server.
NOTE: For information about changing parameter values in the smc.cfg file that are defined during the configuration of the Siebel Server or Gateway Server, see Siebel Server Administration Guide.
[SMC Alert] WorkflowDelete = SMCAlert-Delete.xml WorkflowInsert = SMCAlert-Insert.xml WorkflowOlfValue = SMCAlert-OldFieldValue.xml WorkflowNewValue = SMCAlert-NewFieldValue.xml
24
Installing the Siebel Mobile Connector Configuring the Siebel Mobile Connector
2 3
Open the smcalert.cfg file in a text editor such as Notepad. Add a parameter to the file for each transport mechanism you want to use for the Alert Business Service. For each added transport mechanism, it is also necessary to add the required parameters used for configuring it. The MSMQ transport mechanism is displayed by default. You can configure MSMQ for use with the Alert Business Service by entering the name of the MSMQ Queue for MsmqPhysicalQueueName, and entering the machine that owns the queue specified by the physical queue name for MsmqQueueMachineName. You can also set any optional parameters that you want to configure.
Save the file. If you are finished with configuration, then restart the Siebel Server.
NOTE: You can also use the Reference Configuration Sample to configure the smcalert.cfg file. For more information, see SMC Alert Welcome Screen on page 68. For information on supported transport mechanisms and the parameters for each, see the eAI documentation on the Siebel Bookshelf, especially Transports and Interfaces: Siebel Enterprise Application Integration.
25
3 4 5 6
Click the Capabilities tab. In the Capabilities form, click New record. In the Capability Name search field, enter VoiceApplication and click Go. Upon retrieving VoiceApplication, click OK. NOTE: Although this may seem to indicate only voice applications may use this capability, this is not the case. The system does not check to see what type of application is actually connecting, only that its browser type and this capability have been registered.
7 8
Click Edit to edit the Capability Value field, and then enter TRUE. Save the record. By stepping off the record, an implicit save will occur, or select Save from the drop-down list to explicitly save the record.
Click New to add the User-Agent Capability (refer to the preceding steps).
10 Click Edit to add the User-Agent capability value, and then save the record.
The value that you input here must be used in the header of the XML query that will be passed to the Siebel Web Engine.
26
For a reference to the application definition, see Appendix A, SMC Application Definition Quick Reference.
Access to all views in: SMC Account Screen SMC Activity Screen SMC Contact Screen SMC Employee Screen SMC Opportunity Screen SMC Service Request Screen
Access to all views in: SMC Account Screen SMC Activity Screen SMC Contact Screen SMC Employee Screen SMC Service Request Screen
27
Responsibilities Access to: SMC Branch Locator View SMC eService Order View SMC eService Request View
SMC Administrator
Access to all the views in: SMC Account Screen SMC Activity Screen SMC Contact Screen SMC Opportunity Screen SMC Employee Screen
28
This chapter provides an overview of data transfer mechanisms and information about working specifically with real-time access to data and data updates. Topics include a review of the format of XML user data and commonly used XML commands, updating and synchronizing data, and adding support for multiple languages.
If you are using the COM Data Control or Java Data Bean to send HTTP or XML requests to SWE, then the XML output received from SWE will contain an encoding property of UTF-16. In other words, the XML header will look like this: <?xml version="1.0" encoding="UTF-16"?>. If the XML output must be loaded in a Web browser or an XML parser, then you must remove this property or set it to UTF-8. The header will like this: <?xml version="1.0" ?> or <?xml version="1.0" encoding="UTF-8"?>. For the latest information on UTF encoding, see OracleMetaLink 3.
29
For information on object interfaces including Siebel COM Data Control and the Siebel Java Data Bean interface, see Siebel Tools Online Help. NOTE: Examples in this document show commands in the HTTP format. In the examples, spaces in the HTTP requests are shown replaced by a plus sign (+). It is recommended that you replace the spaces in HTTP requests with plus sign (+) symbols.
The following are some methods commonly used with SWE: CollapseTreeItem CopyRecord CreateRecord DeleteQuery DeleteRecord Drilldown EditRecord ExecuteQuery ExpandTreeItem GetSMCUpdate GotoFirstSet GotoLastSet GotoNextSet GotoPreviousSet GotoView MoveDown MoveUp NewQuery NewRecord NextTreeItem PickNone PickRecord PositionOnRow PreviousTreeItem RefineQuery SaveQueryAs SelectTreeItem SortAscending SortDescending ToggleTo UndoRecord WriteRecord
NOTE: SWE expects the correct spelling and valid values for all commands, methods and arguments. Invalid SWE commands, methods and arguments are ignored. No error message is returned by SWE for such errors and the calling application may experience unexpected results. For information on the XML interface to SWE, see Siebel Tools Online Help.
30
Description Describes the version of XML supported and the type of encoding used. Appended in all XML pages. Describes the application name, such as the Siebel Mobile Connector or the Siebel Sales Enterprise, that the third-party application is connected to and interacting with. Appended in all XML pages. Describes the default markup language that is supported. It is based on the user-agent in the HTTP request header. Contains the following user interface information (the UI is defined in Siebel Tools): Menu, Tool bar, Screen bar, Thread bar, and Page item. The information under this tag can be turned off by specifying SWEDataOnly=TRUE in the HTTP request.
Required
Navigation elements
Optional
31
Description Contains the user interface for predefined queries (the UI is defined in Siebel Tools). Like the navigation elements, this information is generated by default. The information under this tag can be turned off by specifying SWEDataOnly=TRUE in the HTTP request. Contains the current active screen and view information, applets, and the record (user data) defined in that view. Some UI elements are contained in this section that will not be included in data only mode. This section is generated by default. Specify SWEDataOnly=TRUE in the HTTP request to return only this information.
Optional
Table 1.
Common XML Tags and Attributes Description Specifies the name of the application. For example, <APPLICATION NAME="Siebel Mobile Connector"> where APPLICATION is the tag, NAME is its attribute and the Siebel Mobile Connector is the value of NAME attribute. Specifies information about the user agent or the browser type that made the XML or HTML request. Specifies information about the name and title for the currently active screen. Contained inside the APPLICATION element. Describes the name and title of the currently active view (similar to the SCREEN element). Returns additional information in addition to the name and title of the applet. Contained inside the VIEW element. Describes what mode the applet is in. Possible values include EDIT or BASE. EDIT specifies that the applet allows modification, deletion, creation and querying of records. BASE specifies that the applet is read only and cannot be modified.
32
Table 1.
Common XML Tags and Attributes Description Provides a filter to what specific edit mode operations are possible for the applet. If any of these attributes are TRUE, then that particular operation is not possible. For example, if NO_INSERT attribute is TRUE then new records cannot be inserted into the applet. The third-party application can customize the associated commands based on these attributes. For example, if the NO_EXEC_QUERY attribute is set to FALSE for an applet, this indicates that the third-party application should be able to query for a contact using that applet. Specifies the C++ class the applet belongs to. For example, in the first sample in this section, the CLASS attribute has a value of CSSFrameListBase, which means it is a List applet. The second sample has a CLASS value of CSSFrameBase, which means it is a Form applet. Gives an indication of the number of data records returned. A plus sign (+) at the end indicates that there are more records than that returned. Contains the COLUMN element. Specifies the column details for the data records. Specifies information about the name, title and text length of the columns respectively. Describes what kind of data type the column represents. For example, the phone number has a data type of phone and an email has a data type of email. This information could be used by the third-party application to make a call or send an email. Specifies whether or not the column is required. This information is useful when creating new records. The third-party application can determine what field information is mandatory by looking at this attribute. Specifies the format of the data. For the Date data type this attribute should contain the acceptable Date Format (refer to the following sample). For revenue and other price related fields this attribute will have the format for the dollar amount. The third-party application can use this to get or display the right information back to the user. Specifies that the column has been calculated, for example, by using mathematical expressions. The column has not been directly derived from the database tables. This information could be useful during record creation. Specifies the name of the FIELD element in the business component that the column refers to. The FIELD element contains the actual data. The third-party application would make use of both FIELD and COLUMN elements to get more information on the data. FIELD is useful in determining what fields to query on while fetching a particular record.
CLASS
REQUIRED
FORMAT
CALCULATED
FIELD
33
Table 1.
Common XML Tags and Attributes Description Specifies whether the column is editable or just read only. This information could be useful to the third-party application when modifying certain columns. Indicates whether the column or field is a number or text. Contains the XML tags that hold the actual data. Identifies the row id of the data in the attribute ROW_ID. This information is very useful in querying for a particular row of data and getting the detailed information for that row. Indicates that the particular row is selected on the user interface.
SELECTED
34
Authenticating Users
Authentication is the process of verifying the identity of a user. The Siebel Mobile Connector uses the Siebel security adapter authentication architecture for authenticating Siebel application users to external partner applications. This architecture supports authentication to Microsoft Active Directory Server and LDAP-compliant directories. Additionally, partners may also create their own authentication mechanism by writing to the Siebel Security Adapter API. For more information, go to OracleMetaLink 3 and search for Security Adapter SDK. Partner applications must log in to the Siebel Web Engine to instantiate a user session and must log out to terminate the session. A users session is managed in SWE by using cookies or an authentication mode without cookies.
Logging In
Logging in to SWE is required to instantiate a new user session. The command ExecuteLogin is used to supply the user credentials and log in. The following is an example of how to construct a log in command by using an HTTP request.
To log in to SWE
Send the ExecuteLogin command in a HTTP request to SWE, with a valid user name and password. In the following example, your user name and password is WLEE. http://localhost/smc_enu/ start.swe?SWECmd=ExecuteLogin&SWEUserName=WLEE&SWEPassword=WLEE&SWESetMarkup=XML NOTE: SWESetMarkup is a required parameter. Generally, when using the Siebel Mobile Connector you can set the SWESetMarkup parameter to HTML, WML, or XML. However, you may not use the GetSMCUpdate method or receive alerts in any other markup than XML.
Logging Off
Logging off of SWE is required to terminate a new user session. The command Logoff is used to log off.
35
To log off from SWE Send the Logoff command in a HTTP request to SWE. http://localhost/smc_enu/start.swe?SWECmd=Logoff&SWESetMarkup=XML NOTE: There is a default time-out set by the SWE engine if no user action has taken place.
Session Management
When a user logs in to the Siebel Web Engine, SWE dynamically generates session cookies or uses an authentication mode without cookies. Cookies are generated by default and include a Session ID that is used to track the session. If cookies are disabled or if a users browser does not support cookies, then the Session ID for each page is included in its URL. For more information, refer to Siebel Security Guide.
Retrieving Data
This section describes how to retrieve data from SWE by using the XML Web Interface. Included is an overview of navigating to a screen, navigating within a screen, as well as information about queries and updates.
Navigating to a Screen
Navigating to a screen is required to retrieve data about the screens views and applets. The command GotoPageTab is used to go to a specific screen. To navigate to a screen
1 2
Log in to SWE. For more information, see Logging In on page 35. Navigate to the screen to which you want to go. In the following example you are navigating to the SMC Opportunity Screen: http://localhost/smc_enu/ start.swe?SWECmd=GotoPageTab&SWEScreen=SMC+Opportunity+Screen&SWEDataOnly=TRUE&SWE SetMarkup=XML
NOTE: GotoPageTab executes the default PDQ (predefined query) for that screen. The following is a list of screens provided in the Siebel Mobile Connector application definition to which you can navigate. Screen Name SMC Account Screen SMC Activity Screen SMC Contact Screen Display Name Accounts Activities Contacts
36
Screen Name SMC Opportunity Screen SMC Service Request Screen SMC eService Request Screen SMC eService Order Screen SMC Branch Locator Screen SMC Employee Screen SMC Responsibility Screen
Display Name Opportunities Service Requests eService Requests Service Orders Branch Locator Employees Responsibilities
Querying Items
To perform a query, you must navigate to the screen that allows queries and then you must send two separate requests to SWE. The two requests are: The NewQuery command The ExecuteQuery command
In the ExecuteQuery command block, you must specify a parameter to identify the column (the field you want to search) and a value to indicate the search criteria.
37
To perform a query 1
Login to SWE and navigate to the screen, view and applet to which you want to go. For more information, see Logging In on page 35, Navigating to a Screen on page 36 and Navigating Within a Screen on page 37.
Invoke the NewQuery method. Example (where you want to query on a field in the SMC Opportunity View): http://localhost/smc_enu/ start.swe?SWECmd=InvokeMethod&SWEApplet=SMC+Opportunity+List+Applet&SWEView=SMC+Op portunity+View&SWENeedContext=false&SWEReqRowId=0&SWEBID=1&SWEMethod=NewQuery&SWESetMarkup=XML
Invoke the ExecuteQuery method and specify a value to indicate the search criteria. In the following example, query for a record name called IP_Webserver: http://localhost/smc_enu/ start.swe?SWECmd=InvokeMethod&SWEApplet=SMC+Opportunity+List+Applet&SWEView=SMC+Op portunity+View&SWENeedContext=false&SWEReqRowId=0&SWEBID=1&SWEMethod=ExecuteQuery&SWESetMarkup=XML&Name=IP_Webserver
For a list of the view anapplet names to which you can navigate, see Appendix A, SMC Application Definition Quick Reference.
Invoke the DrillDown method and pass the value of the field you want to drill down to in the SWEField argument. In the following example, drill down on the Account field: http://localhost/smc_enu/start.swe? SWECmd=InvokeMethod&SWEApplet=SMC+Opportunity+List+Applet&SWEView=SMC+Opportunity+ View&SWERowId=9927NLD&SWENeedContext=true&SWEReqRowId=1&SWEMethod=Drilldown&SWEField=Account&SWESe tMarkup=XML NOTE: If you want to drill down into a specific record, then specify the SWERowId parameter of the row you want to drill down to. When the SWERowId parameter is not supplied in a drill down, then SWE returns the first record in the list.
38
For a list of the field names on which you can drill down, see Appendix A, SMC Application Definition Quick Reference.
To execute a PDQ 1
Log in to SWE and navigate to the screen, view and applet to which you want to go. For more information, see Logging In on page 35, Navigating to a Screen on page 36 and Navigating Within a Screen on page 37.
Invoke the ExecuteNamedQuery method and pass the value of the PDQ you want to use. Example (to use the My Activities for the Week PDQ): http://localhost/smc_enu/ start.swe?SWECmd=ExecuteNamedQuery&SWEView=SMC+Activity+View&SWENeedContext=false& SWEQueryName=My+Activities+for+the+Week&SWEBID=-1&SWESetMarkup=XML
Navigate within the screen to which you want to query. If there are more than 100 records, you can set the row count to 100 to get the first set of 100 records. In the following example, you are navigating to the Contact Attachment View:
39
Examine the XML page that is returned from SWE. NOTE: The APPLET tag contains the ROW_COUNTER attribute that indicates whether there are additional records. In the following example, the ROW_COUNTER indicates that there are additional records by containing a plus sign (+): <APPLET MODE="Edit" ROW_COUNTER="1 of 100+" NO_INSERT="FALSE" ACTIVE="FALSE" CLASS="CSSFrameBase" TITLE="Account" ID="1" NO_MERGE="FALSE" NO_DELETE="FALSE" NO_UPDATE="FALSE" NO_EXEC_QUERY="FALSE" NAME="Account Form Applet">
Query again, this time invoking the GoToNextSet method to obtain the next set of records. Example: http://localhost/smc_enu/ start.swe?SWECmd=InvokeMethod&SWEApplet=SMC+Account+List+Applet&SWEView=SMC+Accoun t+View&SWENeedContext=false&SWEReqRowId=0&SWEBID=1&SWEMethod=GotoNextSet&SWESetMarkup=XML
Again, examine the XML page that is returned from SWE. NOTE: The APPLET tag contains the ROW_COUNTER attribute that indicates whether there are additional records. In the following example the ROW_COUNTER indicates that there are additional records by containing a plus sign (+): <APPLET MODE="Edit" ROW_COUNTER="101 of 200+" NO_INSERT="FALSE" ACTIVE="FALSE" CLASS="CSSFrameBase" TITLE="Account" ID="1" NO_MERGE="FALSE" NO_DELETE="FALSE" NO_UPDATE="FALSE" NO_EXEC_QUERY="FALSE" NAME="Account Form Applet">
To get all the records in this set, continue querying in this way until there are no additional records returned (that is, when the ROW_COUNTER attribute does not contain a + sign).
40
<CONTROL HTML_TYPE="Field" CAPTION="Start" SCALE="0" DATATYPE="utcdatetime" HIDDEN="FALSE" NUMBER_BASED="FALSE" ID="1801" TYPE="TextBox" REQUIRED="FALSE" TEXT_BASED="FALSE" FORMAT="M/D/YYYY hh:mm p" CALCULATED="FALSE" ENABLED="TRUE" MAX_LENGTH="32" NAME="Planned">8/12/1999 03:00 PM</CONTROL>
NOTE: The FORMAT attribute uses the standard Siebel date format specification. For example, to indicate the month of March, a single capital M indicates that the month is represented by 3; MM indicates 03; MMM indicates Mar; and MMMM indicates March.
Adding Records
The following procedure describes how to add records to a list. You must first navigate to a screen that allows rows to be inserted, send requests to SWE to execute a new record, and write the data to the record. The commands used are NewRecord and WriteRecord.
To add a record 1 2
Login to SWE and navigate to the screen to which you want to go. For more information, see Logging In on page 35 and Navigating to a Screen on page 36. Execute a new record by using the NewRecord command. Example: http://localhost/smc_enu/ start.swe?SWECmd=InvokeMethod&SWEApplet=SMC+Contact+List+Applet&SWEView=SMC+Contac t+View&SWENeedContext=true&SWEReqRowId=0&SWEMethod=NewRecord&SWESetMarkup=XML NOTE: For a NewRecord command, the SWERowID parameter should be empty. The XML returned from this command will contain the new RowID for the record created. You will use the new RowID value returned from SWE in the next step. For an example of XML output from SWE that contains a RowID, see the example in Step 5 on page 46.
41
Fill in the fields in the user interface, and then write the data to the record. Use the WriteRecord command. Example: http://localhost/smc_enu/ start.swe?SWECmd=InvokeMethod&SWEApplet=SMC+Contact+List+Applet&SWEView=SMC+Contac t+View&SWERowId=994CESH&SWENeedContext=true&SWEReqRowId=1&SWEMethod=WriteRecord&Last+Name=Haven&Firs t+Name=Chris&SWESetMarkup=XML
Modifying Records
The following procedure describes how to modify a record. You must first navigate to a screen that allows records to be modified, perform a new query, execute the query, invoke the edit record method, and write the record.
To modify a record 1
Login to SWE and navigate to the screen, view and applet to which you want to go. For more information, see Logging In on page 35, Navigating to a Screen on page 36 and Navigating Within a Screen on page 37.
Query for the record you want to modify. For more information, see Querying Items on page 37. CAUTION: If you do not use a primary key to perform the query, several records may be returned in the response. The record you want to modify may not be the one selected.
Write the record. You must invoke the WriteRecord method to modify the record. In the following example, modify a Job Title to read QA: http://localhost/smc_enu/ start.swe?SWECmd=InvokeMethod&SWEApplet=SMC+Contact+List+Applet&SWEView=SMC+Contac t+View&SWERowId=9927NLD&SWENeedContext=true&SWEReqRowId=1&SWEMethod=WriteRecord&SWESetMarkup=XML&Job +Title=QA In the following example modify a record with the fields Job Title, Work Phone #, and Email Address: http://localhost/smc_enu/ start.swe?SWECmd=InvokeMethod&SWEApplet=SMC+Contact+List+Applet&SWEView=SMC+Contac t+View&SWERowId=9927NLD&SWENeedContext=true&SWEReqRowId=1&SWEMethod=WriteRecord&SWESetMarkup=XML&Job +Title=QA+Engineer&Work+Phone #=4255551212&Email+Address=someone@oracle.com
42
Deleting Records
The following procedure describes how to delete a record. You must first navigate to a screen that allows records to be modified, perform a new query, execute the query, and delete the selected record.
To delete a record 1
Login to SWE and navigate to the screen, view and applet to which you want to go. For more information, see Logging In on page 35, Navigating to a Screen on page 36 and Navigating Within a Screen on page 37.
Query for the record you want to delete. For more information, see Querying Items on page 37. CAUTION: If you do not use a primary key to perform the query, several records may be returned in the response. The record you want to delete may not be the one selected.
Delete the selected record by using the DeleteRecord to access the record by its primary key (in this case, the RowID). Example: http://localhost/smc_enu/ start.swe?SWECmd=InvokeMethod&SWEApplet=SMC+Contact+List+Applet&SWEView=SMC+Contac t+View&SWERowId=010LMD&SWENeedContext=true&SWEReqRowId=0&SWEMethod=DeleteRecord&SWEC=5
43
Uploading Files
Applications may require that files be uploaded to the Siebel database. For example, mobile voice applications may allow users to update descriptions or add comments by capturing speech in an audio file and attaching it to the record. NOTE: This procedure cannot be done by sending HTTP requests in a browser. Instead, uploading files must be done programmatically, so the application that uploads the files can modify the Content-Type of the HTTP request and send the file according in the appropriate format for file uploads.
To upload a file 1
Log in to SWE and navigate to the screen, view and applet to which you want to go. For more information, see Logging In on page 35, Navigating to a Screen on page 36 and Navigating Within a Screen on page 37. The Content-Type of the HTTP request must be set to application/x-www-form-urlencoded for each step of this procedure, except where noted.
Create a new record by invoking the NewRecord method to make a record for the file you want to attach. In the following example Content-Type is application/x-www-form-urlencoded: http://localhost/smc_enu/ start.swe?SWECmd=InvokeMethod&SWEApplet=Account+Attachment+Applet&SWEView=Account+ Attachment+View&SWERowId=&SWENeedContext=true&SWERowIds=SWERowId0=105NIG6U&SWEReqRowId=0&SWEMethod=NewRecord&SWEC=3&SWESetMarkup=XML NOTE: The SWERowId parameter is not required here and can be empty (a value for this parameter will be returned). However, SWERowId0 is a required parameter. SWERowID0 is the id of the parent row and SWERowId is the child's id. The Row IDs of the parent and child can be obtained from the XML output returned from the previous request.
Edit the field by invoking the EditField method and modifying the record for the file you want to attach. In the following example, Content-Type is application/x-www-form-urlencoded: http://localhost/smc_enu/ start.swe?SWECmd=InvokeMethod&SWEApplet=Account+Attachment+Applet&SWEW=0&SWEView=A ccount+Attachment+View&SWERowId=&SWEField=AccntFileName&SWEDIC=true&SWENeedContext =true&SWERowIds=SWERowId0=105NIG6U&SWEH=0&SWEReqRowId=1&SWESP=true&SWEMethod=EditField&SWEC=4&SWESetMarkup=XML NOTE: You will need to supply the SWERowID parameter returned in the XML output from Step 2. SWE requests that require a RowID will not work if the SWERowId parameter is not supplied.
Attach the file to the record by invoking the WriteRecord method. Set the Content-Type of the HTTP request containing the attachment to multipart/form-data for this step of the procedure. In the following example, Content-Type is multipart/form-data:
44
Content-Type: multipart/form-data; boundary=BbC04y --BbC04y Content-Disposition: name="SWECmd" InvokeMethod --BbC04y Content-Disposition: name="SWEApplet" File Popup Applet --BbC04y Content-Disposition: name="SWEView=" Account Attachment View --BbC04y Content-Disposition: name="SWERowId" 10-5O167A --BbC04y Content-Disposition: name="SWENeedContext" false --BbC04y Content-Disposition: name="SWERowIds" SWERowId0=10-5NIG6U --BbC04y Content-Disposition: name="SWEReqRowId" 1 --BbC04y Content-Disposition: name="SWEP" 19_Account+Attachment+Applet9_EditField9_10-5O167AD_AccntFileName1_4 --BbC04y Content-Disposition: name="SWEMethod" WriteRecord --BbC04y Content-Disposition: name="SWESetMarkup"
45
XML --BbC04y Content-Disposition: name="SWEC" 4 --BbC04y Content-Disposition: name="_SweFileName"; filename="file1.txt" Content-Type: text/plain ... contents of file1.txt ... --BbC04y-TIP: For additional information about HTTP file uploads, the relationship between multipart/ form-data and other content types, performance issues, and so on, see the documentation available at http://www.w3.org/.
After you upload the file, examine the XML content of the user data you get back from SWE and make a note of the SWERowId parameter. You will need the value of this parameter in the next step. In the following example, the RowId is 10-5O167A: - <ROW ROWID="10-5O167A" SELECTED="TRUE"> <FIELD VARIABLE="AccntFileName" NAME="AccntFileName" /> <FIELD VARIABLE="AccntFileSize" NAME="AccntFileSize" /> <FIELD VARIABLE="AccntFileExt" NAME="AccntFileExt" /> <FIELD VARIABLE="AccntFileDate" NAME="AccntFileDate" /> <FIELD VARIABLE="AccntDockStatus" NAME="AccntDockStatus"><img width="11" alt="ENU_white.gif" src="images/white.gif" border="0" height="11"/></FIELD> <FIELD VARIABLE="AccntFileDockReqFlg" NAME="AccntFileDockReqFlg" /> <FIELD VARIABLE="AccntFileAutoUpdFlg" NAME="AccntFileAutoUpdFlg" /> <FIELD VARIABLE="Comment" NAME="Comment" /> </ROW> NOTE: Remember that SWERowId=10-5O167A. Also, that in the XML output there is no data in the FIELD tags because this is a new form and the user has not entered any data. TIP: After you upload the file, you can also verify that the filename is present in the XML file you get back from SWE.
46
Save the record by invoking the WriteRecord method with the value of the SWERowId parameter that you noted in the Step 5. In the following example, Content-Type is application/x-www-form-urlencoded: http://localhost/smc_enu/ start.swe?SWECmd=InvokeMethod&SWEApplet=Account+Attachment+Applet&SWEView=Account+ Attachment+View&SWERowId=10-5O167A&SWENeedContext=true&SWERowIds=SWERowId0=105NIG6U&SWEReqRowId=1&SWEMethod=WriteRecord&SWEC=5&SWESetMarkup=XML NOTE: Be sure to set the HTTP Content-Type to application/x-www-form-urlencoded for this step.
Downloading Files
Applications may require that files be downloaded from the Siebel database to a mobile device or other platform. For example, mobile voice applications may allow users to listen to voice recordings stored as audio files.
To download a file 1
Log in to SWE and navigate to the screen, view and applet to which you want to go. For more information, see Logging In on page 35, Navigating to a Screen on page 36 and Navigating Within a Screen on page 37. The Content-Type of the HTTP request must be set to application/x-www-form-urlencoded for each step of this procedure, except where noted.
Drill down in the record containing the attached file by invoking the Drilldown method and passing the value of the SWERowId parameter. Example: http://localhost/smc_enu/ start.swe?SWECmd=InvokeMethod&SWEApplet=Account+Attachment+Applet&SWEView=Account+ Attachment+View&SWERowId=10-5O167A&SWENeedContext=true&SWERowIds=SWERowId0=105NIG6U,SWERowId1=&SWEReqRowId=1&SWEMethod=Drilldown&SWEC=3&SWEField=AccntFileName& SWESetMarkup=XML NOTE: SWERowID0 is the Row ID of the parent row and SWERowId is the child's ID. The Row IDs of the parent and child can be obtained from the XML output returned from the previous request. SWE requests that require a Row ID will not work if the SWERowId parameter is not supplied.
47
Getting Updates
In some instances, a third-party application may require a local copy of a subset of Siebel data for its own use. Such applications can periodically check if there is any new data, and retrieve just the data that has changed. The GetSMCUpdate method is used to obtain such updates. This method extracts the system level record information that is otherwise not available through the user interface. NOTE: Generally, when using the Siebel Mobile Connector you can set the SWESetMarkup parameter to HTML, WML, or XML. However, you may not use the GetSMCUpdate method or receive alerts in any other markup than XML.
GetSMCUpdate
The method GetSMCUpdate is invoked to retrieve the changes in data from a specified time to the current time. The changes that are noted are at the record level versus for a specific field. Even if you apply a style sheet which parses the particular field that changes, the record will show as having changed. If your application requires notification about changes to specific fields, then you can use the Alert Business Service for this purpose. This is an important point for understanding this method. The GetSMCUpdate method cannot be subscribed to at the Form Applet or Entry Applet level, only at the List Applet level. Also, if a field that has changed is present in both the List Applet and the Form Applet, then the GetSMCUpdate method will pick up the changes at the record level in the Form Applet. When using the GetSMCUpdate method to retrieve updates for child applets, the method only returns the records for the child applet associated with a particular parent record. NOTE: For a client application to receive updates, it is also necessary that the parameter VoiceApplication be set to TRUE. For more information, see Configuring a User Agent for the Siebel Mobile Connector Applications on page 25. Send a command to SWE with the following parameters to get an update: Required or Optional Required Required
Description Sets the name of the SWE command to InvokeMethod. Sets the name of the SWE method to GetSMCUpdate. This is a new SWE method available with the Siebel Mobile Connector. Specifies the name of the view you want to receive an update for.
SWEView=<view_name>
Required
48
Parameters SWEApplet=<applet_name>
Description Specifies the name of the applet you want to receive an update for. You must subscribe to the GetSMCUpdate at the List Applet level, not the Form Applet or Entry Applet level.
SWESetMarkup=XML LastUpdate=<date>
Required Optional
Specifies the XML markup mode. Specifies the last update date or date/time. For example, 07/30/2002 or 07/30/2002 12:00:00. The time is denoted in 24 hour format (military time). The update is the delta between the current time and the time specified. If no value is specified, all requested data will be returned. Specifies an XSL style sheet to be applied to the output results. Specifies the number of rows to be applied. If no value is given, the number of rows returned matches the default value for NumberOfListRows specified in the smc.cfg file.
Optional Optional
To get an update 1
Log in to SWE and navigate to the screen, view and applet to which you want to go. For more information, see Logging In on page 35, Navigating to a Screen on page 36 and Navigating Within a Screen on page 37. NOTE: It is not necessary to navigate to a specific view or applet if you want to get an update for the screens default view.
Invoke the GetSMCUpdate method. In the following example, you want to get an update for records that have changed from 07/01/ 2002 to the present: http://localhost/sales/start.swe? SWECmd=InvokeMethod&SWEMethod=GetSMCUpdate&SWEView=SMC+Account+View&SWEApplet=SMC+ Account+ListApplet&LastUpdate=07/01/2002&SWESetRowCnt=100&SWESetMarkup=XML NOTE: If you pass an invalid date for the LastUpdate parameter, you may receive an error message Unable to load message 0xffff. This message indicates that the date given is not a valid parameter for the GetSMCUpdate method.
Additional Examples
This section lists several additional example requests to SWE using the GetSMCUpdate method.
49
The following request passes a date as the value of the LastUpdate parameter. It retrieves all records that have changed since 07/30/2002 or later. http://localhost/smc_enu/ start.swe?SWECmd=InvokeMethod&SWEMethod=GetSMCUpdate&SWEView=SMC+Account+View&SWEA pplet=SMC+Account+List+Applet&SWESetMarkup=XML&LastUpdate=07/30/2002
The following request passes a date and time as the value of the LastUpdate parameter. It retrieves all records that have changed since 07/30/2002 at noon or later. http://localhost/smc_enu/ start.swe?SWECmd=InvokeMethod&SWEMethod=GetSMCUpdate&SWEView=SMC+Account+View&SWEA pplet=SMC+Account+List+Applet&SWESetMarkup=XML&LastUpdate=07/30/2002 12:00:00
The following request passes a date as the value of the LastUpdate parameter and uses a style sheet to filter data. It retrieves only the data specified in CompanyName_SiebelMobileConnector_SMCAccountView_GM.xsl for records that have changed since 07/30/2002 or later. http://localhost/smc_enu/ start.swe?SWECmd=InvokeMethod&SWEMethod=GetSMCUpdate&SWEView=SMC+Account+View&SWEA pplet=SMC+Account+List+Applet&SWESetMarkup=XML&LastUpdate=07/30/2002 12:00:00&SWEXslStyleSheet=CompanyName_SiebelMobileConnector_SMCAccountView_GM.xsl NOTE: Remember that the GetSMCUpdate method retrieves changes at the record level and not for specific fields. If you apply a style sheet to limit data to a specific field, this will not make a difference. When your application must retrieve updates at the field level not the record level, then use the Alert Business Service.
The following request passes a date as the value of the LastUpdate parameter. It retrieves all records that have changed since 07/30/2002 or later, up to a maximum number of 50 records. http://localhost/smc_enu/ start.swe?SWECmd=InvokeMethod&SWEMethod=GetSMCUpdate&SWEView=SMC+Account+View&SWEA pplet=SMC+Account+List+Applet&SWESetMarkup=XML&LastUpdate=07/30/ 2002&SWESetRowCnt=50
The following request passes a date as the value of the LastUpdate parameter. It retrieves all records that have changed since 07/30/2002 or later (assuming that there are less than 500 records). http://localhost/smc_enu/ start.swe?SWECmd=InvokeMethod&SWEMethod=GetSMCUpdate&SWEView=SMC+Account+View&SWEA pplet=SMC+Account+List+Applet&SWESetMarkup=XML&SWESetRowCnt=500
50
The management of different languages in third-party applications is a task that must be handled by the middleware application server and its communication to various devices. For general information about deploying Siebel applications in a global environment, see Siebel Global Deployment Guide.
51
52
The Metadata Business Service allows customers and partners to filter data offered through the preconfigured application definitions without having to use Siebel Tools to permanently change the application configuration. This section provides an overview of the Metadata Business Service, how it works, and its API. Additionally, you can learn about an application, the Reference Configuration Sample, that is a model for creating applications that access the Metadata Business Service API.
Figure 5.
53
Working with the Metadata Business Service How the Metadata Business Service Works
Architecture Components
The following components are involved in the Metadata Business Service: Metadata Builder Engine. This component receives input from and provides output to the third party or Reference Configuration Sample. It controls the extraction of the metadata from the SRF, the creation of an internal application representation, the building of XML representation for output, the building of style sheets and the loading and saving of XML subscriptions. Third Party or Reference Configuration Sample. This sample is provided to show how to access the Metadata Business Service. The sample generates style sheets used by the third-party application and alerts based on defined business processes. It also allows the application developer to configure smcalert.cfg, the configuration file used by the Alert Business Service to determine the transport mechanism. It is hosted by an enterprise on a Microsoft Windows 2000 Web server. Third parties may wish to expose this capability within their own toolset, allowing developers to configure the third-party application. XML Builder. This component is a module within the Metadata Business Service that traverses the hierarchical tree of the application representation and builds an XML representation for it. Application Representation. This is a hierarchical tree structure of the object definitions obtained from the Extractor/Parser module. Each node in the hierarchical tree represents an object, such as a screen object, view object, applet object, and so forth. Extractor/Parser. The Extractor/Parser is the module that traverses the application definition in the SRF and retrieves the necessary information about the user interface elements. It extracts only the user interface components necessary to create the XML output needed to configure the application definition (that is, the application, screens, views, applets, columns and list controls). Style Sheet Builder. This component generates XSL style sheets conforming to the Siebel Web Engine DTD. The algorithm goes through each node of the application representation to check if the node is selected, and if so, the matching XML tag is copied. Load/Save Selections. This component saves the XML subscription the user is working on to a file in the local file system. When the user loads the subscription from the file, the Metadata Builder engine also extracts a new representation from the SRF (in case there were any changes to the application definition) and merges the subscription with the internal application representation. Subscriptions and business processes are saved in the siebsrvr\xml directory at the location where Siebel Server is installed.
1 2
Using the Reference Configuration Sample (or a a third-party user interface), the administrator establishes a connection with the Metadata Builder engine through a COM Data Control. The administrator logs in to the Metadata Business Service and selects a Siebel application to view.
54
Working with the Metadata Business Service The Metadata Business Service API
The Metadata Builder engine uses the Extractor/Parser functionality to extract and parse the object definitions (located in the SRF file) for the specified application. (The application definitions are defined in Siebel Tools.) The Metadata Builder engine then creates a hierarchical representation of the entire application in memory. The Metadata Builder engine uses the XML Builder functionality to generate an XML representation of the application. The XML representation is presented to the administrator in the Reference Configuration Sample as a hierarchical tree structure. Using the Reference Configuration Sample, the administrator customizes the data in the hierarchical tree structure, selecting the user interface elements desired for each screen. (The administrator can also subscribe for updates and pushed alerts by using the same user interface.) When the administrator has configured each screen of the application that needs to be customized, the administrator saves the selections as a subscription. The Metadata Builder engine uses the Save Selections functionality to save all the selections (user interface elements, updates, and alerts). If alerts have been subscribed for, the Metadata Builder engine creates business processes and saves them. The administrator clicks the Create Stylesheets button. The Metadata Builder engine invokes the Style Sheet Builder functionality to generate the style sheets.
4 5
Table 2.
API Methods for Accessing the Metadata Business Service Description Returns whether or not the method can be invoked. Specifies a method to be invoked. Arguments (with Description) MethodName indicates the name of the method that you want to call. MethodName indicates the name of the method that you want to call. inputArgs are input arguments outputArgs are output arguments inputArgs are input arguments outputArgs are output arguments
CreateStyleSheets
55
Working with the Metadata Business Service The Metadata Business Service API
Table 2.
API Methods for Accessing the Metadata Business Service Description Returns a hierarchical representation of the application definition. Loads a subscription from a file. Arguments (with Description) inputArgs are input arguments outputArgs are output arguments inputArgs are input arguments outputArgs are output arguments inputArgs are input arguments outputArgs are output arguments inputArgs are input arguments outputArgs are output arguments
LoadSubscription
MetadataCleanup
Destroys the created objects to free system resources. Saves a subscription to a file.
SaveSubscription
1 2 3 4
Call GetApplicationDef or LoadSubscription (to use LoadSubscription you must have previously used GetApplicationDef and saved a subscription). Call SaveSubscription (can be called multiple times in one session). Call CreateStyleSheets (can be called multiple times in one session). Call MetadataCleanup.
NOTE: The Metadata Business Service is instantiated just like any other Siebel business service. You can instantiate the Metadata Business Service though the Siebel COM Data Control, the Java Data Bean Control, the XML Web Interface to SWE or any other object interface. For the COM and Java controls, you use the GetService(service_name) method on the application object. For the SWE interface, you use the LoadService(service_name) command.
CanInvokeMethod
CanInvokeMethod returns whether or not a method can be called.
Syntax virtual BOOL CanInvokeMethod (const SSchar* pMethodName); Argument MethodName Description Indicates the name of the method that you want to call.
Returns TRUE indicates that the method can be invoked; FALSE indicates otherwise.
56
Working with the Metadata Business Service The Metadata Business Service API
InvokeMethod
InvokeMethod calls a method.
Syntax virtual ErrCode InvokeMethod (const SSchar* pMethodName, const CCFPropertySet & inputArgs, CCFPropertySet & outputArgs); Argument MethodName inputArgs outputArgs Description Indicates the name of the method that you want to call. The input arguments of the method that you want to call. The output arguments of the method that you want to call.
CreateStyleSheets
CreateStyleSheets generates style sheets that can be passed to SWE to limit the data returned from the Siebel application. Do not directly call this method; instead call it from InvokeMethod.
57
Working with the Metadata Business Service The Metadata Business Service API
CCFPropertySet & outputArgs); Argument inputArgs Description The input arguments. <CREATE> SUBSCRIPTIONS='%string_of_XML%'. For a definition describing the inbound XML document, see DTD for Subscriptions on page 161. outputArgs The output arguments. <CREATE> SUCCESS=' '%success%'='TRUE STYLESHEETS=' '%list_of_stylesheets_and_views%'
Example InvokeMethod(SStext("CreateStyleSheets"), inputs, outputs); The input argument should be in the following format:" <?xml version="1.0" ?> - <SUBSCRIPTIONS> <NODE NodeId="Siebel Mobile Connector" SubscribeForUI="FALSE" SubscribeForUpdate="FALSE" SubscribeForPush="FALSE" /> <NODE NodeId="Siebel Mobile Connector_SMC Account Screen" SubscribeForUI="TRUE" SubscribeForUpdate="FALSE" SubscribeForPush="FALSE" /> ... <NODE NodeId="Siebel Mobile Connector_SMC Service Request Screen_Service Request detail view w/attachments_Service Request Attachment List Applet_ActivityFileName_ActivityFileName" SubscribeForUI="FALSE" SubscribeForUpdate="FALSE" SubscribeForPush="FALSE" /> </SUBSCRIPTIONS>
GetApplicationDef
GetApplicationDef returns a hierarchical representation of the application definition. Do not directly call this method; instead call it from the InvokeMethod.
58
Working with the Metadata Business Service The Metadata Business Service API
Syntax ErrCode GetApplicationDef (const CCFPropertySet & inputArgs, CCFPropertySet & outputArgs); Argument inputArgs Description The input arguments. APPLICATION_NAME='%application_name%' outputArgs The output arguments. SUCCESS='%success%' = 'TRUE' XML_DEF='%string_of_XML%'. For a definition describing the outbound XML document, see DTD for Application Definition on page 157.
Example InvokeMethod(SStext("GetApplicationDef"), inputs, outputs); The following is an example of the output arguments: <?xml version="1.0" encoding="UTF-16"?><?Siebel-Property-Set EscapeNames="false"?> <APPLICATION NodeId="Siebel Mobile Connector" PushSelectValue="FALSE" SubscribeForUpdate="FALSE" Name="Siebel Mobile Connector" SubscribeForUI="FALSE" UpdateSelectValue="FALSE" UISelectValue="FALSE" SubscribeForPush="FALSE"> <SCREEN NodeId="Siebel Mobile Connector_SMC Account Screen" PushSelectValue="FALSE" SubscribeForUpdate="TRUE" Default_View="SMC Account View" Name="SMC Account Screen" Viewbar_Text="Account" SubscribeForUI="TRUE" UpdateSelectValue="FALSE" UISelectValue="FALSE" SubscribeForPush="TRUE"> <VIEW NodeId="Siebel Mobile Connector_SMC Account Screen_SMC Account Detail Opportunities View" PushSelectValue="FALSE" SubscribeForUpdate="TRUE" Business_Object="Account" Title="Account Opportunities" Visibility_Type="SalesRepView:0" Name="SMC Account Detail - Opportunities View" Viewbar_Text="Opportunities" SubscribeForUI="TRUE" UpdateSelectValue="FALSE" UISelectValue="FALSE" SubscribeForPush="TRUE"> <APPLET NodeId="Siebel Mobile Connector_SMC Account Screen_SMC Account Detail Opportunities View_Account Form Applet" PushSelectValue="FALSE" Title="Account" Business_Component="Account" Name="Account Form Applet" Base_Table="S_PARTY" SubscribeForUI="TRUE" UISelectValue="FALSE" SubscribeForPush="TRUE"> <CONTROL Table="S_ORG_EXT" Type="FT_EDIT" Pick_Applet="Account Status Pick Applet" NodeId="Siebel Mobile Connector_SMC Account Screen_SMC Account Detail Opportunities View_Account Form Applet_AccountStatus" PushSelectValue="FALSE" Runtime="TRUE" Display_Name="Status" Name="AccountStatus" Field="Account Status" SubscribeForUI="TRUE" UISelectValue="FALSE" SubscribeForPush="TRUE">
59
Working with the Metadata Business Service The Metadata Business Service API
<FIELD Text_Length="30" Type="Text" Table="S_ORG_EXT" Extension="TRUE" Calculated="FALSE" NodeId="Siebel Mobile Connector_SMC Account Screen_SMC Account Detail - Opportunities View_Account Form Applet_AccountStatus_Account Status" PushSelectValue="FALSE" SubscribeForUpdate="FALSE" Multivalued="FALSE" Name="Account Status" SubscribeForUI="FALSE" UpdateSelectValue="FALSE" UISelectValue="FALSE" SubscribeForPush="FALSE"> <PICKLIST NodeId="Siebel Mobile Connector_SMC Account Screen_SMC Account Detail Opportunities View_Account Form Applet_AccountStatus_Account Status_PickList Account Status" PushSelectValue="FALSE" SubscribeForUpdate="FALSE" Value="ACCOUNT_STATUS" Name="PickList Account Status" SubscribeForUI="FALSE" UpdateSelectValue="FALSE" UISelectValue="FALSE" SubscribeForPush="FALSE"></ PICKLIST></FIELD></CONTROL> <CONTROL Table="S_ORG_EXT" Type="FT_EDIT" NodeId="Siebel Mobile Connector_SMC Account Screen_SMC Account Detail - Opportunities View_Account Form Applet_Alias" PushSelectValue="FALSE" Display_Name="Alias" Name="Alias" Field="Alias" SubscribeForUI="TRUE" UISelectValue="FALSE" SubscribeForPush="TRUE"> <FIELD Text_Length="100" Type="Text" Table="S_ORG_EXT" Extension="TRUE" Calculated="FALSE" NodeId="Siebel Mobile Connector_SMC Account Screen_SMC Account Detail - Opportunities View_Account Form Applet_Alias_Alias" PushSelectValue="FALSE" SubscribeForUpdate="FALSE" Multivalued="FALSE" Name="Alias" SubscribeForUI="FALSE" UpdateSelectValue="FALSE" UISelectValue="FALSE" SubscribeForPush="FALSE"></FIELD></CONTROL> <CONTROL Table="" Type="FT_BUTTON" SubscribeForUpdate="FALSE" NodeId="Siebel Mobile Connector_SMC Account Screen_SMC Account Detail - Opportunities View_Account Form Applet_EditRecord" PushSelectValue="FALSE" Display_Name="Edit" Name="EditRecord" Field="" SubscribeForUI="TRUE" UISelectValue="FALSE" SubscribeForPush="FALSE"></ CONTROL> <CONTROL Table="" Type="FT_BUTTON" SubscribeForUpdate="FALSE" NodeId="Siebel Mobile Connector_SMC Account Screen_SMC Account Detail - Opportunities View_Account Form Applet_GotoNextSet" PushSelectValue="FALSE" Display_Name="Next" Name="GotoNextSet" Field="" SubscribeForUI="TRUE" UISelectValue="FALSE" SubscribeForPush="FALSE"> </ CONTROL> <CONTROL Table="" Type="FT_BUTTON" SubscribeForUpdate="FALSE" NodeId="Siebel Mobile Connector_SMC Account Screen_SMC Account Detail - Opportunities View_Account Form Applet_GotoPreviousSet" PushSelectValue="FALSE" Display_Name="Previous" Name="GotoPreviousSet" Field="" SubscribeForUI="TRUE" UISelectValue="FALSE" SubscribeForPush="FALSE"></CONTROL></APPLET></VIEW></SCREEN></APPLICATION>
LoadSubscription
LoadSubscription gets the application definition and loads a subscription from a file. Subscriptions contain all the necessary metadata for generating style sheets or workflows. Do not directly call this method; instead call it from InvokeMethod.
60
Working with the Metadata Business Service The Metadata Business Service API
Syntax ErrCode LoadSubscription (const CCFPropertySet & inputArgs, CCFPropertySet & outputArgs); Argument inputArgs Description The input arguments. <LOAD> FILE_NAME = %full_path_to_filename%. Pass the full path of a filename for an XML file conforming to the DTD for subscriptions. For a definition of the XML file, see DTD for Subscriptions on page 161. outputArgs The output arguments. <LOAD> SUCCESS=' '%success%'='TRUE XML_DEF='%string_of_XML%'. For a definition describing the outbound XML document, see DTD for Application Definition on page 157.
Example InvokeMethod(SStext("LoadSubscription"), inputs, outputs); The following is an example of the output arguments: <?xml version="1.0" encoding="UTF-16"?><?Siebel-Property-Set EscapeNames="false"?> <APPLICATION NodeId="Siebel Mobile Connector" PushSelectValue="FALSE" SubscribeForUpdate="FALSE" Name="Siebel Mobile Connector" SubscribeForUI="FALSE" UpdateSelectValue="FALSE" UISelectValue="FALSE" SubscribeForPush="FALSE"> ... <CONTROL Table="" Type="FT_BUTTON" SubscribeForUpdate="FALSE" NodeId="Siebel Mobile Connector_SMC Account Screen_SMC Account Detail - Opportunities View_Account Form Applet_GotoPreviousSet" PushSelectValue="FALSE" Display_Name="Previous" Name="GotoPreviousSet" Field="" SubscribeForUI="TRUE" UISelectValue="FALSE" SubscribeForPush="FALSE"></CONTROL></APPLET></VIEW></SCREEN></APPLICATION>
MetadataCleanup
MetadataCleanup destroys the created objects to free system resources. You should call MetadataCleanup when you are finished with a session. Do not directly call this method; instead call it from InvokeMethod.
61
Working with the Metadata Business Service The Metadata Business Service API
Syntax void MetadataCleanup (const CCFPropertySet & inputArgs, CCFPropertySet & outputArgs); Argument inputArgs outputArgs Description The input arguments. Empty. The output arguments. Empty.
Returns Void
Example InvokeMethod(SStext("MetadataCleanup"), inputs, outputs); In Visual Basic Script: Dim inputPropertySet, outputPropertySet Set inputPropertySet = siebel.NewPropertySet() Set outputPropertySet = siebel.NewPropertySet() service_metadata.InvokeMethod("MetadataCleanup", inputPropertySet,outputPropertySet)
SaveSubscription
SaveSubscription saves a subscription to a file. Subscriptions contain all the necessary metadata for generating style sheets or workflows. Do not directly call this method; instead call it from InvokeMethod.
62
Working with the Metadata Business Service The Metadata Business Service API
CCFPropertySet & outputArgs); Argument inputArgs Description The input arguments. <SAVE> SUBSCRIPTIONS='%string_of_XML%' FILE_NAME = %full_path_to_filename%. For a definition describing the inbound XML document, see DTD for Subscriptions on page 161. outputArgs The output arguments. <SAVE> SUCCESS=' '%success%'='TRUE
Example InvokeMethod(SStext("SaveSubscription"), inputs, outputs); The input arguments should be in the following format: <?xml version="1.0" ?> - <SUBSCRIPTIONS> <NODE NodeId="Siebel Mobile Connector" SubscribeForUI="FALSE" SubscribeForUpdate="FALSE" SubscribeForPush="FALSE" /> <NODE NodeId="Siebel Mobile Connector_SMC Account Screen" SubscribeForUI="TRUE" SubscribeForUpdate="FALSE" SubscribeForPush="FALSE" /> ... <NODE NodeId="Siebel Mobile Connector_SMC Service Request Screen_Service Request detail view w/attachments_Service Request Attachment List Applet_ActivityFileName_ActivityFileName" SubscribeForUI="FALSE" SubscribeForUpdate="FALSE" SubscribeForPush="FALSE" /> </SUBSCRIPTIONS>
63
Working with the Metadata Business Service Using the Reference Configuration Sample
64
Working with the Metadata Business Service Using the Reference Configuration Sample
Table 3 lists the common tasks and the screens on which you perform them.
Table 3.
Common Tasks Performed on This Screen Welcome screen (registration.asp) Welcome screen (registration.asp) Siebel applications screen (applications.asp) Siebel applications screen (applications.asp) Siebel applications screen (applications.asp) Metadata extractor screen (extractor.asp) or Style sheets screen (stylesuccess.asp) SMC alert welcome screen (alertwelcome.asp) Load subscription screen (load_file.asp) Load subscription screen (load_file.asp) Metadata extractor screen (extractor.asp) Metadata extractor screen (extractor.asp) Metadata extractor screen (extractor.asp) Subscription configuration screen (view.asp) Subscription configuration screen (view.asp) Subscription configuration screen (view.asp) Subscription configuration screen (view.asp) Style sheets screen (stylesuccess.asp) Style sheets screen (stylesuccess.asp)
Common Task Choose an existing vendor name Choose a new vendor name Choose a Siebel application for which you want to create style sheets Choose a Siebel application for which you want to create business processes Log in to the application Log off from the application Configure the alert transport method Load a new subscription Load an existing subscription Choose a screen that you want to create subscriptions for Generate style sheets Extract a hierarchical representation of the XML data Create or save subscriptions Subscribe for style sheets to be applied to the user interface of the application definition Subscribe for style sheets to be applied for updates Subscribe for workflows that provide alerts View generated style sheets View generated workflows
NOTE: If you receive an error message from the Siebel Server while using the Reference Configuration Sample, close the browser and reopen a new browser to avoid receiving incorrect error messages. If you do not close and reopen a new browser, the error message will continue to be displayed even if the operation you are doing is valid.
65
Working with the Metadata Business Service Reference Configuration Sample User Interface
Welcome Screen
You can perform the following task on the welcome screen (registration.asp): Enter a new vendor name or choose from a selection of names that you have previously provided. The vendor name you give here will be used as part of the filename for XML and XSL files generated by the Reference Configuration Sample. For example, if you enter CompanyName for the vendor name, a sample subscription file will be named CompanyName_SiebelMobileConnector.xml.
NOTE: The company name is meant to be unique in order to differentiate style sheets when creating them. If you choose to have multiple style sheets for a specific service, then you will need to create another unique name.
66
Working with the Metadata Business Service Reference Configuration Sample User Interface
Figure 6 is an example of the Welcome Screen (registration.asp). When you have entered the vendor name, click Submit to go to the next screen.
Figure 6.
67
Working with the Metadata Business Service Reference Configuration Sample User Interface
Figure 7 is an example of the Siebel applications screen (applications.asp). When you have selected the Siebel application and provided the log in user data, click Submit to go to the next screen.
Figure 7.
Figure 8.
68
Working with the Metadata Business Service Reference Configuration Sample User Interface
NOTE: If you change the application definition in Siebel Tools, subscriptions created and saved using older application definitions are not automatically updated to the new SRF. To make subscriptions reflect changes in the SRF, you must rerun the metadata extractor and create new subscriptions. Figure 9 is an example of the Load subscription screen (load_file.asp). To continue to the next screen, click Submit.
Figure 9.
69
Working with the Metadata Business Service Reference Configuration Sample User Interface
Figure 10 is an example of the Metadata Extractor Screen (extractor.asp) before Style sheets are created.
Figure 10. Metadata Extractor Screen (extractor.asp) Before Style Sheets Are Created
Generally, one style sheet is created for each view for which you have subscribed. Additionally, a style sheet is created for unsubscribed views. This style sheet is named vendor name_application name_UnsubscribedView_UI.xsl. When you apply this style sheet, all user interface elements and updates not explicitly subscribed for will not be returned from SWE.
70
Working with the Metadata Business Service Reference Configuration Sample User Interface
Log off from SWE and terminate the browser session. You can do this by clicking Close Application. NOTE: It is recommended that you log off from the Reference Configuration Sample application by clicking Close the Application on the user interface. By doing so, you will free up the objects created during a session of using the Metadata Business Service.
Figure 11. Metadata Extractor Screen (extractor.asp) After Style Sheets Are Created
71
Working with the Metadata Business Service Reference Configuration Sample User Interface
Subscribe for workflows that provide alerts through the Alert (Push) Service. Select the Subscribe for Alert (Push) Service check box for each screen, view, or applet element for which you want to subscribe.
NOTE: Subscriptions are saved in the siebsrvr\xml directory at the location where Siebel Server is installed. Files are named following this convention: Vendor Name_Application Name.xml. Figure 12 is an example of the Subscription configuration screen (view.asp). When you are done making your selections, you can save or cancel your selections by clicking Save Subscriptions and Return to Screens or Cancel and Return to Screens.
72
Working with the Metadata Business Service Reference Configuration Sample User Interface
73
Working with the Metadata Business Service Reference Configuration Sample User Interface
74
The Alert Business Service can push information in XML format to partner applications to notify them that the contents of requested views and applets have changed. For example, an alert could indicate that a service request has been reassigned from one technician to another. The partner application is responsible for processing the alerts from the Siebel Mobile Connector and transmitting them to the end-user.
75
1 2
Using the Reference Configuration Sample, the administrator subscribes for alerts that will send notification messages to the third-party application when requested information has changed. The Metadata Business Service creates subscriptions and generates workflow files based on the updates the administrator has subscribed for. The XML documents are saved in the siebsrvr\xml directory at the location where Siebel Server is installed. The administrator imports the workflows into the Siebel Business Process Administration application and activates them. Once activated, the workflows monitor for specific data changes in the Siebel database until they are deactivated or deleted. The Alert Business Service stores the old (prewrite) and new (postwrite) data of the specified business component and generates XML documents that contain both the old and new requested data when an alert condition is triggered. The Alert Business Service submits the alert to a third-party application through a specified Siebel transport method. The supported transport methods include HTTP and MSMQ. For more information on supported transport mechanisms, see Transports and Interfaces: Siebel Enterprise Application Integration. The third-party application receives the alert and processes the information. The application can use both the prewrite values and the postwrite values to determine which end users require the update.
Configuring Alerts
Before you can use the Alert Business Service, you must specify a transport mechanism, as described in Configuring the smcalert.cfg File on page 24. This section provides instructions and an example for configuring alerts. NOTE: You can also create alerts directly with the Siebel Business Process Administration Screen. For more information, see Siebel Business Process Framework: Workflow Guide.
2 3 4
Generate the workflows based on your subscriptions. Using the Siebel application, navigate to Site Map > Business Process Administration > Workflow Processes. From the menu, select the Import Workflow option.
76
5 6 7 8
Browse to the directory where the Siebel Mobile Connector XML workflow file is located (for example, CompanyName_Account_Account_Name_NewValue). Using the Workflow Designer, double-click on the Submit Message option (the third step). Change the argument for Alert Transport to EAI HTTP Transport and save your changes. From the menu, select Activate.
To deactivate a workflow
Navigate to the workflow in the Siebel application and select it. Then choose Deactivate from the menu.
This scenario assumes you have already successfully configured the smcalert.cfg file.
On the machine where you have installed the Reference Configuration Sample or similar thirdparty application, create a virtual directory and point the virtual directory to the HTTPOutbound physical folder created in Step 1. Using the Reference Configuration Sample or a similar third-party application, subscribe to an alert for a specific list column or control. For example, you can request to be alerted when the main phone number for an account has changed.
77
Using the Siebel application, navigate to Business Process Administration > Workflow Processes, and query for the imported workflow. For example, you can run a query such as *SMC*.
From the menu, select the Import Workflow option and browse to the directory where the Siebel Mobile Connector XML workflow file is located. For example, go to \\machineName\sea75x\siebsrvr\xml and import the appropriate XML file.
7 8 9
Using the Workflow Designer, double-click on the Submit Message option (the third step). Change the argument for Alert Transport to EAI HTTP Transport and save your changes. Activate the workflow.
11 Save your changes to smcalert.cfg and then stop and restart the Siebel Server.
Printing the Output Page of the Alert to a File Once the alert is configured, the following example describes how to print the output page to a file.
4 5
Navigate to the location of the text output file. For example: D:\HTTPOutbound\httpoutputfile.txt Open the text file and you should see the XML document output from the Alert Business Service. For example, if you requested to be notified when the main phone number for an account changed, httpoutputfile.txt would look like the following: Received at 6/19/2002 9:54:10 AM ~< ? x m l v e r s i o n = " 1 . 0 " e n c o d i n g = " U T F - 8 " ? > < ? S i e b e l - P r o p e r t y - S e t E s c a p e N a m e s = " f a l s e " ? > < P r o p e r t y S e t
78
For more information about how the Alert Business Service works, see Siebel Business Process Framework: Workflow Guide.
79
80
This appendix describes the Siebel Mobile Connector (SMC) application definition with the corresponding objects and properties settings. It includes descriptions of the screens and views of the Siebel Mobile Connector application definition. The appendix also lists the applets along with the corresponding field names.
81
The following lists the details for the SMC Account screen. Display Name Business Object Business Component Accounts Account Account
The following views are available from the SMC Account screen. View Name SMC Account View SMC Account Detail View SMC Account Detail - Contacts View SMC Account Detail - Opportunities View SMC Account Detail - Activities View SMC Account Detail - Service Requests View Account Attachment View Viewbar Text Accounts More Info Contacts Opportunities Activities Service Requests Attachments Sequence 1 2 3 4 5 6 7
82
83
84
85
86
87
Display Name Revenue Type Sales Method Source Lead Partner Executive Priority Executive Priority Date
Field Name Primary Revenue Type Sales Method Source Partner Executive Priority Flag Executive Priority Date
88
Display Name Parent Activity Comments Meeting Location End Repeat Frequency Repeat Until Alarm Attachments Created Created By Actual End Done Employees Contacts
Field Name Previous Activity Description Comment Meeting Location Planned Completion Repeating Type Repeating Expires Alarm (for future use) Created Created By Name Done Done Flag Owned By Contact Last Name
89
Display Name Priority Status Substatus Area Subarea Severity Owner Entitlement Name Commit Time Date Closed Contact First Name Contact Last Name Organization Date Opened Created By
Field Name Priority Status Sub-Status Area Sub-Area Severity Owner Entitlement Name Commit Time Closed Date Contact First Name Contact Last Name Organization Created Created By Name
90
91
Display Name Account Type Stage Expertise Assignment Area Code Assignment Country Code Industries Territories Shipping Information Shipping Terms Inventory Location Location Type Partner Competitor Reference PO Approved Lock Assignment Disable Cleansing Referenceable as of Price List Currency Global Owner PO Auto-Approval Limit Survey Type
Field Name Type Reference Stage Expertise Assignment Area Code Assignment Country Code Industry Territory Freight Terms Info Freight Terms Primary Fulfillment Inventory Location Location Type Parent Account Name Competitor Reference Flag PO Approved Flag Assignment Excluded Disable DataCleansing Reference Date Price List Currency Code S-S Instance PO Auto Approval Limit Survey Type
92
Figure 16. SMC Activity Screen The following lists the details for the SMC Activity screen. Display Name Business Object Business Component Activities Action Action
The following views are available from the SMC Activity screen. Sequen ce 1 2
93
View Name SMC Activity Detail - Contacts View Activity Attachment View
Sequen ce 3 4
94
95
96
97
Display Name Account Site* SR #* Change Request #* Defective Tag* Resolution Code* Call ID* Asset #* Serial #* Orders* Source* Owner Employees Contacts Display In Alarm* Alarm Lead* Parent Activity* Project* Billable* Cost Estimate* Rate List* Price List*
Field Name Account Name Account Location SR Number Defect Num Defective Tag Resolution Code Call Id Asset Number Serial Number Order Number Campaign Name Owned By Owned By Contact Last Name Display Alarm Appt Alarm Time Min Previous Activity Description Project Name Billable Flag Associated Cost Rate List Price List
NOTE: Fields marked by an asterisk (*) are not displayed by default in the user interface. XML queries to SWE can be set to include results from the hidden fields by using the ToggleLayout command. For an example, see Retrieving Data from Hidden Fields on page 41.
98
99
100
The following lists the details for the SMC Contact screen. Display Name Business Object Business Component Contacts Contact Contact
The following views are available from the SMC Contacts screen. Sequen ce 1 2 3 4 5 6 7
View Name SMC Contact View SMC Contact Detail View SMC Contact Detail - Opportunities View Contact Attachment View SMC Contact Detail - Service Request View SMC Contact Detail - Accounts View SMC Contact Detail - Accounts View
Viewbar Text Contacts More Info Opportunities Attachments Service Requests Accounts Activities
10 1
102
10 3
104
10 5
Display Name Mobile Phone #* Alternate Phone #* Alternate Email* Assistant Name* Assistant Phone #* Sync List* Account Site Job Title Email Lock Assignment* Employee Flag* Send Email Updates* Never Email* Never Call* Never Mail* Disable Cleaning* Sync*
Field Name Cellular Phone # Alternate Phone # Alternate Email Address Assistant Assistant Phone # PIM Sync Owner Account Account Location Job Title Email Address Assignment Excluded Employee Flag Email SR Updates Flag Suppress All Emails Suppress All Calls Suppress All Mailings Disable DataCleansing PIM Current User Sync Flag
NOTE: Fields marked by an asterisk (*) are those not displayed by default in the user interface. XML queries to SWE can be set to include results from the hidden fields by using the ToggleLayout command. For an example, see Retrieving Data from Hidden Fields on page 41.
106
10 7
108
Display Name Description Contact First Name Contact Last Name Owner Priority Status Substatus Notes/Comments Phone # Product Area Subarea Committed
Field Name Description Contact First Name Contact Last Name Owner Priority Status Sub-Status Abstract Main Phone # Product Area Sub-Area Commit Time
10 9
Display Name URL Alias Current Volume Potential Volume CSN DUNS # Account Team Address Line 1 Address Line 2 City State Zip Code Country
Field Name Home Page Alias Current Volume Total Potential Volume CSN DUNS Number Sales Rep Street Address Street Address 2 City State Postal Code Country
110
Display Name Contact First Name Account Account Site Opportunity Type Status Repeating Frequency Repeating Expires Owned By Comment
Field Name Contact First Name Account Name Account Location Opportunity Type Status Repeating Repeating Type Repeating Expires Owned By Comment
11 1
Figure 18. SMC Opportunities Screen The following lists the details for the SMC Opportunity screen. Display Name Business Object Business Component Opportunities Opportunity Opportunity
The following views are available from the SMC Opportunity screen. View Name SMC Opportunity View SMC Opportunity Detail View SMC Opportunity Detail - Contacts View Viewbar Text Opportunities More Info Contacts Sequence 1 2 3
112
View Name SMC Opportunity Detail - Activities View Opportunity Attachment View
Sequence 4 5
11 3
114
Display Name Revenue Close Date Probability % Sales Method Sales Stage Last Name First Name Committed Primary
Field Name Primary Revenue Amount Primary Revenue Close Date Primary Revenue Win Probability Sales Method Sales Stage Contact First Name Contact Last Name Committed Primary Sales Rep Login
11 5
Field Name Key Contact First Name Committed Primary Sales Rep Login
116
11 7
118
Figure 19. SMC Service Request Screen The following lists the details for the SMC Service Request screen. Display Name Business Object Business Component Service Requests Service Request Service Request
The following views are available from the SMC Account screen. View Name SMC Service Request View SMC Service Request Detail View Service Request Detail View Service Request Detail View with Attachments Viewbar Text Service Requests More Info Activities Attachments Sequence 1 2 3 4
11 9
120
12 1
122
Display Name Customer Committed Customer Closed* Product* Part #* Asset #* Profile*
Field Name Contact Commit Time Contact Closed Date Product Product Part Number Asset Number Profile Product Name
NOTE: Fields marked by an asterisk (*) are those not displayed by default in the user interface. XML queries to SWE can be set to include results from the hidden fields by using the ToggleLayout command. For an example, see Retrieving Data from Hidden Fields on page 41.
12 3
Display Name Activity # Private Parent Activity Comments Meeting Location End Repeat Frequency Repeat Until Alarm Attachments Created Created By Actual End Done Employees Contacts Service Region
Field Name Id Private Previous Activity Description Comment Meeting Location Planned Completion Repeating Type Repeating Expires Alarm Attachment Flag Created Created By Name Done Done Flag Owned By Contact Last Name Service Region
124
Display Name Modified Local Download File Update File Comments Created
Field Name Activity FileDate ActivityDockStatus ActivityFileDockReqFlg Activity FileAutoUpdFlg Activity Comments Activity Created
Figure 20. SMC eService Request Screen NOTE: This is a read-only screen.
12 5
The following lists the details for the SMC eService Request screen. Display Name Business Object Business Component eService Requests Service Request (eService) Service Request (eService)
The following view is available from the SMC Account screen. View Name SMC eService Request View Viewbar Text eService Requests Sequence 1
126
Figure 21. SMC Orders Screen NOTE: This is a read-only screen. The following lists the details for the SMC Orders screen. Display Name Business Object Business Component eOrders Order Entry (eService) Order Entry - Orders
12 7
The following views are available from the SMC Orders screen. View Name SMC eService Order View Viewbar Text Orders Sequence 1
128
Display Name State Zip Code Country Carrier Credit Card Name
Field Name ShipTo - State ShipTo - Zip ShipTo - Country Carrier Type Credit Card Name
12 9
Figure 22. SMC Branch Locator Screen NOTE: This is a read-only screen. The following lists the details for the SMC Branch Locator screen. Display Name Business Object Business Component Branch Locator Service Locator Service Locator
The following view is available from the SMC Branch Locator screen. View Name SMC Branch Locator View Viewbar Text Branch Locator Sequence 1
130
13 1
Figure 23. SMC Employee Screen NOTE: This is a read-only screen. The following lists the details for the SMC Employees screen. Display Name Business Object Business Component Employees Employee Employee
The following view is available from the SMC Employees screen. View Name SMC Employee View Viewbar Text Employees Sequence 1
132
13 3
134
The following lists the details for the SMC Responsibilities screen. Display Name Business Object Responsibilities Responsibility
The following views or applets are available from the SMC Account screen. View Name SMC Responsibility View Viewbar Text Responsibilities Sequence 1
13 5
136
Display Name Work Fax # Responsibility Home Phone # Share Home Phone Share Address
Field Name Fax # Responsibility Home Phone # Share Home Phone Flag Share Address Flag
13 7
138
This appendix contains sample XML and XSL output from the Siebel Mobile Connector, including a screen representation, an alert message, and a style sheet.
13 9
<COLUMN HTML_TYPE="Text" DISPLAY_NAME="Work Phone #" SCALE="0" TEXT_LENGTH="40" DATATYPE="phone" HIDDEN="FALSE" NUMBER_BASED="FALSE" LIST_EDITABLE="Y" ID="507" READ_ONLY="FALSE" REQUIRED="FALSE" TEXT_BASED="TRUE" TYPE="Text" CALCULATED="FALSE" TOTAL_REQUIRED="FALSE" FIELD="Phone Number" NAME="Phone Number" /> <COLUMN HTML_TYPE="Text" DISPLAY_NAME="Work Fax #" SCALE="0" TEXT_LENGTH="40" DATATYPE="phone" HIDDEN="FALSE" NUMBER_BASED="FALSE" LIST_EDITABLE="Y" ID="508" READ_ONLY="FALSE" REQUIRED="FALSE" TEXT_BASED="TRUE" TYPE="Text" CALCULATED="FALSE" TOTAL_REQUIRED="FALSE" FIELD="Fax Number" NAME="Fax Number" /> <COLUMN HTML_TYPE="Text" DISPLAY_NAME="Organization" SCALE="0" TEXT_LENGTH="100" DATATYPE="text" HIDDEN="FALSE" NUMBER_BASED="FALSE" LIST_EDITABLE="Y" ID="509" READ_ONLY="FALSE" REQUIRED="FALSE" TEXT_BASED="TRUE" TYPE="Text" CALCULATED="FALSE" TOTAL_REQUIRED="FALSE" FIELD="Organization" NAME="Organization" /> <COLUMN HTML_TYPE="Text" DISPLAY_NAME="Division" SCALE="0" TEXT_LENGTH="100" DATATYPE="text" HIDDEN="FALSE" NUMBER_BASED="FALSE" LIST_EDITABLE="Y" ID="510" READ_ONLY="FALSE" REQUIRED="FALSE" TEXT_BASED="TRUE" TYPE="Text" CALCULATED="FALSE" TOTAL_REQUIRED="FALSE" FIELD="Division" NAME="Division" /> <COLUMN HTML_TYPE="Text" DISPLAY_NAME="Mobile Phone #" LIST_EDITABLE="Y" ID="511" READ_ONLY="FALSE" TYPE="Text" TOTAL_REQUIRED="FALSE" FIELD="Cellular Phone #" NAME="CellPhoneNo" /> <COLUMN HTML_TYPE="Text" DISPLAY_NAME="Street Address" LIST_EDITABLE="Y" ID="512" READ_ONLY="FALSE" TYPE="Text" TOTAL_REQUIRED="FALSE" FIELD="Street Address" NAME="StreetAddr" /> <COLUMN HTML_TYPE="Text" DISPLAY_NAME="City" SCALE="0" TEXT_LENGTH="50" DATATYPE="text" HIDDEN="FALSE" NUMBER_BASED="FALSE" LIST_EDITABLE="Y" ID="513" READ_ONLY="FALSE" REQUIRED="FALSE" TEXT_BASED="TRUE" TYPE="Text" CALCULATED="FALSE" TOTAL_REQUIRED="FALSE" FIELD="City" NAME="City" /> <COLUMN HTML_TYPE="Text" DISPLAY_NAME="State" SCALE="0" TEXT_LENGTH="10" DATATYPE="text" HIDDEN="FALSE" NUMBER_BASED="FALSE" LIST_EDITABLE="Y" ID="514" READ_ONLY="FALSE" REQUIRED="FALSE" TEXT_BASED="TRUE" TYPE="Text" CALCULATED="FALSE" TOTAL_REQUIRED="FALSE" FIELD="State" NAME="State" /> <COLUMN HTML_TYPE="Text" DISPLAY_NAME="Zip Code" LIST_EDITABLE="Y" ID="515" READ_ONLY="FALSE" TYPE="Text" TOTAL_REQUIRED="FALSE" FIELD="Postal Code" NAME="Zip" /> <COLUMN HTML_TYPE="Text" DISPLAY_NAME="Country" SCALE="0" TEXT_LENGTH="30" DATATYPE="text" HIDDEN="FALSE" NUMBER_BASED="FALSE" LIST_EDITABLE="Y" ID="516" READ_ONLY="FALSE" REQUIRED="FALSE" TEXT_BASED="TRUE" TYPE="Text" CALCULATED="FALSE" TOTAL_REQUIRED="FALSE" FIELD="Country" NAME="Country" /> <COLUMN HTML_TYPE="Text" DISPLAY_NAME="Home Phone #" LIST_EDITABLE="Y" ID="517" READ_ONLY="FALSE" TYPE="Text" TOTAL_REQUIRED="FALSE" FIELD="Home Phone #" NAME="Home Phone" /> <COLUMN HTML_TYPE="Text" DISPLAY_NAME="Alias" SCALE="0" TEXT_LENGTH="50" DATATYPE="text" HIDDEN="FALSE" NUMBER_BASED="FALSE" LIST_EDITABLE="Y" ID="518" READ_ONLY="FALSE" REQUIRED="FALSE" TEXT_BASED="TRUE" TYPE="Text" CALCULATED="FALSE" TOTAL_REQUIRED="FALSE" FIELD="Alias" NAME="Alias" /> <COLUMN HTML_TYPE="Text" DISPLAY_NAME="Mr/Ms" LIST_EDITABLE="Y" ID="519" READ_ONLY="FALSE" TYPE="Text" TOTAL_REQUIRED="FALSE" FIELD="Personal Title" NAME="Mr/Mrs" /> </RS_HEADER> <RS_DATA> <ROW ROWID="0-1" SELECTED="TRUE"> <FIELD VARIABLE="Last Name" NAME="Last Name">Administrator</FIELD> <FIELD VARIABLE="First Name" NAME="First Name">Siebel</FIELD> <FIELD VARIABLE="Login Name" NAME="Login Name">SADMIN</FIELD> <FIELD VARIABLE="Responsibility" NAME="Responsibility">Siebel Administrator</FIELD> <FIELD VARIABLE="Job Title" NAME="Job Title">Sys Admin</FIELD> <FIELD VARIABLE="EMail Addr" NAME="EMail Addr">sadmin@siebel.com</FIELD> <FIELD VARIABLE="Phone Number" NAME="Phone Number" />
140
<FIELD VARIABLE="Fax Number" NAME="Fax Number" /> <FIELD VARIABLE="Organization" NAME="Organization">D_Default Organization</FIELD> <FIELD VARIABLE="Division" NAME="Division">D_Siebel Administration</FIELD> <FIELD VARIABLE="CellPhoneNo" NAME="Cellular Phone #" /> <FIELD VARIABLE="StreetAddr" NAME="Street Address" /> <FIELD VARIABLE="City" NAME="City" /> <FIELD VARIABLE="State" NAME="State" /> <FIELD VARIABLE="Zip" NAME="Postal Code" /> <FIELD VARIABLE="Country" NAME="Country" /> <FIELD VARIABLE="Home Phone" NAME="Home Phone #" /> <FIELD VARIABLE="Alias" NAME="Alias" /> <FIELD VARIABLE="Mr/Mrs" NAME="Personal Title" /> </ROW> <ROW ROWID="0-3FTZ9"> <FIELD VARIABLE="Last Name" NAME="Last Name">Customer</FIELD> <FIELD VARIABLE="First Name" NAME="First Name">Guest</FIELD> <FIELD VARIABLE="Login Name" NAME="Login Name">GUESTCST</FIELD> <FIELD VARIABLE="Responsibility" NAME="Responsibility">Web Anonymous User</FIELD> <FIELD VARIABLE="Job Title" NAME="Job Title" /> <FIELD VARIABLE="EMail Addr" NAME="EMail Addr" /> <FIELD VARIABLE="Phone Number" NAME="Phone Number" /> <FIELD VARIABLE="Fax Number" NAME="Fax Number" /> <FIELD VARIABLE="Organization" NAME="Organization" /> <FIELD VARIABLE="Division" NAME="Division" /> <FIELD VARIABLE="CellPhoneNo" NAME="Cellular Phone #" /> <FIELD VARIABLE="StreetAddr" NAME="Street Address" /> <FIELD VARIABLE="City" NAME="City" /> <FIELD VARIABLE="State" NAME="State" /> <FIELD VARIABLE="Zip" NAME="Postal Code" /> <FIELD VARIABLE="Country" NAME="Country" /> <FIELD VARIABLE="Home Phone" NAME="Home Phone #" /> <FIELD VARIABLE="Alias" NAME="Alias" /> <FIELD VARIABLE="Mr/Mrs" NAME="Personal Title" /> </ROW> <ROW ROWID="0-3FTZJ"> <FIELD VARIABLE="Last Name" NAME="Last Name">Channel Partner</FIELD>
14 1
<FIELD VARIABLE="First Name" NAME="First Name">Guest</FIELD> <FIELD VARIABLE="Login Name" NAME="Login Name">GUESTCP</FIELD> <FIELD VARIABLE="Responsibility" NAME="Responsibility">Unregistered Partner Agent</ FIELD> <FIELD VARIABLE="Job Title" NAME="Job Title" /> <FIELD VARIABLE="EMail Addr" NAME="EMail Addr" /> <FIELD VARIABLE="Phone Number" NAME="Phone Number" /> <FIELD VARIABLE="Fax Number" NAME="Fax Number" /> <FIELD VARIABLE="Organization" NAME="Organization" /> <FIELD VARIABLE="Division" NAME="Division" /> <FIELD VARIABLE="CellPhoneNo" NAME="Cellular Phone #" /> <FIELD VARIABLE="StreetAddr" NAME="Street Address" /> <FIELD VARIABLE="City" NAME="City" /> <FIELD VARIABLE="State" NAME="State" /> <FIELD VARIABLE="Zip" NAME="Postal Code" /> <FIELD VARIABLE="Country" NAME="Country" /> <FIELD VARIABLE="Home Phone" NAME="Home Phone #" /> <FIELD VARIABLE="Alias" NAME="Alias" /> <FIELD VARIABLE="Mr/Mrs" NAME="Personal Title" /> </ROW> </RS_DATA> </LIST> </APPLET> </VIEW> </SCREEN> </APPLICATION>
142
<CacheLocalCode>N</CacheLocalCode> <Comments /> <Description /> <ExpirationDate /> <Group /> <LayoutInfo /> <ProcessBusinessObject>Account</ProcessBusinessObject> <ProcessName>SMC Alert - New Main Phone Number Value of Account</ProcessName> <ProcessStatus>ACTIVE</ProcessStatus> <ProcessType>PROCESS</ProcessType> <Runnable>Y</Runnable> <TimeLimit /> <Version>0</Version> <ErrorProcessName /> <PersistenceFrequencyCode /> <PersistenceLevelCode /> <ReplicationLevel>None</ReplicationLevel> - <ListOfWorkflowProcessFlow> - <WorkflowProcessFlow> <ForBranchName>Default</ForBranchName> <FromStepName>Get Current Message</FromStepName> <FromStepType>TASK</FromStepType> <LayoutInfo>@0*0*8*0*0*0*9*LineWidth1*24*FrHS1*24*ToID9*10-5GAS1N2*P06*300 724*NPts1*24*ToHS1*06*FromID9*10-5GAS0H2*P16*384 72</LayoutInfo> <ToStepName>Submit Message</ToStepName> </WorkflowProcessFlow> - <WorkflowProcessFlow> <ForBranchName>SetFieldValue event</ForBranchName> <FromStepName>Start</FromStepName> <FromStepType>START</FromStepType> <LayoutInfo>@0*0*8*0*0*0*9*LineWidth1*24*FrHS1*24*ToID9*10-5G70RQ2*P06*120 724*NPts1*24*ToHS1*06*FromID9*10-5G70RN2*P16*204 72</LayoutInfo> <ToStepName>Get Current Message</ToStepName> </WorkflowProcessFlow> - <WorkflowProcessFlow> <ForBranchName>Default</ForBranchName> <FromStepName>Submit Message</FromStepName>
14 3
<FromStepType>TASK</FromStepType> <LayoutInfo>@0*0*8*0*0*0*9*LineWidth1*24*FrHS1*24*ToID9*10-5GAS0F2*P06*480 724*NPts1*24*ToHS1*06*FromID9*10-5GAS1N2*P16*564 72</LayoutInfo> <ToStepName>End</ToStepName> </WorkflowProcessFlow> </ListOfWorkflowProcessFlow> + <ListOfWorkflowProcessProperty> + <ListOfWorkflowStepDefinition> </WorkflowProcessDefinition> </ListoffrontOfficeWorkflow> </SiebelMessage>
144
The following XSL style sheet limits data returned from the SMC Opportunity View (Vendor_SiebelMobileConnector_SMCOpportunityView_UI.xsl):
<?xml version="1.0" encoding="UTF-8" ?> <?xml version="1.0" encoding="UTF-8" ?> - <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:output method="xml" media-type="text/html" encoding="UTF-8" /> - <xsl:template match="/"> <xsl:call-template name="COPYNODE" /> </xsl:template> - <xsl:template name="COPYNODE"> - <xsl:copy> <xsl:copy-of select="@*" /> <xsl:value-of select="text()" /> - <xsl:for-each select="*"> <xsl:call-template name="CHILDPROCESS" /> </xsl:for-each> </xsl:copy> </xsl:template> - <xsl:template name="CHILDPROCESS"> - <xsl:choose> - <xsl:when test="name()='COLUMN'"> - <xsl:choose> - <xsl:when test="ancestor::node()[name()='APPLET' and @NAME='Account Form Applet']"> <xsl:call-template name="AccountFormAppletCOLUMN" /> </xsl:when> </xsl:choose> </xsl:when> - <xsl:when test="name()='FIELD'"> - <xsl:choose> - <xsl:when test="ancestor::node()[name()='APPLET' and @NAME='Account Form Applet']"> <xsl:call-template name="AccountFormAppletFIELD" /> </xsl:when>
14 5
</xsl:choose> </xsl:when> - <xsl:when test="name()='CONTROL'"> - <xsl:choose> - <xsl:when test="ancestor::node()[name()='APPLET' and @NAME='Account Form Applet']"> <xsl:call-template name="AccountFormAppletCONTROL" /> </xsl:when> </xsl:choose> </xsl:when> - <xsl:otherwise> <xsl:call-template name="COPYNODE" /> </xsl:otherwise> </xsl:choose> </xsl:template> - <xsl:template name="AccountFormAppletCONTROL"> - <xsl:choose> - <xsl:when test="@NAME='Name'"> <xsl:call-template name="COPYNODE" /> </xsl:when> </xsl:choose> </xsl:template> - <xsl:template name="AccountFormAppletCOLUMN"> - <xsl:choose> - <xsl:when test="@FIELD='Name'"> <xsl:call-template name="COPYNODE" /> </xsl:when> </xsl:choose> </xsl:template> - <xsl:template name="AccountFormAppletFIELD"> - <xsl:choose> - <xsl:when test="@NAME='Name'"> <xsl:call-template name="COPYNODE" /> </xsl:when> </xsl:choose> </xsl:template> </xsl:stylesheet>
146
14 7
148
This appendix lists potential problems associated with setup and implementation of the Siebel Mobile Connector.
Troubleshooting Key
Table 4 lists potential symptoms along with a cross reference to areas in the appendix you should refer to.
Table 4.
Troubleshooting Key Refer to These Questions... Question. Are the parameters in the metadata.cfg file set to the correct values? on page 150
For These Symptoms... Login error when trying to log in to the Reference Configuration Sample For information on Reference Configuration Sample, see Using the Reference Configuration Sample on page 64. Script time out error when trying to run the Reference Configuration Sample For information on Reference Configuration Sample, see Using the Reference Configuration Sample on page 64. Permission denied error when trying to run the Reference Configuration Sample For information on Reference Configuration Sample, see Using the Reference Configuration Sample on page 64. An error message is returned in XML output when sending XML commands using a Web browser Cannot upload a file to the Siebel application
Question. Have you changed the ASP Script timeout and session time out values? on page 151
Question. Did you change the values of the Execute Permissions and Application Protection options? on page 151
Question. Did you receive an error message in XML output when sending XML commands using a Web browser? on page 151 Question. Are you uploading the files programmatically or in a browser window? on page 151
14 9
Table 4.
Troubleshooting Key Refer to These Questions... Question. Are you trying to use the GetSMCUpdate method to retrieve an update for a particular field of a record? on page 152 Question. Are you using the correct spelling and valid values for all commands, methods and arguments to SWE? on page 152
For These Symptoms... Style sheets are being applied, but more data than expected is returned
Cannot query simultaneously for many-tomany relationships between parent and child applets Alerts not being sent or received
Question. Is it possible to query simultaneously for many-to-many relationships between parent and child applets? on page 152 Question. Are the alerts being received on the destination server? on page 152
Troubleshooting Questions
1
Question. Are the parameters in the metadata.cfg file set to the correct values? Requirement. The following parameters in the metadata.cfg file must be set with the correct values: GatewayServer=Gateway Server Name EnterpriseServer=siebel Port=Port Number SiebelServer=Siebel Server Name Language=ENU How to check. Go to drive:\install_dir\siebsrvr\BIN\ENU Where: drive = the drive where Siebel Server is installed. install_dir = the directory where you installed Siebel Server. Then open the metadata.cfg file and verify that the parameters are set correctly.
Question. Are the Siebel Server and the desired object managers up and running? Requirement. Siebel Server and the Siebel Mobile Connector object manager must be running in order to log in or use the Siebel Mobile Connector. The Reference Configuration Sample will not work without the sstchca.dll file. How to check. To view the object managers:
a b
Get the OS pid for a particular Object Manager by going to the Siebel Server log directory and opening the siebel.machine_name.log file. Once the process id is identified, go to Task Manager and look for the SIEBMTSHW.EXE with that PID.
150
c d e
Go to your registry editor and search for the key value SiebelDataControl.SiebelDataControl.1. Verify that this entry exists as a ProgID value and that the InprocServer32 key value for this entry points to the path where the sstchca.dll file is located. Make sure that the drive of the file is physical, not virtual. This DLL file is provided with installation of eAI. If this file is not there, then you must reinstall eAI.
NOTE: sstchca.dll is only one of many DLL files required for the Siebel Mobile Connector.
Question. Have you changed the ASP Script time-out and session time out values? Requirement. In Microsoft Internet Information Server running on the machine where the Reference Configuration Sample is installed, the ASP Script time-out value must be set to a big number (for example, 2147483646 seconds) and the session time out value must be set to a big number (for example, to 200 minutes). How to check. In Microsoft Internet Information Server:
a b 4
Right-click on the virtual directory created for the Reference Configuration Sample and select Properties. Click the Configuration button and click the App Options tab.
Question. Did you change the values of the Execute Permissions and Application Protection options? Requirement. In Microsoft Internet Information Server running on the machine where the Reference Configuration Sample is installed, the Execute Permissions must be set to Scripts Only and Application Protection must be set to Low (IIS Process). How to check. Make sure Execute Permissions is Scripts Only and Application Protection is Low (IIS Process).
Question. Did you receive an error message in XML output when sending XML commands using a Web browser? Requirement. The XML Interface to SWE will return an error tag in XML output. <ERROR> we are unable to process your request. This is most likely because you used the browser BACK or REFRESH button to get to this point. </ERROR> if the application does not have a specified home page. You can ignore the error message or, if you prefer, set a home page for the application.
Question. Are you uploading the files programmatically or in a browser window? Requirement. Uploading file attachments cannot be done by sending HTTP requests in a Web browser. Instead, uploading files must be done programmatically, so the application that uploads the files can modify the Content-Type of the HTTP request and send the file in the appropriate format for file uploads.
15 1
Question. Are you trying to use the GetSMCUpdate method to retrieve an update for a particular field of a record? Requirement. The GetSMCUpdate method notes changes that occur at the record level versus for a specific field. If you request an update for a particular field on a record, you will be notified of a change when any field of that record has changed. If your application requires notification about changes to specific fields, then you can use the Alert Business Service for this purpose. For more information on using the Alert Business Service, see Chapter 6, Working with the Alert Business Service.
Question. Are you using the correct spelling and valid values for all commands, methods and arguments to SWE? Requirement. SWE expects the correct spelling and valid values for all commands, methods, and arguments. Invalid SWE commands, methods, and arguments are ignored. No error message is returned by SWE for such errors and the calling application may experience unexpected results.
Question. Is it possible to query simultaneously for many-to-many relationships between parent and child applets? Requirement. SWE does not currently support querying simultaneously for:
Parent rows in applets (such as all activities) Child applets (such as all contacts) Man-to-many relationships between all parent and all child applets.
In other words, it is not possible to perform a query using the XML Web Interface that will retrieve the links between all contacts and which activities they are related to, and vice versa. (such as all contacts related to each activity and vice versa). There are at least three possible solutions to this task, although the efficacy of these solutions has not yet been firmly established.
First, you can query the database directly for the Siebel table containing the links between activities and contacts, and then map all tables together on the Siebel Server. The disadvantage of this method is that it is database dependent. Second, you can create a specialized business component using Oracles Siebel Tools that could perform this task. Third, you can get the list of children rows for each parent row as you enumerate through the parent rows.
152
'--------------------------------------------------------------------'SampleFileReceiver.asp 'Sample receive page that writes document to a file ''--------------------------------------------------------------------Option Explicit Response.Buffer = True Dim objFS, objStream Dim PostedDocument Dim ContentType Dim CharSet Dim EntityBody Dim Stream Dim StartPos Dim EndPos stop ContentType = Request.ServerVariables( "CONTENT_TYPE" ) ' ' Determine request entity body character set (default to us-ascii) ' CharSet = "us-ascii" StartPos = InStr( 1, ContentType, "CharSet=""", 1) If (StartPos > 0 ) then StartPos = StartPos + Len("CharSet=""") EndPos = InStr( StartPos, ContentType, """",1 ) CharSet = Mid (ContentType, StartPos, EndPos - StartPos ) End if
' ' Check for multipart MIME message ' PostedDocument = "" if ( ContentType = "" or Request.TotalBytes = 0) then ' ' Content-Type is required as well as an entity body ' Response.Status = "406 Not Acceptable"
15 3
Response.Write "Content-type or Entity body is missing" & VbCrlf Response.Write "Message headers follow below:" & VbCrlf
Response.Write Request.ServerVariables("ALL_RAW") & VbCrlf Response.End else if ( InStr( 1,ContentType,"multipart/" ) > 0 ) then ' ' MIME multipart message. Build MIME header ' PostedDocument = "MIME-Version: 1.0" & vbCrLf & "Content-Type: " & ContentType & vbCrLf & vbCrLf PostedDocument = PostedDocument & "This is a multi-part message in MIME format." & vbCrLf End if
' ' Convert to UNICODE ' Set Stream = Server.CreateObject("AdoDB.Stream") Stream.Type = 1'adTypeBinary stream.Open Stream.Write EntityBody Stream.Position = 0 Stream.Type = 2'adTypeText Stream.Charset = CharSet PostedDocument = PostedDocument & Stream.ReadText Stream.Close Set Stream = Nothing
' ' Write received document to a local file ' Set objFS = CreateObject("Scripting.FileSystemObject")
154
objStream.WriteLine "----------------- Received at " & Now() & " -----------------" objStream.WriteLine PostedDocument objStream.WriteLine "----------------- End Received at " & Now() & " -----------------" objStream.Close Set objStream = Nothing Set objFS = Nothing
' ' indicate that the message has been received and processed '
15 5
156
This section lists Document Type Definitions for the outbound XML documents Fused with creating subscriptions for use with the Metadata Business Service. For more information on the Metadata Business Service, see Chapter 5, Working with the Metadata Business Service.
15 7
<!ELEMENT <!ATTLIST
vIEW VIEW
(APPLET)* >
Viewbar_Text Name Title Business_Object Node_Id Visibility_Type SubscribeForUI SubscribeForUpdate SubscribeForPush UISelectValue UpdateSelectValue PushSelectValue > <!ELEMENT <!ATTLIST Name Title Class No_Insert No_Update No_Delete APPLET APPLET
CDATA CDATA CDATA CDATA CDATA CDATA CDATA CDATA CDATA CDATA CDATA CDATA
#IMPLIED #REQUIRED #IMPLIED #REQUIRED #REQUIRED #IMPLIED #REQUIRED #REQUIRED #REQUIRED #REQUIRED #REQUIRED #REQUIRED
#REQUIRED #IMPLIED #IMPLIED #IMPLIED #IMPLIED #IMPLIED #REQUIRED #REQUIRED #REQUIRED #REQUIRED #IMPLIED #REQUIRED #REQUIRED
Business_component CDATA Base_Table Node_Id SubscribeForUI SubscribeForUpdate SubscribeForPush UISelectValue CDATA CDATA CDATA CDATA CDATA CDATA
158
UpdateSelectValue PushSelectValue > <!ELEMENT <!ATTLIST Name Type Runtime Read_Only Field Table Pick_Applet Calculated Calculation Multivalued Extension SubscribeForUI SubscribeForUpdate SubscribeForPush UISelectValue UpdateSelectValue PushSelectValue > <!ELEMENT <!ATTLIST Name Display_Name Type Runtime Read_Only CONTROL CONTROL
CDATA CDATA
#IMPLIED #REQUIRED
LIST_COLUMN (FIELD) > LIST_COLUMN CDATA CDATA CDATA CDATA CDATA CDATA CDATA CDATA CDATA CDATA CDATA CDATA CDATA CDATA CDATA CDATA CDATA #REQUIRED #REQUIRED #IMPLIED #IMPLIED #REQUIRED #REQUIRED #IMPLIED #IMPLIED #IMPLIED #IMPLIED #IMPLIED #REQUIRED #IMPLIED #REQUIRED #REQUIRED #IMPLIED #REQUIRED
(FIELD) >
15 9
Field Table Calculated Calculation Multivalued Extension Node_Id SubscribeForUI SubscribeForUpdate SubscribeForPush UISelectValue UpdateSelectValue PushSelectValue > <!ELEMENT <!ATTLIST Name Table Type Required Calculated Calculation Multivalued Extension Node_Id Text_Length > <!ELEMENT PICKLIST <!ATTLIST PICKLIST Name FIELD FIELD
CDATA CDATA CDATA CDATA CDATA CDATA CDATA CDATA CDATA CDATA CDATA CDATA CDATA
#REQUIRED #REQUIRED #IMPLIED #IMPLIED #IMPLIED #IMPLIED #REQUIRED #REQUIRED #IMPLIED #REQUIRED #REQUIRED #IMPLIED #REQUIRED
(PICKLIST) >
CDATA CDATA CDATA CDATA CDATA CDATA CDATA CDATA CDATA CDATA
#REQUIRED #REQUIRED #REQUIRED #IMPLIED #IMPLIED #IMPLIED #IMPLIED #IMPLIED #REQUIRED #REQUIRED
EMPTY >
CDATA
#REQUIRED
160
CDATA CDATA
#REQUIRED #IMPLIED
NODE NODE
EMPTY >
16 1
162
Index
Symbols
* (asterisk), about fields marked by 97
A
Account Attachment applet, applet details 90 Account Attachment view, view details 84 Account Entry applet, applet details 91 Account Form applet, applet details 85 Activity Attachment applet, applet details 99 Activity Attachment view, view details 95 Activity Form applet, applet details 96 adding records 41 Alert Business Service alert output page, printing to a file 78 HTTP Transport Method, using to set up alerts 77 SMC alert welcome screen, using to specify default transport method 68 smcalert.cfg file, configuring 24 workflow (diagram) 75 workflow, deactivating 77 workflow, importing and activating 76 workflow, list of steps 76 XML sample document output 142 anonymous user responsibility type, list of responsibilities 27 API methods, table 55 applets, navigating within 37 application definition, configuring about 26 customizing, about 27 GetApplicationDef, syntax, returns, and example 58 user responsibilities types (table) 27 Application Representation Metadata Business Service component, about 54 architecture components, list of 14 Metadata Business Service, components, list of 54 Siebel database, from a third-party mobile application (diagram) 15 workflow described 16 asterisk (*), about fields marked by 97
authenticating users about and architecture 35 logging in to SWE, about and example 35 logging off of SWE, about and example 35 session management, cookies and authentication mode 36
B
Branch Locator See SMC Branch Locator screen
C
call center representative, list of responsibilities 27 CanInvokeMethod, syntax, returns, and example 56 COM Data Control XML output example 29 Contact Attachment applet, applet details 108 Contact Attachment view, view details 102 Contact Form applet, applet details 104 customer, registered, responsibility type 28
D
data sets, retrieving 39 data transfer mechanisms authenticating users 35 real-time access to data 29 SWE methods, list of 30 types of 29 XML commands and SWE methods, about and list of common commands 30 XML user data, tags used to request user data 31 data, updating and synchronizing downloading files, about and procedure 47 one-way synchronization, about 43 records, adding 41 records, deleting 43 records, modifying 42 uploading files 44 DDL files, creation location 22 deleting records 43 Document Type Definition Metadata Business Service for
16 3
Index E
subscriptions 161 XML documents passed through GetApplicationDef method 157 downloading files, about and procedure 47 drilling down about and procedure 38 specific record, about 38 DTD See Document Type Definition
E
employees See SMC Employee screen; SMC Responsibility screen Enable Component Groups dialog box Alert Business Service, using to 21 Siebel Sales component group, using to select 20 Workflow Management component group, using to select 21 error messages Reference Configuration Sample, about action 65 eService request See SMC eService Request screen Extractor/Parser Metadata Business Service component, about 54
default transport mechanisms, setting 25 interactivity mode, setting 23 query, setting the list rows returned 24 server components, configuring 20 server configuration files and DDL files, creation location 22 Siebel component, optional 19 Siebel components, required 19 Siebel Server settings, configuring 22 smcalert.cfg file, configuring and example 24 user agent, configuring 25 interactivity mode, setting 23
J
Java Data Bean interface, about using 29 Metadata Business Service, about instantiating 56 XML output example 29
L
language, about global language support 50 load subscription screen, about using 69 Load/Save Selections Metadata Business Service component, about 54 LoadSubscription, syntax, returns, and example 60 logging in, authenticating users, and example 35 logging off, about and example 35
F
field service representative responsibility type, list of responsibilities 27 files downloading, about and procedure 47 uploading, about and procedure 44
M
Metadata Builder Engine Metadata Business Service component, about 54 Metadata Business Service about 11 API methods for accessing (table) 55 API methods, called in order (steps) 55 architecture components, list of 54 CanInvokeMethod, syntax, returns, and example 56 CreateStyleSheets, syntax, returns, and example 57 customizing the application definition, about 27 Document Type Definition for subscriptions 161 GetApplicationDef, syntax, returns, and example 58 instantiated, about 56 InvokeMethod, syntax, returns, and example 57
G
GetSMCUpdate method examples 49 parameters, table of 48 update, getting (procedure) 49 using, about 48 global language support, about 50
H
HTTP Transport Method, using to set up alerts 77 HyperText Transfer Protocol (HTTP), about using 29
I
installation application definition, configuring 26
164
Index N
LoadSubscription, syntax, returns, and example 60 MetadataCleanup, syntax, returns, and example 61 process flow, steps 54 Reference Configuration Sample user interface 66 Reference Configuration Sample, using 64 SaveSubscription, syntax, returns, and example 62 workflow (diagram) 53 metadata extractor screen example (diagram) 69 using, about 69 MetadataCleanup, syntax, returns, and example 61 modifying records 42
N
navigating to a screen 36 within a screen 37
O
Opportunity Attachment applet, applet details 118 Opportunity Attachment view, view details 114 Opportunity Form applet, applet details 115 orders See SMC eService Order screen
P
partners, creating authentication mechanism 35 predefined queries (PDQ), about and executing 39 printing alert output page to a file 78 pushed alerts, about 29
Q
querying number of list rows returned, setting 24 performing 38 predefined queries, executing 39 request types 37
R
real-time access to data about 29 authenticating users, about and architecture 35
dates on records, about parsing and example 40 downloading files, about and procedure 47 drilling down on items 38 hidden fields, retrieving data from 41 large data sets, retrieving 39 navigating to a screen 36 navigating within a screen 37 one-way synchronization, about 43 predefined queries, executing 39 querying items 37 records, adding 41 records, deleting 43 records, modifying 42 uploading files 44 XML commands and SWE methods, about and list of common commands 30 XML user data, tags used to request user data 31 records adding 41 date and time, about parsing and example 40 deleting 43 large data set, retrieving all records in 39 modifying 42 one-way synchronization, about 43 Reference Configuration Sample error message received, about action 65 logging off, recommendation for 71 Metadata Business Service component, about 54 style sheets, applying 66 using, about 64 Reference Configuration Sample user interface load subscription screen 69 metadata extractor screen 69 Siebel applications screen 67 SMC alert welcome screen 68 style sheets screen 73 subscription configuration screen 71 welcome screen 66 registered customer responsibility type, list of responsibilities 28 retrieving data dates on records, about parsing and example 40 drilling down, about and procedure 38 hidden fields, retrieving data from 41 large data sets, retrieving 39 navigating to a screen 36 navigating within a screen 37 predefined queries, executing 39
16 5
Index S
querying items, request types 37 querying, performing 38 screens, list of (table) 36 ROW_COUNTER attribute, about using 40
S
sales representative responsibilities, list of responsibilities 28 SaveSubscription, syntax, returns, and example 62 saving, about using SaveSubscription method 62 scenarios customer service voice scenario 13 sales voice scenario 12 wireless sales scenario 13 screens list of (table) 36 navigating to 36 navigating within 37 server components, configuring Alert Business Service, enabling 21 Siebel Sales component group, selecting 20 Siebel Server settings, configuring 22 Workflow Management component group, about enabling 21 server configuration files, creation location 22 Service Request Activity List applet, applet details 123 Service Request Attachment List applet, applet details 124 Service Request Detail applet, applet details 121 Service Request Detail View with Attachments, view details 120 Service Request Detail view, view details 120 session management, about and 36 Siebel applications screen example (diagram) 67 using, about 67 Siebel COM Data Control Metadata Business Service, about instantiating 56 using, about 29 Siebel Java Data Bean interface, about using 29 Siebel Mobile Connector Administrator responsibility, list of responsibilities 28 Siebel Mobile Connector, configuring interactivity mode, setting 23
query, setting number of list rows returned by 24 server configuration files and DDL files, location where created 22 smcalert.cfg file, configuring and example 24 user agent, configuring 25 Siebel Mobile Connector, workflow described 16 Siebel Sales component group, selecting 20 Siebel Server Reference Configuration Sample, error message received 65 settings, configuring 22 SMC Account Activity List applet, applet details 88 SMC Account Contact List applet, applet details 86 SMC Account Detail - Activities view, view details 83 SMC Account Detail - Contacts view, view details 83 SMC Account Detail - Opportunities view, view details 83 SMC Account Detail - Service Requests view, view details 83 SMC Account Detail view, view details 82 SMC Account List applet, applet details 84 SMC Account screen about and screen diagram 81 Account Attachment applet, applet details 90 Account Attachment view, view details 84 Account Entry applet, applet details 91 Account Form applet, applet details 85 SMC Account Activity List applet, applet details 88 SMC Account Contact List applet, applet details 86 SMC Account Detail - Activities view, view details 83 SMC Account Detail - Contact view, view details 83 SMC Account Detail - Opportunities view, view details 83 SMC Account Detail - Service Requests view, view details 83 SMC Account Detail view, view details 82 SMC Account List applet, applet details 84 SMC Account Service List applet, applet details 89 SMC Account view, view details 82 SMC Oppty List applet, applet details 87 views available (table) 82 SMC Account Service List applet, applet
166
Index S
details 89 SMC Account view, view details 82 SMC Activity Contact List applet, applet details 99 SMC Activity Detail - Contact view, view details 94 SMC Activity Detail view, view details 94 SMC Activity List applet, applet details SMC Activity screen 95 SMC Contact screen 110 SMC Activity screen about and screen diagram 93 Activity Attachment applet, applet details 99 Activity Attachment view, view details 95 Activity Form applet, applet details 96 SMC Activity Contact List applet, applet details 99 SMC Activity Detail - Contacts view, view details 94 SMC Activity Detail view, view 94 SMC Activity List applet, applet details 95 SMC Activity view, view details 94 views available (table) 93 SMC Activity view, view details 94 SMC alert welcome screen using, about and example (diagram) 68 SMC Branch Locator applet, applet details 131 SMC Branch Locator screen about and screen diagram 130 SMC Branch Locator applet, applet details 131 SMC Branch Locator view, view details 131 SMC Branch Locator view, view details 131 SMC Contact Account List applet, applet details 109 SMC Contact Detail - Accounts view, view details 102 SMC Contact Detail - Activities view, view details 103 SMC Contact Detail - Opportunities view, view details 102 SMC Contact Detail - Service Request view, view details 102 SMC Contact Detail view, view details 101 SMC Contact List applet, applet details 103 SMC Contact screen about and screen diagram 100 Contact Attachment applet, applet details 108 Contact Attachment view, view details 102 Contact Form applet, applet details 104 SMC Activity List applet, applet details 110 SMC Contact - Service Request view, view
details 102 SMC Contact Account List applet, applet details 109 SMC Contact Detail - Accounts view, view detail 102 SMC Contact Detail - Accounts view, view details 103 SMC Contact Detail - Opportunities view, view details 102 SMC Contact Detail view, view details 101 SMC Contact List applet, applet details 103 SMC Contact view, view details 101 SMC Oppty List applet, applet details 106 SMC Service Request List applet, applet details 108 views available (table) 101 SMC Contact view, view details 101 SMC Employee ReadOnly List applet, applet details 133 SMC Employee screen about and screen diagram 132 sample XML code 139 SMC Employee ReadOnly List applet, applet details 133 SMC Employee view, view details 133 SMC Employee view, view details 133 SMC eOrder Line Items List applet, applet details 129 SMC eService Order screen about and screen diagram 127 SMC eOrder Line Items List applet, applet details 129 SMC eService Order view, view details 128 SMC eService Orders List applet, applet views 128 SMC eService Orders List applet, applet details 128 SMC eService Request List applet, applet details 126 SMC eService Request screen about and screen diagram 125 SMC eService Request List applet, applet details 126 SMC eService Request view, view details 126 SMC eService Request view, view details 126 SMC Opportunity Activity List applet, applet details 117 SMC Opportunity Contact List applet, applet details 116 SMC Opportunity Detail - Activity view, view details 114 SMC Opportunity Detail - Contact view, view details 113
16 7
Index T
SMC Opportunity Detail view, view details 113 SMC Opportunity List applet, applet details 114 SMC Opportunity screen about and screen diagram 112 Opportunity Attachment applet, applet details 118 Opportunity Attachment view, view details 114 Opportunity Form applet, applet details 115 SMC Opportunity Activity List applet, applet details 117 SMC Opportunity Contact List applet, applet details 116 SMC Opportunity Detail - Activity view, view details 114 SMC Opportunity Detail - Contacts view, view details 113 SMC Opportunity Detail view, view details 113 SMC Opportunity List applet, applet details 114 SMC Opportunity view, view details 113 views available (table) 112 SMC Opportunity view, view details 113 SMC Oppty List applet, applet details SMC Account screen 87 SMC Contact screen 106 SMC Responsibility List Administration applet, applet details 135 SMC Responsibility screen about and screen diagram 134 SMC Responsibility List Administration applet, applet details 135 SMC Responsibility view, view details 135 SMC User List Administration applet, applet views 136 SMC View List Administration applet, applet details 136 SMC Responsibility view, view details 135 SMC Service Request Detail view, view details 120 SMC Service Request List applet SMC Contact screen 108 SMC Service Request screen 121 SMC Service Request screen about and screen diagram 119 Service Request Activity List applet, applet details 123 Service Request Attachment List applet, applet details 124 Service Request Detail applet, applet details 121
Service Request Detail View with Attachments, view details 120 Service Request Detail view, view details 120 SMC Service Request Detail view, view details 120 SMC Service Request List applet, applet details 121 SMC Service Request view, view details 120 views available (table) 119 SMC Service Request view, view details 120 SMC User List Administration applet, applet views 136 SMC View List Administration applet, applet details 136 smc.cfg file, configuring 23 smcalert.cfg file, configuring 24 Style Sheet Builder Metadata Business Service component, about 54 style sheets CreateStyleSheets, syntax, returns, and example 57 Reference Configuration Sample, using to limit data returned 66 sample 144 saved location and naming convention 69 screen, about using and example 73 tip, using to improve performance 66 unsubscribed view, about creating and naming convention 70 subscription configuration screen example (diagram) 72 using, about 71 subscriptions Document Type Definition used for 161 load subscription screen, about working with new or existing subscription 69 LoadSubscription method, about 60 SaveSubscription method, syntax, returns, and example 62 SWESetMarkup parameter, about using 48 SWESetRowCnt parameter, about using to retrieve data sets 39 synchronizing records, about one-way synchronization 43 system resources, using MetadataCleanup to free resources 61
T
Third Party Configuration Sample Metadata Business Service component, about 54 ToggleLayout command, using to retrieve
168
Index U
data from hidden fields 41 transport mechanism, setting the default 25 troubleshooting ASP Script time-out and session time out values, have they changed? 151 correct spelling, using 152 destination server, about receiving alerts 152 Execute Permissions and Application Protection options, have the values changed? 151 files, are you uploading programmatically or in a browser window? 151 GetSMCUpdate method, using to retrieve an update 152 metadata.cfg files, setting the parameters to the correct values 150 querying many-to-many relationships between parent and child, about 152 Siebel Server and object managers, are they up and running? 150 troubleshooting key (table) 149 XML output, receiving error message in when send XML commands 151
uploading files, about and procedure 44 usage scenarios See scenarios user agent, configuring for Siebel Mobile Connector 25 user responsibilities, types (table) 27
V
Voice Application capability, setting to TRUE 25
W
welcome screen example (diagram) 66 using, about 66
X
XML Builder Metadata Business Service component, about 54 XML code, sample 139 XML documents Alert Business Service sample output 142 DTD for document passed through the GetApplicationDef method 157 XML user tags common XML tags, list and attributes 32 retrieving data only, about and example 34 retrieving detailed information about the data 35 tags used to request user data, about 31 XML page content, about and tailoring to the application 31 XSL style sheets, sample 144
U
UNIX systems, server configuration files and DDL files, creation location 23 updates about 48 GetSMCUpdate method, about using 48 GetSMCUpdate method, examples 49 GetSMCUpdate method, getting update (procedure) 49
16 9
Index X
170