Top Banner
TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce.com User’s Guide Software Release 6.0.0 March 2014 Two-Second Advantage ®
91

TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Sep 25, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

TIBCO ActiveMatrix BusinessWorks™ Plug-infor Salesforce.com User’s GuideSoftware Release 6.0.0March 2014

Two-Second Advantage®

Page 2: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Important Information

SOME TIBCO SOFTWARE EMBEDS OR BUNDLES OTHER TIBCO SOFTWARE. USE OF SUCHEMBEDDED OR BUNDLED TIBCO SOFTWARE IS SOLELY TO ENABLE THE FUNCTIONALITY(OR PROVIDE LIMITED ADD-ON FUNCTIONALITY) OF THE LICENSED TIBCO SOFTWARE. THEEMBEDDED OR BUNDLED SOFTWARE IS NOT LICENSED TO BE USED OR ACCESSED BY ANYOTHER TIBCO SOFTWARE OR FOR ANY OTHER PURPOSE.

USE OF TIBCO SOFTWARE AND THIS DOCUMENT IS SUBJECT TO THE TERMS ANDCONDITIONS OF A LICENSE AGREEMENT FOUND IN EITHER A SEPARATELY EXECUTEDSOFTWARE LICENSE AGREEMENT, OR, IF THERE IS NO SUCH SEPARATE AGREEMENT, THECLICKWRAP END USER LICENSE AGREEMENT WHICH IS DISPLAYED DURING DOWNLOADOR INSTALLATION OF THE SOFTWARE (AND WHICH IS DUPLICATED IN THE LICENSE FILE)OR IF THERE IS NO SUCH SOFTWARE LICENSE AGREEMENT OR CLICKWRAP END USERLICENSE AGREEMENT, THE LICENSE(S) LOCATED IN THE “LICENSE” FILE(S) OF THESOFTWARE. USE OF THIS DOCUMENT IS SUBJECT TO THOSE TERMS AND CONDITIONS, ANDYOUR USE HEREOF SHALL CONSTITUTE ACCEPTANCE OF AND AN AGREEMENT TO BEBOUND BY THE SAME.

This document contains confidential information that is subject to U.S. and international copyright lawsand treaties. No part of this document may be reproduced in any form without the writtenauthorization of TIBCO Software Inc.

TIBCO, Two-Second Advantage, TIBCO ActiveMatrix BusinessWorks, TIBCO Business Studio, andTIBCO Enterprise Administrator are either registered trademarks or trademarks of TIBCO SoftwareInc. in the United States and/or other countries.

Enterprise Java Beans (EJB), Java Platform Enterprise Edition (Java EE), Java 2 Platform EnterpriseEdition (J2EE), and all Java-based trademarks and logos are trademarks or registered trademarks ofOracle Corporation in the U.S. and other countries.

All other product and company names and marks mentioned in this document are the property of theirrespective owners and are mentioned for identification purposes only.

THIS SOFTWARE MAY BE AVAILABLE ON MULTIPLE OPERATING SYSTEMS. HOWEVER, NOTALL OPERATING SYSTEM PLATFORMS FOR A SPECIFIC SOFTWARE VERSION ARE RELEASEDAT THE SAME TIME. SEE THE README FILE FOR THE AVAILABILITY OF THIS SOFTWAREVERSION ON A SPECIFIC OPERATING SYSTEM PLATFORM.

THIS DOCUMENT IS PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHEREXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OFMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

THIS DOCUMENT COULD INCLUDE TECHNICAL INACCURACIES OR TYPOGRAPHICALERRORS. CHANGES ARE PERIODICALLY ADDED TO THE INFORMATION HEREIN; THESECHANGES WILL BE INCORPORATED IN NEW EDITIONS OF THIS DOCUMENT. TIBCOSOFTWARE INC. MAY MAKE IMPROVEMENTS AND/OR CHANGES IN THE PRODUCT(S)AND/OR THE PROGRAM(S) DESCRIBED IN THIS DOCUMENT AT ANY TIME.

THE CONTENTS OF THIS DOCUMENT MAY BE MODIFIED AND/OR QUALIFIED, DIRECTLY ORINDIRECTLY, BY OTHER DOCUMENTATION WHICH ACCOMPANIES THIS SOFTWARE,INCLUDING BUT NOT LIMITED TO ANY RELEASE NOTES AND "READ ME" FILES.

Copyright © 2007-2014 TIBCO Software Inc. ALL RIGHTS RESERVED.

TIBCO Software Inc. Confidential Information

2

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 3: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Contents

TIBCO Documentation and Support Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5

Plug-in Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

Salesforce.com Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8

Creating a Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

Importing a WSDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

Creating a Salesforce Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

Designing a Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

Testing an Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

Deploying an Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

Generating an EAR File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

Salesforce Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

Selecting WSDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13

Getting Metadata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

Refreshing Metadata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

Salesforce Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

Salesforce Palette . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19

Salesforce Create All . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

Salesforce Delete All . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

Salesforce Get Session . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29

Salesforce Query All . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31

Querying Data in Subset Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

Relationship Query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

Salesforce Retrieve All . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

Retrieving Data in the Subset Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

Salesforce Update All . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

Salesforce Upsert All . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

Salesforce Outbound Message Listener . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .52

Making Authenticated Web Service Callouts Using SSL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .53

One-way SSL Authentication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

Two-way SSL Authentication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

Samples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .55

Working With GeneralSample Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

General Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

Working With RelationshipQuery Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

ChildToParent Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

Mapping Data in the ChildToParent Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

ParentToChildren Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

3

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 4: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Mapping Data in the ParentToChildren Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

Working With ERPIntegration Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

Customer Master . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

SyncAccountProcess Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

UpdateAccountProcess Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

Opportunity To Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

OpportunityToOrder_Polling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

GetLastPollingTime Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

SetLastPollingTime Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

SyncOpportunity_Polling Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

OpportunityToOrder_UsingOutbound . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

SyncOpportunity_OutboundListener Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

Working With WorkWithInvokerActivity Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

Workwithbwinvoker Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

Miscellaneous . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

Properties Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

Log Status Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

Retrying Function Setting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

Default Timeout Value Setting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .72

Proxy Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

Time Zone Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

Processing 16 Digits Numeric Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

Managing Plug-in Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

Setting Up Log Level . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

Exporting Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

Error Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

4

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 5: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

TIBCO Documentation and Support Services

All TIBCO documentation is available in the TIBCO Documentation Library, which can be found here:

https://docs.tibco.com

Product-Specific Documentation

The following documents for this product can be found in the TIBCO Documentation Library:

● TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce.com Installation● TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce.com User's Guide● TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce.com Release Notes

How to Contact TIBCO Support

For comments or problems with this manual or the software it addresses, contact TIBCO Support asfollows:

● For an overview of TIBCO Support, and information about getting started with TIBCO Support,visit this site:

http://www.tibco.com/services/support

● If you already have a valid maintenance or support contract, visit this site:

https://support.tibco.com

Entry to this site requires a user name and password. If you do not have a user name, you canrequest one.

How to Join TIBCOmmunity

TIBCOmmunity is an online destination for TIBCO customers, partners, and resident experts. It is aplace to share and access the collective experience of the TIBCO community. TIBCOmmunity offersforums, blogs, and access to a variety of resources. To register, go to:

http://www.tibcommunity.com

5

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 6: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Plug-in Overview

TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce.com enables users to utilize the benefits ofthe salesforce.com server without any coding.

TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce.com plugs into TIBCO ActiveMatrixBusinessWorks, allows users to configure a connection to the salesforce.com server and use activities tointegrate with the salesforce.com database.

TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce.com provides the following commonfunctionalities for integrating with the salesforce.com server:

● Easy-to-configure connection configuration shared resources can be reused for different activitiesand processes.

● The Get Session activity provides a simple interface and hides all details of complex sessionmanagement tasks, such as login, session expiration, and so on.

● Metadata Management allows you to build metadata at design time and store them as XML SchemaDefinition (XSD) schemas, which in turn will be used at runtime to perform runtime type-checking.

● High level data calls, such as Create All, Query All, Update All, Upsert All, Retrieve All, and DeleteAll. Each of these activities will have built-in error handling and logging.

● Dynamical Web Services Description Language (WSDL) switching allows you to work withdifferent versions of salesforce.com Partner and Enterprise WSDLs.

● Outbound Message Listener allows you to receive notifications from the salesforce.com server.● Relationship Query can be used to query multiple sObjects at one time in the salesforce.com

database. A relationship is created between those sObjects. Salesforce Object Query Language(SOQL) provides the syntax to support relationship queries. Parent-to-children and child-to-parentare the two possible relationships between sObjects.

6

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 7: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Salesforce.com Overview

Salesforce.com is the worldwide leader in on-demand customer relationship management (CRM)services. It delivers integrated and completely customizable enterprise applications for companies of allsizes.

Salesforce.com provides a web services Application Programming Interface (API) for customers andIndependent Software Vendor (ISVs) who want to build integrations. While web services are incrediblypowerful, there are a number of limitations customers run into when trying to build enterprise-classintegrations quickly and easily.

Customers, partners, and consultants build the same common components during each integrationeffort. These components, including session management, exception handling, logging, processmanagement, configuration management, reliable transactions, and polling services, are necessary forevery enterprise-class integration implementation.

7

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 8: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Getting Started

A typical workflow using the plug-in to achieve different goals includes creating a project, designing aprocess, and deploying the application.

TIBCO ActiveMatrix BusinessWorks enables users to create services and integrate applications, anddeploy them at runtime. It uses the Eclipse graphical user interface (GUI) for defining businessprocesses and the process engine to execute them.

Follow the tasks below to design a process and deploy it at runtime:

1. Creating a Project

2. Importing a WSDL

3. Creating a Salesforce Connection

4. Designing a Process

5. Testing an Application

6. Deploying an Application

Creating a ProjectBusinessWorks application modules are Eclipse projects that are created in TIBCO Business Studio, andthey contain various resources.

Procedure

1. Start TIBCO Business Studio.

2. Select File > New > BusinessWorks Resources.

3. Click the BusinessWorks Application Module resource in the BusinessWorks Resource Wizardwindow. Click Next.

4. Type a name for the project that you are creating in the Project name field.

5. Select the Create empty process check box and type a process name in the Name field.

8

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 9: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

6. Select the Create Application check box and type an application name in the Name field. ClickFinish.A project with the default settings is opened in the Project Explorer view.

Importing a WSDLThe Web Services Description Language (WSDL) is an XML-based language that can be used todescribe the services a business offers and to provide a way for individuals and other businesses toaccess those services electronically.

Procedure

1. Start TIBCO Business Studio.

2. In the Project Explorer view, right click the application module and select BW Salesforce Tools >Select Wsdl from the pop-up menu.

3. Select a WSDL from the Salesforce WSDL list, and then click OK.The default WSDL value is Partner WSDL. If you select Other WSDLs, you need to locate thecorresponding WSDL file in your computer.

4. Click OK in the Success window.

This manual uses Partner 28.0 WSDL to describe the salesforce activities. For eachactivity, the fields under the Input, Output, and Fault tabs are generated from thePartner 28.0 WSDL. If you select a WSDL other than this WSDL in a project, the Input,Output, and Fault fields may be different from the fields explained in the Salesforcepalette.

What to do next

After selecting a WSDL, you can create a salesforce connection.

9

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 10: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Creating a Salesforce ConnectionTo use the plug-in activities, you need to create a salesforce connection using the Salesforce sharedresource. The Salesforce shared resource describes the connection between the plug-in and theSalesforce.com server.

Procedure

1. In the Project Explorer view, expand the created application module and ritht click the Resourcesfolder, select New > Salesforce Connection Configuration.

2. Click Finish in the Salesforce Connection window.

3. Configure the related fields in the Salesforce Connection editor.See Salesfroce Connection for the more details.

4. Click Test Connection to validate the connection.

What to do next

After creating the salesforce connection, fetch the salesforce metadata from the salesforce.com serverwhen selecting a Partner WSDL for your project. For more information, see Getting Metadata for moredetails. The metadata is the key part of the database operations.

Designing a ProcessProcesses capture and manage the flow of business information in an enterprise between different datasources and destinations. You can design a process by using activities and adding conditions.

By default, an empty process is created when creating a project with the Create empty process checkbox selected.

See TIBCO ActiveMatrix BusinessWorks Application Deployment for more details about creating processes.

10

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 11: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Procedure

1. In the Process editor, select and drop an activity from the Palette view.For example, select and drop the Timer activity from the General Activities folder and theSalesforce Create All activity from the Salesforce folder.

2. Click the icon to create links between the activities.

3. Configure the added activities.

A salesforce shared resource is required when configuring the salesforce activities. See Creating a Salesforce Connection for more details on how to create a salesforce connection.

4. Click File > Save to save the process.

Testing an ApplicationAn application contains an application module that is defined in TIBCO Business Studio. After youdesign your business process, you can run and debug the configurations.

TIBCO Business Studio has a built-in debugger that allows users to debug the design-timeconfigurations.

Prerequisites

Ensure that you have created an application and designed a process before testing.

By default, a process and an application are created when Creating a Project with the Create emptyprocess and Create Application check boxes selected.

See TIBCO ActiveMatrix BusinessWorks Application Deployment for more details about creating processesand applications.

Procedure

1. Click Run > Run to run the application.

2. Optional: Click Run > Debug to debug the application.The perspective changes from Modelling to Debug . You can view the job details in the Consoleview from the Debug perspective.

11

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 12: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Deploying an ApplicationYou can manage BusinessWorks applications by using TIBCO Enterprise Administrator after deployingthe applications.

Prerequisites

An EAR file must be generated before deploying an application. See Generating an EAR File for detailsabout generating an EAR file.

A complete workflow of deployment includes:

1. Building an ERA file.

2. Uploading the ERA file.

3. Deploying the ERA file.

4. Configuring the application profile.

5. Starting the application.

You can deploy an application EAR file from TIBCO Enterprise Administrator, or by using thecommand-line mode with the bwdesign utility. See TIBCO ActiveMatrix BusinessWorks Administrationfor more details on how to deploy an application.

Generating an EAR FileApplication archives are the enterprise archive (EAR) files that are created in TIBCO Business Studio.An EAR file is required when deploying an application.

Prerequisites

An application project has been created, as explained in creating a project.

Procedure

1. Go to the File Explorer view and click the Open Directory to Browse icon.

2. Select the folder where you want to generate the EAR file and click OK.The new folder is displayed in the File Explorer view.

3. Drag the application from the Project Explorer view to the new folder in the File Explorer.

The EAR file is generated with the name <application>_<version>.ear. The <version> starts from1.0.0 and increments as more generations occur.

12

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 13: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Salesforce Tools

Salesforce tools can help you manage data in the salesforce.com server.

It includes the following tools:

● Selecting WSDL● Getting Metadata● Refreshing Metadata

Selecting WSDLThe Web Services Description Language (WSDL) is an XML-based language that can be used todescribe the services a business offers and to provide a way for individuals and other businesses toaccess those services electronically.

Import a WSDL

When working with the plug-in, you need to import a WSDL for your project after creating a project.

Default WSDL

In the plug-in, all available WSDLs and the SalesforceWSDLs.xml file that defines the WSDLs shownin the Select WSDL list are located in the TIBCO_HOME\bw\palettes\salesforce\6.0\wsdlsdirectory.

The default WSDL is defined in the first wsdl node in the SalesforceWSDLs.xml file, as shown in thefollowing figure.

13

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 14: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

SalesforceResources Folder

If the WSDL is successfully selected in an application module, the SalesforceResources folder will bedisplayed in the Project Explorer view. It is used to store salesforce resource files related to the currentapplication module. The resource files include the WSDL files, metadata files and so on.

● You cannot rename, edit, or delete the WSDL and the metadata files in the SalesforceResourcesfolder.

● You can add other files to the SalesforceResources folder.

Switch WSDL

The plug-in contains two types of salesforce.com WSDLs, the Partner WSDL and the Enterprise WSDL.You can only select one WSDL for an application module. If you want to switch the current WSDL toanother one, perform the Select WSDL operation again and using the following guidelines:

● When switching WSDLs between two different versions of Partner WSDLs, perform the SelectWSDL operation to import a target WSDL first, and then update the metadata from thesalesforce.com server. For more information, see Refreshing Metadata.

● When the Partner WSDL is replaced with an Enterprise WSDL, all metadata files related to theoriginal Partner WSDL are erased from the SalesforceResource folder. The Enterprise WSDLcontains its own metadata that can be used in your process.

● When the Enterprise WSDL is replaced with a Partner WSDL, you need to select a Partner WSDLfirst, and then perform the Getting Metadata operation to get the metadata from the salesforce.comserver.

14

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 15: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

● When the WSDL is changed, the string in the Server URL field needs to be updated by clicking the

button.

The Server URL in all the salesforce configuration resources must be the same version asthe selected WSDL.

● For the salesforce activities, the fields in the Input, Output and Fault tabs are parsed from thecertain WSDL. After the WSDL has been changed, the mapping configuration for the fieldsmentioned above may be affected. You need to repair any incorrect mappings.

Getting MetadataSalesforce Metadata resource describes the schema definition metadata for a given organization as aXML Schema Definition(XSD).

Prerequisites

Before getting metadata for your project, you need to create a salesforce connection, which allows youto download and store metadata as an XSD resource in the TIBCO Business Studio project during thedesign time.

Procedure

1. In the Project Explorer view, right click the application module and select BW Salesforce Tools >Get Metadata from the pop-up menu.

2. Click browse next to the Salesforce Connection field to select one usable connection for the currentactivity.

3. Click OK in the Select Salesforce Connection window.

4. Click OK in the Get Salesforce Metadata window.The Salesforce_Metadata.xsd and sforce_partner.xsd are displayed in theSalesforceResources folder in the Project Explorer view:

● The Salesforce_Metadata.xsd is a metadata schema that comes from a specified database onthe salesforce.com server.

● The sforce_partner.xsd stores some public data properties.

When selecting an Enterprise WSDL for your project, you do not need to perform theGetting Metadata operation to get salesforce metadata. The Enterprise WSDL containssalesforce metadata.

Refreshing MetadataThe Refreshing Metadata operation can be used to get updated schemas from the salesforce.com server.

Schema objects may change between the development phase and the production phase, or over thetime. It is important to decide to accept or reject changes. If you accept the change, you will be warnedthat all processes referring to the metadata may be impacted.

Procedure

1. Right click the application module in the Project Explorer view, and then select BW SalesforceTools > Refresh Metadata.

15

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 16: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

2. Click OK in the Refresh Salesforce Metadata window to perform the operation.

● If there is no update about the metadata on the salesforce.com server, then just click therelevant buttons to finish the operation.

● If the metadata on the salesforce.com server is different from the local metadata, a window willbe displayed, as shown in the following figure. Fields modified on the salesforce.com serverare displayed in the window.

3. Click relevant buttons to perform corresponding operations.

● Click OK to accept the updated result.● Click Cancel to reject this result.● Click Save As to save the result to an .xml file.

16

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 17: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Salesforce Connection

The Salesforce Connection shared resource specifies the salesforce connection information.

General

The General panel contains the following fields.

FieldModuleProperty? Description

Name No The name displayed as the label for the salesforce shared resourcein the process.

Description No Add a short description for the shared resource.

Connection Configuration

The Connection Configuration panel contains the following fields.

FieldModuleProperty? Description

Server URL No The URL to use when connecting to the salesforce.com loginserver.

After selecting a WSDL for your project, the URL information willbe automatically filled in this field. If you re-import a differentWSDL for your project, you need to click Reload WSDL to refreshthe ecore model for your project.

You must maintain one Server URL when configuringthe whole salesforce project.

User Name Yes The username to access the salesforce.com server.

Password Yes The password to access the salesforce.com server.

In certain circumstances, you may need to append thesecurity token to your password. A security token is anautomatically-generated key from salesforce.com. Forexample, if your password is mypassword, and theirsecurity token is XXXXXXXXXX, then you must entermypasswordXXXXXXXXXX to log in.

For detailed information on when to use a security token and howto generate it, refer to salesforce.com Web Service API Developer'sGuide.

Session Timeout(Min)

Yes The Session Timeout attribute specifies the duration for which thesession will be active. The value set here must be less than or equalto the value set on the salesforce.com website.

The default value is 120 minutes.

17

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 18: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

FieldModuleProperty? Description

Test Connection No Click Test Connection to test whether the specified configurationfields result in a valid connection to a database in thesalesforce.com server.

18

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 19: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Salesforce Palette

The Salesforce palette contains activities that can be added to your business processes to allow you todeal with a certain workflow.

It includes the following activities:

● Salesforce Create All● Salesforce Delete All● Salesforce Get Session● Salesforce Query All● Salesforce Retrieve All● Salesforce Update All● Salesforce Upsert All● Salesforce Outbound Message Listener

Salesforce Create AllThe Salesforce Create All activity adds one or more new individual objects to your organization’s data.

General

The General tab contains the following fields.

Field

ModuleProperty? Description

Name No The name displayed as the label for the activity in the process.

SalesforceConnection

Yes The path to the shared configuration resource defining how theapplication joins the salesforce.

Click the Choose/Create Default Resource icon to select ausable connection for the activity.

Description

Provide a short description for the activity.

Input

The Input tab contains the following fields.

Input Items Data Type Description

connectionInfo (All fields in this section are optional.)

serverUrl string URL of the endpoint that will be used by this operation.

sessionId string Unique ID associated with this session.

19

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 20: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Input Items Data Type Description

externalSessionIdUsed

boolean Specifies whether an external session ID is used (true) or not(false).

If the value is set to true, an external session ID will be filled in thesessionId field.

When the session needs to be refreshed, the refreshed operationcannot be performed, and an exception will be thrown.

create

batchSize integer Optional. When processing large amounts of data, the activityinternally invokes several SOAP calls. This field is used to set thebatch size for the number of records created through a SOAP call.

The value is set between 1 and 200.

If the input value equals to -1, it will be set to the default value. Ifthe input value is greater than 200, it will be set to 200. If the inputvalue is less than 1 (except -1), it will be set to 1.

The default is 200.

externalIdFieldName

string Optional. This field is used when performing the retry operation. Aninternal upsert method will be called to retry the operation. If thisfield is not specified when doing the retrying operation, anexception will be thrown out and the retrying operation will not beperformed.

It contains the name of the field defined as a key field in the sObject.

createSObjects Each createSobjects includes the following element:

● sObjects (A complex value): Required. An array of one or moreobjects to create. This sObject can be converted to the specifiedtype defined in the metadata schema, for example, theSalesforce_metadata, getting from the salesforce.com server.

● In this release, you can create up to 10 object typesin one call. Select sObjects > Duplicate to addmultiple object types.

● You do not need to specify the Id field in thesObject.

To create a new relationship between a newlycreated sObject (sObject A) and an existing sObject(sObject B), where the sObject A schema includesthe sObject B schema, set the value of the key fieldin sObject B while creating sObject A. If youmodify the values of the fields in sObject B withinthe sObject A schema, the original sObject B willnot be modified. The key field in sObject B withinthe sObject A schema is only used to link sObject Awith the original sObject B.

20

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 21: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Input Items Data Type Description

create_Optional (All fields in this section are optional.)

_configData Each _configData includes the following element:

● timeout (A integer value): The timeout value specifies thenumber of milliseconds, and an internal API call waits before thedata returns.

The default value is 15000 milliseconds.

You can also change the default timeout value by setting theproperties. See Default Timeout Value Setting for detailedinformation.

21

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 22: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Input Items Data Type Description

headers Each headers includes the following elements:

● CallOptions

— client (A string value): A string that identifies a particularclient.

— defaultNamespace (A string value): A string that identifiesa developer namespace prefix. Use this field to resolve fieldnames in managed packages without having to fully specifythe fieldName everywhere.

● AssignmentRuleHeader

— assignmentRuleId (A string value): The ID of a specificassignment rule to run for the Case or Lead. It can be aninactive assignment rule. The ID can be retrieved byquerying AssignmentRule object. If specified, do not specifyuseDefaultRule. This element is ignored for Accounts,because all territory assignment rules are applied.

Case and Lead are two predefined salesforce.com schematypes. For more information about this two types, seeForce.com Web Service API Developer's Guide.

— useDefaultRule (A boolean value): If true for a Case orLead, uses the default (active) assignment rule for a Case orLead. If specified, do not specify an assignmentRuleId andtype an empty string in the assignmentRuleId field. If truefor an Account, all territory assignment rules are applied,and if false, no territory assignment rules are applied.

● MruHeader

— updateMru (A boolean value): Specifies whether to updatethe list of most recently used items (true) or not (false).

● AllowFieldTruncationHeader

— allowFieldTruncation (A boolean value): Specifieswhether to truncate field values that are too long (true) ornot (false).

Default is false: no change in behavior. If a string ortextarea value is too large, the operation fails and the faultcode STRING_TOO_LONG is returned.

● DisableFeedTrackingHeader

— disableFeedTracking (A boolean value): If it is set to true,the changes made in the current call are not tracked in feeds.

The default is false.

22

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 23: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Input Items Data Type Description

● StreamingEnabledHeader

— streamingEnabled (A boolean value): To specify whetheryou want to receive streaming notifications changes of thedata.

● AllOrNoneHeader

— allOrNone (A boolean value): If allOrNone is set to true,any failed records in a call cause all changes for the call to berolled back. Record changes are not committed unless allrecords are processed successfully.

The default is false. Some records can be processedsuccessfully while others are marked as failed in the callresults.

When processing large amounts of data, theactivity internally invokes several SOAP calls.However, this AllOrNoneHeader only applies toeach internal SOAP call. If allOrNone is set totrue, the records in each internal SOAP call willall succeed or be rolled back.

● DebuggingHeader

— debugLevel (A string value): Specifies the level of detail inthe debug header.

See salesforce.com document Apex Developer’s Guide fordetailed information.

The response of the debugging information can be found inthe SOAP message log. You may need to enable the debugrole log to trace the debugging errors.

● PackageVersionHeader

Each PackageVersion includes the following elements:

● majorNumber (A int value): The major version number of apackage version.

A package version is denoted by majorNumber.minorNumber,for example 2.1.

● minorNumber (A int value): The minor version number of apackage version.

A package version is denoted by majorNumber.minorNumber,for example 2.1.

● namespace (A string value): The unique namespace of themanaged package.

23

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 24: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Input Items Data Type Description

● EmailHeader

— triggerAutoResponseEmail (A boolean value): Specifieswhether to trigger auto-response rules (true) or not (false),for leads and cases. In the salesforce.com user interface, thisemail can be automatically triggered by a number of events,for example creating a case or resetting a user password.

— triggerOtherEmail (A boolean value): Specifies whether totrigger email outside the organization (true) or not (false).In the salesforce.com user interface, this email can beautomatically triggered by creating, editing, or deleting acontact for a case.

— triggerUserEmail (A boolean value): Specifies whether totrigger email that is sent to users in the organization (true)or not (false). In the Salesforce user interface, this email canbe automatically triggered by a number of events; resetting apassword, creating a new user, adding comments to a case,or creating or modifying a task.

Output

The Output tab contains the following fields.

Output ItemDataType Description

createAllResponse

result errors complex If errors occur during the activity, an array of error objects withan error code and description will be returned.

id string ID of an sObject that you attempt to create.

success boolean Indicate whether the Create activity has succeeded (true) ornot (false).

Fault

The Fault tab lists the possible exceptions thrown by this activity.

Fault Thrown when..

SalesforceExecuteSOAPMethodException

An error occurred when calling a SOAP method.

For example, the wrong value is set in the Input fields or the Salesforce sessionhas timed out.

SalesforceLoginException

An error occurred when logging on to the salesforce.com server.

24

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 25: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Fault Thrown when..

SalesforceConnectionNotFoundException

An error occurred when the external session Id is not used and the SalesforceConnection is not configured correctly.

Salesforce Delete AllThe Salesforce Delete All activity deletes one or more individual objects from your organization’s data.

General

The General tab contains the following fields.

FieldModuleProperty? Description

Name No The name displayed as the label for the activity in the process.

SalesforceConnection

Yes The path to the shared configuration resource defining how theapplication joins the salesforce.

Click the Choose/Create Default Resource icon to select ausable connection for the activity.

Description

Provide a short description for the activity.

Input

The Input tab contains the following fields.

Input Items Data Type Description

connectionInfo (All fields in this section are optional.)

serverUrl string URL of the endpoint that will be used by this operation.

sessionId string Unique ID associated with this session.

externalSessionIdUsed

boolean Specifies whether an external session ID is used (true) or not(false).

If the value is set to true, an external session ID will be filled in thesessionId field.

When the session needs to be refreshed, the refresh operation cannotbe performed, and an exception will be thrown.

25

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 26: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Input Items Data Type Description

delete Each delete includes the following elements:

● batchSize (A integer value): Optional. When processing largeamounts of data, the activity internally invokes several SOAPcalls. This field is used to set the batch size for the number ofrecords deleted through an SOAP call.

The value is set between 1 and 200. If the input value equals -1,it will be set to the default value. If the input value is greater than200, it will be set to 200. If the input value is less than 1 (except-1), it will be set to 1.

The default value is 200.

● deleteSObjects

— ids (A string value): Required. An array of one or more IDsassociated with the objects to delete.

delete_Optional (All fields in this section are optional.)

_configData Each _configData includes the following node:

● timeout (A integer value): The timeout value specifies thenumber of milliseconds, and an internal API call waits before thedata returns. The default value is 15000 milliseconds. You canalso change the default timeout value by setting the properties.See Default Timeout Value Setting for detailed information.

26

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 27: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Input Items Data Type Description

headers Each headers includes the following elements:

● CallOptions

— client (A string value): A string that identifies a particularclient.

— defaultNamespace (A string value): A string that identifiesa developer namespace prefix. Use this field to resolve fieldnames in managed packages without having to fully specifythe fieldName everywhere.

● PackageVersionHeader

Each PackageVersion includes the following nodes:

● majorNumber (A int value): The major version number of apackage version.

A package version is denoted by majorNumber.minorNumber,for example 2.1.

● minorNumber (A int value): The minor version number of apackage version.

A package version is denoted by majorNumber.minorNumber,for example 2.1.

● namespace (A string value): The unique namespace of themanaged package.

● UserTerritoryDeleteHeader

— transferToUserId (A string value): The ID of the user towhom open opportunities in that user's territory will beassigned when an opportunity's owner (user) is removedfrom a territory.

● EmailHeader

— triggerAutoResponseEmail (A boolean value): Specifieswhether to trigger auto-response rules (true) or not (false),for leads and cases. In the salesforce.com user interface, thisemail can automatically triggered by a number of events, forexample creating a case or resetting a user password.

— triggerOtherEmail (A boolean value): Specifies whether totrigger email outside the organization (true) or not (false).In the salesforce.com user interface, this email can beautomatically triggered by creating, editing, or deleting acontact for a case.

— triggerUserEmail (A boolean value): Specifies whether totrigger email that is sent to users in the organization (true)or not (false). In the Salesforce user interface, this email canbe automatically triggered by a number of events; resetting apassword, creating a new user, adding comments to a case,or creating or modifying a task.

27

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 28: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Input Items Data Type Description

● AllowFieldTruncationHeader

— allowFieldTruncation (A boolean value): Specifieswhether to truncate field values that are too long (true) ornot (false).

Default is false: no change in behavior. If a string ortextarea value is too large, the operation fails and the faultcode STRING_TOO_LONG is returned.

● DisableFeedTrackingHeader

— disableFeedTracking (A boolean value): If it is set to true,the changes made in the current call are not tracked in feeds.

The default is false.

● StreamingEnabledHeader

— streamingEnabled (A boolean value): To specify whetheryou want to receive streaming notifications of changes to thedata.

● AllOrNoneHeader

— allOrNone (A boolean value): If allOrNone is set to true,any failed records in a call cause all changes for the call to berolled back. Record changes are not committed unless allrecords are processed successfully.

The default is false. Some records can be processedsuccessfully while others are marked as failed in the callresults.

When processing large amounts of data, theactivity internally invokes several SOAP calls.However, AllOrNoneHeader only applies to eachinternal SOAP call. If allOrNone is set to true, therecords in each internal SOAP call will all succeedor be rolled back.

● DebuggingHeader

— debugLevel (A string value): Specifies the level of detail inthe debug header.

See Apex Developer’s Guide for detailed information.

The response of the debugging information can be found inthe SOAP message log. You may need to enable the debugrole log for tracing debugging errors.

Output

The Output tab contains the following fields.

28

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 29: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Output ItemDataType Description

deleteAllResponse

result errors complex If errors occur during the activity, an array of error objects with anerror code and description, are returned.

id string ID of an sObject that you attempted to delete.

success boolean Indicate whether the delete activity has succeeded (true) or not(false).

Fault

The Fault tab lists the possible exceptions thrown by this activity. See TIBCO ActiveMatrixBusinessWorks Error Code for more information about error codes and corrective actions to take.

Fault Thrown when

SalesforceExecuteSOAPMethodException An error occurred when calling an SOAP method.

For example, the wrong value is set in the Input fieldsor the Salesforce session has timed out.

SalesforceLoginException An error occurred when logging on to thesalesforce.com server.

SalesforceConnectionNotFoundException An error occurred when the external session Id is notused and the salesforce connection is not configuredcorrectly.

Salesforce Get SessionThe Salesforce Get Session activity retrieves an object reference for a specified salesforce connection andgets an existing session. This session can be used within salesforce activities to access a specifieddatabase.

General

The General tab contains the following fields.

Field

ModuleProperty? Description

Name No The name displayed as the label for the activity in the process.

SalesforceConnection

Yes The path to the shared configuration resource defining how theapplication joins the salesforce.

Click the Choose/Create Default Resource icon to select a usableconnection for the activity.

29

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 30: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Description

Provide a short description for the activity.

Input

The Input tab contains the following fields.

Input ItemDataType Description

login

salesforceConnection

string Optional. Path to the shared configuration resource containing thesalesforce connection information.

The priority of this field is higher than the Salesforce Connectionfield in the General tab. If you want to change the referencedsalesforce connection resource at runtime, you may set it here.

refreshSession boolean Optional. Specify whether a new session can be initiated.

Set the value to true if you always want to get a new session.

Set the value to false if the existing session is used. The obtainedsession may not be usable if it has timed out. But the performancetime in this situation is faster.

Output

The Output tab contains the following fields.

Output ItemDataType Description

salesforceConnection

string Path to the shared configuration resource containing the salesforceconnection information.

Indicates that the Salesforce Get Session activity uses thissalesforce connection resource at runtime.

loginResponse

30

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 31: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Output ItemDataType Description

result Each result includes the following elements:

● metadataServerUrl (A string value): URL of the endpoint thatprocesses subsequent metadata API calls.

● passwordExpired (A boolean value): Indicates whether thepassword used during the login attempt has expired (true) ornot (false).

● sandbox (A boolean value): To specify whether the usingSalesforce environment is sandbox or not.

● serverUrl (A string value): URL of the endpoint thatprocesses subsequent API calls.

● sessionId (A string value): Unique ID associated with thissession.

● userId (A string value): ID of the user associated with thespecified username and password.

● userInfo (A complex value): User information fields.

Fault

The Fault tab lists the possible exceptions thrown by this activity.

Fault Thrown when

SalesforceLoginException An error occurred when logging on to the salesforce.com server.

SalesforceConnectionNotFoundException

An error occurred when the external session Id is not used andthe Salesforce Connection is not configured correctly.

Salesforce Query AllThe Salesforce Query All activity performs the specified SOQL SELECT statement. It executes a queryagainst the specified object and returns data that matches the specified criteria.

General

The General tab contains the following fields.

Field

ModuleProperty? Description

Name No The name displayed as the label for the activity in the process.

31

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 32: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Field

ModuleProperty? Description

SalesforceConnection

Yes The path to the shared configuration resource defining how theapplication joins the salesforce.

Click the Choose/Create Default Resource icon to select ausable connection for the activity.

Description

Provide a short description for the activity.

Input

The Input tab contains the following fields.

Input ItemsDataType Description

connectionInfo (All fields in this section are optional.)

serverUrl string URL of the endpoint that is used by this operation.

sessionId string Unique ID associated with this session.

externalSessionIdUsed

boolean Specify whether an external session ID is used (true) or not (false).

If the value is set to true, an external session ID will be filled in thesessionId field.

When the session needs to be refreshed, the refresh operation cannotbe performed, and an exception will be thrown.

query

batchSize integer Optional. When processing large amounts of data, the activityinternally invokes several SOAP calls. This field is used to set thebatch size for the number of records returned through a SOAP call.

The value can be set between 200 and 2000. If the input value equals-1, it will be set to the default value. If the input value is greater than2000, it will be set to 2000. If the input value is less than 200 (except-1), it will be set to 200.

The default value is 500.

queryMain Each queryMain includes the following element:

● queryString (A string value): Required. Query string followsSOQL syntax. It specifies the object to query, the fields to return,and any condition for including a specific object in the query.

query_Optional (All fields in this section are optional.)

32

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 33: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Input ItemsDataType Description

_configData Each _configData includes the following element:

● timeout (A int value): The timeout value specifies the number ofmilliseconds, and an internal API call waits before the datareturns.

The default value is 15000 milliseconds.

You can also change the default timeout value by setting theproperties. See Default Timeout Value Setting for detailedinformation.

headers Each headers includes the following elements:

● CallOptions

— client (A string value): A string that identifies a particularclient.

— defaultNamespace (A string value): A string that identifies adeveloper namespace prefix. Use this field to resolve fieldnames in managed packages without having to fully specifythe fieldName everywhere.

● MruHeader

— updateMru (A boolean value): Specify whether to update thelist of most recently used items (true) or not (false), whichis on the sidebar in the salesforce.com user interface.

● PackageVersionHeader

Each PackageVersion includes the following elements:

● majorNumber (A int value): The major version number of apackage version.

A package version is denoted by majorNumber.minorNumber,for example 2.1.

● minorNumber (A int value): The minor version number of apackage version.

A package version is denoted by majorNumber.minorNumber,for example 2.1.

● namespace (A string value): The unique namespace of themanaged package.

33

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 34: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Input ItemsDataType Description

SubsetSetting Each SubsetSetting includes the following elements:

● ProcessInSubsets(A boolean value): Optional. Specify whetherto allow you to process smaller batches of rows instead ofretrieving one large result set (true) or not (false).

This element must be used in conjunction with a Repeat loopscope for processing the result sets. See Querying Data in SubsetMode for more information.

The default value is false.

● subsetSize (A int value): Optional. This element is only availablewhen the ProcessInSubsets field is set to true. When that fieldis set to true, records are processed in batches and the returneddata will be passed out from the activity when completing theactivity in a subsetSize batch.

This element specifies the maximum number of messages that arepicked up for each execution loop. Its range is from 1 to 10. Thisallows you to process smaller batches of rows instead ofretrieving one large result set. This element must be used inconjunction with a Repeat loop scope group for processing theresult sets. See Querying Data in Subset Mode for moreinformation.

The default value is 1.

Output

The Output tab contains the following fields.

Output ItemDataType Description

queryAllResponse

result done boolean Indicates whether additional rows need to be retrieved fromthe query results (false) using another query activity, or not(true). Your client application can use this value as a loopcondition when iterating through the query results.

queryLocator string Used in subsequent query activities for retrieving sets ofobjects from the query results, if applicable.

records complex An array of sObjects representing individual objects of thespecified object and containing data defined in the fieldlistspecified in the queryString element.

These sObjects can be converted to the specified type definedin the metadata schema, for example, the Salesforce_Metadata,retrieved from the salesforce.com server.

34

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 35: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Output ItemDataType Description

size integer Total number of rows retrieved in the query. Your clientapplication can use this value to determine whether the queryretrieved any rows (size > 0) or not (size = 0).

lastSubset boolean Indicate whether the current output is the last subset (true) ornot (false).

Fault

TheFault tab lists the possible exceptions thrown by this activity. See TIBCO ActiveMatrix BusinessWorksError Code for more information about error codes and corrective actions to take.

Fault Thrown when

SalesforceExecuteSOAPMethodException

An error occurred when calling an SOAP method.

For example, the wrong value is set in the Input fields orthe salesforce session has timed out.

SalesforceLoginException An error occurred when logging on to the salesforce.comserver.

SalesforceConnectionNotFoundException

An error occurred when the external session Id is not usedand the salesforce connection is not configured correctly.

Querying Data in Subset ModeWhen the result set of a query is very large, you can query subsets of the result set and iterate until theentire result set is processed.

To query subsets, you must use a Repeat loop scope to iterate through the entire result set:

Procedure

1. Create a Salesforce Query All activity.

2. Specify the fields in the General tab and create a query that returns multiple rows.

3. Set the ProcessInSubsets element of the Input tab to true.

4. Set the subsetSize element for the Salesforce Query All activity to the maximum number ofmessages of batchsize you want to process for each execution loop.

5. Right click the Salesforce Query All activity, and then select Create Group > Scope from the pop-upmenu to create a scope containing the activity.

6. Select Repeat from the Group Type list in the General tab, and specify an index name.

7. The loop exits when the entire result set has been consumed. The condition for the loop can be setto: $SalesforceQueryAll/queryAllResponse/lastSubset=’true’.

The above procedure is a general guideline for creating a loop scope for processing a largeset of records. You may want to modify the procedure to include additional processing ofthe records, or you may want to change the XPath expressions to suit your businessprocess.

35

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 36: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Relationship QueryThe Relationship Query can be used to query multiple sObjects at a time in the salesforce.com database.

There is a relationship created between those sObjects. SOQL provides the syntax to supportrelationship queries. Parent-to-children and child-to-parent are the two possible relationships betweensObjects. In the salesforce.com database, some sOjects with a relationship are predefined. For example,Account is a parent to Contact. You can use relationship queries to search for sObjects of one typebased on criteria that applies to sObjects of another type. For example, “return all accounts created byBob Jones and the contacts associated with those accounts.” There must be a parent-to-children orchild-to-parent relationship connecting the sObjects, as shown in the following figure:

For more information about relationship queries, See Force.com Web Service API Developer's Guide and Working With RelationshipQuery Project.

Salesforce Retrieve AllThe Salesforce Retrieve All activity retrieves one or more individual objects from your organization’sdata and bases on the specified object IDs.

General

The General tab contains the following fields.

Field

ModuleProperty? Description

Name No The name displayed as the label for the activity in the process.

SalesforceConnection

Yes The path to the shared configuration resource defining how theapplication joins the salesforce.

Click the Choose/Create Default Resource icon to select ausable connection for the activity.

Description

Provide a short description for the activity.

Input

The Input tab contains the following fields.

Input ItemsDataType Description

connectionInfo (All fields in this section are optional.)

serverUrl string URL of the endpoint that is used by this operation.

36

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 37: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Input ItemsDataType Description

sessionId string Unique ID associated with this session.

externalSessionIdUsed

boolean

Specify whether an external session ID is used (true) or not (false).

If set the value to true, an external session ID will be filled in thesessionId field.

When the session needs to be refreshed, the refresh operation cannotbe performed, and an exception will be thrown.

retrieve

batchSize integer Optional. When processing large amounts of data, the activityinternally invokes several SOAP calls. This field is used to set thebatch size for the number of records returned through an SOAP call.

The value should be set between 200 and 2000. If the input valueequals -1, it will be set to the default value. If the input value isgreater than 2000, it will be set to 2000. If the input value is less than200 (except -1), it will be set to 200.

The default value is 500.

retrieveMain Each retrieveMain includes the following elements:

● fieldList (A string value): Required. List of one or more fieldsin the specified object, separated by commas.You must specifyvalid field names and must have read-level permissions to eachspecified field.

The fieldList defines the ordering of fields in the result.Because using the wildcard (*) might return a very large result setthat can slow client application performance, use it only whennecessary.

● sObjectType (A string value): Required. The specified valuemust be a valid object for your organization.

● ids (A string value): Required. An array of one or more IDs ofthe objects to retrieve. You can pass a maximum of 2000 objectIDs to the activity.

retrieve_Optional

_configData Each _configData includes the following element:

● timeout (A int value): The timeout value specifies the number ofmilliseconds, and an internal API call waits before the datareturns.

The default value is 15000 milliseconds.

You can also change the default timeout value by setting theproperties. See Default Timeout Value Setting for detailedinformation.

37

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 38: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Input ItemsDataType Description

headers Each headers includes the following elements:

● CallOptions

— client (A string value): A string that identifies a particularclient.

— defaultNamespace (A string value): A string that identifies adeveloper namespace prefix. Use this field to resolve fieldnames in managed packages without having to fully specifythe fieldName everywhere.

● MruHeader

— updateMru (A boolean value): To specify whether to updatethe list of most recently used items (true) or not (false),which is on the sidebar in the salesforce.com user interface.

● PackageVersionHeader

Each PackageVersion includes the following nodes:

● majorNumber (A int value): The major version number of apackage version.

A package version is denoted by majorNumber.minorNumber,for example 2.1.

● minorNumber (A int value): The minor version number of apackage version.

A package version is denoted by majorNumber.minorNumber,for example 2.1.

● namespace (A string value): The unique namespace of themanaged package.

38

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 39: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Input ItemsDataType Description

SubsetSetting Each SubsetSetting includes the following elements:

● ProcessInSubsets (A boolean value): Optional. Specify whetherto allow you to process smaller batches of rows instead ofretrieving one large result set (true) or not (false).

This element must be used in conjunction with a Repeat loopscope for processing the result sets. See Retrieving Data in theSubset Mode for more information.

The default value is false.

● subsetSize (A int value): Optional. This element is onlyavailable when the ProcessInSubsets field is set to be true.When that field is set to be true, records are processed in batchesand the returned data will be passed out from the activity whencompleting the activity in a subsetSize batches.

This element specifies the maximum number of messages that arepicked up for each execution loop. Its range is from 1 to 10.

This allows you to process smaller batches of rows instead ofretrieving one large result set. This element must be used inconjunction with Repeat loop scope for processing the result sets.See Retrieving Data in the Subset Mode for more information.

The default value is 1.

Output

The Output tab contains the following fields.

OutputItem

DataType Description

retrieveAllResponse

result complex An array of sObjects representing individual objects of the specified objectand containing data defined in the fieldlist specified in the ids.

Those sObjects can be converted to the specified type defined in themetadata schema, for example, the Salesforce_metadata, getting from thesalesforce.com server.

lastSubset boolean Indicate whether the current output is the last subset (true) or not(false).

Fault

The Fault tab lists the possible exceptions thrown by this activity.

39

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 40: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Fault Thrown when

SalesforceExecuteSOAPMethodException

An error occurred when calling an SOAP method.

For example, the wrong value is set in the Input fields orthe Salesforce session has timed out.

SalesforceLoginException An error occurred when logging on to the salesforce.comserver.

SalesforceConnectionNotFoundException

An error occurred when the external session Id is not usedand the salesforce connection is not configured correctly.

Retrieving Data in the Subset ModeWhen the result set of a retrieve is very large, the result can be returned in subsets and iterate themuntil the entire result set is processed.

To retrieve subsets, you must use a Repeat loop scope to iterate through the entire result set:

Procedure

1. Create a Salesforce Retrieve All activity.

2. Specify the fields in the General tab and create a retrieve that returns multiple rows.

3. Set the ProcessInSubsets element of the Input tab to true .

4. Set the subsetSize element for the Salesforce Retrieve All activity to the maximum number ofmessages of batch size you want to process for each execution loop.

5. Right click the Salesforce Query All activity, and then select Create Group > Scope from the pop-upmenu to create a scope containing the activity.

6. Select Repeat from the Scope Type list in the General tab, and specify an index name.

7. The loop exits when the entire result set has been consumed. The condition for the loop can be setto: $SalesforceRetrieveAll/retrieveAllResponse/lastSubset=’true’.

The above procedure is a general guideline for creating a loop scope for processing a largeset of records. You may want to modify the procedure to include additional processing ofthe records, or you may want to change the XPath expressions to suit your businessprocess.

Salesforce Update AllThe Salesforce Update All activity updates one or more existing objects with your organization’s data.

General

The General tab contains the following fields.

Field

ModuleProperty? Description

Name No The name displayed as the label for the activity in the process.

40

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 41: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Field

ModuleProperty? Description

SalesforceConnection

Yes The path to the shared configuration resource defining how theapplication joins the salesforce.

Click the Choose/Create Default Resource icon to select a usableconnection for the activity.

Description

Provide a short description for the activity.

Input

The Input tab contains the following fields.

Input ItemsDataType Description

connectionInfo (All fields in this section are optional.)

serverUrl string URL of the endpoint that is used by this operation.

sessionId string Unique ID associated with this session.

externalSessionIdUsed

boolean

Specify whether an external session ID is used (true) or not (false).

If the value is set to true, an external session ID will be filled in thesessionId field.

When the session needs to be refreshed, the refresh operation cannotbe performed, and an exception will be thrown out.

update

batchSize integer Optional. When processing large amounts of data, the activity willinternally invoke several SOAP calls. This field is used to set the batchsize for the number of records updated through a SOAP call.

The value can be set between 1 and 200. If the input value equals to-1, it will be set to the default value. If the input value is greater than200, it will be set to 200. If the input value is less than 1 (except -1), itwill be set to 1.

The default value is 200.

41

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 42: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Input ItemsDataType Description

updateSObjects Each updateSObjects includes the following element:

● sObjects (A complex value): Required. An array of one or moreobjects to update. This sObject can be converted to the specifiedtype defined in the metadata schema, for example, theSalesforce_metadata, retrieved from the salesforce.com server.

To create a new relationship between a newly created sObject(sObject A) and an existing sObject (sObject B), where the sObjectA schema includes the sObject B schema, set the value of the keyfield in sObject B while updating sObject A. If you modify thevalues of the fields in sObject B within the sObject A schema, theoriginal sObject B will not be modified. The key field in sObject Bwithin the sObject A schema is only used to link sObject A withthe original sObject B.

In this release, you can create up to 10 object types inone call. Select sObjects > Duplicate to add multipleobject types.

update_Optional

_configData Each _configData includes the following element:

● timeout (A int value): The timeout value specifies the number ofmilliseconds an internal API call waits before the data returns. Thedefault value is 15000 milliseconds.

You can also change the default timeout value by setting theproperties. See Default Timeout Value Setting for detailedinformation.

42

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 43: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Input ItemsDataType Description

headers Each headers includes the following elements:

● CallOptions

— client (A string value): A string that identifies a particularclient.

— defaultNamespace (A string value): A string that identifies adeveloper namespace prefix. Use this field to resolve fieldnames in managed packages without having to fully specifythe fieldName everywhere.

● AssignmentRuleHeader

— assignmentRuleId (A string value): The ID of a specificassignment rule to run for the Case or Lead. It can be aninactive assignment rule. The ID can be retrieved by queryingAssignmentRule object. If specified, do not specifyuseDefaultRule. This element is ignored for Accounts, becauseall territory assignment rules are applied.

Case and Lead are two pre-defined Salesforce.com schematypes. For more information about this two types, refer toForce.com Web Service API Developer's Guide.

— useDefaultRule (A boolean value): If true for a Case orLead, uses the default (active) assignment rule for a Case orLead. If specified, do not specify an assignmentRuleId andtype an empty string in the assignmentRuleId field. If truefor an Account, all territory assignment rules are applied, andif false, no territory assignment rules are applied.

● MruHeader

— updateMru (A boolean value): Specify whether to update thelist of most recently used items (true) or not (false), which ison the sidebar in the salesforce.com user interface.

● AllowFieldTruncationHeader

— allowFieldTruncation (A boolean value): Specify whetherto truncate field values that are too long (true) or not (false).

Default value is false: no change in behavior. If a string ortext area value is too large, the operation fails and the faultcode STRING_TOO_LONG is returned.

● DisableFeedTrackingHeader

— disableFeedTracking (A boolean value): If true, thechanges made in the current call are not tracked in feeds.

The default is false.

43

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 44: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Input ItemsDataType Description

● StreamingEnabledHeader

— streamingEnabled (A boolean value): Specify whether wantto receive streaming notificaions of changes to the data.

● AllOrNoneHeader

— allOrNone (A boolean value): If allOrNone is set to true, anyfailed records in a call cause all changes for the call to berolled back. Record changes are not committed unless allrecords are processed successfully.

The default value is false. Some records can be processedsuccessfully while others are marked as failed in the callresults.

When processing large amounts of data, the activityinternally invokes several SOAP calls. However,this AllOrNoneHeader only applys to each internalSOAP call. If allOrNone is set to true, the recordsin each internal SOAP call will all succeed or berolled back.

● DebuggingHeader

— debugLevel (A string value): Specify the level of detail in thedebug header. See Apex Developer’s Guide for detailedinformation.

The response of the debugging information can be found inthe SOAP message log. You may need to enable the debugrole log for tracing the debugging errors.

● PackageVersionHeader

Each PackageVersion includes the following elements:

● majorNumber (A int value): The major version number of apackage version.

A package version is denoted by majorNumber.minorNumber,for example 2.1.

● minorNumber (A int value): The minor version number of apackage version.

A package version is denoted by majorNumber.minorNumber,for example 2.1.

● namespace (A string value): The unique namespace of themanaged package.

44

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 45: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Input ItemsDataType Description

● EmailHeader

— triggerAutoResponseEmail (A boolean value): Specifywhether to trigger auto-response rules (true) or not (false),for leads and cases. In the salesforce.com user interface, thisemail can be automatically triggered by a number of events,for example creating a case or resetting an user password.

— triggerOtherEmail (A boolean value): Specify whether totrigger email outside the organization (true) or not (false).In the Salesforce.com user interface, this email can beautomatically triggered by creating, editing, or deleting acontact for a case.

— triggerUserEmail (A boolean value): Specifies whether totrigger email that is sent to users in the organization (true) ornot (false). In the Salesforce user interface, this email can beautomatically triggered by a number of events; resetting apassword, creating a new user, adding comments to a case, orcreating or modifying a task.

● OwnerChangeOptions

— transferAttachments (A boolean value): IftransferAttachments is set to true, the record’s notes,attachments, and Google Docs are transferred to the newrecord owner. If false, the original record owner retainsownership.

The default is true.

— transferOpenActivities (A boolean value): IftransferOpenActivities is set to true, the record’s openactivities are transferred to the new record owner. If false,the original record owner retains ownership.

The default is true.

Output

The Output tab contains the following fields.

Output ItemDataType Description

updateAllResponse

result errors complex If errors occur during the activity, an array of error objects with theerror code and description, are returned.

id string The ID of an sObject that you attempt to create.

45

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 46: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Output ItemDataType Description

success

boolean Indicate whether the create activity succeeds (true) or not (false).

Fault

TheFault tab lists the possible exceptions thrown by this activity.

Fault Thrown when

SalesforceExecuteSOAPMethodException

An error occurred when calling an SOAP method.

For example, the wrong value is set in the Input fields or thesalesforce session is timeout.

SalesforceLoginException An error occurred when logging on to the salesforce.com server.

SalesforceConnectionNotFoundException

An error occurred when the external session Id is not used andthe salesforce connection is not configured correctly.

Salesforce Upsert AllThe Salesforce Upsert All activity creates new objects or updates existing objects; uses a custom field todetermine the presence of existing objects.

This activity uses the external ID to determine whether it creates a new object or updates an existingone:

● If the external ID does not match, a new object is created.● If the external ID is matched once, the existing object is updated.● If the external ID is matched multiple times, an error is reported.● When batch updating multiple objects where the external ID is the same for two or more objects in

your batch call, those records will be marked as errors in the UpsertResult. The objects will beneither created or updated.

General

The General tab contains the following fields.

Field

ModuleProperty? Description

Name No The name displayed as the label for the activity in the process.

SalesforceConnection

Yes The path to the shared configuration resource defining how theapplication joins the salesforce.

Click the Choose/Create Default Resource icon to select a usableconnection for the activity.

46

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 47: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Description

Provide a short description for the activity.

Input

The Input tab contains the following fields.

Input ItemsDataType Description

connectionInfo (All fields in this section are optional.)

serverUrl string URL of the endpoint that will be used by this operation.

sessionId string Unique ID associated with this session.

externalSessionIdUsed

boolean Specifies whether an external session ID is used (true) or not(false).

If set the value to true, an external session ID will be filled in thesessionId field.

When the session needs to be refreshed, the refresh operation cannotbe performed, and an exception will be thrown out.

upsert

batchSize integer Optional. When processing large amounts of data, the activity willinternally invoke several SOAP calls. This field is used to set thebatch size for the number of records created or updated through anSOAP call.

The value is set between 1 and 200. If the input value equals -1, itwill be set to the default value. If the input value is greater than 200,it will be set to 200. If the input value is less than 1 (except -1), it willbe set to 1.

The default value is 200.

47

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 48: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Input ItemsDataType Description

upsertSObjects Each upsertSObjects includes the following elements:

● externalIDFieldName (A string value): Required. This fieldcontains the name of the field defined as a key field in the sObject.

● sObjects (A complex value): Required. An array of one or moreobjects to create or update. This sObject can be converted to thespecified type defined in the metadata schema, for example, theSalesforce_metadata, getting from the Salesforce.com server.

You do not need to specify the Id field in the sObject.

To create a new relationship between a newly createdsObject (sObject A) and an existing sObject (sObject B),where the sObject A schema includes the sObject Bschema, set the value of the key field in sObject B whileupserting sObject A. If you modify the values of thefields in sObject B within the sObject A schema, theoriginal sObject B will not be modified. The key field insObject B within the sObject A schema is only used tolink sObject A with the original sObject B.

upsert_Optional (All fields in this section are optional.)

_configData Each _configData includes the following element:

● timeout (A int value): The timeout value specifies the number ofmilliseconds an internal API call waits before the data returns.

The default value is 15000 milliseconds.

You can also change the default timeout value by setting theproperties. See Default Timeout Value Setting for detailedinformation.

48

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 49: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Input ItemsDataType Description

headers Each headers includes the following elements:

● CallOptions

— client (A string value): A string that identifies a particularclient.

— defaultNamespace (A string value): A string that identifies adeveloper namespace prefix. Use this field to resolve fieldnames in managed packages without having to fully specifythe fieldName everywhere.

● AssignmentRuleHeader

— assignmentRuleId (A string value): The ID of a specificassignment rule to run for the Case or Lead. It can be aninactive assignment rule. The ID can be retrieved by queryingAssignmentRule object. If specified, do not specifyuseDefaultRule. This element is ignored for Accounts,because all territory assignment rules are applied.

Case and Lead are two predefined salesforce.com schematypes. For more information about these two types, seeForce.com Web Service API Developer's Guide.

— useDefaultRule (A boolean value): If true for a Case orLead, uses the default (active) assignment rule for a Case orLead. If specified, do not specify an assignmentRuleId andtype an empty string in the assignmentRuleId field. If truefor an Account, all territory assignment rules are applied, andif false, no territory assignment rules are applied.

● MruHeader

— updateMru (A boolean value): Specify whether to update thelist of most recently used items (true) or not (false), whichis on the sidebar in the salesforce.com user interface.

● AllowFieldTruncationHeader

— allowFieldTruncation (A boolean value): Specify whetherto truncate field values that are too long (true) or not(false).

Default value is false: no change in behavior. If a string ortext area value is too large, the operation fails and the faultcode STRING_TOO_LONG is returned.

● DisableFeedTrackingHeader

— disableFeedTracking (A boolean value): IfdisableFeedTracking is set to true, the changes made inthe current call are not tracked in feeds.

The default is false.

49

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 50: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Input ItemsDataType Description

● StreamingEnabledHeader

— streamingEnabled (A boolean value): Specify whether wantto receive streaming notifications of changes to the data.

● AllOrNoneHeader

— allOrNone (A boolean value): If allOrNone is set to true,any failed records in a call cause all changes for the call to berolled back. Record changes are not committed unless allrecords are processed successfully.

The default value is false. Some records can be processedsuccessfully while others are marked as failed in the callresults.

When processing large amounts of data, theactivity internally invokes several SOAP calls.However, this AllOrNoneHeader only applys toeach internal SOAP call. If allOrNone is set totrue, the records in each internal SOAP call will allsucceed or be rolled back.

● DebuggingHeader

— debugLevel (A string value): Specify the level of detail in thedebug header. See Apex Developer’s Guide for detailedinformation.

The response of the debugging information can be found inthe SOAP message log. You may need to enable the debugrole log for tracing the debugging errors.

● PackageVersionHeader

Each PackageVersion includes the following nodes:

● majorNumber (A int value): The major version number of apackage version.

A package version is denoted by majorNumber.minorNumber,for example 2.1.

● minorNumber (A int value): The minor version number of apackage version.

A package version is denoted by majorNumber.minorNumber,for example 2.1.

● namespace (A sting value): The unique namespace of themanaged package.

50

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 51: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Input ItemsDataType Description

● EmailHeader

— triggerAutoResponseEmail (A boolean value): Specifywhether to trigger auto-response rules (true) or not (false),for leads and cases. In the salesforce.com user interface, thisemail can be automatically triggered by a number of events,for example, resetting an user password.

— triggerOtherEmail (A boolean value): Specify whether totrigger email outside the organization (true) or not (false).In the salesforce.com user interface, this email can beautomatically triggered by creating, editing, or deleting acontact for a case.

— triggerUserEmail (A boolean value): Specifies whether totrigger email that is sent to users in the organization (true) ornot (false). In the Salesforce user interface, this email can beautomatically triggered by a number of events; resetting apassword, creating a new user, adding comments to a case, orcreating or modifying a task.

● OwnerChangeOptions

— transferAttachments (A boolean value): IftransferAttachments is set to true, the record’s notes,attachments, and Google Docs are transferred to the newrecord owner. If false, the original record owner retainsownership.

The default is true.

— transferOpenActivities (A boolean value): IftransferOpenActivities is set to true, the record’s openactivities are transferred to the new record owner. If false,the original record owner retains ownership.

The default is true.

Output

The Output tab contains the following fields.

Output ItemDataType Description

upsertAllResponse

result created boolean Indicate whether the record is created (true) or updated (false).

errors complex If errors occurred during the activity, an array of error objects with theerror code and description, is returned.

id string The ID of an sObject that you attempt to create.

51

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 52: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Output ItemDataType Description

success boolean Indicate whether the Salesforce Create All activity has succeeded(true) or not (false).

Fault

The Fault tab lists the possible exceptions thrown by this activity.

Fault Thrown when

SalesforceExecuteSOAPMethodException

An error occurred when calling a SOAP method.

For example, the wrong value is set in the Input fields or thesalesforce session has timed out.

SalesforceLoginException An error occurred when logging on to the salesforce.comserver.

SalesforceConnectionNotFoundException

An error occurred when the external session Id is not used andthe salesforce connection is not configured correctly.

Salesforce Outbound Message ListenerThe SalesforceOutboundMessageListener process starter creates a process instance for incomingsalesforce outbound messages. Salesforce Outbound Message is part of the workflow rule functionalityin salesforce. It uses the notifications call to send SOAP messages over HTTP(S) to a designatedendpoint when triggered by a workflow rule.

General

The General tab contains the following fields.

FieldModuleProperty? Description

Name No The name for the activity in the process definition.

HttpConnection

Yes Path to the http connection resource containing the connectioninformation of the Salesforce Outbound Message Listener activity.

Click the Choose/Create Default Resource icon to select a usableconnection for the activity.

WSDL No File path to the Outbound Message WSDL file.

Click the icon to open the Select Salesforce WSDL window.Select one WSDL related to the current Salesforce Outbound MessageListener to apply to your activity.

52

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 53: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

If the Salesforce Outbound Message Listener activity is used in a process, the Endpoint URL of theprocess is http://host:port/URI, in which host and port are the values in the Host and Port fields ofthe HTTP Connector shared resource and URI is the value in the WSDL file. For example, the Host andPort fields in the HTTP Connector shared resource are 192.168.0.1 and 8443, and the Endpoint URLin the WSDL file is http://192.168.66.99:8090/outbound/test, so the real Endpoint URL thatplug-in uses to start the listener is http://192.168.0.1:8443/outbound/test.

Description

Provide a short description for the activity.

Advanced

The Advanced tab contains the following fields.

Field Description

SequenceKey

This field contains an XPath Expression that specifies the order in which processesrun. Process instances with sequencing keys that evaluate to the same value will beexecuted sequentially in the order the process instance is created.

Custom JobId

This field contains an XPath expression that specifies a custom ID for the processinstance.

Making Authenticated Web Service Callouts Using SSLCallouts is a useful feature that allows you to connect to other web services and exchange data. You canuse it to notify other services of changes to data in your environment or retrieve data from a remotesystem.

Callouts can be secured using SSL, in which both the client and the server present certificates to provetheir identities to each other.

The following describes two SSL authentications:

● One-way SSL Authentication● Two-way SSL Authentication

One-way SSL Authentication

Only the identity of the server is represented by digital certificates in one-way SSL.

For outbound messaging, one-way SSL is enabled by default when you configure HTTPS insalesforce.com site. Once you have defined an outbound message, you need to configure the one-waySSL authentication:

Procedure

1. Log on to the Salesforce.com, select Build > Create > Workflow & Approvals > OutboundMessages from the left panel.All outbound messages are displayed in the All Outbound Messages panel.

2. Click the one you want to use.The Workflow Outbound Message Detail panel is displayed.

3. Right click Click for WSDL, next select Save Link As.4. Type a file name or accept the default name to save the .wsdl file to your local directory.

5. Import the .wsdl file into your project.

53

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 54: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

6. Configure the Keystore Provider.

7. Configure the SSL Server.

8. Specify HTTP Connector and select the Confidentiality check box in the Security panel.

See TIBCO ActiveMatrix BusinessWorks Bindings and Palettes Reference on how to configureKeystore Provider, SSL Server and HTTP Connector.

9. Click and configure the Salesforce Outbound Message Listener starter in the Process editor:

a) Click the Choose/Create Default Resource icon to select the http connection you justcreated. Click OK.

b) Click the icon beside the WSDL field to select the .wsdl file imported. Click OK.

10. Click File > Save.

Two-way SSL Authentication

The identities of the client and server are represented by digital certificates in two-way SSL.

Currently, Salesforce only supports both self-signed and CA-signed certificates. To configure the two-way SSL authentication, perform the following steps:

Procedure

1. Log on to the Salesforce.com, select Build > Create > Workflow & Approvals > OutboundMessages from the left panel.All outband messages are displayed in the All Outband Messages panel.

2. Click the one you want to use.The Workflow Outbound Message Detail panel is displayed.

3. Right-click Click for WSDL, next select Save Link As.

4. Type a file name or accept the default name to save the .wsdl file to your local directory.

5. Copy the .wsdl file into your project.

6. Configure the Keystore Provider.

7. Configure the SSL Server.a) Select the Enable Mutual Authentication check box in the Basic SSL Server Configuration

panel.b) Select required from the Clicnt Auth Type list.

8. Specify HTTP Connector and select the Confidentiality check box in the Security panel.

See TIBCO ActiveMatrix BusinessWorks Bindings and Palettes Reference on how to configureKeystore Provider, SSL Server and HTTP Connector.

9. Click and configure the Salesforce Outbound Message Listener starter in the Process editor:

a) Click the Choose/Create Default Resource icon to select the http connection you justcreated. Click OK.

b) Click the icon beside the WSDL field to select the .wsdl file imported. Click OK.

10. Click File > Save.

54

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 55: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Samples

The samples helps you understand how TIBCO ActiveMatrix BusinessWorks Plug-in forSalesforce.com operates.

TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce.com packages four sample projects withinthe installer. The following sample projects are located in the TIBCO_HOME\bw\palettes\salesforce\6.0\samples directory.

To run the following sample projects smoothly, apply for a new developer edition account ofsalesforce.com.

● GeneralSample Project● RelationshipQuery Project● ERPIntegration Project● WorkWithInvokerActivity Project

Working With GeneralSample ProjectThis GeneralSample project gives you a quick overview of how to use TIBCO Active matrixBusinessWorks Plug-in for Salesforce.com.

Procedure

1. Start TIBCO Business Studio.

2. Click File > Import.

3. In the Import window, expand the General folder and select the Existing Studio Projects intoWorkspace item. Click Next.

4. Click Browse next to the Select archive file field to locate the samples. Click Finish.The sample project is located in the TIBCO_HOME\bw\palettes\salesforce\6.0\samples\GeneralSample directory.

In this project, two processes are created:

● General Process

This process is used to show the general configurations of salesforce activities. Most salesforceactivities are included, such as Salesforce Create All, Salesforce Query All, Salesforce RetrieveAll, and so on.

● RemoveSampleData Process

After running the General process, you may run this process to remove all generated data fromyour salesforce.com database.

5. Change the values in the User Name and Password fields in the Connection Configuration panelof the Salesforce Connection shared resource.

6. Test and run the processes in the project.

General ProcessThis General process is used to show the general configurations of salesforce activities.

The process is designed with the following activities:

55

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 56: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

The following table lists and explains the activities in the process.

Activity Description

Salesforce Create All Salesforce Create All activity.

Creates five sample contact sObjects in your Salesforce.com database.

Salesforce Query All Salesforce Query All activity.

Executes a query to get the five sample contact sObjects created bythe Salesforce Create All activity.

Salesforce Retrieve All Salesforce Retrieve All activity.

Retrieves the five sample contact sObjects created by the SalesforceCreate All activity.

Salesforce Update All Salesforce Update All activity.

Updates the information of the five sample contact sObjects.

Salesforce Get Session Salesforce Get Session activity.

Gets a session from the session pool that is related to the specifiedSalesforce Connection. This session will be used in the followingSalesforce Upsert All activity.

Salesforce Upsert All Salesforce Upsert All activity.

Upserts the information of the five sample contact sObjects.

When doing this activity, since ID is defined as the external ID, thefive sample contact sObjects are updated.

56

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 57: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Activity Description

Salesforce Delete All Salesforce Delete All activity.

Deletes all sample data from your Salesforce database.

Working With RelationshipQuery ProjectThe RelationshipQuery project shows how to do relationship queries in TIBCO BusinessWorksSalesforce.com Plug-in. Two kinds of relationship queries are defined by Salesforce.com: parent-to-children and child-to-parent.

Procedure

1. Start TIBCO Business Studio.

2. Click File > Import.

3. In the Import window, expand the General folder and select the Existing Studio Projects intoWorkspace item. Click Next.

4. Click Browse next to the Select archive file field to locate the samples. Click Finish.The sample project is located in the TIBCO_HOME\bw\palettes\salesforce\6.0\samples\RelationshipQuerySample directory.

In this project, the following four processes are created:

● CreateData Process

Before running the childToParent process or the parentToChildren process, run this process tocreate sample sObjects with the relationship in your salesforce.com database.

● RemoveData Process

After running the childToParent process or the parentToChildren process, you may run thisprocess to remove all the sample data from your salesforce.com database.

● ChildToParent Process

This process shows how to do a child-to-parent relationship query and how to map the data toother activities.

See Relationship Query for more details.● ParentToChildren Process

This process shows how to do a parent-to-children relationship query and how to map the datato other activities.

See Relationship Query for more details.

5. Change the values in the User Name and Password fields in the Connection Configuration panelof the Salesforce Connection shared resource.

6. Test and run the processes in the project.

If some fields cannot be accessed when running the project, you may need to change theField Accessibility configuration in the Salesforce.com database.

ChildToParent ProcessThis ChildToParent process shows how to do a child-to-parent relationship query and how to map thedata to other activities.

The process is designed with the following activities:

57

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 58: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

The following table lists and explains the fields in the activities in the process.

Activity Description

Salesforce Query All Salesforce Query All activity.

Processes the child-to-parent relationship query.

The following statement is entered in the queryString field.

Select Id, FirstName, LastName, Account.Id,

Account.Name, Account.BillingStreet from Contact where

Account.Name='TIB_Sample_TIB' and

Account.BillingStreet='TIB_Sample_TIB'

Mapper Receives the returned data from the Salesforce Query activity, andthen maps the data values.

For detailed information, see Mapping Data in the ChildToParentProcess.

Mapping Data in the ChildToParent Process

Mapper is a general activity defined in TIBCO BusinessWorks. It is used as the data consumer of theSalesforce Query All activity.

To map data values in the ChildToParent process:

Procedure

1. Click the Mapper activity in the ChildToParent process, the Mapper panel is displayed.

In the Input tab, you can see the available data source and the activity’s expected input. The datasource and activity input are represented as schema trees.

58

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 59: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

2. Coerce the records node that is received from the Salesforce Query All activity into the data type ofthe Contact sObject.

3. Map the coerced records element to the Contacts element in the activity input area.

4. Map other elements to the corresponding elements in the activity input area, as shown in thefollowing figure.

Result

Map data in the ChildToParent process:

ParentToChildren ProcessThis ParentToChildren process shows how to do a parent-to-children relationship query and how tomap the data to other activities.

The process is designed with the following activities:

59

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 60: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

The following table lists and explains the fields in the activities in the process.

Activity Description

Salesforce Query All Salesforce Query All activity.

Processes the parent-to-child relationship query.

The following statement is entered in the queryString field.

Select Id, Name,BillingStreet, (select Id,

FirstName,LastName from Contacts) from Account a where

a.Name='TIB_Sample_TIB' and

a.BillingStreet='TIB_Sample_TIB’

Mapper Receives the returned data from the Salesforce Query All activity, andthen maps the data values.

For detailed information, see Mapping Data in the ParentToChildrenProcess.

Mapping Data in the ParentToChildren Process

Mapper is a general activity defined in TIBCO BusinessWorks. It is used as the data consumer of theSalesforce Query activity.

To map data values in the ParentToChildren process:

Procedure

1. Click the Mapper activity in the ParentToChildren process, the Mapper panel is displayed.In the Input tab, you can see the available data source and the activity’s expected input. The datasource and activity input are represented as schema trees.

60

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 61: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

2. Coerce the records element that is received from the Salesforce Query activity into the data type ofthe Account sObject and then map the coerced records element to the Account element.

3. Map other elements to the corresponding elements.If you need to map a complex element under the coerced element, you need to manually set XPathin the corresponding input field, as shown in the following figure. The XPath must be matched withthe corresponding schema returned from the query process at runtime.

Working With ERPIntegration ProjectThe ERPIntegration project shows how to use a TIBCO BusinessWorks process to manipulate theBusinessWorks Salesforce.com Plug-in service.

To access the sample application:

Procedure

1. Start TIBCO Business Studio.

2. Click File > Import.

3. In the Import window, expand the General folder and select the Existing Studio Projects intoWorkspace item. Click Next.

4. Click Browse next to the Select archive file field to locate the samples. Click Finish.The sample project is located in the TIBCO_HOME\bw\palettes\salesforce\6.0\samples\ERPIntegration directory.

5. Log on the Salesforce.com website using the new account information. Make sure that there is atleast one product that has been added to the price book, and this product needs to be added as theline item for an Opportunity whose stage is Close Won.

6. Add a customized field named ErpAccountId in the Account Object on the Salesforce.com server.

7. If you want to run the SyncOpporunity_OutboundListener process in TIBCO Business Studio,create an Outbound Message on the Salesforce.com website.Make sure that the Endpoint URI is the same as the one defined in the WSDL file of the OutboundListener activity. For example, the Endpoint URI defined in the WSDL file is: /OpportunityToOrder_UsingOutboundMsgListener/

SyncOpportunityProcess_UsingOutboundMsgListener, so in the Salesoforce.com website, thewhole URL address is http://host:port/OpportunityToOrder_UsingOutboundMsgListener/SyncOpportunityProcess_UsingOutboundMsgListener.

61

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 62: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

8. Generate an Outbound Message WSDL and configure the workflow rule to trigger the OutboundMessage you just created.

9. Use the CreateErpObjects.sql file to build Oracle database tables and other necessary objects.CreateErpObject.sql is available from the TIBCO_HOME\bw\palettes\salesforce\6.0\samples\ERPIntegration directory.

For running this sample application, a new user of Salesforce.com creates at least oneproduct as the line item for an Opportunity with the state of Close Won.

10. Change module properties if necessary in TIBCO Business Studio.

● BW_LastPollingTime_File: The location of the file, in which the last polling time is recorded.● BW_OpportunityStart_Time: The time that the opportunities start to record.

All opportunities occur before this time is ignored.

11. Configure the Salesforce Connection, the JDBC Connection and HTTP Connector.

12. Configure the JDBC driver for the JDBC activities both at design time and runtime.See TIBCO ActiveMatrix BusinessWorks Bindings and Palettes Reference for more details.

13. Test and run the processes in the sample application.

Customer MasterThe company’s sales department uses Salesforce.com CRM to manage the sales process and to monitorthe pipeline. Sales users create new Account records to represent prospects and Opportunity records totrack deals in progress. The Account data entered by sales users is not accurate enough to satisfy therequirements for the back office fulfillment and finance departments, whereas the Oracle ERP data istightly controlled and well maintained.

The Customer Master Integration requires implementation of two unidirectional processes on theTIBCO BusinessWorks platform.

● SyncAccountProcess● UpdateAccountProcess

SyncAccountProcess Process

The SyncAccountProcess process copies all Accounts ready for promotion from the Salesforce.comserver to the ERP system, writes back the ERP Account ID primary key field to the ErpAccountId fieldthat has been created in the Salesforce.com Account, and changes the Account record type in theSalesforce.com server to the read-only Integrated Account type. This process is invoked from within theOpportunity to Order process as needed.

The process is designed with the following activities:

62

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 63: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

The following table lists and explains the activities in the process.

Activity Description

Salesforce RetrieveAccount

Salesforce Retrieve All activity.

Gets a set of Salesforce.com Account sObject by using the given sObjectIds.

Erp Check Account Checks whether there is an Account in the ERP_ACCT table with the samename as the getting Account from the Salesforce.com server.

Erp Update Acct Updates the ERP_ACCT table while an Account is found in the activitynamed Erp Check Account.

Erp Update Shipping Updates the shipping information in the ERP_ADDR table after executingthe activity named Erp Update Acct.

Erp Update Billing Updates the billing information in the ERP_ADDR table after executing theactivity named Erp Update Acct.

Erp Insert Acct Creates an Account in the ERP_ACCT table if an account is not found inthe activity named Erp Check Account.

Erp Get AcctId Gets the Account ID from the ERP_ACCT table after executing the activitynamed Erp Insert Acct.

Erp Insert Shipping Creates the shipping information in the ERP_ADDR table when needed.

Erp Insert Billing Creates the billing information in the ERP_ADDR table when needed.

Salesforce Update All Salesforce Update All activity.

Updates the ACCT_ID field value of the newly created records in theERP_ACCT table to the ErpAccountId field in the Salesforce.com Account.

63

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 64: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

UpdateAccountProcess Process

The UpdateAccountProcess process monitors Accounts in the ERP system for changes and updates theSalesforce.com Account accordingly.

The process is designed with the following activities:

The following table lists and explains the activities in the process.

Activity Description

Erp-Query-Acct Gets ERP Accounts from the ERP_ACCT and ERP_ADDR tables.

Group Repeats activities in the group.

Salesforce QueryAccount

Checks whether the ERP Account exists in the Salesforce.com Account.

Salesforce CreateAccount

If the ERP Account does not exist in the Salesforce.com server, thisactivity will create a new Account in it.

Salesforce UpdateAccount

If the ERP Account exists in the Salesforce.com, this activity will updatethe Account in it.

Opportunity To OrderDuring the selling process, a salesperson tracks the status of a deal as it moves through the salespipeline using the Salesforce.com Opportunity object. When a deal closes, a new Order must be createdin the ERP system to initiate the invoicing and shipment processes. The current manual entry processshould be replaced by an automated data transfer from the Salsforce.com into the ERP system.

It concludes the following processes:

● OpportunityToOrder_Polling● OpportunityToOrder_UsingOutbound

OpportunityToOrder_Polling

When a deal closes successfully, the owner of the Salesforce.com Opportunity representing that dealchanges its status to Closed Won. The Opportunity To Order process requires a process to be

64

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 65: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

implemented on the Business works platform that will look for new closed opportunities on a regularbasis and create a new order in the ERP system each time one is found. If the Order’s Account is not inthe ERP system, the Account record needs to be migrated from the Salesforce.com CRM as well,according to the Customer Master Process.

The process named SyncOpportunity_Polling takes the above task in hand. Another two processesnamed GetLastPollingTime and SetLastPollingTime are called by the SyncOpportunity_Pollingprocess.

GetLastPollingTime Process

The GetLastPollingTime process is called by the SyncOpportunity_Polling process.

The process is designed with the following activities:

The following table lists and explains the activities in the process.

Activity Description

Read File Reads the file, in which the polling time is recorded.

Create File Creates a file to record the polling time if it does not exist before.

Write File Adds a lock sign to the file, in which the polling time is recorded.Adds a locksign to the file, in which the polling time is recorded.

SetLastPollingTime Process

The SetLastPollingTime process is called by the SyncOpportunity_Polling process.

The process is designed with the following activities:

65

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 66: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

The following table lists and explains the activities in the process.

Activity Description

Write File Removes the lock sign from the file.

Writes the current polling time in the file.

SyncOpportunity_Polling Process

The SyncOpportunity_Polling process takes the above task in hand.

The process is designed with the following activities:

The following table lists and explains the activities in the process.

Activity Description

GetLastPollingTime Gets the last polling time and locks this process.

66

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 67: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Activity Description

QueryOpportunityHistory

Salesforce Query All activity.

Gets the results of the opportunity history when the followingconditions are met:OpportunityHistory.State = ’Close Won’OpportunityHistory.CreateDate > the last polling time

QueryOpportunity Salesforce Query All activity.

Gets results of the opportunities according to the following conditions:Opportunity.Id in OpportunityHistory(Queried

before).OpportunityId Opportunity.HasLineitem = true

QueryOpportunityLineItem

Salesforce Query All activity.

Gets results of the opportunity line items.

Transition Control Group

ErpUpdateOrder Updates the ERP_ORDER table in the ERP system.

ErpUpdateOrderLine Updates the ERP_ORDERLINE table in the ERP system.

OpportunityToOrder_UsingOutbound

This OpportunityToOrder_UsingOutbound process uses the Outbound Message Listener to completethe same task as the task described in the OpportunityToOrder_Polling section.

The process named SyncOpportunity_OutboundListener takes the task in hand.

SyncOpportunity_OutboundListener Process

The SyncOpportunity_OutboundListener process takes the task in hand.

The process is designed with the following activities:

67

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 68: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Activity Description

Salesforce OutboundMessage Listener

Sets an Outbound Message Listener.

You may use it to create a new job for processing the coming outboundmessage.

QueryOpportunityLineItems

Salesforce Query All activity.

Gets results of the opportunity line items.

Transition Control Group

ErpUpdateOrder Updates the ERP_ORDER table in the ERP system.

ErpUpdateOrderLine Updates the ERP_ORDERLINE table in the ERP system.

Working With WorkWithInvokerActivity ProjectThis WorkWithInvokerActivity project shows how to work with SOAP activity in TIBCOBusinessWorks process to manipulate the Salesforce.com Plug-in service.

To access the sample application:

Procedure

1. Start TIBCO Business Studio.

2. Click File > Import.

3. In the Import window, expand the General folder and select the Existing Studio Projects intoWorkspace item. Click Next.

4. Click Browse next to the Select archive file field to locate the samples. Click Finish.The sample project is located in the TIBCO_HOME\bw\palettes\salesforce\6.0\samples\WorkWithInvokerActivity directory.

5. Log on the Salesforce.com website using the new account information. Make sure that at least oneContact record with the phone number (4159017000) used in the example process has been created.

6. Change the values in the User Name and Password fields in the Connection Configuration panel ofthe Salesforce Connection shared resource.

7. Test and run the processes in the sample application.

Workwithbwinvoker ProcessThe Workwithbwinvoker process in the project updates the phone number on the specified Contactrecords. It searches the Contact records with a specified phone number from the Salesforce.com serverby using the Invoke activity, and then updates those Contact records with the new phone number.

The process is designed with the following activities:

68

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 69: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

The following table lists and explains the activities in the process.

Activity Description

SalesforceGetSession Gets an existing session from the session pool that is related to thespecified Salesforce Connection.

SetContext Set the context parameters for the Invoke activity.

SearchForTargetContact Searches the Contract records with the specified searchString. Thissearch operation has been defined in the Partner WSDL used in thissample project.

SalesforceUpdateAll Salesforce Update All activity.

Updates the specified Contact records with the new phone number.

69

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 70: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Miscellaneous

Miscellaneous describes the property settings, the time zone construction and other miscellaneoustopics in TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce.com.

It includes the following sections:

● Properties Settings● Time Zone Information● Processing 16 Digits Numeric Data

Properties SettingsThe properties settings explains the property settings you may need to configure for the product.

It includes the following sections:

● Log Status Settings● Retrying Function Setting● Default Timeout Value Setting● Proxy Settings

Log Status SettingsLogs are used to trace and troubleshoot exceptions. The log status settings allow users to set up loglevels, specify log file name, and the location of the log file.

Before running TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce.com, you need to write thefollowing lines in the logback.xml file located in the TIBCO_HOME\bw\6.0\config\design\logbackdirectory to set the log status:<logger name="com.tibco.bw.palette.salesforce.runtime"> <level value="DEBUG"/></logger>

The level tag defines the log level. The value includes TRACE, DEBUG, INFO, WARN, and ERROR.

After adding the above lines into the logback.xml file, the log status of all activities is displayed in theConsole view. If you want to display a specified activity log status, select the following correspondingline:com.tibco.bw.palette.salesforce.runtime.SalesforceQueryActivitycom.tibco.bw.palette.salesforce.runtime.SalesforceCreateActivitycom.tibco.bw.palette.salesforce.runtime.SalesforceUpdateActivitycom.tibco.bw.palette.salesforce.runtime.SalesforceRetrieveActivitycom.tibco.bw.palette.salesforce.runtime.SalesforceUpsertActivitycom.tibco.bw.palette.salesforce.runtime.SalesforceDeleteActivitycom.tibco.bw.palette.salesforce.runtime.SalesforceGetSessionActivitycom.tibco.bw.palette.salesforce.runtime.eventsource.SalesforceOutboundListenerEventSource

For example, using the following codelines to display the log status of the Salesforce Query All activity:<logger name="com.tibco.bw.palette.salesforce.runtime.SalesforceQueryActivity"><level value="DEBUG"/></logger>

TRACE, DEBUG, INFO, WARN, and ERROR are five general properties in TIBCO ActiveMatrixBusinessWorks. They are not added in the default logback.xml configuration file. If you want tochange the log levels, you need to manually update them in the file.

See Managing Plug-in Logs for more details.

70

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 71: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Retrying Function SettingThe retrying function is triggered when you retry connecting to the salesforce.com server with thesalesforce configuration resource in TIBCO ActiveMatrix BusinessWorks Plug-in for salesforce.com.The retrying function is also triggered when you retry the actions in the Salesforce activities.

When you retry actions in the salesforce activity for deployment, you need to write the followingproperty lines in the TIBCO_HOME\bw\domains\defaultdomain\appnodes\defaultappspace\defaultappnode\config file:com.tibco.plugin.salesforce.retry.rotationPolicy=2,5,20com.tibco.plugin.salesforce.retry.rotationNumber=1

Property Description

com.tibco.plugin.salesforce.retry.r

otationPolicy

This property is used to set time interval between eachretrying operation. It is applied on both SalesforceActivities and Salesforce Get Session activity.

The default value in seconds is 2, 5, 20. If using thisdefault value in our process, retrying operation will betriggered three times. The activity will wait for 2seconds before retrying for the first time, 5 secondsbefore retrying for the second time, and 20 secondsbefore retrying for the third time..

com.tibco.plugin.salesforce.retry.r

otationNumber

The property is used to set how many times theprocess defined in thecom.tibco.plugin.salesforce.retry.rotationPo

licy property will be executed.

When you retry actions in the salesforce activity in TIBCO Business Studio, you need to write thefollowing property line to the place described by the following figure: -Dcom.tibco.plugin.salesforce.retry.rotationPolicy=2,5,20 -

Dcom.tibco.plugin.salesforce.retry.rotationNumber=1

71

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 72: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Default Timeout Value SettingThe timeout value specifies the number of milliseconds an internal API call waits before it isterminated.

When configuring the salesforce activity used in a process, you need to set the timeout value for theactivity. For example, for a Salesforce Query All activity, you need to set the timeout value as shown inthe following figure:

To conveniently configure the timeout value for the Salesforce activities running in TIBCO BusinessStudio, you can write the property line -Dcom.tibco.plugin.salesforce.invoke.timeout=15000into the place described by the following figure:

72

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 73: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

When you configure the timeout value in the salesforce activity for deployment, you need to write theproperty line com.tibco.plugin.salesforce.invoke.timeout=15000 into the TIBCO_HOME\bw\domains\defaultdomain\appnodes\defaultappspace\defaultappnode\config file.

Property Description

com.tibco.plugin.salesforce.

invoke.timeout

This property is used to set the default timeout value forsalesforce activities.

The default value in milliseconds is 15000.

You may change the timeout value in the above line. This value will be the default timeout value foreach salesforce activity.

Proxy SettingsThe Plug-in HTTP proxy property is provided in TIBCO ActiveMatrix BusinessWorks Plug-in forSalesforce.com.

When using Proxy, you need to operate proxy settings.

To conveniently configure Proxy in TIBCO Business Studio, you can write the property line -Dcom.tibco.plugin.salesforce.proxyHost=192.168.54.11 -

Dcom.tibco.plugin.salesforce.proxyPort=89 into the place described by the following figure:

73

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 74: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

When you configure configure Proxy for deployment, you need to write the property linescom.tibco.plugin.salesforce.proxyHost=192.168.54.11com.tibco.plugin.salesforce.proxyPort=89

into the TIBCO_HOME\bw\domains\defaultdomain\appnodes\defaultappspace\defaultappnode\config file.

Property Description

com.tibco.plugin.salesforce.pr

oxyHost

Required. The proxy host name or its IP address.

com.tibco.plugin.salesforce.pr

oxyPort

Required. The port on which the proxy service is listening.

com.tibco.plugin.salesforce.pr

oxyUser

Optional. The username for logging on to the proxy server.

com.tibco.plugin.salesforce.pr

oxyPwd

Optional. The password for logging on to the proxy server.

com.tibco.plugin.salesforce.pr

oxyTimeout

Optional. The timeout value in minutes for an HTTP call.

This property is to help avoid long wait times whenattempting to retry through a proxy.

74

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 75: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Time Zone InformationTIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce.com contains three data types for definingthe date or time data: date, dateTime, and time. Time zone information can be added to the dateTimeand time data types.

DataType Data Format Example Description

date yyyy-MM-dd 2009-01-31 Greenwich Mean Time (GMT) date.

If you add the time zoneinformation in the date data,TIBCO ActiveMatrixBusinessWorks Plug-in forSalesforce.com will accept it,but the time zone portioncannot be processed.

For example, if the date datais 2009-01-31+08:00, it will betruncated to 2009-01-31.

dateTime

yyyy-MM-ddTHH:mm:ss

2009-01-31T16:16:16 Greenwich Mean Time (GMT) datetime.

yyyy-MM-ddTHH:mm:ssZ

2009-01-31T16:16:16Z

yyyy-MM-ddTHH:mm:ss+hh:mm

2009-01-31T16:16:16+08:00

The datetime data with the specifiedtime zone.

yyyy-MM-ddTHH:mm:ss-hh:mm

2009-01-31T16:16:16-08:00

time HH:mm:ss 16:16:16 Greenwich Mean Time (GMT) time.

HH:mm:ssZ 16:16:16Z

HH:mm:ss+hh:mm 16:16:16+08:00 The time data with the specified timezone.

HH:mm:ss-hh:mm 16:16:16-08:00

Processing 16 Digits Numeric DataYou can input numeric data of a length greater than 16 digits in the Salesforce.com database.

For an application that is written in the JAVA language, data with a length greater than 16 digits isdefined as the double type and its precision will be changed in the application.

75

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 76: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce.com is implemented using the JAVAlanguage. When data with a length greater than 16 digits is processed between the plug-in and theSalesforce.com database, you may encounter the following situations:

● If the datum are retrieved from the Salesforce.com database, their precision will be rounded to 16digits in the plug-in.

Affected Salesforce activities are Salesforce Query All, Salesforce Retrieve All, and SalesforceOutbound Message Listener.

● If the datum need to be sent to the Salesforce.com database, they will be rounded to the 16-digitprecision and then sent out.

Affected Salesforce activities are Salesforce Create All, Salesforce Update All, and Salesforce UpsertAll.

76

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 77: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Troubleshooting

When you encounter problems with the project, ensure that you have cleaned up the project.

If errors occur when you run a process in TIBCO Business Studio, you can do a cleaning first. Cleaningdeletes all the old files and reorganizes the project.

Procedure

1. Right-click the project in the Project Explorer view and click Refresh.

2. Select Project > Clean to start the cleaning.

77

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 78: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Managing Plug-in Logs

Logs are used to trace and troubleshoot exceptions. The plug-in allows users to set up log levels andexport logs to a file by modifying the logback.xml file.

TIBCO Business Studio provides a built-in debugger, which allows users to debug a project. Whenstarting debugging or running a project, the logs are displayed in the Console view. You can set up thelog level to define the log amount. To set up the console log level, see Setting Up Log Level.

The plug-in also allows users to export logs of the defined log levels to a file. To export logs to a file, see Exporting Logs.

Setting Up Log LevelWhen you run a process in TIBCO Business Studio, the runtime logs are displayed in the Console view.You can set up the log level before running a process.

Procedure

1. Navigate to the TIBCO_HOME\bw\6.0\config\design\logback directory and open thelogback.xml file.

When deploying the application in TIBCO Enterprise Administrator, you need to navigateto the TIBCO_HOME\bw\domains\defaultdomain\appnodes\defaultappspace\defaultappnode directory to find the logback.xml file.

2. Add the following node to specify the log level.<logger name="com.tibco.bw.palette.salesforce.runtime"> <level value="ERROR"/></logger>

The level tag defines the log level and the value can be TRACE, DEBUG, INFO, WARN and ERROR.

3. Save the file.

Exporting LogsYou can print the log to a file by adding FILE appender in the logback.xml file.

Procedure

1. Navigate to the TIBCO_HOME\bw\6.0\config\design\logback directory and open thelogback.xml file.

When deploying the application in TIBCO Enterprise Administrator, you need to navigateto the TIBCO_HOME\bw\domains\defaultdomain\appnodes\defaultappspace\defaultappnode directory to find the logback.xml file.

2. Add the following node to specify the file location.<appender name="FILE" class="ch.qos.logback.core.FileAppender"> <file>c:/bw6-salesforce.log</file> <encoder> <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36}-%msg%n</pattern> </encoder></appender>

The file tag defines the location to which the log is exported and the value is the absolute path ofthe file that is detailed to the file name.

78

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 79: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

3. Add the following node to specify the log level.<logger name="com.tibco.bw.palette.salesforce.runtime"> <appender-ref ref="FILE"/> <level value="ERROR"/></logger>

The level tag defines the log level and the value can be be TRACE, DEBUG, INFO, WARN and ERROR.

4. Save the file.

79

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 80: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Error Codes

The error codes in the Fault tab for each activity are listed with the corresponding description andresolution.

Error Code Role Category Description Resolution

TIBCO-BW-PALETTE-SALESFORCE-100001

traceRole BW-Plugin Request SOAP messagesent for operation {0}: \n{1}

None

TIBCO-BW-PALETTE-SALESFORCE-100002

traceRole BW-Plugin Response SOAP messagereceived for operation {0}:\n {1}

None

TIBCO-BW-PALETTE-SALESFORCE-200001

debugRole BW-Plugin {0} None

TIBCO-BW-PALETTE-SALESFORCE-200002

debugRole BW-Plugin The operation name hasbeen changed from [ {0} ]to [ {1} ].

None

TIBCO-BW-PALETTE-SALESFORCE-200003

debugRole BW-Plugin The following RequestSOAP Message will besent \n {0}

None

TIBCO-BW-PALETTE-SALESFORCE-300001

infoRole BW-Plugin The session for User {0}timed out. Old sessionIdis {1}.

None

TIBCO-BW-PALETTE-SALESFORCE-300002

infoRole BW-Plugin The session for User {0}was refreshed. OldsessionId is {1}.

None

TIBCO-BW-PALETTE-SALESFORCE-300003

infoRole BW-Plugin User {0} is logging in... None

TIBCO-BW-PALETTE-SALESFORCE-300004

infoRole BW-Plugin This is the {1} time(s)during the rotation {2} foruser {0} trying to login.

None

TIBCO-BW-PALETTE-SALESFORCE-300005

infoRole BW-Plugin Login failed for User {0}. None

TIBCO-BW-PALETTE-SALESFORCE-300006

infoRole BW-Plugin Login succeeded for User{0}. SessionId is [{1}]

None

TIBCO-BW-PALETTE-SALESFORCE-300007

infoRole BW-Plugin Get session for User {0}immediately. SessionId is[{1}]

None

80

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 81: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Error Code Role Category Description Resolution

TIBCO-BW-PALETTE-SALESFORCE-300008

infoRole BW-Plugin Mechanism Retry ofGetting Session makesUser {0} to sleep for {1}seconds.

None

TIBCO-BW-PALETTE-SALESFORCE-300009

infoRole BW-Plugin Request SOAP MessageSent \n {0}

None

TIBCO-BW-PALETTE-SALESFORCE-300010

infoRole BW-Plugin Response SOAP MessageReceived \n {0}

None

TIBCO-BW-PALETTE-SALESFORCE-300011

infoRole BW-Plugin Start to operate [ {0} ].Process Id: [ {1} ]. EngineName: [ {2} ].

None

TIBCO-BW-PALETTE-SALESFORCE-300012

infoRole BW-Plugin Renewed session in {0}activity.

None

TIBCO-BW-PALETTE-SALESFORCE-300013

infoRole BW-Plugin Ready to execute theoperation [ {0} ]...

None

TIBCO-BW-PALETTE-SALESFORCE-300014

infoRole BW-Plugin Ready to execute theoperation [ {0} ]. Therelated input count is {1}...

None

TIBCO-BW-PALETTE-SALESFORCE-300015

infoRole BW-Plugin Trying to refresh thesession...

None

TIBCO-BW-PALETTE-SALESFORCE-300016

infoRole BW-Plugin Refreshed the session. Beready to retry theoperation...

None

TIBCO-BW-PALETTE-SALESFORCE-300017

infoRole BW-Plugin Be ready to execute theoperation [Query], thequery string is [{0}]...

None

TIBCO-BW-PALETTE-SALESFORCE-300018

infoRole BW-Plugin Be ready to execute theoperation [QueryMore],the query locator is [{0}]...

None

TIBCO-BW-PALETTE-SALESFORCE-300019

infoRole BW-Plugin Processing in subsets.Batch size is [ {0} ], subsetsize is [ {1} ].

None

TIBCO-BW-PALETTE-SALESFORCE-300020

infoRole BW-Plugin The configured BatchSizeis [ {0} ].

None

81

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 82: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Error Code Role Category Description Resolution

TIBCO-BW-PALETTE-SALESFORCE-300021

infoRole BW-Plugin Be ready to process theoperation in subsets for[ {0} ] activity. Theconfigured BatchSize is[ {1} ], and the SubsetSizeis [ {2} ].

None

TIBCO-BW-PALETTE-SALESFORCE-300022

infoRole BW-Plugin The end of the [ {0} ]activity.

None

TIBCO-BW-PALETTE-SALESFORCE-300023

infoRole BW-Plugin Retry to execute the [ {0} ]operation in [ {1} ]seconds.

None

TIBCO-BW-PALETTE-SALESFORCE-300024

infoRole BW-Plugin This is the [ {0} ] time(s)during the rotation [ {1} ]for trying [ {2} ] operation.

None

TIBCO-BW-PALETTE-SALESFORCE-300025

infoRole BW-Plugin Processing in subsets isfinished for [ {0} ] activity.

None

TIBCO-BW-PALETTE-SALESFORCE-300026

infoRole BW-Plugin Be ready to process theoperation for [ {0} ]activity.

None

TIBCO-BW-PALETTE-SALESFORCE-300027

infoRole BW-Plugin Processing the operationis finished for [ {0} ]activity.

None

TIBCO-BW-PALETTE-SALESFORCE-300028

infoRole BW-Plugin Recoverable errorsreturned with the records.Please find theinformation of the relatedrecords in the log.

None

TIBCO-BW-PALETTE-SALESFORCE-300029

infoRole BW-Plugin -----------------------------------------------

None

TIBCO-BW-PALETTE-SALESFORCE-300030

infoRole BW-Plugin The results have beenreturned successfully.There is no error in thereturned data.

None

TIBCO-BW-PALETTE-SALESFORCE-300032

infoRole BW-Plugin End of executing a batchof the operation for [ {0} ]activity. [ {1} ] sObject(s)have been returned.

None

82

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 83: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Error Code Role Category Description Resolution

TIBCO-BW-PALETTE-SALESFORCE-300033

infoRole BW-Plugin Salesforce OutboundMessage Listener on [ {0} ]was initializedsuccessfully.

None

TIBCO-BW-PALETTE-SALESFORCE-300036

infoRole BW-Plugin Be ready to execute theoperation [QueryMore] ifany nested sObjectexists...

None

TIBCO-BW-PALETTE-SALESFORCE-300037

infoRole BW-Plugin End of executing a batchof the operation for thenested node [ {2} ] of [ {0} ]activity. [ {1} ] sObject(s)have been returned.

None

TIBCO-BW-PALETTE-SALESFORCE-300038

infoRole BW-Plugin The invocation timeoutvalue is {0} ms.

None

TIBCO-BW-PALETTE-SALESFORCE-300039

infoRole BW-Plugin The timeout value for thiscall are [ {0} ]milliseconds.

None

TIBCO-BW-PALETTE-SALESFORCE-300040

infoRole BW-Plugin The Salesforce OutboundMessage Listener receiveda message whoseServiceEntry URL is[ {0} ]. Sending an Ack:[ {1} ].

None

TIBCO-BW-PALETTE-SALESFORCE-300041

infoRole BW-Plugin The Salesforce OutboundMessage Listener receiveda message whoseServiceEntry URL is[ {0} ].

None

TIBCO-BW-PALETTE-SALESFORCE-300042

infoRole BW-Plugin Proxy setting in use, theproxyHost:[ {0} ],proxyPort:[ {1} ],proxyUser:[ {2} ],proxyPwd:[ {3} ],proxyTimeout(min):[ {4} ].

None

TIBCO-BW-PALETTE-SALESFORCE-300043

infoRole BW-Plugin End of executing a batchof operation for activity[ {0} ], but no sObjectreturned.

None

83

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 84: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Error Code Role Category Description Resolution

TIBCO-BW-PALETTE-SALESFORCE-300044

infoRole BW-Plugin End of executing a batchof operation for the node[ {1} ] of [ {0} ] activity, butno sObject is returned.

None

TIBCO-BW-PALETTE-SALESFORCE-400001

warnRole BW-Plugin The batchSize was notassigned with a validvalue. It will be given adefault value.

None

TIBCO-BW-PALETTE-SALESFORCE-400002

warnRole BW-Plugin The input of'salesforceConnection' isempty. The operationcannot be retried when aninvalid session exceptionoccurred.

None

TIBCO-BW-PALETTE-SALESFORCE-400003

warnRole BW-Plugin The configured BatchSizeis [ {0} ] that will be fixedto the minimum (200) ormaximum (2000)BatchSize.

None

TIBCO-BW-PALETTE-SALESFORCE-400004

warnRole BW-Plugin The configuredSubsetSize is [ {0} ] thatwill be fixed to theminimum (1) ormaximum (10) SubsetSize.

None

TIBCO-BW-PALETTE-SALESFORCE-400005

warnRole BW-Plugin The configured BatchSizefor [ {0} ] operation is [ {1}]that will be fixed to theminimum (200) ormaximum (2000)BatchSize.

None

TIBCO-BW-PALETTE-SALESFORCE-400006

warnRole BW-Plugin The configuredSubsetSize for [ {0} ]operation is [ {1} ] thatwill be fixed to theminimum (1) ormaximum (10) SubsetSize.

None

TIBCO-BW-PALETTE-SALESFORCE-400007

warnRole BW-Plugin The [ {0} ] activity ends upwith the error(s).

None

TIBCO-BW-PALETTE-SALESFORCE-400008

warnRole BW-Plugin No error information isavailable in the returneddata.

None

84

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 85: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Error Code Role Category Description Resolution

TIBCO-BW-PALETTE-SALESFORCE-400009

warnRole BW-Plugin End of executing a batchof operation for activity[ {0} ], but no sObjectreturned.

None

TIBCO-BW-PALETTE-SALESFORCE-400010

warnRole BW-Plugin No input data under thenode [ {0} ] at the run-timefor activity [ {1} ] isavailable. An emptyresult will be returneddirectly.

None

TIBCO-BW-PALETTE-SALESFORCE-400011

warnRole BW-Plugin The session refreshingoperation could not beperformed because theexternal sessionconfiguration has beenused.

None

TIBCO-BW-PALETTE-SALESFORCE-400012

warnRole BW-Plugin End of executing a batchof operation for the node[ {1} ] of [ {0} ] activity, butno sObject is returned.

None

TIBCO-BW-PALETTE-SALESFORCE-500001

errorRole BW-Plugin Cannot find sharedSalesforce configuration:{0}

Check theconfiguration of theSalesforceConnectionandreconfigureit.

TIBCO-BW-PALETTE-SALESFORCE-500002

errorRole BW-Plugin Error occurred whilelogging in: {0}

Checkwhether thenetwork isconnectedand theuser’s nameandpasswordare correct.

TIBCO-BW-PALETTE-SALESFORCE-500003

errorRole BW-Plugin FatalException: Failed toexecute the operationafter retrying [ {0} ]time(s).

Check thenetworkconfiguration.

85

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 86: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Error Code Role Category Description Resolution

TIBCO-BW-PALETTE-SALESFORCE-500004

errorRole BW-Plugin OperationException:Failed to execute theoperation. Please checkthe input configuration.{0} Detailed information:[ {1} ] Other information:[ {2} ]

Check theinputconfiguration.

TIBCO-BW-PALETTE-SALESFORCE-500005

errorRole BW-Plugin FatalException: Failed torenew the session in {0}activity.

Check theinput of thesalesforceConnectionfield.

TIBCO-BW-PALETTE-SALESFORCE-500006

errorRole BW-Plugin Exception occurred whileexecuting the operation.Exception type: [ {0} ]Exception message: [ {1} ]Exception detail: [ {2} ]Other information: [ {3} ]

None

TIBCO-BW-PALETTE-SALESFORCE-500007

errorRole BW-Plugin Network problemoccurred. The server iscurrently unavailable orthe session has timed out.

Check thenetworkconfiguration.

TIBCO-BW-PALETTE-SALESFORCE-500008

errorRole BW-Plugin The [ {0} ] operation istemporarily unavailable.

ContactSalesforce.comsupport.

TIBCO-BW-PALETTE-SALESFORCE-500009

errorRole BW-Plugin An unrecoverable erroroccurred while executingthe {0} operation.

Check theinputconfiguration of theactivity.

TIBCO-BW-PALETTE-SALESFORCE-500010

errorRole BW-Plugin An unrecoverable erroroccurred while inputtingthe invalid data for the {0}activity. Please check theinput configuration of theactivity.

Check theinputconfiguration of theactivity.

TIBCO-BW-PALETTE-SALESFORCE-500011

errorRole BW-Plugin ConnectionException:Failed to execute theoperation.

Check thenetworkconfiguration.

86

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 87: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Error Code Role Category Description Resolution

TIBCO-BW-PALETTE-SALESFORCE-500012

errorRole BW-Plugin Detailed informationabout this unknownexception: StackTrace: {0}Exception Message: [ {1}].FullClass [ {2} ].

Check theinputconfiguration of theactivity orcontactTIBCOsupport.

TIBCO-BW-PALETTE-SALESFORCE-500013

errorRole BW-Plugin Data was not returned inlimited operation timewhile executing [ {0} ]operation.

Change thetimeoutvalue orcheck theconnectionof thenetwork.

TIBCO-BW-PALETTE-SALESFORCE-500014

errorRole BW-Plugin Application exceptionoccurred while handlingan error.

Check theinputconfiguration of theactivity orcontactTIBCOsupport.

TIBCO-BW-PALETTE-SALESFORCE-500015

errorRole BW-Plugin FatalException: Invalidsession error occurred.Since an external sessionID was used, therefreshing sessionmechanism cannot beperformed. The externalsession ID is {0}.

Make surethe externalsession IDis valid.

TIBCO-BW-PALETTE-SALESFORCE-500016

errorRole BW-Plugin ApplicationException:The operation failed. {0}Detailed information:[ {1} ]. Other information:[ {2} ].

Check theinputconfiguration of theactivity orcontactTIBCOsupport.

TIBCO-BW-PALETTE-SALESFORCE-500017

errorRole BW-Plugin UnknownException: Theoperation failed. {0}

Check theinputconfiguration of theactivity orcontactTIBCOsupport.

87

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 88: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Error Code Role Category Description Resolution

TIBCO-BW-PALETTE-SALESFORCE-500018

errorRole BW-Plugin ConnectionException: Theoperation was failed {0}Detailed information:[ {1} ] Other information:[ {2} ]

Check thenetworkconnection.

TIBCO-BW-PALETTE-SALESFORCE-500019

errorRole BW-Plugin TimeoutException: Thetimeout value is [ {0} ].Exception Message: [ {1} ]

Change thetimeoutvalue orcheck theconnectionof thenetwork.

TIBCO-BW-PALETTE-SALESFORCE-500020

errorRole BW-Plugin The provided certificationis invalid or the selectedencryption strength maynot match your policy file.

Make suretheSalesforceResourcesfolder hasbeenimportedand JavaCryptographyExtension(JCE) hasbeeninstalled.

TIBCO-BW-PALETTE-SALESFORCE-500021

errorRole BW-Plugin ApplicationException:The required field [ {0} ] isempty, please assign avalid value.

Make surethat a validvalue isassigned intherequiredfield.

TIBCO-BW-PALETTE-SALESFORCE-500022

errorRole BW-Plugin OperationException: Thereturned sObjectcontained an errorinformation. statusCode:[ {0} ] message: [ {1} ]sObject ID in the returneddata: [{2} ] fields: [ {3} ] thesObject ID in the input:[ {4} ]

Check theinputconfiguration ofsObjects.

88

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 89: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Error Code Role Category Description Resolution

TIBCO-BW-PALETTE-SALESFORCE-500023

errorRole BW-Plugin The operation cannot becontinued because someunrecoverable errorsoccurred. statusCode:[ {0} ] message: [ {1} ]Please check the errormessage that wasgenerated from theactivity output.

Check theerrormessagethat wasgeneratedfrom theactivityoutput.

TIBCO-BW-PALETTE-SALESFORCE-500024

errorRole BW-Plugin OperationException: Thereturned sObject containsan error information.statusCode: [ {0} ]message: [ {1} ] sObject IDin the returned data: [ {2} ]fields: [ {3} ].

Check theinputconfiguration ofsObjects.

TIBCO-BW-PALETTE-SALESFORCE-500025

errorRole BW-Plugin OperationException: Thereturned sObject haserror. statusCode: [ {0} ].message: [ {1} ]. sObject idin the returned data:[ {2} ]. fields: [ {3} ]. valueassigned forexternalIDFieldName:[ {4} ]

Check theinputconfiguration ofsObjects.

TIBCO-BW-PALETTE-SALESFORCE-500026

errorRole BW-Plugin Error occurred whileexecuting the SalesforceSOAP method: Themethod is {0}, details - {1}.

Check theinputconfiguration of theactivity.

TIBCO-BW-PALETTE-SALESFORCE-500028

errorRole BW-Plugin Failed to retry theoperation [ {0} ].

Check theinputconfiguration of theactivity.

TIBCO-BW-PALETTE-SALESFORCE-500029

errorRole BW-Plugin Failed to retry theoperation in a rotation.

Check theinputconfiguration of theactivity.

TIBCO-BW-PALETTE-SALESFORCE-500030

errorRole BW-Plugin Unrecoverable errorsreturned with the records.Please find theinformation of the relatedrecords in the log.

Check theinputconfiguration of theactivity.

89

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 90: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Error Code Role Category Description Resolution

TIBCO-BW-PALETTE-SALESFORCE-500031

errorRole BW-Plugin The required field'externalIdFieldName'was empty. Could not doretrying for the CreateAll.

Fill in thevalue in theexternalIdFieldNamefield.

TIBCO-BW-PALETTE-SALESFORCE-500032

errorRole BW-Plugin Failed to retry theoperation for all [ {0} ]rotation(s).

Check theinputconfiguration of theactivity.

TIBCO-BW-PALETTE-SALESFORCE-500033

errorRole BW-Plugin Error was kept in thereturned sObject. Theindex number in thebatch: [ {0} ], statusCode:[ {1} ], message: [ {2} ],sObject ID in the returneddata (if available): [ {3} ],fields (if available): [ {4} ].

Check theerrormessagethat wasgeneratedfrom theactivityoutput.

TIBCO-BW-PALETTE-SALESFORCE-500034

errorRole BW-Plugin Error occurred on theOutbound MessageListener: {0}.

Check theinputconfiguration of theactivity.

TIBCO-BW-PALETTE-SALESFORCE-500035

errorRole BW-Plugin Unrecoverable error waskept in the returnedsObject. The indexnumber in the batch:[ {0} ], statusCode: [ {1} ],message: [ {2} ], sObjectID in the returned data (ifavailable): [ {3} ], fields (ifavailable): [ {4} ].

Check theinputconfiguration of theactivity.

TIBCO-BW-PALETTE-SALESFORCE-500036

errorRole BW-Plugin Recoverable error waskept in the returnedsObject. The indexnumber in the batch:[ {0} ], statusCode: [ {1} ],message: [ {2} ], sObjectID in the returned data (ifavailable): [ {3} ], fields (ifavailable): [ {4} ].

Check theinputconfiguration of theactivity.

90

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide

Page 91: TIBCO ActiveMatrix BusinessWorks Plug-in for Salesforce ......To use the plug-in activities, you need to create a salesforce connection using the Salesforce shared resource. The Salesforce

Error Code Role Category Description Resolution

TIBCO-BW-PALETTE-SALESFORCE-500037

errorRole BW-Plugin Common error was keptin the returned sObject.The index number in thebatch: [ {0} ], statusCode:[ {1} ], message: [ {2} ],sObject ID in the returneddata (if available): [ {3} ],fields (if available): [ {4} ].

Check theinputconfiguration of theactivity.

TIBCO-BW-PALETTE-SALESFORCE-500038

errorRole BW-Plugin The operation failed.Error message: {0}.

Check theinputconfiguration of theactivity.

TIBCO-BW-PALETTE-SALESFORCE-500039

errorRole BW-Plugin Could not find anavailable session for theoperation [ {0} ]. Pleasecheck the configuration ofthe Salesforce Connection.

Check theconfiguration of theSalesforceConnection.

TIBCO-BW-PALETTE-SALESFORCE-500040

errorRole BW-Plugin The WSDL was NOTspecified.

ConfigureanOutboundMessageWSDLgeneratedfrom theSalesforce.com server.

TIBCO-BW-PALETTE-SALESFORCE-500041

errorRole BW-Plugin The Keystore File wasNOT specified.

Configure aKeystoreFile.

TIBCO-BW-PALETTE-SALESFORCE-500042

errorRole BW-Plugin The Trusted CertificatesFolder was NOTspecified.

Configure aTrustedCertificatesFolder.

TIBCO-BW-PALETTE-SALESFORCE-500043

errorRole BW-Plugin Failed to start outboundlistener due to[ {0} ]

None

91

TIBCO ActiveMatrix BusinessWorks™ Plug-in for Salesforce.com User’s Guide