You are on page 1of 520

Title Page

Building B2B Integrations

webMethods Trading Networks Administrator’s Guide

Version 8.0

May 2010
Copyright
& Docu-
ment ID

This document applies to webMethods Trading Networks Version 8.0 and to all subsequent releases.
Specifications contained herein are subject to change and these changes will be reported in subsequent release notes or new editions.
Copyright © 2000–2010 Software AG, Darmstadt, Germany and/or Software AG USA, Inc., Reston, VA, United States of America, and/or
their licensors.
The name Software AG, webMethods, and all Software AG product names are either trademarks or registered trademarks of Software AG
and/or Software AG USA, Inc. and/or their licensors. Other company and product names mentioned herein may be trademarks of their
respective owners.
Use of this software is subject to adherence to Software AG’s licensing conditions and terms. These terms are part of the product
documentation, located at http://documentation.softwareag.com/legal/ and/or in the root installation directory of the licensed product(s).
This software may include portions of third-party products. For third-party copyright notices and license terms, please refer to "License
Texts, Copyright Notices and Disclaimers of Third Party Products." This document is part of the product documentation, located at
http://documentation.softwareag.com/legal/ and/or in the root installation directory of the licensed product(s).

Document ID: TN-AG-80SP1-20100521


Table of Contents

About This Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15


Document Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Documentation Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Online Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

Part I. Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

1. Integration Server and Trading Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21


Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Starting the Integration Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Starting the Integration Server from the Command Line . . . . . . . . . . . . . . . . . . . . . . . 23
Shutting Down the Integration Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Configuring Trading Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

2. Trading Networks User Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25


Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
My webMethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Trading Networks Console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Starting the Trading Networks Console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Opening and Closing Sessions on Servers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Familiarizing Yourself with the Trading Networks Console . . . . . . . . . . . . . . . . . . . . . . 31
The Selector Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Selecting Trading Networks Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Selecting TN Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Coordinating Your Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Closing the Trading Networks Console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

3. Configuring webMethods Trading Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35


Trading Networks Configuration Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Configuring the Trading Networks Database Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Trading Networks in a High Availability Environment . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Shared Trading Networks Database in a Clustered Environment . . . . . . . . . . . . . 37
Shared Trading Networks Database in a Non-Clustered Environment . . . . . . . . . 38
Separate Trading Networks Database for Each Instance of Trading Networks . . 40
Configuring Trading Networks for a Clustered Environment . . . . . . . . . . . . . . . . . . . . . . . . 41
Configuring Partner Profile Settings for the Trading Networks Console . . . . . . . . . . . . . . . 43
Configuring E-mail Settings for Document Delivery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Configuring Tasks Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Enabling Task Failure Notification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 3
Table of Contents

Configuring Trading Networks for Large Document Handling . . . . . . . . . . . . . . . . . . . . . . . 47


Minimum Hardware Requirements for Large Document Handling . . . . . . . . . . . . . . . . 48
Steps for Configuring Large Document Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Setting Properties in the Trading Networks Properties File . . . . . . . . . . . . . . . . . . 48
Increasing the Size of the Largest Document that Can Be Saved When Using DB2 50
Configuring the Integration Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Improving Trading Networks Performance During Searches . . . . . . . . . . . . . . . . . . . . . . . . 53
Set a Limit for Search Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Configuring the Integration Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Setting Properties in the Trading Networks Properties File . . . . . . . . . . . . . . . . . . 54
Delete Search Results Periodically . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Configuring Integration Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Other Configuration Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

4. Configuring My webMethods to Work with Trading Networks . . . . . . . . . . . . . . . . . . . 57


Central User Management—How Integration Server Authorizes My webMethods Users . . 58
How Trading Networks Uses Central User Management . . . . . . . . . . . . . . . . . . . . . . . 58
Setting Up Central User Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Configuring Central User Management in Integration Server . . . . . . . . . . . . . . . . 59
Identifying Trading Networks Server to My webMethods Server . . . . . . . . . . . . . . 59
Deleting Trading Networks Server to My webMethods Server . . . . . . . . . . . . . . . 60
Using One My webMethods Instance for Multiple Trading Networks Instances . . . . . . 60
How the Integration Server Authenticates a User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
How the Integration Server Authorizes a User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
How Trading Networks Adds My webMethods Roles to ACLs . . . . . . . . . . . . . . . . . . . 63
Defining Trading Networks Administrators for My webMethods . . . . . . . . . . . . . . . . . . . . . 64
Granting My webMethods Users the Authority to Execute Trading Networks Services . . . . 65
Defining Role-Based Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Role-Based Access is Cumulative . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Data and Actions Governed by Role-Based Access . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Data and Actions Governed by General Functional Permissions . . . . . . . . . . . . . 66
Data and Actions Governed by Data Permissions . . . . . . . . . . . . . . . . . . . . . . . . . 68
Create Profile Data Permission Capabilities . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Setting Up Role-Based Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Granting General Functional Permissions to a Role . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Removing General Functional Permissions from a Role . . . . . . . . . . . . . . . . . . . . 71
Defining Data Permissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
About Defining Data Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Defining Data Sets and Granting Roles Permissions to Act on the Data Set . . . . 72
Removing Data Permissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
How Trading Networks Uses My webMethods Roles Privileges . . . . . . . . . . . . . . . . . 75
Configuring How Long My webMethods Waits for a Response . . . . . . . . . . . . . . . . . . . . . . 76
Configuring Resubmission and Reprocessing Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

4 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
Table of Contents

5. Planning Your Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79


Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Task 1: Identify the Types of Transactions to Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Task 2: Determine the Important Document Information . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
Task 3: Define the Types of Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Task 4: Define Information to Maintain about Partners . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Task 5: Create Your Own Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Task 6: Define Actions to Perform Against Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Task 7: Add Partners to Your Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

Part II. Managing Trading Partners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

6. About Trading Partners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97


How to Manage Partners in Your Trading Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
Defining the Information You Want to Collect about Partners . . . . . . . . . . . . . . . . . . . 98
Creating Your Own Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
Adding Profiles for Partners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
Information Trading Networks Maintains in a Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
Partner Identification Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
External IDs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
Addresses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
Contacts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Partner Group Membership . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Delivery Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Delivery Method Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
General Partner Delivery Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Extended Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Users . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Certificates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Permissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Steps to Setting up Partner Profiles in Trading Networks . . . . . . . . . . . . . . . . . . . . . . . . . . 113
Profile Statuses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113

7. Defining and Managing Profile Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115


What are Profile Fields? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
Required Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
Standard Profile Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
Extended Profile Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
Viewing Standard Profile Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
Updating Standard Profile Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
Adding Extended Profile Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
Viewing Extended Profile Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
Duplicating an Existing Profile Field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
Updating Extended Profile Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
Disabling Extended Profile Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
Enabling Extended Profile Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 5
Table of Contents

8. Defining and Managing Your Profile (Your Enterprise) . . . . . . . . . . . . . . . . . . . . . . . . . 131


Creating Your Own Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
Viewing Your Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
Updating Your Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
Updating Your Corporation Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
Managing Your External IDs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
Managing Addresses for Your Corporation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
Managing the Contacts in Your Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
Managing Your Partner Group Memberships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
Managing Your Document Delivery Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
Updating Extended Fields of Your Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
Managing the My webMethods Users Associated with Your Profile . . . . . . . . . . . . . . . 145
Managing Your Security Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
Adding Certificate Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
Managing Certificate Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
Enabling Your Profile—Changing the Status to Active . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
Disabling Your Profile—Changing the Status to Inactive . . . . . . . . . . . . . . . . . . . . . . . . . . . 151

9. Defining and Managing Partner Profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153


Adding Partner Profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
Searching for Partner Profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
Performing a Keyword Search for Partner Profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
Performing an Advanced Search for Partner Profiles . . . . . . . . . . . . . . . . . . . . . . . . . . 158
Viewing Partner Profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Updating Partner Profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Updating Your Partner’s Corporation Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
Managing Your Partner’s External IDs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
Managing Your Partner’s Addresses for the Corporation . . . . . . . . . . . . . . . . . . . . . . . 162
Managing Your Partner’s Contact Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
Managing Your Partner’s Group Memberships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
Managing Reliable Delivery and Polling Settings in a Partner Profile . . . . . . . . . . . . . . 165
Managing Document Delivery Methods in a Partner Profile . . . . . . . . . . . . . . . . . . . . . 167
Updating Extended Fields in a Partner Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
Managing the My webMethods Users Associated with the Partner’s Profile . . . . . . . . 174
Managing Your Partner’s Security Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
Adding Certificate Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
Managing Certificate Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
Copying a Partner Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
Suspending Delivery for a Partner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
Resuming Delivery for a Partner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
Deleting a Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
Disabling a Partner’s Profile—Changing the Status to Inactive . . . . . . . . . . . . . . . . . . . . . . 183
Enabling a Partner’s Profile—Changing the Status to Active . . . . . . . . . . . . . . . . . . . . . . . . 184

6 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
Table of Contents

Searching for Certificates that Are Expired or Expiring Soon . . . . . . . . . . . . . . . . . . . . . . . 184


Searching for Expired Partner Certificates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
Searching for Partner Certificates that Will Expire Soon . . . . . . . . . . . . . . . . . . . . . . . 185

10. Defining and Managing Partner Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187


What are Partner Groups? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
Defining a Partner Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
Searching for Partner Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
Performing a Keyword Search for Partner Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
Updating a Partner Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
Deleting a Partner Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191

11. Defining and Managing Trading Partner Agreements (TPAs) . . . . . . . . . . . . . . . . . . . . 193


What is a Trading Partner Agreement (TPA)? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
Information You Supply to Define a TPA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
Defining a TPA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
Managing TPAs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
Finding and Viewing TPAs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
Updating TPAs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
Changing a TPA Agreement Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
Changing the TPA Data Inputs in the IS Document Type . . . . . . . . . . . . . . . . . . . 204
Deleting a TPA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206

Part III. Defining Transaction Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207

12. Defining and Managing Document Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209


What are Document Attributes? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
Defining Document Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
Managing Document Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
Viewing Document Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
Displaying Disabled Document Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
Hiding Disabled Document Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
Updating Document Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
Disabling Document Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
Enabling Document Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
Determining the TN Document Types that Use an Attribute . . . . . . . . . . . . . . . . . . . . 216

13. Defining and Managing TN XML Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219


What Are TN XML Document Types? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
Identification Information in TN XML Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
Determining the TN Document Type to Use for an XML Document . . . . . . . . . . . . . . . 225
When an XML Document Does Not Match Any TN Document Types . . . . . . . . . 225
When an XML Document Matches More Than One TN Document Type . . . . . . . 225

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 7
Table of Contents

Extraction Information In TN XML Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226


Important Attributes that You Should Extract from an XML Document . . . . . . . . . . . . . 226
Indicating that Attributes are Required in TN XML Document Types . . . . . . . . . . . . . . 228
Transformation Information for Extracted Attributes of TN Document Types . . . . . . . . 229
Specifying Built-In Transformation Information for SenderID and ReceiverID . . . . 230
Specifying Built-In Transformation Information for Attributes with the DATETIME and
DATETIME LIST Data Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
Specifying Built-In Transformation Information for Attributes with the STRING or
STRING LIST Data Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
Specifying Built-In Transformation Information for Attributes with the NUMBER Data
Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
Specifying a Custom Transformation Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234
Setting Input and Output Values for Custom Transformation Services . . . . . 235
Namespace Mappings in TN XML Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
XML Documents and Namespaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
How Namespaces Affect Identifying and Attribute XQL Queries . . . . . . . . . . . . . . 238
Namespace Mappings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
Options in TN XML Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
Specifying an IS Document Type for TN XML Document Types . . . . . . . . . . . . . . . . . 241
Specifying an IS Schema for TN XML Document Types . . . . . . . . . . . . . . . . . . . . . . . 241
Disabling Processing Rule Routing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
Specifying Pre-Processing Actions for TN XML Document Type . . . . . . . . . . . . . . . . . 242
Verifying the Digital Signature of an XML Document . . . . . . . . . . . . . . . . . . . . . . . 242
Validating the Structure of an XML Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
Checking for Duplicate of the XML Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
Saving an XML Document to the Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
Defining TN XML Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
Using a Sample Document to Define a TN XML Document Type . . . . . . . . . . . . . . . . 248
Working with a Sample Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
Defining a TN XML Document Type without a Sample Document . . . . . . . . . . . . . . . . 260
Managing TN XML Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
Viewing TN XML Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
Updating TN XML Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268
Using a Sample Document when Updating a TN XML Document Type . . . . . . . . 268
Updating a TN XML Document Type without a Sample Document . . . . . . . . . . . . 273
Disabling TN XML Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
Enabling TN XML Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
Testing TN XML Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
Submitting XML Documents to Trading Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278

14. Defining and Managing TN Flat File Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . 281


Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
Run-Time Processing of Flat File Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283

8 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
Table of Contents

Defining Document Gateway Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286


Reading the Input Stream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
Determining the Content Type and Content Encoding . . . . . . . . . . . . . . . . . . . . . 287
Converting a Flat File Document to an IS Document . . . . . . . . . . . . . . . . . . . . . . 288
Specifying the Document Gateway Services Outputs . . . . . . . . . . . . . . . . . . . . . . . . . 288
TN Flat File Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292
Pipeline Matching Criteria Used to Identify the TN Document Type . . . . . . . . . . . . . . 292
Error Conditions When Matching Documents to TN Document Types . . . . . . . . . 293
Attributes To Extract From Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293
Error Conditions When Extracting Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
System Attributes To Extract From Documents . . . . . . . . . . . . . . . . . . . . . . . . . . 295
SenderID and ReceiverID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
DocumentID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
ConversationID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
UserStatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
GroupID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297
Transformation Information for Extracted Attributes of TN Flat File Document Types
297
Built-In Transformations for SenderID and ReceiverID . . . . . . . . . . . . . . . . . 297
Built-In Transformations for DATETIME and DATETIME LIST Data Type Attributes
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297
Built-In Transformations for STRING or STRING LIST Data Type Attributes 297
Built-In Transformations for NUMBER Data Type Attributes . . . . . . . . . . . . . 298
Custom Transformation Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
Disabling Processing Rule Routing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301
Pre-Processing Actions in the TN Flat File Document Type . . . . . . . . . . . . . . . . . . . . 302
Verifying the Digital Signature of Flat File Documents . . . . . . . . . . . . . . . . . . . . . 302
Validating the Structure of Flat File Documents . . . . . . . . . . . . . . . . . . . . . . . . . . 302
Checking for Duplicates of the Flat File Document . . . . . . . . . . . . . . . . . . . . . . . . 303
Saving Flat File Documents to the Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
Defining TN Flat File Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
Managing TN Flat File Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312
Viewing TN Flat File Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313
Updating TN Flat File Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313
Disabling TN Flat File Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
Enabling TN Flat File Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315

15. Defining and Managing Processing Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317


What are Processing Rules? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
Processing Rules Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
Adding Processing Rules and the Order of Processing Rules . . . . . . . . . . . . . . . . . . . 318
Reordering Processing Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 9
Table of Contents

Processing Rule Criteria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322


Sender and Receiver Criteria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
Document Type Criterion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324
User Status Criterion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324
Document Recognition Errors Criterion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326
Extended Criteria—Using Custom Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
Bypassing Lookups for Processing Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
Skip Processing Rule Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
Bypass Lookup by Explicitly Specifying the Processing Rule . . . . . . . . . . . . . . . . 331
Pre-Processing Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
Creating a Duplicate Document Check Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
Processing Rule Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
Action 1—Execute a Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
Executing the Service Synchronously or Asynchronously . . . . . . . . . . . . . . . . . . . 335
Service Execution Tasks and Reliable Execution . . . . . . . . . . . . . . . . . . . . . . . . . 337
Creating the Service for the Execute a Service Processing Action . . . . . . . . . . . . 339
Input and Output Variables for the Service . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
Setting Values for the Input Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
Logic for the Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
Action 2—Send an Alert E-mail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
Recipient of the E-mail Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
Subject of the E-mail Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
Body of the E-mail Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
Action 3—Change User Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
Action 4—Deliver the Document to the Receiver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
Immediate Delivery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
Using Reliable Delivery with Immediate Delivery Method . . . . . . . . . . . . . . . 346
Scheduled Delivery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
Using Reliable Delivery with Scheduled Delivery . . . . . . . . . . . . . . . . . . . . . . 347
Queued for Polling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
Preferred Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
Action 5—Respond With a Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
Specifying the Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
Specifying the Content Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
Defining Processing Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
Defining a Processing Rule Based on a Saved Document . . . . . . . . . . . . . . . . . . . . . . 362
Setting Up a Default Processing Rule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363
Ordering the Processing Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364
Testing the Order of Processing Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
About Querying and Viewing Processing Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
Basic Search Criteria for Processing Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
Detail View of Processing Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
Finding and Viewing Processing Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367

10 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
Table of Contents

Managing Processing Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372


Updating Processing Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372
Disabling Processing Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
Enabling Processing Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
Deleting Processing Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373

Part IV. Setting Up Document Delivery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375

16. Defining and Managing Queues in Trading Networks . . . . . . . . . . . . . . . . . . . . . . . . . . 377


What is a Queue? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378
About Scheduled Delivery Queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378
Types of Scheduled Delivery Queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
Private Queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
Public Queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
Delivery Schedule for Queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
Using the Run Once Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380
Using the Fixed Interval Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380
Using a Custom Interval Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
Scheduled Delivery Queue States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
Defining Private Queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
Defining Public Queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
Searching for Public Queues Using My webMethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387
Performing a Keyword Search for Public Queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388
Deleting Public Queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388
Changing the State of a Private Queue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388
Changing the State of a Public Queue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
About Queue for Polling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
Defining Queue for Polling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
Additional Queue for Polling Setup for webMethods for Partners . . . . . . . . . . . . . . . . 390
Viewing Documents that Are Queued for Delivery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391

17. Creating Delivery Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393


What is a Delivery Service? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394
What is an Immediate Delivery Service? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394
What is a Scheduled Delivery Service? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394
Creating an Immediate Delivery Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
Retrieving the Content of a Document for Immediate Delivery . . . . . . . . . . . . . . . . . . 396
Creating a Scheduled Delivery Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
Inputs and Outputs for a Scheduled Delivery Service . . . . . . . . . . . . . . . . . . . . . . . . . 397
Inputs for Scheduled Delivery Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
Outputs for Scheduled Delivery Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398
Retrieving the Content of a Document for Scheduled Delivery . . . . . . . . . . . . . . . . . . 398
Required Logic to Include in the Scheduled Delivery Service . . . . . . . . . . . . . . . . . . . 398
Typical Logic to Include in the Scheduled Delivery Service . . . . . . . . . . . . . . . . . . . . . 401
Handling Exceptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402
The wm.tn.transport:batchFtp Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 11
Table of Contents

Adding and Registering New Delivery Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405

Part V. Appendices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409

A. Queries in Trading Networks Console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411


Running Queries in Trading Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
Enabling the Query Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
Creating and Saving a Query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
Selecting and Running a Query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
Navigating Through the Results Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
Updating the Search Criteria for a Saved Query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
Saving a New Query Based on an Existing Query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
Reverting to a Saved Query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
Deleting Saved Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418

B. Archiving and Deleting Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419


About Archiving and Deleting Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
Archiving Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
Deleting Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
Setting Up Basic Archival and Deletion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
Setting How Many Days to Retain Documents Before Archival and Deletion . . . . . . . 421
Scheduling the Archival and Deletion of Documents . . . . . . . . . . . . . . . . . . . . . . . . . . 422
Setting Up Extended Archival and Deletion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
Setting Up Extended Archival and Deletion Using Integration Server . . . . . . . . . . . . . . . . . 425
Setting the Archival and Deletion Criteria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425
Scheduling the Archival and Deletion of Documents . . . . . . . . . . . . . . . . . . . . . . . . . . 425
Setting Up Extended Archival and Deletion Using My webMethods . . . . . . . . . . . . . . . . . . 427
Setting the Archival and Deletion Criteria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427
Scheduling the Archival and Deletion of Documents . . . . . . . . . . . . . . . . . . . . . . . . . . 432
Searching for Archive and Delete Schedules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
Editing Archive and Delete Schedules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
Deleting Archive and Delete Schedules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
Copying Archive and Delete Schedules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440

C. Exporting and Importing Database Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441


About Exporting and Importing Database Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442
Trading Networks Objects that You Can Export and Import . . . . . . . . . . . . . . . . . . . . . . . . 442
How Trading Networks Detects Items in Target System Before Importing Them . . . . . . . . 443
Dependencies For Trading Networks Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444
Migrating Profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445
Partner Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446
Partner Data Dependencies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446
Migrating Profile Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
Field Definitions Dependencies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
Migrating TN Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449
Document Type Dependencies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449

12 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
Table of Contents

Migrating Custom Document Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450


Migrating Processing Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450
Processing Rules Dependencies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451
Migrating Trading Partner Agreements (TPAs) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452
Agreements Dependencies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
Migrating Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
Migrating Public Queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454
Public Queues Dependencies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454
Migrating Data Permissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455
How to Migrate Data Permissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455
Data Permission Dependencies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455
Exporting Database Information from the Console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456
Importing Database Information from the Console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457
Importing Items that Match With Those in the Target System . . . . . . . . . . . . . . . . . . . 457
Using the Overwrite Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458
Suppressing the Overwrite Dialog Box and Forcing the Overwrite of Items . . . . . 459
Procedure for Importing Database Information from the Console . . . . . . . . . . . . . . . . 459
Using the tnexport and tnimport Utilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460
tnexport Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460
Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461
tnimport Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462
Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463

D. Trading Networks Configuration Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465


Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
Updating Properties on the Configure Properties Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
Alphabetical Listing of the Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
Cluster Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 468
Database Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
Database Query Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
Data Level Security Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473
Debugging Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473
Document Archiving Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474
Document Delivery Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475
Document Validation Property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476
Flat File Property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477
Large Document Handling Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478
Localization Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479
Performance Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480
Profile Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 486
Task Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 489
Miscellaneous Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497

E. XQL Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 501


XQL Reference Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 502

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 13
Table of Contents

Sample XML File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 502


Example XQL Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 503
Extracting Custom Attributes From XML Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 505
Extracting STRINGLIST or STRING ATTRIBUTES . . . . . . . . . . . . . . . . . . . . . . . . . . . 505
Extracting NUMBERLIST or NUMBER ATTRIBUTES . . . . . . . . . . . . . . . . . . . . . . . . . 506
Extracting DATETIMELIST or DATETIME ATTRIBUTES . . . . . . . . . . . . . . . . . . . . . . 507

F. Large Document Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 509


Overview of Large Document Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 510
What You Need to Do to Use Large Document Handling . . . . . . . . . . . . . . . . . . . . . . . . . . 510
Features Not Available for Large Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511
Defining TN Document Type XQL Queries for Large Documents . . . . . . . . . . . . . . . . . . . . 511
Creating Services that Recognize Large Document Handling . . . . . . . . . . . . . . . . . . . . . . . 512
Determining Where the Document Content is Stored . . . . . . . . . . . . . . . . . . . . . . . . . . 512
Retrieving Document Content from Hard Disk Drive Space . . . . . . . . . . . . . . . . . . . . . 514
Retrieving the Content for Document Delivery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514
Sending Large XML Documents for Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515
Viewing Large Documents that Trading Networks Has Processed . . . . . . . . . . . . . . . . . . . 515

G. Enabling a Document Delivery Using a Web Service . . . . . . . . . . . . . . . . . . . . . . . . . . . 517


Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 518
Enabling the Delivery of Documents Using a Web Service . . . . . . . . . . . . . . . . . . . . . . . . . 518
Step 1: Create a Web service connector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 518
Step 2: Create a Mapping Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 518
Step 3: Define a Web Services Delivery Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519
Step 4: Define a Processing Rule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519
Step 5: Perform Additional Steps if the Web Service Response must be
a New Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519

14 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
About This Guide

This manual describes how to configure Trading Networks and how to plan for your
trading network. It provides procedures for setting up Trading Networks to build your
trading network and how to manage an existing trading network, including how to
define and update the information you want to collect about trading partners and how to
add and maintain partners to your trading network. It also describes how to define how
you want Trading Networks to process business documents that are sent to your trading
network.

Note: The webMethods Trading Networks and webMethods for Partners components
perform the same functionality. The difference between the components is that
webMethods Trading Networks allows you to have as many partners in your network
as you want, and webMethods for Partners allows you to have only a single partner.
This guide provides documentation for both components although it refers only to
webMethods Trading Networks (referred to as Trading Networks).

Document Conventions

Convention Description
Bold Identifies elements on a user interface.
Narrow font Identifies storage locations for services on webMethods Integration
Server, using the convention folder.subfolder:service.
UPPERCASE Identifies keyboard keys. Keys you must press simultaneously are
joined with a plus sign (+).
Italic Identifies variables for which you must supply values specific to your
own situation or environment. Identifies new terms the first time they
occur in the text.
Monospace Identifies text you must type or messages displayed by the system.
font

{} Indicates a set of choices from which you must choose one. Type only
the information inside the curly braces. Do not type the { } symbols.
| Separates two mutually exclusive choices in a syntax line. Type one of
these choices. Do not type the | symbol.
[] Indicates one or more options. Type only the information inside the
square brackets. Do not type the [ ] symbols.
... Indicates that you can type multiple options of the same type. Type
only the information. Do not type the ellipsis (...).

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 15
About This Guide

Documentation Installation
You can download the product documentation using the Software AG Installer.
Depending on the release of the webMethods product suite, the location of the
downloaded documentation will be as shown in the table below.

For webMethods... The documentation is downloaded to...


6.x The installation directory of each product.
7.x A central directory named _documentation in the main
installation directory (webMethods by default).
8.x A central directory named _documentation in the main
installation directory (Software AG by default).

Online Information
You can find additional information about Software AG products at the locations listed
below.

Note: The Empower Product Support Web site and the Software AG Documentation
Web site replace Software AG ServLine24 and webMethods Advantage.

If you want to... Go to...


Access the latest version of product Software AG Documentation Web site
documentation.
http://documentation.softwareag.com
Find information about product releases and Empower Product Support Web site
tools that you can use to resolve problems.
https://empower.softwareag.com
See the Knowledge Center to:
 Read technical articles and papers.
 Download fixes and service packs.
 Learn about critical alerts.
See the Products area to:
 Download products.
 Get information about product
availability.
 Access older versions of product
documentation.
 Submit feature/enhancement requests.

16 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
About This Guide

If you want to... Go to...


 Access additional articles, demos, and Software AG Developer Community
tutorials. for webMethods
 Obtain technical information, useful http://communities.softwareag.com/
resources, and online discussion forums, webmethods
moderated by Software AG professionals,
to help you do more with Software AG
technology.
 Use the online discussion forums to
exchange best practices and chat with
other experts.
 Expand your knowledge about product
documentation, code samples, articles,
online seminars, and tutorials.
 Link to external Web sites that discuss
open standards and many Web
technology topics.
 See how other customers are streamlining
their operations with technology from
Software AG.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 17
About This Guide

18 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
I Getting Started

 Integration Server and Trading Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21


 Trading Networks User Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
 Configuring webMethods Trading Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
 Configuring My webMethods to Work with Trading Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
 Planning Your Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 19
I Getting Started

20 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
1 Integration Server and Trading Networks

 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
 Starting the Integration Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
 Shutting Down the Integration Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
 Configuring Trading Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 21
1 Integration Server and Trading Networks

Overview
To use webMethods Trading Networks (Trading Networks), you must start the
Integration Server. Because Trading Networks is seamlessly integrated into the
webMethods platform, all configuration, administration, and management tasks that you
can perform for the webMethods Integration Server also apply to the Trading Networks
For more information about the architecture and components of webMethods Trading
Networks, see Understanding webMethods B2B: webMethods Trading Networks Concepts
Guide.
This chapter describes basic tasks that you will need to perform when using the server,
specifically, how to start and shut down the server.

Starting the Integration Server


You must have the Integration Server running:
 To set up and manage Trading Networks.
 To allow your partners to submit documents to Trading Networks.
 To use the Trading Networks functions in My webMethods.
 To use the Trading Networks Console.

Note: For Trading Networks to function properly, the WmPublic package must be
enabled. For more information on the WmPublic package and how to assure a
package is enabled, see Administering webMethods Integration Server.

To start the Integration Server on Microsoft Windows

On the Start menu, select Programs > webMethods > Servers > webMethods Integration Server.

Note: When you installed the Trading Networks, you installed additional packages
into the webMethods Integration Server. Installing the Trading Networks added
functionality to the webMethods Integration Server.

To start the Integration Server on UNIX

1 Locate the server.sh script file that you modified for your environment when you
installed the server.
2 Execute this script.

Important! Run this script when logged in as a non-root user. Running the script as
root might reduce the security of your system.

22 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
1 Integration Server and Trading Networks

Starting the Integration Server from the Command Line


There are times when it is useful to start the Integration Server from the command line.
Starting the Integration Server this way allows you to override certain configuration
settings. It also lets you start the Integration Server in “debug” mode, so you can record
or display the activity occurring in the Integration Server. For instructions on how to start
the Integration Server from the command line and a description of the parameters you
can specify, see Administering webMethods Integration Server.

Shutting Down the Integration Server


Shut down Integration Server to stop all the active sessions. After you do so, Trading
Networks automatically closes its session on the server. You can restore the session, when
you start the server again.

To shut down the server

1 Open the Integration Server Administrator if it is not already open.


To open the Integration Server Administrator, start your browser and point it to the
host and port where the Integration Server is running.
Example
If the server were running on port 4040 on a machine called QUICKSILVER, type:
http://QUICKSILVER:4040

2 In the upper right corner of any Integration Server Administrator screen, click the
Shutdown and Restart link.
3 Select whether you want the server to wait before shutting down or to shut down
immediately.
 Delay number minutes or until all client sessions are complete. Specify the number of
minutes you want the Integration Server to wait before shutting down. Trading
Networks begins monitoring user activity and automatically shuts down when all
non-administrator sessions complete or when the maximum wait time you
specify elapses (whichever comes first).
 Immediate. The server and all active sessions terminate immediately.
For instructions on how to view the active sessions, see Administering webMethods
Integration Server.
4 Click Shutdown.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 23
1 Integration Server and Trading Networks

Configuring Trading Networks


You can configure the Trading Networks to suit your site. For example, you can specify
the database you want to use and the parameters that control how Trading Networks
delivers documents. For complete information, see Chapter 3, “Configuring webMethods
Trading Networks”.

24 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
2 Trading Networks User Interfaces

 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
 My webMethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
 Trading Networks Console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 25
2 Trading Networks User Interfaces

Overview
webMethods Trading Networks (Trading Networks) has the user interfaces described in
the table below:

User Interface Description


My My webMethods is a web-based, administration and monitoring
webMethods user interface for managing your webMethods components. For
Trading Networks functions, you can use it to define partner
profiles, partner groups, and public queues; perform some
configuration tasks; and monitor Trading Networks transactions,
service execution tasks, delivery tasks, and activity logs. The
administrative tasks are described in this guide. For information
about monitoring transactions, tasks, and the activity log, see
Managing B2B Integrations: webMethods Trading Networks User’s
Guide.
Trading The Trading Networks Console (Console) is a standalone Java GUI.
Networks You can use it to define trading partner agreements (TPAs), custom
Console attributes, TN document types, and processing rules.

Because Trading Networks server runs within the Integration Server, to use Trading
Networks the Integration Server must be started. Also all tasks you perform to configure,
administer, and manage the Integration Server also affect Trading Networks.
In addition, the Integration Server must be running to use any of the user interfaces to
perform Trading Networks tasks.

My webMethods
My webMethods is a web-based, administration and monitoring user interface for
managing your webMethods components. The following table lists the My webMethods
pages that you use to perform Trading Networks actions.

Important! Functionality available via the My webMethods user interface is based on


the permissions assigned to your My webMethods roles. If you do not have all
permissions, My webMethods might not display pages, buttons, and/or other user
interface controls required to perform the actions describe in this guide. If a
procedure instructs you to use an item that is not available, see your system
administrator about acquiring the proper permissions to allow you to perform the
action.

26 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
2 Trading Networks User Interfaces

Navigation Selections Use to...


Administration > System-Wide > Set data permissions for a My webMethods role that
B2B Permissions > Data indicate the actions users in that role can take against
Permissions Trading Networks data. For more information, see
“Defining Role-Based Access” on page 65.
Administration > System-Wide > Set the general functional permissions for a My
B2B Permissions > General webMethods role that indicate the Trading Networks
Functional Permissions actions that users in that role can perform. Specifically,
you can identify the My webMethods roles that can:
 Manage public queues
 Manage partner groups
 Delete a partner profile
 Manage extended profile fields
 Add external ID types
 Show the SQL query for a search
 View user preferences
 Edit user preferences
 View B2B configuration properties
 Edit B2B configuration properties
 Query expiring partner certificates
 Manage the archival and deletion schedules of
Trading Networks data
 Manage the immediate delivery methods that you
create using Trading Networks
 Submit documents to Trading Networks
For more information, see “Defining Role-Based
Access” on page 65.
Administration > Integration > Manage profiles and profile fields. You can:
B2B > Partner Profiles
 Add, edit, and/or delete partner profiles. For more
information, see Chapter 8, “Defining and
Managing Your Profile (Your Enterprise)” and
Chapter 9, “Defining and Managing Partner
Profiles”.
 Add, edit, and/or delete extended profile fields. For
more information, see Chapter 7, “Defining and
Managing Profile Fields”.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 27
2 Trading Networks User Interfaces

Navigation Selections Use to...


Administration > Integration > Add, edit, and/or delete partner groups. For more
B2B > Partner Groups information, see Chapter 10, “Defining and Managing
Partner Groups”.
Administration > Integration > Query for partner certificates that are expired or
B2B > Partner Certificates expiring soon. For more information, see “Searching for
Certificates that Are Expired or Expiring Soon” on
page 184.
Administration > Integration > Add, edit, and/or delete public queues. For more
B2B > Public Queues information, see Chapter 16, “Defining and Managing
Queues in Trading Networks”.
Administration > Integration > Set administrative settings. For information about
B2B Settings > Administrative Trading Networks administrative preferences, see
Preferences “Configuring My webMethods to Work with Trading
Networks” on page 57.
Administration > Integration > Set Trading Networks Server properties. For
B2B Settings > Configure instructions for setting Trading Networks properties
Properties from My webMethods, see “Trading Networks
Configuration Properties” on page 36. For a description
of the properties, see Appendix D, “Trading Networks
Configuration Properties”.
Administration > Integration > Submit XML documents to Trading Networks using My
B2B Settings > Submit webMethods. For more information, see “Submitting
Documents XML Documents to Trading Networks” on page 278.
Monitoring > Integration > B2B Track and manage documents that Trading Networks
> Transactions has processed by querying the Trading Networks
database. For more information, see Managing B2B
Integrations: webMethods Trading Networks User’s Guide.
Monitoring > Integration > B2B View the status and detail of delivery and service
> Tasks execution tasks. You can also stop, restart, reassign, or
delete tasks. For more information, see Managing B2B
Integrations: webMethods Trading Networks User’s Guide.

28 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
2 Trading Networks User Interfaces

Navigation Selections Use to...


Monitoring > Integration > B2B Access the activity log that records the activity
> Activity Log occurring within the Trading Networks system. This
includes activity while managing your partners; while
documents are being received, processed, and
delivered; as well as administrative actions performed
for your Trading Networks system. For more
information, see Managing B2B Integrations: webMethods
Trading Networks User’s Guide.
Monitoring > Integration > B2B Set user preferences for using My webMethods to
> User Preferences perform Trading Networks functions. For information
about user preferences for Trading Networks pages in
My webMethods, see Managing B2B Integrations:
webMethods Trading Networks User’s Guide.

For more information about My webMethods, see the Working with My webMethods guide.

Trading Networks Console


Use the Trading Networks Console to perform functions such as configuring how
documents are exchanged through your network.
This section provides procedures for how to start and exit from the Console. In addition,
it contains information to help you become familiar with how to use the Console.

Starting the Trading Networks Console


Use the following procedure to start the Trading Networks Console on your workstation.

Important! Make sure that the Integration Server with which you want to use the
Console is running.

To start the Trading Networks Console

1 On the Start menu, select Programs > webMethods > Trading Networks Console.
2 In the Open Session dialog box, complete the following:

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 29
2 Trading Networks User Interfaces

In this field... Specify...

Server The host name and port of the Integration Server in


ServerName:PortNum format.
Example localhost:5555
Note: Servers to which you have successfully logged on in the
past are listed in the Server list. You can select a server from
this list or type a different server name and port number.
User Name The name of a valid user account on this server. (The user
name must be a member of a group belonging to the
Administrators ACL and a member of a group belonging to the
Developers ACL.)
Note: The user name must be a member of a group belonging
to the Developers ACL because Trading Networks launches
the Developer for some tasks, such as: specifying a service for
a processing rule or a delivery queue; specifying a custom
duplicate checking service or custom attribute transformation
service for a TN document type; browsing for an IS document
type for a TPA; and setting inputs for a TPA.
For the user name, specify the exact combination of upper-
and lower-case characters; IS user names are case-sensitive.
Password The password for the user account in User Name. Use the exact
combination of upper- and lower-case characters; IS
passwords are case-sensitive.
Use secure Whether the connection will be made through HTTP or
connection HTTPS. To open a session on the selected server using the
Secure Socket Layer (SSL), select this check box.
Use proxy server Whether the Trading Networks opens a session on the server
through the default proxy server. To open a session on the
selected server using your proxy server, select this check box.
For information about defining default proxy servers, see
Managing B2B Integrations: webMethods Trading Networks User’s
Guide.

3 Click OK.

Opening and Closing Sessions on Servers


When you start Trading Networks, you are prompted to log on to the Integration Server
that you want to work with. The Trading Networks Console maintains an open session
on that server until you exit the Console or switch to another server.

30 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
2 Trading Networks User Interfaces

You can open a session on only one webMethods Integration Server at a time. Before you
switch to another server, you must first close the session on the current server.

Important! While the Trading Networks Console has an open session on a Integration
Server, you are using a licensed seat for that server. When you are not actively using
Trading Networks, you might want to close the session on the server or close the
Console to free a seat on the server for others to use.

To close a session on the current server

1 Save any work that you want to keep.


2 Select File > Close Session.

To open a session on a different server

1 Select File > Open Session.

Note: If you already have a session opened on a Integration Server, Trading


Networks automatically closes the session you have on that server. If you have
unsaved work, you are prompted to save it.

2 Complete the Opening Session to Integration Server dialog box. For information of
the fields, see step 2 on “Starting the Trading Networks Console” on page 29.
3 Click OK.

Familiarizing Yourself with the Trading Networks Console


The Trading Networks Console screen contains several different parts; that is, the menu
bar, the selector panel with selector panel buttons, the screen name, the toolbar, and the
display area. For a description of these items, see Managing B2B Integrations: webMethods
Trading Networks User’s Guide.

The Selector Panel


Use the selector panel buttons to choose what type of information you want to view
about your trading network (Enterprise) or a partner.
The following table lists the selector panel buttons, along with a description of each
button. You change the screen view of the Trading Networks Console by selecting one of
these selector panel buttons.
Because you can also access the screens using the View menu, you might want to choose to
remove the selector panels from the display. To turn the buttons on/off, select View >
Buttons.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 31
2 Trading Networks User Interfaces

Selecting Trading Networks Objects

This Selector Panel


icon... Performs this function...
Define and manage TN document types, specify attributes for
Trading Networks to extract from the document, and specify
Document Types options for pre-processing. In addition, you can access the
Document Attribute screen from the Document Types screen.
For more information about TN document types, see Chapter 13,
“Defining and Managing TN XML Document Types” and
Chapter 14, “Defining and Managing TN Flat File Document
Types”.
Define and manage processing rules, which Trading Networks
uses to determine how to process the documents sent to your
Processing Rules Trading Networks system.
For more information about processing rules, see Chapter 15,
“Defining and Managing Processing Rules”.
Define and manage Trading Partner Agreement (TPA) parameters
that will specify how to govern transactions between two trading
Agreements partners. You can also view and query TPAs.
For more information about TPAs, see Chapter 11, “Defining and
Managing Trading Partner Agreements (TPAs)”.

Many of the screens and query panels on the Trading Networks Console use the same
buttons for selecting various Trading Networks objects (e.g., partner profiles and
document types). For example, the Select button appears on the Agreements,
Processing Rules, and Transaction Analysis screens so you can select the partner profile.

32 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
2 Trading Networks User Interfaces

Selecting TN Document Types

If you need to select a TN document type, use Select Document Type, which accesses the
Document Type Selection Dialog. For example, when you create processing rule criteria,
you can select a TN document type by clicking Select Document Type.

To select a TN document type

1 Click Select Document Type. Trading Networks displays the Document Type
Selection Dialog, which lists all of the TN document types (both the TN XML
document types and TN flat file document types).
2 To view disabled TN document types, select Types > Show All. Trading Networks
places a check () next to the Show All menu item to indicate that Trading Networks is
currently displaying disabled TN document types.
3 Select the row containing information about the TN XML document type or TN flat
file document type that you want.
Trading Networks displays the Document Type Details dialog for the selected TN
document type.
4 Click OK.
For more information about using the Console to work with TN document types, see
Chapter 13, “Defining and Managing TN XML Document Types” and Chapter 14,
“Defining and Managing TN Flat File Document Types”.

Coordinating Your Work


If you will have more than one Trading Networks administrator, the administrators
should coordinate their work. If more than one Trading Networks administrator accesses
the Trading Networks Console and edits the same item (e.g., document type, profile,
profile field, etc.) simultaneously, the administrators might inadvertently overwrite one
another’s work.

Closing the Trading Networks Console


To close the Trading Networks Console, select File > Exit.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 33
2 Trading Networks User Interfaces

34 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
3 Configuring webMethods Trading Networks

 Trading Networks Configuration Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36


 Configuring the Trading Networks Database Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
 Configuring Trading Networks for a Clustered Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
 Configuring Partner Profile Settings for the Trading Networks Console . . . . . . . . . . . . . . . . . . . 43
 Configuring E-mail Settings for Document Delivery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
 Configuring Tasks Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
 Configuring Trading Networks for Large Document Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
 Improving Trading Networks Performance During Searches . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
 Other Configuration Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 35
3 Configuring webMethods Trading Networks

Trading Networks Configuration Properties


You perform most Trading Networks configuration tasks by updating the Trading
Networks properties, which appear in:
IntegrationServer_directory\packages\WmTN\config\properties.cnf
You can update the configuration properties using the Administration > Integration > B2B
Settings > Configure Properties page in My webMethods. The procedures in this chapter
describe how to access the Configure Properties page.

Important! When you use the Configure Properties page and save your updated
properties, Trading Networks updates all the properties with their values including
those that you might not have altered.
This is important if you are using Trading Networks in a clustered environment and
have the tn.cluster.notifyPropertyChange property set to true. Using the Configure
Properties page to update properties when you are in a clustered environment will
cause Trading Networks to synchronize all properties each time you use the
Configure Properties page. If you want the servers in the cluster to maintain different
values for some of the properties, set the tn.cluster.notifyPropertyChange property to false,
and maintain the properties for each server individually.

To update the Trading Networks configuration properties

In My webMethods: Administration > Integration > B2B Settings > Configure Properties.
To see a list of the Trading Networks configuration properties and a description of each,
see Appendix D, “Trading Networks Configuration Properties”.

Configuring the Trading Networks Database Settings


When you installed Trading Networks, you specified the following database connection
parameters:
 The JDBC driver. The name of the JDBC driver for Trading Networks database.
 The location of the database. A URL to specify the location of the Trading Networks
database.
 A user name and password. If the Trading Networks database requires a user name and
password to connect to it, you identified the user name and password that Trading
Networks must supply.
 Database properties. If you want Trading Networks to supply any additional database
properties when connecting to the Trading Networks database, you identified the
database properties.
If you want to change these parameters (for example, to adjust the minimum and
maximum connections), see the Software AG Installation Guide for general instructions.

36 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
3 Configuring webMethods Trading Networks

Important! If you change the database after using Trading Networks, Trading
Networks does not copy the data in the current database to the new database.
However, you can use the Trading Networks export and import facility to export data
from your existing database. Then, after you change the database, you can import the
exported information into the new database. For more information, see Appendix C,
“Exporting and Importing Database Information”.

Trading Networks in a High Availability Environment


To meet your high availability requirements, you might need to use multiple instances of
Trading Networks. When you use multiple instances of Trading Networks, you must
decide whether to share a single Trading Networks database among the Trading
Networks instances. The following lists possible scenarios:
 If you cluster your Integration Servers, you should share a single Trading Networks
database among the Trading Networks instances.
 If you do not cluster your Integration Servers (e.g., when one of your adapters does
not work in a clustered environment), you can still share a single Trading Networks
database among the Trading Networks instances.
 You can also use multiple Trading Networks instances that each use their own
database.

Shared Trading Networks Database in a Clustered Environment


For this option, Trading Networks is running on two or more Integration Servers that are
in a clustered environment, and you configure all Trading Networks systems to use the
same database.

Shared Database in a Clustered Environment


Setting up the  Set the tn.cluster.sync.remoteAliases server property for each instance
servers of Trading Networks. For more information about this property,
see “Cluster Properties” on page 468.
 Be sure that all Integration Server system properties are identical
for all servers in the clusters. The Integration Server system
properties are in the
IntegrationServer_directory\config\server.cnf file

 Be sure that the application code you need Trading Networks to


execute (e.g., delivery services, services invoked from processing
rules, etc.) is available on all servers in the cluster.
 See “Configuring Trading Networks for a Clustered
Environment” on page 41 for more information about running
Trading Networks in a cluster.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 37
3 Configuring webMethods Trading Networks

Shared Database in a Clustered Environment


 See the webMethods Integration Server Clustering Guide for more
information about running servers in a cluster.
Behavior of  Changes you make to Trading Networks objects (e.g., profiles,
Trading attributes, TN document types, processing rules, etc.), are
Networks automatically shared by all servers that share the database.
 Changes you make to Trading Networks server properties using
the Administration > Integration > B2B Settings > Configure
Properties page or by invoking the wm.tn.admin:setProperties service
are automatically replicated to all servers in the cluster. For more
information about the wm.tn.admin:setProperties service, see the
webMethods Trading Networks Built-In Services Reference.

Note: If you change the server properties by directly editing the


IntegrationServer_directory\packages\WmTN\config\properties.cn
f file, you must manually make your changes to the properties.cnf
file for each server.

 All configuration data and run-time data (e.g., documents


received from partners, activity log, etc.) is shared among all
instances of Trading Networks in the cluster.

Shared Trading Networks Database in a Non-Clustered Environment


For this option, you configure two or more instances of Trading Networks to use the same
database. The instances of Trading Networks are not running on servers in a clustered
environment.

Shared Database in a Non-Clustered Environment


Setting up the  Set the tn.cluster.sync.remoteAliases server property for each instance
servers of Trading Networks that will be sharing the database. This is
required even though the servers are not clustered. For more
information about this property, see “Cluster Properties” on
page 468.
 Define remote aliases for each server sharing the database. You
set remote aliases using the Server Administrator. This is required
even though the servers are not clustered.
 Be sure that all Integration Server system properties are identical
for all servers. The Integration Server system properties are in the
IntegrationServer_directory\config\server.cnf file.

 Be sure that the application code you need Trading Networks to


execute (e.g., delivery services, services invoked from processing
rules, etc.) is available on all servers.

38 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
3 Configuring webMethods Trading Networks

Shared Database in a Non-Clustered Environment


 You can use a load balancer to “cluster” Trading Networks only if
your application code is stateless and you are not using stateful
processes (e.g., long-running conversations).
 To use My webMethods or the Console query paging feature (e.g.,
Next Page, Previous Page, First Page, Last Page), when you start
My webMethods or the Console, be sure to connect it to one of the
Trading Networks instances. That is, specify the host name and
port name of one of the Trading Networks instances that share
the database, and do not specify the virtual IP address defined by
the load balancer.
Behavior of  Changes you make to Trading Networks objects (e.g., profiles,
Trading attributes, TN document types, processing rules, etc.), are
Networks automatically shared by all servers that share the database.
 Changes you make to Trading Networks server properties using
the Administration > Integration > B2B Settings > Configure
Properties page or by invoking the wm.tn.admin:setProperties service
are automatically replicated to all servers that share the database.
For more information about the wm.tn.admin:setProperties service,
see the webMethods Trading Networks Built-In Services Reference.

Note: If you change the server properties by directly editing the


IntegrationServer_directory\packages\WmTN\config\properties.cn
f file, you must manually make your changes to the properties.cnf
file for each server.

 All run-time data (e.g., documents received from partners,


activity log, etc.) is shared among all instances of Trading
Networks that share the database.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 39
3 Configuring webMethods Trading Networks

Separate Trading Networks Database for Each Instance of Trading Networks


For this option, you have multiple instance of Trading Networks running, but you
configure each to use its own database. Each instance of Trading Networks is unaware of
other the other instances of Trading Networks.

Separate Database for Each Instance of Trading Networks


Setting up the  If you want each instance of Trading Networks to have identical
servers versions of Trading Networks objects (e.g., profiles, attributes, TN
document types, processing rules, etc.), you must use the Trading
Networks’ import/export feature to copy the data from one server
to the other. For more information, see Appendix C, “Exporting
and Importing Database Information”.
 If you want all servers to have identical configurations, you must
ensure that:
 All Integration Server system properties are identical for all
servers. The Integration Server system properties are in the
IntegrationServer_directory\config\server.cnf file.

 All Trading Networks server properties are identical for all


servers. The Trading Networks server properties are in the
IntegrationServer_directory\packages\WmTN\config\proper
ties.cnf file. You can view and set these properties from the
Administration > Integration > B2B Settings > Configure
Properties page of the My webMethods.
 If you want all instances of Trading Networks to be able to handle
all incoming documents, be sure that the application code you
need Trading Networks to execute (e.g., delivery services,
services invoked from processing rules, etc.) is available on all
servers.
 You cannot cluster the Integration Servers because the Trading
Networks database is not shared.
Behavior of  Changes you make to Trading Networks objects (e.g., profiles,
Trading attributes, TN document types, processing rules, etc.), are not
Networks shared by all servers. You need to make the changes to each
instance of Trading Networks if you want to keep them in sync.

40 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
3 Configuring webMethods Trading Networks

Separate Database for Each Instance of Trading Networks


 Changes you make to Trading Networks server properties are not
replicated to all servers. You need to make the changes to each
instance of Trading Networks if you want to keep them in sync.
 An instance of Trading Networks does not share its run-time data
(e.g., documents received from partners, activity log, etc.) with
the other instances of Trading Networks.
 You cannot relate documents sent to and processed by one server
to documents sent by and processed by another server. For
example, an Acknowledgement document that is sent to server A
cannot be related to the Confirmation document if the
Confirmation document is sent to server B.

Configuring Trading Networks for a Clustered Environment


If Trading Networks is running on an Integration Server in a cluster of servers, you can
configure Trading Networks so that the data cached in memory, user accounts, and
Trading Networks properties are synchronized on all servers in the cluster. These
synchronizations are controlled by the tn.cluster.notifyCacheChange,
tn.cluster.notifyProfileAddUser, and tn.cluster.notifyPropertyChange properties in the properties.cnf
file. For information on these properties, see “Cluster Properties” on page 468.

To configure Trading Networks for a clustered environment


T

1 On each Integration Server in the cluster, create a remote server alias for the other
servers in the cluster. For example, if you have two servers (Server1 and Server2) in
the cluster, you would create a remote server alias for Server2 on Server1, and a
remote server alias for Server1 on Server2. For information on how to create a remote
server alias, see Administering webMethods Integration Server.

Important! If you have already created a remote server alias so the server is part of
an Integration Server cluster (without Trading Networks), you need to create an
additional remote server alias for the server specifically for the Trading Networks
cluster.

2 To update the Trading Networks properties.cnf file for each Integration Server in the
cluster, perform the following:
a In My webMethods: Administration > Integration > B2B Settings > Configure Properties.
b Add or update the following properties:

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 41
3 Configuring webMethods Trading Networks

For this property... Specify...

tn.cluster.sync.remoteAliases The remote server aliases you created in step 1.


tn.query.threshold The number of rows of query results that Trading
Networks stores in the session object.
If you are using Trading Networks in a cluster,
Trading Networks should not store query results
in the session object. To prevent Trading
Networks from storing query results in the
session object, set this property to “-1”.
Example: To indicate that you do not want
Trading Networks to store query results in a
session object because you are using Trading
Networks in a cluster, specify the following:
tn.query.threshold=-1

c Ensure the following properties are set to true:

Set this property to true... To notify all servers in the cluster about...

tn.cluster.notifyCacheChange A change to data cached in memory


tn.cluster.notifyProfileAddUser New user accounts
tn.cluster.notifyPropertyChange A change to Trading Networks properties

Important! When you use the Administration > Integration > B2B Settings >
Configure Properties page and save your updated properties, Trading
Networks updates all the properties with their values including those that you
might not have altered.
This is important if you are using Trading Networks in a clustered
environment and have the tn.cluster.notifyPropertyChange property set to true.
Using the Configure Properties page to update properties when you are in a
clustered environment will cause Trading Networks to synchronize all
properties each time you use this page. If you want the servers in the cluster to
maintain different values for some of the properties, set the
tn.cluster.notifyPropertyChange property to false, and maintain the properties for
each server individually.

For a description of the properties used in this procedure, see ““Cluster


Properties” on page 468.
d Click Save.

42 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
3 Configuring webMethods Trading Networks

After completing the above procedure, the data cached in memory, user accounts, and
Trading Networks properties are automatically synchronized on all Integration Servers in
the cluster. To turn one of these synchronizations off for a server, modify the respective
property in the Trading Networks properties.cnf file. For example, if you wanted to
manually control user account creation, you would disable automatic user account
creation by turning off the tn.cluster.notifyProfileAddUser property.

Configuring Partner Profile Settings for the Trading Networks


Console
When you use the Console to add a profile for a partner, Trading Networks can create an
Integration Server user account for the partner. Trading Networks uses the value of one of
the external IDs (e.g., D-U-N-S number) that you specify in the profile for the user name.
The external ID that Trading Networks uses is the value of the default external ID type.
You configure the default external ID type that Trading Networks uses for the IS user
account.
When you create a profile from Console, if you do not want Trading Networks to define
an Integration Server user account for a profile, you can configure Trading Networks so
that it never creates an Integration Server user account.

Note: When you create a profile for a partner using My webMethods, Trading
Networks does not automatically create a user account, and you cannot configure it to
do so. However, you can always associate one or more My webMethods user
accounts with a profile. For more information, see “Managing the My webMethods
Users Associated with the Partner’s Profile” on page 174. For information about a My
webMethods user account is used, see “Central User Management—How Integration
Server Authorizes My webMethods Users” on page 58.

To configure profile settings, perform the following procedure:

To configure profile settings when you create a profile from the Console

1 In My webMethods: Administration > Integration > B2B Settings > Configure Properties.
2 Set whether Trading Networks should create a user account when a profile is added.
 To indicate that Trading Networks should not create an IS user account, add or
update the tn.default.userCreation to false.
 To indicate that Trading Networks should create an IS user account:
1 Add or update the tn.default.userCreation to true.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 43
3 Configuring webMethods Trading Networks

2 To identify the external ID to use for the IS user account created for a profile
that is added from the Console, add or update the tn.default.idType property.
Specify the external ID type (e.g., DUNS) that Trading Networks uses for the
user name of an IS user account that it creates for the partner.
3 Click Save.

Configuring E-mail Settings for Document Delivery


You can configure settings Trading Networks uses when delivering documents via an
e-mail message, specifically, the “from” e-mail address and subject line that you want
Trading Networks to use in the e-mail messages.

To configure e-mail settings for document delivery

1 In My webMethods: Administration > Integration > B2B Settings > Configure Properties.
2 Add or update the following properties to configure how Trading Networks
performs document delivery:

For this property... Specify...

tn.mail.from The e-mail address you want Trading Networks to use as the
“from” e-mail address in the e-mail messages that it sends to
deliver a document when instructed to use an E-mail delivery
method.
Example: If you want the e-mail messages to use the “from” e-
mail address TNAdmin@ifc.com, specify the following:
tn.mail.from=TNAdmin@ifc.com

tn.mail.subject The subject line you want Trading Networks to use in the e-
mail messages that it sends to deliver a document when
instructed to use an E-mail delivery method.
Example: If you want the e-mail messages to use the subject line
“Document from IFC”, specify the following:
tn.mail.subject=Document from IFC

3 Click Save.

44 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
3 Configuring webMethods Trading Networks

Configuring Tasks Settings


Trading Networks establishes tasks when it is to deliver a document using reliable delivery
or when it is to asynchronously execute a service using reliable execution. You can
configure settings that Trading Networks uses when processing these tasks. For more
information about these tasks, see “Using Reliable Delivery with Immediate Delivery
Method” on page 346 and “Service Execution Tasks and Reliable Execution” on page 337.

Note: If you want to be notified when tasks fail, you need to create an Integration
Server trigger that subscribes to the wm.tn.rec:TaskFailure IS document type. For more
information, see the Publish-Subscribe Developer’s Guide.

To configure tasks settings

1 In My webMethods: Administration > Integration > B2B Settings > Configure Properties.
2 Add or update the following property to configure settings that affect both delivery
and service execution tasks:

For this property... Specify...

tn.task.sweepTime The number of seconds the reliable task manager thread


remains idle before checking for tasks it needs to perform
(for example, a task to deliver a document or execute a
service). The task manager thread becomes idle when all
tasks are completed, failed, or in the wait period between
attempts.
The task manager thread waits the number of seconds you
specify with this property before waking up to check for
tasks it needs to process. The tasks that the task manager
attempts to process when it wakes up are those tasks that
failed on their last attempt and have not yet reached their
retry limit

Note: The task manager wakes up immediately if a new task arrives.

The value you specify for tn.task.sweepTime can affect how long Trading Networks
waits between attempts to retry a task. Typically, the wait between retries value is
governed by one of the following:

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 45
3 Configuring webMethods Trading Networks

Type of task Wait between retries is governed by…

Delivery The Wait between retries value on the Delivery Method tab of the
receiving partner’s profile.
Service The tn.task.ttw property value.
execution

However, Trading Networks could wait as long as the tn.task.sweepTime value. If the
task manager thread is idle when the wait between retries value expires, the task
manager thread will not wake up to process the task until the tn.task.sweepTime value
expires.
3 Add or update the following properties to configure settings that affect only service
execution tasks. These settings configure how many times Trading Networks
attempts to execute services that use reliable execution and how long Trading
Networks waits between attempts to re-execute a service that failed.

For this property... Specify...

tn.task.maxRetries The number of times you want Trading Networks to attempt


to re-execute a service. Specify a whole number.
tn.task.ttw The number of milliseconds you want Trading Networks to
wait before making its first attempt to re-execute a service
when the first attempt failed. (Trading Networks uses the
tn.task.retryFactor value along with the tn.task.ttw value to calculate
how long to wait for subsequent retry attempts.)
tn.task.retryFactor The factor you want Trading Networks to use when
determining how long to wait before making the second and
subsequent attempts to re-execute the service. Trading
Networks calculates the time to wait by multiplying the last
wait time by the tn.task.retryFactor value. Specify a whole
number greater than zero for tn.task.retryFactor.
Example: The following shows sample values for the these
properties and how they affect the wait times between
attempts to re-execute a failed service.
tn.task.maxRetries = 3
tn.task.ttw = 10000ms
tn.task.retryFactor = 3

Retry 1 Retry 2 Retry 3


Wait until next attempt 10000 ms 30000 ms 90000 ms

4 Click Save.

46 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
3 Configuring webMethods Trading Networks

Enabling Task Failure Notification


If you want to be notified when a task fails, make sure the tn.task.notifyFailure property is set
to “true”. When this property is true, Trading Networks publishes an IS document with
the format defined by the wm.tn.rec:TaskFailure IS document type.
You can create an Integration Server trigger that subscribes to IS documents of this IS
document type. For information on creating an Integration Server trigger, see the Publish-
Subscribe Developer’s Guide.

To configure Trading Networks to publish an IS document when a task fails


To

1 In My webMethods: Administration > Integration > B2B Settings > Configure Properties.
2 Add or update the following property to enable Trading Networks to publish an IS
document in the event that a task fails:

For this property... Specify...

tn.task.notifyFailure Either true or false.


 true if you want Trading Networks to publish an IS
document
 false if you do not want Trading Networks to publish an
IS document

3 Click Save.

Configuring Trading Networks for Large Document Handling


As installed, Trading Networks acts on all documents in the same manner regardless of
their size. You can configure Trading Networks to handle large documents differently.
You also configure the document size that Trading Networks should treat as large. For
more information about the areas in Trading Networks that are affected by large
document handling, see Appendix F, “Large Document Handling”.
For more information about large document handling, see Understanding webMethods
B2B: webMethods Trading Networks Concepts Guide.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 47
3 Configuring webMethods Trading Networks

Minimum Hardware Requirements for Large Document Handling


The following lists the required minimum requirements and the recommended hardware
requirements for using the Large Document Handling facility of Trading Networks.

Required Recommended

Hard Disk Space RAM # of CPUs Hard Disk Space RAM # of CPUs

100 MB† 512 MB 1CPU 256 MB† 1 GB 2CPU



Note that this is only the space required for normal processing. See the Important! note below for
more information about additional hard disk drive space required for large document handling.

Important! The hard disk drive space listed above identifies only the amount of hard
disk drive space that Trading Networks requires for normal processing. It does not
account for the hard disk drive space that is necessary for temporarily saving the
large documents during processing. To use large document handling, you need to
define hard disk drive space where Trading Networks can temporarily save
documents (rather than store them in memory).
The size of the hard disk drive space for temporarily saving documents will vary
based on the number of documents that you process concurrently and the size of the
documents that you process. For example, if your typical concurrent document load
is 10, you would need a hard disk drive space that is 10 to 15 times the combined size
of the documents being processed concurrently.

Steps for Configuring Large Document Handling


To use large document handling, you need to set configuration properties in the Trading
Networks properties file and perform configuration tasks on the Integration Server.

Setting Properties in the Trading Networks Properties File


To configure Trading Networks to use large document handling, perform the following
procedure.

To configure Trading Networks for large document handling


T

1 In My webMethods: Administration > Integration > B2B Settings > Configure Properties.
2 Add or update the following properties:

48 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
3 Configuring webMethods Trading Networks

For this property... Specify...

tn.BigDocThreshold How many bytes a document must contain for Trading


Networks to consider the document to be large. Specify one
of the following:
-n: Specify a negative number to have Trading Networks
consider no documents as large. Trading Networks
processes all documents in the traditional manner, reading
the document content into memory during processing. The
default is -1.
0: Specify zero to have Trading Networks consider all
documents as large. Because all documents that Trading
Networks receives contains more than 0 bytes, Trading
Networks uses large document handling for all documents.
n: Specify a positive whole number to indicate the number
of bytes over which Trading Networks considers a
document large. For example, if you specify the following,
Trading Networks considers all documents greater than
1,000,000 bytes as large:
tn.BigDocThreshold=1000000

tn.xml.xqlThreshold The number of bytes that Trading Networks reads into


memory to perform the XQL queries in a TN XML
document type. In your TN XML document types, if you
have XQL queries that point to nodes beyond the number of
bytes that Trading Networks reads, the queries will fail. For
more information, see “Defining TN XML Document
Types” on page 247.
Specify a positive whole number. For example, if the XQL
queries that you specify reference nodes in the first 50,000
bytes of the document, specify the following:
tn.xml.xqlThreshold=50000

If you do not specify a value for tn.xml.xqlThreshold, Trading


Networks uses the number of bytes that you specify for
tn.BigDocThreshold. If you do not specify a value for
tn.BigDocThreshold, or if the value that you specify is
negative, Trading Networks defaults to 1,000 bytes. Trading
Networks needs to read at least 1,000 bytes to perform
document recognition.

3 Click Save.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 49
3 Configuring webMethods Trading Networks

Increasing the Size of the Largest Document that Can Be Saved When Using
DB2
When defining columns for a DB2 database, DB2 requires that you specify a size limit.
When defining the Trading Networks database, the DB2 SQL script defines the size of the
BizDocContent.Content field in the BIZDOCCONTENT table to have a 2M size limit. As
a result, the largest document that Trading Networks can save to the DB2 database is 2M.
If you are using a DB2 database for the Trading Networks database and want to save
documents that are larger than 2M, you must update the size limit for the
BizDocContent.Content field to accommodate the largest document you expect to
process.
Similarly, if you use the Trading Networks Archive tables, you must also update the size
of the ARCHIVE_BizDocContent.Content field.

Configuring the Integration Server


In addition to setting configuration properties for Trading Networks, you also need to
configure settings for the webMethods Integration Server. To configure the Integration
Server, update the following properties in the Integration Server configuration file:
IntegrationServer_directory\config\server.cnf
Before you edit the configuration file, shut down the Integration Server. After you make
the changes, restart the server.

For this property... Specify...

watt.server.tspace.location The absolute directory path of the hard disk drive space
where Trading Networks is to temporarily store large
documents rather than keep them in memory. Each file that
the Integration Server stores in this directory is given the
name DocResxxxxx.dat, where xxxxx is a value that can
vary in length and character. The directory you specify is
on the same machine as the Integration Server. For
example:
 For Windows:
watt.server.tspace.location=D:\LargeDocTemp

 For UNIX:
watt.server.tspace.location=/opt/webmethods/
tspace

If you do not specify a value for


watt.server.tspace.location, Trading Networks uses the
value defined by the Java system property java.io.tmpDir,
which defaults to the value of the environment variable
Temp on most platforms.

50 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
3 Configuring webMethods Trading Networks

For this property... Specify...

Note: If you are setting up large document handling for


multiple webMethods components (e.g., Trading
Networks, webMethods EDI Module, and webMethods
RosettaNet Module), use this property to define a single
hard disk drive location. All components use the same
location and the Integration Server manages allotting space
to each component.

watt.server.tspace.max The maximum number of bytes that can be stored at any


one time in the hard disk drive space that you defined
using the watt.server.tspace.location property. If
Trading Networks (or another webMethods component)
attempts to write a large document to the hard disk drive
space that will cause the number of bytes you specify to be
exceeded, an error message is displayed on the server
console and the document is not stored. Specify any
positive whole number of bytes. The default is 52,428,800
bytes (50 MB). For example:
watt.server.tspace.max=30000000

Important! The size of the hard disk drive space for


temporarily saving documents will vary based on the
number of documents that you process concurrently and
the size of the documents that you process. For example, if
your typical concurrent document load is 10, you would
need a hard disk drive space that is 10 to 15 times the
combined size of the documents being processed
concurrently.

Note: If you are setting up large document handling for


multiple webMethods components, all components use
this property. The Integration Server ensures that the hard
disk drive space use for all components does not exceed
the value you specify.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 51
3 Configuring webMethods Trading Networks

For this property... Specify...

watt.server.keepAliveTimeout The maximum number of milliseconds that you want the


Integration Server to wait for a response after making a
request to read from a network InputStream.
When you submit a document using a Java InputStream
over a network to the Integration Server, the Integration
Server makes a request to read from the InputStream. The
Integration Server waits the amount of time you specify
with the watt.server.keepAliveTime property for a
response. If the Integration Server does not receive a
response in the specified amount of time, it times out with
the error “Connection reset by peer”.
Specify a whole number greater than zero. It is
recommended that you set this property to 180000 (3
minutes), for example:
watt.server.keepAliveTime=180000

The default value is 15000 (15 seconds).

52 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
3 Configuring webMethods Trading Networks

For this property... Specify...

Note: The value you specify with


watt.server.keepAliveTime does not need to be long
enough to accommodate reading the entire document.
Rather it is just to accommodate the length of time it takes
to receive a response to a read request.

watt.server.tspace.timeToLive The number of milliseconds that you want Integration


Server to temporarily store documents in TSpace rather
than keep them in the memory.
Setting this property prevents the deletion of a document
as soon as it is created, thus preventing any resulting
exceptions that occur while you try to read back from the
document.
For example, if you set this property to 180000
milliseconds as below, Integration Server deletes the
documents from TSpace three minutes after they are
created.
watt.server.tspace.timeToLive=180000

The default value is 0 (zero). A value of 0 (zero) indicates


that Integration Server deletes the documents from TSpace
only after it creates a new document in TSpace.
For example, consider that TSpace contains 10 documents
and the value of this property is set to 0 (zero). Only after
Integration Server creates a new document, Integration
Server deletes all the 10 documents from TSpace.

Improving Trading Networks Performance During Searches


To improve performance of Trading Networks while performing searches, you can set a
limit for the search results. In addition, you can set to periodically delete the search
results stored in the cache.
Trading Networks uses the Hybrid eviction policy to delete the search results from the
cache. Hybrid eviction policy determines which result rows to delete based on the
combination of how often and how recently the rows were accessed. The rows that were
least frequently accessed and were not accessed for the longest period are deleted.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 53
3 Configuring webMethods Trading Networks

Set a Limit for Search Results


To set a limit for the search results, you must perform configuration tasks on the
Integration Server and set the configuration properties in the Trading Networks
properties file.

Configuring the Integration Server

To limit the search results

1 Shut down Integration Server.


2 Open the IntegrationServer_directory\config\Cache\webm-cache-config.xml file and
edit the following XML tags within the XML tag <localScheme>:

For this XML tag... Specify...

<highUnits> The maximum number of rows that Trading Networks


can cache for searches of all users. Use the format:
<highUnits>value</highUnits>, where value is the total
number of rows.
Example: <highUnits>50000</highUnits>
When specifying the <highUnits> values, consider the
number of users and the average number of rows in the
production database. For example, if there are 10 users,
and the average number of result rows for each user is
5000, then you might want to set the <highUnits> value
to 2500000.
<lowUnits> The number of rows of the search when once reached
triggers Trading Networks to start the eviction, that is,
deleting the search results from the cache. Use the
format:
<lowUnits>value</lowUnits>, where value is the number
of rows.
Example: <lowUnits>37500<lowUnits>
The recommended value is 75 percent of the value you
provide in the <highUnits> tag.

3 Restart Integration Server.

Setting Properties in the Trading Networks Properties File


To configure Trading Networks to improve performance during searches, do the
following:

54 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
3 Configuring webMethods Trading Networks

To configure Trading Networks for searches


T

1 In My webMethods: Administration > Integration > B2B Settings > Configure Properties.
2 Add or update the following properties:

For this property... Specify...

tn.db.fetchMaxRows The maximum number of result rows that Trading


Networks must retrieve from the database for each query.
The default is 10000 rows.
tn.db.sortDocTimestamp Whether Trading Networks must sort the result rows
based on their timestamps in the descending order.
 Set to true, if you want Trading Networks to sort the
result rows. This is the default.
 Set to false, if you do not want Trading Networks to
sort the result rows.

3 Click Save.

Delete Search Results Periodically


To delete search results periodically, you must perform configurations tasks in
Integration Server.

Configuring Integration Server

To configure Integration Server for searches


T

1 Shut down Integration Server.


2 Open the IntegrationServer_directory\config\Cache\webm-cache-config.xml file and
edit the following XML tags within the XML tag <localScheme>:

For this XML tag... Specify...

<expiryDelay> The time in minutes after which a cached row is considered


expired. A cached row can be deleted only after it has
expired. Use the format:
<expiryDelay>value</expiryDelay>, where value is the time
in minutes after which the cached row is considered
expired.
Example: <expiryDelay>15m</expiryDelay>, where 15m
indicates 15 minutes of time.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 55
3 Configuring webMethods Trading Networks

For this XML tag... Specify...

<flushDelay> The time interval in minutes between periodic cache flushes


of the expired rows. Use the format:
<flushDelay>value</flushDelay>, where value is the time
interval in minutes.
Example: <flushDelay>20m</flushDelay>, where 20m
indicates 20 minutes of time. That is, Trading Networks
flushes the expired rows every 20 minutes.
The first flush starts when the number of rows mentioned in
the <lowUnits> tag have been cached.

3 Restart Integration Server.

Other Configuration Settings


For instructions on how to perform the following configuration tasks, see Administering
webMethods Integration Server:
 Setting or updating the webMethods Integration Server license key
 Defining listening ports
 Allowing and denying inbound connections to the Integration Server
 Specifying a proxy server
 Specifying error message recipients

56 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
4 Configuring My webMethods to Work with Trading
Networks

 Central User Management—How Integration Server Authorizes My webMethods Users . . . . . . 58


 Defining Trading Networks Administrators for My webMethods . . . . . . . . . . . . . . . . . . . . . . . . . . 64
 Granting My webMethods Users the Authority to Execute Trading Networks Services . . . . . . . . 65
 Defining Role-Based Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
 Configuring How Long My webMethods Waits for a Response . . . . . . . . . . . . . . . . . . . . . . . . . . 76
 Configuring Resubmission and Reprocessing Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 57
4 Configuring My webMethods to Work with Trading Networks

Central User Management—How Integration Server


Authorizes My webMethods Users
To use My webMethods as an administration and monitoring user interface for Trading
Networks, you must configure Central User Management in Integration Server. Central
User Management is a feature that allows Integration Server to use the credentials of a
My webMethods user account to authenticate a user and to determine whether the user is
authorized for an action.

How Trading Networks Uses Central User Management


Trading Networks uses Central User Management for the following:
 When a My webMethods user who has Trading Networks administrator authority
wants to perform an action that requires My webMethods Server to execute a service
on the Integration Server, the user can be authenticated and the request authorized by
presenting the user’s My webMethods user credentials.

Note: After Central User Management is set up, you still need to take action to
grant a My webMethods user Trading Networks administrator authority. For
instructions, see “Defining Trading Networks Administrators for My
webMethods” on page 64.

 When a My webMethods user wants to view Trading Networks data and/or perform
Trading Networks actions, My webMethods Server invokes Trading Networks
services on the Integration Server to satisfy the request. When issuing the requests,
My webMethods Server presents the credentials of the logged in My webMethods
user to authenticate the user and authorize the request. For more information, see
“Granting My webMethods Users the Authority to Execute Trading Networks
Services” on page 65.

Note: After Central User Management is set up, you need to perform additional
actions to authorize users to perform various Trading Networks actions from My
webMethods. For more information, see “Defining Role-Based Access” on
page 65.

 When a Trading Networks partner sends a document to Trading Networks, it invokes


a Trading Networks service, for example, wm.tn:receive. The Trading Networks partner
can invoke the service using the credentials of a My webMethods user account. For
information about assigning partners a My webMethods user account, see
“Managing the My webMethods Users Associated with the Partner’s Profile” on
page 174 in the Chapter 9, “Defining and Managing Partner Profiles”.

58 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
4 Configuring My webMethods to Work with Trading Networks

Setting Up Central User Management


You can set up Central User Management so that My webMethods can be used as a
Trading Networks user interface.

To set up Central User Management to enable the usage of My webMethods with Trading
Networks

1 Configure the Integration Server to use Central User Management. For more
information, see “Configuring Central User Management in Integration Server” on
page 59.
2 Identify the Integration Server that My webMethods should interact with for Trading
Networks requests. For more information, see “Identifying Trading Networks Server
to My webMethods Server” on page 59.
After Central User Management is set up, My webMethods users can be authorized to
perform Trading Networks functions by making them members of My webMethods
roles. For more information, see “How the Integration Server Authorizes a User” on
page 62.

Configuring Central User Management in Integration Server


For instructions on how to configure Integration Server to use Central User Management,
see Administering webMethods Integration Server.
The configuration task that must be completed in order for Trading Networks to use
Central User Management is connecting Integration Server to the My webMethods Server
(MWS) database component.

Identifying Trading Networks Server to My webMethods Server


For My webMethods Server to identify which host and port to use to connect with
Trading Networks, you must identify Trading Networks Server, that is, Integration Server
on which Trading Networks is running, to My webMethods Server.
You can connect to multiple Trading Networks Server instances using only one My
webMethods Server instance. To do so, you must identify the Trading Networks Server
instances to the My webMethods Server instance. For information about how multiple
Trading Networks Server instances work with one My webMethods Server instance, see
“Using One My webMethods Instance for Multiple Trading Networks Instances” on
page 60.
All users can update the Trading Networks Server settings.

To identify the Trading Networks Server to My webMethods Server

1 In My webMethods:
Administration > Integration > B2B Settings > Administrative Preferences.
2 In the TRADING NETWORKS SERVER panel, do the following:

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 59
4 Configuring My webMethods to Work with Trading Networks

a In the IS Config Name field, click Other. Type the Trading Networks Server name
that you want to connect to. The default is LocalHost (http://localhost:5555).
b In the Server Hostname field, type the host name or IP address of the server that
hosts the Trading Networks Server. The default is localhost.
c In the Server Port field, type the port number for the Trading Networks Server. The
default is 5555.
d Select Use Secure Connection if you want to secure the communication between My
webMethods and the Trading Networks Server instance.
3 Click Save.
4 To continue adding Trading Networks Server instances, repeat steps step 2 and step 3.

Note: The fields in the General panel can be edited only by the administrator. If you are
not the administrator, all the fields in the General panel are grayed out.

Deleting Trading Networks Server to My webMethods Server

To delete the Trading Networks Servers to My webMethods Server

1 In My webMethods:
Administration > Integration > B2B Settings > Administrative Preferences.
2 In the Trading Networks Server panel, do the following:
a In the IS Config Name field, select the Trading Networks Server that you want to
delete.
b Click Delete.

Using One My webMethods Instance for Multiple Trading


Networks Instances
When you use one My webMethods Server instance for multiple Trading Networks
Server instances, each user that has logged on to a My webMethods Server can connect to
different Trading Networks Server instances.
For every user that logs on to My webMethods Server, My webMethods Server creates a
session that expires only after the user logs off. This per user session aspect ensures that
when multiple My webMethods users from one My webMethods instance connect to
multiple Trading Networks instances, every user is independent of each other.
If a user logs on with the user credentials of another user who has already logged on, and
makes changes to the Trading Networks Server settings, those changes do not affect the
other user until the session expires. If the user deletes a Trading Networks Server that the
other user is connecting to, then the other user is not affected by the changes until the
user visits the Administration > Integration > B2B Settings > Administrative Preferences page.

60 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
4 Configuring My webMethods to Work with Trading Networks

For example, consider that you and user A log on with the same credentials at the same
time, and user A updates the Trading Networks Server settings. The setting changes for
user A take effect immediately. However, you will not be affected by the changes until
you log off and log on again. If user A deletes the Trading Networks Server you are
connecting to, you will not be affected by the changes until you visit the Administrative
Preferences page.
When you want to access a Trading Networks Server instance from different My
webMethods Server instances, then ensure either of the following:
 The My webMethods Server instances are in a clustered environment.
 The roles and the user preferences configured in the My webMethods Servers are the
same.

How the Integration Server Authenticates a User


When using Central User Management, when the Integration Server receives a user name
and password to authenticate, it first attempts to authenticate the user using its own user
account definitions. If the user is not defined among IS user accounts, Integration Server
then uses Central User Management. It determines whether the user account is defined in
My webMethods, and if so, ensures the user supplied valid My webMethods credentials.
When you use other authentication methods such as client-side certificate authentication
and third party tools, My webMethods passes an authentication token to Integration
Server. For Integration Server to accept this token, you must indicate the location of the
SAML resolver in My webMethods Server. SAML resolver enables the exchange of the
authentication information between My webMethods Server and the Integration Server
instance you are connecting to.
To indicate the SAML resolver location, you must set the watt property
watt.server.auth.samlResolver on every Integration Server instance that My
webMethods Server will communicate with.

To specify the SAML resolver location

1 Shut down Integration Server.


2 Open the IntegrationServer_directory\config\server.cnf file, and set the
watt.server.auth.samlResolver property as follows:
watt.server.auth.samlResolver=http://host name:port/services/SAML

where host name is the host name or IP address and port is the port number of My
webMethods Server.
If you do not set this parameter, Integration Server uses
http://localhost:8585/services/SAML as the default SAML resolver.

3 Restart Integration Server.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 61
4 Configuring My webMethods to Work with Trading Networks

How the Integration Server Authorizes a User


To authorize a request, the Integration Server determines whether the user can access the
requested IS service; access to IS services is protected by Access Control Lists (ACLs).
When using Central User Management, you can add My webMethods groups and roles
to the Allowed list of ACLs. As a result, Integration Server will allow access to the service
if the ACL allows access to the group or role to which theMy webMethods user belongs.
The following table lists the ACLs used for Trading Networks functionality, the
corresponding My webMethods roles, how the roles are added to the ACL, and how
users are added to the My webMethods role.
r

How My webMethods
Corresponding My How the role is added users are added to the
IS ACL webMethods role to the ACL My webMethods role
TNAdministrators TN The TN You must manually
Administrators Administrators role add My
is added to the webMethods users
Allowed list of the to the TN
TNAdministrators Administrators
ACL at startup. For Role. For
more information, instructions, see
see “How Trading “Defining Trading
Networks Adds My Networks
webMethods Roles Administrators for
to ACLs” on My webMethods”
page 63. on page 64
TNMWSUsers TN MWS Users The TN MWS Users When a My
role is added to the webMethods role is
Allowed list of the given general
TNMWSUSers ACL functional
at startup. For more permissions or data
information, see permissions, that
“How Trading role is added as a
Networks Adds My member of the TN
webMethods Roles MWS Users role. For
to ACLs” on more information
page 63. about general
functional
permissions and
data permissions,
see “Defining Role-
Based Access” on
page 65.

62 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
4 Configuring My webMethods to Work with Trading Networks

How My webMethods
Corresponding My How the role is added users are added to the
IS ACL webMethods role to the ACL My webMethods role
TNPartners TN Partners The TN Partners When you use My
role is added to the webMethods to
Allowed list of the define a partner
TNPartners ACL at profile, you can
startup. For more associate one or
information, see more My
“How Trading webMethods users
Networks Adds My with the partner.
webMethods Roles Trading Networks
to ACLs” on automatically adds
page 63. users associated
with a partner to the
TN Partners role.
For instructions
about associating
My webMethods
users with a partner,
see “Managing the
My webMethods
Users Associated
with the Partner’s
Profile” on page 174
in Chapter 9,
“Defining and
Managing Partner
Profiles”.

How Trading Networks Adds My webMethods Roles to ACLs


When you start the Integration Server and Trading Networks server is started, Trading
Networks determines:
 Whether Central User Management is configured, and
 Whether the My webMethods TN Administrators, TN MWS Users, and TN Partners
roles exist
If both Central User Management is configured and the My webMethods roles exist,
Trading Networks adds the My webMethods roles to their corresponding ACLs. That is
Trading Networks adds:
 TN Administrators role to the TN Administrators ACL
 TN MWS Users role to the TNMWSUsers ACL
 TN Partners role to the TNPartners ACL

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 63
4 Configuring My webMethods to Work with Trading Networks

After Trading Networks maps the My webMethods roles to their corresponding ACLs, it
updates the watt.WmTN.mwsMap property, which is in the Integration Server server.cnf
file. Trading Networks sets the watt.WmTN.mwsMap property to the Trading Networks
version number. After this property is updated, Trading Networks will no longer attempt
to map the My webMethods roles to their corresponding ACLs at startup.
If you want to force Trading Networks to create these mappings again, you can edit the
Integration Server server.cnf file and remove the watt.WmTN.mwsMap property. As a
result, when Trading Networks starts up again, it will go through its processing to create
the mappings.

Defining Trading Networks Administrators for My


webMethods
Trading Networks administrator authority allows the users to:
 Perform Trading Networks administrative task in My webMethods, which are
described in this chapter.
 View all Trading Networks data and perform all Trading Networks actions within My
webMethods.
In addition, the Trading Networks administrator authority extends to all Trading
Networks functions accessed via the Integration Server.
To grant Trading Networks administrator authority to a My webMethods user, make any
of the following a member of the TN Administrators role:
 The user itself
 A group to which the user belongs
 A role to which the user belongs
The following procedure describes how to assign a My webMethods user to the role. To
learn more role membership, including making groups or roles members of a role, see
Administering My webMethods Server.

Note: If the user to which you want to grant Trading Networks administrator
authority does not already have a My webMethods user account, create a user
account for the user. You create a user using the Administration > System-Wide >
User Management > Users page. For instructions, see Administering My webMethods
Server.

To grant a user Trading Networks administrator authority

1 In My webMethods:
Administration > System-Wide > User Management > Roles.

2 On the Roles page, click EDIT in the row for the TN Administrators role.

64 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
4 Configuring My webMethods to Work with Trading Networks

3 Click the Members tab.


4 Click Edit Members.
5 Use the SELECT PRINCIPAL(S) dialog to add the My webMethods user to the role.
For help with this step, see information about editing the membership of a static role
in Administering My webMethods Server.
6 Click Apply to close the SELECT PRINCIPAL(S) dialog.
7 Click Save to save the changes to the TN Administrators role.

Granting My webMethods Users the Authority to Execute


Trading Networks Services
When a My webMethods user issues a request that requires access to Trading Networks
data, My webMethods Server, in turn, attempts to execute a Trading Networks service on
the Integration Server to perform the requested action, and then displays the results in
My webMethods. To execute the service, My webMethods Server uses the credentials of
the logged in My webMethods user. As a result, the My webMethods user must have the
correct privileges in the Integration Server to execute the service.
In the Integration Server, the Trading Networks services are protected by the
TNMWSUsers ACL. To allow My webMethods users to execute the service, the My
webMethods “TN MWS Users” role must be added to the Allowed list of the
TNMWSUsers ACL.
After the TN MWS Users role is made a member of the TNMWSUsers ACL, further
action is still required to allow a user to perform a Trading Networks actions. You still
need to grant the user’s role the appropriate data permissions and/or general functional
permissions. For more information, see “Defining Role-Based Access” on page 65.

To add the TN MWS Users role to the TNMWS ACL

You do not need to take any action. The TN MWS Users role is added to the Allowed list
of the TNMWSUSers ACL at installation.

Defining Role-Based Access


Role-based access allows you to grant or restrict access to Trading Networks functionality
within My webMethods based on the role membership of My webMethods users. That is,
to view Trading Networks data (for example, information about a delivery task) and to
perform actions against that data (for example, restart a task), you must be a member of
role to which that permission has been granted.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 65
4 Configuring My webMethods to Work with Trading Networks

The two types of permissions are general functional permissions and data permissions.
The data and actions that you control using each are distinct. For more information
about:
 General functional permissions, see “Data and Actions Governed by General
Functional Permissions” on page 66.
 Data permissions, see “Data and Actions Governed by Data Permissions” on page 68.

Note: Trading Networks role-based access is only applicable to access via My


webMethods. There is no role-based access in Trading Networks Console. A Console
user continues to have administrative privileges to perform all functions available in
the Console.

Role-Based Access is Cumulative


If a user belongs to multiple My webMethods roles, the user can perform the actions
granted to all of the roles that the user is a member of.

Data and Actions Governed by Role-Based Access


This section describes the data and actions governed by:
 General functional permissions
 Data permissions

Data and Actions Governed by General Functional Permissions


The following table describes the Trading Networks general functional permissions that
you can assign to grant access to Trading Networks functionality in My webMethods. The
table lists the data governed by each general functional permission and the actions a role
can perform when assigned the permission. For more information about granting
permissions, see “Granting General Functional Permissions to a Role” on page 71.

Functional permission Actions a role can perform when assigned this functional permission
Manage Public Use the Administration > Integration > B2B > Public Queues page to
Queues manage (add, edit, delete) all public queues.
Manage Partner Use the Administration > Integration > B2B > Partner Groups page to
Groups manage (add, edit, delete) all partner groups.
Delete Partner Delete any partner profile. If a user’s role is granted this
Profile functional permission, Trading Networks displays the Delete
button on the Administration > Integration > B2B > Partner Profiles
page.

66 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
4 Configuring My webMethods to Work with Trading Networks

Functional permission Actions a role can perform when assigned this functional permission
Manage Extended Manage (add, edit, delete) all extended profile fields. If a user’s
Profile Fields role is granted this functional permission, Trading Networks
displays the Manage Extended Fields button on the Extended Fields
tab of a profile.
Add External ID Add new external ID types that can be used in profiles. If a
Types user’s role is granted this functional permission, Trading
Networks displays the Add ID Type button on the External IDs tab
of a profile.
Show SQL View the SQL Trading Networks uses to search the database for
data. This is for a search that was issued from a Trading
Networks search panel within My webMethods. If a user’s role
is granted this functional permission, Trading Networks
displays the Show SQL button on the search panel where this
feature is supported.
View User Use the Monitoring > Integration > B2B > User Preferences page to
Preferences view (but not update) user preferences.
Edit User Use the Monitoring > Integration > B2B > User Preferences page to
Preferences update user preferences.
View B2B properties Use the Administration > Integration > B2B Settings > Configure
Properties page to view (but not update) the settings for the
Trading Networks Server properties.
Edit B2B properties Use the Administration > Integration > B2B Settings > Configure
Properties page to edit Trading Networks Server properties.
Query Expiring Use the Administration > Integration > B2B Settings > Partner
Certificates Certificates page to query partner certificates that have expired
or that will expire soon.
Manage TN Use the Administration > Integration > B2B > Archive Schedules page
Archiving to manage (add, edit, delete) the criteria and schedules for
archiving and deleting documents.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 67
4 Configuring My webMethods to Work with Trading Networks

Functional permission Actions a role can perform when assigned this functional permission
Manage Delivery Manage (add, edit, delete) the immediate delivery methods that
Methods a user creates using the delivery methods that Trading
Networks provides (for example, HTTP, FTP, FTPS).
If this permission is not assigned, the user can only use the
built-in immediate delivery methods and the immediate
delivery methods that have been added by other users for
whom this functional permission is set.
Submit Documents Use the Administration > Integration > B2B Settings > Submit
to TN Documents page to submit XML documents to your Trading
Networks for processing.
If you have webMethods EDI Module installed, you can also
submit EDI documents.

Data and Actions Governed by Data Permissions


To set data permissions, you must first define data sets. A data set is composed of
partners, transactions, tasks, and activity log entries. For more information, see “About
Defining Data Sets” on page 72. After defining a data set, you then specify the roles that
can act on the data in the data set. For each role, you define permissions that indicate the
actions the role can take against the data.
The following table describes the Trading Networks data permissions that you can assign
to a role. For more information about granting data permissions, see “Defining Data
Permissions” on page 72.

Items Actions you can assign to the role


Partners in the data set  View profile information
 Create profile
 Edit Profile Summary
 Edit External IDs
 Edit Addresses
 Edit Profile Group Membership
Contacts in the data set  View contact information
 Edit contact information
Delivery Settings in the data  View delivery settings information
set
 Edit delivery settings information
Extended fields in the data  View extended fields information
set
 Edit extended fields information

68 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
4 Configuring My webMethods to Work with Trading Networks

Items Actions you can assign to the role


Users in the data set  View user information
 Edit user information
Certificates in the data set  View certificates information
 Edit certificates information
Transactions (Trading  View transactions
Networks documents) in the
 Reprocess transactions
data set
 Resubmit transactions
 Edit user status attribute of transactions
 Edit EDI FA status attributes of EDI transactions
 Edit comments associated with transactions
 View content of transactions
 Edit content of transactions
Delivery tasks and/or Service  View tasks
execution tasks in the data set
 Restart tasks
 Stop tasks
 Delete tasks
 Reassign tasks
Activity log entries in the  View activity log entries
data set
 Delete activity log entries

Create Profile Data Permission Capabilities


The create profile data permission allows the My webMethods user to create a profile of
the partner that belongs to the data set. The user with a create profile permission is
automatically granted the permission to edit the profile summary and the external IDs.

Note: When you select the Create Profile permission, the Edit Profile Summary and Edit
External IDs check boxes are selected automatically only after you save and re-open the
data set.

By default, a newly created profile gets added to all the data sets where the user has the
create profile permission. If the data set has the All Partners option selected, then the
profile of the partner will always belong to that dataset, and the My webMethods user
does not require to explicitly add it to the dataset.
For more information about All Partners option, see “Defining Data Sets and Granting
Roles Permissions to Act on the Data Set” on page 72.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 69
4 Configuring My webMethods to Work with Trading Networks

If a user is granted the create profile data permission, only then does Trading Networks
display the Add Profile button on the Administration > Integration > B2B > Partner Profiles page
to add partner profiles. For more information about adding partner profiles, see “Adding
Partner Profiles” on page 154.

Setting Up Role-Based Access


By default, My webMethods users have no access to Trading Networks data. To grant
access, you grant access to the roles that users are members of.
The following describes the general tasks for setting up Trading Networks role-based
access in My webMethods. Each step describes where you can find more-detailed
instructions for completing the step.

To set up Trading Networks role-based access in My webMethods

1 Define the roles to which you want to grant access. You define roles using the
Administration > System-Wide > User Management > Roles page. For more
information about defining roles, see Administering My webMethods Server.
2 Add members to the roles you want to use for Trading Networks role-based access.
You can make My webMethods users, groups, and/or roles members of a My
webMethods role. For more information about defining roles, see Administering My
webMethods Server.
3 Assign Trading Networks general functional permissions to roles.
For a description of the general functional permissions, see “Data and Actions
Governed by General Functional Permissions” on page 66. For instructions for
defining general functional privileges, see “Granting General Functional Permissions
to a Role” on page 71.
4 Assign Trading Networks data permissions to roles.
For a description of data permissions, see “Data and Actions Governed by Data
Permissions” on page 68. For instructions for defining data permissions, see
“Defining Data Permissions” on page 72. The general steps are:
a Define the data sets for which you want to assign data permissions. Consider how
you want to provide access when defining your data sets.
For example, you might want to create a single data set that identifies all Trading
Networks data so that you can assign various roles different access to all Trading
Networks data. You might want to allow one role to only view all the data and
another role to view all the data and also resubmit and reprocess transactions.
Another example is that you might want to allow all access rights to a role, but
only to a limited set of data. In this case, you would define multiple data sets, each
identifying the data on which a role can act.

70 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
4 Configuring My webMethods to Work with Trading Networks

For information about defining data sets, see, “About Defining Data Sets” on
page 72.
b Identify the roles that can act on the data set.
c For each role, edit the permissions to identify the actions that the role can perform
against the data set.

Granting General Functional Permissions to a Role


For a description of the general functional permissions, see “Data and Actions Governed
by General Functional Permissions” on page 66.
Before performing the procedure in this section, you must define the roles to which you
want to assign general functional permissions. To define roles, use the Administration >
System-Wide > User Management > Roles page. For more information about defining
roles, see Administering My webMethods Server.

To grant a general functional permission to one or more roles

1 In My webMethods:
Administration > System-Wide > B2B Permissions > General Functional Permissions.

2 Click EDIT in the row containing the general functional permission that you grant
to one or more roles.
3 In the SELECT ROLE(S) dialog:
a Search for the roles to populate the Available list by typing a string contained in the
name(s) of the roles you want and clicking Search.
b To select the roles to which you want to grant permission, move the roles to the
Selected list.
c Click Apply.

Removing General Functional Permissions from a Role


If you no longer want a role to have a general functional permission, you can remove the
permission.

To remove a general functional permission from a role

1 In My webMethods:
Administration > System-Wide > B2B Permissions > General Functional Permissions.

2 Click EDIT in the row containing the general functional permission that you want to
remove from a role.
3 In the SELECT ROLE(S) dialog:

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 71
4 Configuring My webMethods to Work with Trading Networks

a Move the role from which you want to remove permission from the Selected list to
the Available list.
b Click Apply.

Defining Data Permissions


Define data permissions to control access to partner profiles, transactions, tasks, and
activity log entries. To indicate the partner profiles, transactions, tasks, and activity log
entries to which you want to control access, you define a data set. After you define a data
set, you can then grant permissions to act on the data set. For a description of the data
permissions, see “Data and Actions Governed by Data Permissions” on page 68.

About Defining Data Sets


You define data sets by specifying partner profiles and TN document types. The table
below describes how Trading Networks includes partner profiles, transactions, tasks, and
activity log entries in the data set based on the partners and TN document types you
specify.

This data is included


in the data set... Based on... Limited to...
profiles Partners defined in The partners identified in the data set
the data set definition definition.
transactions Partners and TN Transactions where:
document types in
 The sender or receiver of the
the data set definition
transactions is associated with a
partner identified in the data set,
-AND-
 The transactions use a TN document
type identified in the data set.
tasks Partners and TN Task associated with the transactions in
(delivery and/or document types in the data set.
service execution) the data set definition
activity log entries Partners and TN Activity log entries associated with the
document types in partners and transactions in the data set.
the data set definition

Defining Data Sets and Granting Roles Permissions to Act on the Data Set
Before granting data permissions, you must define the roles to which you want to assign
data permissions. To define roles, use the Administration > System-Wide > User Management >
Roles page. For more information about defining roles, see Administering My webMethods
Server.

72 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
4 Configuring My webMethods to Work with Trading Networks

To define data sets and grant roles permission to act on a data set

1 In My webMethods:
Administration > System-Wide > B2B Permissions > Data Permissions.
2 Click Add Data Set.
3 In the Data Set Name field, type a name for the data set.
4 Select the Dataset tab, if it is not already selected.
5 Define the partners to include in the data set using the Partners panel:
a Select whether you want to include all or only a few partners in the data set.
 To include all partners, select All Partners and continue with step 6.
 To include a few partners, select Custom selection and continue with step 5b
below.
b If you selected Custom selection, you can do one or more of the following to
identify the partners in the data set:
 Make the partner list relative to the logged in My webMethods user.

1 Select Self Partners.

Note: When checking permissions, Trading Networks includes partners that


are associated with the logged in My webMethods user. For more information
about associating a My webMethods user with a partner, see “Managing the
My webMethods Users Associated with the Partner’s Profile” on page 174 in
the Chapter 9, “Defining and Managing Partner Profiles”.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 73
4 Configuring My webMethods to Work with Trading Networks

 Identify partners to include in the partner list.

1 Click Edit above the Partners box.


2 In the SELECT MEMBERS TO ADD dialog box, search for the partners
you might want to add to the data set. The system populates the
AVAILABLE PARTNERS list with the search results.

3 To select the partners to add to the data set, move the partners to the
SELECTED PARTNERS list.

4 Click OK.

6 Define the TN document types to include in the data set using the DOCUMENT TYPES
panel:
a Select whether you want to include all or a subset of TN document types in the
data set.
 To include all TN document types, select All Document Types and continue with
step step 7.
 To include a subset of the document types, select Selected document types and
continue with step 6b below.
b If you selected Selected document types:

1 Click Edit.
2 Search for the document types to populate the Available list by typing a string
contained in the name(s) of the document types you want and clicking Search.
3 To select the TN document types to add to the data set, move the TN
document types to the SELECTED list.
4 Click OK.
7 Click Permissions tab.
8 Add one or more roles to which you want to grant data permissions to act on the data
in the data set. You must add at least one role. To add a role:
a Click Add Role.
b In the SELECT ROLE(S) dialog:
1 Search for the roles to populate the Available list by typing a string contained in
the name(s) of the roles you want and clicking Search.
2 To select the roles to which you want to grant permission, move the roles to
the Selected list.
3 Click Apply.
c Repeat step 8 for each role you want to add.

74 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
4 Configuring My webMethods to Work with Trading Networks

9 Grant data permissions to the roles you added in step 8. For each role:

a Click Edit in the row containing the role to which you want to grant data
permissions.
b In the EDIT PERMISSIONS dialog box, select the check boxes for the permissions
you want to assign the role and clear the check boxes for the permissions you do
not want the role to have.
c Repeat step 9 for each role you added in step 8.
10 Click Save.

Removing Data Permissions


To remove data permissions, you can:
 Remove the data permission rule completely, which removes the data set and all the
permissions
 Retain the data permission rule and data set definition, but remove a role from the
rule so that the role no longer has data permissions for the data set.

To remove a data permission completely, both data set and permissions

1 In My webMethods:
Administration > System-Wide > B2B Permissions > Data Permissions.
2 Select the data permission rules that you want to remove.
3 Click Delete.

To remove a data permissions for a data from a role

1 In My webMethods:
Administration > System-Wide > B2B Permissions > Data Permissions.
2 Click Data Set Name from which you want to remove a role’s permission.
3 Click the Permissions tab.
4 Select the roles that you want to remove.
5 Click Delete.
6 Click Save.

How Trading Networks Uses My webMethods Roles Privileges


When you add or update a role in My webMethods, you can typically assign the My
webMethods role data-level security for some webMethods products. Data-level security
defines the data on which a role can act. In case of Trading Networks, you do not assign
Trading Networks data-level security using the Data Level Security tab of a My

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 75
4 Configuring My webMethods to Work with Trading Networks

webMethods role. Instead, you grant roles Trading Networks data permissions. For more
information about data permissions and general functional privileges, see “Defining
Role-Based Access” on page 65.

Configuring How Long My webMethods Waits for a Response


When a My webMethods user issues a request that requires access to Trading Networks
data, My webMethods Server, in turn, attempts to execute a Trading Networks service on
the Integration Server to perform the requested action. The service that My webMethods
Server executes is a web service. You configure how long My webMethods Server waits
for a response from the service before timing out the requested action.
.

To configure how long My webMethods waits for a response

1 In My webMethods:
Administration > Integration > B2B Settings > Administrative Preferences.
2 In the Web Service Timeout field, which is in the GENERAL panel, specify the number of
seconds that My webMethods Server should wait for a response from a Trading
Networks Web service. The default is 60 seconds.
3 Click Save.

Configuring Resubmission and Reprocessing Settings


You can configure the following limits for resubmitting and reprocessing documents:
 The maximum size of a document (in kilobytes) that you want allow a My
webMethods user to edit and resubmit.
A My webMethods user can view the content of a document from the Monitoring >
Integration > B2B > Transactions page. When viewing the contents of a document, if
the document is the size you specify for Edit for Resubmit Maximum Size or smaller, the
Edit for Resubmit button will be available. If a document is greater than the value you
specify the Edit for Resubmit button will not be available.
 The maximum number of documents that a My webMethods user can resubmit or
reprocess at one time.
.

To configure resubmission and reprocessing settings

1 In My webMethods:
Administration > Integration > B2B Settings > Administrative Preferences.
2 In the GENERAL PANEL, fill in the following fields:

76 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
4 Configuring My webMethods to Work with Trading Networks

Field Specify

Edit for Resubmit Maximum Size The maximum size of a document (in kilobytes)
that you want allow a user to edit and resubmit.
Reprocessing/Resubmission Limit The maximum number of documents that a My
webMethods user can resubmit or reprocess at
one time.

3 Click Save.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 77
4 Configuring My webMethods to Work with Trading Networks

78 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
5 Planning Your Network

 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
 Task 1: Identify the Types of Transactions to Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
 Task 2: Determine the Important Document Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
 Task 3: Define the Types of Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
 Task 4: Define Information to Maintain about Partners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
 Task 5: Create Your Own Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
 Task 6: Define Actions to Perform Against Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
 Task 7: Add Partners to Your Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 79
5 Planning Your Network

Introduction
Before you begin planning your network, it is helpful if you have a basic understanding
of Trading Networks. For more information, see Understanding webMethods B2B:
webMethods Trading Networks Concepts Guide.
This chapter describes the tasks to plan for and to set up your trading network. The tasks
are presented in the proposed order in which you should complete them; however, based
on your unique situations, you might want to perform the tasks in an alternative order.
The general order of tasks is:

Task Description See page...


1. Identify the types of transactions that Trading Networks must 81
handle.
2. Determine the pieces of information within documents that are 82
of interest to you and define this information to Trading
Networks.
3. Define the types of documents you want Trading Networks to 84
recognize.
4. Determine the information that you want to maintain about your 92
partners; use this information to define the profiles of your
partners.
5. Create the profile for your own corporation. 93
6. Define the actions that you want Trading Networks to take 93
against the documents it receives.
7. Add partners to your network. 94

Tasks 1 through 6 define the behavior of your trading network. After you perform these
tasks, you have defined the document attributes, TN document types, profile fields, and
processing rules that determine how Trading Networks processes documents that it
receives.
You might want to perform these tasks in a development environment. After Tasks 1
through 6 are completed, you can use your development system to test your trading
network to ensure that documents are processed as intended. After you ensure your
trading network is defined properly, migrate your information to a production
environment.
You can migrate your document attributes, TN document types, profile fields, processing
rules, and your profile into your production system using the export and import facility
that Trading Networks provides. For more information, see Appendix C, “Exporting and
Importing Database Information”.
After you have migrated information to your production system, you can perform Task 7;
that is, add partners to your network.

80 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
5 Planning Your Network

You can also BAM enable Trading Networks using webMethods Optimize for B2B, that
is, you can analyze and monitor Trading Networks transaction data for business
purposes. To do so, you must complete all the tasks from 1 to 7. For information about
configuring and enabling Trading Networks for BAM, see Optimizing B2B with BAM:
webMethods Optimize for B2B User’s Guide.
The following sections provide more information about each task required to set up your
trading network. The description of each task points to sections of this manual or other
manuals that describe more information about the task and how to perform the steps
required to complete each task.

Task 1: Identify the Types of Transactions to Process


To exchange documents with trading partners, you need to define the types of
documents that your Trading Networks system will receive. This first task is to identify
the transaction types that your Trading Networks system will receive, for example,
purchase orders, confirmations, etc. In addition, you need to determine the variations of
each transaction. For example, you might receive EDI, cXML, and CBL purchase orders.

Task 1: Identify the Types of Transactions to Process

Step Action 

1. Determine types of transactions. You should know the types of transactions


you will be exchanging with your trading partners (your suppliers,
business partners, etc.). For example, you might send documents that
represent purchase orders, acknowledgements, available to promise, etc.
2. Determine variations of transaction types. This is applicable for XML
documents only. For each type of transactions, determine the variations
of that transaction that you receive. For example, you might receive
purchase orders in cXML, OAG, and CBL.
3. Obtain sample files. This is applicable for XML documents only. Although
it is not necessary, it is helpful if you can obtain a representative sample
document for each variation of a transaction type. Place the samples in a
directory that you will have available when using the Trading Networks
Console.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 81
5 Planning Your Network

Task 1: Identify the Types of Transactions to Process

Step Action 

4. Create IS schemas. If you want Trading Networks to be able to


programmatically validate the structure of the documents it receives,
you must create schemas.
 For XML documents: For XML documents, you must create IS schemas
for each variation of a transaction type. For information about
creating IS schemas, see the webMethods Integration Server Schema
Reference.
 For flat file documents: For flat file documents, you can create a flat file
schema that contains a particular TN document type’s structural
information, including how to identify records and separate those
records into fields. This enables inbound flat file documents to be
parsed and validated for use by back-end systems, and outbound
documents to be converted to a flat file for delivery to another’s
back-end system.You build/create your own flat file schema in
webMethods Developer. For more information about the flat file
schema and parsing, see the Flat File Schema Developer’s Guide
5. Create IS document types. This is applicable for XML documents only. To
transform the XML documents to an IS document (IData object) to allow
you to manipulate the document within a service, set up IS document
types for each variation of an XML document. For information about
creating IS document types, see Developing Integration Solutions:
webMethods Developer User’s Guide. For more information about
transforming XML documents to IS documents (IData objects), see the
wm.tn.doc.xml:bizdocToRecord built-in service that is described in the
webMethods Trading Networks Built-In Services Reference.
6. Create a document gateway service. This is applicable for flat file documents
only. A document gateway service is the entry point for flat file documents
into Trading Networks. Your trading partners send their flat files to the
document gateway service so that Trading Networks can process the
documents. You need to write a document gateway service to provide
information hints for the Trading Networks recognition process. For more
information about the document gateway service, see “Defining
Document Gateway Services” on page 286.

Task 2: Determine the Important Document Information


To process and analyze the types of information that pass through your network, you can
have Trading Networks extract information from documents. The information that
Trading Networks extracts is available to determine how to process the document and for

82 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
5 Planning Your Network

you to use for reporting. You can use it to search for specific documents that have been
sent through your system or to gather information about the documents that have been
sent through your system.
For Trading Networks to extract information, you have to define the pieces of
information within documents that are important to you. Trading Networks refers to
these pieces of information as document attributes. The following system attributes are
provided for you:
 SenderID. Identification of the partner that sent the document
 ReceiverID. Identification of the partner that is to receive the document
 DocumentID. Identification of the document
 UserStatus. A status that you or a partner has associated with the document
 GroupID. Identification within a document that associates this document with other
documents in its group
 ConversationID. Identification within a document that associates this document with
other documents in the same “conversation” of documents
 SignedBody and Signature. Portions of the document that contain the data that was
digitally signed and the digital signature (available only for TN XML document
types; Trading Networks provides a different way to do this for TN flat file document
types)
 DoctypeID or DoctypeName. The Trading Networks-generated internal identifier or name
of the TN flat file document type that you want Trading Networks to use for a TN flat
file document type
 processingRuleID or processingRuleName. The Trading Networks-generated internal
identifier or name of the processing rule that you want Trading Networks to use for a
TN flat file document type
The system attributes are available out-of-the-box. You do not need to define them, and
you cannot delete them.
To identify other pieces of information within a document that are of interest, you can
define custom document attributes. For example, you might be interested in the total
amount of purchase orders you receive; in this case, define a custom attribute for total
purchase order. Typically, the documents for all variations of a transaction type have the
same pieces of information. For example, a cXML purchase order, OAG purchase order,
and CBL purchase order all have some piece of information that represents the total
purchase amount. You do not define multiple custom attributes, one for each variation of
a transaction type—define a single custom attribute that can be used for all variations of
the transaction type.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 83
5 Planning Your Network

For each piece of information (attribute) that is of interest to you, complete the following
tasks:

Task 2: Determine the Important Document Information


Step Action 
1. Identify the attribute. Select a name for the attribute and the data type
(STRING, NUMBER, or DATETIME) for the value of the attribute.
Optionally, you might want to give the attribute a description.
2. Define the custom document attribute. Use the Trading Networks Console
and the information from Step 1 to define the attribute. For instructions,
see “Defining Document Attributes” on page 212.

Task 3: Define the Types of Documents


After you identify the types of transactions that your Trading Networks system needs to
process and have defined the attributes that are of interest to you, you can define the TN
document types for each of the variations of documents that Trading Networks will
receive for a transaction.
When documents are first received, Trading Networks uses the TN document types to
recognize the type of document and perform actions based on the TN document type.
The actions it performs based on the TN document type are to create the attributes from
the document and to perform pre-processing actions against the document. The
pre-processing actions indicate whether Trading Networks is to verify the document’s
digital signature, validate the structure of the document, determine whether the
document has been received before, and/or save the document to the Trading Networks
database.

84 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
5 Planning Your Network

For each variation of a transaction, complete the following tasks:

Task 3: Define the Types of Documents


Step Action 
1. Determine how to recognize documents of this type. Identify the contents of
the document that uniquely indicate that a document is this variation
of a transaction.
 For XML documents: For example, if you are defining a cXML
purchase order, identify the parts of the document that uniquely
identify a document as a cXML purchase order—it might be that
the root tag of the document is cXML and there is
“PurchaseOrder” node within the document.
To identify specific nodes within an XML document, you specify
an XQL query. If you have a sample document available, when
you use the Trading Networks Console to define the TN XML
document type, you can have Trading Networks load the sample
for your use in creating the XQL queries. When a sample
document is loaded, you can select the node in the sample
document and Trading Networks creates the query for you. For
details about what you can use to identify a TN XML document
type, read “Identification Information in TN XML Document
Types” on page 222.
 For flat file documents: you can specify arbitrary pipeline variables
to identify a TN flat file document type. The identification
information specifies how Trading Networks is to recognize a flat
file document based on variables the document gateway service
places in the pipeline. For details, read “Pipeline Matching
Criteria Used to Identify the TN Document Type” on page 292.
2. Determine the attributes that you want to create from documents of this type.
You can have Trading Networks create any or all of the system and
custom attributes from XML and flat file documents.
 For XML documents: For each attribute that you want to extract from
an XML document, you must provide an XQL query that
identifies the location of the attribute within the document. If you
have a sample document available, when you use the Trading
Networks Console to define the TN document type, you can have
Trading Networks load the sample for your use in creating the
XQL queries. When a sample document is loaded, you can select
the node that contains the attribute information and Trading
Networks creates the query for you. For details about specifying
XML document attributes, read “Extraction Information In TN
XML Document Types” on page 226.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 85
5 Planning Your Network

Task 3: Define the Types of Documents


Step Action 
2.  For flat file documents: For each attribute that you want to create
cont... from a flat file document, specify the system and custom (user-
defined) attributes that you want Trading Networks to extract
from TN_parms and place in the bizdoc. These are attributes that
Trading Networks can save to the database to use later. For details
about specifying flat file document attributes, read “Attributes To
Extract From Documents” on page 293.
For Trading Networks to perform some pre-processing and
processing actions, you must extract certain system attributes. The
following lists the system attributes that you should consider
extracting along with the Trading Networks pre-processing and
processing actions they affect:
System Attribute Function it affects…

SenderID  Processing rule search criteria—To process


documents based on the sender of the
document, you need to extract the SenderID.
For example, you might want all documents
from a specific sender to be handled in a special
way. (For more information, see “Processing
Rule Criteria” on page 322.)
 The Check for Duplicate Document pre-processing
action—If you want Trading Networks to be
able to check if it has received the document
already by comparing the sender, you must
extract the SenderID. (For more information, see
“Checking for Duplicate of the XML
Document” on page 244 and “Checking for
Duplicates of the Flat File Document” on
page 303.)
 Alert E-mail processing actions—To send an e-
mail message to a contact at the sender’s
corporation, you need to extract the Sender ID.
You set up contacts when you define profiles
for a partner, which is handled in a later task.
(For more information, see “Action 2—Send an
Alert E-mail” on page 341.)

Note: Typically, you should always extract the


SenderID system attribute.

86 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
5 Planning Your Network

Task 3: Define the Types of Documents


Step Action 
2. System Attribute Function it affects…
cont...
ReceiverID  Processing rule search criteria—To process a
document based on receiver of the document,
you need to extract the ReceiverID. For example,
you might want all documents that are sent to a
specific receiver to be handled in a special way.
(For more information, see “Processing Rule
Criteria” on page 322.)
 The Check for Duplicate Document pre-processing
action—If you want Trading Networks to be
able to check if it has received the document
already by comparing the receiver, you must
extract the ReceiverID. (For more information,
see “Checking for Duplicate of the XML
Document” on page 244 and “Checking for
Duplicates of the Flat File Document” on
page 303.)
 Alert e-mail processing action—To send an e-
mail message to a contact at the receiver’s
corporation, you need to extract the ReceiverID.
You set up contacts when you define profiles
for a partner, which is handled in a later task.
(For more information, see “Action 2—Send an
Alert E-mail” on page 341.)
 The Deliver Document By processing action—If
you want Trading Networks to deliver the
document to the receiver, you need to extract
the ReceiverID. (For more information, see
“Action 4—Deliver the Document to the
Receiver” on page 344.)

Note: Typically, you should always extract the


ReceiverID system attribute

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 87
5 Planning Your Network

Task 3: Define the Types of Documents


Step Action 
2. System Attribute Function it affects…
cont...
DocumentID The Check for Duplicate Document pre-processing
action—If you want Trading Networks to be able to
check if it has received the document already by
comparing the document ID, you need to extract
the DocumentID. (For more information, see
“Checking for Duplicate of the XML Document” on
page 244 and “Checking for Duplicates of the Flat
File Document” on page 303.)

Note: Typically, you should always extract the


DocumentID system attribute.

SignedBody and The Verify Digital Signature pre-processing action—If


Signature you want Trading Networks to be able to verify the
digital signature of XML documents, you need to
extract the SignedBody and Signature. (For more
information, see “Verifying the Digital Signature of
an XML Document” on page 242. To verify the
digital signature of flat file documents, see
“Verifying the Digital Signature of Flat File
Documents” on page 302.)
ConversationID Process management for a document—If a
document is part of a conversation of documents
and you want Trading Networks to pass the
document along to process management after
performing the actions defined by processing rules,
you need to extract the conversation ID. (For more
information, see “Important Attributes that You
Should Extract from an XML Document” on
page 226 or “Specifying the Document Gateway
Services Outputs” on page 288.)
processingRule Rather than have Trading Networks look up the
ID appropriate rule for a flat file document, use this
attribute to explicitly specify the processing rule,
thus eliminating the overhead of that lookup. (For
more information, see “Specifying the Document
Gateway Services Outputs” on page 288.)

88 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
5 Planning Your Network

Task 3: Define the Types of Documents


Step Action 
2. DoctypeID Rather than have Trading Networks search for an
cont... appropriate TN flat file document type for a flat file
document, use this attribute to explicitly specify the
document type, thus eliminating the overhead of
that search. (For more information, see “Specifying
the Document Gateway Services Outputs” on
page 288.)
UserStatus Use this attribute if you want to process a flat file
document based on the user status. Also, the user
status is a criterion that Trading Networks uses to
determine the processing rule to use for a
document. (For more information, see “Specifying
the Document Gateway Services Outputs” on
page 288.)
GroupID Use this attribute to easily locate all the flat file
documents within the same group. (For more
information, see “Specifying the Document
Gateway Services Outputs” on page 288.)
3. Determine whether you want to associate an IS document type with the TN XML
document type. This is applicable for XML documents only. If you will
want to use the wm.tn.doc.xml:bizdocToRecord built-in service to transform
the XML document to an IS document (IData object), you must
identify an IS document type with the document. the
wm.tn.doc.xml:bizdocToRecord service uses the IS document type that you
specify as the blueprint to form the IS document (IData object). For
more information about this service, see the webMethods Trading
Networks Built-In Services Reference. For more information about
associating an IS document type with a TN XML document type, see
“Specifying an IS Document Type for TN XML Document Types” on
page 241.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 89
5 Planning Your Network

Task 3: Define the Types of Documents


Step Action 
4. Determine whether you want to associate a schema with the TN document type.
 For XML documents: If you want Trading Networks to perform the
Validate Structure pre-processing action to validate the structure of
an XML document, you must specify an IS schema that maps the
structure of the TN XML document type. For more information,
see “Specifying an IS Schema for TN XML Document Types” on
page 241.
 For flat file documents: If you want Trading Networks to perform the
Validate Structure pre-processing action to validate the structure of a
flat file document, you must specify a parsing schema that maps
the structure of the TN flat file document type. For more
information, see “Validating the Structure of Flat File Documents”
on page 302.
5. Determine the pre-processing actions you want Trading Networks to perform.
You can specify whether you want Trading Networks to perform any
or all of the following pre-processing actions against documents of
this type. For more information about specifying the pre-processing
actions in a TN document types, see “Specifying Pre-Processing
Actions for TN XML Document Type” on page 242 and “Pre-
Processing Actions in the TN Flat File Document Type” on page 302.
 Verify the digital signature of a document.
 For XML documents: To use this action, you must have Trading
Networks extract the system attributes SignedBody and
Signature. In addition, you must have a certificate on file for
each partner whose digital signature you want to verify; this
will be addressed in a later step. For more information, see
“Verifying the Digital Signature of an XML Document” on
page 242.
 For flat file documents: To use this action, you must code the
verification service for your flat file document. For the inputs
and outputs of the service, your verification service should
implement the wm.tn.rec:BizDocVerification service. For more
information, see “Verifying the Digital Signature of Flat File
Documents” on page 302.

90 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
5 Planning Your Network

Task 3: Define the Types of Documents


Step Action 
5.  Validate the structure of a document.
cont...
 For XML documents: To use this action, you must specify an IS
schema with the TN XML document type. For more
information, see “Validating the Structure of an XML
Document” on page 243.
For flat file documents: To use this action, you must specify a flat file
schema with the TN flat file document type. For more
information, see “Validating the Structure of Flat File Documents”
on page 302.
 Check the for duplicate document of a document; that is, has
Trading Networks already received the document—you can have
Trading Networks determine whether it has already received a
document with either:
 the same document ID
 the same document ID and sender
 the same document ID, sender and receiver
 the same document ID, sender and TN document type
To use this action, you must have Trading Networks extract the
system attributes DocumentID, SenderID and/or ReceiverID.
 Save a copy of the document content, attributes, and/or log
information to the database—You can have Trading Networks
maintain information about the document in the database.
Trading Networks has a reliable delivery feature that it uses only
if the document content is saved to the database. The reliable
delivery feature allows Trading Networks to attempt to deliver a
document to a partner more than one time. For more information,
see “Using Reliable Delivery with Immediate Delivery Method”
on page 346.
 Disable processing rule processing for the document—You can
indicate that you do not want Trading Networks to search for a
processing rule to process this document. In this case, —Trading
Networks will not perform any processing rule actions against the
document. You might want to disable processing rule processing
if the document is to be processed as part of a business process.
Keep in mind that if processing rule processing is enabled, the
pre-processing actions can be overridden by selections you make in
the processing rules that process a document. This will be addressed
in a later task.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 91
5 Planning Your Network

Task 3: Define the Types of Documents


Step Action 
6. Create the TN document type. Use the Trading Networks Console and the
information from Steps 1-5 to define the TN document type. You can
create TN XML document types and TN flat file document types. For
instructions, see “Defining TN XML Document Types” on page 247
and “Defining TN Flat File Document Types” on page 307.

Task 4: Define Information to Maintain about Partners


To determine the type of information you want to collect about your partner, consider:
 The types of partners you plan to add to your network
 The type of information do you need about your partners to perform your business
 Information you will need about your partners to process documents from them, for
example, information you need access in services that process documents
After you understand the type of information you need about your partners, you are
ready to start to define information you need to store in the profiles for your partners.
Complete the following tasks to define the information you want to maintain about
partners in your network:

Task 4: Define Information to Maintain about Partners


Step Action 
1. Review the standard profile fields that are provided. Determine whether the
standard fields meet your needs. To see a description of the type of
information in profiles, see “Information Trading Networks Maintains in
a Profile” on page 99.
For a list of the standard fields that you can change, “Standard Profile
Fields” on page 116.

92 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
5 Planning Your Network

Task 4: Define Information to Maintain about Partners


Step Action 
2. Update standard fields as necessary.
 If there are standard fields that are not currently required but that
you want to require, you can update the fields.
 If there are standard fields that are required that you do not require,
you might be able to mark them not required. Trading Networks
allows you to update a subset of the standard fields.
For information about the standard fields that you can update, see
“Standard Profile Fields” on page 116. For instructions on how to update
whether fields are required or not, see “Updating Standard Profile
Fields” on page 124.
3. Define extended profile fields. To maintain information about partners that
is not covered by the standard fields, you can define extended profile
fields. For example, you might want to define extended fields for
preferred shipping method, cost centers, or customer codes. For
instructions on how to define extended profile fields, see “Extended
Profile Fields” on page 123 and “Adding Extended Profile Fields” on
page 125.

Task 5: Create Your Own Profile


After you have defined the format of the profiles on your Trading Networks system, you
can fill in your own profile. For instructions, see “Creating Your Own Profile” on
page 132.

Task 6: Define Actions to Perform Against Documents


You can define how Trading Networks handles the documents it processes by setting up
processing rules. Use processing rules to perform actions that are stateless, meaning that
each application of a processing rule has no knowledge of the actions that happen before
it. Examples of uses for process rules are:
 Actions that you want to perform against all or several documents that Trading
Networks receives, such as saving documents to a specific location or mapping all
order documents (regardless of process) to a canonical order
 Delivering a document to the receiving partner. (Note that if you want to use queued
documents for delivery to partners and have the documents delivered at scheduled
intervals, you need to define the queues. See Chapter 16, “Defining and Managing
Queues in Trading Networks” for more information.)

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 93
5 Planning Your Network

 Sending notifications (for example an e-mail message) when Trading Networks


receives specific types of documents
Perform actions in processing rules that are not specific to a single business process.

Note: If you want to process documents as part of a complete business interaction


(that is, as a series of connected steps), use process management. You define the
business process by using webMethods Designer to create a process model. If you
have Trading Networks extract a conversation ID from a document, Trading
Networks automatically passes the document to process management after it
performs the actions you define in a processing rule. For more information about
creating process models, see Getting Started with BPM and webMethods Designer
Online Help.

Processing rules and conversation scripts are extremely flexible. To understand all of the
capabilities of processing rules and how to set them up, see “Defining and Managing
Processing Rules” on page 317.

Task 7: Add Partners to Your Network


After you have set up how to recognize and process documents and the information you
want to collect about partners, you can now start adding partners to your network.
To add partner, gather the information required for the partner’s profile. Then create the
profile using the gathered information. For instructions, see “Adding Partner Profiles” on
page 154.
After a partner is added to your network, you can start exchanging business documents
with the partner.

94 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
II Managing Trading Partners

 About Trading Partners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97


 Defining and Managing Profile Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
 Defining and Managing Your Profile (Your Enterprise) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
 Defining and Managing Partner Profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
 Defining and Managing Partner Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
 Defining and Managing Trading Partner Agreements (TPAs) . . . . . . . . . . . . . . . . . . . . . . . . . . . 193

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 95
II Managing Trading Partners

96 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
6 About Trading Partners

 How to Manage Partners in Your Trading Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98


 Information Trading Networks Maintains in a Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
 Steps to Setting up Partner Profiles in Trading Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
 Profile Statuses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 97
6 About Trading Partners

How to Manage Partners in Your Trading Network


Every corporation in your network, including your own corporation, requires a profile in
the Trading Networks system. A profile is a summary of information about a corporation
that is a part of a trading network.
 Your profile (Enterprise) contains information that you define about your corporation.
 A partner’s profile is information about a partner in your trading network.
To add a partner to your network, you add a profile for the partner. You add profiles
for those partners with which you want to exchange documents. Trading Networks is
only aware of partners for which it has a profile.
For more information about trading partners information, see Understanding webMethods
B2B: webMethods Trading Networks Concepts Guide.

Defining the Information You Want to Collect about Partners


A profile is made up of fields. To define the information that you want to collect about
your partners, you set up profile fields. There are two types of profile fields—standard
fields and extended fields:
 Standard fields are fields that are provided out-of-the-box and that incorporate the
majority of the information that you will want to collect about a partner.
 Extended fields are fields that you define to extend the standard profile.
You define and manage profile fields using My webMethods. For information about
working with profile fields, see Chapter 7, “Defining and Managing Profile Fields”.
For information about what information Trading Networks includes in a profile and how
you view the information, see “Information Trading Networks Maintains in a Profile” on
page 99.

Creating Your Own Profile


Trading Networks maintains a profile for your corporation. Your profile contains the
standard fields and the extended fields that you define. Your profile must be filled out
before you can exchange business documents with partners.

Adding Profiles for Partners


To identify a partner with which you want to exchange business documents, you add a
profile for the partner. After you create your own profile, you can create profiles for your
partners.

98 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
6 About Trading Partners

Information Trading Networks Maintains in a Profile


The following sections describe the information that Trading Networks maintains in a
profile.

Partner Identification Information


The following table lists the fields that Trading Networks uses to describe a corporation.
These fields are located:
 In My webMethods in the Partner Details panel of the Partner Profile page.
 In Trading Networks Console on the Corporate tab of the Profile screen.

Field Description
Corporation Name The name of the partner’s corporation, for example, “XYZ Steel
Company”.
Organization Unit The name of the organizational unit or division within the
partner’s corporation, for example, “Sales and Marketing”.
In the Console, the field name is Unit Name.
Status The status of the profile. For more information, see “Profile
Statuses” on page 113.
In the Console, the Status field is not listed in the profile
details. The status is shown only in the list of profiles.
Preferred Language The Preferred Language option is for use only by other
webMethods components (e.g., webMethods RosettaNet
Module) for localization purposes. Optionally, specify the
preferred language of the partner. Trading Networks does not
use this option for its own processing.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 99
6 About Trading Partners

Field Description
Partner Type The type of software the corporation uses to interact with the
trading network.
Value Meaning

webMethods Trading The corporation uses webMethods


Networks Trading Networks.
webMethods for A partner in the network that is using
Partners webMethods for Partners.
Web Browser A partner in the network that is using a
Web browser.
Other/Unknown A partner in the network that is not
using one of the other types of
software. For example, this might be a
partner that is using a webMethods
Integration Server (without Trading
Networks) or a marketplace.

Note: This feature is deprecated and not available in My


webMethods.

External IDs
Trading Networks maintains external IDs for a partner and uses those external IDs to
identify sending and receiving partners that are identified within a document. For
example, within a document, the sending partner might be identified by its D-U-N-S
number. Trading Networks uses the value of the D-U-N-S number that it finds in the
document and matches it to profiles in its system. When it finds a profile with an external
ID of type DUNS that matches the value from the document, it determines the sender of
the document is the partner with the matching profile.
The following table lists the fields that Trading Networks uses for external IDs. These
fields are located:
 In My webMethods on the External IDs tab of the Partner Profile page.
 In Trading Networks Console on the Corporate tab of the Profile screen.

Field Description
ID Type The type of identification that a corporation uses within documents.
In the Console, the field name is External ID Type.
Value The alpha-numerical value for the external ID type. For example, if ID
type is “DUNS”, Value is the partner’s D-U-N-S number.

100 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
6 About Trading Partners

The external IDs can be used when creating a user account that is associated with the
profile. You can associate the profile with one or more My webMethods user accounts
and/or an Integration Server user account.
 When you define or edit a profile in My webMethods, you can optionally associate
the profile with My webMethods user accounts. One method to defining a user
account is to have Trading Networks create a My webMethods user account and use
the value of an external ID that you select as the user name for the account.
 When you define a profile using the Trading Networks Console, Trading Networks
can automatically create an Integration Server user account. You configure whether
you want Trading Networks to create the user account using the tn.default.userCreation
configuration property. When Trading Networks creates the user account, it uses the
value of the default external ID as the user name of the user account. You configure the
default external ID using the tn.default.idType.
When you associate a user account with the profile, the user account receives Trading
Networks partner authority. This allows the partner that the profile defines to use the
user account to access your Trading Networks system. For example, when the partner
sends a document to your Trading Networks system, the user can supply the user name
and password of the user account associated with their profile.

Addresses
You can identify one or more addresses for a corporation. The following table lists the
fields that Trading Networks uses for address. These fields are located:
 In My webMethods on the Addresses tab of the Partner Profile page.
 In Trading Networks Console on the Corporate tab of the Profile screen.

Field Description
Country The country where the partner’s corporation is located, for example
“USA”.
Address The street address of the partner’s corporation, for example, “123
Main Street”.
City The city where the partner’s corporation is located, for example,
“Los Angeles”.
State/Province The state or province where the partner’s corporation is located, for
example, “California”.
Postal Code The postal code (for example, a zip code) for the state or province
where the partner’s corporation is located, for example, “90001”.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 101
6 About Trading Partners

Contacts
You can define information about the people you interact with in a corporation, for
example, the names and phone numbers of your contacts. The following table lists the
fields that Trading Networks uses for contacts. These fields are located:
 In My webMethods on the Contacts tab of the Partner Profile page or in the dialog box
you use to add or edit a contact listed on the Contacts tab.
 In Trading Networks Console on the Contact tab of the Profile screen.

Field Description
Name This column contains the list of contacts defined for a partner’s
corporation. It is a combination of the Last Name and First Name fields.
This column is listed only in Trading Networks Console on the Contact
tab of the Profile screen. In My webMethods, a Name list is not
necessary because Trading Networks displays one row for each
contact you have defined for a partner on the Partner Profile Contacts
tab.
Contact Type The type of contact, for example, “Administrative”.
Note: Out-of-the-box, Trading Networks provides pre-defined contact
types. You can add additional contact types by using the built-in
service wm.tn.dictionary:addContactType. For more information, see the
webMethods Trading Networks Built-In Services Reference.
Title The contact’s job title, for example, “Trading Network
Administrator”.
In the Console, the field name is Role.
Last Name The contact's last name (surname).
First Name The contact's first (given) name.
E-Mail The contact's e-mail address.
Note: In the Console on the Processing Rules screen, Trading Networks
allows you to select a contact type for the Alert e-mail processing action.
The Alert e-mail processing action instructs Trading Networks to send
an e-mail message to the contacts of the selected contact type. If an
e-mail address is not specified for a contact of the selected contact
type, Trading Networks cannot send the e-mail message. For more
information, see “Action 2—Send an Alert E-mail” on page 341.
Telephone The contact's telephone number, for example, “1-800-555-1234”.
Extension The contact's extension number.
Pager The contact's pager number, for example, “1-330-555-7890”.
Fax The contact's fax number, for example, “1-888-555-4897”.

102 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
6 About Trading Partners

Field Description
Country The country where the contact is located, for example, “USA”.
Address The street address of the contact, for example, “123 Main Street, Suite
456”.
City The city where the contact is located, for example, “Los Angeles”
State/Province The state or province where the contact is located, for example,
“California”.
Postal Code The postal code (for example, a zip code) for the state or province
where the contact is located, for example, “90001”.

Partner Group Membership


You can associate partners with partner groups. A partner can belong to more than one
partner group. Before you can associate partners with a partner group, you must define
partner groups. You define partner groups using My webMethods. For more information
about how to create partner groups using My webMethods, see Chapter 10, “Defining
and Managing Partner Groups”.
You can view the partner groups on the Partner Group Membership tab of the Partner Profile
page.

Delivery Settings
Trading Networks maintains the delivery methods in which it can deliver a document to
a partner. You must define the delivery methods you want Trading Networks to use to
deliver documents and provide information that is specific to the partner. For example,
for Trading Networks to deliver a document using HTTP, you define a delivery method
that uses HTTP. When you define this delivery method, you must provide the partners
host name and port that it uses to listen for HTTP requests.
You can access the delivery settings in My webMethods on the Delivery Settings tab of the
Partner Profile page.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 103
6 About Trading Partners

Delivery Method Settings


You can define multiple delivery methods for a partner. Trading Networks uses the fields
in the following table for delivery methods. Trading Networks does not list all the fields
for all delivery methods. When you select a delivery method, Trading Networks lists the
fields for the selected delivery method.

Field Description
Delivery The delivery method that Trading Networks can use when delivering
Method documents to the partner.

Note: Trading Networks allows you to create immediate delivery


methods using E-mail (SMTP), HTTP, HTTPS, FTP, FTPS, and Web
Service. In addition, Trading Networks provides built-in immediate
delivery methods for delivering documents via e-mail (SMTP), HTTP,
HTTPS, FTP, and FTPS. If you require another method (e.g., delivering
into a message queuing system), see Chapter 17, “Creating Delivery
Services”. The chapter describes how to add your own delivery methods.

Delivery The name of the delivery method that you are creating. This field appears
Method only when you are creating a new delivery method.
Name
The value that you provide is prefixed with the delivery method that you
want to use, for example, HTTP - XYZSteel.
After you create the delivery method, Trading Networks automatically
creates the delivery service with the same name as that of the delivery
method.
Host The partner’s host name or IP address, for example, “XYZSteel.com”.
This option is only valid for HTTP, HTTPS, FTP, and FTPS protocols.
Port The port number on which the partner listens for incoming requests, for
example, “5555”. This option is only valid for HTTP, HTTPS, FTP, and
FTPS protocols.

104 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
6 About Trading Partners

Field Description
Location The location to use when sending a document to the partner.
For this Delivery
Method… Use this Location…

HTTP or HTTPS The URL that Trading Networks is to use when


sending documents. Trading Networks automatically
fills in the Location with /invoke/wm.tn/receive, the
standard URL for document exchange.
FTP or FTPS The directory path that Trading Networks is to use
when sending documents. The file name of the file is
the internal ID that Trading Networks generates for
the document when Trading Networks receives it.
 For XML documents, the file extension is xml,
e.g., 0a010154f70ddbf900000203.xml.
 For flat file documents, the file extension is dat
User Name The user name that your Trading Networks system is to supply when
connecting to the partner’s system to deliver documents using the
associated protocol (HTTP, HTTPS, FTP, or FTPS). If you do not know
what to specify for User Name, contact the partner.

Note: This field is for a partner profile only; Trading Networks does not
display it for your (Enterprise) profile.

Password The password that your Trading Networks system is to supply (along
with User Name) when connecting to the partner’s system using the
associated protocol (HTTP, HTTPS, FTP, or FTPS).

Note: Passwords used in scheduled delivery queues (public and private)


are stored in the Trading Networks database in binary-encoded form (not
in clear text). It is not possible for Trading Networks to encrypt
passwords used in scheduled delivery queues; because trading partners
are allowed to create custom scheduled delivery services, Trading
Networks cannot anticipate which user-defined input variable might be a
password. For more information, see Understanding webMethods B2B:
webMethods Trading Networks Concepts Guide.

Note: This field is for a partner profile only; Trading Networks does not
display it for your (Enterprise) profile.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 105
6 About Trading Partners

Field Description
E-mail The e-mail address to use when delivering documents to the partner, for
example, “bizdoc@isteel.com”.
Use as The delivery method that the partner prefers be used to deliver
preferred documents to the partner’s system. If the Use as preferred protocol is not
protocol selected for any delivery method, Trading Networks uses Queue for
Polling.

If you select the “Web Service” Delivery Method, the following additional fields appear. For
information about web service delivery methods in Trading Networks, see Understanding
webMethods B2B: webMethods Trading Networks Concepts Guide.

Field Description
Response Whether Trading Networks must create a new document out of the web
Handling service response or add the web service response to the existing bizdoc.
Web Service The name of the Web service connector that you created in Integration
Connector Server.
Mapping The name of the mapping service that provides input to the Web service
Service connector.
Output The output parameter of the Web service connector that contains the
Parameter required response. Depending on the value specified in the Response
Handling field, the response is in a new document or as an additional part
of the bizdoc.
Key/Value Any constant input values to the Web service connector.

If you select the “Queue for delivery” Delivery Method, the following additional fields
appear:

Note: You cannot select either the public or private queue as the preferred protocol.

Queue for
delivery Field Description
Use Public Queue Indicates you are defining a delivery method to deliver documents
to the partner by placing documents in a public scheduled delivery
queue. A public queue is a queue that can contain documents for
multiple receiving partners. For more information about public
queues, see “Defining Public Queues” on page 386.
When use this delivery method, you select the name of the public
queue you want Trading Networks to use.

106 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
6 About Trading Partners

Queue for
delivery Field Description
Use Private Indicates you are defining a delivery method to deliver documents
Queue to a private scheduled delivery queue. A private queue contains
only documents for the partner defined by the profile.
When you use this delivery method, you must define the following
fields as well:
Field Description

Delivery The delivery service to use for the private queue. Select
the delivery service from the list. For more
information, see “Adding and Registering New
Delivery Services” on page 405.
In the Console, the field name is Delivery Service.
Inputs tab The inputs for the delivery service you selected.
In the Console, the corresponding field is the Set Inputs
button.
State The state of the queue (Enable Queue, Drain Queue,
Suspend Delivery, or Disable Queue). For more
information about queue states, see “Scheduled
Delivery Queue States” on page 381.
In the Console, the field name is Queue State.
Process The schedule of when Trading Networks is to invoke
Queue the delivery service that will deliver documents from
this queue. For more information, see “Delivery
Schedule for Queues” on page 379. The available
options are:
 Run Once. Trading Networks executes the delivery
service a single time. For more information, see
“Using the Run Once Option” on page 380
 Simple Interval. Trading Networks executes the
delivery service repeatedly at an interval you
specify. For more information, see “Using the Fixed
Interval Option” on page 380.
 Custom Interval. Trading Networks runs the delivery
service on the day(s) and at the time(s) that you
specify either during a specified date range or
indefinitely. For more information, see “Using a
Custom Interval Option” on page 381.
In the Console, these fields are on the Schedule tab.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 107
6 About Trading Partners

General Partner Delivery Settings


The following table lists the delivery settings fields that are not specific to any one
delivery method and that Trading Networks uses only in partner profiles; these fields are
not in your (Enterprise) profile.

Delivery Method
Tab Field Description
Delivery The number of times you want Trading Networks to attempt to
Maximum Retries redeliver a document to the partner’s system.
If you specify 0, Trading Networks attempts to redeliver a
document five times. This is the default.

Note: Trading Networks uses the Delivery Maximum Retries, Wait


Between Retries, and Retry Factor for reliable delivery with immediate
delivery methods.

Trading Networks uses also uses the Delivery Maximum Retries for
scheduled delivery methods.
Wait Between The number of milliseconds (ms) you want Trading Networks to
Retries wait before making its first attempt to redeliver the document to the
partner’s system. Trading Networks uses the Retry Factor along with
the Wait Between Retries value to calculate how long to wait for
subsequent retry attempts.
If you specify 0, Trading Networks uses 20000 milliseconds (20
seconds) for Wait Between Retries. This is the default.

Note: Trading Networks only uses the Wait Between Retries and Retry
Factor options for reliable delivery with immediate delivery
methods. Trading Networks does not use the Wait Between Retries
and Retry Factor settings for scheduled delivery because the queue’s
delivery schedule dictates how often to retry delivery attempts.

108 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
6 About Trading Partners

Delivery Method
Tab Field Description
Retry Factor The factor you want Trading Networks to use when determining
how long to wait before making the second and subsequent
attempts to redeliver the document when Trading Networks is
using reliable delivery. Trading Networks calculates the time to wait
by multiplying the last wait time by Retry Factor. Specify a whole
number greater than zero for Retry Factor.
Example: The following shows sample values for the reliable
delivery settings and how they affect the wait times between
attempts to redeliver a document.
Delivery Maximum Retries = 3
Wait Between Retries = 10000 ms
Retry Factor = 2
Retry 1 Retry 2 Retry 3

Wait until next attempt 10000 ms 20000 ms 40000 ms

Note: For more information about reliable delivery, see “Using


Reliable Delivery with Immediate Delivery Method” on page 346
and “Using Reliable Delivery with Scheduled Delivery” on
page 347.

Polling Method The delivery method (e.g., Primary HTTP) that your Trading
Networks system uses to contact the partner’s system to request
documents that the partner has queued for your system. Select the
method from the list. If you do not want your Trading Networks
system to poll for documents, select the blank entry.
Polling Frequency How often Trading Networks is to poll the partner’s system to
retrieve documents that the partner has queued for your system.
Specify a number of minutes that is zero or greater. If you specify
zero, Trading Networks will not poll.
Note: Setting the polling frequency too low can have an adverse
effect on Trading Networks performance.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 109
6 About Trading Partners

Delivery Method
Tab Field Description
Suspend delivery Whether you want Trading Networks to suspend delivery for this
partner. When delivery is suspended, Trading Networks does not
deliver documents to the partner. For documents where the partner
is the receiving partner:
 For immediate deliveries, the deliveries fail.
 For deliveries that use reliable delivery or scheduled deliveries
where the partner is the receiving partner, Trading Networks
holds the delivery tasks until delivery is resumed for this
partner.
This field is not available in the Console.

Extended Fields
Trading Networks lists the extended fields that you define for partner profiles in the
following locations:
 In My webMethods on the Extended Fields tab of the Partner Profile page.
 In Trading Networks Console on the Extended Fields tab of the Profile screen.

Users
You can optionally associate one or more My webMethods users with a profile. The My
webMethods user accounts associated with a profile are listed on the Users tab of a profile
in My webMethods.
When you associate a user account with the profile, the user account receives Trading
Networks partner authority. This allows the partner that the profile defines to use the
user account to access your Trading Networks system. For example, when the partner
sends a document to your Trading Networks system, the user can supply the user name
and password of the user account associated with their profile.

Certificates
Trading Networks maintains partner certificates in the profile in the following locations.
 In My webMethods on the Certificates tab of the Partner Profile page.
 In Trading Networks Console on the Security tab of the Profile screen.
The following table lists the types of certificate information that you define:

110 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
6 About Trading Partners

Type Description
Sign/Verify Certificate information that Trading Networks uses to sign a document
or verify the digital signature.
 In the your (Enterprise) profile, you can supply a certificate information
that Trading Networks uses to digitally sign documents that your
enterprise sends to partners. Trading Networks digitally signs a
document when the built-in service wm.tn.doc:sign is invoked. For
more information about this service, see the webMethods Trading
Networks Built-In Services Reference.
 In a partner profile, Trading Networks uses the certificate information
to verify the digital signature of documents that were digitally
signed by the partner. Trading Networks verifies a digital signature
when instructed to do so by the Verify Digital Signature pre-
processing action. For more information, see “Verifying the Digital
Signature of an XML Document” on page 242 and “Verifying the
Digital Signature of Flat File Documents” on page 302.
If you include the private key in this certificate information,
Trading Networks can also use this certificate information to
digitally sign documents on behalf of the partner. You might have
the private key if the profile describes an internal group, for
example a department within your corporation

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 111
6 About Trading Partners

Type Description
Encrypt/ Certificate information that Trading Networks uses to decrypt or
Decrypt encrypt information.
 In the your (Enterprise) profile, you can supply a certificate information
that Trading Networks uses to decrypt documents that your
enterprise receives from partners.
 In a partner profile, Trading Networks uses the certificate information
to encrypt information that is being sent to a partner.
If you include the private key in this certificate information, this
certificate information can also be used to decrypt documents that
were encrypted with the partner’s public key. You might have the
private key if the profile describes an internal group, for example a
department within your corporation.
Trading Networks maintains this information for other webMethods
components (e.g., webMethods RosettaNet Module) that take
advantage of this feature. You can also add your own functionality that
takes advantage of this certificate information. You can obtain the
certification information by using built-in services.
In the Console, this is referred to as Decrypt/Encrypt.

Note: Trading Networks does not check to see whether the CA that
signed the certificate is included in the list of trusted CAs that the
webMethods Integration Server maintains. For more information, see
security information in Administering webMethods Integration Server.

SSL A certificate that enables Trading Networks to act as an SSL client to


connect to a remote secure server.
In the Console, this is referred to as SSL Client.

Permissions
Trading Networks lists all the data sets for which the My webMethods user has the
Create Profile permission. You can add a partner to a data set by selecting the check box
against the data set name. If the check box against the data set name is not selected, the
partner does not belong to the data set. To add the partners to all the data sets, select the
check box against the Rule Name check box.
The partner must be in at least one data set where the My webMethods user has the
Create Profile permission. If the user attempts to remove the partner from all the data
sets, and that partner does not belong to any data set that has the All Partners option
selected, then an error message is displayed and the changes are not saved.

112 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
6 About Trading Partners

Trading Networks lists only those data sets that has the role in the data set that has the
Create Profile permission and has the Custom Selection option selected. It does not list the
data sets if the role has the All Partners option selected even if the role has the Create
Profile permission.
Administrators can edit the data sets using the Dataset tab.
For more information about the All Partners and Custom Selection options and about editing
data sets, see “Defining Data Sets and Granting Roles Permissions to Act on the Data Set”
on page 72.

Steps to Setting up Partner Profiles in Trading Networks


To set up the information you want Trading Networks to maintain in profiles and add
partners to your network, perform the tasks in the following checklist:

 Task For more information, see...


1 Set up the profile fields for Chapter 7, “Defining and Managing Profile
profiles Fields”
2 Create your own profile Chapter 8, “Defining and Managing Your
Profile (Your Enterprise)”
3 Add partners by adding Chapter 9, “Defining and Managing Partner
their profiles to your Profiles”
system

Profile Statuses
Profiles can have one of the statuses listed in the following table:

Status Meaning
Active You have filled in the profile and Trading Networks has
programmatically determined that all profile fields (standard and
extended) are valid. You have enabled the profile to set the status to
“Active”.
Your (Enterprise) profile must be enabled before you can exchange
documents with partners. Additionally, if you enable a partner’s profile,
you will be able to exchange documents with that partner.
Inactive You have disabled the profile.
Either you have just added the profile, but not yet enabled it, or you have
disabled the profile.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 113
6 About Trading Partners

114 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
7 Defining and Managing Profile Fields

 What are Profile Fields? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116


 Viewing Standard Profile Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
 Updating Standard Profile Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
 Adding Extended Profile Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
 Viewing Extended Profile Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
 Duplicating an Existing Profile Field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
 Updating Extended Profile Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
 Disabling Extended Profile Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
 Enabling Extended Profile Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 115
7 Defining and Managing Profile Fields

What are Profile Fields?


To define the information that you want to collect about your partners, you set up profile
fields. There are two types of profile fields—standard fields and extended fields:
 Standard fields are fields that are provided out-of-the-box and that incorporate the
majority of the information that you will want to collect about a partner. You cannot
add additional standard fields or disable the standard fields that are provided.
However, you can modify the definitions for standard fields to change the
description.
Most of the standard fields are for your own use, for example, the name of the
corporation and its address. However, Trading Networks requires some of the
standard fields to operate normally, for example, the Trading Networks host and port
number that a partner uses for HTTP to deliver a document to the partner via HTTP.
For more information, see “Standard Profile Fields” on page 116.
 Extended fields are fields that you define to extend the standard profile. If you want to
collect additional information about your partners that is not covered by the standard
fields, you can define extended fields. The profiles that reside on your system contain
all the extended fields that you define.
For more information, see “Extended Profile Fields” on page 123.
For more information about profile fields, see Understanding webMethods B2B: webMethods
Trading Networks Concepts Guide.

Required Fields
A required field is one that you want supplied for all profiles. Several of the standard
fields, as defined out-of-the-box, are required. Those that are not, you can mark as
required if you want. When you add extended fields, you can mark them as required. All
profiles on your system must have a value for required profile fields.
When you create your own profile or add a profile for a partner, you must supply
information for all required fields before Trading Networks will allow you to enable the
profile. When you are filling in a profile, Trading Networks places an asterisk (*) next to
the required fields, so you can easily determine the fields that are required.

Standard Profile Fields


The standard profile fields are fields that are provided out-of-the-box. Although Trading
Networks has many standard fields, you can view and update only a subset of the
standard fields.
The following table lists the standard profile fields that you can update. For each field,
the table lists a description of what each field is, how Trading Networks uses the field,
and any consequences if a field is not included in a partner profile.

116 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
7 Defining and Managing Profile Fields

Standard Field Description


Corporation Name What it is: This field identifies the name of the corporation, for
example, “XYZ Steel Company”. The following shows where it is
located within the profile:
My webMethods Panel Field Name

Partner Details Corporation Name


How it is used: Trading Networks uses this field (along with the Unit
Name, if specified) to identify your enterprise or a partner within the
network.
If not specified: Trading Networks will not have a name to use to
identify for the partner.
Unit Name What it is: This field identifies a unit name or division name within
the corporation, for example, “Sales and Marketing”. The following
shows where it is located within the profile:
My webMethods Panel Field Name

Partner Details Organization Unit


How it is used: Trading Networks uses this field (along with the
Corporation Name) to identify your enterprise or a partner within the
network.
If not specified: Trading Networks will use only the Corporation Name
for identification.
Preferred What it is: This field is used by other webMethods components (e.g.,
Language webMethods RosettaNet Module) for localization purposes. The
following shows where it is located within the profile:
My webMethods Panel Field Name

Partner Details Preferred Language


How it is used: Trading Networks does not use this information. It is
maintained for other webMethods components.
If not specified: The information will not be available.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 117
7 Defining and Managing Profile Fields

Standard Field Description


Preferred Delivery What it is: This field identifies which delivery method the partner
Method prefers to receive documents with. The following shows where it is
located within the profile:
My webMethods tab Field Name

Delivery Settings tab Use as preferred protocol


How it is used: If a processing rule is configured to deliver a
document using the preferred protocol, the partner’s delivery
method that is selected as the preferred protocol will be used.
If not specified: The preferred protocol defaults to Queue for polling.
E-mail What it is: This field identifies an e-mail address for a contact, for
example, “jsmith@XYZSteel.com”. The following shows where it is
located within the profile:
My webMethods tab Field Name

Contacts tab E-mail


How it is used: Trading Networks allows you to select a contact type
in a processing rule for the Alert e-mail action. The Alert e-mail action
instructs Trading Networks to send an e-mail message to the
contacts associated with the selected contact type. If the e-mail
address is not specified for a contact of the selected contact type,
Trading Networks cannot send the e-mail message to that contact.
For more information on the Alert e-mail action in a processing rule,
see “Action 2—Send an Alert E-mail” on page 341.
If not specified: If the contact is referenced in the Alert e-mail action of a
processing rule, Trading Networks will not be able to send an e-mail
message.
Fax What it is: This field identifies the fax number for a contact, for
example, “1-888-555-4897”. The following shows where it is located
within the profile:
My webMethods tab Field Name

Contacts tab Fax


How it is used: Trading Networks does not use this information. It is
for you to access via the profile.
If not specified: The information will not be available in the profile.

118 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
7 Defining and Managing Profile Fields

Standard Field Description


First Name What it is: This field identifies the contact's first name. The following
shows where it is located within the profile:
My webMethods tab Field Name

Contacts tab First Name


How it is used: Trading Networks does not use this information. It is
for you to access via the profile.
If not specified: The information will not be available in the profile.
Pager What it is: This field identifies the pager number for a contact, for
example, “1-330-555-7890”. The following shows where it is located
within the profile:
My webMethods tab Field Name

Contacts tab Pager


How it is used: Trading Networks does not use this information. It is
for you to access via the profile.
If not specified: The information will not be available in the profile.
Role What it is: This field identifies the contact's job title, for example,
“Trading Network Administrator”. The following shows where it is
located within the profile:
My webMethods tab Field Name

Contacts tab Title


How it is used: Trading Networks does not use this information. It is
for you to access via the profile.
If not specified: The information will not be available in the profile.
Last Name What it is: This field identifies the contact's last name. The following
shows where it is located within the profile:
My webMethods tab Field Name

Contacts tab Last Name


How it is used: Trading Networks does not use this information. It is
for you to access via the profile.
If not specified: The information will not be available in the profile.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 119
7 Defining and Managing Profile Fields

Standard Field Description


Extension What it is: This field identifies the extension number for a contact. If
the telephone number in the Telephone field identifies the main line
for the corporation, use the Extension field to identify the contact's
extension. The following shows where it is located within the
profile:
My webMethods tab Field Name

Contacts tab Extension


How it is used: Trading Networks does not use this information. It is
for you to access via the profile.
If not specified: The information will not be available in the profile.
Telephone What it is: This field identifies the telephone number for a contact, for
example, “1-800-555-1234”. The following shows where it is located
within the profile:
My webMethods tab Field Name

Contacts tab Telephone


How it is used: Trading Networks does not use this information. It is
for you to access via the profile.
If not specified: The information will not be available in the profile.
Address What it is: This field identifies the first line of the street address, for
example, “595 Main Street”. The following shows where it is located
within the profile:
My webMethods tab Field Name

Addresses tab Address


Contacts tab
How it is used: Trading Networks does not use this information. It is
for you to access via the profile.
If not specified: The information will not be available in the profile.

Note: If you mark the Address as a required field, Trading Networks


will require the Address field in all locations.

120 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
7 Defining and Managing Profile Fields

Standard Field Description


AddressLine2 What it is: This field identifies the second line of the street address,
for example, “Suite 556”. The following shows where it is located
within the profile:
My webMethods tab Field Name

Addresses tab AddressLine2


Contacts tab
How it is used: Trading Networks does not use this information. It is
for you to access via the profile.
If not specified: The information will not be available in the profile.

Note: If you mark the AddressLine2 as a required field, Trading


Networks will require the AddressLine2 field in all locations.

AddressLine3 What it is: This field identifies the third line of the street address, for
example, “ATTN Billing Department”. The following shows where
it is located within the profile:
My webMethods tab Field Name

Addresses tab AddressLine3


Contacts tab
How it is used: Trading Networks does not use this information. It is
for you to access via the profile.
If not specified: The information will not be available in the profile.

Note: If you mark the AddressLine3 as a required field, Trading


Networks will require the AddressLine3 field in all locations.

City What it is: This field identifies the city in an address, for example,
“Los Angeles”. The following shows where it is located within the
profile:
My webMethods tab Field Name

Addresses tab AddressLine3


Contacts tab
How it is used: Trading Networks does not use this information. It is
for you to access via the profile.
If not specified: The information will not be available in the profile.

Note: If you mark the City as a required field, Trading Networks will
require the City field in all locations.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 121
7 Defining and Managing Profile Fields

Standard Field Description


Country What it is: This field identifies the country in an address, for example,
“USA”. The following shows where it is located within the profile:
My webMethods tab Field Name

Addresses tab Country


Contacts tab
How it is used: Trading Networks does not use this information. It is
for you to access via the profile.
If not specified: The information will not be available in the profile.

Note: If you mark the Country as a required field, Trading Networks


will require the Country field in all locations.

State/Province What it is: This field identifies the state or province in an address, for
example, “California”. The following shows where it is located
within the profile:
My webMethods tab Field Name

Addresses tab State/Province


Contacts tab
How it is used: Trading Networks does not use this information. It is
for you to access via the profile.
If not specified: The information will not be available in the profile.

Note: If you mark the State/Province as a required field, Trading


Networks will require the State/Province field in all locations.

Postal Code What it is: This field identifies the postal code (for example, ZIP code)
for the state or province in an address, for example, “90001”. The
following shows where it is located within the profile:
My webMethods tab Field Name

Addresses tab Postal Code


Contacts tab
How it is used: Trading Networks does not use this information. It is
for you to access via the profile.
If not specified: The information will not be available in the profile.

Note: If you mark the Postal Code as a required field, Trading


Networks will require the Postal Code field in all locations.

122 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
7 Defining and Managing Profile Fields

Extended Profile Fields


If after reviewing the standard profile you determine that you want to maintain
additional information about partners, you can define extended profile fields.
When you define an extended profile field, you specify the following:
 The name you want the extended profile field to have.
 The name of the profile field group that you want Trading Networks to assign to the
profile field. Trading Networks provides the groups—Address, Corporation, Custom,
Contact, Delivery, and External ID. You can add additional groups.
 A description you want Trading Networks to display for the extended profile field.
 The data type of the extended profile field—string or binary.
 The default value of the extended profile field. You can supply this information only
if the data type is string.
 The maximum length of the value that can be supplied for the profile field. You can
supply this information only if the data type is string.
 The valid values that can be supplied for the profile field. You can supply this
information only if the data type is string.
You can change all information for an extended field, including its name.

Important! Use caution when changing fields from required to not required. If you
have services that use the field or if you might create or update services that use the
field, the information might not be available if the partner is not required to supply it.
When you already have profiles in your system and then change an extended field
from not required to required, you must manually edit the existing profiles for the
updated extended profile fields. This is true even when the updated extended profile
fields has a default value.

Viewing Standard Profile Fields


To view the standard profile fields that Trading Networks allows you to update, perform
the following procedure.

To view standard profile fields

1 In My webMethods: Administration > Integration > B2B > Partner Profiles.


2 Click My Enterprise or edit a partner profile.
3 Click Extended Fields tab in the profile you are viewing.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 123
7 Defining and Managing Profile Fields

4 Click Manage Extended Fields.


You will be prompted to save any changes you might have made to the profile you
were viewing. To discard the changes you might have made, click Discard and Proceed.
To work with the extended fields, click Save and Proceed.
5 Click the Standard tab, if it not already selected.

Updating Standard Profile Fields


Perform the following procedure to update information for standard profile fields.

To update a standard profile field

1 View the standard fields. If you need procedures for this step, see “Viewing Standard
Profile Fields” on page 123.

2 Click in the ACTIONS column in the row containing the profile field you want to
edit.
3 Update the field(s) you want to change:

For this Standard


tab parameter... Specify...

Required Whether the profile field is required or not. Select the check box
to make the field required. If you do not want it to be required,
clear the check box.

Important! Use caution when changing fields from required to not


required. Trading Networks uses some standard fields for its
processing, so if you change a field so that it is not required and
a partner opts to not supply that information, Trading Networks
might be prevented from performing a function that you will
require.

To determine how Trading Networks uses each standard field


and the effect of not specifying a field, see “Standard Profile
Fields” on page 116.
Description The description you want the profile field to have. You can
replace the current description or add more detail to it.
You can specify 1-1024 characters. You can specify any
characters; there are no restrictions.

4 Click OK.

124 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
7 Defining and Managing Profile Fields

Adding Extended Profile Fields


To add an extended profile field to the profiles you maintain on your system, perform the
following procedure. When you use this procedure, Trading Networks provides a blank
form for you to use to fill in the details for the new profile field. If you want to add a field
that is similar to an existing extended field, use the procedure in “Duplicating an Existing
Profile Field” on page 127. When you duplicate an existing extended field, the form for
the new field is pre-filled with information from the field that you select to duplicate.

Note: If you already have profiles in your system and then add extended profile fields
that are required, you must manually edit the existing profiles for the newly added
extended profile fields. This is true even when you define default values for the
added extended profile fields.

To add an extended profile field

1 In My webMethods: Administration > Integration > B2B > Partner Profiles.


2 Click My Enterprise or edit a partner profile.
3 Click Extended Fields tab in the profile you are viewing.
4 Click Manage Extended Fields.
You will be prompted to save any changes you might have made to the profile you
were viewing. To discard the changes you might have made, click Discard and Proceed.
To work with the extended fields, click Save and Proceed.
5 Click Add Extended Field.
6 Fill in the fields for the new extended field:

For this Extended


tab parameter... Specify...

Name The name you want to assign the new extended profile field. For
example, if you send catalogs to clients and you want to
maintain the type of catalog the partner is to receive, you might
define an extended profile field named “Catalog Type”.
Specify 1-32 characters. You can specify any characters; there are
no restrictions.
Enabled Whether the profile field is enabled or disabled. To enable the
profile field, select the Enabled check box.
Required Whether the profile field is required or not. Select the check box
to make the field required. If you do not want it to be required,
clear the check box.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 125
7 Defining and Managing Profile Fields

For this Extended


tab parameter... Specify...

Group The group you want Trading Networks to assign the extended
profile field to.
 To assign the field to an existing group, select a group from
the list.
 To assign the field to a new group, in the Add New Group
section of the dialog box, type the name in the Name field and
click Add Group.
Description Optional. A description of the profile field. It is helpful to
include the type of information that you expect for this field
because Trading Networks displays this description when
requesting a profile be completed.
Specify 1-1024 characters. You can specify any characters; there
are no restrictions.
Data Type The data type of the profile field. Select either String or Binary
from the list. If you specify String, you can specify a maximum
length, default value, and valid values for the profile field.
Maximum Length Optional. The maximum number of characters that you want to
allow someone to specify for the profile field. If you do not
specify a maximum length, there is no limit placed on the profile
field. You can specify Maximum Length only when Data Type is
String.
Default Optional. The default value for a profile field. You can specify
Default only when Data Type is String.
Specify 1-128 characters. You can specify any characters; there
are no restrictions.
Valid Values Optional. These are values that you want Trading Networks to
accept for this profile field. For each valid value, perform the
following:

1. Click .
2. Type in a valid value.

Note: If you need to remove a value that you added, click .

If you specify valid values, Trading Networks displays a list of


the values that can be selected when filling out a profile. You can
specify Valid Values only when Data Type is String.

7 Click OK.

126 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
7 Defining and Managing Profile Fields

Viewing Extended Profile Fields


To view the extended profile fields that are defined on your system, perform the
following procedure:

To view extended profile fields

1 In My webMethods: Administration > Integration > B2B > Partner Profiles.


2 Click My Enterprise or edit a partner profile.
3 Click Extended Fields tab in the profile you are viewing.
4 Click Manage Extended Fields.
You will be prompted to save any changes you might have made to the profile you
were viewing. To discard the changes you might have made, click Discard and Proceed.
To work with the extended fields, click Save and Proceed.
5 Click the Extended tab, if it is not already selected.

Duplicating an Existing Profile Field


In addition to adding a new extended field by filling in a blank form, as described in
“Adding Extended Profile Fields” on page 125, you can also add a new field that is
similar to an existing extended field. When you duplicate an existing extended field, the
form for the new field is pre-filled with information from the field that you select to
duplicate.

To add a new extended profile field by duplicating an existing extended field

1 View the extended fields. If you need procedures for this step, see “Viewing Extended
Profile Fields” on page 127.

2 Click in the ACTIONS column in the row containing the profile field you want to
duplicate.
3 In the Name field, supply a name for the new field.
4 Alter any of the rest of the fields for the new extended field. For a description, of what
you can specify, see step 6 on page 125.
5 Click OK.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 127
7 Defining and Managing Profile Fields

Updating Extended Profile Fields


You can change all information for an extended profile field, including its name.

Note: Use caution when changing fields from required to not required. If you have
services that use the field or if you might create or update services that use the field,
the information might not be available if the partner is not required to supply it.
When you already have profiles in your system and then change an extended field
from not required to required, you must manually edit the existing profiles for the
updated extended profile fields. This is true even when the updated extended profile
fields has a default value.

To update an extended profile field

1 View the extended fields. If you need procedures for this step, see “Viewing Extended
Profile Fields” on page 127.

2 Click in the ACTIONS column in the row containing the profile field you want to
edit.
3 Update the field(s) you want to change. For a description, of what you can specify, see
step 6 on page 125.
4 Click OK.

Disabling Extended Profile Fields


If you no longer want to use an extended profile field, you can disable it. When you
disable an extended profile field, Trading Networks no longer displays it in profiles.
Trading Networks does not delete the field definition from the database or any
information stored for the field in partner profiles.
Because the field is no longer displayed in profiles, if you create new profiles after
disabling a field, the new profile will not contain information for the disabled field. Use
caution when disabling fields. You should not disable a field that is used by services at
your site because the information the services use will not be available for profiles that
you add after you disable the field.

Note: To permanently remove the extended profile field from the database, your
database administrator must remove it. Before you can remove the field, you must
first remove all rows from the PartnerProfileField table that reference the profile field
you want to delete.

128 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
7 Defining and Managing Profile Fields

To disable an extended profile field

1 View the extended fields. If you need procedures for this step, see “Viewing Extended
Profile Fields” on page 127.

2 Click in the ACTIONS column in the row containing the profile field you want to
disable.
3 Clear the check box in the Enabled field.
4 Click OK.

Enabling Extended Profile Fields


If you disable an extended profile field and then later determine that you still need it, you
can enable it.
If the profile field you are enabling is a required field, you might need to take further
action. If you added partner profiles while the profile field was disabled, the profiles that
were added in the interim do not contain information for the required field. You will
need to manually update the profiles to supply the missing information. For instructions
on how to update a partner profile, see “Updating Your Profile” on page 134.
To enable an extended profile field, perform the following procedure.

Important! To perform this procedure, you must first perform the procedure described
in “Disabling Extended Profile Fields” on page 128.

To disable an extended profile field

1 View the extended fields. If you need procedures for this step, see “Viewing Extended
Profile Fields” on page 127.

2 Click in the ACTIONS column in the row containing the profile field you want to
disable.
3 Select the check box in the Enabled field.
4 Click OK.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 129
7 Defining and Managing Profile Fields

130 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
8 Defining and Managing Your Profile (Your Enterprise)

 Creating Your Own Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132


 Viewing Your Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
 Updating Your Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
 Enabling Your Profile—Changing the Status to Active . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
 Disabling Your Profile—Changing the Status to Inactive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 131
8 Defining and Managing Your Profile (Your Enterprise)

Creating Your Own Profile


The following procedure describes how to create your profile specifying the minimum
fields to save. You can then add additional information to your profile. For descriptions
for how to specify information on the all tabs of the profile, see “Updating Your Profile”
on page 134.
Although this section describes how to create the base profile, then edit the profile to add
additional information, you can add all information when creating the profile. You can
make your changes to multiple tabs and save one time.

To create your base profile

1 In My webMethods: Administration > Integration > B2B > Partner Profiles.


2 Click Create My Enterprise.
Trading Networks displays a page that you use to fill in the fields for your profile.
3 In the Partner Details panel, fill in the following fields:

Field Specify...

Corporation The name of your corporation, for example, “XYZ Steel Company”.
Name
Organization Optionally, the name of the organizational unit or division within
Unit your corporation, for example, “Sales and Marketing”.
Status Whether you want your profile enabled or disabled.
 To enable the profile, select Active.
 To disable the profile, select Inactive.

Note: You should always keep your profile disabled until you
complete filling in all the information you require in a profile.

Preferred Optionally, the language preference you use if needed for another
Language webMethods component (e.g., webMethods RosettaNet Module).

132 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
8 Defining and Managing Your Profile (Your Enterprise)

4 Add at least one external ID to your profile. To add each external ID, perform the
procedure below. Be sure to include an external ID type for each type of identification
that you use in documents. You can specify an unlimited number of external ID types.
a Click the External IDs tab.
b If the external ID type you want to use is not yet available, perform the following
to add it:
1 Click Add ID Type.
2 In the Type Name file, specify the name of the new external ID type.
3 Click OK.
c To add the external ID, click Add ID.
d Fill in the following fields:

Field Specify...

ID Type The external ID type you want to use.

Note: You can add multiple external IDs that use the same type.

ID Value The value of the external ID type. For example, if you selected DUNS
and your D-U-N-S number is 987654321, specify 987654321 for ID
Value. The maximum length you can specify for an external ID is 128
characters.

e Click OK.
5 You can do one of the following:
 Continue editing the profile without saving.
 Click Save to save the changes you have made and continue working on the
profile.
 Click Save and Close to save the changes and close the profile.

Viewing Your Profile


To view your profile, perform the following procedure.

To view your profile

1 In My webMethods: Administration > Integration > B2B > Partner Profiles.


2 Click My Enterprise.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 133
8 Defining and Managing Your Profile (Your Enterprise)

Updating Your Profile


To update your profile, perform the following procedure. Fields that you must specify are
marked with an asterisk (*):
 “Updating Your Corporation Information” on page 134
 “Managing Your External IDs” on page 135
 “Managing Addresses for Your Corporation” on page 136
 “Managing the Contacts in Your Profile” on page 138
 “Managing Your Partner Group Memberships” on page 139
 “Managing Your Document Delivery Methods” on page 140
 “Updating Extended Fields of Your Profile” on page 145
 “Managing the My webMethods Users Associated with Your Profile” on page 145
 “Managing Your Security Information” on page 147

Note: Although the last step of each profile indicates that you should save the profile,
you can edit several tabs of the profile before saving.

After you have completed your profile, you might need to update it from time to time.
The following are some reasons for updating your own partner profile:
 Change in your corporation information.
 Change in your contact details.
 Change in the port number on which Trading Networks listens for incoming requests.
 Addition of extended profile fields that you need to fill in for your profile.
 Change in the default certificate that Trading Networks uses to digitally sign
documents.

Updating Your Corporation Information


You can add or change your corporation information.

To update the corporation information in your profile

1 In My webMethods: Administration > Integration > B2B > Partner Profiles.


2 Click My Enterprise.

134 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
8 Defining and Managing Your Profile (Your Enterprise)

3 In the Partner Details panel, update any of the following fields:

Field Specify...

Corporation The name of your corporation, for example, “XYZ Steel Company”.
Name
Organization The name of the organizational unit or division within your
Unit corporation, for example, “Sales and Marketing”.
Status Whether you want your profile enabled or disabled.
 To enable the profile, select Active.
 To disable the profile, select Inactive.
Preferred The language preference you use if needed for another webMethods
Language component (e.g., webMethods RosettaNet Module).

4 You can do one of the following:


 Continue editing the profile without saving.
 Click Save to save the changes you have made and continue working on the
profile.
 Click Save and Close to save the changes and close the profile.

Managing Your External IDs


You can add, edit, and delete external IDs. Be sure to include an external ID type for each
type of identification that you use in documents. You can specify an unlimited number of
external ID types.

To update the external IDs in your profile

1 In My webMethods: Administration > Integration > B2B > Partner Profiles.


2 Click My Enterprise.
3 Click the External IDs tab.
4 To add an external ID:
a If the external ID type you want to use is not yet available, perform the following
to add it:
1 Click Add ID Type.
2 In the Type Name file, specify the name of the new external ID type.
3 Click OK.
b To add the external ID, click Add ID.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 135
8 Defining and Managing Your Profile (Your Enterprise)

c Fill in the following fields:

Field Specify...

ID Type The external ID type you want to use.

Note: You can add multiple external IDs that use the same type.

ID Value The value of the external ID type. For example, if you selected DUNS
and your D-U-N-S number is 987654321, specify 987654321 for ID
Value. The maximum length you can specify for an external ID is 128
characters.

d Click OK.
5 To edit an external ID, change the information in the row containing the external ID
that you want to update. You can:
 Select a new external ID type from the ID TYPE list.
 Type a new value in the VALUE field.
6 To delete an external ID:
a Select the check boxes beside the external IDs that you want to delete.
b Click Delete.

Note: Your profile must contain at least one external ID.

7 You can do one of the following:


 Click a different profile tab to continue editing the profile without saving.
 Click Save to save the changes you have made and continue working on the
profile.
 Click Save and Close to save the changes and close the profile.

Managing Addresses for Your Corporation


You can add, edit, and delete addresses for your corporation.

To update the addresses for your corporation

1 In My webMethods: Administration > Integration > B2B > Partner Profiles.


2 Click My Enterprise.
3 Click the Addresses tab.

136 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
8 Defining and Managing Your Profile (Your Enterprise)

4 To add an address:
a Click Add Address.
b Fill in the following fields:

Field Specify...

Address The street address for your corporation, for example, “123
Address Line 2 Main Street, Suite 456”.
Address Line 3
City The city where your corporation is located, for example, “Los
Angeles”.
State/Province The state or province where your corporation is located, for
example, “California”.
Postal Code The postal code (for example, a zip code) for the state or
province where your corporation is located, for example,
“90001”.
Country The country where your corporation is located, for example,
“USA”.

c Click OK.
5 To edit an existing address:

a Click in the EDIT column for the address you want to edit.
b Update the fields. For a description, see step 4b above.
c After updating the fields, click OK.
6 To delete an address:
a Select the check boxes beside the addresses that you want to delete.
b Click Delete.
7 You can do one of the following:
 Click a different profile tab to continue editing the profile without saving.
 Click Save to save the changes you have made and continue working on the
profile.
 Click Save and Close to save the changes and close the profile.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 137
8 Defining and Managing Your Profile (Your Enterprise)

Managing the Contacts in Your Profile


You can add contacts, edit contact information, or remove contacts from your profile.

To update the contacts in your profile

1 In My webMethods: Administration > Integration > B2B > Partner Profiles.


2 Click My Enterprise.
3 Click the Contacts tab.
4 To add a contact:
a Click Add Contact.
b Fill in the following fields:

Field Specify...

Contact Type The type of contact, for example, “Administrative”. Select a


contact type from the list.
Title The contact’s job title, for example, “Trading Network
Administrator”.
Last Name The contact's last (surname) name.
First Name The contact's first (given) name.
E-Mail The contact's e-mail address, for example,
“jsmith@XYZSteel.com”.
Telephone The contact's telephone number, for example,
“1-800-555-1234”.
Extension The contact's extension number. If the telephone number in
the Telephone field identifies the main line for the corporation,
use the Extension field to identify the contact's extension.
Pager The contact's pager number, for example, “1-330-555-7890”.
Fax The contact's fax number, for example, “1-888-555-4897”.
Country The country where your corporation is located, for example,
“USA”.
Address The street address for the contact, for example, “123 Main
Address Line 2 Street, Suite 456”.
Address Line 3
City The city where the contact is located, for example, “Los
Angeles”.

138 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
8 Defining and Managing Your Profile (Your Enterprise)

Field Specify...

State/Province The state or province where the contact is located, for


example, “California”.
Postal Code The postal code (for example, a zip code) for the state or
province where the contact is located, for example, “90001”.

c Click OK.
5 To edit a contact:

a Click in the EDIT column for the address you want to edit.
b Update the fields. For a description, see step 4b above.
c After updating the fields, click OK.
6 To delete a contact:
a Select the check boxes beside the contacts that you want to delete.
b Click Delete.
7 You can do one of the following:
 Click a different profile tab to continue editing the profile without saving.
 Click Save to save the changes you have made and continue working on the
profile.
 Click Save and Close to save the changes and close the profile.

Managing Your Partner Group Memberships


You can be associated with partner groups. You can create your association with a
partner group only if there are partner groups defined in the database.
To add a new partner group, see “Defining a Partner Group” on page 188.

To manage your partner group membership

1 In My webMethods: Administration > Integration > B2B > Partner Profiles.


2 Click My Enterprise.
3 Click the Partner Group Membership tab.
4 Add your profile to partner groups, identify the partner groups you want to be a
member of by moving the groups from the AVAILABLE GROUPS list to the GROUPS THIS
PARTNER BELONGS TO list.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 139
8 Defining and Managing Your Profile (Your Enterprise)

5 Remove your profile from partner groups that you no longer want to be a member of
by moving the groups from the GROUPS THIS PARTNER BELONGS TO list to the AVAILABLE
GROUPS list.

6 You can do one of the following:


 Click a different profile tab to continue editing the profile without saving.
 Click Save to save the changes you have made and continue working on the
profile.
 Click Save and Close to save the changes and close the profile.

Managing Your Document Delivery Methods


You can add, edit, or delete delivery methods. Delivery methods specify how partners are
to deliver documents to your Trading Networks system. Your Trading Networks system
can deliver documents to your partners using the HTTP, HTTPS, FTP, FTPS, E-mail, and
web service methods. The Deliver document processing action uses the settings on the
Delivery Settings tab.

To update delivery methods in your profile

1 In My webMethods: Administration > Integration > B2B > Partner Profiles.


2 Click My Enterprise.
3 Click the Delivery Settings tab.
4 To add a delivery method to your profile:
a Click Add Delivery Method.
b Select the delivery method from the Delivery Method list.
Trading Networks redisplays the dialog listing the field required for the selected
method.
c In the Delivery Method Name field, type a name for the delivery method. This field
appears only when you are creating a new immediate delivery method, that is,
when you select HTTP, HTTPS, FTP, FTPS, SMTP, or WebService in the Delivery Method
field.
The value that you type in this field is prefixed with the delivery method to form
the complete name, for example, HTTP - XYZSteel, where HTTP is the delivery
method and “XYZSteel” is the value that you provide in this field.
After you create the delivery method, Trading Networks automatically creates the
underlying delivery service with the same name.

140 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
8 Defining and Managing Your Profile (Your Enterprise)

d Fill in the following fields:

Delivery Methods Field Specify...

Primary FTP Host The host name or IP address of your system, for
Primary FTPS example, “XYZSteel.com”.
Primary HTTP
Port The port number on which your system listens
Primary HTTPS
for incoming requests, for example, “5555”.
Secondary FTP
Secondary FTPS Note: If you do not supply a port number,
Secondary HTTP Trading Networks uses the following defaults:
Secondary HTTPS HTTP—80; HTTPS—443; FTP or FTPS—21.
FTP
FTPS
HTTP Location Where to deliver documents when using this
HTTPS delivery method.
 For HTTP or HTTPS, specify the URL partners
should use to send documents to your
system via HTTP or HTTPS. This is typically
the following:
/invoke/wm.tn/receive

 For FTP or FTPS, specify a directory path on


the machine identified by Host and Port to
which your partners should deliver
documents.
Primary E-mail E-mail The e-mail address to which you want a partner
Secondary E-mail to deliver documents, for example,
SMTP “bizdoc@isteel.com”
WebService Response Whether the response received after the web
Handling service execution must be added as an
additional content to the bizdoc or must be
converted to a new document.
 To add the response to the bizdoc, select
Additional Content Part.
 To convert the response to a new document,
select New Document. Trading Networks
processes the new document like any other
document it receives.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 141
8 Defining and Managing Your Profile (Your Enterprise)

Delivery Methods Field Specify...

Web The fully-qualified name of the Web service


Service connector. You deliver the document to the
Connector partner using this Web service connector.
To search for the fully-qualified name of the
Web service connector, click Select. In the Select
Web Service Connector dialog box, select or type
the following fields:
1 In the Package Name field, type the
Integration Server package name in which
the Web service connector exists.
2 In the Namespace Name field, type the
namespace name of the Web service
connector. You can either provide a string or
the entire namespace name. You can also use
wildcard characters for the search.
3 Click Search. Select the required Web service
connector from the list in the Name field.
Mapping The fully-qualified name of the mapping service
Service that provides the input to the Web service
connector.
To search for the fully-qualified name of the
mapping service, click Select. In the Select
Mapping IS Service dialog box, select or type the
following fields:
1 In the Package Name field, type the
Integration Server package name in which
the mapping service exists.
2 In the Namespace Name field, type the
namespace name of the mapping service.
You can either provide a string or the entire
namespace name. You can also use wildcard
characters for the search.
3 Click Search. Select the required mapping
service from the list in the Name field.

142 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
8 Defining and Managing Your Profile (Your Enterprise)

Delivery Methods Field Specify...

Output The output parameter of the Web service


Parameter connector that contains the required response.
Based on the option you select in the Response
Handling field, the response is either added to the
bizdoc of the transaction, or converted to a new
document.
To search for output parameters, click Select and
select the required parameter in the Key field.
Security The certificates that must be used to secure the
Options communication between your Trading
Networks and the partner web service.
Select one or more security options listed below
to specify the certificate information that
Trading Networks must use.
 Secure: Trading Networks uses Secure
Sockets Layer (SSL) while exchanging the
documents.
 Sign: Trading Networks uses the specific
private key required to sign the documents
exchanged.
 Verify: Trading Networks verifies the digital
signatures of the documents exchanged.
 Encrypt: Trading Networks encrypts the
document being delivered to the partner.
 Decrypt: Trading Networks decrypts the
documents received from the partner.
Key/Value The input parameter values that you can
provide for the Web service connector while
defining the delivery method.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 143
8 Defining and Managing Your Profile (Your Enterprise)

Delivery Methods Field Specify...

Input Whether the blank fields in Key/Value are inputs


empty to the Web service connector. That is, when a
values for field in Key/Value is blank:
string
 Select this option when Trading Networks
types?
must pass an empty string as the values for
the corresponding input parameters of the
Web service connector.
 Do not select this option when Trading
Networks must ignore the empty strings
and only consider the values from the
corresponding input parameters of the Web
service connector.

e If you prefer that partners use this delivery method to deliver documents to your
Trading Networks system, select the Use as preferred protocol check box.
If the Use as preferred protocol is not selected for any delivery method, Trading
Networks uses the Queue for polling delivery method.
f Click OK.
4 To edit a delivery method:

a Click in the EDIT column for the delivery method you want to edit.
b Update the fields. For a description, see step 4d above.
c If you prefer that partners use this delivery method to deliver documents to your
Trading Networks system, select the Use as preferred protocol check box.
If the Use as preferred protocol is not selected for any delivery method, Trading
Networks uses the Queue for polling delivery method.
d After updating the fields, click OK.
5 To delete a delivery method:
a Select the check boxes beside the delivery methods that you want to delete.
b Click Delete.
6 You can do one of the following:
 Click a different profile tab to continue editing the profile without saving.
 Click Save to save the changes you have made and continue working on the
profile.
 Click Save and Close to save the changes and close the profile.

144 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
8 Defining and Managing Your Profile (Your Enterprise)

Updating Extended Fields of Your Profile


You can edit the values for the extended fields.

To update extended field values in your profile

1 In My webMethods: Administration > Integration > B2B > Partner Profiles.


2 Click My Enterprise.
3 Click the Extended Fields tab.
4 Update the values for any of the extended fields.

Note: If you do not know what to specify for an extended field and the description
does not indicate what to specify, contact your Trading Networks administrator to
determine what to specify.

5 You can do one of the following:


 Click a different profile tab to continue editing the profile without saving.
 Click Save to save the changes you have made and continue working on the
profile.
 Click Save and Close to save the changes and close the profile.

Managing the My webMethods Users Associated with Your Profile


You can associate one or more My webMethods user accounts with your profile. For
more information about how Trading Networks works with My webMethods user
accounts, see “Central User Management—How Integration Server Authorizes My
webMethods Users” on page 58.
To associate a My webMethods user account, you can have Trading Networks:
 Define a new My webMethods user account where you specify the user name and
password and associate that user account with your profile.
 Associate an existing My webMethods user account with your profile.
 Define a new My webMethods user account where Trading Networks uses the values
of one of the external IDs defined in your profile as the user name for the account and
then associate that user account with your profile.

To manage the My webMethods user accounts associated with your profile

1 In My webMethods: Administration > Integration > B2B > Partner Profiles.


2 Click My Enterprise.
3 Click the Users tab.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 145
8 Defining and Managing Your Profile (Your Enterprise)

4 To add a new My webMethods user account where you specify the user name and
password and associate that user account with your profile:
a Click Add Users.
b Select Add new user.
c In the User Information section of the dialog, fill in the following fields:

Field Specify...

User name The user name that you want to assign to the user you are
adding.
The user ID can be 1 through 255 characters and can
contain only alphanumeric ASCII characters with no
spaces. The user ID is not case sensitive.

Note: My webMethods Server adds the user ID to the


internal system directory service using the case you
specify. My webMethods Server typically regards user IDs
as case-insensitive; however, My webMethods Server uses
the case you specify for actions that are case-sensitive, for
example, HTTP authentication.

Password The password for the new user.


Confirm Password The same password you specified in the Password field.

d Click OK.
5 To associate an existing My webMethods user account with your profile:
a Select Add existing user.
b In the Search for Available Users, specify a single keyword that is contained in the
first name, last name, e-mail address, or user name of the user account that you
want to associate with the profile.
c Click Go.
d To associate users with your profile, move the users from the AVAILABLE USERS to
the SELECTED USERS list.
e Click OK.
6 To add a new My webMethods user account where you use the value of one of your
external IDs as the user name for the user account and associate that user account
with your profile:
a Select Add user from external ID.
b Select the external ID you want to use from the External ID list.
c In the User Information section of the dialog, fill in the following fields:

146 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
8 Defining and Managing Your Profile (Your Enterprise)

Field Specify...

External ID The external ID you want to use.

Note: The value for the external ID must be 1 through 255


characters and can contain only alphanumeric ASCII
characters with no spaces.

Note: The user ID is not case sensitive; however, My


webMethods Server adds the user ID to the internal
system directory service using the case used for the
external ID value. My webMethods Server uses this case
for actions that are case-sensitive, for example, HTTP
authentication.

Password The password for the new user.


Confirm Password The same password you specified in the Password field.

d Click OK.
7 To remove My webMethods user accounts that are associated with your profile.
a Select the check boxes beside the user accounts that you want to delete.
b Click Remove.

Note: Trading Networks does not delete the user accounts.

8 You can do one of the following:


 Click a different profile tab to continue editing the profile without saving.
 Click Save to save the changes you have made and continue working on the
profile.
 Click Save and Close to save the changes and close the profile.

Managing Your Security Information


You can add certificate sets, manage certificates and private keys in existing certificate
sets, and delete certificate sets.
When you add a certificate, be sure also to add the CA certificate(s) and private key that
are associated with the certificate. The certificates, CA certificates, and private keys must
reside in your file system. Trading Networks can import files that have a .der, .cer, or .p7b
extension. If you import a .der file, Trading Networks appends it to the existing certificate
chain list. However, if you import a .cer or .p7b file, Trading Networks replaces the
certificate chain list with the .cer or .p7b file.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 147
8 Defining and Managing Your Profile (Your Enterprise)

Likewise, if you add a private key, be sure also to add the certificate and CA certificate(s)
that are associated with the private key.

Adding Certificate Sets


You can add certificate sets that Trading Networks uses during processing.

Add this type of


certificate set... To…
SSL Client Enable Trading Networks to act as an SSL client to connect to a
remote secure server.
Decrypt/Encrypt Decrypt documents that your Enterprise receives from partners.
Sign/Verify Digitally sign documents that your Enterprise sends to partners.

When looking for a certificate set to use, Trading Networks first looks for a certificate set
associated with a specific partner. For example, if Trading Networks needs to digitally
sign a document to send to partner A, it first looks in your profile to determine whether
you have a certificate set for partner A. If you do, Trading Networks uses those
Sign/Verify certificates. If it does not have a set of certificates for the specific partner,
Trading Networks uses the Default certificate set.

To add certificate sets to your profile

1 In My webMethods: Administration > Integration > B2B > Partner Profiles.


2 Click My Enterprise.
3 Click the Certificates tab.
4 To add the default certificate set:

a Under the Default branch of the tree on the Certificates tab, click in the EDIT
column for the certificates a you want to add (SSL, Encrypt/Decrypt, or Sign/Verify).
b To add the private key, click Browse and use the Choose File dialog box to select
the private key file.
c To add a certificate, click Add Certificate, then click Browse and use the Choose File
dialog box to select the certificate file.
d Click OK.
5 To add certificate sets that you want Trading Networks to use when with specific
partners:
a Click Add Certificate Set.
b Use the search panel to search for the profiles of the partners you want to add
certificate sets for. For instructions for how to search for the partner profiles:

148 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
8 Defining and Managing Your Profile (Your Enterprise)

 Keyword searches, see “Performing a Keyword Search for Partner Profiles” on


page 157
 Advanced search, see “Performing an Advanced Search for Partner Profiles”
on page 158
 Saved search, see the Working with My webMethods guide
Trading Networks populates the AVAILABLE PARTNERS list with the results of your
search.
c Select the partners that you want to add certificate sets for by moving the partner
profiles from the AVAILABLE PARTNERS list to the SELECTED PARTNERS list.
d Click OK.
Trading Networks adds a branch to the tree for each partner you selected.
e For each partner, perform the following to add a certificate set for that partner:
1 Expand the tree for the partner.

2 Click in the EDIT column for the certificates you want to add (SSL,
Encrypt/Decrypt, or Sign/Verify).
3 To add the private key, click Browse and use the Choose File dialog box to
select the private key file.

Note: If you add a private key, be sure also to add the certificate and CA
certificate(s) that are associated with the private key.

4 To add a certificate, click Add Certificate; then click Browse and use the Choose
File dialog box to select the certificate file.
5 Click OK.
6 You can do one of the following:
 Click a different profile tab to continue editing the profile without saving.
 Click Save to save the changes you have made and continue working on the
profile.
 Click Save and Close to save the changes and close the profile.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 149
8 Defining and Managing Your Profile (Your Enterprise)

Managing Certificate Sets


You can add new certificates to or remove certificates from existing certificate sets.
Additionally, you can add private keys to or remove private keys from existing certificate
sets.

To manage certificate sets

1 In My webMethods: Administration > Integration > B2B > Partner Profiles.


2 Click My Enterprise.
3 Click the Certificates tab.
4 Expand the branch for the certificate set that you want to work with.

5 Click in the EDIT column for the certificates you want to update (SSL,
Encrypt/Decrypt, or Sign/Verify).
6 To remove the private key, select the Clear Private Key check box.
7 To add or update the private key, click Browse and use the Choose File dialog box to
select the private key file.
8 To add a new certificate:
a To add a certificate, click Add Certificate; then click Browse and use the Choose File
dialog box to select the certificate file.
b Click OK.

9 To remove a certificate, in the Certificates section of the screen, click in the REMOVE
column for the certificate you want to remove.
10 Click OK.
11 You can do one of the following:
 Click a different profile tab to continue editing the profile without saving.
 Click Save to save the changes you have made and continue working on the
profile.
 Click Save and Close to save the changes and close the profile.

Enabling Your Profile—Changing the Status to Active


Before you can exchange documents with partners, you must enable your profile by
updating your status to “Active”. Enabling your profile allows you to exchange
documents with partners. When you enable your profile, Trading Networks changes the
status of the profile to “Active”.
For more information about statuses, see “Profile Statuses” on page 113.

150 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
8 Defining and Managing Your Profile (Your Enterprise)

To enable your profile

1 In My webMethods: Administration > Integration > B2B > Partner Profiles.


2 Click My Enterprise.
3 In the Partner Details panel, select Active from the Status list.
4 You can do one of the following:
 Continue editing the profile without saving.
 Click Save to save the changes you have made and continue working on the
profile.
 Click Save and Close to save the changes and close the profile.

Disabling Your Profile—Changing the Status to Inactive


When you disable your profile, Trading Networks changes the status of your profile to
“Inactive”. As a result, you will not be able to exchange documents with your partners.
For more information about statuses, see “Profile Statuses” on page 113.

To disable your profile

1 In My webMethods: Administration > Integration > B2B > Partner Profiles.


2 Click My Enterprise.
3 In the Partner Details panel, select Inactive from the Status list.
4 You can do one of the following:
 Continue editing the profile without saving.
 Click Save to save the changes you have made and continue working on the
profile.
 Click Save and Close to save the changes and close the profile.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 151
8 Defining and Managing Your Profile (Your Enterprise)

152 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
9 Defining and Managing Partner Profiles

 Adding Partner Profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154


 Searching for Partner Profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
 Viewing Partner Profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
 Updating Partner Profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
 Copying a Partner Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
 Suspending Delivery for a Partner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
 Deleting a Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
 Disabling a Partner’s Profile—Changing the Status to Inactive . . . . . . . . . . . . . . . . . . . . . . . . . . 183
 Enabling a Partner’s Profile—Changing the Status to Active . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
 Searching for Certificates that Are Expired or Expiring Soon . . . . . . . . . . . . . . . . . . . . . . . . . . . 184

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 153
9 Defining and Managing Partner Profiles

Adding Partner Profiles


If you are using Trading Networks, you can add as many partners as you want. If you are
using webMethods for Partners and do not already have a partner, you can add a single
partner; webMethods for Partners allows you to maintain only a single partner. When
you add a profile, you are adding a partner to your network.
Before you can create partner profiles, fulfill the following prerequisites:

Prerequisite
1 Create and enable your Enterprise profile. For instructions, see “Creating Your Own
Profile” on page 132 and “Enabling Your Profile—Changing the Status to Active”
on page 150.
2 Review the fields you need to fill out for partner profiles.
3 For each partner, obtain the partner information that you require in the profiles on
your system and have this information available when you create the profile.

Perform the procedure in this section to add a partner profile and fill in the minimum
fields to create the profile. For instructions for how to add additional information to the
profile, see “Updating Partner Profiles” on page 159. Although this section describes how
to create the base profile, then edit the profile to add additional information, you can add
all information when creating the profile. You can make your changes to multiple tabs
and save one time.
If you want to add a partner profile that is similar to an existing profile, use the procedure
in “Copying a Partner Profile” on page 180. When you copy an existing profile, the form
for the new profile is pre-filled with information from the profile that you select to copy.

To create a base partner profile

1 In My webMethods: Administration > Integration > B2B > Partner Profiles.


2 Click Add Profile.
Trading Networks displays a page that you use to fill in the fields for the profile.
3 In the Partner Details panel, fill in the following fields:

Field Specify...

Corporation The name of the partner’s corporation, for example, “XYZ Steel
Name Company”.
Organization Optionally, the name of the organizational unit or division within
Unit the corporation, for example, “Sales and Marketing”.

154 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
9 Defining and Managing Partner Profiles

Field Specify...

Status Whether you want the profile enabled or disabled.


 To enable the profile, select Active.
 To disable the profile, select Inactive.

Note: You should keep the profile Inactive until you have completed
filling in all the information you require in a profile, for example,
delivery methods, users, etc.

Preferred Optionally the language preference the partner uses if needed for
Language another webMethods component (e.g., webMethods RosettaNet
Module).

4 Add at least one external ID to the profile. To add each external ID, perform the
procedure below. Be sure to include an external ID type for each type of identification
that the partner uses in documents. You can specify an unlimited number of external
ID types.
a Click the External IDs tab.
b If the external ID type you want to use is not yet available, perform the following
to add it:
1 Click Add ID Type.
2 In the Type Name file, specify the name of the new external ID type.
3 Click OK.
c To add the external ID, click Add ID.
d Fill in the following fields:

Field Specify...

ID Type The external ID type you want to use.

Note: You can add multiple external IDs that use the same type.

ID Value The value of the external ID type. For example, if you selected
DUNS and your D-U-N-S number is 987654321, specify 987654321
for ID Value. The maximum length you can specify for an external
ID is 128 characters.

e Click OK.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 155
9 Defining and Managing Partner Profiles

5 You can do one of the following:


 Continue editing the profile without saving.
 Click Save to save the changes you have made and continue working on the
profile.
 Click Save and Close to save the changes and close the profile.

Searching for Partner Profiles


The following table lists tasks related to searching for partner profiles and where to find
more information about each task.

Task For more information, see...


Search for partner profiles with corporation “Performing a Keyword Search for
names and external IDs that contain Partner Profiles” on page 157
keywords that you specify.
Perform a detailed search for partner “Performing an Advanced Search for
profiles. Partner Profiles” on page 158
Set the following search options for the Working with My webMethods guide
Administration > Integration > B2B >
Partner Profiles page:
 The search tab that Trading Networks
displays when initially displaying the
Partner Profiles page
 The search you want Trading Networks
to execute, if any, when initially
displaying the Partner Profiles page
 The maximum number of search results
you want Trading Networks to display
in response to a search
Set the following display options for how Working with My webMethods guide
Trading Networks displays search results
on the Administration > Integration > B2B >
Partner Profiles page:
 The number of rows that you want
Trading Networks to display on each
page of the search results
 How the search results are sorted
 The columns displayed and the order of
the columns

156 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
9 Defining and Managing Partner Profiles

Task For more information, see...


Save searches for partner profiles. Working with My webMethods guide
Re-execute saved searches for partner Working with My webMethods guide
profiles.

Performing a Keyword Search for Partner Profiles


Use a keyword search to find partner profiles based on their corporation names and
external IDs.

To perform a keyword search for partner profiles

1 In My webMethods: Administration > Integration > B2B > Partner Profiles


2 Click the Keyword tab if it is not already displayed.
3 In the text box, type a keyword. The search will find all profiles that contain the
keyword in an external ID value or the corporation name. The search is case
insensitive.
When typing a keyword, you can use the following wildcard characters:

* to match zero or more characters


? to match a single character

If you separate keywords with a space, Trading Networks searches for profiles where
the keywords are in either the external IDs or the corporation name; however, both
keywords must be present for Trading Networks to find a match. For example, if you
specify abc corp, Trading Networks would return a profile with an external ID value
that is abc and the corporation name is corp. However, if neither the external IDs nor
the corporation name contain abc, even if the corp name is corp, Trading Networks
would not return the profile because the keyword abc is not present.
If you put the keywords in quotes, Trading Networks searches for profiles where all
keywords are in either the external ids and/or corporation name. For example, if you
specify “abc corp”, Trading Networks returns profiles where the external IDs contain
abc corp and/or where the corporation name contains abc corp.
If you leave the text box blank, Trading Networks searches for all partner profiles that
you are authorized to view. For more information about how to specify keywords, see
the Working with My webMethods guide.
4 Click Go to execute the search.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 157
9 Defining and Managing Partner Profiles

Performing an Advanced Search for Partner Profiles


Use an advanced search to specify detailed criteria to search for specific partner profiles.

To perform an advanced search for partner profiles

1 In My webMethods: Administration > Integration > B2B > Partner Profiles.


2 Click the Advanced tab if it is not already displayed.
3 In the text box, optionally type a keyword that is contained in the corporation names
and external IDs of the profiles you want to find. For more information about how to
specify the keyword, see step 3 in “Performing a Keyword Search for Partner
Profiles” on page 157.
For more information about how to specify keywords, see the Working with My
webMethods guide.
4 Specify one or more filters. For each filter:
a Select a search field from the FIELD NAME list.
b Select the operator you want to use to compare the field from the OPERATOR list.
c Specify the value you want to use in the comparison in the VALUE field.
d If you want to add another filter, click Add and repeat step 4.
If you do not want to add another filter, continue with step 5.
5 Specify whether Trading Networks is to search for profiles that match all of the search
criteria or search for profiles that match any of the criteria that you specify.
 To specify that Trading Networks is to match all criteria, select AND from the
Search Condition list.
 To specify that Trading Networks is to match any of the criteria, select OR from the
Search Condition list.

Note: If you specify multiple criteria for a single field, when forming the query to
search for profiles, Trading Networks always uses an OR condition between each
criteria, regardless of what you specify for the Search Condition field.

6 Click Go to execute the search.

158 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
9 Defining and Managing Partner Profiles

Viewing Partner Profiles


To view a partner profile, perform the following procedure.

To view a partner profile

1 Search for the profile you want to view. If you need procedures for this step, see
“Performing a Keyword Search for Partner Profiles” on page 157 or “Performing an
Advanced Search for Partner Profiles” on page 158.

2 To view the profile, click in the ACTION column.

Updating Partner Profiles


To update a partner profile, perform the following procedure. Fields that you must
specify are marked with an asterisk (*):
 “Updating Your Partner’s Corporation Information” on page 160
 “Managing Your Partner’s External IDs” on page 161
 “Managing Your Partner’s Addresses for the Corporation” on page 162
 “Managing Your Partner’s Contact Information” on page 163
 “Managing Your Partner’s Group Memberships” on page 165
 “Managing Reliable Delivery and Polling Settings in a Partner Profile” on page 165
 “Managing Document Delivery Methods in a Partner Profile” on page 167
 “Updating Extended Fields in a Partner Profile” on page 174
 “Managing the My webMethods Users Associated with the Partner’s Profile” on
page 174
 “Managing Your Partner’s Security Information” on page 177

Note: Although the last step of each profile indicates that you should save the profile,
you can edit several tabs of the profile before saving.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 159
9 Defining and Managing Partner Profiles

Updating Your Partner’s Corporation Information


You can add or change the corporation information.

To update the corporation information in a profile

1 Search for the profile you want to update. If you need procedures for this step, see
“Performing a Keyword Search for Partner Profiles” on page 157 or “Performing an
Advanced Search for Partner Profiles” on page 158.

2 To edit the profile, click in the ACTION column.


3 In the Partner Details panel, update any of the following fields:

Field Specify...

Corporation The name of the partner’s corporation, for example, “XYZ Steel
Name Company”.
Organization The name of the organizational unit or division within the partner’s
Unit corporation, for example, “Sales and Marketing”.
Status Whether you want the profile enabled or disabled.
 To enable the profile, select Active.
 To disable the profile, select Inactive.
Preferred The language preference the partner uses if needed for another
Language webMethods component (e.g., webMethods RosettaNet Module).

4 You can do one of the following:


 Continue editing the profile without saving.
 Click Save to save the changes you have made and continue working on the
profile.
 Click Save and Close to save the changes and close the profile.

160 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
9 Defining and Managing Partner Profiles

Managing Your Partner’s External IDs


You can add, edit, and delete external IDs. Be sure to include an external ID type for each
type of identification that the partner uses in documents. You can specify an unlimited
number of external ID types.

To update external IDs for a partner profile

1 Search for the profile you want to update. If you need procedures for this step, see
“Performing a Keyword Search for Partner Profiles” on page 157 or “Performing an
Advanced Search for Partner Profiles” on page 158.

2 To edit the profile, click in the ACTION column.


3 Click the External IDs tab.
4 To add an external ID:
a If the external ID type you want to use is not yet available, perform the following
to add it:
1 Click Add ID Type.
2 In the Type Name file, specify the name of the new external ID type.
3 Click OK.
b To add the external ID, click Add ID.
c Fill in the following fields:

Field Specify...

ID Type The external ID type you want to use.

Note: You can add multiple external IDs that use the same type.

ID Value The value of the external ID type. For example, if you selected DUNS
and your D-U-N-S number is 987654321, specify 987654321 for ID
Value. The maximum length you can specify for an external ID is 128
characters.

d Click OK.
5 To edit an external ID, change the information in the row containing the external ID
that you want to update. You can:
 Select a new external ID type from the ID TYPE list.
 Type a new value in the VALUE field.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 161
9 Defining and Managing Partner Profiles

6 To delete an external ID:


a Select the check boxes beside the external IDs that you want to delete.
b Click Delete.

Note: The profile must contain at least one external ID.

7 You can do one of the following:


 Click a different profile tab to continue editing the profile without saving.
 Click Save to save the changes you have made and continue working on the
profile.
 Click Save and Close to save the changes and close the profile.

Managing Your Partner’s Addresses for the Corporation


You can add, edit, and delete addresses for the corporation.

To update the addresses for a corporation in a profile

1 Search for the profile you want to update. If you need procedures for this step, see
“Performing a Keyword Search for Partner Profiles” on page 157 or “Performing an
Advanced Search for Partner Profiles” on page 158.

2 To edit the profile, click in the ACTION column.


3 Click the Addresses tab.
4 To add an address:
a Click Add Address.
b Fill in the following fields:

Field Specify...

Address The street address for the partner’s corporation, for example,
Address Line 2 “123 Main Street, Suite 456”.
Address Line 3
City The city where the partner’s corporation is located, for
example, “Los Angeles”.
State/Province The state or province where the partner’s corporation is
located, for example, “California”.

162 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
9 Defining and Managing Partner Profiles

Field Specify...

Postal Code The postal code (for example, a zip code) for the state or
province where the partner’s corporation is located, for
example, “90001”.
Country The country where the partner’s corporation is located, for
example, “USA”.

c Click OK.
5 To edit an existing address:

a Click in the EDIT column for the address you want to edit.
b Update the fields. For a description, see step 4b above.
c After updating the fields, click OK.
6 To delete an address:
a Select the check boxes beside the addresses that you want to delete.
b Click Delete.
7 You can do one of the following:
 Click a different profile tab to continue editing the profile without saving.
 Click Save to save the changes you have made and continue working on the
profile.
 Click Save and Close to save the changes and close the profile.

Managing Your Partner’s Contact Information


You can add, edit, or delete contacts. You can specify an unlimited number of contacts.

To update contacts for a partner profile

1 Search for the profile you want to update. If you need procedures for this step, see
“Performing a Keyword Search for Partner Profiles” on page 157 or “Performing an
Advanced Search for Partner Profiles” on page 158.

2 To edit the profile, click in the ACTION column.


3 Click the Contacts tab.
4 To add a contact:
a Click Add Contact.
b Fill in the following fields:

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 163
9 Defining and Managing Partner Profiles

Field Specify...

Contact Type The type of contact, for example, “Administrative”. Select a


contact type from the list.
Title The contact’s job title, for example, “Trading Network
Administrator”.
Last Name The contact's last (surname) name.
First Name The contact's first (given) name.
E-Mail The contact's e-mail address, for example,
“jsmith@XYZSteel.com”.
Telephone The contact's telephone number, for example,
“1-800-555-1234”.
Extension The contact's extension number. If the telephone number in
the Telephone field identifies the main line for the corporation,
use the Extension field to identify the contact's extension.
Pager The contact's pager number, for example, “1-330-555-7890”.
Fax The contact's fax number, for example, “1-888-555-4897”.
Country The country where your corporation is located, for example,
“USA”.
Address The street address for the contact, for example, “123 Main
Address Line 2 Street, Suite 456”.
Address Line 3
City The city where the contact is located, for example, “Los
Angeles”.
State/Province The state or province where the contact is located, for
example, “California”.
Postal Code The postal code (for example, a zip code) for the state or
province where the contact is located, for example, “90001”.

c Click OK.
5 To edit a contact:

a Click in the EDIT column for the address you want to edit.
b Update the fields. For a description, see step 4b above.
c After updating the fields, click OK.
6 To delete a contact:
a Select the check boxes beside the contacts that you want to delete.
b Click Delete.

164 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
9 Defining and Managing Partner Profiles

7 You can do one of the following:


 Click a different profile tab to continue editing the profile without saving.
 Click Save to save the changes you have made and continue working on the
profile.
 Click Save and Close to save the changes and close the profile.

Managing Your Partner’s Group Memberships


You can add or remove your partner from partner groups. You can associate partners
with a partner group only if there are partner groups defined in the database.
To add a new partner group, see “Defining a Partner Group” on page 188.

To update your partner’s group membership

1 Search for the profile of the partner you want to update. If you need procedures for
this step, see “Performing a Keyword Search for Partner Profiles” on page 157 or
“Performing an Advanced Search for Partner Profiles” on page 158.

2 To edit the profile, click in the ACTION column.


3 Click the Partner Group Membership tab.
4 Add the partner profile to partner groups, identify the partner groups by moving the
groups from the AVAILABLE GROUPS list to the GROUPS THIS PARTNER BELONGS TO list.
5 Remove the partner profile from partner groups that you no longer want it to be a
member of by moving the groups from the GROUPS THIS PARTNER BELONGS TO list to the
AVAILABLE GROUPS list.

6 You can do one of the following:


 Click a different profile tab to continue editing the profile without saving.
 Click Save to save the changes you have made and continue working on the
profile.
 Click Save and Close to save the changes and close the profile.

Managing Reliable Delivery and Polling Settings in a Partner Profile


Trading Networks uses reliable delivery settings when delivering documents to a partner
and reliable delivery is being used. For more information about reliable delivery, see
“Using Reliable Delivery with Immediate Delivery Method” on page 346 and “Using
Reliable Delivery with Scheduled Delivery” on page 347.
Trading Networks uses the polling settings to polling for documents that are waiting in
the partner’s system.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 165
9 Defining and Managing Partner Profiles

To update reliable delivery and polling settings in a partner profile

1 Search for the profile you want to update. If you need procedures for this step, see
“Performing a Keyword Search for Partner Profiles” on page 157 or “Performing an
Advanced Search for Partner Profiles” on page 158.

2 To edit the profile, click in the ACTION column.


3 Click the Delivery Settings tab.

Note: You can also use the Delivery Settings tab to manage delivery methods. For
more information, see “Managing Document Delivery Methods in a Partner
Profile” on page 167.

4 Update the following reliable delivery settings using the following fields:

Field Description

Delivery Maximum The number of times you want Trading Networks to attempt
Retries to re-deliver a document to the partner when Trading
Networks is using reliable delivery. Specify a whole number.

Note: The Delivery Maximum Retries, Wait Between Retries, and


Retry Factor options are only used when Trading Networks is
using reliable delivery (delivery tasks). The Delivery Maximum
Retries option is used for both immediate and scheduled
delivery methods.

Wait Between The number of milliseconds you want Trading Networks to


Retries wait before making its first attempt to redeliver the document
when Trading Networks is using reliable delivery. Trading
Networks uses the Retry Factor along with the Wait Between
Retries value to calculate how long to wait for subsequent retry
attempts.

Note: The Wait Between Retries and Retry Factor options are only
used when Trading Networks is using reliable delivery for an
immediate delivery method (as opposed to a scheduled
delivery method). Trading Networks does not use the Wait
Between Retries and Retry Factor settings for reliable delivery
with scheduled delivery because the queue’s delivery schedule
dictates how often to retry delivery attempts.

166 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
9 Defining and Managing Partner Profiles

Field Description

Retry Factor The factor you want Trading Networks to use when
determining how long to wait before making the second and
subsequent attempts to redeliver the document when Trading
Networks is using reliable delivery. Trading Networks
calculates the time to wait by multiplying the last wait time by
Retry Factor. Specify a whole number greater than zero for Retry
Factor.

5 Update the following polling settings:

Field Description

Polling Method The method that your Trading Networks system uses to
contact the partner’s system to request queued documents.
Select the method from the list.

Note: If you do not want your Trading Networks system to


poll for documents, select the blank entry.

Polling Frequency How often in minutes you want your Trading Networks to
poll the partner’s system for documents.

6 You can do one of the following:


 Click a different profile tab to continue editing the profile without saving.
 Click Save to save the changes you have made and continue working on the
profile.
 Click Save and Close to save the changes and close the profile.

Note: For more information about the Suspend Delivery check box, see “Suspending
Delivery for a Partner” on page 181.

Managing Document Delivery Methods in a Partner Profile


You can add, edit, or delete delivery methods. Delivery methods specify how your
Trading Networks system delivers documents to the partner associated with a profile.
The Deliver document processing action uses the settings on the Delivery Method tab. For
more information about the Deliver Document By processing action, see “Action 4—Deliver
the Document to the Receiver” on page 344.
Your Trading Networks can deliver documents to your partners using the HTTP, HTTPS,
FTP, FTPS, E-mail, and Web Service methods.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 167
9 Defining and Managing Partner Profiles

To update delivery methods for a partner profile

1 Search for the profile you want to update. If you need procedures for this step, see
“Performing a Keyword Search for Partner Profiles” on page 157 or “Performing an
Advanced Search for Partner Profiles” on page 158.

2 To edit the profile, click in the ACTION column.


3 Click the Delivery Settings tab.

Note: You can also use the Delivery Settings tab to manage reliable delivery and
polling settings. For more information, see “Managing Reliable Delivery and
Polling Settings in a Partner Profile” on page 165.

4 To add a delivery method to your profile:


a Click Add Delivery Method.
b Select the delivery method you want to add to from the Delivery Method list.
Trading Networks redisplays the dialog listing the field required for the selected
method.
c In the Delivery Method Name field, type a name for the delivery method. This field
appears only when you are creating a new immediate delivery method, that is,
when you select HTTP, HTTPS, FTP, FTPS, SMTP, or WebService in the Delivery Method
field.
The value that you type in this field is prefixed with the delivery method to form
the complete name, for example, HTTP - XYZSteel, where HTTP is the delivery
method and “XYZSteel” is the value that you provide in this field.
After you create the delivery method, Trading Networks automatically creates the
underlying delivery service with the same name.
d Fill in the following fields:

Delivery Methods Field Specify...

Primary FTP Host The host name of the partner’s system, for
Primary FTPS example, “XYZSteel.com”.
Primary HTTP
Port The port number on which the partner’s system
Primary HTTPS
listens for incoming requests, for example,
Secondary FTP
“5555”.
Secondary FTP
Secondary HTTP Note: If you do not supply a port number,
Secondary HTTPS Trading Networks uses the following defaults:
FTP HTTP—80; HTTPS—443; FTP or FTPS—21.
FTPS
HTTP
HTTPS

168 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
9 Defining and Managing Partner Profiles

Delivery Methods Field Specify...

Location Where to deliver documents when using this


delivery method.
 For HTTP or HTTPS, specify the URL Trading
Networks is to use when sending a
document to the partner’s system, for
example, “cgi-bin/acceptOrder”. If the
partner is using Trading Networks, this is
typically the following:
/invoke/wm.tn/receive

 For FTP or FTPS, specify the directory path


on the partner’s system identified by Host
and Port. Trading Networks delivers the
document to this directory.
User Name The user name that your Trading Networks
system is to supply when connecting to the
partner’s system to deliver documents.
The user account can be either an Integration
Server user account or My webMethods user
account; however, it must be a user account that
has partner authority; that is, a member of the
TNPartners IS group.

Note: If you do not know what to specify for


User Name, contact the partner.

Password The password that your Trading Networks


system is to supply (along with User Name)
when connecting to the partner’s system.
Primary E-mail E-mail The e-mail address of the partner to which you
Secondary E-mail must deliver documents, for example,
SMTP “bizdoc@isteel.com”

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 169
9 Defining and Managing Partner Profiles

Delivery Methods Field Specify...

WebService Response Whether the response received after the web


Handling service execution must be added as an
additional content to the bizdoc or must be
converted to a new document.
 To add the response as an additional
content in the bizdoc, select Additional
Content Part.
 To convert the response to a new document,
select New Document. Trading Networks
processes the new document like any other
document it receives.
Web The fully-qualified name of the Web service
Service connector that you created in Integration
Connector Server.
To search for the fully-qualified name of the
Web service connector, click Select. In the Select
Web Service Connector dialog box, select or type
the following fields:
1 In the Package Name field, type the
Integration Server package name in which
the Web service connector exists.
2 In the Namespace Name field, type the
namespace name of the Web service
connector. You can either provide a string
or the entire namespace name. You can also
use wildcard characters for the search.
3 Click Search. Select the required Web
service connector from the list in the Name
field.

170 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
9 Defining and Managing Partner Profiles

Delivery Methods Field Specify...

Mapping The fully-qualified name of the mapping


Service service that provides the input to the Web
service connector.
To search for the fully-qualified name of the
mapping service, click Select. In the Select
Mapping IS Service dialog box, select or type the
following fields:
1 In the Package Name field, type the
Integration Server package name in which
the mapping service exists.
2 In the Namespace Name field, type the
namespace name of the mapping service.
You can either provide a string or the entire
namespace name. You can also use
wildcard characters for the search.
3 Click Search. Select the required mapping
service from the list in the Name field.
Output The output parameter of the Web service
Parameter connector that contains the required response.
Based on the option you select in the Response
Handling field, the response is either added to
the bizdoc of the transaction, or converted to a
new document.
To search for the output parameters, click Select
and select the required parameter in the Key
field.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 171
9 Defining and Managing Partner Profiles

Delivery Methods Field Specify...

Security The certificates that must be used to secure the


Options communication between the partner and your
Trading Networks.
Select one or more security options listed below
to specify the certificate information that
Trading Networks must use.
 Secure: Trading Networks uses Secure
Sockets Layer (SSL) while exchanging the
documents.
 Sign: Trading Networks uses the specific
private key required to sign the documents
exchanged.
 Verify: Trading Networks verifies the digital
signatures of the documents exchanged.
 Encrypt: Trading Networks encrypts the
document being delivered to the partner.
 Decrypt: Trading Networks decrypts the
documents received from the partner.
Key/Value The input parameter values that you can
provide for the Web service connector while
defining the delivery method.
Input empty Whether the blank fields in Key/Value are inputs
values for to the Web service connector. That is, when a
string field in Key/Value is blank,
types?
 Select this option when Trading Networks
must pass an empty string as the values for
the corresponding input parameters of the
Web service connector.
 Do not select this option when Trading
Networks must ignore the empty strings
and only consider the values from the
corresponding input parameters of the Web
service connector.

172 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
9 Defining and Managing Partner Profiles

Delivery Methods Field Specify...

Queue for Use Public The public queue you want to use.
delivery Queue
Select the Use Public Queue and then select the
name of a public queue from the list.
Use Private The definition of the private queue.
Queue
For instructions for how to define a private
queue, see “Defining Private Queues” on
page 383.

e If the partner prefers that your system uses this delivery method to deliver
documents to the partner’s system, select the Use as preferred protocol check box.
If the Use as preferred protocol is not selected for any delivery method, Trading
Networks uses the Queue for polling delivery method.

Note: You cannot select the Queue for delivery as the preferred protocol.

f Click OK.
4 To edit a delivery method:

a Click in the EDIT column for the delivery method you want to edit.
b Update the fields. For a description, see step 4d above.
c If the partner prefers that your system uses this delivery method to deliver
documents to the partner’s system, select the Use as preferred protocol check box.
If the Use as preferred protocol is not selected for any delivery method, Trading
Networks uses the Queue for polling delivery method. You cannot select the Queue
for delivery as the preferred protocol.
d After updating the fields, click OK.
5 To delete a delivery method:
a Select the check boxes beside the delivery methods that you want to delete.
b Click Delete.
6 You can do one of the following:
 Click a different profile tab to continue editing the profile without saving.
 Click Save to save the changes you have made and continue working on the
profile.
 Click Save and Close to save the changes and close the profile.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 173
9 Defining and Managing Partner Profiles

Updating Extended Fields in a Partner Profile


You can edit the values for the extended fields.

To update extended fields in a partner profile

1 Search for the profile you want to update. If you need procedures for this step, see
“Performing a Keyword Search for Partner Profiles” on page 157 or “Performing an
Advanced Search for Partner Profiles” on page 158.

2 To edit the profile, click in the ACTION column.


3 Click the Extended Fields tab.
4 Update the values for any of the extended fields.

Note: If you do not know what to specify for an extended field and the description
does not indicate what to specify, contact your Trading Networks administrator to
determine what to specify.

5 You can do one of the following:


 Click a different profile tab to continue editing the profile without saving.
 Click Save to save the changes you have made and continue working on the
profile.
 Click Save and Close to save the changes and close the profile.

Managing the My webMethods Users Associated with the Partner’s


Profile
You can associate one or more My webMethods user accounts with the partner’s profile.
For more information about how Trading Networks works with My webMethods user
accounts, see “Central User Management—How Integration Server Authorizes My
webMethods Users” on page 58.
To associate a My webMethods user account, you can have Trading Networks:
 Define a new My webMethods user account where you specify the user name and
password and associate that user account with the partner profile.
 Associate an existing My webMethods user account with the partner profile.
 Define a new My webMethods user account where Trading Networks uses the values
of one of the external IDs defined in the partner profile as the user name for the
account and then associates that user account with the partner profile.

174 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
9 Defining and Managing Partner Profiles

To manage the My webMethods user accounts associated with the partner profile

1 Search for the profile of the partner you want to update. If you need procedures for
this step, see “Performing a Keyword Search for Partner Profiles” on page 157 or
“Performing an Advanced Search for Partner Profiles” on page 158.

2 To edit the profile, click in the ACTION column.


3 Click the Users tab.
4 To add a new My webMethods user account where you specify the user name and
password and associate that user account with the partner profile:
a Click Add Users.
b Select Add new user.
c In the User Information section of the dialog, fill in the following fields:

Field Specify...

User name The user name that you want to assign to the user you are adding.
The user ID can be 1 through 255 characters and can contain only
alphanumeric ASCII characters with no spaces. The user ID is not
case sensitive.

Note: My webMethods Server adds the user ID to the internal


system directory service using the case you specify. My
webMethods Server typically regards user IDs as case-insensitive;
however, My webMethods Server uses the case you specify for
actions that are case-sensitive, for example, HTTP authentication.

Password The password for the new user.


Confirm The same password you specified in the Password field.
Password

d Click OK.
5 To associate an existing My webMethods user account with the partner profile:
a Select Add existing user.
b In the Search for Available Users, specify a single keyword that is contained in the
first name, last name, e-mail address, or user name of the user account that you
want to associate with the partner.
c Click Go.
d To associate users with the partner profile, move the users from the AVAILABLE
USERS to the SELECTED USERS list.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 175
9 Defining and Managing Partner Profiles

e Click OK.
6 To add a new My webMethods user account where you use the value of one of the
partner’s external IDs as the user name for the user account and associate that user
account with the partner profile:
a Select Add user from external ID.
b Select the external ID you want to use from the External ID list.
c In the User Information section of the dialog, fill in the following fields:

Field Specify...

External ID The external ID you want to use.

Note: The value for the external ID must be 1 through 255


characters and can contain only alphanumeric ASCII characters
with no spaces.

Note: The user ID is not case sensitive; however, My webMethods


Server adds the user ID to the internal system directory service
using the case used for the external ID value. My webMethods
Server uses this case for actions that are case-sensitive, for
example, HTTP authentication.

Password The password for the new user.


Confirm The same password you specified in the Password field.
Password

d Click OK.
7 To remove My webMethods user accounts that are associated with the partner
profile.
a Select the check boxes beside the user accounts that you want to delete.
b Click Remove.

Note: Trading Networks does not delete the user accounts.

8 You can do one of the following:


 Click a different profile tab to continue editing the profile without saving.
 Click Save to save the changes you have made and continue working on the
profile.
 Click Save and Close to save the changes and close the profile.

176 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
9 Defining and Managing Partner Profiles

Managing Your Partner’s Security Information


You can add certificate sets, manage certificates and private keys in existing certificate
sets, and delete certificate sets.
When you add a certificate, be sure also to add the CA certificate(s) and private key that
are associated with the certificate. The certificates, CA certificates, and private keys must
reside in your file system. Trading Networks can import files that have a .der, .cer, or .p7b
extension. If you import a .der file, Trading Networks appends it to the existing certificate
chain list. However, if you import a .cer or .p7b file, Trading Networks replaces the
certificate chain list with the .cer or .p7b file.
Likewise, if you add a private key, be sure also to add the certificate and CA certificate(s)
that are associated with the private key.

Adding Certificate Sets


You can add certificate sets that Trading Networks uses during processing.

Add this type of


certificate set... To…
SSL Client Enable Trading Networks to act as an SSL client to connect to a
remote secure server.
Decrypt/Encrypt Encrypt information that is being sent to a partner.
Sign/Verify Verify the digital signature of documents that were digitally
signed by this partner.

When looking for a certificate set to use, Trading Networks first looks for a certificate set
associated with a specific partner. For example, if Trading Networks needs to verify the
digital signature of partner A, it first looks for a partner A certificate set. If found, Trading
Networks uses those Sign/Verify certificates. If it does not have a set of certificates for the
specific partner, Trading Networks uses the Default certificate set.

To add certificate sets to the profile

1 Search for the profile you want to update. If you need procedures for this step, see
“Performing a Keyword Search for Partner Profiles” on page 157 or “Performing an
Advanced Search for Partner Profiles” on page 158.

2 To edit the profile, click in the ACTION column.


3 Click the Certificates tab.
4 To add the default certificate set:

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 177
9 Defining and Managing Partner Profiles

a Under the Default branch of the tree on the Certificates tab, click in the EDIT
column for the certificates a you want to add (SSL, Encrypt/Decrypt, or Sign/Verify).
b To add the private key, click Browse and use the Choose File dialog box to select
the private key file.
c To add a certificate, click Add Certificate, then click Browse and use the Choose File
dialog box to select the certificate file.
d Click OK.
5 To add certificate sets that you want Trading Networks to use when with specific
partners:
a Click Add Certificate Set.
b Use the search panel to search for the profiles of the partners you want to add
certificate sets for. For instructions for how to search for the partner profiles:
 Keyword searches, see “Performing a Keyword Search for Partner Profiles” on
page 157
 Advanced search, see “Performing an Advanced Search for Partner Profiles”
on page 158
 Saved search, see the Working with My webMethods guide
Trading Networks populates the AVAILABLE PARTNERS list with the results of your
search.
c Select the partners that you want to add certificate sets for by moving the partner
profiles from the AVAILABLE PARTNERS list to the SELECTED PARTNERS list.
d Click OK.
Trading Networks adds a branch to the tree for each partner you selected.
e For each partner, perform the following to add a certificate set for that partner:
1 Expand the tree for the partner.

2 Click in the EDIT column for the certificates you want to add (SSL,
Encrypt/Decrypt, or Sign/Verify).
3 To add the private key, click Browse and use the Choose File dialog box to
select the private key file.

Note: If you add a private key, be sure also to add the certificate and CA
certificate(s) that are associated with the private key.

4 To add a certificate, click Add Certificate; then click Browse and use the Choose
File dialog box to select the certificate file.
5 Click OK.

178 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
9 Defining and Managing Partner Profiles

6 You can do one of the following:


 Click a different profile tab to continue editing the profile without saving.
 Click Save to save the changes you have made and continue working on the
profile.
 Click Save and Close to save the changes and close the profile.

Managing Certificate Sets


You can add new certificates to or remove certificates from existing certificate sets.
Additionally, you can add private keys to or remove private keys from existing certificate
sets.

To manage certificate sets

1 Search for the profile you want to update. If you need procedures for this step, see
“Performing a Keyword Search for Partner Profiles” on page 157 or “Performing an
Advanced Search for Partner Profiles” on page 158.

2 To edit the profile, click in the ACTION column.


3 Click the Certificates tab.
4 Expand the branch for the certificate set that you want to work with.

5 Click in the EDIT column for the certificates you want to update (SSL,
Encrypt/Decrypt, or Sign/Verify).
6 To remove the private key, select the Clear Private Key check box.
7 To add or update the private key, click Browse and use the Choose File dialog box to
select the private key file.
8 To add a new certificate:
a To add a certificate, click Add Certificate; then click Browse and use the Choose File
dialog box to select the certificate file.
b Click OK.

9 To remove a certificate, in the Certificates section of the screen, click in the REMOVE
column for the certificate you want to remove.
10 Click OK.
11 You can do one of the following:
 Click a different profile tab to continue editing the profile without saving.
 Click Save to save the changes you have made and continue working on the
profile.
 Click Save and Close to save the changes and close the profile.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 179
9 Defining and Managing Partner Profiles

Copying a Partner Profile


In addition to adding a new partner profile by filling in a blank form, as described in
“Adding Partner Profiles” on page 154, you can also add a new partner profile that is
similar to an existing profile. When you copy an existing profile, the form for the new
profile is pre-filled with information from the partner that you select to copy.

To add a new partner profile by copying an existing profile

1 Search for the profile you want to copy. If you need procedures for this step, see
“Performing a Keyword Search for Partner Profiles” on page 157 or “Performing an
Advanced Search for Partner Profiles” on page 158.

2 Click in the ACTION column in the row containing the partner profile you want to
copy.
3 In the Partner Details panel, fill in the following fields:

Field Specify...

Corporation The name of the partner’s corporation, for example, “XYZ Steel
Name Company”.
Organization Optionally, the name of the organizational unit or division within
Unit the corporation, for example, “Sales and Marketing”.
Status Whether you want the profile enabled or disabled.
 To enable the profile, select Active.
 To disable the profile, select Inactive.

Note: You should keep the profile Inactive until you have completed
filling in all the information you require in a profile, for example,
delivery methods, users, etc.

Preferred Optionally the language preference the partner uses if needed for
Language another webMethods component (e.g., webMethods RosettaNet
Module).

4 Click the External IDs tab and add external IDs for the partner. For instructions, see
“Managing Your Partner’s External IDs” on page 161.
5 Make any other changes you need to make to the profile. For instructions, see the
sections in “Updating Partner Profiles” on page 159.

180 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
9 Defining and Managing Partner Profiles

Suspending Delivery for a Partner


At times you might want to suspend delivery for a partner, for example, if a partner’s
server is unavailable. When delivery is suspended, in general, Trading Networks holds
documents rather than attempting to deliver them. The table below describes Trading
Networks actions based on the type of delivery:

Type of Delivery Trading Networks actions when delivery is suspended


Immediate delivery that uses Delivery tasks for the partner are assigned the HELD
reliable delivery status. As a result, Trading Networks will not attempt to
deliver the documents.
When delivery is resumed for the partner, Trading
Networks changes the status to PENDING. As a result,
Trading Networks will begin attempting to deliver the
document.
Immediate delivery that does Delivering documents will fail. Because Trading
not use reliable delivery Networks does not save the document to the database, it
cannot hold the delivery.
Schedule delivery Delivery tasks for the partner are assigned the HELD
status. As a result, Trading Networks will not attempt to
deliver the documents.
When delivery is resumed for the partner, Trading
Networks changes the status to QUEUED. As a result,
Trading Networks will begin attempting to deliver the
document.

Reliable service execution tasks are also affected when deliveries are suspended. When
delivery is suspended for a partner, Trading Networks assigns the service execution tasks
a HELD status. As a result, Trading Networks does not attempt to execute the services.
When delivery is resumed, Trading Networks updates the task statuses to PENDING and
as a result, Trading Networks attempts to execute the services.

To suspend delivery for a partner

1 Search for the profile of the partner for whom you want to suspend delivery. If you
need procedures for this step, see “Performing a Keyword Search for Partner Profiles”
on page 157 or “Performing an Advanced Search for Partner Profiles” on page 158.

2 To edit the profile, click in the ACTION column.


3 Click the Delivery Settings tab.
4 To suspend delivery, select the Suspend Delivery check box, which is in the SETTINGS
panel.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 181
9 Defining and Managing Partner Profiles

Resuming Delivery for a Partner


If you previously suspended delivery for a partner, use this procedure to resume
delivery.

To resume delivery for a partner

1 Search for the profile of the partner for whom you want to resume delivery. If you
need procedures for this step, see “Performing a Keyword Search for Partner Profiles”
on page 157 or “Performing an Advanced Search for Partner Profiles” on page 158.

2 To edit the profile, click in the ACTION column.


3 Click the Delivery Settings tab.
4 To resume delivery, clear the Suspend Delivery check box, which is in the SETTINGS
panel.

Deleting a Profile
When you delete a profile from the Trading Networks Console, Trading Networks
removes most of the profile data from its database, but keeps all documents, entries, and
TPAs associated with the partner. You can no longer view the profile or any related TPAs.
If you decide to delete a profile, you must also delete all related TPAs before deleting the
profile.

Note: You cannot delete your own Enterprise profile.

Trading Networks does not provide a way to “undelete” a profile. If a partner sends you a
document after you delete its profile, Trading Networks treats the document as an
unknown document.

Important! When you delete a partner’s profile, Trading Networks does not delete the
associated user accounts. To delete an My webMethods user account, see
Administering My webMethods Server. To delete an Integration Server user account, see
Administering webMethods Integration Server.

To delete a partner profile

1 Search for the profile(s) you want to delete. If you need procedures for this step, see
“Performing a Keyword Search for Partner Profiles” on page 157 or “Performing an
Advanced Search for Partner Profiles” on page 158.
2 Select the check boxes beside the partner profiles that you want to delete.
3 Click Delete.

182 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
9 Defining and Managing Partner Profiles

Disabling a Partner’s Profile—Changing the Status to Inactive


When you disable a profile, Trading Networks changes the status of the profile to
“Inactive”. When you disable a partner’s profile, you will not be able to exchange
documents with that partner. As a result, disabling a profile can be thought of as
temporarily removing a partner from your network. If the partner attempts to send you
documents while its profile is disabled, Trading Networks:
 Logs an error message to the activity log and associates it with the document
 Sets the processing status of the document to “ABORTED”
 Sends an e-mail message to the administrator
 Responds to the sender with an HTTP 403 message if the document was sent using
HTTP.
For more information about profile statuses, see “Profile Statuses” on page 113.

To disable a partner profile

1 Search for the profile you want to disable. If you need procedures for this step, see
“Performing a Keyword Search for Partner Profiles” on page 157 or “Performing an
Advanced Search for Partner Profiles” on page 158.

2 To edit the profile, click in the ACTION column.


3 In the Partner Details panel, select Inactive from the Status list.
4 You can do one of the following:
 Continue editing the profile without saving.
 Click Save to save the changes you have made and continue working on the
profile.
 Click Save and Close to save the changes and close the profile.

Important! When you disable a partner’s profile, Trading Networks does not
disable nor delete any My webMethods or Integration Server user accounts that
are associated with the profile. Use My webMethods to delete a My webMethods
user account; for more information, see Administering My webMethods Server. Use
the Integration Server Administrator to delete an Integration Server user account;
for more information, see Administering webMethods Integration Server.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 183
9 Defining and Managing Partner Profiles

Enabling a Partner’s Profile—Changing the Status to Active


When you enable a profile, Trading Networks changes the status of the profile to
“Active”. When you enable a partner’s profile, you will be able to exchange documents
with that partner. As a result, enabling a profile can be thought of as re-establishing a
partner into your network. For more information about profile statuses, see “Profile
Statuses” on page 113.

To enable a partner profile

1 Search for the profile you want to enable. If you need procedures for this step, see
“Performing a Keyword Search for Partner Profiles” on page 157 or “Performing an
Advanced Search for Partner Profiles” on page 158.

2 To edit the profile, click in the ACTION column.


3 In the Partner Details panel, select Active from the Status list.
4 You can do one of the following:
 Continue editing the profile without saving.
 Click Save to save the changes you have made and continue working on the
profile.
 Click Save and Close to save the changes and close the profile.

Searching for Certificates that Are Expired or Expiring Soon


You can search for partner certificates that are expired or for partner certificates that are
expiring soon.

Searching for Expired Partner Certificates


To find expired certificates, perform the following procedure.

To search for partner certificates that are expired or that are expiring soon

1 In My webMethods: Administration > Integration > B2B > Partner Certificates.


2 Select Expired from the EXPIRING RANGE list.
3 Click Go.

184 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
9 Defining and Managing Partner Profiles

Searching for Partner Certificates that Will Expire Soon


To find certificates that are expiring soon, perform the following procedure.

To search for partner certificates that are expired or that are expiring soon

1 In My webMethods: Administration > Integration > B2B > Partner Certificates.


2 To use predefined time period, select the time period from the EXPIRING RANGE list. For
example, if you select Today, Trading Networks searches for certificates that will
expire today.

Note: If you select Expired, Trading Networks searches for expired certificates.
Use Custom to specify a custom time period. See below for more information.

3 To specify a custom time period:


a Select Custom from the EXPIRING RANGE list.
b Use the calendar pickers to specify a Start Date and End Date, then select the
numbers for the hours and minutes from their respective lists.
4 Click Go.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 185
9 Defining and Managing Partner Profiles

186 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
10 Defining and Managing Partner Groups

 What are Partner Groups? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188


 Defining a Partner Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
 Searching for Partner Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
 Updating a Partner Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
 Deleting a Partner Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 187
10 Defining and Managing Partner Groups

What are Partner Groups?


A partner group is a logical user-defined group that you associate a partner with. For
example, you can create a group profile named “Buyers” to associate all of your partners
who are buyers in your trading network.

Defining a Partner Group


To define partner groups, perform the following procedure.

To define a partner group

1 In My webMethods: Administration > Integration > B2B > Partner Groups.


2 Click Add Partner Group.
3 Type a name for the group in the Name field.
4 Optionally, type a description of the group in the Description field.
5 To add members to the group:
a Click Add Members.
b Search for profiles of the partners that you want to make members of the group.
For instructions for how to search for the profiles,
 Keyword searches, see “Performing a Keyword Search for Partner Profiles” on
page 157
 Advanced search, see “Performing an Advanced Search for Partner Profiles”
on page 158
 Saved search, see the Working with My webMethods guide
Trading Networks populates the AVAILABLE PARTNERS list with the results of your
search.
c Select the profiles of the partners that you want to be member of the partner
group by moving the profiles from the AVAILABLE PARTNERS list to the SELECTED
PARTNERS list.

d Click OK.
6 Click Save.

188 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
10 Defining and Managing Partner Groups

Searching for Partner Groups


The following table lists tasks related to searching for partner groups and where to find
more information about each task.

Task For more information, see...


Search for partner groups with group names “Performing a Keyword Search for
that contain keywords that you specify. Partner Groups” on page 190
Set the following search options for the Working with My webMethods guide
Administration > Integration > B2B > Partner
Groups page:
 The search tab that Trading Networks
displays when initially displaying the
Partner Profiles page
 The search you want Trading Networks to
execute, if any, when initially displaying the
Partner Profiles page
 The maximum number of search results
you want Trading Networks to display in
response to a search
Set the following display options for how Working with My webMethods guide
Trading Networks displays search results on
the Administration > Integration > B2B >
Partner Profiles page:
 The number of rows that you want Trading
Networks to display on each page of the
search results
 How the search results are sorted
 The columns displayed and the order of the
columns
Save searches for partner profiles. Working with My webMethods guide
Re-execute saved searches for partner profiles. Working with My webMethods guide

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 189
10 Defining and Managing Partner Groups

Performing a Keyword Search for Partner Groups


Use a keyword search to find partner groups based on their group names.

To perform a keyword search for partner groups

1 In My webMethods: Administration > Integration > B2B > Partner Groups


2 Click the Keyword tab if it is not already displayed.
3 In the text box, type a keyword that is contained in the group names of the partner
groups you want to find.
If you leave the text box blank, Trading Networks searches for all partner groups that
you are authorized to view. For more information about how to specify keywords, see
the Working with My webMethods guide.
4 Click Go to execute the search.

Updating a Partner Group


To update a partner group, perform the following procedure.

To update a partner group

1 Search for the partner group you want to update. If you need procedures for this step,
see “Searching for Partner Groups” on page 189.

2 To edit the profile of a partner, click in the EDIT column.


3 To update the partner group’s name, type a new name in the Name field.
4 To update the description, type a new description in the Description field.
5 To add members to the group, see the instructions in step 5 in “Defining a Partner
Group” on page 188.
6 To remove members from the group:
a Select the check boxes beside the members that you want to remove.
b Click Delete. Trading Networks does not delete the profile of the partner; it only
removes it from the partner group.
7 Click Save.

190 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
10 Defining and Managing Partner Groups

Deleting a Partner Group


To delete a partner group, perform the following procedure.

To delete partner groups

1 Search for the partner groups you want to delete. If you need procedures for this step,
see “Searching for Partner Groups” on page 189.
2 Select the check boxes beside the partner groups that you want to delete.
3 Click Delete.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 191
10 Defining and Managing Partner Groups

192 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
11 Defining and Managing Trading Partner
Agreements (TPAs)

 What is a Trading Partner Agreement (TPA)? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194


 Information You Supply to Define a TPA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
 Defining a TPA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
 Managing TPAs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 193
11 Defining and Managing Trading Partner Agreements (TPAs)

What is a Trading Partner Agreement (TPA)?


A Trading Partner Agreement (TPA) in Trading Networks is a set of parameters that you
can use to govern how documents are exchanged between two trading partners. To use a
TPA, both partners in the agreement must have existing profiles in Trading Networks.
Trading Networks uses the profiles to ensure that the partners are valid for that Trading
Networks system.
For more information about TPAs, see Understanding webMethods B2B: webMethods Trading
Networks Concepts Guide.
To view TPAs and their data in Trading Networks, first specify a query to identify the
TPAs in which you are interested. You can query TPAs by the following fields: Sender,
Receiver, Agreement ID, Timestamp, Agreement Status, and IS Document Type. Trading
Networks returns information about the TPAs that meet the search criteria that you
specified in your query.

Information You Supply to Define a TPA


When you define a TPA, you supply the following information: sender, receiver,
agreement ID, IS document type, data status, services (export and initialization), and
optionally, a description.

TPA Information Description

Sender Name of the trading partner that has the sender role in the TPA. You
select the sender from the profiles defined on your Trading
Networks system, including your own profile (Enterprise).

Note: A TPA is an agreement between two partners in your network;


one that fulfills the sender role during document exchange, and the
other that fulfills the receiver role. Both the sender and receiver in a
TPA must be a partner in your Trading Networks system that has an
existing profile.

Receiver Name of the trading partner that has the receiver role in the TPA.
You select the receiver from the profiles defined on your Trading
Networks system, including your own profile (Enterprise).
Agreement ID An application-specific field that uniquely identifies the type of
agreement between two partners.

194 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
11 Defining and Managing Trading Partner Agreements (TPAs)

TPA Information Description

IS Document Type An IS document type that specifies the data that you define in the
TPA. For more information about changing the data, see “Changing
the TPA Data Inputs in the IS Document Type” on page 204.
When using the TPA feature for your own custom application, these
are the parameters that your custom applications need access to
during document exchange. Use the webMethods Developer to
create the IS document type that contains the parameters you need
for your custom application. For more information on how to create
an IS document type, see Developing Integration Solutions:
webMethods Developer User’s Guide.
webMethods components that use the TPA feature come with the IS
document type you need to use for the TPA data. For example, the
webMethods EDI Module supplies the wm.b2b.editn.TPA:EDITPA IS
document type and the webMethods ebXML Module supplies the
wm.ip.ebxml.cpa.rec:tpaDataSchema IS document type. For more
information about EDI TPAs, see the webMethods EDI Module
Installation and User’s Guide.
Control Number A field that is available for application-specific use. Trading
Networks does not update the Control Number field.
When using the TPA feature for your own custom application, you
can use the Control Number field in any way you want. Some
webMethods’ components that take advantage of the TPA feature
use the Control Number field. For example, the webMethods EDI
Module uses the control number to ensure documents are processed
in order and that no documents have been lost or unprocessed.
Data Status This field applies only when the Agreement Status is Agreed. The data
status indicates whether you can update the values for the TPA data
defined in the IS document type (located in the panel on the lower
portion of the Agreement Details dialog box). The data status can be
one of the following:
 Modifiable - the TPA data can be changed
 Non-modifiable - the TPA data cannot be changed

Note: Trading Networks uses the data status only after the TPA has
an Agreed status. For more information about TPA statuses, see
“Changing a TPA Agreement Status” on page 202. For more
information about changing the TPA data defined in the IS
document type, see “Changing the TPA Data Inputs in the IS Document
Type” on page 204.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 195
11 Defining and Managing Trading Partner Agreements (TPAs)

TPA Information Description

Export Service A service that exports a Trading Networks TPA and converts it to an
industry-standard format. After creating a TPA, if you need to
obtain the industry-standard format of a TPA, you can execute your
export service. Defining an export service is optional.

Note: The format of the industry-standard agreement will not be the


same as the format of a Trading Networks TPA. When using the
TPA feature for your own custom application, you can create an
export service that converts the Trading Networks TPA to the
industry-standard format that you require.

Initialization A service that sets default values for the IS document type data of
Service the TPA. Defining an initialization service is optional. You can set
this field to point to an IS service that can provide the initial values
for that data.
When using the TPA feature for your own custom application, you
can create an initialization service that populates the parameters in
the IS document type with default values. Some webMethods’
components that take advantage of the TPA feature supply an
initialization service. For example, the webMethods EDI Module
supplies the service wm.b2b.editn.TPA:initService that populates the
EDITPA with the default values for an EDI TPA. The webMethods
ebXML Module supplies the wm.ip.ebxml.cpa:initTPA initialization
service.
For more information about EDI TPAs, see the webMethods EDI
Module Installation and User’s Guide. For more information about
ebXML CPAs, see the webMethods ebXML Installation and User’s
Guide.
Description This is an optional field that you can use to specify a description for
the TPA. Specify 1-1024 characters. There is no restriction to the
characters that you can use.

Defining a TPA
You define TPAs on the Agreement Details screen of the Trading Networks Console.
After you set the attributes of your TPA on the top portion of this screen and select the IS
document type, Trading Networks displays the corresponding IS document type data
tree on the bottom panel of the screen. The right side of this panel displays the input
values (TPA data inputs) to variables of the IS document type.

196 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
11 Defining and Managing Trading Partner Agreements (TPAs)

Use the following procedure to define a TPA.

To define a TPA

1 In Trading Networks Console: View > Agreements.


Trading Networks displays the Agreements screen.
2 Perform one of the following procedures to create a new TPA.

Method to create a TPA Procedures

New—The TPA fields are empty. Select Agreements > New. Trading Networks
displays the Agreement Details screen to allow
you to fill in the information for the TPA.

Duplicate—The TPA fields are Click the row containing the name of the TPA
filled with values from the TPA agreement that you want to duplicate, and then
agreements that you duplicate. select Agreements > Duplicate. Trading Networks
You can update any or all fields displays the Agreement Details screen.
from the duplicated TPA
agreement.
You can use this function to
create a template TPA.

3 Fill in the following fields on the Agreement Details screen for the TPA you want to
create:

Note: The Sender, Receiver, and Agreement ID fields must be unique for each TPA.
After you create a TPA, you cannot change or update these fields of the TPA.

For this TPA field... Specify

Sender Name of the trading partner that has the sender role in the
transaction the TPA will govern. Type in the name of the sender
or click the Select button to select the sender from the
Partner Selection Dialog. This list includes your own profile
(Enterprise).
For EDI, to create a template that you will duplicate to create
other TPAs, you can use the default value of Unknown.
For more information about how to select a sender, see
“Selecting TN Document Types” on page 33.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 197
11 Defining and Managing Trading Partner Agreements (TPAs)

For this TPA field... Specify

Receiver Name of the trading partner that has the receiver role in the
transaction the TPA will govern. Type in the name of the
receiver or click the Select button to select the receiver from
the Partner Selection Dialog. This list includes your own profile
(Enterprise). For EDI, to create a template that you will duplicate
to create other TPAs, you can use the default value of Unknown.
For more information about how to select a receiver, see
“Selecting TN Document Types” on page 33.
Agreement ID An identifier that indicates the type of agreement between the
two partners. The Sender, Receiver, and Agreement ID values
together uniquely identify a TPA.

Note: You will not be able to continue creating a TPA unless you
supply the Agreement ID. After you supply the Agreement ID, you
can: create the TPA or continue to supply data for the
remaining fields.

The value you specify depends on the application that is going


to use the TPA. You can use up to 254 characters of any type for
this field, including spaces. For more information about the
agreement ID, see “Information You Supply to Define a TPA”
on page 194.
IS Document Type The IS document type that defines the application-specific TPA
data. The TPA data is used to govern the exchange of
documents between the two partners.
Type in the name of the IS document type located on the server
or click Find IS Document Type to browse the IS document
types and select the one you want to use. Trading Networks
displays the data tree input values of the selected IS document
type in the bottom panel of the Agreement Details screen.
For more information about the IS document type, see
“Information You Supply to Define a TPA” on page 194. If you
want to change the data input for the IS document type, see
“Changing the TPA Data Inputs in the IS Document Type” on
page 204.
Control Number A value that the application using the TPA expects. This value
is only needed if the application using the TPA uses the Control
Number field.
The value for this field must be an integer. The default value is
zero (0).

198 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
11 Defining and Managing Trading Partner Agreements (TPAs)

For this TPA field... Specify

Data Status Whether you want to be able to modify the values of the TPA
data of the IS document type. The data status is only applicable
when the agreement status is Agreed.
For more information about statuses, see “Changing a TPA
Agreement Status” on page 202.
Export Service A service to convert the data in the Trading Networks TPA to
an industry-format trading partner agreement. For more
information about the export service, see “Information You
Supply to Define a TPA” on page 194.
Type in the name of the export service located on the server or
click Find Service to browse the services and select the one
you want to use.

Note: The Export Service is different from the Trading Networks


File > Export function that exports Trading Networks data (such
as profiles, TN document types) out of the Trading Networks
database, so data can be exported/imported within the same
Trading Networks release from development to production
environment.

For more information about exporting Trading Networks data


to another Trading Networks system, see Appendix C,
“Exporting and Importing Database Information”.

Initialization A service to populate the inputs to the variables in the IS


Service document type for the TPA with default values. This is
optional. For more information about the initialization service,
see “Information You Supply to Define a TPA” on page 194.
Type in the name of the initialization service located on the
server or click Find Service to browse the services and select
the one you want to use.

Note: If you create a partner-defined EDITPA from scratch, you


should not use the wm.b2b.editn.TPA:initService initialization service
because it populates the partner-defined EDITPA with hard-
coded values other than those in the default EDITPA, which is
already tailored to a user’s particular requirements. Instead,
you should manually complete each parameter field in the
Input for ‘wm.b2b.edi.tn.TPA:EDITPA’ screen in the Trading
Networks Console. For more information about EDI TPAs, see
the webMethods EDI Module Installation and User’s Guide.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 199
11 Defining and Managing Trading Partner Agreements (TPAs)

For this TPA field... Specify

Description Optionally, specify a description for the TPA in the Description


field. Specify 1-1024 characters. There is no restriction to the
characters that you can use.

4 Click OK to create the TPA.

Note: Trading Networks disables the OK button until you supply the Sender, Receiver,
and Agreement ID fields. If you clear any of the Sender, Receiver, and Agreement ID fields
during the creation of the TPA, Trading Networks will disable the OK button, as well
as the other TPA fields. You will not be able to save the TPA unless you supply the
Sender, Receiver, and Agreement ID fields.

Managing TPAs
The following table describes the tasks you can perform against TPAs:

Task See Page...


“Finding and Viewing TPAs” 200
“Updating TPAs” 202
“Changing a TPA Agreement Status” 202
“Changing the TPA Data Inputs in the IS Document Type” 204
“Deleting a TPA” 206

Finding and Viewing TPAs


You can use the Agreements screen to find and view TPAs that you have defined.

To view TPAs

1 In Trading Networks Console: View > Agreements.


2 To see detailed information about a specific TPA, double click on the row containing
the TPA you want more detailed information about. Trading Networks displays the
Agreements Details screen.
3 If you cannot find the TPA you are looking for, you can use the search criteria on the
Agreements screen to query for specific TPAs.

a Select Show Query on the toolbar to have Trading Networks display the search
criteria.

200 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
11 Defining and Managing Trading Partner Agreements (TPAs)

b To indicate that you want to use one or more of the search criteria, select the check
box next to each criterion you want to use. Then fill out the corresponding
information as follows.

Important! The search-criteria fields are space and character-sensitive; be sure


to use the exact combination of upper- and lowercase letters. Do not use
pattern-matching characters (such as “*”, “%”, or “_”) in the TPA search.

For this TPA


Attribute… Specify…

Sender The name of the trading partner that has the sender role for
the TPA. Type in the name of the sender or click the Select
button to select the sender from the Partner Selection Dialog.
For more information about the Select button, see
“Selecting TN Document Types” on page 33.

Note: The Sender, Receiver, and Agreement ID fields must be


unique for each TPA.

Receiver The name of the trading partner that has the receiver role for
the TPA. Type in the name of the receiver or click the
Select button to select the receiver from the Partner Selection
Dialog. For more information about the Select button, see
“Selecting TN Document Types” on page 33.
Agreement ID The Agreement ID of the TPA that you want to view.
Agreement The status of the agreement that you want to view: Proposed,
Status Disabled, or Agreed. For more information about statuses, see
“Changing a TPA Agreement Status” on page 202.
IS Document The IS document type for the TPA data you want to use. Type
Type in the name of the IS document type located on the server or
click Find IS Document Type to browse the IS document
types and select the one you want to search for.
Timestamp The time Trading Networks last updated the TPA either
when the TPA was created or last updated. Select an entry
from the list. To specify a date range, select Custom from the
list. Then specify dates in the Beginning and Ending fields. You
can type in a date value, or click Select Date to open a
dialog that allows you to select the date from a calendar.

For more information about the TPA attribute fields, see “Information You Supply to
Define a TPA” on page 194.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 201
11 Defining and Managing Trading Partner Agreements (TPAs)

c Select Run Query on the toolbar. Trading Networks updates the Agreements
table on the bottom portion of the screen with the query results.
d Double click to select the partner you want from query results in the Profiles table
on the bottom portion of the screen. Trading Networks displays the Agreement
Details screen.
 For more information about the tabs and fields on this screen, see “Defining a
TPA” on page 196.
 For procedures on how to change the information in your partner’s profile, see
“Updating TPAs” on page 202.

Updating TPAs
Use the following procedure to update a TPA.

To update a TPA

1 Select the TPA you want to update. If you need procedures for this step, see “Finding
and Viewing TPAs” on page 200.
2 Select Agreements > Edit.
3 Update the TPA fields you want to change:
 For information on what you can specify for the fields in the Agreement Details
screen, see step 3 on page 197.
 For instructions on how to change the Agreement Status, see the next section,
“Changing a TPA Agreement Status”.

Important! You cannot modify or update the Sender, Receiver, or Agreement ID field of
a TPA.

4 For instructions on how to update the inputs for the IS document type, see “Changing
the TPA Data Inputs in the IS Document Type” on page 204.

Changing a TPA Agreement Status


The agreement status determines whether the TPA is a draft (Proposed status), final (Agreed
status), or whether the TPA is inactive (Disabled status). You can change the agreement
status of the TPA to any other agreement status.
Initially, when you are creating the TPA, assign the TPA the Proposed status so that you
can make modifications to the TPA fields, data values in the IS document type, the
agreement status, and to delete the agreement. For a production setting, select the Agreed
status to prevent the accidental deletion of the TPA, as well as to speed up processing.

202 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
11 Defining and Managing Trading Partner Agreements (TPAs)

Select the Disabled status when you no longer want Trading Networks to use a specific
TPA. For example, in a transaction between two partners (e.g., Partner A and Partner B)
who sell products to one another, the agreement status of the TPA might change
depending upon business conditions. If Partner A is delinquent on payments to Partner
B, then Partner B might change Partner A’s agreement status to Disabled - so that no further
transactions could occur. After Partner A pays his payments, however, Partner B would
change the agreement status to Agreed.
The following table explains what each status is and the changes you can make to the
Agreement Status.

Agreement Status Meaning


The TPA is in draft status. When the TPA is in the Proposed status,
Proposed you can delete it. For more information, see “Deleting a TPA” on
page 206.
What you can change:
 The TPA fields, with the exception of the Sender, Receiver, or
Agreement ID fields.
 All inputs to TPA data variables in the IS document type. For
more information, see “Changing the TPA Data Inputs in the IS
Document Type” on page 204.
 The agreement status to Disabled or Agreed.
The TPA is in final status. When the TPA is in the Agreed status, you
Agreed cannot delete it. To delete a TPA, you must change the agreement
status to Proposed or Disabled. For more information, see “Deleting a
TPA” on page 206.
If the Data Status is:
 Modifiable, you can change:
 The Control Number
 All inputs to TPA data variables in the IS document type.
For more information, see “Changing the TPA Data Inputs
in the IS Document Type” on page 204.
 Non-modifiable, you can change:
 The Control Number

Note: To modify the data of the TPA, you must change the
agreement status from Agreed to Proposed. For more information,
see “Changing the TPA Data Inputs in the IS Document Type” on
page 204.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 203
11 Defining and Managing Trading Partner Agreements (TPAs)

Agreement Status Meaning


The TPA should not be used. You can delete a disabled TPA. For
Disabled more information, see “Deleting a TPA” on page 206.
What you can change:
 The Control Number

Note: To modify the data of a TPA, you must change agreement


status from Disabled to Proposed. For more information, see
“Changing the TPA Data Inputs in the IS Document Type” on
page 204

Use the following procedure to change a TPA agreement status.

To change a TPA agreement status

1 In Trading Networks Console: View > Agreements.


Trading Networks displays the Agreements screen.
2 Click the row containing the TPA you want to change the agreement status for.
3 To change the agreement status:

 Press the appropriate status change button: Proposed, Disabled, or

Agreed
-OR-
 Right-click and select from the menu items: Proposed, Disabled, or Agreed.
Trading Networks displays the new status in the Agreement Status column.

Changing the TPA Data Inputs in the IS Document Type


The TPA data inputs are the inputs to variables of the IS document type. You can change
the inputs by using the IS document type data input dialog buttons located on the right
side of the IS document type root diagram: Set Inputs or Reset to Initialization Service.
 Set Inputs for IS Document Type. Use this method to supply the values you want the TPA
data inputs to have.
 Reset to Initialization Service. Use this method to have Trading Networks invoke the
initialization service (if one was provided) to set the values of the TPA data input to
their defaults.

204 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
11 Defining and Managing Trading Partner Agreements (TPAs)

Use the following procedure to change the inputs for the IS document type.

To change the data inputs in the IS document type

1 Select the TPA you want to update. If you need procedures for this step, see “Finding
and Viewing TPAs” on page 200.
2 Update the TPA data input in the IS document type fields you want to change using
one of the following three methods:

Note: To access the TPA data inputs to change them, you need to have the
following values: 1) the Agreement Status is Proposed or 2) the Agreement Status is
Agreed and the Data Status is Modifiable. For more information, see “Changing a TPA
Agreement Status” on page 202.

Click this IS document


type data input button... To change the data input in the following manner...

Change the values in the IS document type through the


Set Inputs Input for <IS Document Type> dialog. When you click this
icon, the dialog displays the parameters of the IS document
type with the corresponding TPA data values
automatically filled in. You can modify the data values and
then save them by selecting OK. For more information
about changing IS Document Types, see Developing
Integration Solutions: webMethods Developer User’s Guide.
Reset to Trading Networks invokes the initialization service (if
Initialization specified) to reset the TPA data inputs of the IS document
Service type to their default values. If you choose to reset these
values, you will lose any changes that you have made to
the IS document type.

Note: The Reset to Initialization Service button is only enabled


when an initialization service is supplied. If this field is
emptied, Trading Networks disables the Reset to Initialization
Service button.

3 Click OK to save your changes.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 205
11 Defining and Managing Trading Partner Agreements (TPAs)

Deleting a TPA
When you delete a TPA, Trading Networks deletes all of the TPA data from its database.

Important! Trading Networks does not provide a way to “undelete” the TPA.

Before you delete a profile that is referenced by a TPA, you must first delete any
related TPAs. If you accidentally deleted the profile and not the TPA, you can delete
the invalid TPA. For more information, see “Deleting a Profile” on page 182.

You can only delete TPAs with the Proposed or Disabled agreement status. You cannot
delete TPAs with an Agreed status. If you want to delete a TPA with an Agreed status, you
will need to first change the agreement status to either Proposed or Disabled, and then
Trading Networks allows you to delete the TPA.
To delete a TPA, perform the following procedure:

To delete a TPA

1 Select the TPA you want to delete. If you need procedures for this step, see “Finding
and Viewing TPAs” on page 200.
2 Select Agreements > Delete to delete the TPA. When Trading Networks prompts you to
verify that you want to delete the TPA, click Yes.

Note: If you are deleting a non-modifiable agreement, you will need to use the
wm.tn.tpa:deleteTPA service. For more information, see the webMethods Trading Networks
Built-In Services Reference guide.

206 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
III Defining Transaction Processing
 Defining and Managing Document Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
 Defining and Managing TN XML Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
 Defining and Managing TN Flat File Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
 Defining and Managing Processing Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 207
III Defining Transaction Processing

208 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
12 Defining and Managing Document Attributes

 What are Document Attributes? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210


 Defining Document Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
 Managing Document Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 209
12 Defining and Managing Document Attributes

What are Document Attributes?


There are two kinds of document attributes:
 Custom attributes, which identify specific pieces of information that you want to
extract from the documents that your trading network will receive. For example, if
you want to extract the purchase order number from documents, you might define a
document attribute named PO_Number.
 Predefined attributes, known as system attributes, that identify characteristics of the
documents. System attributes are available out of the box. You do not need to define
them, and you cannot delete them. They include:

System
Attribute Description

SenderID Identification of the trading partner that sent the document


ReceiverID Identification of the trading partner that is to receive the
document
DocumentID Identification of the document
UserStatus A status that you or a partner has associated with the document
GroupID Identification within a document that associates this document
with other documents in its group
ConversationID Identification within a document that associates this document
with other documents in the same conversation of documents
Signature and The portions of the document that contain a digital signature of
SignedBody the document and the signed data

For more information about these system attributes, see “Important Attributes that You
Should Extract from an XML Document” on page 226 or “Attributes To Extract From
Documents” on page 293.
You should define custom document attributes for all types of documents that you expect
to receive; a document attribute is not associated with a specific document type. Later,
when you define your TN document types, you will specify which document attributes
to include in each document type. Instructions for creating document types appear in
Chapter 13, “Defining and Managing TN XML Document Types” and Chapter 14,
“Defining and Managing TN Flat File Document Types”.
To define a document attribute you specify the attribute’s name, description, and data
type (DATETIME, DATETIME LIST, NUMBER, NUMBER LIST, STRING, or STRINGLIST). In addition,
you can specify whether Trading Networks should save the attribute to the database (the
default behavior).

210 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
12 Defining and Managing Document Attributes

Document Attributes and How They Relate to TN document types

The definition of a Document #1 TN Document


document attribute <!-- OAG --> Type
The definition of a TN
specifies the name, type, Name = OAG PO
document type specifies
and description for a .
how to locate the
document attribute. .
attributes in the specific
type of document. <POID>A230</POID> .
Attributes
PO_Number
Document Attribute .
Name = PO_Number .
Type = Number .
Description = Purchase Order Number
TN Document
Type
Name = cXML PO Document #2 Document #3 TN Document
. <!-- cXML --> <!-- CBL --> Type
. <OrderRequestHeader Name = CBL PO
. orderID = P01234> <BuyerRefNum> .
Attributes <Reference> .
.
PO_Number <RefNum> .
.
. . 100 Attributes
. </RefNum> PO_Number
. </Reference> .
</BuyerRefNum> .
.

When you define a TN document type, you identify the attributes that you want Trading
Networks to extract from the type of document. Different kinds of documents have
different formats, so the location of attributes within a document is based on the specific
kind of document. To identify the attributes, you specify the name of the attribute and
how Trading Networks is to locate the attribute in the specific type of document. In
addition, you can indicate whether you require the attribute to be extracted. If you mark
an attribute as required and Trading Networks is unable to extract the attribute from the
document, Trading Networks records the error.
In the TN document type (or in a processing rule), you can specify that you want Trading
Networks to save the document to the database. If you do this, Trading Networks saves
the custom attributes it extracts. Trading Networks saves a custom attribute only if the
TN document type or processing rule indicates to save that attribute.

Note: Regardless of whether you save custom attributes or not, Trading Networks
always saves all system attributes except Signature and SignedBody.

You can use document attributes to:


 Locate specific documents that have passed through your network by using the
attributes as search criteria in document queries. For example, if you use an attribute
that retrieves the total order amount of a purchase order, you can query documents
where the total order amount is over $10,000.
 Generate reports about documents in your Trading Network.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 211
12 Defining and Managing Document Attributes

For more information about document attributes, see Understanding webMethods B2B:
webMethods Trading Networks Concepts Guide.

Defining Document Attributes


Use the following procedure to define document attributes.

Note: If new attributes are created while you have an open My webMethods session,
those attributes will not be included in My webMethods displays until you log out
then back into My webMethods or until you refresh your cache in My webMethods.
For more information about how to refresh your My webMethods cache, see
information about My webMethods user preferences in Managing B2B Integrations:
webMethods Trading Networks User’s Guide.

To define a document attribute

1 In Trading Networks Console: View > Document Types.


2 Select Types > Document Attributes.
3 Perform one of the following procedures to begin a document attribute definition.

Method to begin a definition Procedure

New—The document attribute


fields are empty. Click New (yellow highlight). The New
Document Attribute screen appears.
Duplicate—The document Click the row containing the document attribute
attribute fields are filled with that you want to duplicate.
values from the document
attribute that you duplicate. Click Duplicate. A copy of the document
You can update any or all attribute screen appears.
fields from the duplicated
document attribute.

4 Fill in the following fields for the custom attribute you want to add:

212 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
12 Defining and Managing Document Attributes

For this parameter... Specify

Name The name you want to give to the attribute. You can specify
1 to 64 characters. You can use any character except a single
quote (').
Example: If you are defining an attribute for the price of an item
in a purchase order, you might use the name “LineItemPrice”.
Type The data type of the attribute. Select the data type (DATETIME,
DATETIME LIST, NUMBER, NUMBER LIST, STRING, or STRINGLIST)
from the list.
Description Optional. A description of the attribute. You can specify 1 to
256 characters. You can use any character except a single quote
(').
Example: If you are defining an attribute for the price of an item
in a purchase order, you might specify the description “The
price of an item in a purchase order”.
Enabled Whether this attribute is enabled or not. If the document
attribute is disabled, select this check box to enable it. For more
information, see “Enabling Document Attributes” on page 216
or “Disabling Document Attributes” on page 215.
Save Whether this attribute is eligible to be saved to the Trading
Networks database.
 If you select this check box and the pre-processing actions
indicate to save attributes to the database, Trading
Networks saves this attribute to the database.
 If you do not select this check box and the pre-processing
actions indicate to save attributes to the database, Trading
Networks does not save this attribute. Deselect this check
box if the attribute value is needed during document
processing, but does not need to be kept in the database.

5 Click OK to add the document attribute.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 213
12 Defining and Managing Document Attributes

Managing Document Attributes


The following table describes the tasks you can perform against document attributes:

Task See Page...


“Viewing Document Attributes” 214
“Updating Document Attributes” 215
“Disabling Document Attributes” 215
“Enabling Document Attributes” 216
“Determining the TN Document Types that Use an Attribute” 216

Viewing Document Attributes


You can view document attributes using the Document Attributes screen. By default,
Trading Networks does not display disabled document attributes. However, you can
update the display of attributes to include disabled document attributes.

To view document attributes

1 In Trading Networks Console: View > Document Types.


2 Select Types > Document Attributes.
3 To see the details about a specific document attribute, double click the row for that
attribute.

Displaying Disabled Document Attributes


To display disabled document attributes, perform Steps 1 through 4 in the procedure
“Viewing Document Attributes” that is described above, then perform the following
additional step.

To display disabled document attributes

To display disabled document attributes, click Show All to show both enabled (yellow
light bulbs) and disabled (darkened light bulbs) items.

214 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
12 Defining and Managing Document Attributes

Hiding Disabled Document Attributes


If disabled document attributes are currently being displayed on the Document
Attributes screen, perform the following step to hide them.

To hide disabled document attributes

To hide disabled document attributes, click Show Enabled to only show enabled
(yellow light bulbs) items. Trading Networks does not display any disabled (darkened
light bulbs) items.

Updating Document Attributes

To update a document attribute

1 In Trading Networks Console: View > Document Types.


2 Select Types > Document Attributes.
3 Click the row containing the document attribute that you want to update.
4 Right click and select Edit.
5 Update the fields you want to change. For information on what you can specify, see
step 4 on page 212.
6 Click OK to save your changes.

Disabling Document Attributes


If you no longer want to use a document attribute, you can disable it. When you disable a
document attribute, Trading Networks prevents you from specifying the document
attribute when creating new or updating existing TN document types; that is, it does not
allow you to select a disabled attribute as an item to be extracted.
Trading Networks will continue to extract the document attribute information for
existing TN document types that reference this attribute. You can use the attribute as
search criteria when displaying documents in My webMethods or in the Trading
Networks Console; however, Trading Networks no longer displays the value of the
attribute in the details for a transaction.
When you disable a document attribute, the definition for the document attribute is not
removed from the database. Later, if you decide that you need the document attribute,
you can enable it. See “Enabling Document Attributes” on page 216.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 215
12 Defining and Managing Document Attributes

Note: To permanently remove the document attribute from the database, your
database administrator must remove it. When you remove a document attribute from
the database, you must also remove all TN document types that reference this
attribute and all documents that had this attribute extracted from them.

To disable a document attribute

1 In Trading Networks Console: View > Document Types.


2 Select Types > Document Attributes.
3 Click the row containing the document attribute you want to disable.
4 Right click and select Disable. Trading Networks places No in the Enabled column to
indicate that the document attribute is disabled.

Enabling Document Attributes


If you disable a document attribute and then later determine that you still need it, you
can enable it and make it available again.

Important! To perform this procedure, you must first perform the procedure described
in “Displaying Disabled Document Attributes” on page 214.

To enable document attributes

1 In Trading Networks Console: View > Document Types.


2 Select Types > Document Attributes.
3 Click the row containing the document attribute you want to enable.
4 Right click and select Enable. Trading Networks places Yes in the Enabled column to
indicate that the document attribute is enabled.

Determining the TN Document Types that Use an Attribute


You can determine the TN document types that are dependent on a custom attribute.
That is, you can select a custom attribute and have Trading Networks list the names of all
TN document types that are defined to extract the custom attribute that you selected.
This is helpful, for example, if you want to disable a document attribute but first want to
determine the TN document types that this action will affect.

216 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
12 Defining and Managing Document Attributes

To determine TN document types that are dependent on a custom attribute

1 In Trading Networks Console: View > Document Types.


2 Select Types > Document Attributes.
3 Click the row containing the document attribute for which you want to view TN
document type dependencies.

4 Click Show document type dependencies.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 217
12 Defining and Managing Document Attributes

218 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

 What Are TN XML Document Types? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220


 Identification Information in TN XML Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
 Extraction Information In TN XML Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
 Namespace Mappings in TN XML Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
 Options in TN XML Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
 Defining TN XML Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
 Managing TN XML Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
 Submitting XML Documents to Trading Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 219
13 Defining and Managing TN XML Document Types

What Are TN XML Document Types?


TN XML document types define how Trading Networks recognizes XML documents,
where to locate attributes within an XML document, and how to pre-process the XML
documents.
To define TN XML document types, you specify the following types of information:
 Identification information. Trading Networks checks XML documents against the
identification information to determine whether the document matches a defined TN
XML document type. When you define the identification information for a TN XML
document type, you can specify one or more of the following:
 Root tag that the XML document must have to match the TN XML document
type.
 Identifying queries, which are XQL queries that Trading Networks performs
against the XML document to locate specific nodes in the XML document. The
nodes must be present for Trading Networks to consider the TN XML document
type a match. Optionally, you can specify the value the node must have.
 Pipeline variables that must be present when Trading Networks is determining
the TN XML document type to use. The pipeline variables that you specify must
exist for Trading Networks to consider the TN XML document type a match.
Optionally, you can specify the value the pipeline variables must have.
For more information, see “Identification Information in TN XML Document Types”
on page 222.
 Extraction information. Specifies the attributes (system attributes and custom attributes)
that you want Trading Networks to extract from XML documents. You define XQL
queries that Trading Networks uses to locate the attributes within the XML
documents. For Trading Networks to extract a value, the node that the XQL query
identifies must exist in the XML document. Optionally, in the extraction information,
you can specify that you want Trading Networks to use a built-in transformation or
invoke a custom transformation service against the attribute value to alter the value of
the extracted attribute. For example, you might want Trading Networks to transform
a STRING value into all uppercase characters. For more information, see “Extraction
Information In TN XML Document Types” on page 226.
 Namespace mappings. If the XML documents use namespaces, you should specify
namespace mappings to describe the namespaces that XML documents might use.
Namespaces are used in an XML document to distinguish between elements that come
from different sources. A set of elements (or tags) from a specific source is assigned to
a specific namespace. Each namespace is associated with a URI, which is used to
uniquely identify the namespace. Namespace mappings map the prefixes used by
namespaces to the URIs used by those namespaces. For more information about XML
namespaces, see the XML Namespace specification at http://www.w3.org/.
When you define namespace mappings in a TN XML document type, Trading
Networks uses the namespace mappings you specify when applying XQL queries
against the XML document. That is, Trading Networks uses the namespace mappings

220 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

for both the identifying XQL queries and the XQL queries to extract attributes. For
more information, see “Namespace Mappings in TN XML Document Types” on
page 236.
 Options. You can use the options to define items for later processing. When specifying
the options for an XML document, you can specify:
 An IS document type that defines the structure of the XML document and that can
be used to parse the XML document into an IData object. Trading Networks uses
the IS document type if you invoke the wm.tn.doc.xml:bizdocToRecord service to
convert the document content in the BizDocEnvelope to an IData object. For more
information, see “Specifying an IS Document Type for TN XML Document Types”
on page 241.
 An IS schema that defines the structure of the XML document. Trading Networks
uses this IS schema if you indicate you want to Trading Networks to perform the
pre-processing action to validate the structure of the XML document. For more
information, see “Specifying an IS Schema for TN XML Document Types” on
page 241.
 Whether you want Trading Networks to perform any or all of the pre-processing
actions. Pre-Processing actions are actions that Trading Networks performs before
using the processing rule actions to process the XML document. For more
information, see “Specifying Pre-Processing Actions for TN XML Document
Type” on page 242.

Note: You specify pre-processing actions in both TN document types and


processing rules. If processing rule routing is enabled, Trading Networks has
access to the pre-processing actions specified in a processing rule. The
pre-processing actions in a processing rule indicate whether Trading
Networks is to use the settings from the TN document type or to override the
TN document type settings.

 Whether you want Trading Networks to process a document using a processing


rule or want to prevent Trading Networks from performing processing rule
actions. When you disable processing rule routing, Trading Networks performs
the pre-processing actions defined by the TN document type; however, it does not
search for a processing rule, nor does it perform any processing rule actions. You
might want to disable use of a processing rule, for example, if you want Trading
Networks to send a document to the Process Engine to be processed as part of a
business process and do not need Trading Networks to perform any processing
rule actions. For more information, see “Disabling Processing Rule Routing” on
page 242.

For more information about processing large document types, see Appendix F, “Large
Document Handling”.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 221
13 Defining and Managing TN XML Document Types

Identification Information in TN XML Document Types


Trading Networks checks documents against the identification information to determine
whether the document matches a defined TN XML document type. You can specify one
or more of the following in the identification information:
 XQL queries (called identifying queries) that Trading Networks performs against an
XML document to determine whether the document contains the nodes identified by
the queries

Important! If the documents you expect use equivalent namespaces but have
different prefixes, you must also define namespace mappings for Trading
Networks to correctly locate the nodes identified by the XQL queries. For more
information, see “Namespace Mappings in TN XML Document Types” on
page 236.

 The value of the root tag within a document


 The system identifier or public identifier from the document type (DOCTYPE)
declaration within an XML document.
 Pipeline matching variables (name and value).
You can define TN XML document types to be very general or very specific. For example,
you can set up a TN XML document type that simply recognizes OAG documents. To be
more specific, you can set up the TN XML document type to recognize OAG
PROCESS_PO_004 documents. To be even more specific, you can set up the TN XML
document type to recognize OAG PROCESS_PO_004 documents from a specific sender
by specifying that the value of the <LOGICALID> tag within the <SENDER> tag must
contain a certain sender's logical ID.
Trading Networks uses the extraction information and the options (which are specified in
the TN XML document type) only if the document meets the criteria specified by the
identification information.

Note: If you are creating identifying queries or extracting information for a large
document, see “Defining TN Document Type XQL Queries for Large Documents” on
page 511.

Each document that passes through your system should match exactly one TN document
type. Trading Networks matches documents against all enabled TN document types. If a
document matches more than one, Trading Networks cannot determine which of the
matching TN document types it should use.
To set up the identification information in a TN XML document type, specify one or more
of the following items described in the table below:

222 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

Item Description
Identifying You can specify one or more XQL queries that locate a specific node in
queries the XML document. In addition, for each identifying query, you can
optionally specify the value that the node must evaluate to match this
TN XML document type.
Example: To identify a cXML order request, you might specify the
following XQL query that assures the OrderRequest tag is in the
document:
/cXML[0]/Request[0]/OrderRequest[0]
To be more specific, you might set up the TN XML document type to
match cXML OrderRequest from a specific sender. To do this, you can
add a second identifying query that identifies the Identity tag within the
Credential tag that is within the Sender tag. Then, specify the value that it
must evaluate to, for example, XYZ Steel Company. The following
shows the query:
/cXML[0]/Header[0]/Sender[0]/Credential[0]/Identity[0]

The above query will match if the document contains the following:
<cXML>
<Header>
<Sender>
<Credential>
<Identity>XYZ Steel Company</Identity>
.
.
.

Caution:
 The XQL queries are case-sensitive. For example, if the tag you
want to match in the document is <cXML> and your query
specifies CXML, the query will not find the node and the TN XML
document type will not be used for the document. In addition, if
you specify a value for the query, the value is also case-sensitive. If
you specify the value “XYZ Steel Company” and the actual value
in the document is “XyZ Steel COmpany”, the values will not
match and the TN XML document type will not be used.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 223
13 Defining and Managing TN XML Document Types

Item Description
 If the documents use namespaces, you must also define
namespace mappings for Trading Networks to correctly locate the
nodes identified by the XQL queries. For more information, see
“Namespace Mappings in TN XML Document Types” on
page 236.

Note: For custom attributes that are extracted from an XML document,
Trading Networks returns specific values for the different data types
(e.g., STRINGLIST, STRING, NUMBERLIST, NUMBER, DATETIMELIST, and
DATETIME). For more information, see “Extracting Custom Attributes
From XML Documents” on page 505.

Root tag You can optionally specify the value of the root tag within the XML
document that you want documents that match this TN XML
document type to have.
Example: To identify a document that has a declared root tag value of
cXML, you would specify cXML. For example, the document might
contain the following document type declaration containing the
declared root tag:
<!DOCTYPE cXML SYSTEM "cXML.dtd">

DOCTYPE You can optionally specify the system identifier or public identifier
identifier within the XML document. These identifiers are located in the
document type declaration (DOCTYPE) after either the “SYSTEM” or
“PUBLIC” literal string.
Example: To identify a document that has the following DOCTYPE
declaration, specify cXML.dtd for the value of DOCTYPE identifier:
<!DOCTYPE cXML SYSTEM "cXML.dtd">

Pipeline You can optionally specify arbitrary pipeline variables for Trading
Matching Networks to use to identify the TN XML document type. Specify the
Variables Name and optionally, the Value of the pipeline matching variable. If you
specify both the Name and the Value of the pipeline matching variable,
Trading Networks checks to see that both exist in the pipeline. If you
specify only the Name and no Value, then Trading Networks checks to
see if the Name exists.

Note: If you do not include any identification information in a TN XML document


type, Trading Networks does not use the TN XML document type.

224 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

Determining the TN Document Type to Use for an XML Document


To determine the TN document type to use for an XML document, Trading Networks
looks at all enabled TN XML document type. For each TN XML document type, Trading
Networks first matches the Root tag and DOCTYPE identifier values in the TN XML
document type to the XML document. If these match, Trading Networks also checks the
identifying queries.
For a document to match a TN XML document type, all the identification criteria that you
specify must match. For example, to identify a cXML OrderRequest, you might specify
the following:
Identifying Query = /cXML[0]/Request[0]/OrderRequest[0]
Root tag = cXML
An XML document matches this identification information if the tag identified by the
identifying query (<OrderRequest>) exists within the document and evaluates to any
value and the root tag contains the value cXML.

When an XML Document Does Not Match Any TN Document Types


If Trading Networks checks a document against all enabled TN document types and none
match, the document is considered to be an unknown type. Because Trading Networks
cannot match the document to a TN document type:
 Trading Networks cannot extract any attribute information from the document; a TN
document type identifies the attribute information to extract.
 Processing rule routing will be enabled for this document; a TN document type is
where routing can be disabled.
When the TN document type is unknown, Trading Networks attempts to process the
document with an unknown TN document type by performing the actions identified in
the processing rule that the document triggers. You can define processing rules that act
on documents with an unknown TN document type.

When an XML Document Matches More Than One TN Document Type


If Trading Networks determines that the document matches multiple TN document
types, the document is considered to be an unknown type. This is because Trading
Networks does not know which of the matching TN document types to use. In this
situation, Trading Networks logs a message to the activity log that identifies all the TN
document types that the document matched and treats the document as an unknown
document. For more information, see “When an XML Document Does Not Match Any
TN Document Types” above.
You can change this behavior by configuring Trading Networks to use the first TN
document type that matches an incoming document. To do so, set the Trading Networks
configuration property, tn.check.ambiguous.docs, to false. For more information, see
Appendix D, “Trading Networks Configuration Properties”.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 225
13 Defining and Managing TN XML Document Types

Extraction Information In TN XML Document Types


When Trading Networks matches a document to a TN XML document type, it uses the
extraction information in the TN XML document type to determine the attributes that it
needs to extract from the document. You need to specify the attributes that identify the
pieces of information within the document that you will want to use later. Trading
Networks also allows you to perform built-in or custom transformations on extracted
attribute values. If you are extracting information for a large document, see “Defining TN
Document Type XQL Queries for Large Documents” on page 511.

Important Attributes that You Should Extract from an XML Document


Important information you need to consider extracting are the system attributes:
 SenderID and ReceiverID. Use this information for processing rules, analyzing
transactions, and process management.
 Processing Rules. Extract these system attributes to process a document based on
the sender and receiver of the document. The sender and receiver are two of the
criteria that Trading Networks uses to determine the processing rule to use for a
document. For more information, see “Processing Rule Criteria” on page 322.
 Transactions. If you extract these system attributes, when viewing documents in
My webMethods or the Console, you can refine the list of displayed documents to
those with specific senders and receivers.
 Process Management. Extract these system attributes to make the identity of the
sender and receiver available during process management. You can then set
conditions on links in your process models that use the identity of the sender and
receiver of a document.
 DocumentID. Extract the document ID from the document if you want Trading
Networks to be able to check for a duplicate document. That is, if you want Trading
Networks to be able to determine whether it has already received a document. In
addition, if you extract the document ID, when viewing documents in My
webMethods or the Console, you can refine the list of displayed documents to those
with a specific document ID.
 ConversationID. Extract this system attribute if you want Trading Networks to pass the
document to process management after it performs the actions identified by
processing rules. You define the actions taken against a document during process
management by creating a process model. For more information about creating
process models, see the Getting Started with BPM guide and the webMethods Designer
Online Help. If you do not want Trading Networks to pass the document to process
management, add a variable to the pipeline called prtIgnoreDocument with the value
of true.
 UserStatus. Extract the user status if the document contains a user status, and you
want the user status to be available so you can process the document based on this
user status. The user status is a criterion that Trading Networks uses to determine the

226 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

processing rule to use for a document. For more information, see “Processing Rule
Criteria” on page 322. In addition, if you extract this system attribute, when viewing
documents in My webMethods or the Console, you can refine the list of displayed
documents to those with specific user statuses.
 GroupID. Extract this system attribute if it is important for you to easily access the
group ID of a document.
 SignedBody and Signature. Extract these system attributes if you want Trading
Networks to be able to verify the digital signature of a document. For more
information, see “Verifying the Digital Signature of an XML Document” on page 242.
In addition to the system attributes, you should extract any custom attribute that you will
want to use later. For example, to be able to query documents based on the total order
amount of a purchase order, you need to specify that you want the total order amount
extracted from the document. If the documents contain a status that you will want to use
in reports, you need to specify that you want the status from the document extracted.
To specify an attribute that you want to extract, select an existing attribute (system or
custom) from a list. After specifying the attribute, you must specify an XQL query that
instructs Trading Networks how to extract the attribute for the particular TN XML
document type. To specify the XQL query, you can type the query or you can load a
sample document to help you generate the queries. For example, you might have an
attribute named ShippingMethod. The following shows an example of an XQL query to
identify the ShippingMethod and portions of a CBL document that show what would be
selected by the query.

XQL Query for ShippingMethod = /PurchaseOrder[0]/Transport[0]/Carrier[0]


<PurchaseOrder>
.
.
.
<Transport Direction = "SupplierToBuyer">
.
.
.
<Carrier>FedEx</Carrier>
.
.
The XQL query points to this tag. Trading
.
Networks stores the value “FedEx” for the
</Transport> ShippingMethod attribute.
.
.
.
</PurchaseOrder>

Another attribute that you might want to extract from the above document is the
direction of the transport. You can use the following XQL query:
/PurchaseOrder[0]/Transport[0]/@Direction

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 227
13 Defining and Managing TN XML Document Types

To extract the ShippingMethod attribute specifically when the direction of the transport is
“SupplierToBuyer”, use the following query:
/PurchaseOrder[0]/Transport[@Direction 'eq' 'SupplierToBuyer']/Carrier[0]
The XQL queries are case-sensitive. For example, if the tag you want to match in the
document is <Carrier> and your query specifies <CARRIER>, the query will not find the node
and Trading Networks will be unable to extract the information for the attribute. For
examples of XQL queries, see Appendix E, “XQL Reference”.

Important!
 If the XML documents you expect use equivalent namespaces but have different
prefixes, you must also define namespace mappings for Trading Networks to
correctly locate the nodes identified by the XQL queries. For more information,
see “Namespace Mappings in TN XML Document Types” on page 236.
 If the query does not identify a node in the XML document, Trading Networks
cannot extract information for the attribute.

For custom attributes that are extracted from an XML document, Trading Networks
returns specific values for the different data types (e.g., STRINGLIST, STRING, NUMBERLIST,
NUMBER, DATETIMELIST, and DATETIME). For more information, see “Extracting Custom
Attributes From XML Documents” on page 505.

Indicating that Attributes are Required in TN XML Document Types


When you define a TN XML document type, you can indicate that an attribute is
required. You might mark an attribute as required if you require the attribute information
when processing the document or if you just want Trading Networks to indicate that it
could not extract the attribute.
When you indicate that an attribute is required, Trading Networks flags an error if it is
unable to extract the document attribute, and Trading Networks sets the processing
status to DONE W/ ERRORS when it has completed processing the document.

Note:
 If you do not mark an attribute as required, Trading Networks does not flag an
error if it is unable to extract the attribute. If Trading Networks completes
processing without encountering any further errors, it sets the processing status
to DONE.
 You can require the system attributes Signed Body and Signature.

You can define your processing rules to use the error information that Trading Networks
records when it is unable to extract required attributes:
 Use the processing rule’s document errors criterion to trigger a processing rule based
on whether it contains errors. For more information, see “Document Recognition
Errors Criterion” on page 326.

228 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

 Use the processing rule’s Execute a service processing action to inspect the bizdoc
variable for the errors that Trading Networks encountered. When Trading Networks
is unable to extract an attribute that you have marked as required, Trading Networks
records the error in the bizdoc variable. This variable is in the pipeline and is available
for your use when Trading Networks is processing the document. For more
information see “Action 1—Execute a Service” on page 334. For more information
about the Execute an Integration Server processing actions, see “Action 1—Execute a
Service” on page 334.

Transformation Information for Extracted Attributes of TN Document


Types
Based on an attribute, you might also need to specify transformation information for the
attribute, i.e., how Trading Networks is to transform the value of that attribute based on
built-in or custom transformations. The following table lists the attributes for which you
can supply transform information and a description of the information that you can
specify.

Attribute Transformation For more information, see...


SenderID or ReceiverID Specify the external ID type that “Specifying Built-In
is associated with the information Transformation
in the document for the sender or Information for SenderID
receiver. For example, if the and ReceiverID” on
sender is identified in the page 230
document using a D-U-N-S
number, specify the external ID
type DUNS for the detail.
Attributes with the Specify the format that is used for “Specifying Built-In
data type DATETIME the date in the document. For Transformation
and DATETIME LIST example, if the date is 2000/05/31, Information for
you would specify yyyy/MM/dd Attributes with the
for the format. DATETIME and
DATETIME LIST Data
Type” on page 231
Attributes with the Specify whether you want “Specifying Built-In
data type STRING Trading Networks to alter the Transformation
(other than SenderID string value before storing the Information for
or ReceiverID) and value. Attributes with the
STRING LIST STRING or STRING LIST
Data Type” on page 231

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 229
13 Defining and Managing TN XML Document Types

Attribute Transformation For more information, see...


Attributes that Specify the built-in “Specifying Built-In
represent an array of transformation you want Trading Transformation
numbers Networks to take on the array of Information for
numbers: Average, Minimum, Attributes with the
Maximum, or Sum. For example, if NUMBER Data Type” on
you want Trading Networks to page 233
average the values in the array
and store that for the attribute,
specify Average for the detail.
All attributes You can write your own service to “Specifying a Custom
transform attributes. Transformation Service”
on page 234

Specifying Built-In Transformation Information for SenderID and ReceiverID


If you indicate that you want to extract the SenderID or ReceiverID system attributes from a
document, you need to specify how the sender or receiver is identified within the
document. For example, if you specify you want the ReceiverID extracted from the XML
document and the ReceiverID is identified in the document by a D-U-N-S number, specify
the XQL query to identify the location of the receiver information and select the external
ID type DUNS for the transformation.

XQL Query for ReceiverID = /PurchaseOrder[0]/OrderHeader[0]/DUNS[0]

<PurchaseOrder>
<OrderHeader>
<CorpName>XYZ Steel Company</CorpName>
<DUNS>123456789</DUNS>
</OrderHeader>
. The XQL query points to this tag. Trading Networks
. stores the value “123456789” for the ReceiverID attribute
. and associates it with the external ID type DUNS.
</PurchaseOrder>

The Document Types screen that you use to create TN document types contains a list of
the external ID types you can select. If the external ID type used for the sender or receiver
information within a document is not in the list or if you have agreed on a non-standard
format with a trading partner, select the external ID type Mutually Defined from the list.
Be sure to select an external ID type that your partners specify in their profiles.

230 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

Specifying Built-In Transformation Information for Attributes with the


DATETIME and DATETIME LIST Data Type
If you specify an attribute that has the data type DATETIME or DATETIME LIST, Trading
Networks requires you to identify the date format. Trading Networks maintains a list of
built-in common date/time formats from which you can select. However, if the date/time
format you need to use is not in the list, you can type the format you need.
To specify the date/time format, use a pattern string based on the “Time Format Syntax”
described for the java.text.SimpleDateFormat class. For example, if you want the
requested delivery date extracted from the following sample CBL document, specify the
XQL query to identify the location of the RequestedDeliveryDate attribute and specify the
date format yyyyMMdd'T'hh:mm:ss.

XQL Query for RequestedDeliveryDate = /PurchaseOrder[0]/OrderHeader[0]/RequestedDeliveryDate[0]

<PurchaseOrder>
<OrderHeader>
<RequestedDeliveryDate>20000829T01:01:01</RequestedDeliveryDate>
.
.
The XQL query points to this tag. Trading Networks
.
uses the value “20000829T01:01:01” for the
</OrderHeader> RequestedDeliveryDate attribute and uses the date
. format you specify to convert the date to a
. java.sql.Timestamp.
.
</PurchaseOrder>

Trading Networks extracts the value of the date and uses it and the pattern that you
specify to decode the value and convert it to the format that Trading Networks requires to
store the date in the database.

Specifying Built-In Transformation Information for Attributes with the STRING


or STRING LIST Data Type
For attributes (other than SenderID or ReceiverID) with the data type STRING or STRINGLIST,
you can specify whether you want Trading Networks to alter the string value before
storing. You can have Trading Networks make a simple alteration to change the case of
the extracted string values to all upper- or all lowercase. Alternatively, you can have
Trading Networks use the extracted values as substitutions in a string that you supply. If
you do not specify transformation information for a string attribute, Trading Networks
saves the data exactly as it extracted it.
The following table describes each of the built-in transformation options you can use for
string attributes.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 231
13 Defining and Managing TN XML Document Types

If you specify this


format... Trading Network stores...
Uppercase The extracted string attribute value in all uppercase. For example,
if the extracted attribute value is “Purchase Order”, Trading
Networks stores “PURCHASE ORDER” for the attribute value.
Lowercase The extracted string attribute in all lowercase. For example, if the
attribute value is “Purchase Order”, Trading Networks stores
“purchase order” for the attribute value.
String Substitution The pattern that you specify using the information that Trading
Networks extracts to replace the arguments (e.g., {0}) you specify
in the pattern. Trading Networks uses the
java.text.MessageFormat class to substitute the extracted values
into the pattern that you specify.
For example, you might specify the pattern
Items Ordered: {0}, {1}, {2}, and specify an XQL query for the
attribute that extracts the following array of values:

0 Cellular phone
1 Belt clip
2 Rapid mobile charger

Trading Networks would store the following for the value of the
attribute:
Items Ordered: Cellular phone, Belt clip, Rapid mobile charger
If you place more arguments in the pattern than values that
Trading Networks extracts, the string that Trading Networks
stores in the database for the attribute will contain the extra
arguments (e.g., {2}). If you specify less arguments in the pattern
than values that Trading Networks extracts, the string that Trading
Networks stores in the database for the attribute will not contain
all the extracted values; it will only contain the values for the
number of arguments you specify in the pattern.

232 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

Specifying Built-In Transformation Information for Attributes with the NUMBER


Data Type
You can specify an attribute with NUMBER data type with an XQL query that identifies an
array of numbers. When the XQL query for an attribute identifies an array of numbers,
you can specify one of the following built-in formats to transform the array of numbers to
a single value for Trading Networks to store:

If you specify this


format… Trading Networks stores…
Average The average value of all the numbers in the array. For example, if
the array contains the numbers [2, 3, 4, 5], Trading Networks stores
the value 3.5.
Minimum The smallest number in the array. For example, if the array contains
the numbers [2, 3, 4, 5], Trading Networks stores the value 2.
Maximum The largest number in the array. For example, if the array contains
the numbers [2, 3, 4, 5], Trading Networks stores the value 5.
Sum The sum of all the numbers in the array. For example, if the array
contains the numbers [2, 3, 4, 5], Trading Networks stores the value
14.
No format The first value of the array as the value of the attribute. For example,
specified if the array contains the numbers [2, 3, 4, 5], Trading Networks
stores the value 2.

Note: When Trading Networks extracts a NUMBER or NUMBER LIST from a document, it
uses the number parsing behavior of java.lang.Number. For example, if the NUMBER or
NUMBER LIST contains the value “100zzz”, Trading Networks interprets the value as
“100”, instead of throwing an error as it would if the value were “zzz100”. If you want
to redefine this parsing behavior, you can write a custom attribute transformation.
For more information about custom transformations, see below, “Specifying a
Custom Transformation Service”.

The following sample CBL document shows two line items and the quantity to purchase
of each. To store the total number of items ordered in the attribute TotalItems, specify an
XQL query that specifies an array of numbers that contains the quantity of each line item,
and specify the format SUM.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 233
13 Defining and Managing TN XML Document Types

XQL Query for TotalItems =


/PurchaseOrder[0]/ListOfOrderDetail[0]/OrderDetail[]/BaseItemDetail[0]/Quantity[0]/Qty[0]

<PurchaseOrder>
. This element of the query indicates to
. select all occurrences of
. <OrderDetail> tags.
<ListOfOrderDetail>
<OrderDetail>
<BaseItemDetail>
<LineItemNum>1</LineItemNum>
.
.
.
<Quantity>
<Qty>10</Qty>
</Quantity>
.
.
.
<BaseItemDetail>
</OrderDetail> The XQL query points to these
<OrderDetail> tags. Trading Networks uses the
<BaseItemDetail> SUM format and stores the value
<LineItemNum>2</LineItemNum> 15 for the TotalItems attribute.
.
.
.
<Quantity>
<Qty>5</Qty>
</Quantity>
.
.
.
<BaseItemDetail>
</OrderDetail>
<ListOfOrderDetail>
.
.
.
</PurchaseOrder>

Specifying a Custom Transformation Service


Trading Networks allows you to create your own service to perform transformations on
extracted attributes. The following table describes the specification you should use to
create the custom transformation service based on the data type.

234 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

Data type Specification you must use…


DATETIME or The service must implement the input and output variables that are
DATETIME LIST defined in the wm.tn.rec:DateAttributeTransformService specification.
STRING or The service must implement the input and output variables that are
STRING LIST defined in the wm.tn.rec:StringAttributeTransformService specification.
NUMBER or The service must implement the input and output variables that are
NUMBER LIST defined in the wm.tn.rec:NumberAttributeTransformService specification.

For more information about the inputs and outputs, see the section “Setting Input and
Output Values for Custom Transformation Services” below.
To view these specifications, use webMethods Developer. The specifications are located
in the WmTN package. For more information about these specifications, see the
webMethods Trading Networks Built-In Services Reference.

Setting Input and Output Values for Custom Transformation Services


For custom transformation services, Trading Networks passes the following input
variables:

Input Value Meaning

values One or more values for your service to transform.

Note: The values may be null or an empty (zero length) string. For an
array data type (e.g., DATETIME LIST), any element in the values array
can be null or an empty string. Make sure that your custom
transformation service can handle null values or empty strings.

isArray Whether values contains a single value to transform or multiple


values to transform.
arg Optional arguments that you can define

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 235
13 Defining and Managing TN XML Document Types

As output, Trading Networks expects that you return the transforms values in the
following output variable:

Output Value Meaning

newValues Transformation values of:


 Date List for DATETIME or DATETIME LIST
 String List for STRING or STRING LIST
 Number List for NUMBER or NUMBER LIST.
If the input variable isArray is false, the input variable values will
contain only a single item to transform. Your service should transform
the single item and save just a single item in the output variable
newValues.
If the input variable isArray is true, meaning multiple values, your
service should loop through the items in the values variable and
transform each one. It should store each as an item in the output
variable newValues. For example, if you are transforming string data,
newValues is a Date List of the transformed Strings.

For information about creating the service, seeDeveloping Integration Solutions: webMethods
Developer User’s Guide.

Namespace Mappings in TN XML Document Types


If you receive XML documents that use namespaces, you might want to include
namespace mappings in your TN XML document types. This section provides
information about namespaces, how namespaces affect XQL queries against XML
documents, what namespace mappings are, and how to set up namespace mappings.

XML Documents and Namespaces


Namespaces are used in an XML document to distinguish between elements that come
from different sources. A set of elements (or tags) from a specific source is assigned to a
specific namespace. For example, a document might contain elements that are part of a
standard and also custom elements. To distinguish between the standard elements and
the custom elements, the XML document might contain a namespace for the standard
elements and another for the custom elements.

236 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

<order xmlns:standard="http://www.standards.org"
xmlns:custom="http://www.unitedsteel.com/orderDocs">
The namespace is associated with a URI that
uniquely identifies the namespace
<standard:buyer>
<standard:DUNS>987654321</standard:DUNS> The namespace is associated with a string
that is used as a prefix in the names of
<standard:company>SMK Products</standard:company>
<custom:contact>Mr. Smith</custom:contact> elements
<custom:customerNum>01031995</custom:customerNum>
</standard:buyer> The xmlns attribute defines
a namespace
<standard:seller>
<standard:DUNS>123456789</standard:DUNS>
<standard:company>United Steel</standard:company>
<custom:contact>Mr. Jones</custom:contact>
</standard:seller> This element is in the standard
namespace
<standard:LineItem>
<standard:LineItemNumber>1</standard:LineItemNumber>
<standard:partNumber>C8C8C8</standard:partNumber>
<standard:quantity>10</standard:quantity>
<custom:description>bar steel</custom:description>
</standard:LineItem>
This element is in the custom
</order> namespace

XML documents that use namespaces contain the xmlns attribute, which defines a
namespace. Each namespace is associated with a URI. Note that the URI does not have to
point to anything. It is used to uniquely identify the namespace.
Elements are considered to be in the same namespace if they are all associated with the
same URI. The xmlns attribute specifies the URI for a namespace and optionally, a prefix
associated with that namespace. When a namespace is associated with a string, this string
is used as a prefix when naming the elements in that namespace, which allows you to
easily identify the elements that belong to a specific namespace. For example, if a
document contains a namespace that is associated with the prefix string standard and the
quantity element is in the standard namespace, the element is represented in the XML
document as <standard:quantity>.
The exception for naming elements in a namespace with a prefix is when the elements
belong to the default namespace. When an XML document uses a default namespace, the
elements in the default namespace do not use a prefix. The documents with a default
namespace contain an xmlns attribute that specifies only the URI for a namespace, for
example:
xmlns=“http://www.standards.org”

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 237
13 Defining and Managing TN XML Document Types

How Namespaces Affect Identifying and Attribute XQL Queries


If an XML document uses namespaces, the elements in that document might be prefixed
with a string. When you create XQL queries to identify elements within the document,
for example, identifying queries or queries that locate document attributes, the XQL
queries include the prefix. For example, the XQL query to identify the <standard:buyer>
element in the XML document shown above is:
/Order[0]/standard:buyer

However, not all documents use the same prefix for the same namespace. For example,
one document might use standard for a prefix and another might use CBL_standard.
Namespaces are the same if they identify the same URI, not the same prefix. As a result,
the following xmlns attributes identify the same namespace:
xmlns:standard=“http://www.standard.org/”
xmlns:CBL_standard=“http://www.standard.org/”

As a result, if the above xmlns attributes are used in two different documents, the XQL
queries for elements within those documents are different: For example, the following
XQL queries might represent the same elements:
/Order[0]/standard:buyer
/Order[0]/CBL_standard:buyer

However, if you execute the /Order[0]/standard:buyer XQL query against the document
that uses the prefix CBL_standard, the XQL query will fail.
The solution to this problem is namespace mappings. In a TN XML document type, you
define namespace mapping to identify all the prefixes that point to the same URI (in
other words, identify the same namespace).

Namespace Mappings
Namespace mappings map the prefixes used by namespaces to the URIs used by those
namespaces. With this information, if Trading Networks receives an XML document that
contains a prefix that you have in the namespace mappings, it can make the appropriate
substitutions in the XQL queries, if necessary, so that the queries find the elements of the
XML document as expected.
For example, you create your TN XML document type using a sample document that
uses the following namespace:
xmlns:standard=“http://www.standard.org/”

You have a trading partner that sends you documents, but the trading partner uses the
following namespace:
xmlns:CBL_standard=“http://www.standard.org/”

Note that the URIs are identical meaning it is the same namespace; however, the prefixes
are different. To accommodate the different prefixes, the TN XML document type
contains the following namespace mappings:

238 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

Prefix URI
standard http://www.standard.org/
CBL_standard http://www.standard.org/

With this namespace mapping, a TN XML document type definition can use the XQL
query /Order[0]/standard:buyer, and Trading Networks will make the proper
substitution for a document that uses the CBL_standard prefix rather than the standard
prefix.

With the namespace mapping, the following XQL query will locate the "buyer" element in either of the following documents.
XQL query = /order[0]/standard:buyer

<order xmlns:standard="http://www.standards.org"
xmlns:custom="http://www.unitedsteel.com/orderDocs"> The XQL query points to this
element in this document
<standard:buyer>
<standard:DUNS>987654321</standard:DUNS>
<standard:company>SMK Products</standard:company>
<custom:contact>Mr. Smith</custom:contact>
<custom:customerNum>01031995</custom:customerNum>
</standard:buyer>

</order>

<order xmlns:CBL_standard="http://www.standards.org"
The XQL query points to this
xmlns:custom="http://www.unitedsteel.com/orderDocs">
element in this document
<CBL_standard:buyer>
<CBL_standard:DUNS>987654321</CBL_standard:DUNS>
<CBL_standard:company>SMK Products</CBL_standard:company>
<custom:contact>Mr. Smith</custom:contact>
<custom:customerNum>01031995</custom:customerNum>
</CBL_standard:buyer>

</order>

Define namespace mappings for a TN XML document type if the XML documents that
your trading partners send to Trading Networks use namespaces that are equivalent but
have different prefixes. If you do not define namespace mappings, the identifying XQL
queries and the XQL queries that locate document attributes will fail. As a result, if the
TN XML document types use identifying queries, Trading Networks will not match the
document to the TN XML document type. If the TN XML document type specifies XQL
queries to locate and extract attribute information, those queries will fail and Trading
Networks will not extract the attribute information.
To define namespace mappings, you can define them manually, or if you are using a
sample document, you can have Trading Networks populate the namespace mappings
table with the prefix and URIs from the xmlns attributes that define namespaces in the
sample document.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 239
13 Defining and Managing TN XML Document Types

When defining namespace mappings, keep the following guidelines in mind:

Guideline Sample
Each prefix in the namespace
mappings table for a TN XML Prefix URI
document type must be unique. aaa http://www.ww.com
bbb http://www.xx.com
ccc http://www.yy.com
ddd http://www.zz.com

The URIs you list in the namespace


mappings table do not have to be Prefix URI
unique. You can define more than one
aaa http://www.xx.com
prefix to the same URI.
bbb http://www.xx.com
ccc http://www.xx.com
ddd http://www.xx.com

To define a mapping for the default


namespace (which does not use a Prefix URI
prefix), use the literal string prefix0 prefix0 http://www.yy.com
for the prefix.

Note: Because Trading Networks uses the literal prefix0 to identify the default
namespace, you should not use prefix0 as the prefix in any document.

Additionally, be sure to include a mapping for each prefix/URI combination that you
expect to receive in XML documents from your trading partners. If Trading Networks
receives a document that uses a prefix not defined in the namespace mappings table, it
performs a literal match of the XQL queries against the document.

Options in TN XML Document Types


When Trading Networks matches a document to a TN XML document type, it uses the
options you specify
.

Use this option... To...


IS Document Type Associate an IS document type with documents identified by the
TN XML document type.
IS schema to Associate an IS schema with documents identified by the TN XML
validate against document type. Trading Networks uses the IS schema to validate
documents.

240 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

Use this option... To...


Processing Rule Whether you want Trading Networks to search for a processing
Routing rule to use to process the documents identified by the TN XML
document type. If you disable routing, Trading Networks
performs the pre-processing actions defined by the TN document
type; however, it does not search for a processing rule, nor does it
perform any processing rule actions. You might disable routing,
for example, if you extract a conversation ID and the document
will be processed as part of a business process.
Pre-Processing Specify actions that you want Trading Networks to perform on
actions documents identified by the TN XML document type before
Trading Networks uses the processing rule actions to process the
document. You can select one or more of the following
preferences:
 Verify the digital signature of a document.
 Validate the structure of a document using the IS schema that
you specified for the Schema to validate against option.
 Check for duplicate document using built-in or custom
services; that is, determine whether Trading Networks has
already received the document.
 Save a copy of the document content, attributes, and/or log
information to the database.

Specifying an IS Document Type for TN XML Document Types


You can identify an IS document type that Trading Networks can use to format the
documents identified by the TN XML document type. You identify the IS document type
by specifying its fully-qualified name. The Document Types screen allows you to browse
IS document types to locate the one you want to use.
Specify an IS document type if you plan to execute the wm.tn.doc.xml:bizdocToRecord built-in
service against the document. This service transforms an XML document into an IS
document (IData object) based on the blueprint defined by the specified IS document
type. For more information about the wm.tn.doc.xml:bizdocToRecord built-in service, see the
webMethods Trading Networks Built-In Services Reference.

Specifying an IS Schema for TN XML Document Types


You can identify an IS schema that maps the structure of the documents identified by the
TN XML document type. You identify the IS schema by specifying its fully-qualified
name. If you do not know the fully-qualified name, the Document Types screen allows
you to browse IS schemas to locate the one you want to use.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 241
13 Defining and Managing TN XML Document Types

Specify an IS schema if you want Trading Networks to be able to validate the structure of
an XML document. For more information, see below, “Specifying Pre-Processing Actions
for TN XML Document Type” on page 242.

Disabling Processing Rule Routing


You specify whether you want Trading Networks to process documents identified by the
TN XML document type using actions in a processing rule.
 When processing rule routing is enabled, Trading Networks searches for a processing rule
for the document and proceeds to perform the pre-processing and processing actions
as defined by that processing rule.
 When processing rule routing is disabled, Trading Networks performs the pre-processing
actions defined by the TN document type; however, it does not search for a
processing rule, nor does it perform any processing rule actions.
If you do not want Trading Networks to perform processing rule actions, disabling
routing improves performance because Trading Networks does not use processing
time to search for a processing rule.
You might want to disable processing if the document is to be processed as part of a
business process. Even when processing rule routing is disabled, if the TN document
type instructs Trading Networks to extract the ConversationID system attribute,
Trading Networks will pass the document to the Process Engine, which in turn will
determine the process model to use to process the document.

Specifying Pre-Processing Actions for TN XML Document Type


Trading Networks performs pre-processing actions before performing the processing
actions defined by a processing rule. You specify pre-processing actions in both TN
document types and processing rules. The pre-processing actions in a processing rule
indicate whether Trading Networks is to use the settings from the TN document type or
to override the TN document type settings.
You can specify the following pre-processing actions for TN document types. Trading
Networks performs the pre-processing actions in the following order.

Verifying the Digital Signature of an XML Document


Use the Verify Digital Signature pre-processing action to assure that the document Trading
Networks receives has arrived unchanged and that the sender is who it claims to be. To
use this pre-processing action, the TN document type must instruct Trading Networks to
extract the SignedBody and Signature system attributes. The signature that Trading
Networks extracts must be a PKCS#7 detached signature of the signed body.
To verify that the document arrived unchanged, Trading Networks assures the signed
body has not changed by verifying the digital signature. To verify that the sender is who
it claims to be, Trading Networks matches the certificate from the digital signature to the
certificate that Trading Networks has in the Trading Networks database. This certificate

242 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

on file with Trading Networks is the one identified in that partner’s profile on the Security
tab, Verify sub-tab. If the partner’s profile does not contain the certificates to use for
verification, Trading Networks cannot verify the digital signature.

For more information about how Trading Networks verifies the digital signature, see
Appendix B, "Security within Trading Networks" in Understanding webMethods B2B:
webMethods Trading Networks Concepts Guide.

Regardless of whether Trading Networks determines the digital signature is valid, it


continues performing the rest of the pre-processing actions. It also performs the
processing actions that are defined in the processing rule. If the digital signature is not
valid, the processing actions can access the error information from the pipeline. For more
information about the pipeline variables that are available to processing actions, see
“Action 1—Execute a Service” on page 334.
If Trading Networks is instructed to use the Save Document to Database pre-processing
action to save information about the document to the database, Trading Networks also
logs the error to the activity log.

Validating the Structure of an XML Document


Use the Validate Structure pre-processing action to validate the structure of a document
against an IS schema. To use this pre-processing action, you must specify an IS schema in
the TN XML document type.
To validate the structure of the document, Trading Networks assures that the XML
document matches the structure identified by the IS schema using the pub.schema:validate
built-in service. For more information about this service, see the webMethods Integration
Server Built-In Services.
Regardless of whether the Trading Networks determines the document structure is valid,
it continues performing the rest of the pre-processing actions. It also performs the
processing actions that are defined in the processing rule. If the document structure is not
valid, the processing actions can access the error information from the pipeline. For more
information about the pipeline variables that are available to processing actions, see
“Action 1—Execute a Service” on page 334.
If Trading Networks is instructed to use the Save Document to Database pre-processing
action to save information about the document to the database, Trading Networks also
logs the error to the activity log.

Important! If the structure of a document is not valid, the validation service can return
many error messages. To limit the number of error messages, set the
tn.doc.validate.max_errs property in the Trading Networks properties file. For example,
to limit the number of errors to ten, specify the following:
tn.doc.validate.max_errs=10

For more information, see “Trading Networks Configuration Properties” on page 36.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 243
13 Defining and Managing TN XML Document Types

Checking for Duplicate of the XML Document


Use the Check for Duplicate Document pre-processing action to have Trading Networks
determine whether it has already received the document. Trading Networks checks the
document being processed against either built-in services or custom services. You can
also choose Do not check for duplicate document to have Trading Networks not to check
against the documents it has in its database.
You can have Trading Networks determine whether the document is a duplicate using a
built-in or custom duplicate check service.
 Built-in services—Use one of the following built-in duplicate checks:
 Document ID only. Trading Networks assures that it does not already have a
document with the same document ID in its database. To check for a duplicate
document using the document ID, you must instruct Trading Networks to extract
the DocumentID system attribute from the document.
 Document ID and sender. Trading Networks assures that it does not already have a
document with the same document ID and sender in its database. To check for a
duplicate document using the document ID and sender, you must instruct Trading
Networks to extract the DocumentID and SenderID system attributes from the
document.
 Document ID, sender and receiver. Trading Networks assures that it does not already
have a document with the same document ID, sender, and receiver in its database.
To check for a duplicate document using the document ID, sender, and receiver,
you must instruct Trading Networks to extract the DocumentID, SenderID, and
ReceiverID system attributes from the document.
 Document ID, sender and document type. Trading Networks assures that it does not
already have a document with the same document ID, sender, and TN document
type in its database. To check for a duplicate document using the document ID
and sender you must instruct Trading Networks to extract the DocumentID and
SenderID system attributes from the document.
 Custom services—Use a service that you create to determine whether a document is a
duplicate. For more information, see “Creating a Duplicate Document Check Service”
on page 333.

Note: There could be performance issues if you choose to use custom services for
duplicate checking based on the logic in the service you select.

The following lists reasons Trading Networks might be unable to correctly determine
whether a document is a duplicate:
 Trading Networks previously received a document that it did not save to the database
and the same document is sent again.
 Trading Networks previously received a document and saved it to the database, but
did not extract the DocumentID, SenderID, and/or ReceiverID system attributes from the
document.

244 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

 You selected the Document ID, sender and document type option and Trading Networks
was unable to match the document to a TN document type.
Trading Networks saves the results of the duplicate document check to the pipeline. As a
result, it is available for your use in processing actions that you define in the processing
rule. For more information about the pipeline variables that are available to processing
actions, see “Action 1—Execute a Service” on page 334.
Additionally, Trading Networks uses the results of the duplicate document check in the
Save Document to Database pre-processing action.

Saving an XML Document to the Database


Use the Save Document to Database pre-processing action to instruct Trading Networks to
save a copy of all documents, only unique documents, or do not save the document to the
database. In addition, if you want Trading Networks to use reliable delivery or scheduled
delivery to deliver XML documents, you must have Trading Networks save the document
to the database. For more information, see “Using Reliable Delivery with Immediate
Delivery Method” on page 346 or “Using Reliable Delivery with Scheduled Delivery” on
page 347.
If you choose to not save the document, Trading Networks maintains no information
about this document after it processes the document. Certain delivery options require
saving the document content to the database, for example, if you want to deliver a
document via a queue. If you do not select to save the document content and Trading
Networks is to use a delivery option that requires document content to be saved, Trading
Networks will bypass reliable delivery and invoke the specified delivery service once.
When you specify this pre-processing action, you select whether Trading Networks is to
save all documents (i.e., save the document regardless of whether it is unique, even if
there is a duplicate) or only if the document(s) is unique (i.e., there is no duplicate). If you
want Trading Networks to save document(s) to the database only if it is unique, you must
specify the Check for Duplicate Document pre-processing action.
If you do not have Trading Networks perform the Check for Duplicate Document
pre-processing action, it has not determined whether the document has a duplicate. In
this situation, Trading Networks considers the document as having no duplicate and will
save the unique document to the database. For more information about the Check for
Duplicate Document pre-processing action, see the previous section, “Checking for
Duplicate of the XML Document”.
You can save a copy of the document(s) content, attributes, and/or log information to the
database. The following table displays the consequences of not saving specific options:

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 245
13 Defining and Managing TN XML Document Types

If you do not save


this option... Then the consequences of not saving are...
Content  If you use the Deliver Document actions, Trading Networks will
not use reliable delivery.
 You will not be able to view content from My webMethods or
Trading Networks Console.
 You will not be able to resubmit or re-process the document.
Attribute  You will not be able to view custom attributes from My
webMethods or Trading Networks Console (i.e., attributes will
contain only information for system attributes). However, you
can still use the processing rules extended criteria for the
document.
 You cannot search for documents in My webMethods or Trading
Networks Console based on the values of custom attributes.
 You might get different or unexpected results when you
reprocess a document. Because the attributes are not saved
when you reprocess the document, Trading Networks will not
match processing rules that use extended criteria. Instead,
Trading Networks will match to another processing rule, for
example the default processing rule, and perform the process
actions identified in that matching rule. Trading Networks does
not perform document recognition again and therefore does not
re-extract the attributes.
For example, if you use extended criteria to select a processing
rule when the value of the custom attribute Total Amount is
greater than 10000, Trading Networks would not select that
processing rule when reprocessing a document because the
value of the Total Amount attribute would not be available and
therefore would not match the extended criteria.
 Note that you can still resubmit a document. When Trading
Networks resubmits a document, it performs document
recognition and therefore extracts the attributes again.
Activity Log  You will not be able to view activity log entries from My
webMethods or Trading Networks Console.

Note: Trading Networks always saves documents that it is to pass on to process


management regardless of the setting of the Save Document to Database pre-processing
action. Trading Networks passes documents on to process management if it extracted
a conversation ID from the document. For more information about process
management, see Getting Started with BPM and the webMethods Designer Online
Help.

246 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

Defining TN XML Document Types


How you define TN XML document types depends on whether you have a sample
document available when you create the TN document type.
When you create a TN XML document type, you specify XQL queries that locate specific
nodes in the document; that is, identifying queries that locate nodes that must be present
in the document for the TN XML document type to be considered a match and queries
that identify the location of attribute information that you want Trading Networks to
extract from the document.
 Using a sample document—When you use a sample document, creating the XQL queries
is simplified because you highlight the node in the sample document and Trading
Networks forms the query for you. You can use a sample document that you have
stored in your file system. Alternatively, you can use a document that was sent to
Trading Networks for processing and is in the Trading Networks database. For
example, Trading Networks might have received a document for which there is no
matching TN document type, in other words, a document with an unknown TN
document type. To create a TN document type for that document, you can use the
document as the sample document when creating the TN document type.
 Not using a sample document—When you do not use a sample document, you need to
know the required XQL queries and type them in yourself.

Note: If new TN document types are created while you have an open My webMethods
session, those TN document types will not be included in My webMethods displays
until you log out then back into My webMethods or until you refresh your cache in
My webMethods. For more information about how to refresh your My webMethods
cache, see information about My webMethods user preferences in Managing B2B
Integrations: webMethods Trading Networks User’s Guide.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 247
13 Defining and Managing TN XML Document Types

Using a Sample Document to Define a TN XML Document Type


Use this procedure when you have a sample document available for defining a TN XML
document type. For a summary of actions you can take against a sample document, see
“Working with a Sample Document” on page 256.

To define a TN XML document type using a sample document

1 In Trading Networks Console, perform one of the following procedures to start a new
TN XML document type and load a sample document.

Method to start a TN XML


document type Procedures when you have a sample document loaded

New— The TN XML 1 Select View > Document Types.


document type fields are
2 Select Types > New > XML.
empty, and you load a sample
document from the file 3 In the Create New DocType dialog box, select
system. the XML document type category from the list.
4 In the Document Types Details dialog box,
click the Identify tab.

5 Click Select Sample Document.


6 In the Select File dialog box, browse your file
system to locate the XML document that you
want to use as a sample, and click Open.
Duplicate— The TN XML 1 Select View > Document Types.
document type fields are
2 Click the row containing the TN XML
filled with values from the
document type that you want to duplicate.
TN XML document type that
you duplicate, and you load a 3 Select Types > Duplicate.
sample document from the
file system. 4 Click the Identify tab.

You can update any or all 5 Click Select Sample Document.


fields from the duplicated TN
XML document type. 6 In the Select File dialog box, browse your file
system to locate the XML document that you
want to use as a sample, and click Open.

248 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

Method to start a TN XML


document type Procedures when you have a sample document loaded

From Saved Document—The TN 1 From Trading Networks Console, use the


XML document type fields Transaction Analysis screen to display the
are empty and the sample sample document that you want to use. If you
document from the Trading need procedures for viewing documents on
Networks database is loaded the Transaction Analysis screen, see Managing
for you. B2B Integrations: webMethods Trading Networks
User’s Guide.
2 Click the row containing the document for
which you want to create a TN XML
document type.
3 Select Transactions > Create/Edit Document Type.

Note: Trading Networks displays a tree view of the XML document in the left side
on the screen. To view the document source, click Show Source.

4 Type the name you want to give the TN XML document type in the Name field. This
field is required.
5 Optionally, type a description for the TN XML document type in the Description field.
6 Click the Identify tab. Perform one or more of the following procedures to specify
information that indicates how Trading Networks is to identify documents. For
details about specifying any of this information, see “Identification Information in TN
XML Document Types” on page 222.

Note: If you do not specify any identification information in a TN document type,


Trading Networks does not use the TN document type.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 249
13 Defining and Managing TN XML Document Types

For this Identify tab


parameter… Use this procedure when using a sample document

Identifying Queries 1 In the sample document, select the node that you want the
identifying query to represent.
When you select a node, Trading Networks fills in the
Query field with the XQL query for the selected node and
displays the value in the Value field.
Note: This “filled in” query is for a specific node in the XML
document. This node is applicable for DATETIME, STRING, or
NUMBER data types. But, if you want to use DATETIME LIST,
STRING LIST, NUMBER (with Average, Minimum, Maximum, and
Sum), or NUMBERLIST data types, you need to update the
query so that it identifies an array of values.
For information about XQL queries, see Appendix E, “XQL
Reference”.
2 Right click and select Add an identifying query.
Trading Networks displays the Add an identifying query
dialog box. Trading Networks fills the Query field with the
XQL query for the node that you selected and the Value
field with the value of the node.
 If you want the TN XML document type to require the
identifying query to evaluate to a value, specify the
value in the Value field.
 If you do not want the TN XML document type to
require the identifying query to evaluate to a specific
value, clear the Value field.
3 Click OK.
Trading Networks adds the identifying query to the list on
the right.
4 Repeat this procedure for each identifying query that you
want to add.
Note:
 To delete a query from the TN document type, select
the query row and click Delete selected identifying
query.
 To view (in the sample document) the node that a
query represents, select the query row and click
Show node.

250 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

For this Identify tab


parameter… Use this procedure when using a sample document

Root Tag Click the Set button next to the Root Tag field. Trading
Networks determines the root tag of the sample document and
uses its value to populate the Root Tag field.
DOCTYPE Identifier Click the Set button next to the DOCTYPE Identifier field. Trading
Networks obtains the value that follows the SYSTEM or
PUBLIC literal string in the document type declaration
(DOCTYPE) in the sample document. If both literal strings
exist, Trading Networks uses the value after the SYSTEM
literal string. Trading Networks populates the DOCTYPE
Identifier field with the value it obtains from the document type
declaration in the sample document.
Pipeline Matching
1 Click Add New Pipeline Match.
2 Specify the following values in the Add Pipeline Matching
dialog box.
 Name. Name of the pipeline matching variable.
 Value. The value of the pipeline matching variable. This
field is optional. If you specify both the Name and the
Value of the pipeline matching variable, Trading
Networks checks to see that both exist in the pipeline.
If you specify only the Name and no Value, then Trading
Networks checks to see if the Name exists.
3 Click OK. Trading Networks adds the pipeline matching
variable to the list.
4 Repeat this procedure for each pipeline matching variable
that you want to add.

Important! You must supply at least one criterion that Trading Networks is to use to
recognize an XML document; that is, you must supply at least one identifying
query, a value for the Root Tag field, a value for the DOCTYPE Identifier field, or a
pipeline matching variable.

5 Click the Extract tab. Perform the following procedure for each attribute that you want
Trading Networks to extract from documents identified by this TN XML document
type. For details about what to specify for these fields, see “Extraction Information In
TN XML Document Types” on page 226.
a In the sample document, select the node that represents the attribute that you
want Trading Networks to extract.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 251
13 Defining and Managing TN XML Document Types

b Right click and select Add an attribute.


Trading Networks displays the Add an attribute dialog box. Trading Networks
fills the Query field with the XQL query for the node that you selected.

Note: This “filled in” query is for a specific node in the XML document. This
node is applicable for DATETIME, STRING, or NUMBER data types. But, if you
want to use DATETIME LIST, STRING LIST, NUMBER (with Average, Minimum,
Maximum, and Sum), or NUMBERLIST data types, you need to update the query
so that it identifies an array of values.

c In the Name field, select the name of the attribute from the list. Trading Networks
fills in the Description and Type fields based on the document attribute definition.
d If you want Trading Networks to flag an error if it encounters an error attempting
to extract this document attribute, select the Required check box. For more
information, see “Indicating that Attributes are Required in TN XML Document
Types” on page 228.
e Use the Transformation option to specify how Trading Networks is to handle
attribute data before storing it in the Trading Networks database. The data type of
the attribute (shown in the Type field) determines the Built-in or Custom
transformation options available. For more information, see “Transformation
Information for Extracted Attributes of TN Document Types” on page 229.
1 Built-in. Select an existing built-in transformation provided by Trading
Networks.

If the attribute data


type is… For Transformation…

Is SenderID or You must specify an external ID type. For more


ReceiverID information, see “Specifying Built-In Transformation
Information for SenderID and ReceiverID” on
page 230.
Has DATETIMEor You must specify a date format. Select one from the
DATETIME LIST seven different built-in formats or type in your own.
data type For more information, see “Specifying Built-In
Transformation Information for Attributes with the
DATETIME and DATETIME LIST Data Type” on
page 231.

252 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

If the attribute data


type is… For Transformation…

Has STRING or You can specify whether you want Trading Networks
STRING LIST data to alter the string value before storing it to UPPERCASE
type (but not or LOWERCASE. For more information, see “Specifying
SenderID or Built-In Transformation Information for Attributes
ReceiverID) with the STRING or STRING LIST Data Type” on
page 231.
Has NUMBER data You should specify the operation that Trading
type and the XQL Networks should perform on the numbers in the array.
query identifies an For more information, see “Specifying Built-In
array of numbers Transformation Information for Attributes with the
NUMBER Data Type” on page 233.

2 Custom. Select or create your own service to perform custom transformations


on extracted attributes. For more information, see “Specifying a Custom
Transformation Service” on page 234.

To do this… Perform this…

Create a new custom


transformation Click New Service.

Select an existing custom


transformation service Click Find Service to browse the IS namespace
to locate the one you want to use.
Set the inputs of the Click Set Inputs.
transformation from the
selected service
Edit an existing service Click on the Edit Service button.

f Click OK to close the Add an attribute dialog box.

Note: To delete an attribute from the TN document type, select the attribute
row and click Delete attribute. To view (in the sample document) the node
that a query represents, select the attribute row; then click Show node.

Important! If you do not extract the system attributes, Trading Networks does
not have this information available for processing rules or querying
documents.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 253
13 Defining and Managing TN XML Document Types

6 To define namespace mappings, click the Namespaces tab and perform one of the
following:
 To populate the namespace mapping table replacing any existing namespace
information, click Set.
 To add the namespace information to the current namespace mappings, click
Append.
When you click either Set or Append, Trading Networks populates the namespace
table with the namespace information from all xmlns attributes in the sample
document.
For more information about namespaces, see “Namespace Mappings in TN XML
Document Types” on page 236.
7 Click the Options tab and fill in the fields. For details about these fields, see “Options
in TN XML Document Types” on page 240. For information specific to pre-processing
actions, see “Specifying Pre-Processing Actions for TN XML Document Type” on
page 242.

For this Options tab


parameter… Specify…

Format an IS document The fully-qualified name of the IS document type. To


type
search for an IS document type, click Find IS document
type to browse IS document types. For more information,
see “Specifying an IS Document Type for TN XML
Document Types” on page 241
Schema to validate The fully-qualified name of the IS schema. To search for an
against
IS schema, click Find schema to browse IS schemas. For
more information, see “Specifying an IS Schema for TN
XML Document Types” on page 241.
Note: When you select a IS schema, Trading Networks
automatically sets the Validate Structure fields to indicate
that you want to validate the structure of the document.
Processing Rule Whether you want Trading Networks to search for a
Routing processing rule and process the document based on the
processing rule; select either Enable routing or Do not enable
routing. For more information, see “Disabling Processing
Rule Routing” on page 242.

254 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

For this Options tab


parameter… Specify…

Verify Digital Signature Whether you want Trading Networks to verify a


pre-processing action document’s digital signature; select either Verify digital
signature or Do not verify digital signature. Trading Networks
performs this pre-processing action before it performs the
processing actions defined by the processing rule. For
more information about this pre-processing action, see
“Verifying the Digital Signature of an XML Document” on
page 242.
Validate Structure Whether you want Trading Networks to validate the
pre-processing action document’s structure; select either Validate structure or Do
not validate structure. If you select to validate, Trading
Networks validates the structure of the XML document
against the IS schema you specified in the Schema to
validate again option. Trading Networks performs this
pre-processing action before it performs the processing
actions defined by the processing rule. For more
information about this pre-processing action, see
“Validating the Structure of an XML Document” on
page 243.
Check for Duplicate Whether you want Trading Networks to determine
Document whether it has already received the document. Select one
pre-processing action of the following:
 Use built-in service to check for duplicate document
 Use custom service to check for duplicate document. To
create a new service, click New Service. To select an
existing service, click Find Service.
Note: There could be performance issues if you choose
to use custom services for duplicate checking based on
the logic in the service you select.
For more information about how to create a custom
duplicate checking service, see, “Creating a Duplicate
Document Check Service” on page 333.
 Do not check for duplicate document
Trading Networks performs this pre-processing action
before it performs the processing actions defined by the
processing rule.
For more information about this pre-processing action, see
“Checking for Duplicate of the XML Document” on
page 244.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 255
13 Defining and Managing TN XML Document Types

For this Options tab


parameter… Specify…

Save Document to Whether you want Trading Networks to save the


Database document to the database; select Save all documents, Save
preprocessing action only unique documents, or Do not save. Trading Networks
performs this pre-processing action before it performs the
processing actions defined by the processing rule.
If you select to save documents to the database, select from
the list whether you want Trading Networks the
document’s content, attributes, and/or activity log
information to the database.
For more information about this pre-processing action, see
“Saving an XML Document to the Database” on page 245

Important! Keep in mind the pre-processing actions specified in the processing


rules can override pre-processing actions specified in a TN document type. For
more information, see “Specifying Pre-Processing Actions for TN XML Document
Type” on page 242.

8 Click OK to create the TN XML document type.

Working with a Sample Document


The following table provides a summary of the actions you can take against a sample
document.

256 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

Menu or Button Description


Right-click menu— Right click in the sample document to display the right-click
Identify Tab menu.
 Add an identifying query—Select a node in the XML document;
then, select this menu item to add a new identifying query to
the TN document type. Trading Networks creates a new entry
for the identifying query and fills in the Query and Value fields
of the Add an identifying query dialog box with the XQL
query for the selected node and the XQL query’s value,
respectively.
 Edit selected identifying query—Use to update the XQL query for
an identifying query. Select the identifying query for which
you want to update the XQL query. Then, select the node in the
sample document that represents the new query you want to
use. Right click and select this menu item. Trading Networks
opens the Edit selected identifying query dialog box and
replaces the XQL query in the Query field with the XQL query
for the selected node. Trading Networks also updates the Value
field with the value of the selected XQL query.
 Set Root Tag—Select this menu item to set the value of the Root
Tag field with the value of the root tag in the sample document.
 Set DOCTYPE Identifier—Select this menu item to set the
DOCTYPE Identifier field with the value from the document type
declaration (DOCTYPE) in the sample document. Trading
Networks uses the value that follows the SYSTEM or PUBLIC
literal string in the document type declaration. If both literal
strings exist, Trading Networks uses the value after the SYSTEM
literal string.
Right-click menu— Right click in the sample document to display the right-click
Extract Tab menu.
 Add an Attribute—Select a node in the XML document; then,
select this menu item to add a new attribute that you want
Trading Networks to extract. Trading Networks creates a new
entry for the attribute and fills in the Query field in the Add an
Attribute dialog box with the XQL query for the selected node.
 Edit Attribute—Use to update the XQL query that identifies
where to locate the attribute information. Select the attribute
for which you want to update the XQL query. Then, select the
node in the sample document that represents the new query
you want to use. Right click and select this menu item. Trading
Networks opens the Edit Attribute dialog box and replaces the
XQL query in the Query field with the XQL query for the
selected node.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 257
13 Defining and Managing TN XML Document Types

Menu or Button Description


Right-click menu— Right click in the sample document to display the right-click
Namespaces Tab menu.
 Set Namespace Mapping—Select this menu item to populate the
namespace mappings table with the namespace information
from all xmlns attributes in the sample document. When you
select Set Namespace Mapping, Trading Networks deletes any
existing namespace mappings from the table and replaces
them with the namespace information that it obtains from the
sample document.
 Append Namespace Mappings—Select this menu item to populate
the namespace mappings table with the namespace
information from all xmlns attributes in the sample document.
When you select Append Namespace Mappings, Trading
Networks appends the namespace information that it obtains
from the sample document to the existing namespace
mappings in the table.
Append— Use the Append button to populate the namespace mappings table
Namespaces tab with the namespace information from all xmlns attributes in the
sample document. Trading Networks appends the namespace
information that it obtains from the sample document to the
existing namespace mappings in the table.
Set—Identify Tab Use the Set buttons to set the Root Tag and/or DOCTYPE Identifier
fields with values from the sample document.
 To set the Root Tag field with the value of the root tag in the
sample document, click the Set button next to the Root Tag field
 To set the DOCTYPE Identifier field with the value from the
document type declaration (DOCTYPE) in the sample
document, click the Set button next to the DOCTYPE Identifier
field. Trading Networks uses the value that follows the SYSTEM
or PUBLIC literal string in the document type declaration. If
both literal strings exist, Trading Networks uses the value after
the SYSTEM literal string.
Set—Namespaces Use the Set button to populate the namespace mappings table with
Tab the namespace information from all xmlns attributes in the sample
document. Trading Networks deletes any existing namespace
mappings from the table and replaces them with the namespace
information that it obtains from the sample document.

258 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

Menu or Button Description


Test Query—all Use this button to test an XQL query that you have typed in the
tabs Query field of the Document Type screen. When you click this
button, Trading Networks evaluates the XQL query you typed in
the Query field and displays the value of that query (retrieved from
the sample document) in the Value field.
Example:
The following sample document is loaded:

... Trading Networks


If XQL query points displays it’s value
to this node...

Type the following query in the Query field and click Test Query:

Trading Networks updates the Value field to contain the value for
TotalLineNum, which is 1.

Show Source—all Use this button to display the source of the XML document. When
tabs you click this button, Trading Networks opens a new window that
contains the document source.

(Show Node)— Click to have Trading Networks highlight the node in the
Identify and Extract sample document that an XQL query for an identifying query or
tabs attribute represents.

On the Identify tab, select an identifying query; then, click .


Trading Networks highlights (in the sample document) the node
that the XQL query for the identifying query represents.

When on the Extract tab, select an attribute; then, click . Trading


Networks highlights (in the sample document) the node that
Trading Networks would extract for the attribute (based on the
query defined for the attribute).

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 259
13 Defining and Managing TN XML Document Types

Defining a TN XML Document Type without a Sample Document


If you do not have a sample document available, use the following procedure to define a
TN XML document type.

To define a TN XML document type when you do not have a sample document

1 In Trading Networks Console, perform one of the following procedures to start a new
TN XML document type.

Procedures when you do not have a sample


Method to start a TN XML document type document loaded

New— The TN XML document type 1 Select View > Document Types.
fields are empty, and you load a
2 Select Types > New.
sample document from the file
system. 3 In the Create New DocType dialog
box, select the XML document type
category from the list.
Duplicate— The TN XML document 1 Select View > Document Types.
type fields are filled with values from
2 Click the row containing the TN XML
the TN XML document type that you
document type that you want to
duplicate.
duplicate.
You can update any or all fields from
3 Select Types > Duplicate.
the duplicated TN XML document
type.

4 In the Name field, type the name you want to give the TN XML document type. This
field is required.
5 Optionally, type a description for the TN XML document type in the Description field.
6 Click the Identify tab. Perform one or more of the following procedures to specify
information that indicates how Trading Networks is to identify documents. For
details about specifying any of this information, see “Identification Information in TN
XML Document Types” on page 222.

260 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

For this Identify tab


parameter… Use this procedure when not using a sample document

Identifying Queries
1 Click Add an identifying query. Trading Networks
displays the Add an identifying query dialog box.
2 In the Query field, type an XQL query that represents a
node in a document that must exist for this TN XML
document type to be used for a document. For information
about XQL queries, see Appendix E, “XQL Reference”.
3 If you want the TN XML document type to require the
identifying query to evaluate to a specific value, type that
value in the Value field.
4 Click OK.
5 Repeat this procedure for each identifying query that you
want to add.

Note: To delete a query from the TN document type, select the


query row and click Deleting an identifying query.

Type the value of the root tag from within the XML documents
that this TN XML document type is to match.
DOCTYPE Identifier Type the value of the system identifier or public identifier
from the document type declaration (DOCTYPE) within the
XML documents that this TN XML document type is to match.
Pipeline Matching
1 Click Add New Pipeline Match.
2 Specify the following values in the Add Pipeline Matching
dialog box.
 Name. Name of the pipeline matching variable.
 Value. The value of the pipeline matching variable. This
field is optional. If you specify both the Name and the
Value of the pipeline matching variable, Trading
Networks checks to see that both exist in the pipeline.
If you specify only the Name and no Value, then Trading
Networks checks to see if the Name exists.
3 Click OK. Trading Networks adds the pipeline matching
variable to the list.
4 Repeat this procedure for each pipeline matching variable
that you want to add.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 261
13 Defining and Managing TN XML Document Types

Important! You must supply at least one criterion that Trading Networks is to use to
recognize an XML document; that is, you must supply at least one identifying
query, a value for the Root Tag field, a value for the DOCTYPE Identifier field, or a
pipeline matching variable.

5 Click the Extract tab. Perform the following procedure for each attribute that you want
Trading Networks to extract from documents identified by this TN XML document
type. For details about what to specify for these fields, see “Extraction Information In
TN XML Document Types” on page 226.

a Click Add an attribute. Trading Networks displays the Add an attribute dialog
box.
b In the Name field, select the name of the attribute from the list. Trading Networks
fills in the Type and Description fields based on the document attribute definition.
c If you want Trading Networks to flag an error if it encounters an error attempting
to extract this document attribute, select the Required check box. For more
information, see “Indicating that Attributes are Required in TN XML Document
Types” on page 228.
d In the Query field, type an XQL query that identifies the location of the attribute
within an XML document. For information about XQL queries, see Appendix E,
“XQL Reference”.
e If necessary, use the Transformation option to specify how Trading Networks is to
handle attribute data before storing it in the Trading Networks database. The data
type of the attribute (shown in the Type field) determines the Built-in or Custom
transformation options available. For more information, see “Transformation
Information for Extracted Attributes of TN Document Types” on page 229.

Important! If you do not extract the system attributes, Trading Networks does
not have this information available for processing rules or querying
documents.

262 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

1 Built-in. Select an existing built-in transformation provided by Trading


Networks.

If the attribute data


type is… For Transformation…

Is SenderID or You must specify an external ID type. For more


ReceiverID information, see “Specifying Built-In Transformation
Information for SenderID and ReceiverID” on
page 230.
Has DATETIMEor You must specify a date format. Select one from the
DATETIME LIST seven different built-in formats or type in your own.
data type For more information, see “Specifying Built-In
Transformation Information for Attributes with the
DATETIME and DATETIME LIST Data Type” on
page 231.
Has STRING or You can specify whether you want Trading Networks
STRING LIST data to alter the string value before storing it to UPPERCASE
type (but not or LOWERCASE. For more information, see “Specifying
SenderID or Built-In Transformation Information for Attributes
ReceiverID) with the STRING or STRING LIST Data Type” on
page 231.
Has NUMBER data You should specify the operation that Trading
type and the XQL Networks should perform on the numbers in the array.
query identifies an For more information, see “Specifying Built-In
array of numbers Transformation Information for Attributes with the
NUMBER Data Type” on page 233.

2 Custom. Select or create your own service to perform custom transformations


on extracted attributes. For more information, see “Specifying a Custom
Transformation Service” on page 234.

To do this… Perform this…


Create a new custom
transformation Click New Service.

Select an existing custom


transformation service Click Find Service to browse the IS namespace
to locate the one you want to use.
Set the inputs of the Click Set Inputs.
transformation from the
selected service
Edit an existing service Click on the Edit Service button.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 263
13 Defining and Managing TN XML Document Types

Important! If you do not extract the system attributes, Trading Networks does
not have this information available for processing rules or querying
documents.

Note: To delete an attribute from the TN document type, select the attribute
query and then click Delete an attribute.

6 To define namespace mappings, click the Namespaces tab. Perform the following for
each namespace mapping you want to add to the table. For more information about
namespaces, see “Namespace Mappings in TN XML Document Types” on page 236.

a In the Namespace Mappings section of the screen on the right, click Add a
namespace mapping. Trading Networks adds a row to the namespace mappings
table.
b In the Namespace Prefix column, type the prefix for the namespace. If you are
adding a mapping for the default namespace, specify prefix0.
c In the URI Mapping column, type the URI for the namespace.

Note:
 To delete a namespace mapping from the TN document type, select the
row for the namespace and click Delete selected namespace mapping.
 To edit a namespace mapping, type over the existing information.

7 Click the Options tab and fill in the fields. For details about these fields, see “Options
in TN XML Document Types” on page 240. For information about pre-processing
actions, see “Specifying Pre-Processing Actions for TN XML Document Type” on
page 242.

264 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

For this Options tab


parameter… Specify…

Format an IS The fully-qualified name of the IS document type. To search


document type
for an IS document type, click Find IS document type to
browse IS document types. For more information, see
“Specifying an IS Document Type for TN XML Document
Types” on page 241.
Schema to validate The fully-qualified name of the IS schema. To search for an IS
against
schema, click Find schema to browse IS schemas. For more
information, see “Specifying an IS Schema for TN XML
Document Types” on page 241.

Note: When you select a IS schema, Trading Networks


automatically sets the Validate Structure fields to indicate that
you want to validate the structure of the document.

Processing Rule Whether you want Trading Networks to search for a


Routing processing rule and process the document based on the
processing rule; select either Enable routing or Do not enable
routing. For more information, see “Disabling Processing Rule
Routing” on page 242.
Verify Digital Whether you want Trading Networks to verify a document’s
Signature digital signature; select either Verify digital signature or Do not
pre-processing verify digital signature. Trading Networks performs this
action pre-processing action before it performs the processing actions
defined by the processing rule. For more information about
this pre-processing action, see “Verifying the Digital Signature
of an XML Document” on page 242.
Validate Structure Whether you want Trading Networks to validate the
pre-processing document’s structure; select either Validate structure or Do not
action validate structure. If you select to validate, Trading Networks
validates the structure of the XML document against the IS
schema you specified in the Schema to validate again option.
Trading Networks performs this pre-processing action before
it performs the processing actions defined by the processing
rule. For more information about this pre-processing action,
see “Validating the Structure of an XML Document” on
page 243.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 265
13 Defining and Managing TN XML Document Types

For this Options tab


parameter… Specify…

Check for Duplicate Whether you want Trading Networks to determine whether it
Document has already received the document. Select one of the
pre-processing following:
action
 Use built-in service to check for duplicate document
 Use custom service to check for duplicate document. To create a
new service, click New Service. To select an existing
service, click Find Service.
Note: There could be performance issues if you choose to
use custom services for duplicate checking based on the
logic in the service you select.
For more information about how to create a custom
duplicate checking service, see, “Creating a Duplicate
Document Check Service” on page 333.
 Do not check for duplicate document
Trading Networks performs this pre-processing action before
it performs the processing actions defined by the processing
rule.
For more information about this pre-processing action, see
“Checking for Duplicate of the XML Document” on page 244.
Save Document to Whether you want Trading Networks to save the document to
Database the database; select Save all documents, Save only unique
preprocessing documents, or Do not save. Trading Networks performs this
action pre-processing action before it performs the processing actions
defined by the processing rule.
If you select to save documents to the database, select from the
list whether you want Trading Networks the document’s
content, attributes, and/or activity log information to the
database.
For more information about this pre-processing action, see
“Saving an XML Document to the Database” on page 245
If you do not select to save the document content and Trading
Networks is to use a delivery option that requires document
content to be saved (e.g., if you want to deliver a document via
a queue), Trading Networks will bypass reliable delivery and
invoke the specified delivery service once.

266 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

Important! Keep in mind the pre-processing actions specified in the processing


rules can override pre-processing actions specified in a TN document type. For
more information, see “Pre-Processing Actions” on page 331.

8 Click OK to create the TN XML document type.

Managing TN XML Document Types


The following table describes the tasks you can perform against TN XML document
types:

Task See page...


“Viewing TN XML Document Types” 267
“Updating TN XML Document Types” 268
“Using a Sample Document when Updating a TN XML Document 268
Type”
“Updating a TN XML Document Type without a Sample Document” 273
“Disabling TN XML Document Types” 276
“Enabling TN XML Document Types” 277
“Testing TN XML Document Types” 277

Viewing TN XML Document Types


You can view TN XML document types using the Document Types screen. By default,
Trading Networks does not display disabled TN document types. However, you can
update the display of TN document types to include disabled TN document types.

To view TN XML document type

1 In Trading Networks Console: View > Document Types.


Trading Networks displays both the TN XML document types and TN flat file
document types.
2 To view disabled TN document types, select Types > Show All. Trading Networks
places a check () next to the Show All menu item to indicate that Trading Networks is
currently displaying disabled TN document types.
3 To hide disabled TN document types, select Types > Show All again. Trading Networks
removes the check () next to the Show All menu item to indicate that Trading
Networks is currently not displaying disabled TN document types.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 267
13 Defining and Managing TN XML Document Types

Updating TN XML Document Types


As when you define TN XML document types, the procedures you use to update a
document differ based on whether you have a sample document available when you
create the TN document type.

Using a Sample Document when Updating a TN XML Document Type


To update a TN XML document type when you have a sample document available,
perform the following procedure.

To update a TN XML document type when a sample document is available

1 In Trading Networks Console: View > Document Types.


Trading Networks displays both the TN XML document types and TN flat file
document types.
2 Click the row containing information about the TN XML document type that you
want to update. Trading Networks displays the Document Type Details dialog for the
selected TN XML document type.
3 Select Types > Edit.
4 To update the description, type a new description in the Description field.
5 Perform the following to load the sample document:
a Click the Identify tab.

b Click Select Sample Document.


c In the Select File dialog box, browse your file system to locate the XML document
that you want to use as a sample, and click Open.
For a summary of actions you can take against a sample document, see “Working
with a Sample Document” on page 256.
6 To update identification information, click the Identify tab. For details about specifying
any of this information, see “Identification Information in TN XML Document Types”
on page 222.

Important! The TN XML document type must include at least one criterion that
Trading Networks can use to recognize a document; that is, at least one
identifying query, a value for the Root Tag field, a value for the DOCTYPE Identifier
field, or a pipeline matching variable.

268 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

To update this
Identify tab
parameter … Use these procedures when you have a sample document loaded…

Identifying Queries  To add an identifying query—In the sample document, select


the node that you want the identifying query to represent.
Right click and select Add an identifying query. Trading
Networks opens the Add an identifying query dialog box
and populates the Query field with the XQL query for the
selected node.

Note: This “filled in” query is for a specific node in the XML
document. This node is applicable for DATETIME, STRING, or
NUMBER data types. But, if you want to use DATETIME LIST,
STRING LIST, NUMBER (with Average, Minimum, Maximum, and
Sum), or NUMBERLIST data types, you need to update the query
so that it identifies an array of values.

If you want the TN document type to require the


identifying query to evaluate to a specific value, assure
that value is in the Value field; otherwise, clear the Value
field. Click OK to close the Add an identifying query dialog
box.
For information about XQL queries, see Appendix E, “XQL
Reference”
 To update an identifying query—In the sample document,
select the node that you want the identifying query to
represent. Right click and select Edit selected identifying
query. Trading Networks opens the Edit selected
identifying query dialog box and updates the Query field
with the XQL query for the selected node and the Value
field with the XQL query’s value. Click OK to close the Edit
selected identifying query dialog box.
 To delete an identifying query from the TN document type—Select
p
the row for the identifying query and click Delete
selected identifying query
Root Tag  To update the Root Tag field with the value from the sample
document, click the Set button next to the Root Tag field.
 To remove the value from the Root Tag field, clear the Root Tag
field.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 269
13 Defining and Managing TN XML Document Types

To update this
Identify tab
parameter … Use these procedures when you have a sample document loaded…

DOCTYPE Identifier  To update the DOCTYPE Identifier field with the value from the
sample document, click the Set button next to the DOCTYPE
Identifier field.
 To remove the value from the DOCTYPE Identifier field, clear the
DOCTYPE Identifier field.
Pipeline Matching
 To add a pipeline matching variable—Click Add New Pipeline
Match. In the Add Pipeline Matching dialog box, specify the
Name and optionally, the Value for the pipeline matching
variable. Click OK to save the variable and close the dialog
box.
 To update a pipeline matching variable, click the row
containing the pipeline matching variable you want to
update and click Edit Selected Pipeline Match. In the
Update Pipeline Matching dialog box, update the Name
and Value fields for that variable. Click OK to save your
updates and close the Update Pipeline Matching dialog
box.
 To delete a pipeline matching variable, click the row containing
the pipeline matching variable you want to delete and click
Remove Selected Pipeline Match.

7 To update extraction information, click the Extract tab. For information about how to
specify information on this tab, see “Extraction Information In TN XML Document
Types” on page 226.
 To add an attribute—In the sample document, select the node that represents the
attribute that you want Trading Networks to extract. Right click and select Add an
attribute. Trading Networks opens the Add an attribute dialog box and populates
the Query field with the XQL query for the selected node.

Note: This “filled in” query is for a specific node in the XML document. This
node is applicable for DATETIME, STRING, or NUMBER data types. But, if you
want to use DATETIME LIST, STRING LIST, NUMBER (with Average, Minimum,
Maximum, and Sum), or NUMBERLIST data types, you need to update the query
so that it identifies an array of values.

270 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

Fill in the rest of the Add an attribute dialog box by performing the following:

a In the Name field, select the name of the attribute from the list.
b If you want Trading Networks to flag an error if it encounters an error
attempting to extract this document attribute, select the Required check box.
For more information, see “Indicating that Attributes are Required in TN
XML Document Types” on page 228.
c If necessary, use the Transformation option to specify how Trading Networks
is to handle attribute data before storing it in the Trading Networks
database.
d The data type of the attribute (shown in the Type field) determines the Built-
in or Custom transformation options available.

Important! If you do not extract the system attributes, Trading Networks does
not have this information available for processing rules or querying
documents.

 Built-in transformation. Select an existing built-in transformation provided by


Trading Networks:

If the attribute data


type is… For Transformation…

Is SenderID or You must specify an external ID type. For more


ReceiverID information, see “Specifying Built-In Transformation
Information for SenderID and ReceiverID” on
page 230.
Has DATETIMEor You must specify a date format. Select one from the
DATETIME LIST data seven different built-in formats or type in your own.
type For more information, see “Specifying Built-In
Transformation Information for Attributes with the
DATETIME and DATETIME LIST Data Type” on
page 231.
Has STRING or You can specify whether you want Trading Networks
STRING LIST data to alter the string value before storing it to UPPERCASE
type (but not or LOWERCASE. For more information, see “Specifying
SenderID or Built-In Transformation Information for Attributes
ReceiverID) with the STRING or STRING LIST Data Type” on
page 231.
Has NUMBER data You should specify the operation that Trading
type and the XQL Networks should perform on the numbers in the
query identifies an array. For more information, see “Specifying Built-In
array of numbers Transformation Information for Attributes with the
NUMBER Data Type” on page 233.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 271
13 Defining and Managing TN XML Document Types

 Custom transformation. Select or create your own service to perform custom


transformations on extracted attributes. For more information, see “Specifying
a Custom Transformation Service” on page 234.

To do this… Perform this…

Create a new custom


transformation Click New Service.

Select an existing custom


transformation service Click Find Service to browse the IS
namespace to locate the one you want to use.
Set the inputs of the Click Set Inputs.
transformation from the
selected service
Edit an existing service Click on the Edit Service button.

e Click OK to close the Add an attribute dialog box.


 To update information for an existing attribute—In the sample document, select the
node that represents the attribute that you want Trading Networks to extract.
Right click and select Edit Attribute. Trading Networks opens the Edit Attribute
dialog box and updates the Query field with the XQL query for the selected node.
For information about what you can specify, see above for the description for
adding an attribute. Click OK to close the Edit Attribute dialog box.
 To delete an attribute from the TN document type—Select the row for the attribute and
click Delete selected attribute.
8 To update namespace mappings, click the Namespaces tab. For information about
namespaces, see “Namespace Mappings in TN XML Document Types” on page 236.
 To replace existing namespace mappings with namespace information from the sample
document—Click Set. Trading Networks deletes the existing namespace mappings
(if any) and populates the namespace mappings table with the namespace
information from all xmlns attributes in the sample document.
 To append namespace information from the sample document to the existing namespace
mappings—Click Append. Trading Networks adds the namespace information from
all xmlns attributes in the sample document to the namespace mappings table.
 To update a namespace mapping—Type over the existing information in the
namespace mappings table.
 To delete a namespace mapping—Select the row for the namespace mapping and
click Delete selected namespace mapping.
9 To update options, click the Options tab. For information about how to specify
information on this tab, see step 7 on page 254.
10 After you have made all your changes, click OK. Trading Networks closes the screen.

272 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

Updating a TN XML Document Type without a Sample Document


To update a TN XML document type when you do not have a sample document available,
perform the following procedure.

To update a TN XML document type without a sample document

1 In Trading Networks Console: View > Document Types.


Trading Networks displays both the TN XML document types and TN flat file
document types.
2 Click the row containing information about the TN XML document type that you
want to update.
3 Select Types > Edit.
4 To update the description, type a new description in the Description field.
5 To update identification information, click the Identify tab. For details about specifying
any of this information, see “Identification Information in TN XML Document Types”
on page 222.

Important! The TN document type must include at least one criterion that Trading
Networks is to use to recognize an XML document; that is, at least one identifying
query, a value for the Root Tag field, a value for the DOCTYPE Identifier field, or a
pipeline matching variable.

To update this Identify


tab parameter … Use these procedures when you do not have a sample document…

Identifying Queries
 To add an identifying query—Click . Trading Networks
displays the Add an identifying query dialog box. In
the Query field, type an XQL query that represents a
node in a document that must exist for this TN
document type to be used for a document.
Note: This “filled in” query is for a specific node in the
XML document. This node is applicable for DATETIME,
STRING, or NUMBER data types. But, if you want to use
DATETIME LIST, STRING LIST, NUMBER (with Average,
Minimum, Maximum, and Sum), or NUMBERLIST data
types, you need to update the query so that it identifies
an array of values.
If you want the TN document type to require that the
identifying query evaluate to a specific value, type that
value in the Value field. Click OK to close the Add an
identifying query dialog box.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 273
13 Defining and Managing TN XML Document Types

To update this Identify


tab parameter … Use these procedures when you do not have a sample document…

For information about XQL queries, see Appendix E,


“XQL Reference”.
 To update information for an existing identifying query—
Select the row for the identifying query and click
Edit selected identifying query. Trading Networks displays
the Edit selected identifying query dialog box. Update
the Query and/or Value fields. Click OK to close the Edit
selected identifying query dialog box.
 To delete an identifying query from the TN document type—
Select the row for the identifying query and click
Delete selected identifying query.
Root Tag  To update the Root Tag field, type the value of the root tag
from within the XML documents that this TN
document type is to match.
 To remove the value from the Root Tag field, clear the Root
Tag field.
DOCTYPE Identifier  To update the DOCTYPE Identifier field, click the Set button
next to the DOCTYPE identifier field.
 To remove the value from the DOCTYPE Identifier field, clear
the DOCTYPE Identifier field.
Pipeline Matching
 To add a pipeline matching variable—Click Add New
Pipeline Match. In the Add Pipeline Matching dialog
box, specify the Name and optionally, the Value for the
pipeline matching variable. Click OK to save the
variable and close the dialog box.
 To update a pipeline matching variable—Click the row
containing the pipeline matching variable you want to
update and click Edit Selected Pipeline Match. In the
Update Pipeline Matching dialog box, update the Name
and optionally, the Value fields for that variable. Click
OK to save your updates and close the Update Selected
Pipeline Match dialog box.
 To delete a pipeline matching variable—Click the row
containing the pipeline matching variable you want to
delete and click Remove Selected Pipeline Match.

274 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

6 To update extraction information, click the Extract tab. For information about how to
specify information on this tab, see “Extraction Information In TN XML Document
Types” on page 226.

 To add an attribute—Click . Trading Networks displays the Add an attribute


dialog box. Fill in the Add an attribute dialog box by performing the following:
1 In the Name field, select the name of the attribute from the list.
2 To update the description, type a description in the Description field.
3 If you want Trading Networks to flag an error if it encounters an error
attempting to extract this document attribute, select the Required check box.
For more information, see “Indicating that Attributes are Required in TN
XML Document Types” on page 228.
4 In the Query field, type an XQL query that identifies the location of the
attribute within an XML document. For information about XQL queries, see
Appendix E, “XQL Reference”.
5 If necessary, use the Detail field to specify how Trading Networks is to handle
attribute data before storing it in the Trading Networks database.
.

If the attribute… For Detail, specify…

Is SenderID or You must specify an external ID type. For more


ReceiverID information, see “Specifying Built-In Transformation
Information for SenderID and ReceiverID” on
page 230.
Has DATETIME data You must specify a date format. Select one from the
type seven different built-in formats or type in your own.
For more information, see “Specifying Built-In
Transformation Information for Attributes with the
DATETIME and DATETIME LIST Data Type” on
page 231.
Has STRING data You can specify whether you want Trading Networks
type (but not to alter the string value before storing it. For more
SenderID or information, see “Specifying Built-In Transformation
ReceiverID) Information for Attributes with the STRING or
STRING LIST Data Type” on page 231.
Has NUMBER and You should specify the operation that Trading
the XQL query Networks should perform on the numbers in the array.
identifies an array of For more information, see “Specifying Built-In
numbers Transformation Information for Attributes with the
NUMBER Data Type” on page 233.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 275
13 Defining and Managing TN XML Document Types

6 Click OK to close the Add an attribute dialog box.


 To update information for an existing attribute—Select the row for the attribute and
click Edit selected attribute. Trading Networks displays the Edit Attribute dialog
box. Update the fields to make the changes you want. For information about what
you can specify, see above for the description for adding an attribute. Click OK to
close the Edit Attribute dialog box.
 To delete an attribute from the TN document type—Select the row for the attribute and
click Delete selected attribute.
7 To update namespace mappings, click the Namespaces tab. For information about
namespaces, see “Namespace Mappings in TN XML Document Types” on page 236.

 To add a namespace mapping—Click . Trading Networks adds a row to the


namespace mappings table.

In this column... Specify

Namespace Prefix The prefix for the namespace. If you are adding a mapping
for the default namespace, specify prefix0.
URI Mapping The URI for the namespace.

 To update a namespace mapping—Type over the existing information in the


namespace mappings table.
 To delete a namespace mapping—Select the row for the namespace mapping and
click Delete selected namespace mapping.
8 To update options, click the Options tab. For information about how to specify
information on this tab, see step 7 on page 254.
9 After you have made all your changes, click OK. Trading Networks closes the screen.

Disabling TN XML Document Types


If you are not using a TN XML document type and no longer want Trading Networks to
use it to recognize documents, you can disable it. When you disable a TN XML document
type, the definition for the TN document type is not removed from the database. Later, if
you decide that you need the TN document type, you can enable it. See “Enabling TN
XML Document Types” on page 277.

Note: To permanently remove the TN document type from the database, your
database administrator must remove it. When you remove a TN document type from
the database, you must also remove all documents that are associated with the TN
document type.

276 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

To disable a TN XML document type

1 In Trading Networks Console: View > Document Types.


2 Click the row containing information about the TN XML document type that you
want to update.
3 Select Types > Disable. Trading Networks places No in the Enabled column to indicate
that the TN XML document type is disabled.

Note: To view the Enabled column (if it is not currently displayed), select Document
Types > Show All.

Enabling TN XML Document Types


If you disable a TN XML document type and then later determine that you still need it,
you can enable it and make it available again.

Important! To enable TN document types, you must first display inactive TN document
types as described in “Viewing TN XML Document Types” on page 267.

To enable a TN XML document type

1 In Trading Networks Console: View > Document Types.


2 Click the row containing information about the TN XML document type that you
want to update.
3 Select Types > Enable. Trading Networks places Yes in the Enabled column to indicate
that the TN XML document type is enabled

Testing TN XML Document Types


You can test your TN XML document types to determine the TN document types that
match a specified document. If you have samples of all the types of documents that your
Trading Networks system will process, you can test each to determine whether your
Trading Networks system will receive:
 Documents that match exactly one defined TN XML document type. In this situation, the TN
XML document types are set up correctly for this type of document.
 Documents that do not match any of your defined XML TN XML document types. This type of
document would be an unknown TN document type if processed by your system. If
your testing finds a document that does not match any defined TN XML document
type, you should add a TN XML document type to identify the document or update
an existing TN document type to identify the document.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 277
13 Defining and Managing TN XML Document Types

 Documents that match more than one defined TN XML document type. This type of document
would be an unknown TN document type because Trading Networks cannot
determine which of the matching TN XML document types to use. If your testing
finds a document that matches multiple TN document types (also called an ambiguous
document), you should update TN document types so that the document matches
exactly one TN XML document type.
To test the TN XML document types, you must have sample documents available in your
file system. To perform a test, you select the sample document. Trading Networks uses
the identification information in all TN XML document types to determine all TN
document types that match the specified document. Trading Networks highlights all
matching TN XML document types on the Document Types screen.
Note that Trading Networks does not test the sample document against disabled TN
document types. This means the Trading Networks does not highlight the disabled TN
document types that the document would match.

Important! During the test, Trading Networks does not actually process the document.
That is, Trading Networks does not perform any pre-processing or processing actions
on the document.

Perform the following procedure to test your TN XML document types for a specified
document.

To test TN XML document types

1 In Trading Networks Console: View > Document Types.


2 Select Types > Test. Trading Networks displays the Select Input Document dialog box.
3 From the Select Input Document dialog box, select the sample document you want to
use for the test and click Open.
Trading Networks highlights all the TN document types that the sample document
matches and displays a message informing you whether the document matched a
single TN XML document type, multiple TN document types, or no TN document
types.

Submitting XML Documents to Trading Networks


You can submit XML documents to Trading Networks using My webMethods. To submit
the document, you can either copy the file contents or upload the file to Trading
Networks.
You must be granted the general functional permission to be able to submit documents to
Trading Networks. For information about this permission, see “Data and Actions
Governed by General Functional Permissions” on page 66.

278 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
13 Defining and Managing TN XML Document Types

To submit XML documents to Trading Networks

1 In My webMethods: Administration > Integration > B2B Settings > Submit Documents.
2 In the Submit Method field, select one of the following options based on how you want
to submit the document.
 Select Copy text to copy the file contents.
 Select Upload file to upload the file.

Note: When you select the Upload file option, Trading Networks automatically
refreshes the page to display a corresponding field FileName. See step 4.

3 In the PRT Ignore Document list, select one of the following:


 True. Trading Networks does not route the submitted document to webMethods
Process Engine. Select this option if the WmPRT package is not installed.
 False. Trading Networks routes the submitted document to webMethods Process
Engine. Select this option if the WmPRT package is installed.
4 Based on the method you chose to submit the document in the Submit Method field, do
the following:
 If you selected Copy text, then in the Document Content field, copy the XML file
contents.
 If you selected Upload file, then in the FileName field, type the path of the file or click
Browse and select the file.
5 Click Submit to submit the XML file to Trading Networks.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 279
13 Defining and Managing TN XML Document Types

280 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
14 Defining and Managing TN Flat File Document Types

 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
 Defining Document Gateway Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
 TN Flat File Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292
 Defining TN Flat File Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
 Managing TN Flat File Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 281
14 Defining and Managing TN Flat File Document Types

Overview
Flat file documents present data in a record-based storage format. Unlike XML files, flat
files do not have structural information embedded within the data. Trading Networks’
definition of a flat file is any file or document with a format that is non-describing, that is,
a document that does not contain metadata. In other words, flat file data is externalized
as a set of records (a list of records containing fields and composites) without any
structural information.
Because the records are not structured in a flat file document, the application receiving
the flat file must have knowledge of the flat file’s structure to read its content. To provide
this structural knowledge, you create a document gateway service and a corresponding
TN flat file document type for each type of document you expect to receive.
A document gateway service is the entry point for flat files into Trading Networks. It is a
Java or flow service that you create to provide information to Trading Networks about a
flat file. To provide this information, your service defines values in a pipeline variable
named TN_parms. The service should define values for:
 System attributes, for example SenderID and ReceiverID in the TN_parms/SenderID
and TN_parms/ReceiverID, respectively.
 Optional system variables, for example variables that specify the content type and
content encoding you want Trading Networks to use for the document.
 Custom attributes (the document data).
After supplying the values needed in the TN_parms pipeline variable, the gateway service
passes control to Trading Networks for processing. Trading Networks will retrieve the
flat file information from the TN_parms pipeline variable.
In addition to creating a document gateway service, you define a corresponding TN flat
file document type that Trading Networks will use when it receives the document from the
gateway service. In a TN flat file document type you specify:
 Values of variables within the TN_parms pipeline variable that Trading Networks uses
to match the document type to the incoming flat file document. For example, you
might define the document type to match when the TN_parms/Department variable has
a value of Billing and the TN_parms/Service_code variable has a value of XYZ.
 The system and custom attribute values to extract. You can only extract values for the
attributes that the gateway service has placed in the TN_parms pipeline variable. In
addition, you can transform certain types of attribute data before Trading Networks
stores it in the database, using built-in or custom transformations.
 Whether you want Trading Networks to process the documents that match the TN
document type using a processing rule or want to prevent Trading Networks from
performing processing rule actions.
 Whether to perform pre-processing actions (such as validating the data structure and
checking for duplicate documents) before executing a processing rule.

282 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
14 Defining and Managing TN Flat File Document Types

Run-Time Processing of Flat File Documents


Trading Networks processes a flat file document as follows.
1 Your trading partner’s client application invokes a specific document gateway
service, sending the flat file document to the service as an input stream.
2 The document gateway service places information about the flat file into the
TN_parms pipeline variable, and then passes control to Trading Networks for further
processing.
3 Trading Networks tries to identify the type of the document.
To do this, it examines the contents of the pipeline variable TN_parms, and searches
the pipeline matching key/value pairs in all your enabled TN flat file document types,
trying to find a matching document type for the document.
For example, suppose you defined a document type named Acme_XYZ_Invoices to
receive all documents from Acme’s Billing department with the service code XYZ.
You would have defined the following pipeline matching criteria:

Key Value

Department Billing
Service_code XYZ

A document would match this TN document type only if the gateway service adds
both of those pipeline variables (within TN_parms) and the variables have the
specified values. (You could have omitted the Service_code value if you wanted to
receive Billing department documents with any service code.)

Tip! Rather than having Trading Networks search all of your TN flat file document
types to find a match, you can explicitly specify in the gateway service the TN flat
file document type to use for the document. Specifying the document type
eliminates the overhead of that search.

Trading Networks logs a recognition error if any of the following conditions are met:
 The data in the TN_parms pipeline variable does not match the pipeline matching
criteria in any TN flat file document type
 The data in the TN_parms pipeline variable matches the pipeline matching criteria
in multiple TN flat file document types
 The data in the TN_parms pipeline variable explicitly identifies the TN flat file
document type to use, but that TN document type does not exist
4 After finding a single matching TN flat file document type, Trading Networks adds
the extracted attributes to the BizDocEnvelope, which is placed in the pipeline as a
variable named bizdoc. A BizDocEnvelope represents a routable Trading Networks
transaction. It contains the flat file document, and Trading Networks adds additional
information that it uses for routing and processing.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 283
14 Defining and Managing TN Flat File Document Types

5 Trading Networks extracts all system and custom attributes that you defined in the
TN flat file document type. To extract attribute values, Trading Networks looks for
the values within the TN_parms pipeline variable. Trading Networks places the
extracted attribute values into the BizDocEnvelope.
In addition, Trading Networks can transform the extracted attribute values before
storing them into the BizDocEnvelope, using the optional built-in or custom
transformations that you specified.
By default if Trading Networks cannot extract a particular attribute value, it will not
log an error; it completes processing (assuming it finds no errors) and sets the
processing status to DONE.
If you want Trading Networks to log an error when it cannot extract particular
attribute values, you can designate those attributes as being required for extraction. In
this case, Trading Networks completes processing, logs the error to the activity log,
and sets the processing status to DONE W/ERRORS.
Continuing with the example document type Acme_XYZ_Invoices, suppose your
trading network expects to receive a document whose TN_parms will contain the
following attributes:

Attribute Value

TN_parms/SenderID [some value]


TN_parms/ReceiverID [some value]
TN_parms/DocumentID [some value]
TN_parms/Department Billing
TN_parms/Service_code XYZ
TN_parms/Invoice_number 123
TN_parms/Amount 1000.00

You can extract any of these attributes. SenderID and ReceiverID are system
attributes that Trading Networks always requires in TN_parms, and always extracts.
Extracting all other system attributes, such as DocumentID, is optional. You extract
system attribute values if you want to use them as criteria for determining the
processing rule to use for a document, transaction analysis, process management, and
more. You can extract document data to perform any processing you want, such as
calculations.
6 Trading Networks does one of the following based on whether processing rule
routing is enabled or disabled:
 If the TN flat file document type indicates that processing rule routing is disabled, Trading
Networks performs the pre-processing actions defined by the TN document type;
it then ends its processing. Trading Networks does not search for a processing
rule, nor does it perform any processing rule actions.

284 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
14 Defining and Managing TN Flat File Document Types

If the TN flat file document type indicated that the ConversationID system
attribute be set for the document and TN_parms contains the value for the
ConversationID attribute, Trading Networks passes the document to the Process
Engine, which in turn will determine the process model to use to process the
document.
 If the TN flat file document type indicates that processing rule routing is enabled, Trading
Networks performs a processing rule lookup to determine the processing rule to
use for the incoming flat file document. For details, see Chapter 15, “Defining and
Managing Processing Rules”.

Tip! Trading Networks performs a processing rule lookup for each document
to determine the processing rule to use for it. Alternatively, you can explicitly
specify in the gateway service the processing rule to execute for a given TN
document type, thus bypassing the lookup (and its overhead).

After selecting a processing rule for the document:


1 Trading Networks executes the optional pre-processing actions that you might
have specified when you defined the TN flat file document type.
Trading Networks executes these pre-processing actions before it executes the
processing rule that you associate with the document type. These actions,
executed in the following order, include the following:

 Verify the digital signature of a document


 Validate the structure of a document using a flat file schema that you
specified in the document type definition
 Check for duplicate documents; that is, determine whether Trading
Networks has already received the document
 Save a copy of the document content, attributes, and/or log information
to the database

You can also specify this same set of pre-processing actions in the processing
rule that you associate with the TN flat file document type. In the processing
rule, you can specify whether to use the pre-processing actions specified in the
processing rule, or to use the ones specified in the document type. For details,
see “Pre-Processing Actions” on page 331.
2 Trading Networks executes the processing rule actions. For details, see
Chapter 15, “Defining and Managing Processing Rules”.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 285
14 Defining and Managing TN Flat File Document Types

Defining Document Gateway Services


You can create a document gateway service using Java or flow.
The wm.tn.rec:GatewayService specification defines the input and output variables for a
document gateway service. There is only one input variable: ffdata. The trading partner’s
client application invokes a gateway service, passing it the flat file document. The
gateway service receives the flat file document as an input stream in the ffdata pipeline
variable. You must provide your trading partners with the names of the document
gateway services that are appropriate for their particular types of documents.
A document gateway service returns the output variables ffdata (an object) and TN_parms
(an IS document). TN_parms can include:
 The custom attributes that you specify (the document data)
 The Trading Networks system attributes and system variables that you specify.

Note: If new TN document types are created while you have an open My webMethods
session, those TN document types will not be included in My webMethods displays
until you log out then back into My webMethods or until you refresh your cache in
My webMethods. For more information about how to refresh your My webMethods
cache, see information about My webMethods user preferences in Managing B2B
Integrations: webMethods Trading Networks User’s Guide.

Logic to include in a document gateway service

1 Read the input stream.


For details, see “Reading the Input Stream” on page 287. Optionally, you can parse
the input stream and convert it to an IS document. For details, see “Converting a Flat
File Document to an IS Document” on page 288.
2 Use the Trading Networks system attributes and variables (described in “Specifying
the Document Gateway Services Outputs” on page 288) to:
a Explicitly specify the document type to use for processing the document
(optional).
This is an alternative to having Trading Networks search for a matching
document type, thus eliminating the overhead of that search. Use the system
attribute DoctypeID or DoctypeName for this purpose.
b Specify the external ID values (e.g., D-U-N-S numbers) for the sender and receiver
of the documents in the TN_parms/SenderID and TN_parms/ReceiverID pipeline
variables.
c Optionally specify values for the system attributes DocumentID, GroupID,
ConversationID, and/or UserStatus in the TN_parms/DocumentID,
TN_parms/GroupID, TN_parms/ConversationID, and/or TN_parms/UserStatus
pipeline variables, respectively.

286 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
14 Defining and Managing TN Flat File Document Types

d Explicitly specify the processing rule to use for processing the document
(optional).
This is an alternative to having Trading Networks look up the appropriate
processing rule to use, thus eliminating the overhead of that lookup. Use the
system variables TN_parms/processingRuleID and TN_parms/processingRuleName
for this purpose.
e Place the gateway service’s name into the pipeline to enable documents that
invoke this gateway service to be resubmitted if necessary (optional).
Use the system variable TN_parms/$receiveSvc for this purpose.
f Specify the content type and content encoding you want Trading Networks to use
for the document (optional).
This is an alternative to having Trading Networks automatically determine the
content type and content encoding of the document. Use the system variables
TN_parms/$contentType and TN_parms/$contentEncoding for this purpose.
3 Specify all custom attribute values (the document data) that the matching document
type is to extract. Make sure that the name and case you use for the TN_parms
pipeline variable match exactly to the attribute name that is defined in the TN flat file
document type.
4 Invoke either wm.tn:receive or wm.tn.doc.ff:routeFlatFile to pass ffdata and TN_parms to
Trading Networks.

Reading the Input Stream


If your document gateway service is a Java service, use the methods of the
java.io.InputStream class to read bytes from the input stream contained in ffdata. Consult
your Java documentation for descriptions of these methods.

Important! Remember to use InputStream's mark and reset methods so that Trading
Networks will be able to read from the beginning of the stream. If InputStream does not
support marking, ensure that you transform InputStream to support marking.
Otherwise, Trading Networks will lose the bytes read by the gateway service when
attempting to save the document content to the BizDocEnvelope.

If your document gateway service is a flow service, use the services provided in the pub.io
folder in the WmPublic package. The WmPublic package must be enabled to use these
services. For descriptions of the pub.io services, see webMethods Integration Server Built-In
Services.

Determining the Content Type and Content Encoding


If your partners send documents directly to your document gateway service (rather than
through an intervening service) Trading Networks will automatically try to determine
the content type and content encoding of the submitted flat file document.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 287
14 Defining and Managing TN Flat File Document Types

You can provide the content type and content encoding to ensure that Trading Networks
uses the accurate values. To do so, explicitly specify the content type and/or content
encoding in the TN_parms/$contentType and the TN_parms/$contentEncoding variables,
respectively.
For example, if a document with a content type of text/plain and an encoding of SJIS is
submitted to a service and that service passes the document into the pipeline to your
gateway service, the original content type and content encoding will be lost. The pipeline
has a content type of application/x-wmidatabin and a content encoding of UTF8. In this
case, either your gateway service or the service that invoked it, should specify text/plain
for TN_parms/$contentType and SJIS for TN_parms/$contentEncoding.

Converting a Flat File Document to an IS Document


Optionally, you can parse the input stream and convert it to an IS document. Then you
can map information from the converted document to the TN_parms variable.

Important! Perform this action only if absolutely necessary because parsing can be
time-consuming and return very large outputs that consume much memory.

In your document gateway service, invoke pub.flatfile:convertToValues, which is a service in


the WmFlatFile package (see the Flat File Schema Developer’s Guide). This service invokes
the flat file parser to validate the document’s structure and content, based on the flat file
schema that you name as input to the service. Trading Networks can save or throw away
the parsed contents. Alternatively, if you decide you do not need to parse the document
in your gateway service, you can still indicate that you want to parse the document to
validate its structure using the pre-processing option Validate Structure. For details, see
“Validating the Structure of Flat File Documents” on page 302.

Note: Do not convert a document in both the gateway service and the TN document
type. If you convert a document in the gateway service, it will remain in the pipeline.

Specifying the Document Gateway Services Outputs


A document gateway service can return the output variables ffdata (an object) and
TN_parms (an IS document). TN_parms can return:
 The custom attributes that you specify (the document data)
 The Trading Networks system attributes and system variables that you specify, which
are described below

288 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
14 Defining and Managing TN Flat File Document Types

TN_parms variables Description


DoctypeID or String (optional) The Trading Networks-generated internal
DoctypeName identifier or name of the TN flat file document type that you
want Trading Networks to use for the flat file document. This is
an alternative to having Trading Networks search for an
appropriate document type, thus eliminating the overhead of
that search. To determine the document type identifier invoke
the wm.tn.doctype:list service from Developer to return the name
and ID of all your TN document types.
If you use DoctypeName, and that name is changed later, the
gateway service will not function as intended. Since TN
document type IDs cannot be changed, your gateway service
will be both more stable and more efficient if you use DoctypeID
rather than DoctypeName. If you specify both variables,
DoctypeID is used.
Examples:
/TN_parms/DoctypeID = "5066kt00tttva37r00000009"
/TN_parms/DoctypeName = "xCBL_PO"

SenderID String An external ID value specified in the sender’s profile, for


example, the sender’s D-U-N-S number. The TN document type
uses SenderID to verify the sender’s identity. In the TN
document type you must specify the type of the external ID, for
example DUNS.
ReceiverID String An external ID value specified in the receiver’s profile, for
example, the receiver’s D-U-N-S number. The TN document
type uses ReceiverID to verify the receiver’s identity. In the TN
document type you must specify the type of the external ID, for
example DUNS.
DocumentID String (optional) The identifier of the flat file document. Be sure
to specify DocumentID if you want to use the Check for Duplicate
Document pre-processing action, and Trading Networks is to use
the DocumentID to determine whether documents are
duplicates. For details, see “Checking for Duplicates of the Flat
File Document” on page 303.
GroupID String (optional) The identifier in a flat file document that
associates this document with other documents in its group. If
you expect to receive more documents in the same group, be
sure the value you specify for GroupID is reproducible for
future documents that will arrive in the same group.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 289
14 Defining and Managing TN Flat File Document Types

TN_parms variables Description


ConversationID String (optional) The identifier in a flat file document that
associates this document with other documents in the same
business process (i.e., conversation of documents).
Use ConversationID if you want Trading Networks to pass the
document to process management after it executes the
document type’s processing rule. You define the actions taken
against a document during process management by creating a
process model. For more information about creating process
models, see the Getting Started with BPM guide and the
webMethods Designer Online Help.
If you do not want Trading Networks to pass the document to
process management, add a variable to the pipeline called
prtIgnoreDocument with the value of true.
If you expect to receive more documents in the same
conversation, be sure the value you specify for ConversationID is
reproducible for future documents that will arrive in the same
conversation.
UserStatus String (optional) A status that you have associated with the flat
file document. Use UserStatus if you want it to be available so
you can process the document based on the user status. The
user status is a criterion that Trading Networks uses to
determine the processing rule to use for a document. For more
information, see “Processing Rule Criteria” on page 322.
In addition, if you create UserStatus, when searching for
documents in Trading Networks Console, you can refine your
search to documents with specific user statuses.

290 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
14 Defining and Managing TN Flat File Document Types

TN_parms variables Description


processingRuleID or String (optional) The Trading Networks-generated internal
processingRuleName identifier or name of the processing rule that you want Trading
Networks to use for the flat file document. This is an alternative
to having Trading Networks look up the appropriate rule, thus
eliminating the overhead of that lookup. To determine the
identifier, invoke the wm.tn.route:list service from Developer to
return the name and ID of all your processing rules.
If you use processingRuleID and that name is changed, the
gateway service will not function as intended. Processing rule
IDs cannot be changed, so your gateway service will be both
more stable and more efficient if you use processingRuleID
rather than processingRuleName.
If you include values for both processingRuleID and
processingRuleName, Trading Networks only uses the
processingRuleID value.
For more information, see “Bypassing Lookups for Processing
Rules” on page 330.
$receiveSvc String (optional) The fully-qualified name of the document
gateway service you are creating. By saving the name of the
gateway service, you will be able to resubmit the flat file
document if necessary. If $receiveSvc is not set and you resubmit
the document, Trading Networks resubmits the document to
wm.tn:receive, which will not be able to properly recognize the
flat file document. As a result, the sender, receiver, and TN
document type will all be unknown, and the resubmission will
fail.
$contentType and String (optional) The content type and encoding you want
$contentEncoding Trading Networks to use for the flat file document. You can
specify $contentType and/or $contentEncoding. This is an
alternative to having Trading Networks automatically
determine the content type and content encoding of the
submitted flat file document. For more information, see
“Determining the Content Type and Content Encoding” on
page 287.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 291
14 Defining and Managing TN Flat File Document Types

TN Flat File Document Types


After you define a document gateway service, you define a corresponding TN flat file
document type that Trading Networks will use when it receives the document from the
gateway service. In a document type you specify:
 “Pipeline Matching Criteria Used to Identify the TN Document Type” on page 292
 “Attributes To Extract From Documents” on page 293
 “Pre-Processing Actions in the TN Flat File Document Type” on page 302

Pipeline Matching Criteria Used to Identify the TN Document Type


In your TN flat file document type, you specify pipeline matching criteria that Trading
Networks uses to determine whether to use the document type for the incoming flat file
document. The pipeline matching criteria is one or more key/value pairs that identify a
document. Specifying values for the variables is optional. If you specify both a key and a
value, Trading Networks ensures that the variable (key) is in the TN_parms variable and
that it has the value that you specified. If you specify a key without a value, Trading
Networks ensures that the variable (key) is in the TN_parms regardless of its value.
At run time Trading Networks examines the contents of the TN_parms variable that the
gateway service added to the pipeline. Then it searches the key/value pairs specified in
the pipeline matching criteria of all your enabled TN flat file document types, trying to
find a matching document type for the document.

Tip! The gateway service can specify a value for either the TN_parms/DoctypeID or
TN_parms/DoctypeName variable to explicitly specify the document type to use for the
flat file document. Doing so eliminates the overhead of the search that Trading
Networks would have to perform to find the matching TN flat file document type.

For example, suppose you defined a document type named Acme_XYZ_Invoices to


receive all documents from Acme’s Billing department with the service code XYZ. You
would have defined the following criteria:

Key Value

Department Billing
Service_code XYZ

A document would match this document type only if it contains both of those variables
within TN_parms and the variables have those values. (You could have omitted the
Service_code value if you wanted to receive Billing department documents with any
service code.)

292 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
14 Defining and Managing TN Flat File Document Types

Error Conditions When Matching Documents to TN Document Types


Trading Networks logs an error if any of the following conditions are met:
 The data in the TN_parms pipeline variable does not match the pipeline matching
criteria in any document type
—OR—
 The data in the TN_parms pipeline variable explicitly identifies the document type to
use, but that document type does not exist.
In either of these cases, the document is considered to be an unknown type. Because
TN document types indicate the system and custom attributes to extract, Trading
Networks cannot extract any attribute values from the document because the TN
document type is unknown. Trading Networks will still attempt to process
documents with an unknown TN document type by performing the actions identified
in the processing rule that the document triggers. You can define processing rules that
act on documents with an unknown TN document type.
 The data in the TN_parms pipeline variable matches the pipeline matching criteria in
multiple document types.
When this happens, the document is considered to be an unknown type because
Trading Networks does not know which of the matching TN document types to use.
In this situation, Trading Networks logs a message to the activity log that identifies all
the TN document types that the document matched. Because the TN document type
is unknown, Trading Networks does not extract any attribute values. Trading
Networks will still attempt to process documents with an unknown TN document
type by performing the actions identified in the processing rule that the document
triggers. You can define processing rules that act on documents with an unknown TN
document type.

Attributes To Extract From Documents


You specify the attribute values to extract from the document’s TN_parms variable. You
can extract system attributes as well as custom attributes (the document data). In
addition, you can transform extracted attribute values before Trading Networks stores
them in the BizDocEnvelope, using built-in or custom transformations.
Continuing with the example document type Acme_XYZ_Invoices, suppose your trading
network expects to receive a document whose TN_parms will contain the following
attributes:

Attribute Value

TN_parms/SenderID [some value]


TN_parms/ReceiverID [some value]
TN_parms/DocumentID [some value]

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 293
14 Defining and Managing TN Flat File Document Types

Attribute Value

TN_parms/Department Billing
TN_parms/Service_code XYZ
TN_parms/Invoice_number 123
TN_parms/Amount 1000.00

You can extract any of these attributes. Trading Networks always extracts the system
attributes SenderID and ReceiverID. Extracting all other system attributes, such as
DocumentID, is optional. You extract system attribute values if you want to use them as
criteria for determining the processing rule to use for a document, transaction analysis,
process management, and more. You can extract document data to perform any
processing you want, such as calculations. For more information, see “System Attributes
To Extract From Documents” on page 295.

Error Conditions When Extracting Attributes


By default if Trading Networks cannot find a particular attribute for extraction, it will not
log an error; it completes processing (assuming it finds no errors) and sets the processing
status to DONE.
If you want Trading Networks to log an error when it cannot extract particular attribute
values, you can designate those attributes as being required for extraction. In this case,
Trading Networks:
 Completes processing
 Logs an error in the BizDocEnvelope, which is in the bizdoc variable
 Puts the error into the activity log
 Sets the processing status to DONE W/ERRORS.
In this case, you can configure the document type’s processing rule to handle the error as
follows:
 Use the processing rule’s Recognition Errors criterion to trigger a processing rule based
on whether it contains errors. For more information, see “Document Recognition
Errors Criterion” on page 326.
 Use the processing rule’s Execute a service processing action to inspect the bizdoc/Errors
variable for the errors that Trading Networks encountered. When Trading Networks
is unable to extract a required attribute, it records the error in the bizdoc/Errors
variable. This variable is in the pipeline and is available for your use when Trading
Networks is processing the document. For more information about the Execute a
service processing actions, see “Action 1—Execute a Service” on page 334.

294 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
14 Defining and Managing TN Flat File Document Types

System Attributes To Extract From Documents


You can extract any system attribute that the TN document type’s gateway service places
in a document’s TN_parms variable. Trading Networks always extracts SenderID and
ReceiverID from TN_parms. Extracting all other system attributes is optional.
Reasons for extracting system attributes are discussed below. For descriptions of system
attributes, see “Specifying the Document Gateway Services Outputs” on page 288.

SenderID and ReceiverID


Trading Networks always extracts both of these attributes; you cannot delete them. Recall
that the values of SenderID and ReceiverID are external IDs that should be identical to
the external IDs specified in the sender’s and receiver’s profiles. On the Extract panel you
must select from the pull-down list the type of the external IDs (for example, DUNS) for
both attributes so that Trading Networks can match the externals ID in
TN_parms/SenderID and TN_parms/ReceiverID with the external IDs in the profiles. This is
how Trading Networks verifies the identities of the sender and receiver. When Trading
Networks finds a match, it automatically transforms the externals ID in
TN_parms/SenderID and TN_parms/ReceiverID into its internal IDs before storing them in
the BizDocEnvelope.
When Trading Networks has a value for the SenderID and ReceiverID, you can perform
the following tasks.
 Specify the sender and receiver as criteria for determining the processing rule to use
for the flat file document. For more information, see “Processing Rule Criteria” on
page 322.
 Search for the flat file document in My webMethods or the Trading Networks
Console by searching for documents with specific senders and receivers.
 Use the identify of the sender and receiver of the flat file document in the logic of a
business process. For example, you can then set conditions on transitions in process
model, so the business process performs different logic based on the sender and
receiver of a document. For more information about creating process models, see the
Getting Started with BPM guide and the webMethods Designer Online Help.
 Use the Retrieve SenderID from session option as an alternative way to set the value of
the SenderID system attribute. If set, rather than look in TN_parms\SenderID for the
value to use, Trading Networks uses the connected user. That means that when the
client sent the flat file document to Trading Networks, it had to present
credentials—an Integration Server user name and password. That user
name/password pair directly correlates to a Trading Networks partner. Recall that
when you create a profile, there is a required external ID type (for example, DUNS).
When you create a profile, Trading Networks creates a user account on the
Integration Server for that partner. The user name is equal to the required external ID.
So, if the required external ID is DUNS and a profile is added for a partner whose D-
U-N-S number is 123456789, then that partner will have an Integration Server user
account with the user name 123456789. So, when that partner’s client wants to send a
flat file document to Trading Networks, it must present credentials—it supplies user
name 123456789 along with its password. So, if Retrieve SenderID from session is set to

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 295
14 Defining and Managing TN Flat File Document Types

true in a TN flat file document type, Trading Networks would determine the sender
of the document based on the user account 123456789, find the profile (and therefore
the internal ID), and put that value in the BizDocEnvelope.

Important! When you resubmit a flat file document with the Retrieve SenderID from
session option selected, the resubmit might fail. If you set up Sender criteria in a
processing rule, the first time the document arrives, the criteria matches a
processing rule based on the SenderID value 123456789 because that is the value
determined via the Retrieve SenderID from session option.

However, if you resubmit the document, that same processing rule will not be
selected based on the Retrieve SenderID from session option. This is because when
you resubmit the document from the Trading Networks Console, the user is the IS
user account that you used to log in to the Trading Networks Console (e.g.,
Administrator), which will not match sender 123456789 in the Sender criteria of
the processing rule. It could end up matching another processing rule and then go
through completely different processing.

DocumentID
When Trading Networks has a value for DocumentID, you can perform the following
tasks.
 Determine whether the incoming flat file document is a duplicate, by checking the
value of the document ID; that is, determine whether Trading Networks has already
received the document. For details, see “Checking for Duplicates of the Flat File
Document” on page 303.
 Search for the flat file document in My webMethods or the Trading Networks
Console by searching for documents with the specific document ID.

ConversationID
You can use ConversationID to have Trading Networks pass the document to process
management after it performs its own processing (e.g., the actions identified by a
processing rule). You define the actions taken against a document during process
management by creating a process model. For more information about creating process
models, see the Getting Started with BPM guide and the webMethods Designer Online
Help. If you do not want Trading Networks to pass the document to process
management, add a variable to the pipeline called prtIgnoreDocument with the value true.

UserStatus
When Trading Networks has a value for UserStatus, you can perform the following tasks.
 Specify the user status as a criterion for determining the processing rule to use for the
flat file document. For more information, see “Processing Rule Criteria” on page 322.
 Search for the flat file document in My webMethods or the Trading Networks
Console by searching for documents with the specific user status.

296 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
14 Defining and Managing TN Flat File Document Types

GroupID
When Trading Networks has a value for GroupID, you can search for this flat file and all
other flat files that have the same group ID in My webMethods or the Trading Networks
Console.

Transformation Information for Extracted Attributes of TN Flat File Document


Types
You can use built-in or custom transformations to transform the following types of
attribute data before Trading Networks stores it in the BizDocEnvelope:
 “Built-In Transformations for SenderID and ReceiverID” on page 297
 “Built-In Transformations for DATETIME and DATETIME LIST Data Type
Attributes” on page 297
 “Built-In Transformations for STRING or STRING LIST Data Type Attributes” on
page 297
 “Built-In Transformations for NUMBER Data Type Attributes” on page 298
 “Custom Transformation Services” on page 300

Built-In Transformations for SenderID and ReceiverID


On the Extract panel you must select from the pull-down list the type of the external IDs
(for example, DUNS) for both the SenderID and ReceiverID attributes so that Trading
Networks can match the externals ID values in TN_parms/SenderID and
TN_parms/ReceiverID with the external IDs in the profiles. This is how Trading Networks
verifies the identities of the sender and receiver. When Trading Networks finds a match,
it automatically transforms the external IDs in TN_parms/SenderID and
TN_parms/ReceiverID into its internal IDs before storing them in the BizDocEnvelope.

Built-In Transformations for DATETIME and DATETIME LIST Data Type Attributes
If you specify an attribute that has the data type DATETIME or DATETIME LIST, Trading
Networks requires you to identify the date format. Trading Networks maintains a list of
built-in common date/time formats from which you can select. However, if the date/time
format you need to use is not in the list, you can type the format you need.
To specify the date/time format, use a pattern string based on the “Time Format Syntax”
described for the java.text.SimpleDateFormat class. Trading Networks extracts the value
of the date and uses it and the pattern that you specify to decode the value and convert it
to the format that Trading Networks requires to store the date in the BizDocEnvelope.

Built-In Transformations for STRING or STRING LIST Data Type Attributes


For attributes with the data type STRING or STRING LIST, you can specify whether you
want Trading Networks to alter the string value before storing it. You can have Trading
Networks make a simple alteration to change the case of the extracted string values to all
upper- or all lowercase. Alternatively, you can have Trading Networks use the extracted

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 297
14 Defining and Managing TN Flat File Document Types

values as substitutions in a string that you supply. If you do not specify transformation
information for a string attribute, Trading Networks saves the data exactly as it extracted
it.
Following are descriptions of the built-in transformation options for string attributes.

Format Description
Uppercase Stores the extracted string attribute value in all uppercase. For
example, if the extracted attribute value is “Purchase Order”,
Trading Networks stores “PURCHASE ORDER” for the attribute
value.
Lowercase Stores the extracted string attribute in all lowercase. For example, if
the attribute value is “Purchase Order”, Trading Networks stores
“purchase order” for the attribute value.
String Substitutes extracted values with a pattern that you specify. Trading
Substitution Networks uses the java.text.MessageFormat class to perform this
transformation.
For example, suppose your document gateway service extracts the
names of three items in a purchase order and places them into an
attribute named itemName in your TN_parms variable as follows:
/TN_parms/itemName = {“WidgetA”, “WidgetB”, “WidgetC”}

Your TN document type would have to include the following:


itemName STRING LIST

Suppose you want to replace the three names with a single string
that contains the three names. To do this, use this field to specify the
following string substitution pattern for itemName:
“Item Name: {0}, {1}, {2}”

Trading Networks would store the following for the value of


itemName:
Item Name: WidgetA, WidgetB, WidgetC
If you place more arguments in the pattern than values that Trading
Networks extracts, the string that Trading Networks stores for the
attribute will contain the extra arguments (e.g., {2}). If you specify
less arguments in the pattern than values that Trading Networks
extracts, the string that Trading Networks stores for the attribute
will not contain all the extracted values; it will only contain the
values for the number of arguments you specify in the pattern.

Built-In Transformations for NUMBER Data Type Attributes


You can specify an attribute with the NUMBER data type that contains an array of
numbers. You can specify one of the following built-in formats to transform the array of
numbers to a single value for Trading Networks to store:

298 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
14 Defining and Managing TN Flat File Document Types

Format Description
Average Stores the average value of all the numbers in the array. For
example, if the array contains the numbers [2, 3, 4, 5], Trading
Networks stores the value 3.5.
Minimum Stores the smallest number in the array. For example, if the array
contains the numbers [2, 3, 4, 5], Trading Networks stores the
value 2.
Maximum Stores the largest number in the array. For example, if the array
contains the numbers [2, 3, 4, 5], Trading Networks stores the
value 5.
Sum Stores the sum of all the numbers in the array. For example, if the
array contains the numbers [2, 3, 4, 5], Trading Networks stores
the value 14.
No format Stores the first value of the array as the value of the attribute. For
specified example, if the array contains the numbers [2, 3, 4, 5], Trading
Networks stores the value 2.

Note: When Trading Networks extracts a NUMBER or NUMBER LIST from a


document, it uses the number parsing behavior of java.lang.Number. For example, if the
NUMBER or NUMBER LIST contains the value “100zzz”, Trading Networks
interprets the value as “100”, instead of throwing an error as it would if the value
were “zzz100”. To redefine this parsing behavior, you can write a custom attribute
transformation. For more information, see “Custom Transformation Services” on
page 300.

For example, suppose your document gateway service extracts the quantity of each item
of a purchase order, and you want to sum the quantities of all items. Suppose you defined
the following attributes in your TN_parms variable and in your TN document type:

TN_parms attributes TN document type


/TN_parms/itemNumber itemNumber NUMBER
/TN_parms/quantity quantity NUMBER
/TN_parms/totalQuantity totalQuantity NUMBER

summedValue NUMBER LIST

If you select the Sum built-in transformation for totalQuantity, it will sum its value (an of
quantities), and produce a single number. For example, if the value of totalQuantity is the
following array:
/TN_parms/totalQuantity = {2, 3, 4, 5}

then the value of summedValue will be:


/TN_parms/summedValue = 2 + 3 + 4 + 5

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 299
14 Defining and Managing TN Flat File Document Types

and Trading Networks will store the value 14 for totalQuantity.

Custom Transformation Services


Trading Networks allows you to create your own service to perform transformations on
extracted attributes. Base your service on the appropriate specification listed below:

Data type Specification you must use…


DATETIME or The service must implement the input and output variables
DATETIME LIST defined in the wm.tn.rec:DateAttributeTransformService specification.
STRING or The service must implement the input and output variables
STRING LIST defined in the wm.tn.rec:StringAttributeTransformService specification.
NUMBER or The service must implement the input and output variables
NUMBER LIST defined in the wm.tn.rec:NumberAttributeTransformService
specification.

To view these specifications, use webMethods Developer and look in the WmTN
package. For more information, see the webMethods Trading Networks Built-In Services
Reference.
Trading Networks passes the following input variables:

Input Value Meaning

values One or more values for your service to transform.

Note: The values might be null or an empty (zero length) string.


For an array data type (e.g., DATETIME LIST), any element in
the values array can be null or an empty string. Make sure that
your custom transformation service can handle null values or
empty strings.

isArray Whether values contains a single value to transform or multiple


values to transform. isArray will be false if values contains a
single value; otherwise it will be true.
arg Optional arguments that you can define.

300 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
14 Defining and Managing TN Flat File Document Types

Trading Networks expects you to return the transformed values in the following output
variable:

Output Value Meaning

newValues Transformation values of:


 Date List for DATETIME or DATETIME LIST
 String List for STRING or STRING LIST
 Number List for NUMBER or NUMBER LIST.
If the input variable isArray is false, the input variable values will
contain only a single item to transform. Your service should transform
the single item and save just a single item in the output variable
newValues.
If the input variable isArray is true (meaning multiple values), your
service should loop through the items in the values variable and
transform each one. It should store each as an item in the output
variable newValues. For example, if you are transforming string data,
newValues is a Date List of the transformed Strings.

For information about creating a service, see Developing Integration Solutions: webMethods
Developer User’s Guide.

Disabling Processing Rule Routing


You specify whether you want Trading Networks to process documents identified by the
TN flat file document type using actions in a processing rule.
 When processing rule routing is enabled, Trading Networks locates the processing rule to
use for the document and proceeds to perform the pre-processing and processing
actions as defined by that processing rule.
 When processing rule routing is disabled, Trading Networks performs the pre-processing
actions defined by the TN document type; however, it does not search for a
processing rule, nor does it perform any processing rule actions.
If you do not want Trading Networks to perform processing rule actions, disabling
routing can improve performance because Trading Networks will not use processing
time to search for a processing rule.
You might want to disable processing if the document is to be processed as part of a
business process. Even when processing rule routing is disabled, if the TN document
type instructs Trading Networks to set the value of the ConversationID system
attribute, Trading Networks will pass the document to the Process Engine, which in
turn will determine the process model to use to process the document.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 301
14 Defining and Managing TN Flat File Document Types

Pre-Processing Actions in the TN Flat File Document Type


Trading Networks executes pre-processing actions before executing the processing rule
that you associate with the TN flat file document type. All actions are optional. Trading
Networks executes them in the following order:
 “Verifying the Digital Signature of Flat File Documents” on page 302
 “Validating the Structure of Flat File Documents” on page 302
 “Checking for Duplicates of the Flat File Document” on page 303
 “Saving Flat File Documents to the Database” on page 304
These actions are provided as built-in options on the Options tab in the TN document
type’s definition.

Note: Additionally, you can specify this same set of pre-processing actions in a
processing rule. In the processing rule, you can specify whether to use the pre-
processing actions specified in the processing rule, or to use the ones specified in the
document type. This enables you to overwrite the pre-processing actions. For details,
see “Pre-Processing Actions” on page 331.

Verifying the Digital Signature of Flat File Documents


This action assures that the document has arrived unchanged and that the sender is who
it claims to be. To do this, select the Verify Digital Signature option on the Options tab in the
TN document type’s definition and specify the name of your user-defined verification
service. Create this service in any user-defined package, using the inputs and outputs
specified in wm.tn.rec:BizDocVerificationService (described in the webMethods Trading Networks
Built-In Services Reference).
If the digital signature is invalid, Trading Networks:
1 Performs the remainder of the pre-processing actions you specified (if any).
2 Adds the error information to the BizDocEnvelope in the pipeline variable
bizdoc/Errors, which your processing rule can access.
3 Logs the error to the activity log, if you selected the Save Document to Database
pre-processing option and the Activity Log option.
4 Performs the processing actions specified in the processing rule.

Validating the Structure of Flat File Documents


The Validate Structure action invokes the flat file parser to validate the document’s
structure and content against a flat file schema, and converts the flat file document to an
IS document. Then you can map information from the converted document to the
TN_parms variable.

302 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
14 Defining and Managing TN Flat File Document Types

Important! Perform this action only if absolutely necessary because parsing can be
time-consuming and return very large outputs that consume much memory.

Note: Alternatively, you can perform the same validation and conversion in your
document gateway service (see “Converting a Flat File Document to an IS Document”
on page 288). Do not convert a document in both locations. If you convert a document
in the gateway service, it will remain in the pipeline.

To implement this action, use the Options tab in the TN document type’s definition to:
 Select the Validate Structure option.
 Specify the name of the TN document type’s flat file schema in the Parsing schema
option. The Input for Flat File Validation dialog prompts you to select the parsing
settings. Trading Networks will save the parsed contents if you select the keepResults
option. You only need to specify a flat file schema if you want to validate the structure
of the document. (You create flat file schemas in webMethods Developer, as described
in the Flat File Schema Developer’s Guide.)
At run time, the Validate Structure option invokes pub.flatfile:convertToValues, which is a service
in the WmFlatFile package (see the Flat File Schema Developer’s Guide). This service
invokes the flat file parser to validate the document’s structure and content, based on the
flat file schema that you named in the Parsing schema option, and saves the parsed
contents if you selected the keepResults option.
If the document structure is invalid, Trading Networks:
1 Performs the remainder of the pre-processing actions you specified (if any).
2 Adds the error information to the BizDocEnvelope in the pipeline variable
bizdoc/Errors, which your processing rule can access.
3 Logs the error to the activity log, if you selected the Save Document to Database
pre-processing option and the Activity Log option.
4 Performs the processing actions specified in the processing rule.

Checking for Duplicates of the Flat File Document


This action searches the Trading Networks database to determine whether the database
has already received the document.
Trading Networks provides the following Check for Duplicate Document options on the
Options tab in the TN document type’s definition. Alternatively, you can create your own
service to be executed in the document type.
 Document ID only—Trading Networks assures that it does not already have a document
with the same document ID in its database. To check for a duplicate document using
the document ID, you must instruct Trading Networks to extract the DocumentID
system attribute from the document.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 303
14 Defining and Managing TN Flat File Document Types

 Document ID and sender —Trading Networks assures that it does not already have a
document with the same document ID and sender in its database. To check for a
duplicate document using the document ID and sender, you must instruct Trading
Networks to extract the DocumentID and SenderID system attributes from the
document.
 Document ID, sender and receiver—Trading Networks assures that it does not already
have a document with the same document ID, sender, and receiver in its database. To
check for a duplicate document using the document ID, sender, and receiver, you
must instruct Trading Networks to extract the DocumentID, SenderID, and
ReceiverID system attributes from the document.
 Document ID, sender and document type—Trading Networks assures that it does not
already have a document with the same document ID, sender, and TN document type
in its database. To check for a duplicate document using the document ID and sender
you must instruct Trading Networks to extract the DocumentID and SenderID system
attributes from the document.
To create a custom duplicate document check service, see “Creating a Duplicate
Document Check Service” on page 333.

Note: A custom duplicate checking service can affect performance, depending on its
logic.

Trading Networks might be unable to correctly determine whether a document is unique


if:
 Trading Networks previously received a document that it did not save to the
database, and the same document is sent again (see “Saving Flat File Documents to
the Database” on page 304).
 Trading Networks previously received a document and saved it to the database, but
the document gateway service did not supply values in the pipeline for DocumentID,
SenderID, and/or ReceiverID system attributes.
 Trading Networks previously received a document and saved it to the database, but
the document type Extract panel information did not indicate to save the
DocumentID, SenderID, and/or ReceiverID system attributes.
 Trading Networks was unable to match the document to a TN document type.
Trading Networks saves the results of the duplicate check to the pipeline, so you can use
it in the processing rule. Additionally, Trading Networks uses the results of the duplicate
check in the Save Document to Database pre-processing action.

Saving Flat File Documents to the Database


This action saves a copy of all documents or only unique documents to the database.
You must save documents to the database if you want to use reliable delivery or
scheduled delivery to deliver the document. For more information, see “Using Reliable
Delivery with Immediate Delivery Method” on page 346 and “Using Reliable Delivery
with Scheduled Delivery” on page 347.

304 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
14 Defining and Managing TN Flat File Document Types

You can choose to save:


 All documents, regardless of whether they are unique.
 Only unique documents. You must also select the Check for Duplicate Document
pre-processing option (see “Checking for Duplicates of the Flat File Document”). If
you fail to select the Check for Duplicate Document option, Trading Networks considers
the document as having no duplicate and will save the document to the database.
 No documents.
You can save a copy of the document content, attributes, and/or activity log information
to the database. The following table displays the consequences of not saving specific parts
of documents:

If you do not
save this... Then the consequences of not saving are...
Content  If you use the Deliver Document actions, Trading Networks will not
use reliable delivery or scheduled delivery.
 If Trading Networks is to use a delivery option that requires
document content to be saved, Trading Networks will bypass
reliable delivery and invoke the specified delivery service once,
but only if the Trading Networks property tn.task.attempt.notPersisted
is set to true (the default). For more information, see
“tn.task.attempt.notPersisted” on page 489.
 You will not be able to view content when monitoring transactions
using My webMethods or Trading Networks Console.
 You will not be able to resubmit or re-process the document.
Attribute  You will not be able to view custom attributes when monitoring
transactions using My webMethods or Trading Networks Console
(i.e., attributes will contain only information for system
attributes). However, you can still use the processing rules
extended criteria for the document.
 In My webMethods or Trading Networks Console, you will not be
able to search for documents based on the attribute values because
their values were not saved to the database.
 You might get different or unexpected results when you reprocess
a document. Because the attributes are not saved when you
reprocess the document, Trading Networks will not match
processing rules that use extended criteria. Instead, Trading
Networks will match to another processing rule, for example the
default processing rule, and perform the process actions identified
in that matching rule. Trading Networks does not perform
document recognition again and therefore does not re-extract the
attributes.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 305
14 Defining and Managing TN Flat File Document Types

If you do not
save this... Then the consequences of not saving are...
For example, if you use extended criteria to select a processing
rule when the value of the custom attribute Total Amount is
greater than 10000, Trading Networks would not select that
processing rule when reprocessing a document because the value
of the Total Amount attribute would not be available and
therefore would not match the extended criteria.

Note: You can still resubmit a document. When Trading Networks


resubmits a document, it performs document recognition and
therefore extracts the attributes again.

Activity Log  You will not be able to view activity log entries when monitoring
transactions using My webMethods or Trading Networks
Console.
 You will not be able to view the activity log entries when
managing the activity log using My webMethods or Trading
Networks Console.

Note: Trading Networks always saves documents that will be passed on to process
management regardless of the setting of the Save Document to Database pre-processing
option. Trading Networks passes documents on to process management if it extracted
a conversation ID from the document. For more information about process
management, see the Getting Started with BPM guide and the webMethods Designer
Online Help.

306 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
14 Defining and Managing TN Flat File Document Types

Defining TN Flat File Document Types

To define a TN flat file document type

1 In Trading Networks Console, perform one of the following procedures to start a new
TN flat file document type.

Method to start a TN document type Procedure to perform

New— The TN flat file document 1 Select View > Document Types.
type fields are empty.
2 Select Types > New.
3 Select Flat file for the TN document type
category.
4 Click OK.
Duplicate— The TN flat file 1 Select View > Document Types.
document type fields are filled with
2 Click the row containing the TN flat file
values from the TN flat file
document type that you want to
document type that you duplicate.
duplicate.
You can update any or all fields
3 Select Types > Duplicate.
from the duplicated TN flat file
document type.

4 In the Name field (required), type the name you want to give the TN flat file document
type.
5 Optionally, type a description for the TN document type in the Description field.
6 Click the Configure tab.
7 Click the Identify panel to specify the criteria that Trading Networks will use to match
flat file documents to the TN document type. For details about the information you
specify on this panel, see “Pipeline Matching Criteria Used to Identify the TN
Document Type” on page 292.

Note: You must specify at least one attribute; otherwise Trading Networks will not
use the TN document type.

a In the Pipeline Matching section, click Add New Pipeline Match.


b Specify the following values in the Add Pipeline Matching dialog box.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 307
14 Defining and Managing TN Flat File Document Types

Attribute Specify
Name Name of the TN_parms variable.
Value Optional. The value of the TN_parms variable. If you specify a
value, Trading Networks finds a match only if the variable has the
specified value.

c Click OK to save the attribute and close the Add Pipeline Matching dialog box.
8 In the Extract panel, specify the system attributes and document attributes (document
data) that you want Trading Networks to extract from documents. For details about
what to specify for these fields, see “Attributes To Extract From Documents” on
page 293.

Important! If you do not extract the system attributes, Trading Networks will not
have this information available for processing rules or querying documents.

a Add an attribute to extract by clicking Add New Attribute. Trading Networks


displays the Add an attribute dialog box.

Note: Trading Networks always lists SenderID and ReceiverID as attributes to


be extracted. You cannot delete them.

b In the Name field, select the name of the attribute from the list. Trading Networks
fills in the Type field based on the document attribute definition. To view more

details about all of the document attributes, click Document Attributes to view
the Document Attributes screen.
c Select the Required check box if you want Trading Networks to throw an error
when it cannot extract the attribute.

Note: Trading Networks always designates SenderID and ReceiverID as


required.

Note: If you do not mark an attribute as required, Trading Networks does not
flag an error if it is unable to extract the attribute. If Trading Networks
completes processing without encountering any further errors, it sets the
processing status to DONE.

d Use the Retrieve SenderID from session option as an alternative way to set the value
of the SenderID system attribute. If set, rather than look in TN_parms\SenderID
for the value to use, Trading Networks uses the connected user. For more
information, see “System Attributes To Extract From Documents” on page 295.
e Use the Transformation fields to specify how Trading Networks is to handle
attribute data before storing it in the Trading Networks database. The data type of
the attribute (shown in the Type field) determines the Built-in or Custom

308 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
14 Defining and Managing TN Flat File Document Types

transformation options available. For more information, see “Transformation


Information for Extracted Attributes of TN Flat File Document Types” on
page 297.
 Built-in. Select a built-in transformation provided by Trading Networks. Use
the Transform and Argument fields to specify how you want to handle attribute
data before storing it in the Trading Networks database.

If the attribute data type… For Transformation…

Is SenderID or ReceiverID You must select from the pull-down list the type
of the external IDs (for example, DUNS) for both
attributes so that Trading Networks can match
the externals ID in SenderID and ReceiverID with
the external IDs in the profiles. This is how
Trading Networks verifies the identities of the
sender and receiver.
When Trading Networks finds a match, it
automatically transforms the external IDs in
TN_parms/SenderID and TN_parms/ReceiverID
into its internal IDs before storing them in the
BizDocEnvelope.
Has DATETIME or You must specify a date format. Select a built-in
DATETIME LIST data type format or type in your own. For more
information, see “Built-In Transformations for
DATETIME and DATETIME LIST Data Type
Attributes” on page 297.
Has STRING or STRING You can specify whether you want Trading
LIST data type (but not Networks to alter the string value to all
SenderID or ReceiverID) uppercase or all lowercase before storing it.
Alternatively, you can have Trading Networks
use the extracted values as substitutions in a
string that you supply. For more information, see
“Built-In Transformations for STRING or
STRING LIST Data Type Attributes” on page 297.
Has NUMBER or NUMBER You should specify the operation that Trading
LIST data type Networks should perform on the numbers in the
array. For more information, see “Built-In
Transformations for NUMBER Data Type
Attributes” on page 298.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 309
14 Defining and Managing TN Flat File Document Types

 Custom. Select or create your own service to perform custom transformations


on extracted attributes. For more information, see “Custom Transformation
Services” on page 300.

To do this… Perform this…

Create a new custom transformation


Click New Service.
Select an existing custom
transformation service Click Find Service to browse the IS
namespace to locate the one you want
to use.
Set the inputs of the transformation Click Set Inputs.
from the selected service
Edit an existing service Click on the Edit Service button.

f Click OK to save the new attribute and close the Add an attribute dialog box.
Trading Networks returns to the Extract panel of the Document Type Details
screen. Trading Networks displays the name of the extracted attributes and their
built-in or custom transformation services.

Note: To delete an attribute from the TN document type, select the attribute
row and click Delete attribute.
.

9 Click the Options tab and specify any of the options.

Important! Keep in mind that the pre-processing actions specified in the processing
rules can override pre-processing actions specified in a TN document type. For
details, see “Pre-Processing Actions” on page 331.

310 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
14 Defining and Managing TN Flat File Document Types

Options tab
parameter Description

Parsing schema The fully qualified name of a flat file (parsing) schema to use
to validate the structure of the documents. You only need to
specify a flat file schema if you select the Validate Structure pre-
processing option.

If you do not know the fully qualified name, click Find


schema to browse flat file schemas to locate the one you want
to use.
For more information, see “Validating the Structure of Flat File
Documents” on page 302.
Processing Rule Indicates whether you want Trading Networks to search for a
Routing processing rule and process the document based on the
processing rule; select either Enable routing or Do not enable
routing. For more information, see “Disabling Processing Rule
Routing” on page 301.
Verify Digital Executes a user-defined verification service to verify the
Signature digital signature of the documents. Trading Networks executes
pre-processing this pre-processing action before executing the processing rule
action that you associate with the TN document type.
Create the verification service in any user-defined package,
using the inputs and outputs specified in
wm.tn.rec:BizDocVerificationService (described in the webMethods
Trading Networks Built-In Services Reference). For more
information, see “Verifying the Digital Signature of Flat File
Documents” on page 302.
Validate Structure Invokes the flat file parser to validate the document’s structure
pre-processing and content against the flat file schema you specify in the
action Parsing schema option, and converts the flat file document to an
IS document. Then you can map information from the
converted document to the TN_parms variable. The Input for
Flat File Validation dialog box prompts you to select the
parsing settings.
Trading Networks executes this pre-processing action before
executing the processing rule that you associate with the TN
document type. For more information, see “Validating the
Structure of Flat File Documents” on page 302.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 311
14 Defining and Managing TN Flat File Document Types

Options tab
parameter Description

Check for Duplicate Searches the database to determine whether the database has
Document already received the document. Trading Networks executes
pre-processing this pre-processing action before executing the processing rule
action that you associate with the TN document type. Select a built-in
service or use a custom service. For more information, see
“Checking for Duplicates of the Flat File Document” on
page 303.

To create a new custom service click New Service.


To select an existing duplicate service, click Find Service to
browse the IS namespace to locate one and then click Edit
Service if you want to modify the service.

Note: A custom duplicate checking service may affect


performance, depending on its logic. For details, see,
“Creating a Duplicate Document Check Service” on page 333.

Save Document to Specify whether to save all documents, only unique


Database documents, or no documents. Additionally, specify whether to
preprocessing save the document’s content, attributes, and/or activity log
action information. Trading Networks executes this pre-processing
action before executing the processing rule that you associate
with the TN document type. For more information, see
“Saving Flat File Documents to the Database” on page 304.

10 Click OK to create the TN flat file document type.

Managing TN Flat File Document Types


The following table lists the tasks you can perform against TN flat file document types:

Task See page...


“Viewing TN Flat File Document Types” 313
“Updating TN Flat File Document Types” 313
“Disabling TN Flat File Document Types” 315
“Enabling TN Flat File Document Types” 315

312 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
14 Defining and Managing TN Flat File Document Types

Viewing TN Flat File Document Types


You can view all enabled and disabled TN document types.

To view TN flat file document types

1 In Trading Networks Console: View > Document Types.


Trading Networks displays the TN flat file document types as well as the TN XML
document types.
2 To view disabled TN document types, select Types > Show All. Trading Networks
places a check () next to the Show All menu item to indicate that it is currently
displaying disabled TN document types.
3 To hide disabled TN document types, select Types > Show All again. Trading Networks
removes the check () next to the Show All menu item to indicate that Trading
Networks is currently not displaying disabled TN document types.

Updating TN Flat File Document Types


Important! Do not change the name of the TN document type if you:
 Use a TN document type as an input to a step in a process model you created in
Designer
-- OR --
 Use the TN_parms/DoctypeName variable in a document gateway service to specify
the name of a TN flat file document type to use for a flat file document
You can change other settings for the attribute.

To update a TN flat file document type

1 In Trading Networks Console: View > Document Types.


Trading Networks displays all TN flat file document types as well as the TN XML
document types.
2 Click the row containing the TN flat file document type you want to update.
3 Select Types > Edit.
4 To update the description, type a new description in the Description field.
5 To update identification information, click on the Identify panel. For details about the
what to specify on this panel, see “Pipeline Matching Criteria Used to Identify the TN
Document Type” on page 292.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 313
14 Defining and Managing TN Flat File Document Types

 To add a pipeline matching variable, click Add New Pipeline Match. Click OK to save
the variable and close the dialog box.
 To update a pipeline matching variable, click the row containing the pipeline matching
variable you want to update and click Edit Selected Pipeline Match. In the Update
Pipeline Matching dialog box, update the Name and Value fields for that variable.
Click OK to save your updates and close the Update Pipeline Matching dialog box.
 To delete a pipeline matching variable, click the row containing the pipeline matching
variable you want to delete and click Remove Selected Pipeline Match.

6 To update extraction information, click the Extract panel. For details about what to
specify on this panel, see “Attributes To Extract From Documents” on page 293.
7 To update the system attributes, click on the System Attributes tab. For details about
what to specify for these fields, see “System Attributes To Extract From Documents”
on page 295.
 To select a system attribute to extract, select the appropriate check box in front of the
attribute name.

Note: The SenderID and ReceiverID are always selected.

Use the Transform and Argument fields to specify detail information for how
Trading Networks is to handle attribute data before storing it in the Trading
Networks database. For a summary of actions you can take for adding a new
system attribute, see step 8 on page 308.
 To deselect a system attribute, deselect the appropriate check box in front of the
attribute name.
8 To update custom attribute information, click on the Custom Attributes tab. Custom
attributes are the user-defined ones on the Document Attributes screen. For more
information about document attributes, see Chapter 12, “Defining and Managing
Document Attributes”.

 To add a custom attribute, click Add New Attribute. Then, add a new custom
attribute. For a summary of actions you can for take for adding a new custom
attribute, see step 4 on page 212.

 To view more details about all of the document attributes, click Document
Attributes to view the Document Attributes screen.

 To update a custom attribute, click Edit Selected Attribute. For a summary of actions
you can take for custom attributes, see step 4 on page 212.
 To delete a custom attribute from the TN document type—Select the row for the attribute
and click Remove Selected Attribute.

314 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
14 Defining and Managing TN Flat File Document Types

9 To update options, click the Options tab. For details about these fields, see “Pre-
Processing Actions in the TN Flat File Document Type” on page 302.
10 After you have made all your changes, click OK. Trading Networks closes the screen.

Disabling TN Flat File Document Types


If you no longer want Trading Networks to use a TN document type, you can disable it.
When you disable a TN document type, the definition for the TN document type is not
removed from the database. You can enable it later (see “Enabling TN Flat File Document
Types” on page 315).

Note: To permanently remove the TN document type from the database, your
database administrator must remove it. When you remove a TN document type from
the database, you must also remove all documents that are associated with the TN
document type.

To disable a TN flat file document type

1 In Trading Networks Console: View > Document Types.


Trading Networks displays both the TN XML document types and TN flat file
document types.
2 Click the row containing information about the TN flat file document type that you
want to disable.
3 Select Types > Disable. Trading Networks places No in the Enabled column to indicate
that the TN flat file document type is disabled.

Note: To view the Enabled column (if it is not currently displayed), select Document
Types > Show All.

Enabling TN Flat File Document Types


If you disable a TN document type and then later determine that you still need it, you can
enable it and make it available again.

Important! To enable TN document types, you must first display inactive TN document
types as described in “Viewing TN Flat File Document Types” on page 313.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 315
14 Defining and Managing TN Flat File Document Types

To enable a TN flat file document type

1 In Trading Networks Console: View > Document Types.


Trading Networks displays both the TN XML document types and TN flat file
document types.
2 Click the row containing information about the TN document type that you want to
enable.
3 Select Types > Enable. Trading Networks places Yes in the Enabled column to indicate
that the TN document type is enabled.

316 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

 What are Processing Rules? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318


 Processing Rules Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
 Processing Rule Criteria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
 Extended Criteria—Using Custom Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
 Pre-Processing Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
 Processing Rule Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
 Defining Processing Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
 About Querying and Viewing Processing Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
 Managing Processing Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 317
15 Defining and Managing Processing Rules

What are Processing Rules?


Processing rules specify how you want webMethods Trading Networks (Trading
Networks) to process documents. For example, you might want Trading Networksto
send an alert e-mail message to a contact, and then deliver the document to the receiver
that is identified in the document.
For each document that Trading Networks is to process, it performs a processing rule
lookup to determine which processing rule to use for a specific document. After Trading
Networks locates the appropriate processing rule, it takes the actions that you specify in a
processing rule. Alternatively, you can bypass the lookup if you already know which
processing rule you want to execute, thus avoiding the overhead of the lookup (see
“Bypassing Lookups for Processing Rules” on page 330).
After Trading Networks finds the appropriate processing rule for a document, it
performs the pre-processing and processing actions. The pre-processing actions identify
actions that Trading Networks performs before performing the processing actions. You
can specify pre-processing actions in both the TN document type and the processing rule.
The actions you specify in the processing rule can be configured to override the actions
that are specified in the TN document type.

Note: If you are working in a clustered environment, all Trading Networks servers
must be set up for cluster synchronization. That is, the servers must set the
tn.cluster.sync.remoteAliases property correctly. For more information about how to
configure Trading Networksfor a clustered environment, see “Shared Trading
Networks Database in a Clustered Environment”.

For more information about:


 Processing rules, and delivery methods you can use with Trading Networks, see
Understanding webMethods B2B: webMethods Trading Networks Concepts Guide.
 Large document handling, see Understanding webMethods B2B: webMethods Trading
Networks Concepts Guide and Appendix F, “Large Document Handling”.

Processing Rules Order


If a document matches more than one processing rule, Trading Networks uses the first
processing rule it encounters. As a result, the order in which you list your processing
rules on the Processing Rules screen is important. Trading Networks maintains the order
of the processing rules by assigning an ordinal to each processing rule.

Adding Processing Rules and the Order of Processing Rules


When you add a new processing rule, you have three Add options for processing rules:
you can add it above or below an existing processing rule or add the new rule to the
bottom of the processing rules list.

318 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

Note: If you are working with a queried list of processing rules, remember that
Trading Networks adds the new rule to the full, unfiltered list of processing rules
(e.g., all of the processing rules). Adding a new processing rule and causing the
processing rule order to change may also affect the ordinals of the rules that are not
displayed on your query results table.

The table below explains what happens to the order of the processing rules if you add a
new processing rule using each of the Add options.

If you add a new processing rule using


this option.... The processing rules reorder in this way...
Above— Add a new processing  The new processing rule is assigned the
rule above the highlighted rule. original ordinal of the highlighted rule.
 The highlighted processing rule is assigned its
original ordinal + 1.
 All existing processing rules below the
highlighted processing rule keep their
respective order but are also assigned their
original ordinal + 1.
Below— Add a new processing  The new processing rule is assigned the
rule below the highlighted rule. highlighted rule’s original ordinal + 1.
 The highlighted processing rule keeps its
original ordinal.
 All existing processing rules below the
highlighted processing rule keep their
respective order, but they are assigned their
original ordinal + 1.
Last—Add a new processing rule  The new processing rule is placed in the last
to the bottom of the processing position at the bottom of the full, unfiltered
rules list. If you set up a default list of processing rules.
processing rule, place it here (last)
 All other processing rules keep their original
in the list.
ordinals.

Example: The following diagrams demonstrate what happens if you highlight Processing
Rule B, Ordinal 12 as the rule to add your new processing rule in relation to.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 319
15 Defining and Managing Processing Rules

Add Processing Rule ABOVE Processing Rule B, Ordinal 12

Add new rule


ABOVE
Processing
Rule B,
Ordinal 12

The new rule is


ABOVE
Processing
Rule B and is
now Ordinal 12

Processing
Rule B is now
Ordinal 13

Add Processing Rule BELOW Processing Rule B, Ordinal 12

Add new rule


BELOW
Processing
Rule B,
Ordinal 12
Processing
Rule B
remains
Ordinal 12
The new rule
is BELOW
Processing
Rule B and is
now
Ordinal 13

320 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

Add Processing LAST

Add new rule


LAST (below
the Default
rule,
Ordinal15)

Default rule remains The new rule is LAST, Ordinal 16,


Ordinal 15 and is now below the Default rule

Reordering Processing Rules


You can reorder the processing rules by moving them up or down. When you reorder a
processing rule, Trading Networks reassigns the ordinal number for your selected
processing rule and all affected processing rules.

Note: If you reorder processing rules, there is no “undo” function that will return the
processing rules to their original order.

If you are working with a queried list of processing rules, remember that Trading
Networks adds the new rule to the full, unfiltered list of processing rules (e.g., all of the
processing rules). Adding a new processing rule and causing the processing rule order to
change may also affect the ordinals of the rules that are not displayed on your query
results table.
Keep rules with specific criteria before rules with general criteria. You should also set up
a default processing rule that you want Trading Networks to use when a document does
not match any of the other processing rules. Trading Networks ships with a default
processing rule that you can use. Place the default processing rule in the last position of
the full, unfiltered processing rules list. For more information about the default
processing rule, see “Setting Up a Default Processing Rule” on page 363.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 321
15 Defining and Managing Processing Rules

Processing Rule Criteria


The purpose of the criteria in a processing rule is to identify the documents Trading
Networks should process using the processing rule. A document has a sender, receiver,
TN document type, user status, the possibility of having errors, and the custom attributes
that the TN document type instructed Trading Networks to extract. You can set up a
processing rule to match one or more of these criteria. For example, you can specify that a
processing rule is to apply to documents that have specified senders and receivers, have a
specified TN document type, and the extracted custom attribute “Total PO Amount” is
greater than 10000.
All processing rule criteria that you specify must match the document information for
Trading Networks to use the rule to process the document. As another example, you
might set up the following criteria:

Criterion Value(s) To match...


Sender “Any” The sender can be any value
Receiver “XYZ Steel Company” The receiver must be “XYZ Steel
“United Steel” Company” or “United Steel”
Document Type “cXML Order Request” The TN document type must be
“cXML Order Request”
User Status “Needs approval” The user status must be “Needs
approval”
Recognition Errors “has no errors” The document cannot have errors

Keep rules with specific criteria before rules with general criteria. You should also set up
a default processing rule that you want Trading Networks to use when a document does
not match any of the other processing rules. Trading Networks ships with a default
processing rule that you can use. Place the default processing rule in the last position of
the full, unfiltered processing rules list. For more information about ordering processing
rules, see “Processing Rules Order” on page 318. For more information about the default
processing rule, see “Setting Up a Default Processing Rule” on page 363.
The rest of this section describes the types of criteria you can specify in a processing rule.

Sender and Receiver Criteria


You can use the sender and/or receiver of a document as criteria in a processing rule.
After Trading Networks recognizes the TN document type, it extracts the document
attributes that are specified in the TN document type. To process a document based on
sender/receiver, you must specify that you want Trading Networks to extract the SenderID
and ReceiverID system attributes from the document. You can select one or more partners
and/or one or more partner groups to be a sender or receiver.

322 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

If Trading Networks cannot determine the sender/receiver of a document, it considers the


sender/receiver an unknown partner. Trading Networks uses the unknown partner for a
document in all the following situations:
 The TN document type is unknown. Because it is the TN document type that specifies
the attributes to extract, when the TN document type is not recognized, Trading
Networks cannot extract any attributes (including SenderID and ReceiverID).
 The TN document type does not instruct Trading Networks to extract the SenderID
and ReceiverID system attributes.
 The XQL query (in the TN document type) that identifies the location of the SenderID/
ReceiverID system attributes is not valid.
 The value of the SenderID/ ReceiverID system attributes in the document do not match
the value of the external ID type of any defined partner on your Trading Networks
system. Trading Networks uses the sender/receiver information from the document
and matches it against the ID type information stored in the partner profiles for your
partners.
If a document was sent by one of your partners (for example, XYZ Steel Company), but
Trading Networks cannot determine the sender for one of the above reasons, Trading
Networks uses Unknown for the sender. If you have a processing rule that processes
documents that are sent by this partner (for example, XYZ Steel Company), Trading
Networks will not select the rule because it is using the unknown partner for the sender.
If Trading Networks successfully extracts the SenderID/ ReceiverID system attributes from a
document and can match it to a partner profile on your Trading Networks system, it uses
the corporation name and unit name specified in the partner profile as the name of the
sender and/or receiver. Trading Networks compares the name of the partner (or
unknown) to the partner or partners that you specify in the processing rule.

If you specify this… The rule matches…


Any Senders Regardless of the partner that is identified as the
sender/receiver in of the document, even if the partner is
—or—
unknown
Any Receivers
Enterprise Only if the sender/receiver that is identified in the document is
the local partner.
Unknown Only if the sender/receiver is unknown
Selected Senders Only if the sender/receiver that is identified in the document is
one of the partners you specify
—or—
Selected Receivers

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 323
15 Defining and Managing Processing Rules

Document Type Criterion


One of the criteria that you can use in a processing rule is the TN document type of a
document.
When Trading Networks has a document that it needs to process, it must first attempt to
recognize the type of document. To do this, Trading Networks determines the TN
document type that matches the document. Trading Networks sets the TN document
type of the document to the name of the matching TN document type. If a document does
not match any TN document type or if it matches multiple TN document types, the
document is considered an unknown TN document type.
Trading Networks compares the name of the TN document type (or unknown) to the TN
document type or types that you specify in the processing rule. You can specify one of the
following for the document type criterion in a processing rule:

If you specify this… The rule matches…


Any Document Types Regardless of the TN document type of the document, even if
the TN document type is unknown
Unknown Only if the TN document type is unknown
Selected Document Only if the name of the TN document type is one of the TN
Types document types you specify

User Status Criterion


You can use the user status of a document as a criterion in a processing rule.
The user status is a status that you can associate with a document. If you do not extract
the User Status system attribute from a document, its initial value will be null. You can set
and change the user status using the following:
 The following Java methods that are in the Trading Networks Java API:
 com.wm.app.tn.doc.BizDocEnvelope.setUserStatus(String)
 com.wm.app.tn.db.BizDocStore.changeStatus(BizDocEnvelope,String,String)
 The built-in service wm.tn.doc:changeStatus
 Processing action that changes the user status
The following shows an example of using user status criteria during processing:

324 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

User Status and Processing

Integration Server

Processing Rule
TN document type = PO
user status = accepted
Service
6
Processing Rule handles POs
TN document type = PO
user status = rejected

PO 1 Processing Rule
TN document type = PO 2
user status = any

TN document type = PO
user status = null To:
3 P
From:
Subject:
Accept Reject
http://tn:5555/PO.dsp

Set user status to “accepted” Set user status to “rejected”


4

PO

Step Description

1 Trading Networks receives a document and recognizes that its TN document


type is PO. The user status is originally null because Trading Networks was
not instructed to extract the User Status system attribute.
2 The document matches the processing rule that has the criteria that indicates
the TN document type must be PO and the document can have any user
status. The processing action in this rule indicates Trading Networks is to
send an alert e-mail. The alert e-mail contains a URL for a web page that
displays the PO. The processing rule also changes the user status to
“pending approval”.
3 The user clicks the URL to open the web page to view the PO. The web page
contains an HTML form that has an Accept button and a Reject button that the
user can use to accept or reject the PO.
4 The user selects either Accept or Reject. When the user selects either button,
code executes. If the user selects Accept, the code uses the built-in service
wm.tn.doc:changeStatus to set the user status associated with the document to
“accepted.” If the user selects Reject, the code uses the built-in service to set
the user status associated with the document to “rejected”.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 325
15 Defining and Managing Processing Rules

Step Description

5 The code for the web form invokes the wm.tn:submit built-in service that sends
the document back to the Integration Server for processing. Trading
Networks recognizes the TN document type is PO and determines the user
status, which is either “accepted” or “rejected.”
6 The document matches either the processing rule that indicates the TN
document type must be PO and the user status is “accepted” or the TN
document type is PO and the user status is “rejected.” This processing action
in these rules indicates Trading Networks is to invoke a service. This service
processes the purchase order appropriately.

You can set the user status processing rule criterion to one of the following:

If you specify this… The rule matches…


Any User Status Regardless of the user status of the document, even if the user
status is null
Specified User Status Only if the user status of the document is one of the user statuses
you specify

Document Recognition Errors Criterion


Another criterion you can use in a processing rule is whether Trading Networks
encountered errors while recognizing the TN document type and extracting attributes
from the document. (This criterion does not allow you to process documents based on
errors that occur while performing the pre-processing or processing actions. This is
because Trading Networks uses criteria before processing to determine the processing
rule to use for processing.)
Trading Networks flags a general error if an identifying XQL query in the TN document
type failed. For example, this error occurs when the document is identified as an XML
document but contains invalid XML. Another example is if the document is identified as
an XML document but is actually another format, for example plain text or EDI.
Trading Networks also flags an attribute error if Trading Networks is unable to extract an
attribute that is marked as required in the TN document type.
Trading Networks flags a sender error if the XQL query to locate the SenderID system
attribute fails or if the external ID of the sender in the document does not match the value
of the external ID information for any defined partner. Similarly, Trading Networks flags
a receiver error if the XQL query to locate the ReceiverID system attribute fails or if the
external ID of the receiver in the document does not match external ID information for
any defined partner.
This processing criterion is useful to assure that processing occurs only if no errors were
encountered during document recognition. Conversely, you can also use this criterion to
set up processing rules that specifically handle error cases.

326 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

You can set the error processing rule Content Criteria to one of the following:

If you specify this… The rule matches…


may have errors Regardless of whether Trading Networks encountered errors
has no errors Only if Trading Networks did not encounter any errors
has errors Only if Trading Networks did encounter errors

Extended Criteria—Using Custom Attributes


The extended criteria of a processing rule allow you to process a document based on the
values of one or more custom attributes that were extracted from a document. For
example, you might want to process purchase orders for an amount over $10,000
differently from purchase orders with an amount under $10,000. If you extract a custom
attribute, for example, Total PO Amount, from a document, you can use extended criteria to
indicate that Trading Networks is to use the processing rule only if the value of the
custom attribute Total PO Amount is greater than 10000.
After Trading Networks recognizes the TN document type, it extracts the custom
attributes that are specified in the TN document type. If the XQL query for the custom
attribute is not valid or it identifies a node that is not in the document, the value of the
custom attribute will be null. When you use extended criteria, you can match a document
based on whether the custom attribute value is null or not null. In addition, if the value is
not null, you can match based on the value that Trading Networks extracted for the
custom attribute. For example, if you have Trading Networks extract the custom
attribute, Shipping Date, you can use the extended criteria to match if Shipping Date is equal to
a date you specify.
For each custom attribute that you want to use in the extended criteria, you specify the
attribute name, an operator, and the value the attribute should have.
 Attribute instructs Trading Networks to look at the value of the specified attribute to
determine whether it meets the rest of the criteria for this custom attribute. You can
specify any attribute that is defined to your system.
 Operator instructs Trading Networks how to match the value, for example, match
string values that contain specified characters, match number values that are greater
than a specified value, or match date values before a specified date. The operator you
can specify depends on the data type of the custom attribute.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 327
15 Defining and Managing Processing Rules

Data Type Operator Matches when the attribute extracted from a document…
STRING Is null Has no value. The attribute has no value if the
XQL query for the custom attribute (in the TN
document type) did not identify a node in the
document.
You do not need to specify a value when you
specify this operator.
Is not null Has any value. You do not need to specify a value
when you specify this operator.
Equals Matches exactly the value that you specify.
Contains Contains the character string that you specify for
the value.
Not equals Has a value that does not match the value that you
specify.
STRINGLIST Is null Has no value. The attribute has no value if the
XQL query (defined in the TN document type)
that Trading Networks used to extract the attribute
failed.
You do not need to specify a value when you
specify this operator.
Is not null Has any value. You do not need to specify a value
when you specify this operator.
Includes Includes the value that you specify.
NUMBER Is null Has no value. The attribute has no value if the
XQL query for the custom attribute (in the TN
document type) did not identify a node in the
document.
You do not need to specify a value when you
specify this operator.
Is not null Has any value. You do not need to specify a value
when you specify this operator.
Equals Matches exactly the value that you specify.
Less than Has a value that is less than the value that you
specify.
Greater than Has a value that is greater than the value that you
specify.
Less than or Has a value that is less than or equal to the value
equals that you specify.

328 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

Data Type Operator Matches when the attribute extracted from a document…
NUMBER Greater than Has a value that is greater than or equal to the
(continued) or equals value that you specify.
Not equals Has a value that does not match the value that you
specify.
NUMBERLIST Is null Has no value. The attribute has no value if the
XQL query for the custom attribute (in the TN
document type) did not identify a node in the
document.
You do not need to specify a value when you
specify this operator.
Is not null Has any value. You do not need to specify a value
when you specify this operator.
Includes Includes the value that you specify.
DATETIME Is null Has no value. The attribute has no value if the
XQL query for the custom attribute (in the TN
document type) did not identify a node in the
document.
You do not need to specify a value when you
specify this operator.
Is not null Has any value. You do not need to specify a value
when you specify this operator.
Equals Matches exactly the value that you specify.
Before Is a date that is before the date that you specify.
After Is a date that is after the date that you specify.
DATETIMELIST Is null Has no value. The attribute has no value if the
XQL query for the custom attribute (in the TN
document type) did not identify a node in the
document.
You do not need to specify a value when you
specify this operator.
Is not null Has any value. You do not need to specify a value
when you specify this date list.

 Value along with the operator, instructs Trading Networks how to match documents
based on the value of the attribute extracted from the documents.
Even when a document contains the attribute information that you specify, Trading
Networks might still have a null value for the attribute. The following lists reasons
this might occur:

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 329
15 Defining and Managing Processing Rules

 The XQL query for the custom attribute (in the TN document type) did not
identify a node in the document.
 The TN document type of the document is unknown. (Trading Networks does not
extract attributes for unknown TN document types.)

Note: For custom attributes that are extracted from an XML document, Trading
Networks returns specific values for different attribute data types. For more
information about these extraction values, see “Extracting Custom Attributes
From XML Documents” on page 505.

You can specify multiple custom attributes in the extended criteria. Trading Networks
only selects the processing rule if all the criteria you specify match.

Note: If the pre-processing actions do not indicate that Trading Networks is to save the
attributes, Trading Networks does not save the custom attributes. However, you can
still use extended criteria for the document. For more information about the pre-
processing actions, see “Pre-Processing Actions” on page 331.
If you reprocess a document, Trading Networks does not recognize the TN document
type again and therefore does not re-extract the attributes. If you reprocess a
document for which Trading Networks did not save the attributes, Trading Networks
will not match processing rules that use extended criteria. Instead, Trading Networks
will match to another processing rule, for example the default processing rule, and
perform the process actions identified in that matching rule. For more information
about reprocessing a document, see Managing B2B Integrations: webMethods Trading
Networks User’s Guide.

Bypassing Lookups for Processing Rules


As previously mentioned, for each document that Trading Networks is to process, it
performs a processing rule lookup to determine which processing rule to use for a
specific document. You can alter this behavior in the following ways:
 You can have Trading Networks skip looking up a processing rule and not process the
document using actions from a processing rule.
 You can explicitly specify which processing rule to execute for a given document
type, thus bypassing the lookup (and its overhead).

Skip Processing Rule Actions


You can define a TN document type so that it disables processing rule processing. For
more information, see “Disabling Processing Rule Routing” on page 242 and “Disabling
Processing Rule Routing” on page 301.

330 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

Bypass Lookup by Explicitly Specifying the Processing Rule


To explicitly specify the processing rule that you want Trading Networks to use, add one
of the following system attributes to the TN_parms output variable in your document
gateway service:
 processingRuleID— The Trading Networks-generated identifier (a String) of the
processing rule you want Trading Networks to execute for the flat file document. To
find this identifier, invoke the wm.tn.route:list service.
 processingRuleName—The name (a String) of the processing rule you want Trading
Networks to execute for the flat file document.
If you include values for both attributes (which is unnecessary), processingRuleID is used.
For more information about these attributes and TN_parms, see “Specifying the
Document Gateway Services Outputs” on page 288.
Be careful not to specify a rule that may process your documents inappropriately. For
example, assume the following rules are defined to process purchase orders:

Rule Action
1: Execute for orders >$10000 Perform special handling
2: Execute for orders <$10 Discard order
3: Execute for all other orders Perform standard handling

If you assign the rule 2 identifier as the value of processingRuleID, and an application
submits an order greater than $10, rule 2 will discard the order.

Pre-Processing Actions
Trading Networks performs pre-processing actions before it processes the document using
the processing rule actions. You can specify pre-processing actions in both the TN
document type and the processing rule. You specify the pre-processing actions in the
processing rule to override the actions that are specified in the TN document type.
Trading Networks performs the pre-processing actions in the following order. Use pre-
processing actions to instruct Trading Networks to:
 Verify Digital Signature—Trading Networks verifies the digital signature of a document.
To verify that the document arrived unchanged, Trading Networks assures the signed
body has not changed by verifying the digital signature. To verify that the sender is
who it claims to be, Trading Networks matches the certificate from the digital
signature to the certificate that Trading Networks has on file for the partner.
 Validate Structure—Trading Networks validates the structure of the document against
an IS schema. Trading Networks assures that the document matches the structure
identified by the IS schema (using the pub.schema:validate built-in service).

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 331
15 Defining and Managing Processing Rules

 Check for Duplicate Document—Trading Networks determines if there is a duplicate of


the document; that is, if it has already received the document. Trading Networks
checks the document being processed against documents it has in its database. You
can have Trading Networks determine whether the document is a duplicate using a
built-in or custom duplicate check service or have Trading Networks not check for a
duplicate document.
 Built-in services—Use one of the following built-in duplicate checks:
 Document ID only—Trading Networks assures that it does not already have a
document with same document ID in its database.
 Document ID and sender—Trading Networks assures that it does not already
have a document with same document ID and sender in its database.
 Document ID, sender and receiver—Trading Networks assures that it does not
already have a document with the same document ID, sender, and receiver in
its database.
 Document ID, sender and document type—Trading Networks assures that it does
not already have a document with the same document ID, sender, and TN
document type in its database.
 Custom services—Use a service that you create to determine whether a document
is a duplicate. For more information, see below, “Creating a Duplicate Document
Check Service”.

Note: There could be performance issues if you choose to use custom services
for duplicate checking based on the logic in the service you select.

Trading Networks saves the results of the duplicate check to the pipeline. As a result,
this information is available for use in the processing actions that you define in the
processing rule.
 Save Document to Database—Trading Networks saves a copy of the document content,
attributes, and/or activity log information to the database. Trading Networks uses the
results of the duplicate check in the Save Document to Database pre-processing action.
Certain delivery options require saving the document content to the database, for
example, if you want to deliver a document via a queue. If you do not select to save
the document content and Trading Networks is to use a delivery option that requires
document content to be saved, Trading Networks will bypass reliable delivery and
invoke the specified delivery service once.
For more information about pre-processing actions for XML documents, see “Specifying
Pre-Processing Actions for TN XML Document Type” on page 242. For more information
about pre-processing actions for flat file documents, see “Pre-Processing Actions in the
TN Flat File Document Type” on page 302.

332 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

For all pre-processing actions, you can indicate in the processing rule that you want
Trading Networks to:
 Use the setting in the TN document type
 Perform the pre-processing action regardless of the setting in the TN document type
 Not perform the action regardless of the setting in the TN document type
For more information about pre-processing options, see Understanding webMethods B2B:
webMethods Trading Networks Concepts Guide.

Creating a Duplicate Document Check Service


The service must implement the input and output variables that are defined in the
wm.tn.rec:DupCheckService specification. Trading Networks passes the following input
variables:

Input Value Meaning

bizdoc The BizDocEnvelope that represents the document to perform the


duplicate document check on. The BizDocEnvelope conforms to the
wm.tn.rec:BizDocEnvelope IS document type.

For duplicate checking services, Trading Networks passes the following output variables:

Output Value Meaning

duplicate String Whether the service determined the document is a duplicate. The
service should return either true or false for duplicate.

The specification is located in the WmTN package. For more information about this
specification, see the webMethods Trading Networks Built-In Services Reference.

Processing Rule Actions


The purpose of the actions in a processing rule is to specify how Trading Networks is to
process a document. When Trading Networks finds the processing rule to use for a
document (using the criteria), Trading Networks performs the actions specified in the
processing rule to process the document.
You can define the processing rule actions to instruct Trading Networks either to ignore
the document (that is, do nothing) or to perform one or more of the following actions in
the order listed below:
 Execute a service that you specify. You can have Trading Networks invoke the service
synchronously or asynchronously.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 333
15 Defining and Managing Processing Rules

 Send an alert e-mail message to one of the contacts defined for the sender of the
document, one of the contacts defined for the receiver of the document, the
webMethods system administrator, or another e-mail that you specify.
 Change the user status for the document.
 Deliver the document to the receiver using a defined delivery method.
 Respond to the caller with a message that you specify.
If you select to have Trading Networks perform more than one of the above actions,
Trading Networks performs the actions in the order listed above. For example, if you
select to execute a service, send an alert e-mail message, and deliver the document to the
receiver, Trading Networks performs the actions in that order.
If Trading Networks encounters an error performing one of the actions, it will continue to
attempt the other actions. For example, if the service specified in the rule does not exist,
Trading Networks will receive an error attempting to invoke the service. In this situation,
Trading Networks logs the error in the activity log and continues, attempting to send the
alert e-mail message and deliver the document to the receiver.

For more information about processing rule actions and delivery methods, see
Understanding webMethods B2B: webMethods Trading Networks Concepts Guide.

Action 1—Execute a Service


Use the Execute a service action to have Trading Networks invoke a service that you
specify. The service can perform any action you want. For example, you can execute a
service to send the document to a back-end system for processing or change the content
of the document before sending it to the receiver.
The following lists the prerequisite to using the Execute a service action.

Prerequisite
Before you can use the Execute a service action, the service that you want to invoke must
exist on the Integration Server. If the service does not exist, you can access the
Developer from the Processing Rules screen to create the service.

When you use the Execute a service action, you specify the service you want Trading
Networks to execute and whether you want Trading Networks to invoke the service
synchronously or asynchronously. In addition, you can optionally set input values to
hardcode input values for the service.

Note: If you are using large document processing, see “Creating Services that
Recognize Large Document Handling” on page 512.

334 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

Executing the Service Synchronously or Asynchronously


To specify that you want Trading Networks to execute a service synchronously or
asynchronously, you select one of the following:
 Synchronous—Trading Networks attempts to synchronously execute the service a
single time.
 Asynchronous—Trading Networks attempts to asynchronously execute the service a
single time.
 Service execution task—Trading Networks sets up a service execution task for the
asynchronous execution of the service. Trading Networks uses reliable execution to
re-execute the service one or more times if the service fails. For more information
about service execution tasks, see “Service Execution Tasks and Reliable Execution”
on page 337.
The following table describes the behavior of Trading Networks based on whether you
use synchronous, asynchronous, or service execution task:

Trading Networks Behavior for the Execute a service Action


When does Trading synchronous Trading Networks waits for the service to
Networks process complete before it performs the rest of the
subsequent processing actions. Trading Networks
processing actions? merges the results from the service into the
pipeline. This allows you to use the service
results in output templates or in other
processing actions.
If there are no subsequent processing
actions, Trading Networks waits for the
service to complete before returning to the
caller that sent the document for processing.
asynchronous Trading Networks processes the actions
and immediately. The results of the service are
service execution not available in the pipeline for the other
task processing actions.
If there are no subsequent processing
actions, Trading Networks immediately
returns to the caller that sent the document
for processing.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 335
15 Defining and Managing Processing Rules

Trading Networks Behavior for the Execute a service Action


What does Trading synchronous If you do not select the Respond With
Networks return to the processing action, the results of the service
caller? are returned unmodified to the caller that
sent the document for processing.
If you do select the Respond With processing
action, Trading Networks does not return
the results of the service to the caller. It
returns only the message that you specify
with the Respond With action. However,
because Trading Networks performs the
Respond With action after it executes the
service all information that the service
places in the pipeline is available for use in
the message that Trading Networks returns
to the caller. This includes the results of the
service.
asynchronous If you do not select the Respond With
and processing action, Trading Networks
service execution returns no additional information to the
task caller.
If you do select the Respond With processing
action, Trading Networks returns the
message that you specify with the Respond
With action.
Trading Networks cannot return the results
of the service because the service might not
be complete.
What if the service synchronous, Trading Networks logs the error to its
throws an exception asynchronous activity log and continues with the other
or does not exist at and actions in the processing rule, if any.
runtime (i.e., it was service execution
deleted since you task
created the
processing rule)?

336 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

Service Execution Tasks and Reliable Execution


When you select service execution task, Trading Networks sets up a service execution task
to execute your service. A service execution task is a task that Trading Networks performs
to asynchronously execute a service using reliable execution. Reliable execution is a feature
of Trading Networks that allows Trading Networks to automatically retry failed services.
When you configure Trading Networks, you define the system-wide settings for service
execution tasks. Use the Trading Networks tn.transport.user property to indicate the user
account to use when invoking the service. By default, Trading Networks uses the
Administrator user account to invoke services. For more information about this property,
see “tn.transport.user” on page 496.
There are also other settings that indicate the maximum number of times that Trading
Networks attempts to re-execute a failed service and how long Trading Networks is to
wait between the attempts to retry a service after a failed attempt.
If Trading Networks attempts to execute a service and the service fails, Trading Networks
attempts to execute the service subsequent times until the service succeeds or until
Trading Networks reaches the maximum retry limit. If Trading Networks has reached the
maximum retry limit and the service has not successfully executed, Trading Networks
marks the service execution task as failed.
To determine whether a service was successful or failed, Trading Networks evaluates the
value of the status output variable. Your service must set the value of the status output
variable to “success” if the service executed successfully or set the value to “fail” if the
service did not succeed. For more information about the output variables that your
service should return, see “Defining a Processing Rule Based on a Saved Document” on
page 362.
The following table lists the system-wide settings for service execution tasks that you can
configure. When using reliable execution, Trading Networks uses these settings to
establish the parameters for the service execution task that governs the execution of the
service. For instructions on how to configure these settings, see “Configuring Tasks
Settings” on page 45.

Service Execution
Task Setting Description
Maximum Retries The number of times you want Trading Networks to attempt to
re-execute a service.
Wait Between The number of milliseconds (ms) you want Trading Networks to
Retries wait before making its first attempt to re-execute the service.
(Trading Networks uses the Retry Factor along with the Wait Between
Retries value to calculate how long to wait for subsequent retry
attempts.)

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 337
15 Defining and Managing Processing Rules

Service Execution
Task Setting Description
Retry Factor The factor you want Trading Networks to use when determining
how long to wait before making the second and subsequent
attempts to re-execute the service. Trading Networks calculates the
time to wait by multiplying the last wait time by the value you
specify for Retry Factor.

Example: The following shows sample values for the settings described in the table above
and how they affect the wait times between attempts to re-execute a service.

Maximum Retries = 3
Wait Between Retries = 10000 ms
Retry Factor = 2
Retry 1 Retry 2 Retry 3
Wait until next attempt 10000 ms 20000 ms 40000 ms

With the above settings, if the original attempt to execute the service fails, Trading
Networks waits 10000 milliseconds before it makes its first retry attempt. If the first retry
attempt fails, Trading Networks determines the next retry wait period by multiplying the
last wait value (10000 ms) by the Retry Factor (2). This results in 20000 ms; Trading
Networks waits 20000 ms between the first failed retry attempt an the second retry
attempt. If the second retry attempt fails, Trading Networks multiplies the last wait value
(20000 ms) by the Retry Factor (2). This results in 40000 ms; Trading Networks waits 40000
ms between the second retry attempt and the third retry attempt.
Trading Networks keeps track of the progress and status of each service execution task. If
the service execution task fails, you can troubleshoot the problem. If you can correct the
problem, you can restart the service execution task to have Trading Networks attempt to
execute the service again. You can view information about service execution tasks from
My webMethods and the Trading Networks Console. For more information about
managing and tracking service execution tasks, see Managing B2B Integrations:
webMethods Trading Networks User’s Guide.

338 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

Creating the Service for the Execute a Service Processing Action


You create the service that Trading Networks invokes for the Execute a Service processing
action.

Input and Output Variables for the Service


The following table describes the specification you should use for the service based on
whether you select synchronous, asynchronous, or service execution task.

Method Specification You Must Use


synchronous The service must implement, at a minimum, the input variables
and that are defined in the wm.tn.rec:ProcessingService specification. The
asynchronous input values that are identified in the specification are the IS
documents (IData objects) that are in the pipeline during
processing. The specification does not identify any outputs.
To view the wm.tn.rec:ProcessingService specification, use the
webMethods Developer. The specification is located in the WmTN
package.
service execution The service must implement, at a minimum, the input and output
task variables that are defined in the wm.tn.rec:ReliableProcessingService
specification. The input values that are identified in the
specification are the IS documents (IData objects) that are in the
pipeline during processing. Your service must specify output
values that indicate the outcome of the service. See below for
additional information about setting the output variables.
To view the wm.tn.rec:ReliableProcessingService specification, use the
webMethods Developer. The specification is located in the WmTN
package.

If you use synchronous or asynchronous, Trading Networks does not require the service to
have specific output values. However, if you use service execution task, your service must
provide values for the serviceOutput output variable, which is an IS document (IData
object) that contains the following String variables:

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 339
15 Defining and Managing Processing Rules

Variable in the
serviceOutput Specify…
status Whether the service executed successfully or unsuccessfully. Your
service must provide one of the following values for the reliable
execution feature of Trading Networks to operate correctly:
Value Meaning

success The service executed successfully.


When your service returns this value, Trading
Networks updates the status of the service execution
task for this service to DONE. Trading Networks does
not attempt to execute the service again.
fail The execution of the service failed.
If the maximum retry limit has been met, Trading
Networks updates the status of the service execution
task for this service to FAILED. If the maximum retry
limit has not yet been reached, the status of the service
execution task remains PENDING and Trading
Networks will attempt to re-execute the service after
the wait period elapses.
statusMessage Optional. A message that contains more information about the
outcome of the service. It is recommended that you provide
information for statusMessage if the service fails, for example, an
error message that explains why the service failed.
transportTime Optional. The number of milliseconds it took for the service to
execute. Specify this value if you want to maintain analytical
information about how long it took the service to execute.

You can view the task detail information described above, plus other task-related
information, such as, the number of times Trading Networks has attempted to retry the
service from My webMethods and Trading Networks Console. For instructions on how to
view tasks, see information about managing tasks in Managing B2B Integrations:
webMethods Trading Networks User’s Guide.

Setting Values for the Input Variables


If you create a service that requires input values, in addition to the input values specified
in the wm.tn.rec:ProcessingService or wm.tn.rec:ReliableProcessingService specification, you might
want to hardcode some of the values. You can do this when you set up the processing
rule.
For example, you might create a service that can add, update, or delete an entry for a
partner in your back-end system. Input to the service is a flag that indicates the action the
service is to take—add, update, or delete. You can create three separate processing rules
that all execute this service. However, you set the input values for the flag different for

340 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

each processing rule. For the processing rule that is triggered by a document for which
you want to add an entry, set the input value of the flag to indicate the service should add
an entry. For the processing rule that is triggered by a document for which you want to
update an entry, set the input value of the flag to indicate the service should update an
entry, and so on.

Logic for the Service


This service can perform any logic that you want. You might want to perform different
processing based on whether Trading Networks encountered errors during previous
processing, e.g., whether a document is a duplicate. For more information about creating
the service, see Developing Integration Solutions: webMethods Developer User’s Guide.

Action 2—Send an Alert E-mail


Use the Alert e-mail action to send an e-mail message to a specified contact. The following
lists the prerequisite to using the Alert e-mail action.

Prerequisite
Before you can use the Alert e-mail action, your Trading Networks system must be set up
to allow Trading Networks to send e-mail messages. Do this by specifying the address
of the Simple Mail Transfer Protocol (SMTP) server through which the Integration
Server is to issue e-mail messages.
To specify the address of the SMTP server, use the following procedure:
1 In Server Administrator: Settings > Logging.
2 Click Edit logging settings.
3 In the Email Notification section of the screen, set the SMTP Server field to the domain
name or IP address of the SMTP server that you want the Integration Server to use.
4 Click Save Changes.

When you use the Alert e-mail action, you specify the recipient that is to receive the e-mail
message, the subject line for the e-mail message, and the body (or content) of the e-mail
message.

Recipient of the E-mail Message


You can use one of the following as the recipient of the e-mail message:

If you select… Specify…


Sender The sender’s contacts that are to receive the e-mail message. For
example, if you want Trading Networks to send the e-mail message
to the sender's administrative contacts, select “Administrative”.
Trading Networks looks in the sender’s profile for the e-mail
addresses of all contacts of the type you selected.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 341
15 Defining and Managing Processing Rules

If you select… Specify…


If the sender is unknown or if the contact type you specify is not
defined in the sender’s profile, Trading Networks will be unable to
determine an e-mail address. As a result, Trading Networks will be
unable to send the e-mail message. In this situation, Trading
Networks logs the error to its activity log and continues with the
other actions you specified in the processing rule, if any.
Receiver The receiver’s contacts that are to receive the e-mail message. For
example, if you want Trading Networks to send the e-mail message
to the receiver's technical contact, specify “Technical”. Trading
Networks looks in the receiver’s profile for the e-mail addresses of
all contacts of the type you selected.
If the receiver is unknown or if the contact type you specify is not
defined in the receiver’s profile, Trading Networks will be unable to
determine an e-mail address. As a result, Trading Networks will be
unable to send the e-mail message. In this situation, Trading
Networks logs the error to its activity log and continues with the
other actions you specified in the processing rule, if any.
webMethods No additional information is required. Trading Networks sends the
Administrator e-mail message to the webMethods administrator.
Before you select webMethods Administrator, assure the e-mail address
for the webMethods administrator is defined. Do this using the
Server Administrator. Follow the steps specified in the
“Prerequisites” section above, on page 341. However, in Step 4, in
addition to specifying the SMTP server, assure an e-mail address is
specified for Internal Email field. If an e-mail address is not specified,
specify it.
If the webMethods administrator is not defined, Trading Networks
will be unable to send the e-mail message. In this situation, Trading
Networks logs the error to its activity log and continues with the
other actions you specified in the processing rule, if any.
E-mail Address The e-mail address of the recipient that is to receive the e-mail
message.
If the e-mail address you specify is not valid, Trading Networks will
be unable to send the e-mail message. In this situation, Trading
Networks logs the error to its activity log and continues with the
other actions you specified in the processing rule, if any.

Subject of the E-mail Message


You can type any subject line for the e-mail message. There are no restrictions to the
length or characters that you can use.

342 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

Body of the E-mail Message


You can type any message for the body of the e-mail message. There are no restrictions to
the length or characters that you can use.
To make the body dynamic, you can include information from the pipeline in the body.
To include information from the pipeline, use output template tags.
For example, you might want the e-mail message to specify the type of document that
was received and from whom it was received. You might also want to include a hyperlink
that allows the recipient of the e-mail message to view the document. The following
shows the text you might specify for the body. (For illustrative purposes, bold text is used
for the output template tags.)

If the TN document type is “Purchase Order”, the sender's corporation name is “XYZ
Steel Company”, and the organizational unit is “Alloys Division”, the following shows
how the above sample e-mail message body would be rendered:

Trading Networks received a Purchase Order document from XYZ Steel Company--
Alloys Division.

You can view the document at


http://wMTN:5555/invoke/wm.tn.doc/view?docId=000233AB907ED1234

When Trading Networks executes the Alert E-mail action, the pipeline contains the
information described in “Action 1—Execute a Service” on page 334. In addition, if the
processing rule specifies the Execute a service action and the service is executed
synchronously, the pipeline also contains any information that the service placed in the
pipeline.
For details about the output template tags that you can use, see the Dynamic Server Pages
and Output Templates Developer’s Guide.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 343
15 Defining and Managing Processing Rules

Action 3—Change User Status


Use the User Status action to change the user status that is associated with a document.
The user status is a status that you can associate with a document. The TN document type
can be defined to extract a user status from the document, which gives the user status an
initial value. If the TN document type does not instruct Trading Networks to extract the
User Status system attribute or if the XQL query for the User Status system attribute
(specified in the TN document type) does not identify a node in the document, the initial
value of user status is null.
When you use this processing rule action, you specify the status that you want Trading
Networks to associate with the document. You can specify 1-255 characters for the user
status. There is no restriction to the characters you can use for user status.
The User Status action is useful to assign a status to a document that you will use when
performing document queries or generating reports. For example, you might require that
purchase orders be approved. In this case, you can send an alert e-mail message to the
person responsible for approving the purchase order and set the user status to “pending
approval”. To determine the purchase orders that are waiting for approval, you can query
documents searching for documents with the user status “pending approval”.

Action 4—Deliver the Document to the Receiver


When a processing rule includes the Deliver Document By processing action, webMethods
Trading Networks attempts to deliver a document to the receiver that is identified in the
document. In the processing rule, you can specify one of four ways to deliver a
document—immediate delivery, scheduled delivery, queued for polling, or preferred
protocol.
If you select preferred protocol, Trading Networks looks up the receiver’s profile and
uses the delivery method that is identified as that partner’s preferred delivery method.
This preferred delivery method can be an immediate delivery or queued for polling.

Important! Trading Networks uses the receiver that is extracted from the document. If
you use the Execute a service action and the executed service updates the receiver
identified in the original document, Trading Networks will not deliver the document
to the partner that service specified as the receiver – unless that service updates the
receiver in the bizdoc in the pipeline. If the service does not update the receiver,
Trading Networks delivers the document to the receiver identified when it initially
received the document for processing.

The following lists the prerequisite to using the Deliver Document By action.

Prerequisite
To use the Deliver Document By action, the TN document type must indicate that Trading
Networks is to extract the ReceiverID system attribute from the document. Trading
Networks uses the receiver information to determine the partner to which to deliver
the document.

344 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

For more information about:


 Delivery methods in Trading Networks, see Understanding webMethods B2B:
webMethods Trading Networks Concepts Guide.
 Delivery information on the partner’s profile, see “Delivery Settings” on page 103.

Immediate Delivery
When the Deliver Document By processing action indicates Immediate Delivery, Trading
Networks attempts to deliver a document directly to the receiving partner. You can create
immediate delivery methods using the delivery methods that Trading Networks
provides. In addition, Trading Networks provides built-in immediate delivery methods.
The delivery methods from which you can create the immediate delivery methods are as
follows:
 E-mail
 FTP
 FTPS
 HTTP
 HTTPS
 Web Service
The built-in immediate delivery methods that Trading Networks provides are as follows:

 Primary E-mail  Secondary E-mail


 Primary FTP  Secondary FTP
 Primary FTPS  Secondary FTPS
 Primary HTTP  Secondary HTTP
 Primary HTTPS  Secondary HTTPS

Each immediate delivery method is associated with an immediate delivery service. An


immediate delivery service is a service that acts on a single document to deliver the
document to a single partner. Trading Networks invokes the delivery service to deliver a
document to a trading partner. For each built-in immediate delivery method, Trading
Networks provides a built-in immediate delivery service. For immediate delivery
methods that you create, Trading Networks automatically creates a delivery service after
you create the immediate delivery method.
In addition to creating immediate delivery methods using the delivery methods that
Trading Networks provides, you can create immediate delivery services and register
them with Trading Networks to define your own custom immediate delivery methods.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 345
15 Defining and Managing Processing Rules

For more information about:


 Immediate delivery methods, see Understanding webMethods B2B: webMethods
Trading Networks Concepts Guide.
 Immediate delivery services, see “What is an Immediate Delivery Service?” on
page 394.

Using Reliable Delivery with Immediate Delivery Method


If the pre-processing actions specify that Trading Networks is to save the document
content to its database, Trading Networks automatically uses reliable delivery to deliver a
document to a partner one or more times based on the settings that you define in the
profile for each of your partners. To keep track of the attempts to deliver a document,
Trading Networks establishes a delivery task.

Note: You can also use reliable delivery by invoking the built-in service,
wm.tn.delivery:deliver.

The following table lists the reliable delivery settings that you define in the Delivery Method
tab of the partner’s profile. When using reliable delivery with an immediate delivery
method, Trading Networks uses these settings to establish the parameters for the delivery
task that governs the delivery of the document.

Reliable Delivery
Setting Description
Delivery The number of times you want Trading Networks to attempt to
Maximum Retries redeliver a document.
Wait Between The number of milliseconds (ms) you want Trading Networks to
Retries wait before making its first attempt to redeliver the document.
(Trading Networks uses the Retry Factor along with the Wait Between
Retries value to calculate how long to wait for subsequent retry
attempts when delivering documents using an immediate delivery
method.)
Retry Factor The factor you want Trading Networks to use when determining
how long to wait before making the second and subsequent
attempts to redeliver the document when using an immediate
delivery method. Trading Networks calculates the time to wait by
multiplying the last wait time by the value you specify for Retry
Factor.

346 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

For more information about:


 Delivery options, see Understanding webMethods B2B: webMethods Trading Networks
Concepts Guide.
 Delivery tasks, see Managing B2B Integrations: webMethods Trading Networks User’s
Guide.

Scheduled Delivery
When the Deliver Document By processing action indicates scheduled delivery, Trading
Networks batches documents that are then delivered at scheduled times. Trading
Networks also creates the delivery task for the document and places the delivery task in
the queue specified by the processing rule. The queue specified in the processing rule is a
scheduled delivery queue that you have previously defined.

Note: The queue is not a queue in the traditional sense. It is a set of rows in the Trading
Networks database. Each queued delivery task that is associated with a document is a
row in the same table of the Trading Networks database.

For scheduled delivery, Trading Networks supports two types of queues—public queues
and private queues. You can select to use a public queue or to use a specific partner’s
private queue.

Note: If you select Receiver’s Queue, Trading Networks looks up a queue in the
receiver’s profile. If the receiver’s profile does not contain a queued delivery method
(i.e., does not define a queue), then Trading Networks will be unable to deliver the
document by this method and instead, Trading Networks makes the document
pollable (Queue for polling).

Once you select a queue for the scheduled delivery method, the next time Trading
Networks runs a scheduled delivery service and reads documents from that specified
queue, all documents in that queue will be delivered.

For more information about:


 Scheduled delivery, see Understanding webMethods B2B: webMethods Trading
Networks Concepts Guide.
 Public/Private queues and scheduled delivery, see “About Scheduled Delivery
Queues” on page 378.

Using Reliable Delivery with Scheduled Delivery


Trading Networks automatically uses reliable delivery for a scheduled delivery method.
Reliable delivery is a feature of Trading Networks where Trading Networks attempts to
deliver a document to a partner one or more times based on settings that you define. To
specify how many times Trading Networks attempts to re-deliver a document that is

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 347
15 Defining and Managing Processing Rules

scheduled for delivery, you define reliable delivery settings in the profile for each of your
partners. To keep track of the attempts to deliver a document, Trading Networks
establishes a delivery task.

Note: You can also use reliable delivery by invoking the built-in service,
wm.tn.delivery:deliver.

When using reliable delivery with a scheduled delivery method, Trading Networks only
uses only the following reliable delivery setting that you define in the Delivery Method tab
of the partner’s profile.

Reliable Delivery Setting Description


Delivery Maximum The number of times you want Trading Networks to attempt
Retries to redeliver a document.

Unlike for the immediate delivery method, Trading Networks does not use the Wait
Between Retries and Retry Factor settings for reliable delivery with scheduled delivery
because the queue’s delivery schedule dictates how often to retry delivery attempts.

For more information about:


 Delivery information on the partner’s profile, see “Delivery Settings” on page 103.
 “Scheduled Delivery Queue States” on page 381
 Scheduled delivery services, see “What is a Scheduled Delivery Service?” on
page 394.
 Customized delivery services, see “Adding and Registering New Delivery
Services” on page 405.
 Delivery tasks, see Managing B2B Integrations: webMethods Trading Networks User’s
Guide.

Queued for Polling


Trading Networks queues a document for polling when the Deliver Document By
processing action indicates one of the following:
 The Queue for polling selection
 The Receiver’s Preferred Protocol selection and the preferred protocol (delivery method)
is Queue for polling
 The receiving partner’s profile does not specify a delivery method. For example,
Secondary HTTPS is specified but the profile does not contain a Secondary HTTPS
delivery method. Or, another example is that if the scheduled delivery method is
Receiver’s Queue, but the receiving partner’s profile does not contain a queued delivery
method (i.e., does not define a queue), then Trading Networks makes the document
pollable (Queue for polling).

348 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

When Trading Networks queues the document for polling, it places the document in an
internally-defined queue. Trading Networks does not deliver the documents that are in
this queue. Instead, Trading Networks waits for a partner to poll for the documents.
When a specific partner polls for documents, Trading Networks returns all the
documents in the queue for which that partner is the receiver.
The receiving partners define the protocol (e.g., HTTP) to use to poll for the document
and how frequently to poll for documents.

For more information about:


 Delivery options, see Understanding webMethods B2B: webMethods Trading Networks
Concepts Guide.
 Queue for polling, see “Defining Queue for Polling” on page 390.

Preferred Protocol
If you select Receiver’s Preferred Protocol, Trading Networks looks up the receiver’s profile
and uses the delivery method that is identified as that partner’s preferred delivery
method. This preferred delivery method can be an immediate delivery or queued for
polling.
In addition to the above delivery methods, you can create customized delivery services
and register them with Trading Networks to define your own custom delivery methods.

For more information about:


 Partner’s preferred delivery method, see “Delivery Settings” on page 103.
 Customized delivery services, see “Adding and Registering New Delivery
Services” on page 405.

Action 5—Respond With a Message


Use the Respond With action to have Trading Networks return a specified message to the
caller that sent the document to be processed.
When you use the Respond With action, you must specify the message you want Trading
Networks to return and the content type of the message.

Specifying the Message


You can type any message. There are no restrictions to the length or characters that you
can use. To make the body dynamic, you can include information from the pipeline in the
body. To include information from the pipeline, use output template tags. For details
about the output template tags that you can use, see the Dynamic Server Pages and Output
Templates Developer’s Guide.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 349
15 Defining and Managing Processing Rules

The pipeline contains the information described in “Action 1—Execute a Service” on


page 334 of this user’s guide. In addition, if the processing rule specifies the Execute a
service action and the service is executed synchronously, the pipeline also contains any
information that the service placed in the pipeline.
An example of using the Respond With action would be to send an acknowledgement for a
purchase order. You can set up a processing rule that uses the Execute a service action and
the Respond With action:
 The Execute a service action could asynchronously invoke a service that performs the
appropriate processing for the purchase order, for example, interfacing with a
back-end system. This action returns the confirmation that the purchase order was
received and processed.
 The Respond With action could return an acknowledgement that just indicates that the
purchase order was received. The message you specify is the acknowledgement that
is returned.

Specifying the Content Type


In addition to specifying the message, you must indicate the content type of the message.
For example, if the message is an XML document, specify the content type, text/xml, or if
the message is in plain text, specify the content-type text/plain.

Defining Processing Rules


Use this procedure to define a processing rule on the Processing Rule Details screen.

Note: If you are working in a clustered environment, all Trading Networks servers
must be set up for cluster synchronization. That is, the servers must set the
tn.cluster.sync.remoteAliases property correctly. For more information about how to
configure Trading Networks for a clustered environment, see “Shared Trading
Networks Database in a Clustered Environment”.

To define a processing rule

1 In Trading Networks Console: View > Processing Rules.


2 Perform one of the following procedures to add a new processing rule.

350 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

Method to start a processing rule Procedures

 Add — To add a new 1 Click the row where you want to add the
processing rule in a specific new processing rule.
order relative to a selected
2 Select Rules > Add and then one of the
processing rule.
following:
For more information about
a Above— Add a new processing rule
adding processing rules, see
above the highlighted processing rule.
“Adding Processing Rules
and the Order of Processing b Below— Add a new processing rule
Rules” on page 318 below the highlighted processing rule.
c Last—Add a new processing rule to the
bottom of the full unfiltered processing
rules list. All other processing rules
keep their original ordinal numbers.

Note: Make sure you place the Default processing


rule in the last position in the filter processing
rules list. For more information about the
default processing rule, see “Setting Up a
Default Processing Rule” on page 363

3 Trading Networks displays a blank


Processing Rule Details screen for you to
complete.
 Duplicate— Add a new 1 Click the row containing the processing
processing rule that is a rule that you want to duplicate.
duplicate of an existing one.
Trading Networks adds the
new rule to the bottom of the
processing rules list.
You can update any or all 2 Select Rules > Duplicate.
fields from the duplicated
Trading Networks copies the processing
processing rule.
rule fields with values from the processing
rule that you duplicate.

3 On the Processing Rule Details screen, specify the name you want to give the
processing rule in the Name field. Specify 1-64 characters. There is no restriction to the
characters that you can use.
4 If you do not want this processing rule to be enabled, deselect the default Enabled
field.
5 Optionally, specify a description for the processing rule in the Description field. Specify
1-255 characters. There is no restriction to the characters that you can use.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 351
15 Defining and Managing Processing Rules

6 Click the Criteria tab and fill in the fields to identify documents that should be
processed using this rule. A document must meet all the criteria that you specify on
both the Criteria and Extended Criteria tabs for Trading Networks to use the processing
rule to process the document. For more information, see “Processing Rule Criteria”
on page 322.

For this Criteria


tab parameter… Specify…

Sender The sender(s) identified in the documents that you want to


process with this rule. Select one of the following:
 Any to use this rule for documents regardless of the sender.
 Enterprise to use this rule for documents that identify the
local partner (the partner that is the hub of the trading
network) as the sender. Trading Networks lists the name of
the Enterprise profile in parentheses.
 Unknown to use this rule for documents for which the
sending partner is not known.
 Selected to use this rule for documents that identify one or
more of the specified partner profiles and/or partner groups
as the sender.
To specify a partner profile:

a Click the Select Profile(s) button.


b Select a partner profile from the Partner Selection Dialog.
You can select multiple partners using the <Shift> and
<Ctrl> keys. For more information about the Select
Profile(s)... button, see “Selecting TN Document Types”
on page 33.
c Click OK.
To specify a partner group:

a Click the Select Profile Group(s) button.


b Select a partner group from the Partner Groups Dialog.
You can select multiple partner groups using the <Shift>
and <Ctrl> keys. For more information about the Select
Profile Group(s)... button, see “Selecting TN Document
Types” on page 33.
c Click OK.
For more information about these processing rules fields, see
“Sender and Receiver Criteria” on page 322.

352 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

For this Criteria


tab parameter… Specify…

Receiver The receiver(s) identified in the documents that you want to


process with this rule. Select one of the following:
 Any to use this rule for documents regardless of the receiver.
 Enterprise to use this rule for documents that identify the
local partner (the partner that is the hub of the trading
network) as the receiver. Trading Networks lists the name of
the Enterprise profile in parentheses.
 Unknown to use this rule for documents for which the
receiving partner is not known.
 Selected to use this rule for documents that identify one or
more of the specified partner profiles and/or partner groups
as the receiver.
To specify a partner profile:

a Click the Select Profile(s) button.


b Select a partner profile from the Partner Selection
Dialog.You can select multiple partners using the <Shift>
and <Ctrl> keys. For more information about the Select
Profile(s)... button, see “Selecting TN Document Types”
on page 33.
c Click OK.
To specify a partner group:

a Click the Select Profile Group(s) button.


b Select a partner group from the Partner Groups Dialog.
You can select multiple partner groups using the <Shift>
and <Ctrl> keys. For more information about the Select
Profile Group(s)... button, see “Selecting TN Document
Types” on page 33.
c Click OK.
For more information about these processing rules fields, see
“Sender and Receiver Criteria” on page 322.
Document Type The TN document type(s) of the documents that you want to
process with this rule. Select one of the following:
 Any to use this rule for documents regardless of the TN
document type.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 353
15 Defining and Managing Processing Rules

For this Criteria


tab parameter… Specify…

 Unknown to use this rule for documents with unknown TN


document types.
 Selected to use this rule for documents with the specified TN
document types. To specify TN document types:

a Click the Select Document Type button.


b Select the row containing the TN XML document type or
TN flat file document type that you want from the
Document Type Selection Dialog. You can select multiple
partners using the <Shift> and <Ctrl> keys. For more
information about using this button, see “Selecting TN
Document Types” on page 33.
c Click OK.
For more information about these fields, see “Document Type
Criterion” on page 324
User Status The user status of the documents that you want to process using
this rule. Select one of the following:
 Any to use this rule for documents regardless of the user
status.
 Specified to use this rule for documents with the specified
user statuses. Type each user status you want to allow on a
separate row in the table. To add a user status to the table,
click Add New to add a row; then, type the user status. To
remove a user status from the table, delete the row
containing the user status by clicking Delete Selected.
For more information about these fields, see “User Status
Criterion” on page 324.
Recognition Whether the documents that you want to process using this rule
Errors contain errors. Select one of the following from the list:
 May have errors to use this rule for documents regardless of
whether the document contains errors.
 Has no errors to use this rule for documents that do not
contain errors.
 Has errors to use this rule for documents that contain errors.
For more information about these fields, see “Document
Recognition Errors Criterion” on page 326

354 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

7 Click the Extended Criteria tab to specify custom attributes that you want Trading
Networks to use as criteria for matching processing rules. A document must meet all
the criteria that you specify on both the Criteria and Extended Criteria tabs for Trading
Networks to use the processing rule to process the document.
For each custom attribute that you want to use, specify the following Content Criteria:

For this Extended Criteria


tab parameter… Specify…

Attribute The custom attribute that you want Trading Networks to


use to select documents. Select an attribute from the list.
Operator The operator you want Trading Networks to use with the
value you specify. For example, select Equal if you want
Trading Networks to match documents that have the
exact value you specify for Value.
Value Specify the value you want Trading Networks to use
when matching documents to the processing rule.
 To specify a string, type the characters in the string.
Be sure to use the exact combination of upper- and
lowercase letters because Trading Networks
performs a case-sensitive match.
 To specify a number, type the numeric value.
 To specify a date and time, either type in the date and
time or click to open a dialog that allows you to
select the date from a calendar. (Trading Networks
uses the current time.) If you type a date and time,
use the format yyyy-mm-dd hh:mm:ss. (Use a 24-hour
clock for the hour field, hh.). For example, if you want
to specify the date/time August 29, 2001 at 2:30 pm,
specify 2001-08-29 14:30:00.
You do not need to specify a value if you select is null or
is not null for Operator

8 Click the Pre-Processing tab and fill in the fields to specify the pre-processing actions
you want Trading Networks to perform for documents that meet the criteria specified
in this processing rule. By default, Trading Networks checks all pre-processing
actions.
For more information about pre-processing actions for XML documents, see
“Specifying Pre-Processing Actions for TN XML Document Type” on page 242. For
more information about pre-processing actions for flat file documents, see “Pre-
Processing Actions in the TN Flat File Document Type” on page 302.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 355
15 Defining and Managing Processing Rules

For this Pre-Processing


tab parameter… Specify…

Verify Digital Signature Whether you want Trading Networks to verify the digital
signatures of documents. Select one of the following:
 Defer to Document Type to use the Verify setting that is
specified in the TN document type for the document.
 Verify digital signature to always verify digital signatures
or digitally sign documents that Trading Networks
processes with this processing rule.
 Do not verify digital signature to never verify digital
signatures or digitally sign documents that Trading
Networks processes with this processing rule.
Validate Structure Whether you want Trading Networks to validate the
structure of documents. Select one of the following:
 Defer to Document Type to use the Validate setting that is
specified in the TN document type for the document.
 Validate structure to always validate the structure of the
documents that Trading Networks processes with this
processing rule.
 Do not validate structure to never validate the structure of
the documents that Trading Networks processes with
this processing rule.
Check for Duplicate Whether you want Trading Networks to determine
Document whether it already received the document. Select one of
the following:
 Defer to Document Type to use the Check for Duplicate
Document setting that is specified in the TN document
type for the document.
 Use built-in services to check for duplicate document of
XML or flat file documents against a Trading
Networks built-in service.
If you select Use built-in services to check for duplicate
document, select whether you Trading Networks
should use the: Document ID only; both the Document ID
and sender; the Document ID, sender and receiver; or the
Document ID, sender and document type.

356 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

For this Pre-Processing


tab parameter… Specify…

 Use custom services to check for duplicate document


against a custom duplicate checking service.

 To create a new custom duplicate service, click


New service.

 To select an existing duplicate service, click Find


Service to browse the IS namespace to locate the
one you want to use. Click the Edit Service button if
you want to modify the service.
 To edit an existing custom duplicate service, click
on the Edit Service button.
For more information about creating a duplicate
checking service, “Creating a Duplicate Document
Check Service” on page 333.
 Do not check for duplicate document to never check the
uniqueness of the documents that Trading Networks
processes with this processing rule.

Note: There could be performance issues if you choose to


use custom services for duplicate checking based on the
logic in the service you select.

Save Document to Whether you want Trading Networks to save a copy of


Database document content to the database. Select one of the
following:
 Defer to Document Type to use the Save Document to
Database setting that is specified in the TN document
type for the document.
 Save to always save a copy of the document contents,
attributes, and/or activity log information that Trading
Networks processes with this processing rule.
If you select Save, select whether you want to save the
document only if it is unique. Select one of the
following:
 all documents—to save the selected information for
all documents regardless of whether they are
unique.
 only unique documents—to save the selected
information for documents only if they are unique.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 357
15 Defining and Managing Processing Rules

For this Pre-Processing


tab parameter… Specify…

Select the information you want to save to the database


by specifying the following:
 Content—to save the content of the document.
 Attributes—to save the custom attributes of the
document.
 Activity Log—to save activity log criteria relative to
the document.
When you select the Save option, Trading Networks
displays the above three items (Content, Attributes, and
Activity Log) by default.
 Do not save to never save the document content and
attributes of the documents that Trading Networks
processes with the processing rule.

Note: If you do not select to save the document content and


Trading Networks is to use a delivery option that requires
document content to be saved (e.g., if you want to deliver a
document via a queue), Trading Networks will bypass
reliable delivery and invoke the specified delivery service
once.

9 Click the Action tab and select one or more of the following processing rule actions.
The default for a new processing rule is to have all five actions enabled. To disable a
processing rule action, deselect the appropriate check box in the Enable column on the
left.
When you select a processing rule action, Trading Networks displays the
corresponding panel for each action on the right side of the screen. Complete your
selections for each processing rule action as explained below.

Important! If you select more than one action, Trading Networks performs the
actions in the order they are listed on the Processing Rules screen. For example, if
you select to execute a service, send an alert e-mail message, and deliver the
document to the receiver, Trading Networks performs the actions in that specific
order. For more information, see “Processing Rule Actions” on page 333.

 Execute a service. Specify the service you want Trading Networks to invoke for the
document and how you want Trading Networks to invoke the service. Optionally,
you can also hardcode input parameters for the service.

358 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

For more information about the Execute a service processing rule action,
see“Action 1—Execute a Service” on page 334. If you are using large document
processing, see “Creating Services that Recognize Large Document Handling” on
page 512.

a Perform one of the following to specify the service you want Trading
Networks to invoke for the processing action:

 To specify an existing service, click Find Service to browse the services


and select the one you want to use.

 To create a new service, click New Service (folder with yellow highlight)
to open the Developer to create the service. For more information about
creating services, see Developing Integration Solutions: webMethods
Developer User’s Guide.
b Specify how to invoke the service:
 To invoke the service synchronously, select synchronous.
 To invoke the service asynchronously, select asynchronous.
 To invoke the service asynchronously and use a service execution task,
select service execution task.
c To set inputs for the service, click Set Inputs. Trading Networks displays the
input parameters for the service. Type in values for the parameters you
want to hardcode an input value. After specifying inputs, click OK.
d If you need to update the service, click Edit Service. Trading Networks opens
the Developer from which you can update the service.

 Alert E-mail—Compose an e-mail message to send to a specified contact. Specify


the recipient, subject line, and body of the e-mail message in the To, Subject, and
Body fields, respectively.
For more information about the Alert E-mail processing rule action, see “Action 2—
Send an Alert E-mail” on page 341.

For this Alert


e-mail field… Specify...

To One of the following addresses:


 webMethods Administrator to send the e-mail to the
webMethods administrator.
 Sender to send the e-mail to a sender contact. Then, select the
contact type from the list.
 Receiver to send the e-mail to a receiver contact. Then, select
the contact type from the list.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 359
15 Defining and Managing Processing Rules

For this Alert


e-mail field… Specify...

 E-mail address to specify a specific address. Then, specify the


e-mail address.
For more information on these fields, see “Recipient of the
E-mail Message” on page 341.
Subject Type a character string for the subject of your e-mail. There are
no limits to the length or the characters you can specify.
Body Type a character string for the body of your e-mail. There are no
limits to the length or the characters you can specify. You can
include output template tags to create a dynamic message.
To use a larger input window to specify the body, click Expand.
For more information on this field, see “Body of the E-mail
Message” on page 343.

 Change User Status—Specify the user status you want to associate with the
document. In the Change to field, specify a character string containing 1-255
characters. There is no restriction on the characters you can use.
For more information about the User Status processing rule action, see “Defining a
Processing Rule Based on a Saved Document” on page 362.
 Deliver Document By—Specify the delivery method you want to use to deliver the
document.
For more information about the Deliver Document By processing rule action, see
“Action 4—Deliver the Document to the Receiver” on page 344

Select this Deliver


Document By
field… For...

Queue for polling Trading Networks queues a document for polling. For
more information, see “Defining Queue for Polling” on
page 390.
Receiver’s The delivery method that is identified as the receiving
Preferred Protocol partner’s preferred delivery method. This preferred
delivery method can be an immediate delivery or queued
for polling.
Immediate Delivery Specify an immediate delivery method from the list.
For more information, see “Immediate Delivery” on
page 345.

360 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

Select this Deliver


Document By
field… For...

Scheduled Delivery Specify the scheduled delivery queue to use from the list.
Scheduled Delivery indicates that documents matching the
processing rule will not be delivered immediately, but will
be queued and delivered later by scheduled delivery.
The scheduled delivery queue can be a public or private
queue (Receiver’s queue). Select the public queue from the
list of registered public queues. Select Receiver’s queue to
place documents that match this processing rule in the
receiving partner’s selected queue. The next time Trading
Networks runs a scheduled delivery service and reads
documents from the specified queue, all documents in that
queue will be delivered.
For more information about queues and scheduled
delivery, see “Scheduled Delivery” on page 347 and
“About Scheduled Delivery Queues” on page 378.
Important! If you select the Scheduled Delivery processing
action, you must use the Save Document to Database pre-
processing action. If you do not save the document,
Trading Networks maintains no information about this
document after it processes the document.

 Respond With —Specify the message you want to return to the caller that sent the
document and the content type of the message.
For more information about the Respond With processing rule action, see
“Action 5—Respond With a Message” on page 349.

For this Respond


With field… Type…

Content type The content type of the message in the Content type field. For
example, if the message is and XML document, type
“text/xml”.
Message The message in the Message field. Specify a character string.
There are no limits to the length or the characters you can
specify. You can include output template tags to create a
dynamic message.
To use a larger input window to specify the message, click
Expand.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 361
15 Defining and Managing Processing Rules

10 Click OK. Trading Networks closes the Processing Rule Details screen, and saves all
changes you have made to processing rules. This includes saving all new rules you
added, rules you changed, rules you disabled or enabled, and all changes you made
to the order of the rules.

Defining a Processing Rule Based on a Saved Document


You can have Trading Networks create a processing rule based on a document that you
have saved in the Trading Networks database. When Trading Networks creates the
processing rule, it sets the criteria, extended criteria, pre-processing actions, and actions
as follows:

Processing Rule
Tab How Trading Networks Defines the Information on the Tab
Criteria Trading Networks sets the processing rule criteria as follows:
 Sender criterion—Set to the sender that is associated with the
document; that is, either the sender identified within a
document or unknown.
 Receiver criterion—Set to the receiver that is associated with
the document; that is, either the receiver identified within a
document or unknown.
 Document type criterion—Set to the TN document type that
was used for the document or unknown if it the document did
not match a TN document type.
 User status criterion—Set to the value of the user status that is
associated with the document, if any.
Extended Criteria Trading Networks does not set any extended criteria.
Pre-Processing Trading Networks sets the pre-processing actions as follows:
 Verify digital signature—Set to always verify the digital
signature of the document.
 Validate structure—Set to always validate the structure of the
document.
 Check for duplicate document—Set to use the setting in the
TN document type for the duplicate check pre-processing
action.
 Save document to database—Set to always save a copy of the
document content, attribute, and/or activity log information.
Action Trading Networks sets the processing action to ignore the
document.

362 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

You can make any changes to the criteria, extended criteria, pre-processing actions, or
processing actions.

To define a processing rule based on a saved document

1 From Trading Networks Console, use the Transaction Analysis screen to display the
sample document that you want to use. Select View > Transaction Analysis.
2 Click the row containing the document that you want to view.
3 Select Transactions > Create Processing Rule.
4 To change the criteria, select the Criteria tab; then, update the settings as you want. For
information about how to update the settings, see step 6 on page 352.
5 To change the custom attribute (extended) criteria, select the Extended Criteria tab; then,
update the settings as you want. For information about how to update the settings,
see step 7 on page 355.
6 To change the pre-processing actions, select the Pre-Processing tab; then, update the
settings as you want. For information about how to update the settings, see step 8 on
page 355.
7 To change the processing actions, select the Action tab; then, update the settings as you
want. For information about how to update the settings, see step 9 on page 358.
8 Click OK. Trading Networks saves the processing rule and closes the Processing Rule
Details screen.

Note: Trading Networks saves the new rule at the top of the list of processing rules.
For instructions on how to move the processing rule to another position in the list, see
“Ordering the Processing Rules” on page 364.

Setting Up a Default Processing Rule


Trading Networks is shipped with a default processing rule that has the name Default rule.
The criteria of this processing rule matches a document that has any sender, any receiver,
any TN document type, any user status, and may have errors. The default rule specifies
no extended criteria. In other words, any document that Trading Networks receives will
meet the criteria of the default processing rule.
The pre-processing actions in the default processing rule indicate that Trading Networks
should use the settings in the TN document type. The processing action is to change the
user status of the document to “IGNORED”.
You can update the default processing rule to change any settings. You should not change
the criteria. However, you might want to update the pre-processing and processing
actions. If you do update the default processing rule, make sure that it remains last in the
full, unfiltered processing list. For more information about ordering processing rules, see
“Processing Rules Order” on page 318.
Use the following procedure to update and set up your default processing rule.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 363
15 Defining and Managing Processing Rules

To update the default processing rule

1 In Trading Networks Console: View > Processing Rules.


2 Double-click on the row for the default processing rule that is named Default rule. The
default processing rule is listed last (on the bottom of the full unfiltered list).
3 To update the pre-processing actions, click the Pre-Processing tab. Then, update the
pre-processing actions. For information about what you can specify, see step 8 on
page 355.
4 To update the processing actions, click the Action tab. Then, update the processing
actions. For information about what you can specify, see step 9 on page 358.

Note: If you do update the Default rule, make sure that it remains last in the full,
unfiltered processing list.

5 Click OK. Trading Networks closes the Processing Rule Details screen and saves the
changes to the processing rule.

Ordering the Processing Rules


The order in which you list your processing rules on the Processing Rules screen is
important. For each document, Trading Networks matches document information
against the criteria that is specified in a processing rule. Trading Networks matches
documents against processing rules in the order the rules are listed on the Processing
Rules screen. It uses the first processing rule that matches to process the document.
Because Trading Networks looks for processing rules in this order, you should keep rules
with specific criteria before rules with general criteria. The default processing rule should
always be last. For more information about how Trading Networks works with the order
of processing rules, see “Processing Rules Order” on page 318.

Note: If you reorder processing rules, there is no “undo” function that will return the
processing rules to their original order.

Use the following procedure to order processing rules.

To order processing rules

1 In Trading Networks Console: View > Processing Rules.


2 To move a processing rule, click the rule you want to move. To move more than one
contiguous block of rules at a time, you can highlight multiple processing rules using
the <Shift> key.

Note: You can only move and reorder processing rules if their ordinals are
contiguous.

364 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

3 Click Rules > Move > Select to select the processing rule (s) you want to move.

Note: If you reorder processing rules, there is no “undo” function that will return
the processing rules to their original order.

4 Highlight the processing rule you want to move your selected rule in relation to.
5 Once you have highlighted the location, perform the following to move your selected
processing rule:

Click this... Inserts the selected processing rule...

Rules > Move > Above Above the highlighted rule


Rules > Move > Below Below the highlighted rule

Trading Networks reassigns the ordinal numbers for all affected processing rules.
Repeat this step until the processing rules are listed in the order you want. You can
order the processing rules in any direction. The default processing rule should always
be listed last. For more information, see “Processing Rules Order” on page 318.
If you want, you can test the order of your processing rules to assure you have them
in the correct order. For more information, see “Testing the Order of Processing
Rules” below.

Testing the Order of Processing Rules


You can test the order of your processing rules to assure Trading Networks selects the
correct processing rules for your documents. If you find that Trading Networks is not
using the correct processing rule, you can re-order the rules.
To test the processing rules, you must have sample documents available in your file
system. To perform a test, you select the sample document. Trading Networks performs
the following actions on the document:
 Recognizes the TN document type
 Extracts attributes as specified in the TN document type
 Determines all the processing rules the document matches
Trading Networks highlights the matching processing rules on the Processing Rules
screen. The first highlighted processing rule in the list is the one Trading Networks
would use to process the document.
Note that Trading Networks does not test the sample document against disabled
processing rules even if the Processing Rules screen is currently displaying disabled
processing rules. This means Trading Networks does not highlight the disabled
processing rules that the document would match. For more information about disabling
processing rules, see “Disabling Processing Rules” on page 373.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 365
15 Defining and Managing Processing Rules

Important! During the test, Trading Networks does not actually process the document.
That is, Trading Networks does not perform any pre-processing or processing actions
on the document.

Perform the following procedure to test the order of your processing rules.

To test the order of processing rules

1 If the Processing Rules screen is not currently displayed, in Trading Networks


Console, select View > Processing Rules.
2 Select Rules > Test. Trading Networks displays the Select Input Document dialog box.
3 From the Select Input Document dialog box, select the sample document you want to
use for the test and click Open.
Trading Networks informs you of the number of matches for which the sample
document information meets the processing rule criteria, and highlights the
corresponding processing rules.

About Querying and Viewing Processing Rules


You can use the query function of the Processing Rules screen to find and view
information about all of the processing rules in Trading Networks, including the ones
available out-of-the box and the processing rules you have created.
The Processing Rules screen contains a table that displays the processing rules from your
query results. You can select to display summary information or detailed information for
each processing rule that is listed in the table.
To find a specific processing rule, query Trading Networks for the processing rule(s) in
which you are interested. Trading Networks returns the following information in the
processing rules table:
 Processing rules that meet your search criteria in a filtered table format.
 Specific information about a selected processing rule in a summary section below the
table.
If you plan to use the same query many times, you can save the query settings. When you
want to use the same query again, you simply select that saved query. For more
information about different query functions you can perform, see Appendix A, “Queries
in Trading Networks Console”.
To set up a query and display information for viewing processing rules, specify some or
all of the following:
 Basic search criteria
 How to display Detail view information about selected processing rules.

366 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

Basic Search Criteria for Processing Rules


Use the Basic Criteria tab to search for processing rules. The basic search criteria includes
most of the basic processing rule criteria, that is, the information found on the Criteria tab
of the Processing Rules Details screen. Trading Networks searches for processing rules
that meet all search criteria that you specify.
You can use basic search criteria to select processing rules that:
 Have specified senders
 Have specified receivers
 Are of a specified TN document type
 Have a specified user status
 Have a specified processing rule name
 Were modified in a specified time period
 Have a specified ordinal number

Detail View of Processing Rules


After Trading Networks selects the processing rules that match the basic search criteria
that you specify, it displays the filtered results of your processing rule query. Trading
Networks displays the query results in the processing rules table, which lists the
requested processing rules information.
You can customize this filtered processing rules table to indicate the columns you want
Trading Networks to display and how you want the rows sorted using the options on the
Detail View tab. Each column corresponds to basic information that Trading Networks
maintains about a processing rule: ordinal number, processing rule name, sender,
receiver, TN document types, user statuses, and if a processing rule is enabled.

Finding and Viewing Processing Rules


Use the following procedure to find and view processing rule(s).

To find and view a specific processing rule

1 In Trading Networks Console: View > Processing Rules.


Trading Networks displays the last query run on the Trading Networks Console.

2 Select Run Query on the toolbar. Trading Networks displays the processing rules
table.
3 Perform one of the following to view processing rule information from the table:

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 367
15 Defining and Managing Processing Rules

 To see summary information for a processing rule:


With your cursor, single click on the selected row.
Trading Networks displays corresponding summary information about the
highlighted processing rule in a summary section below the processing rules
table. The summary information contains: the processing rule name, description,
and processing rule criteria for the selected processing rule.
 To see the detailed information for a specific processing rule:

a With your cursor, double click on the row containing the processing row
you want more detailed information about. Trading Networks displays the
Processing Rule Details screen for the selected processing rule.
b On the Processing Rule Details screen, you can:
1 View the information. For more information about the tabs and fields
on this screen, see “Defining Processing Rules” on page 350.
2 Edit the information. For more information on how to change the
information on the Processing Rule Details screen, see “Updating
Processing Rules” on page 372.

 To change the display format of the processing rules table:

a Select Show Query on the toolbar. Trading Networks displays the Basic
Criteria and Detail View tabs.
b Go to step 6 to change the table format using the Detail View tab.

4 If you cannot find the processing rule you are looking for, you can perform a more

detailed query to refine the results on the processing rules table. Select Show Query
on the toolbar. Trading Networks displays the Basic Criteria and Detail View tabs.
5 To narrow down the list of processing rules from which to choose, select the Basic
Criteria tab and fill in the fields to specify basic search criteria. To indicate that you
want to use one or more of the basic search criteria, select the check box next to each
criterion you want to use. Then fill out the corresponding information as follows.

368 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

For this Basic


Criteria tab
parameter… Select the check box and specify…

Sender The sender of the processing rule you want to view.


 Optionally, select Perform Implicit Matching to implicitly
expand the query results to reflect group membership of
your selected sender(s).
For example, if you select a sender group (Group A), the
query returns all rules where any of the following conditions
are met:
 The sender is Group A
 The sender is a member of Group A
 The rule has a sender criteria of Any (that is, where the
processing rule sender was set to Any in the Criteria tab).
For more information about the Criteria tab, see step 6 on
page 352.
If you do not select this option, the query returns only those
rules where the sender is Group A.
Similarly, if you select an individual sender (Partner 1), the
query returns all rules where any of the following conditions
are met:
 The sender is Partner 1
 The sender is any group that Partner 1 is a member of
 The rule has a sender criteria of Any
If you do not select this option, the query returns only those
rules where the sender is Partner 1.

 To specify one or more senders, click the Select Profile(s)


button or the Select Profile Group(s) button. Select the
individual sender(s) and/or sender group(s) from the Partner
Selection Dialog or the Profile Group(s) Dialog. For more
information about the Select Profile(s)... or the Select Profile
Group(s) button, see “Selecting TN Document Types” on
page 33.
Receiver The receiver of the processing rule you want to view.
 Optionally, select Perform Implicit Matching to implicitly
expand the query results to reflect group membership of
your selected receiver(s). This option works the same way it
works for sender queries.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 369
15 Defining and Managing Processing Rules

For this Basic


Criteria tab
parameter… Select the check box and specify…

 To specify one or more receivers, click the Select Profile(s)


button or the Select Profile Group(s) button. Select the
individual receiver(s) and/or receiver group(s) from the
Partner Selection Dialog or the Profile Group(s) Dialog. For
more information about the Select Profile(s) or the Select Profile
Group(s) button, see “Selecting TN Document Types” on
page 33.
Document Type The TN document type of the documents processed with this
processing rule.
 Select Includes rules where document type is “Any” to search for
processing rules that were used for any documents
regardless of the TN document type. That is, where the
processing rule TN document type was set to Any in the
Criteria tab. For more information about the Criteria tab, see
step 6 on page 352

 To specify a TN document type, click the Select Document


Type button. Select the TN document type from the
Document Type Selection Dialog.
User Status The user status of the documents that processed by this
processing rule.

 To specify a user status for the query, click Add New; then,
type the user status in the newly added row.
 To remove a user status from a query, select the row
containing the user status you want to delete and then click
Delete Selected.
Name The name of the processing rule. Type in a character string
contained in the processing rule name.
You can use the pattern-matching characters “%” in the
processing rule name search. For example
Type this: To find:

%str Any string beginning with "str"


str% Any string ending with "str"
str%str Any string beginning and ending with "str"

370 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

For this Basic


Criteria tab
parameter… Select the check box and specify…

Last Modified The time Trading Networks last updated the processing rule
Time either when the processing rule was created or last updated.
Select an entry from the list.
To specify a date range, select Custom from the list. Then specify
dates in the Beginning and Ending fields. You can type in a date
value, or click Select Date to open a dialog that allows you to
select the date from a calendar.
Ordinals The ordinal for the processing rule that you are searching for.
The ordinal corresponds to the order placement where Trading
Networks has assigned the rule you are searching for in the
processing rules list.
You can specify an ordinal range by using the From and To fields
to indicate the beginning and end of the range.

6 Select the Detail View tab and fill in the fields to specify how Trading Networks
displays information in the processing rules table.
a In the Display Column panel, check each field that you want Trading Networks to
include in the Detail view. Trading Networks displays a column for each checked
field. Trading Networks always displays the Ordinals and Name columns. Trading
Networks displays the Senders and Receivers columns by default.
b In the Search Order panel, select the search order that you want Trading Networks
to follow when performing a query. To change the search order, use the up and
down buttons.

Select this... To do this...

Move a search criteria up, select the criteria you want to have
precedence from the Search Order list and then click .
Move a search criteria down, select the criteria you want to have
precedence from the Search Order list and then click .

For more information about the Detail view, see “Detail View of Processing Rules” on
page 367.

7 Select Run Query on the toolbar. Trading Networks displays the processing rules
table with the results from the refined query.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 371
15 Defining and Managing Processing Rules

8 Select the processing rule you want from the Processing Rules table on the bottom
portion of the screen.
 For more information about the tabs and fields on this screen, see “Defining
Processing Rules” on page 350.
 For more information on how to change the information on the Processing Rule
Details screen, see “Updating Processing Rules” on page 372.

Managing Processing Rules


The following tables lists the tasks you can perform against processing rules:

Task See page...


“Updating Processing Rules” 372
“Disabling Processing Rules” 373
“Enabling Processing Rules” 373
“Deleting Processing Rules” 373

Updating Processing Rules


To update a processing rule, perform the following procedure.

To update a processing rule

1 In Trading Networks Console: View > Processing Rules.


2 Click the row containing the processing rule you want to update.
3 Select Rules > Edit.
4 To update the name, type a new name in the Name field. You can specify 1-64
characters. There is no restriction to the characters that you can use.
5 To update the description, type a new description in the Description field. You can
specify 1-256 characters. There is no restriction to the characters that you can use.
6 To update the criteria for the processing rule, click the Criteria tab. Then, update the
fields. For information about what you can specify, see step 6 on page 352.
7 To update the extended criteria for the processing rule, click the Extended Criteria tab.
Then, update the fields. For information about how to update the settings, see step 7
on page 355.
8 To update the pre-processing actions, click the Pre-Processing tab. Then, update the
pre-processing actions. For information about how to update the settings, see step 8
on page 355.

372 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
15 Defining and Managing Processing Rules

9 To update the processing actions, click the Action tab. Then, update the processing
actions. For information about how to update the settings, see step 9 on page 358.
10 Click OK. Trading Networks closes the Processing Rule Details screen and saves the
changes to the processing rule.

Disabling Processing Rules


If you want Trading Networks to temporarily stop using a processing rule, you can
disable it. When determining the processing rule to use for a document, Trading
Networks does not match the document against processing rules that are disabled.
When you want Trading Networks to use the processing rule again, you can enable it; see
“Enabling Processing Rules” on page 373. If you no longer need the processing rule and
want to permanently remove it, you can delete it; see “Deleting Processing Rules” on
page 373.

To disable a processing rule

1 In Trading Networks Console: View > Processing Rules.


2 Click the row containing the processing rule(s) you want to disable. You can select
multiple processing rules using the <Shift> (for a contiguous block of rules) and <Ctrl>
(for more than one non-contiguous processing rule) keys.
3 Select Rules > Disable. Trading Networks places No in the Enabled column to indicate
that the processing rule is disabled.

Enabling Processing Rules


If you disable a processing rule and then later determine that you want Trading
Networks to use it again, you can enable it.

To enable a processing rule

1 In Trading Networks Console: View > Processing Rules.


2 Click the row containing the processing rule(s) you want to enable. You can select
multiple processing rules using the <Shift> (for a contiguous block of rules) and <Ctrl>
(for more than one non-contiguous processing rule) keys.
3 Select Rules > Enable. Trading Networks places Yes in the Enabled column to indicate
that the processing rule is enabled.

Deleting Processing Rules


If you no longer need a processing rule, you can delete it. This is an actual delete of the
processing rule. The processing rule is not deactivated; it is removed from the Trading
Networks system. You will not be able to recover it later.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 373
15 Defining and Managing Processing Rules

To delete a processing rule

1 In Trading Networks Console: View > Processing Rules.

2 Select Run Query on the toolbar. Trading Networks displays the processing rules
table.
If you want to delete a processing rule that is currently disabled, make sure that
disabled processing rules are visible on the processing rules table. To do so:

a Select Show Query on the toolbar. Trading Networks displays the Basic Criteria
and Detail View tabs.
b Select the Detail View tab.
c In the Display Column panel, check the Enabled field so that Trading Networks
includes it in the Detail view.

d Select Run Query on the toolbar. Trading Networks updates the processing
rules table. Now you can see the disabled processing rules (No in the Enabled
column).
3 Click the row containing the processing rule(s) you want to delete. You can select
multiple processing rules using the <Shift> (for a contiguous block of rules) and <Ctrl>
(for more than one non-contiguous processing rule) keys.

Important! This is an actual delete of the processing rule. The processing rule is not
deactivated; it is removed from the Trading Networks system. You will not be able
to recover it later.

4 Select Rules > Delete. Trading Networks confirms that you want to delete the selected
processing rule(s). Click Yes to delete.

374 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
IV Setting Up Document Delivery
 Defining and Managing Queues in Trading Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
 Creating Delivery Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 375
IV Setting Up Document Delivery

376 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
16 Defining and Managing Queues in Trading Networks

 What is a Queue? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378


 About Scheduled Delivery Queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378
 Defining Private Queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
 Defining Public Queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
 Searching for Public Queues Using My webMethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387
 Deleting Public Queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388
 Changing the State of a Private Queue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388
 Changing the State of a Public Queue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
 About Queue for Polling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
 Defining Queue for Polling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
 Viewing Documents that Are Queued for Delivery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 377
16 Defining and Managing Queues in Trading Networks

What is a Queue?
A queue in Trading Networks is a grouping of outbound documents that can be delivered
in batch. Note that a Trading Networks queue is not a queue in the traditional sense.
Instead, it is a set of rows in the Trading Networks database. When documents are placed
in a queue, Trading Networks does not deliver them immediately, rather, Trading
Networks delivers them based on a schedule defined for the queue.
Trading Networks supports queues for two different purposes— scheduled delivery and
polling.
For more information about delivery methods and queues, see Understanding webMethods
B2B: webMethods Trading Networks Concepts Guide.

About Scheduled Delivery Queues


A scheduled delivery queue is a queue for batching documents to be sent to the receiving
partners at scheduled times. You define one or more queues that Trading Networks uses
for scheduled delivery.
A scheduled delivery queue does not contain documents. Instead, it contains delivery
tasks that are associated with documents. All scheduled deliveries use reliable delivery.
Reliable delivery is a feature of Trading Networks where Trading Networks attempts to
deliver a document to a partner one or more times based on settings that you define in
the partner’s profile. To use a scheduled delivery queue for a partner, you add the
“Queue for delivery” delivery method and define the queue settings in the profile’s
delivery settings.
To have Trading Networks deliver a document using scheduled delivery, you select the
scheduled delivery method in the processing rules with the Deliver Document By
processing action.

For more information about:


 Scheduled delivery and queues, see Understanding webMethods B2B: webMethods
Trading Networks Concepts Guide.
 Delivery information on the partner’s profile, see “Delivery Settings” on page 103.
 Scheduled delivery and the Deliver Document By processing action, see “Scheduled
Delivery” on page 347.

As a result, when Trading Networks schedules a document for delivery, Trading


Networks also creates a delivery task that maintains information about the delivery of the
document. It is this delivery task that Trading Networks places in the queue.
When you define a queue for scheduled delivery, you associate a delivery schedule and
scheduled delivery service with the queue. The delivery schedule defines the times that
Trading Networks is to invoke the scheduled delivery service to deliver the batched
documents that correspond to the delivery tasks that are in the queue.

378 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
16 Defining and Managing Queues in Trading Networks

For more information about:


 Scheduled delivery services, see “What is a Scheduled Delivery Service?” on
page 394.
 Delivery tasks, see Managing B2B Integrations: webMethods Trading Networks User’s
Guide.

Types of Scheduled Delivery Queues


Trading Networks supports two types of scheduled delivery queues—private and public.

Private Queues
A private queue is a queue that contains only delivery tasks that correspond to documents
aimed for a specific receiving partner. You define private queues in the delivery settings
of a partner’s profile. The queue will only contain delivery tasks that correspond to
documents that are to be delivered to the partner defined by the profile.
For more information, see “Delivery Settings” on page 103 and “Defining Private
Queues” on page 383.

Public Queues
A public queue is a queue that can contain delivery tasks that correspond to documents
that are aimed for multiple receiving partners.
For more information, see “Defining Public Queues” on page 386.

Delivery Schedule for Queues


This section describes how often you want Trading Networks to invoke the scheduled
delivery service that is associated with a queue. When you define a scheduled delivery
queue, you also associate a delivery schedule and a scheduled delivery service with the
queue.
 The delivery schedule defines the times that Trading Networks invokes the scheduled
delivery service, which acts on the delivery tasks in the queue to deliver the
corresponding batched documents.
 The delivery service acts on the delivery tasks in the queue when and how often you
specify:
 Run Once. Trading Networks executes the delivery service a single time. For more
information, see “Using the Run Once Option” on page 380.
 Fixed Interval. Trading Networks executes the delivery service repeatedly at an
interval you specify. For more information, see “Using the Fixed Interval Option”
on page 380.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 379
16 Defining and Managing Queues in Trading Networks

Note: In the Console, this option is referred to as Simple Interval.

 Custom Interval. Trading Networks runs the delivery service on the day(s) and at
the time(s) that you specify either during a specified date range or indefinitely.
For more information, see “Using a Custom Interval Option” on page 381.

Important! Do not attempt to use the Integration Server Administrator to change the
schedule for a delivery service! If you do so, the data passed to the service will be lost
and the service will be unable to deliver documents. Use My webMethods to change
the delivery schedule and other queue settings

For more information about scheduled delivery services, see “What is a Scheduled
Delivery Service?” on page 394.

Using the Run Once Option


When you schedule a queue delivery using the Run Once option, Trading Networks
executes the delivery service one time on the date and at the time that you specify. At that
time, Trading Networks uses the scheduled delivery service to act on all the delivery
tasks in the queue.
When using the Run Once option, delivery tasks can get “stuck” in the queue. If the
scheduled delivery service fails to deliver documents associated with the delivery tasks
in the queue, the delivery tasks remain in the queue. Also, once scheduled delivery
service is invoked, Trading Networks does not act on new tasks added to the queue.
These tasks will remain in the queue with a QUEUED status. Because the queue is set up
to run the scheduled delivery service only one time, Trading Networks will not act on the
QUEUED tasks again unless you update the queue schedule.
Trading Networks includes the Run Once option for use in a development environment.

Note: If the scheduled run-time occurs when the server is not running, when you
initialize server, the server throws an exception.

Using the Fixed Interval Option


When you schedule a queue delivery using the Fixed Interval option, Trading Networks
executes the delivery service for the first time immediately after you add the delivery
task. Trading Networks continues to execute the delivery service at the interval you
specify. For example, you might want Trading Networks to execute the delivery service
every 24 hours.
By default, when you schedule a delivery service to repeat, Trading Networks bases the
repeat interval on when the task starts. For example, if you specify a repeat interval of
3600 seconds, Trading Networks starts the task and schedules the next execution for 3600
seconds after the previous execution began.

380 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
16 Defining and Managing Queues in Trading Networks

There might be times however when you want Trading Networks to wait for a delivery
service to complete execution before it starts the next scheduled execution of the service.
For example, suppose your delivery service is scheduled to run every minute, but
sometimes takes longer than that to complete. By default, Trading Networks will start the
next subsequent execution even though the previous one has not yet completed. To have
Trading Networks wait for the service to complete before beginning its next scheduled
execution, check the Do not overlap task box.
With the Fixed Interval option, there is no end date or time associated with a repeating
delivery task. Trading Networks continues to execute the delivery service until you
change the queue schedule. If you want to specify an end date or time, use a custom
interval option, described below.

Note: In the Console this option is referred to as Simple Interval.

Using a Custom Interval Option


Using a custom interval option offers the greatest flexibility for specifying when you
want Trading Networks to execute the delivery service for the queue. You can specify a
date range for when you want Trading Networks to execute the delivery service. For
example, you can define the date range so that the first run of the service is in the future.
You can also specify that you do not want an end date, which indicates that Trading
Networks will execute the delivery service indefinitely on the schedule you define.
After specifying a date range, you can specify whether you want the service to run
hourly, daily, weekly, monthly, or yearly.

Scheduled Delivery Queue States


You can manage your scheduled delivery queues by enabling, disabling, draining, and
suspending them. These actions change the state of the queue, which defines whether
Trading Networks can add delivery tasks into a queue and whether Trading Networks
can deliver the documents that correspond to the delivery tasks in the queues.

State Meaning
Enabled Enabled
Trading Networks can place delivery tasks into
IN OUT
the queue and can invoke the scheduled delivery
service to deliver the documents that are
associated with the delivery tasks in the queue.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 381
16 Defining and Managing Queues in Trading Networks

State Meaning
Disabled Disabled
Trading Networks cannot place delivery tasks
X X into the queue or deliver documents that are
associated with delivery tasks in the queue.
All delivery tasks that are in the queue when you
disable it remain in the queue. If you enable or
drain the queue, Trading Networks will once
again invoke the scheduled delivery service that
is associated with the queue to deliver the
documents that correspond to those delivery
tasks.
There are two reasons you might want to disable
a queue. 1) If the delivery service is defective and
you need to debug and fix it, or 2) if a processing
rule has been placed on the wrong queue and
you need to change the rule and/or reassign some
tasks to another queue.
When the Deliver Document By processing action of
a processing rule specifies to use a queue that is
disabled, the delivery fails because Trading
Networks cannot place the delivery task in the
queue. Trading Networks sets the delivery task
status to FAILED and logs a message to the
activity log.
Draining Draining
Trading Networks cannot place delivery tasks
X OUT
into the queue, but Trading Networks can invoke
the scheduled delivery service to deliver the
documents that are associated with the delivery
tasks in the queue.
Drain a queue if you want to empty it, so you can
delete it. You can also drain a queue to perform
maintenance changes (e.g., change queue
settings, update delivery services).
When the Deliver Document By processing action of
a processing rule specifies to use a queue that is
draining, the delivery fails because Trading
Networks cannot place the delivery task in the
queue. In this situation, Trading Networks sets
the delivery task status to FAILED and logs a
message to the activity log.

382 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
16 Defining and Managing Queues in Trading Networks

State Meaning
Suspended Suspende
Trading Networks can place delivery tasks into
IN X the queue, but Trading Networks cannot deliver
documents that are associated with delivery
tasks that are in the queue.
You might suspend a queue if a trading partner
indicates that it is temporarily unable to accept
documents.
All delivery tasks that are in the queue when you
suspend it remain in the queue. If you enable or
drain the queue, Trading Networks will once
again invoke the scheduled delivery service that
is associated with the queue to deliver the
documents that correspond to those delivery
tasks.

Defining Private Queues


To define a private queue in a partner profile, perform the following procedure.

To define a private queue

1 Search for the profile for which you want to add a private queue. If you need
procedures for this step, see “Searching for Partner Profiles” on page 156.

2 Click Edit in the row for the partner profile for which you want to add a private
queue.
3 Click the Delivery Settings tab.
4 In the DELIVERY METHODS panel, click Add Delivery Method.
5 From the Delivery Method list, select Queue for delivery.
6 Select Use Private Queue.
7 Click Edit.
8 From the Delivery Service field, select the delivery service to use with the private
queue.
9 Click the Inputs tab and fill in the inputs to the delivery service.
Select Include empty values for string types? if you want the input parameters to include
fields that you leave blank. If you select this option and you leave a field blank,
Trading Networks passes an empty string for the value. If you do not select this
option and you leave a field blank, the field is not included in the inputs.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 383
16 Defining and Managing Queues in Trading Networks

10 From the State list, select the state of the queue (Enable, Disable, Drain, or Suspend
Delivery). For a description of these states, see “Scheduled Delivery Queue States” on
page 381.
11 Click the Schedule tab and from the Process Queue list, select how often (Run Once, Fixed
Interval, Hourly, Daily, Weekly, Monthly, or Yearly) that you want Trading Networks to
invoke the delivery service to deliver documents in the queue.
12 Based on your selection from the Process Queue list, fill in the associated fields.

If you select... Specify...

Run Once In the Date and Time fields, specify the one time you want
Trading Networks to execute the delivery service. For more
information, see “Using the Run Once Option” on page 380.
Fixed Interval In the Interval fields, specify the interval of time you want
Trading Networks to wait between executions of the delivery
service. You can specify the interval in seconds, minutes, hours,
days, or weeks.
If you want Trading Networks to wait for a delivery service to
complete execution before it starts the next scheduled execution
of the service, check Do not overlap task.
When you add or update a fixed interval schedule for a queue
that is Enabled or Draining, Trading Networks invokes the service
immediately. Subsequent invokes are governed by the interval.
For more information, see “Using the Fixed Interval Option” on
page 380.
Hourly Specific times when you want Trading Networks to execute the
Daily delivery service.
Weekly
Use the DATE RANGE fields to specify the days when you want
Monthly
Trading Networks to start and end executing the service. You
Yearly
can select:
 A timeframe from the drop-down list and Trading Networks
will update the Start Date/Time and End Date/Time fields.
 Custom from the drop-down list and then update the Start
Date/Time and End Date/Time fields to specify your custom
time frame.

384 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
16 Defining and Managing Queues in Trading Networks

If you select... Specify...

Select No end date if you want Trading Networks to execute the


service for an indefinite period of time. If you specify an end
date, Trading Networks executes the delivery service at the
scheduled times until the end of the time period. All delivery
tasks added to the queue after the end date are “stuck” in the
queue. Trading Networks will not act on the queued tasks again
unless you update the queue schedule.
In addition to the DATE RANGE fields, specify the following based
on your selection:
Selection Description

Hourly Use the PROCESS QUEUE EVERY HOUR AT fields to select


the minutes of the hour that you want Trading
Networks to execute the service.
If the execution of the delivery service is long
running and runs into the next execution, you can
specify that you want Trading Networks to wait for
the service to complete before beginning its next
execution by checking the Do not overlap task check
box.
Daily Use the PROCESS QUEUE EVERY DAY AT THESE TIMES to
indicate the hours and times of the day that you
want Trading Networks to execute the service.
Select the Do not overlap task check box to prevent
execution of the service from overlapping.
Weekly Use the PROCESS QUEUE EVERY WEEK fields to specify
the days of the week that you want Trading
Networks to execute the service and the times on the
selected days that you want the service executed.
Select the Do not overlap task check box to prevent
execution of the service from overlapping.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 385
16 Defining and Managing Queues in Trading Networks

If you select... Specify...

Monthly Use the PROCESS QUEUE EVERY MONTH fields to specify


the days of the month that you want Trading
Networks to execute the service and the times on the
selected days that you want the service executed.
Select the Do not overlap task check box to prevent
execution of the service from overlapping.
Yearly Use the Process Queue Every Year fields to specify
the months, days of the month, and days of the week
you want Trading Networks to execute the service
and the times on the selected days that you want the
service executed.
Select the Do not overlap task check box to prevent
execution of the service from overlapping.

13 Click OK to close the Private Queue dialog box.


14 Click OK to close the ADD DELIVERY METHOD dialog box.
15 Click Save on the Partner Profile page.

Defining Public Queues


To add a public queue to Trading Networks, perform the following procedure.

To define a public queue

1 In My webMethods: Administration > Integration > B2B > Public Queues.


2 Click Add Queue.
Trading Networks displays the Public Queue Information panel.
3 In the Name field, specify a name for the queue. You can specify a string of up to 225
alphanumeric characters. Trading Networks displays this name when listing
available public queues.
4 From the Delivery Service field, select the delivery service to use with the public queue.
Out-of-the-box, Trading Networks provides a single scheduled delivery service, Batch
FTP (wm.tn.transport:batchFtp service), which uses FTP to deliver documents to a single
destination. If you created a custom delivery service and registered them with
Trading Networks, then you can associate your custom scheduled delivery services
with the queues that you define. For more information about scheduled delivery
services, see “What is a Scheduled Delivery Service?” on page 394. For more
information about custom delivery services, see “Adding and Registering New
Delivery Services” on page 405.

386 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
16 Defining and Managing Queues in Trading Networks

5 In the State field, select the state of the queue (Enable, Disable, Drain, or Suspend
Delivery). For a description of these states, see “Scheduled Delivery Queue States” on
page 381.
6 Click the Inputs tab and fill in the inputs to the delivery service.
Select Include empty values for string types? if you want the input parameters to include
fields that you leave blank. If you select this option and you leave a field blank,
Trading Networks passes an empty string for the value. If you do not select this
option and you leave a field blank, the field is not included in the inputs.
7 Click the Schedule tab and from the Process Queue list, select how often (Run Once, Fixed
Interval, Hourly, Daily, Weekly, Monthly, or Yearly) that you want Trading Networks to
invoke the delivery service to deliver documents in the queue.
For additional instructions for how to complete the fields on the Schedule tab, see
step 12 on page 384.
8 Click Save.

Searching for Public Queues Using My webMethods


The following table listsMy webMethods tasks related to searching for public queues and
where to find more information about each task.

Task For more information, see...


Search for public with queue names that “Performing a Keyword Search for
contain keywords that you specify. Public Queues” on page 388
Set the following display options for how Working with My webMethods guide
Trading Networks displays search results on
the Administration > Integration > B2B > Public
Queues page:
 The number of rows that you want Trading
Networks to display on each page of the
search results
 How the search results are sorted
 The columns displayed and the order of the
columns
Save searches for public queues. Working with My webMethods guide
Re-execute saved searches for public queues. Working with My webMethods guide

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 387
16 Defining and Managing Queues in Trading Networks

Performing a Keyword Search for Public Queues


Use a keyword search to find public queues based on the queue names.

To perform a keyword search for public queues

1 In My webMethods: Administration > Integration > B2B > Public Queues.


2 Click the Keyword tab if it is not already displayed.
3 In the text box, type the keywords that are contained in the queue name.
If you leave the text box blank, Trading Networks searches for all queues that you are
authorized to view. For more information about how to specify keywords, see the
Working with My webMethods guide.
4 Click Go to execute the search.

Deleting Public Queues


To delete a public queue to Trading Networks, perform the following procedure.

To delete a public queue

1 In My webMethods: Administration > Integration > B2B > Public Queues.


2 If the queue you want to delete is not listed, search for the queue you want to delete.
For instructions, see “Searching for Public Queues Using My webMethods” on
page 387.
3 Select the check boxes beside the names of the queues that you want to delete.
4 Click Delete.

Changing the State of a Private Queue


To change the status of a private queue, perform the following procedure:

To change the state of a private queue

1 Search for the profile for which you want to add a private queue. If you need
procedures for this step, see “Searching for Partner Profiles” on page 156.

2 Click Edit in the row for the partner profile for which you want to add a private
queue.
3 Click the Delivery Settings tab.

388 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
16 Defining and Managing Queues in Trading Networks

4 Click Edit in the row for the Queue for delivery delivery method.
If this delivery method is using a private queue, the Use Private Queue check box is
selected in the EDIT - QUEUE FOR DELIVERY dialog box.
5 Click Edit.
6 For State, select the queue state you want: Enable, Disable, Drain, or Suspend Delivery.
7 Click OK to close the Private Queue dialog box.
8 Click OK to close the EDIT - QUEUE FOR DELIVERY dialog box.
9 Click Save to save the changes to the profile.

Changing the State of a Public Queue


To change the state of a public queue, perform the following procedure:

To change the queue state of a public queue

1 In My webMethods: Administration > Integration > B2B > Public Queues.


2 If the queue you want to update is not listed, search for the queue you want to delete.
For instructions, see “Searching for Public Queues Using My webMethods” on
page 387.

3 Click Edit in the row containing the public queue that you want to update.
4 For State, select the queue state you want: Enable, Disable, Drain, or Suspend Delivery.
5 Click Save.

About Queue for Polling


The queue for polling is an internally-defined queue that contains documents. Trading
Networks does not deliver the documents in this queue. Instead, Trading Networks waits
for a partner to poll for the documents. When a specific partner polls for documents,
Trading Networks returns all documents in the queue for which the polling partner is the
receiver. Trading Networks handles the management of the queue for polling. You cannot
enable, disable, drain, or suspend this queue. This queue is always enabled.
Your trading partners that poll your system for documents determine the method (e.g.,
HTTP) to use when requesting documents in your queue and how frequently to poll your
system for documents.
You can define the polling method (e.g., HTTP) you want to use when polling for
documents that reside in your partners’ systems and how frequently you want your
Trading Networks system to poll your partners’ systems for documents. The polling

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 389
16 Defining and Managing Queues in Trading Networks

method and polling frequency you use for a specific partner is defined in the delivery
settings of the partner’s profile. For more information about the polling information in
your partner’s profile, see “Delivery Settings” on page 103.

Defining Queue for Polling


You define queue for polling settings in delivery settings of partner profiles to indicate
how your Trading Networks polls for documents in your partners’ systems. For each
partner that you want to poll, you define the settings in that partner’s profile in the
delivery settings.
To set up your Trading Networks system so it polls for documents on a partner’s system,
perform the following

To define a queue for polling settings

1 Search for the profile you want to update; that is, the profile of the partner for which
you want to define how your system will poll for documents in that partner’s system.
If you need procedures for this step, see “Searching for Partner Profiles” on page 156.

2 Click Edit in the row for the partner profile.


3 Click the Delivery Settings tab.
4 In the SETTINGS panel, fill in the following queue for polling fields:

For this field... Specify...

Polling Method The method you want your Trading Networks system to use
access the partner’s system to request queued documents.
Polling Frequency How often you want your Trading Networks system to poll your
partner’s system for documents.

For more information about these settings, see “Delivery Settings” on page 103.
5 Click Save to save the profile.

Additional Queue for Polling Setup for webMethods for Partners


This section describes how to set up queue for polling for a server running webMethods
for Partners. If you are running webMethods Trading Networks, there is no additional
setup.

390 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
16 Defining and Managing Queues in Trading Networks

To set up Queue for polling for webMethods for Partners

1 Make sure the partner Integration Server running webMethods for Partners and the
hub Integration Server running webMethods Trading Networks have the correct
license keys (that is, the partner server uses the partner key and the hub server uses
the hub key).
2 Locate the server configuration file at <ServerDirectory>\config\server.cnf, where
ServerDirectory is the directory in which you installed the Integration Server
running webMethods for Partners.
3 In the server configuration file, ensure that the watt.server.partner property exists
and is set properly. The property should be set to the host name for the hub
Integration Server. For example, if the host name for the hub Integration Server were
“HostName,” the property would be
watt.server.partner=HostName

Note: If the watt.server.partner property is missing or set incorrectly, the partner


server will be unable to request the documents queued for it on the hub server. If
the property exists but is set incorrectly, the partner server will throw an
exception when attempting to request queued documents.

If the watt.server.partner property is missing or incorrect, add or update the


property. To do so, you need to first shut down the Integration Server running
webMethods for Partners. After you add or update the property, restart the
Integration Server.

Viewing Documents that Are Queued for Delivery


You can search for and view information about documents that are scheduled for
delivery or are in queued for polling. For instructions, see Managing B2B Integrations:
webMethods Trading Networks User’s Guide.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 391
16 Defining and Managing Queues in Trading Networks

392 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
17 Creating Delivery Services

 What is a Delivery Service? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394


 Creating an Immediate Delivery Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
 Creating a Scheduled Delivery Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
 Adding and Registering New Delivery Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 393
17 Creating Delivery Services

What is a Delivery Service?


A delivery service is a service that webMethods Trading Networks (Trading Networks)
invokes to deliver documents to trading partners. Trading Networks supports two types
of delivery services—immediate and scheduled delivery.

Note: Use the Trading Networks tn.transport.user property to indicate the user account to
use when invoking a delivery service. By default, Trading Networks uses the
Administrator user account to invoke services. For more information about this
property, see “tn.transport.user” on page 496.

For more information about immediate and scheduled delivery services, see Understanding
webMethods B2B: webMethods Trading Networks Concepts Guide.

What is an Immediate Delivery Service?


An immediate delivery service is a service that acts on a single document to deliver the
document to a single partner. Trading Networks invokes an immediate delivery service
when the Deliver Document By processing action in a processing rule indicates to use an
immediate delivery method.
For each immediate delivery method that you create using the delivery methods that
Trading Networks provides, Trading Networks automatically creates an immediate
delivery service. For built-in immediate delivery methods, Trading Networks provides
the delivery services by default. You can create immediate delivery services that deliver
documents in ways not provided with Trading Networks, that is, you can do the
following:
 Add new delivery services—When you add a new immediate delivery service, you, in
effect, add new immediate delivery methods. The new delivery methods you add by
adding new immediate delivery services are available for you to select when you
define processing rules; Trading Networks displays the immediate delivery methods
you add on the Processing Rules screen in the Immediate Delivery list of the Deliver
Document By processing action.
 Replace existing delivery services—If the immediate delivery services for the immediate
delivery methods that you created do not meet your needs, you can create new
delivery services to replace the default services.

What is a Scheduled Delivery Service?


A scheduled delivery service is a service that acts on multiple documents to deliver those
documents to one or more partners. Trading Networks uses scheduled delivery services
during scheduled delivery. Scheduled delivery is a way to batch multiple documents that
are acted on (delivered) at scheduled times.

394 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
17 Creating Delivery Services

You associate scheduled delivery services with delivery queues. You can associate a
single scheduled delivery service with one or more delivery queues. Delivery queues also
have delivery schedules associated with them. Trading Networks invokes the scheduled
delivery service at the times dictated by the delivery schedule.
Trading Networks places delivery tasks in the queues. When the Deliver Document By
processing action indicates to use scheduled delivery (i.e., a queue name or Receiver’s
Queue), Trading Networks creates a delivery task for the document that is to be delivered
and places the delivery task into the queue. When the schedule associated with the queue
indicates, Trading Networks invokes the scheduled delivery service. The scheduled
delivery service retrieves the list of delivery tasks that are in the queue. It is the
responsibility of the scheduled delivery service to retrieve the document, attempt to
deliver the document, and update the status of the delivery task to indicate whether the
delivery was successful or not.

Note: The queue is not a queue in the traditional sense. It is a set of rows in the Trading
Networks database. Each queued delivery task that is associated with a document is a
row in the same table of the Trading Networks database.

Trading Networks provides a single scheduled delivery service, the wm.tn.transport:batchFtp


service, which uses FTP to deliver documents to a single destination. This service opens a
connection, delivers all the documents, and then closes the connection. If you want to
deliver batches of documents in a different way, you can create custom scheduled
delivery services and register them with Trading Networks.
After you add new scheduled delivery services, you can define your delivery queues to
use your custom scheduled delivery services; Trading Networks displays the scheduled
delivery services in the lists of services that you can associate with a queue. For more
information about queues, see Chapter 16, “Defining and Managing Queues in Trading
Networks”.

Creating an Immediate Delivery Service


An immediate delivery service must handle a single document that is passed to the
service as input.
Your immediate delivery service must implement, at a minimum, the input and output
variables that are defined in the specification wm.tn.rec:DeliveryServiceSignature. To view this
specification, use the webMethods Developer. The specification is located in the WmTN
package.
The input value defined by the specification is the document to be delivered. The output
values specified by the specification indicate the outcome of the service. Your service
must provide values for the serviceOutput output variable. The serviceOutput variable is
an IS document (IData object) that contains the following String variables:

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 395
17 Creating Delivery Services

Variable in the
serviceOutput Specify…
status Whether the service executed successfully or unsuccessfully. Your
service must provide one of the following values:
Value Meaning
success The delivery of the document was successful.
fail The delivery of the document failed.
statusMessage Optional. A delivery-specific message about the outcome of the
delivery.
transportTime Optional. The number of milliseconds it took for the service to
deliver the document.
output Optional. Return information from the delivery service, for
example, response bytes received from an HTTP post.

For information about creating the service, see Developing Integration Solutions:
webMethods Developer User’s Guide.

Important! Do not save your immediate delivery service in the WmTN package or any
other webMethods package that contains webMethods software. If you do, when you
upgrade the webMethods software, your service will be lost.

Note: If you are using large document processing, see “Creating Services that
Recognize Large Document Handling” on page 512.

Retrieving the Content of a Document for Immediate Delivery


To obtain the document content that needs to be delivered, use the
wm.tn.doc:getDeliveryContent service. You pass this service the BizDocEnvelope that represents
the document and the service returns the delivery content.
You can use the wm.tn.doc:getDeliveryContent service regardless of whether Trading
Networks considers the document large or not. This service determines whether to
handle the document as large. If the document is not considered large, the service returns
the delivery content as a byte array. If the document is considered large, the service
returns the delivery content as a Java InputStream object.

Note: Trading Networks cannot handle large documents that are delivered using the
web service delivery method.

For more information about handling of large documents, see Appendix F, “Large
Document Handling”. For more information about the wm.tn.doc:getDeliveryContent service
and the structure of the BizDocEnvelope (wm.tn.rec:BizDocEnvelope), see the webMethods
Trading Networks Built-In Services Reference.

396 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
17 Creating Delivery Services

Creating a Scheduled Delivery Service


A scheduled delivery service must act on a batch of delivery tasks. Your scheduled
delivery service must retrieve each delivery task and act on it individually. It is the
responsibility of the scheduled delivery service to retrieve each delivery task, deliver the
document associated with the delivery task, and update the status of the delivery task.
To perform these functions, your scheduled delivery service might have to take other
actions as well. For example, your scheduled delivery service might need to open a
connection to a remote machine before it delivers documents and close the connection
after it has delivered all the documents. Trading Networks provides a single scheduled
delivery service, the wm.tn.transport:batchFtp service, which you can use as a reference
implementation to write your own scheduled delivery schedule. (The
wm.tn.transport:batchFtp service opens a connection, delivers all the documents, and then
closes the connection.)

Important! Do not save your scheduled delivery service in the WmTN package or any
other webMethods package that contains webMethods software. If you do, when you
upgrade the webMethods software, your service will be lost.

Note: If you are using large document processing, see “Creating Services that
Recognize Large Document Handling” on page 512.

Inputs and Outputs for a Scheduled Delivery Service


When you create your scheduled delivery service, define the inputs and outputs to use
for the variables described in this section.

Inputs for Scheduled Delivery Service


The following table lists the input variables that your scheduled delivery service should
expect:

Variable Data Type Description


queue String The name of the queue that contains the delivery tasks
on which your scheduled delivery service is to act;
this is the only required input variable.
Your scheduled delivery service will use this value as
input to the wm.tn.queuing:getQueuedTask service to
retrieve a delivery task. For more information, see
“Required Logic to Include in the Scheduled Delivery
Service” on page 398.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 397
17 Creating Delivery Services

Variable Data Type Description


other n/a Define any other input variables that your scheduled
variables delivery service requires. Other variables that you
need to define typically depend on the transport
protocol your service will use to deliver the
documents. For example, for a service that uses FTP,
an additional input variable would be the directory in
which to place the documents that are being
delivered.
When you define a public or private queue, Trading
Networks allows you to set these variables. When
Trading Networks invokes your delivery service, it
will supply the inputs you specify when you defined
the queue. For more information about defining
public queues, see “Defining Public Queues” on
page 386.

Outputs for Scheduled Delivery Service


The following table lists the output variables that your scheduled delivery service must
return:

Variable Data Type Description


logMsg String Text that describes the result of the scheduled delivery
service.
This is not the status of acting on a single delivery task
in the queue; it is the result of the scheduled delivery
service as a whole.

Retrieving the Content of a Document for Scheduled Delivery


You retrieve the document content that needs to be delivered by a scheduled delivery
service in the same manner that you retrieve delivery content for an immediate delivery
service. For more information, see “Retrieving the Content of a Document for Immediate
Delivery” on page 396.

Required Logic to Include in the Scheduled Delivery Service


The following table lists actions that you must include in all scheduled delivery services
and the built-in service to use to accomplish each action.

398 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
17 Creating Delivery Services

Action Built-in service to use


Retrieve a delivery wm.tn.queuing:getQueuedTask
task from a queue
When you invoke this service, you pass it the name of the queue
from which you want a delivery task and the service returns the
oldest task in the queue. When you retrieve a task from the queue,
the task is not removed from the queue. Instead, the status of the
delivery task is updated from QUEUED to DELIVERING.
How the delivery task is represented depends on whether your
scheduled delivery service is written as a flow service or a Java
service:
For this type of
service… Task represented as...

Flow service IS document (IData object) that has a structure


defined by the wm.tn.rec:Task IS document type
Java Service com.wm.app.tn.delivery.GuaranteedJob object
The task that is returned includes the document to be delivered.
For more information about the wm.tn.rec:Task IS document type,
see the webMethods Trading Networks Built-In Services Reference. For
more information about the com.wm.app.tn.delivery.GuaranteedJob
object, see the webMethods Trading Networks Java API Reference
documentation.

Note: The wm.tn.queuing:getQueuedTask service places the


timeDequeued variable in the pipeline. Trading Networks uses this
variable to calculate the amount of time it takes to transmit the
document. Do not update or drop this variable from the pipeline.

Typically, your scheduled delivery service should invoke the


wm.tn.queuing:getQueuedTask service and process delivery tasks until
the queue is empty; that is, until you have processed each of the
QUEUED delivery tasks in the queue. When the queue is empty,
the wm.tn.queuing:getQueuedTask service returns null for the task
variable.
Deliver the Use one of the built-in services in the pub.client folder or one of your
document own custom transport services.
After your scheduled delivery service retrieves a delivery task, it
should deliver the document that is returned with the task
information.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 399
17 Creating Delivery Services

Action Built-in service to use


Update the delivery wn.tn.queuing:updateQueuedTask
task
After your scheduled delivery service attempts to deliver the
document that is associated with a delivery task, the service must
update the task to indicate whether the delivery was successful or
not.
To indicate the outcome of the delivery, set the following input
variables to the wm.tn.queuing:updateQueuedTask service:
Variable Setting

status If the delivery attempt was successful, set the


status variable to success
If the delivery attempt was unsuccessful, set
the status variable to fail
statusMsg If the transport protocol that your scheduled
delivery service uses returns a text string
message, set statusMsg to the value of the
returned text string.
serviceOutput Optional. To save pipeline data from the
delivery service, place the data in the
serviceOutput variable.
The wm.tn.queuing:updateQueuedTask service uses the returned status
to update the delivery task status:
 If status is success, the service updates the task status to the
DONE.
 If status is fail, the service updates the task’s retry count.
 If the maximum retry count has not been reached, the
service updates the task status to QUEUED, which
indicates that the next time the queue schedule invokes
your delivery service, this delivery task will be available to
retrieve and re-attempt to deliver the document.
 If the maximum retry count has been reached, the service
updates the task status to FAILED.
The wm.tn.queuing:updateQueuedTask service also takes care of logging
the results of the delivery to the activity log.

400 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
17 Creating Delivery Services

Typical Logic to Include in the Scheduled Delivery Service


A typical scheduled delivery service might deliver all the batched documents to a single
destination. The wm.tn.transport:batchFtp scheduled delivery service, which Trading
Networks provides, behaves in this manner and is a good sample to refer to when
creating your own scheduled delivery service. For more information, see “The
wm.tn.transport:batchFtp Service” on page 402.
The following shows steps you might want to include in your scheduled delivery service
to deliver all documents to the same destination.

Retrieve a delivery task from the queue


If the queue is empty
Exit the service
Open a connection to the remote server
While queue is not empty
Attempt to deliver the document associated with the delivery task
Update the task with the results of the delivery (e.g., success or fail)
Retrieve the next delivery task from the queue
Close the connection to the remote server

The actions in bold are items that all scheduled delivery services should perform. For
more information, see “Required Logic to Include in the Scheduled Delivery Service” on
page 398.
The above shows only a sample of one way to create the service. You might have different
requirements for your service. For example, you might want to combine several
documents and transmit them as one large document or might want to limit the number
of documents sent to a destination in a single invocation of your service.
As shown above, the scheduled delivery service might need to make a connection to a
remote server. The typical approach is to open the connection after you have determined
that the queue has delivery tasks in it (that is, the queue is not empty). You can determine
whether the queue is empty by invoking the wm.tn.queuing:getQueuedTask service. If this
service returns null, the queue is empty. After your scheduled delivery service has acted
on the delivery tasks in the queue, your service can then close the connection to the
remote server.
Some transport protocols require additional actions after opening a connection and
before you begin delivering documents. For example, for the FTP protocol, after
performing the LOGIN to connect to the remote server, a cd (change directory) is
performed to navigate to the appropriate directory.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 401
17 Creating Delivery Services

Handling Exceptions
When the queue schedule dictates, the wm.tn.queuing:deliverBatch service is invoked. The
wm.tn.queuing:deliverBatch service, in turn, invokes your scheduled delivery service and
passes your service information about the queue.
This wm.tn.queuing:deliverBatch service catches any exceptions thrown by your scheduled
delivery service or the underlying transport service that your services uses to deliver the
document. In response to an exception, the wm.tn.queuing:deliverBatch service increments the
retry count for the current delivery task and logs the exception to the activity log.
If your scheduled delivery service needs to take action in response to an exception, use
the pub.flow:getLastError built-in service to detect whether an exception was thrown.
If you are creating your scheduled delivery service using the flow language, and you
want to exit your scheduled delivery service due to a failure, use the following flow
operation:
EXIT $flow and signal FAILURE

The above flow operation causes the wm.tn.queuing:deliverBatch service to increment the
current delivery task’s retry count and log the exception to the activity log. You provide
the information that Trading Networks logs to the activity log. To provide this
information, be sure you specify meaningful information in:
 failure-message property of the EXIT flow operation
 logMsg variable in Pipeline out; map meaningful text to this variable

The wm.tn.transport:batchFtp Service


Trading Networks provides one scheduled delivery service, wm.tn.transport:batchFtp, which
is shown below. This service delivers a batch of documents using the FTP protocol to a
single destination. It is written in the flow language. To view more information about the
service, use the webMethods Developer to view it. Use this service as a model if you are
creating your own custom scheduled delivery service.

402 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
17 Creating Delivery Services

The wm.tn.transport:batchFtp Service

3
4

6
7
8

9
10

11
12

13

Flow
Operations Description

1 The INVOKE flow operation invokes the wm.tn.queuing:getQueuedTask


service to retrieve the first delivery task from the queue. The service
returns the task information in the task variable.
2 If the variable, task, is null, the queue is empty. In this case, map text to
the output variable, logMsg, and exit the service.
3 If the queue contains delivery tasks, attempt to log in to the remote FTP
server.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 403
17 Creating Delivery Services

Flow
Operations Description

4 An input to the wm.tn.transport:batchFtp service is the variable, directory. If


this variable was specified, cd to the specified directory.
5 If the cd to the specified directory fails, map a message to the output
variable, logMsg, and exit the service.
6 The REPEAT flow operation causes the service to loop over the delivery
tasks in the queue.
7 The INVOKE flow operation invokes wm.tn.doc:getDeliveryContent to retrieve
the document content to be delivered. Note that this service is for all files
regardless of whether Trading Networks considers a document large. For
more information, see Appendix F, “Large Document Handling”.
8 The operations in the SEQUENCE flow operation form the file name to
use for the document being delivered. The file name will be internalID.ext,
where internalID is the Trading Networks generated internal ID for the
document and ext is the file extension.
The first INVOKE flow operation in the sequence invokes the
pub.string:concat service to append a period to the internal ID. The
BRANCH flow operation determines the file extension. An input to the
wm.tn.transport:batchFtp service is the variable, fileExtension. If this variable
was not specified, the file extension defaults to “xml”. Otherwise, the file
extension is the value specified for the fileExtension variable.
9 This INVOKE flow operation invokes the pub.client.ftp:put service that
transmits the file using FTP.
10 If the return code from the pub.string:concat service is 226, the file was
transmitted successfully. In this case, the MAP flow operation sets the
value of the status variable in Pipeline Out to “success”.
For any other return code the other MAP flow operation sets the value of
the status variable in Pipeline Out to “fail”.
11 The first INVOKE flow operation invokes the
wm.tn.queuing:updateQueuedTask service to update the status of the delivery
task. One of the inputs to the service is status that was set to either
“success” or “fail”.
The second INVOKE flow operation invokes the
wm.tn.queuing:getQueuedTask service to retrieve the next delivery task from
the delivery queue.
12 If the wm.tn.queuing:getQueuedTask service returned a delivery task, continue
in the REPEAT loop. If the service returned null, the queue is empty; exit
the REPEAT loop.
13 After looping through all delivery tasks, log out of the remote FTP server.

404 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
17 Creating Delivery Services

Note that the wm.tn.transport:batchFtp service does not do any exception handling. All
transport-level exceptions cause the current invocation of the wm.tn.transport:batchFtp
service to terminate, and the exception will be handled by its caller,
wm.tn.queuing:deliverBatch. The wm.tn.transport:batchFtp service will be invoked again for the
delivery queue, according to the queue’s schedule.

Adding and Registering New Delivery Services


If you need to deliver documents via a method that is not provided by one of the default
delivery services, you can add or register a new delivery service. For example, you might
want to create an immediate delivery service that delivers a message into a message
queuing system.
When you register a delivery service, you assign the delivery service a service name.
Trading Networks uses the name you supply to identify the delivery service in My
webMethods and Console:
 For an immediate delivery service, the name you specify becomes the name of a new
immediate delivery method. After you register the new delivery service, Trading
Networks Console lists the corresponding new delivery method on the Processing
Rule Detail screen with the Deliver document action.
 For a scheduled delivery service, Trading Networks displays the name in My
webMethods and the Console with the scheduled delivery services that you can
associate with a queue.

Note: If you are using large document processing, see “Creating Services that
Recognize Large Document Handling” on page 512.

To add a new delivery service, perform the following procedure:

To add and register a new delivery service

1 Use the webMethods Developer (or your own Java development environment) to
create the delivery service.
 For immediate delivery services, see “Creating an Immediate Delivery Service”
on page 395.
 For scheduled delivery services, see “Creating a Scheduled Delivery Service” on
page 397.
 For large document processing, see “Creating Services that Recognize Large
Document Handling” on page 512.
For general information about creating services, see Developing Integration Solutions:
webMethods Developer User’s Guide.
When you create the service, you must place it in a package. Do not place it in the
WmTN packages because it will be overwritten when you upgrade Trading
Networks.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 405
17 Creating Delivery Services

Note: If you use your own Java development environment, you need to use a jcode
utility to put the Java code into the Integration Server namespace; that is, place it
in a package and folder. The jcode utility is provided. For more information, see
Developing Integration Solutions: webMethods Developer User’s Guide.

2 Execute the wm.tn.delivery:registerService built-in service to register your new delivery


service. For more information about this service, see the webMethods Trading Networks
Built-In Services Reference.
One of the input variables of the wm.tn.delivery:registerService built-in service is
serviceName. The value you specify for serviceName becomes the name of the delivery
method that My webMethods and the Console display in lists that contain all delivery
methods.
You can execute the wm.tn.delivery:registerService built-in service from the webMethods
Developer to register your new delivery service. To execute the service from the
Developer, perform the following steps:
a Select the wm.tn.delivery:registerService service from the Navigation Panel.
b Select Test > Run. The webMethods Developer displays a dialog box for you to
enter input:

406 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
17 Creating Delivery Services

c Fill in the input parameters:

For this
parameter... Specify...

serviceName The name you want to assign to the delivery service, e.g.,
Message Queue. This is the name that Trading Networks displays
in lists in My webMethods and the Console.

Note: Do not use the same serviceName as any existing immediate


or scheduled delivery service.

host The host name of the Integration Server. If you leave host blank,
Trading Networks uses “localhost”. If the delivery service
resides on the local machine, specify localhost or leave host
blank.
 When you leave host blank or specify localhost, Trading
Networks assumes that the delivery service is on the local
server.
 When you specify any other value for host, Trading
Networks assumes the delivery service is on a remote server.
This is true even if the value you specify is the host name for
the local machine.

Important! A host value other than localhost or blank will cause


Trading Networks to open an HTTP connection to the host for
every document delivered. If the delivery service is on the local
machine, this will consume resources unnecessarily.

To invoke a delivery service on a remote server, Trading


Networks opens an HTTP connection and posts the document to
be delivered.
port The port number for the Integration Server. If you leave host
blank, do not specify a value for port.
user A user name of a User account that has the authority to execute
the wm.tn.delivery:registerService service. Trading Networks ignores
user if host is localhost or left blank.
password The password for the user account identified in user. Trading
Networks ignores user if password is localhost or left blank.

Note: The password will be securely managed by the Integration


Server’s Password Manager. For information, see Understanding
webMethods B2B: webMethods Trading Networks Concepts Guide.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 407
17 Creating Delivery Services

For this
parameter... Specify...

ifc The fully-qualified folder name of the new delivery service you
want to use, e.g., TNCustomize.deliveryServices.
service The service name of the new delivery service you want to use,
e.g., messageQueue.
scheduled Whether you are adding an immediate or scheduled delivery
service.
For this type… Specify…

Immediate false (default)

Scheduled true

d Click OK.

Note: To make changes to the parameters you specified when adding the delivery
service (e.g., to specify a different service):
 First, remove the service using wm.tn.delivery:removeService
 Then, follow this “To add and register a new delivery service” procedure again on
to re-register the service specifying your changes.

408 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
V Appendices

 Queries in Trading Networks Console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411


 Archiving and Deleting Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
 Exporting and Importing Database Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441
 Trading Networks Configuration Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
 XQL Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 501
 Large Document Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 509

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 409
V Appendices

410 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
A Queries in Trading Networks Console

 Running Queries in Trading Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412


 Enabling the Query Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
 Creating and Saving a Query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
 Selecting and Running a Query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
 Updating the Search Criteria for a Saved Query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
 Saving a New Query Based on an Existing Query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
 Reverting to a Saved Query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
 Deleting Saved Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 411
A Queries in Trading Networks Console

Running Queries in Trading Networks


You can perform queries in most of the Trading Networks Console screens. The query
functions that you can access are dependent on the screen view you have selected from
the Selector Panel buttons. For example, if you are using the Trading Partners screen, the
query functions you can perform for profiles on the Basic Criteria, Custom Criteria, and Detail
View query tabs are different than the query functions that you can access on the Basic
Criteria and Detail View query tabs on the Processing Rules screen.
However, the basic query functions that you can access on the Trading Networks Console
toolbar are the same. To perform queries in Trading Networks, use the query buttons on
the Console toolbar, as shown below in the example below.

Location of the query toolbar on the Trading Partners screen

Query toolbar
on the Trading
Partners
screen

Enlarged view
of the Query
toolbar

Queries List

The following table lists the query functions that correspond with the Trading Networks
Console toolbar, along with a description of each function.

This query
toolbar item... Represents...
Show Query. Displays the query panels for a screen.

Hide Query. Removes the query panels from a screen.

412 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
A Queries in Trading Networks Console

This query
toolbar item... Represents...
Run Query. Runs the query using the settings you specified on the query
panels.
[Queries Queries List. Drop-down list of all saved queries. Trading Networks
List] displays the last query run on the Console
Save Query. Updates the current query by saving the changes you have
made to the query criteria
Save Query As. Creates a new saved query by saving the query criteria
that you specified.
Revert to Saved Query. Reverts the query information and resets it to the
saved query settings in the database.
Delete Query. Deletes the currently selected query.

Trading Networks lists all of the saved queries in the Queries List on the toolbar.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 413
A Queries in Trading Networks Console

Enabling the Query Functions


To perform queries in Trading Networks, first enable the query tabs so that you can view
and access the query tabs. For example, the query functions might not initially appear on
your Console screen, as shown below.

The Trading Partners screen with no query tabs displayed

Display area
showing only
the
query results
table (e.g,.
Profiles table)

Use the following buttons on the left of the toolbar to display the query tabs and panels.

Can you see query


panels? Click this button... To perform this action...
No Display the query panels.
Show Query
Yes Remove/Hide the query panels.
Hide Query

414 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
A Queries in Trading Networks Console

To view the above Trading Partners screen with the query tabs, click Show Query on
the toolbar.

Trading Partners screen displayed with query tabs

Display area
showing
query tabs...

... and the


query results
table (e.g,
Profiles
table) below

Using the Query panel of the toolbar, you can perform basic search functions: create and
save a query, select and run a query, revert back to the original query, and delete a query.

Creating and Saving a Query


If you plan to use the same query multiple times, you can save the query. Trading
Networks adds the query to the list of saved queries located on the Query section of the
toolbar. When you want to use the same query again, you simply select that saved query.

To create and save a query

1 Enable the query panel. For instructions, see “Enabling the Query Functions” on
page 414.
2 Specify the search criteria you want to save on each of the query tabs.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 415
A Queries in Trading Networks Console

3 Run the query, select Run Query on the toolbar. Trading Networks displays the
query results table in the bottom panel. For more information, see “Navigating
Through the Results Table” below.

4 Save the query, select Save As on the toolbar.


5 In the Save as dialog box, type the name you want to give the query in the Query Name
field.
6 Click OK. Trading Networks adds the query to the list of saved queries, which is
located on the toolbar.

Selecting and Running a Query


To run an saved query, perform the following procedure.

To select and run a query

1 Enable the query panel. For instructions, see “Enabling the Query Functions” on
page 414. Trading Networks displays the last query that was run in this screen view.
2 Select the query from the list of saved queries, which is located on the toolbar.

3 To run the query, select Run Query on the toolbar. Trading Networks displays the
query results in the results table in the bottom panel.

Navigating Through the Results Table


Use the following buttons (located in the lower right corner of the screen) to help you
move through the results table:

Button When you click this button, Trading Networks…


Displays the first page of the document query results.

Displays the previous page of document query results.

Displays the next page of document query results.

Displays the last page of document query results.

416 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
A Queries in Trading Networks Console

Updating the Search Criteria for a Saved Query


After you save a document query, you can update the search criteria for the saved
document query.

To update a saved document query

1 Enable the query panel. For instructions, see “Enabling the Query Functions” on
page 414.
2 Select the query for which you want to update search criteria from the list of saved
queries, which is located on the toolbar.
3 Make your changes to the search criteria for the saved query by updating the fields on
the query tabs.

4 Re-run the query by selecting Run Query on the toolbar. Trading Networks updates
the results table displayed in the bottom panel

5 Select Save Query on the toolbar to re-save the query with your updates.

Saving a New Query Based on an Existing Query


You can create a new query based on an existing query.

To save a new query based on an existing query

1 Enable the query panel. For instructions, see “Enabling the Query Functions” on
page 414.
2 Select the existing query to base the new query on from the list of saved queries,
which is located on the toolbar.
3 Make your changes to the search criteria for the new query by updating the fields on
the query tabs.

4 Re-run the modified query by selecting Run Query on the toolbar. Trading
Networks updates the results table displayed in the bottom panel with the
information from the newly created query.

5 Select Save Query As to save the new query with your changes.
6 In the Save as dialog box, type the name you want to give the query in the Query Name
field. Click OK. Trading Networks adds the query to the list.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 417
A Queries in Trading Networks Console

Reverting to a Saved Query


If after you update the query panels and run a query, you decide that you do not want
Trading Networks to save the new query settings and instead want Trading Networks to
redisplay results using the original saved query, you can revert the query settings to the
those of the saved query.

To revert to a saved query, after running a new query, select Revert to Saved Query.
Trading Networks updates the query panels to display the settings for the saved query,
runs the saved query, and displays the query results

Note: The Revert to Saved Query function is only available after you change query
settings and run the query.

Deleting Saved Queries


If you no longer need a saved query you can delete it. Perform the following procedure to
delete a saved query.

To delete a query

1 Enable the query panel. For instructions, see “Enabling the Query Functions” on
page 414.
2 Select the query you want to delete from the list of saved queries, which is located on
the toolbar.

3 Select Delete Query. Click Yes to verify that you want to delete the query.

418 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
B Archiving and Deleting Documents

 About Archiving and Deleting Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420


 Setting Up Basic Archival and Deletion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
 Setting Up Extended Archival and Deletion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
 Setting Up Extended Archival and Deletion Using Integration Server . . . . . . . . . . . . . . . . . . . . . 425
 Setting Up Extended Archival and Deletion Using My webMethods . . . . . . . . . . . . . . . . . . . . . . 427

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 419
B Archiving and Deleting Documents

About Archiving and Deleting Documents


You can archive and delete Trading Networks documents at scheduled intervals. You
must have the Manage TN Archiving functional permission to set up the archival or
deletion. You can perform the archival or deletion of documents in the following ways:
 Basic archival and deletion. With this archival or deletion, Trading Networks archives or
deletes all the document information after a specified number of days.
 Extended archival or deletion. With this archival or deletion, you have greater flexibility
and control over how, when, and what to archive and delete. Trading Networks
enables you to selectively archive documents based on additional criteria, such as the
document ID, sender, receiver, and system status. Additionally, you can choose to
archive only selected parts of documents. That is, you can choose to archive
documents contained in any or all of the production tables as mentioned in
“Archiving Documents” on page 420.

Archiving Documents
When Trading Networks archives a document, it does the following:
 Moves the document information into the corresponding archival tables.
The archival tables mirror the production tables, as shown in the table below. Data in
the archival tables is identical to the data in the production Trading Networks tables.
 Removes the document information and the references to the document from all
production tables in the Trading Networks database.

Archival Table Corresponding Production Table


ARCHIVE_BizDoc BizDoc
ARCHIVE_BizDocContent BizDocContent
ARCHIVE_BizDocAttribute BizDocAttribute
ARCHIVE_BizDocArrayAttribute BizDocArrayAttribute
ARCHIVE_BizDocRelationship BizDocRelationship
ARCHIVE_DeliveryJob DeliveryJob
ARCHIVE_ActivityLog ActivityLog
ARCHIVE_BizDocUniqueKeys BizDocUniqueKeys
ARCHIVE_EDITracking EDITracking

You can access the archived information from My webMethods. For example, you can
view information about archived documents on the Transactions, Tasks, or Activity Log
pages in My webMethods. You can work with archived data just like you do with
production data (for example, resubmit or reprocess transactions, and stop and restart

420 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
B Archiving and Deleting Documents

tasks.). Using webMethods Reporting, you can also view the Trading Networks reports
based on archived data. For information about webMethods Reporting, see the
webMethods Reporting Guide.

Deleting Documents
With the basic deletion feature, when Trading Networks deletes a document, it removes
all associated document information (from the archival tables and production tables) in
the database. The extended deletion feature enables you to delete documents either from
archival tables, production tables, or both.

Note: If Trading Networks repeatedly deletes Trading Networks data from the Oracle
database, the database tables may become skewed. To resolve this issue, regenerate
the statistics of the table.

Setting Up Basic Archival and Deletion


To set up basic document archival and deletion, you add Trading Networks system
properties to the Trading Networks properties file, and schedule the archival and
deletion.

Setting How Many Days to Retain Documents Before Archival and


Deletion
You set the number of days so that Trading Networks archives or deletes documents that
are older than the specified number of days.

To set the archival and deletion system properties

1 In My webMethods: Administration > Integration > B2B Settings > Configure Properties.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 421
B Archiving and Deleting Documents

2 Add or update the following properties:

For this system property … Specify …

tn.archive.archiveAfterDays The number of days so that Trading Networks archives


documents older than the specified number of days.
Specify a value from 0 through 730365. If you do not
specify this property or if you specify 0 for this
property, Trading Networks does not archive
documents.
Example:
If you want Trading Networks to archive documents
that are 30 days older, add the following:
tn.archive.archiveAfterDays=30

tn.archive.deleteAfterDays The number of days so that Trading Networks deletes


documents older than the specified number of days.
Specify a value from 0 through 730365. If you do not
specify this property or if you specify 0 for this
property, Trading Networks does not delete
documents.
If you want Trading Networks to only delete
documents and not archive them, specify only the
tn.archive.deleteAfterDays system property.
Example:
If you want Trading Networks to delete documents
that are 60 days older, add the following:
tn.archive.deleteAfterDays=60

3 Click Save Changes.

Scheduling the Archival and Deletion of Documents


You must schedule when you want Trading Networks to periodically run the archival
and deletion service, wm.tn.archive:archive. To schedule the execution of the service, use the
Integration Server Administrator to set up a user task that executes the wm.tn.archive:archive
service.
Trading Networks is shipped with the wm.tn.archive:archive service. For information about
the wm.tn.archive:archive service, see the webMethods Trading Networks Built-In Services
Reference.
For information about scheduling services for execution, see Administering webMethods
Integration Server.

422 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
B Archiving and Deleting Documents

To set the archival and deletion schedule

1 Open the Integration Server Administrator. If you need instructions, see


Administering webMethods Integration Server.
2 In the Server menu of the navigation area, click Scheduler.
3 Click Create a scheduled task.
4 Set the Service Information parameters as follows:

For this parameter… Specify…

folder:subfolder:service wm.tn.archive:archive

Run As User Administrator

Persistence That you want the server to maintain this user task in the
event that the server is restarted by selecting the Persist
after restart check box.
Clustering Whether you want the task to run anywhere in your
cluster of servers. For more information on clusters, see
the webMethods Integration Server Clustering Guide.

5 In the Schedule Type and Details section of the screen, specify that you want the service
to be executed periodically, by selecting either Repeating or Complex. Then, specify the
additional parameters to indicate when and how often you want the archival and
deletion service to run.

If you select… Specify…

Repeating The number of seconds that you want the server to wait
between executions of the service in the Interval field. For
example, if you want the service to run once every 24 hours,
specify 86400.
In the Repeating field, select the Repeat from end of invocation
check box to indicate that if the current occurrence of the task
is not complete when the interval elapses, that you want the
server to wait until the current occurrence of the task
completes before repeating the task.

Note: The service executes for the first time immediately after
you schedule the user task.

Complex Repeating The date and time of the first execution of the service in the
Start Date and Start Time fields and how often after the initial
execution that you want the service to run using the
parameters in the Run Mask field.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 423
B Archiving and Deleting Documents

If you select… Specify…

Example:
To specify that you want the service to execute daily at 10 p.m.
starting on March 15, 2001, specify the following parameters:
Start Date 2001/3/15
Start Time 22:00:00
End Date leave blank
End Time leave blank
Months no selection
Days no selection
Weekly Days no selection
Hours 22
Minutes 0

Note: Omitting the End Date and End Time indicates that the
service is to run indefinitely.

Note: For more information about these parameters, see information about
scheduling services in Administering webMethods Integration Server.

6 Click Save Tasks.

Setting Up Extended Archival and Deletion


You can set up the extended archival and deletion of documents in the following ways:
 Using Integration Server and the built-in service wm.tn.archive:extendedArchive. For
information about how to set up the archival and deletion using Integration Server,
see “Setting Up Extended Archival and Deletion Using Integration Server” on
page 425.
 Using My webMethods. For information about how to set up the archival and
deletion using My webMethods, see “Setting Up Extended Archival and Deletion
Using My webMethods” on page 427.

424 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
B Archiving and Deleting Documents

Setting Up Extended Archival and Deletion Using Integration


Server
You set the archival and deletion criteria using Integration Server by using the built-in
service wm.tn.archive:extendedArchive, and schedule the service execution using the
Integration Server Scheduler.
When you configure the archival or deletion using Integration Server, the archival or
deletion occurs immediately after you schedule the archival or deletion.

Setting the Archival and Deletion Criteria

To set the archival and deletion criteria

1 Open the Developer if it is not already open.


2 In the WmTN package, open the folders wm > tn > archive and double-click the built-in
service extendedArchive.
3 Specify values for the input parameters of the wm.tn.archive:extendedArchive service that
are described in the webMethods Trading Networks Built-In Services Reference.
4 Save the values.

Scheduling the Archival and Deletion of Documents


You must schedule when you want Trading Networks to periodically run the
wm.tn.archive:extendedArchive service to archive and delete documents. To schedule the
execution of the service, use the Developer to create a wrapper service that executes the
extendedArchive service. Then, use the Integration Server Administrator to set up a user
task that executes the extendedArchive service.

To set the archival and deletion schedule

1 Open the Developer if it is not already open.


2 Create a wrapper service that invokes the service wm.tn.archive:extendedArchive.
3 Start Integration Server Administrator.
4 In the Server menu of the navigation area, click Scheduler.
5 Click Create a scheduled task.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 425
B Archiving and Deleting Documents

6 Set the Service Information parameters as follows:

For this parameter… Specify…

folder:subfolder:service Your wrapper service


Run As User Administrator

Persistence That you want the server to maintain this user task in the
event that the server is restarted by selecting the Persist
after restart check box.
Clustering Whether you want the task to run anywhere in your
cluster of servers. For more information on clusters, see
the webMethods Integration Server Clustering Guide.

7 In the Schedule Type and Details section of the screen, specify that you want the service
to be executed periodically, by selecting either Repeating or Complex. Then, specify the
additional parameters to indicate when and how often you want the archival and
deletion service to run.

If you select… Specify…

Repeating The number of seconds that you want the server to wait
between executions of the service in the Interval field. For
example, if you want the service to run once every 24 hours,
specify 86400.
In the Repeating field, select the Repeat from end of invocation
check box to indicate that if the current occurrence of the task
is not complete when the interval elapses, that you want the
server to wait until the current occurrence of the task
completes before repeating the task.

Note: The service executes for the first time immediately after
you schedule the user task.

Complex Repeating The date and time of the first execution of the service in the
Start Date and Start Time fields and how often after the initial
execution that you want the service to run using the
parameters in the Run Mask field.
Example:
To specify that you want the service to execute daily at 10 p.m.
starting on March 15, 2001, specify the following parameters:
Start Date 2001/3/15
Start Time 22:00:00
End Date leave blank

426 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
B Archiving and Deleting Documents

If you select… Specify…

End Time leave blank


Months no selection
Days no selection
Weekly Days no selection
Hours 22
Minutes 0

Note: Omitting the End Date and End Time indicates that the
service is to run indefinitely.

Note: For more information about these parameters, see information about
scheduling services in Administering webMethods Integration Server.

8 Click Save Tasks.

Setting Up Extended Archival and Deletion Using My


webMethods
To set up the archival or deletion of Trading Networks documents using My
webMethods, you set the criteria and a schedule for the archival or deletion. My
webMethods provides a common interface for setting the criteria and the schedule for
both archival and deletion.
When you configure the archival or deletion using My webMethods, the archival or
deletion occurs during the first scheduled interval.
Within a schedule, Trading Networks archives or deletes documents in batches. After
archiving or deleting the maximum number of documents allowed per batch, Trading
Networks waits for a few seconds before archiving or deleting the next batch of
documents.

Setting the Archival and Deletion Criteria


Trading Networks identifies the documents for archival or deletion based on the criteria
you set. You can choose to archive or delete all the document related data or only some
data. For example, you can archive or delete only the activity log entries or the delivery
tasks associated with the identified documents.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 427
B Archiving and Deleting Documents

To set the archival and deletion criteria

1 In My webMethods: Administration > Integration > B2B > Archive Schedules.


2 Click Add Schedule.
3 On the Archive Schedule Details page, complete the following fields:

Field Specify...

Name The name of the archive or delete schedule that you are creating.
Description A brief description of the schedule.
Status Whether you want the schedule to be enabled or disabled. When
you enable or disable the schedule, the schedule service in the
Integration Server Scheduler is activated or deactivated,
respectively.
 To enable the schedule, select Active.
 To disable the schedule, select Suspended.

Note: Keep the status as Suspended until you provide all the
information for the archival or the deletion.

4 Click the Schedule Options tab, if it is not already selected. Complete the following
fields:

Field Specify...

Action Type Whether you want to set up either the archival or the deletion of
Trading Networks data.
 To set up the archival, select Archive. This is the default.
 To set up the deletion, select Delete.
Datasource Whether the data to be deleted must be archived data, production
data, or both. This field appears only when you select the Delete
option in the Action Type field.
 Select Archived Data when you want to delete data from the
archival database tables. This is the default.
 Select Both Production and Archived Data when you want to delete
both production data and archived data from the database.
 Select Production Data when you want to delete production data.
Days The number of days so that Trading Networks archives or deletes
documents that are older than the number of days you specify.

428 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
B Archiving and Deleting Documents

Field Specify...

Batch Size The maximum number of documents that can be archived or


deleted in a batch.
The default is 100 documents. You can also set the default value
using the tn.archive.batchSize property in the properties.cnf file.
For more information about the property, see Appendix D,
“Trading Networks Configuration Properties”.
Wait Time The number of seconds that Trading Networks must wait between
two batches of archival or deletion during one schedule.
The default time is 15 seconds. You can also set the default value
using the tn.archive.batchBackoffTime property in the
properties.cnf file. For more information about the property, see
Appendix D, “Trading Networks Configuration Properties”.
Maximum The maximum number of documents that Trading Networks can
Transactions archive or delete during one schedule.
Per Schedule
Trading Networks archives or deletes the documents in batches.
For example, if you set the Batch Size to 50 and the Maximum
Transactions Per Schedule to 1000, then Trading Networks performs
the archival or deletion task 20 times during that schedule.
There is no limit on the maximum number of documents per
schedule. However, the value specified for Maximum Transactions Per
Schedule must be greater than or equal to the Batch Size value.
When the total number of documents for archival or deletion is
more than the maximum number of documents per schedule,
Trading Networks attempts to archive or delete the additional
documents during the next schedule.
You can set the default value using the tn.archive.maxRows
property in the properties.cnf file. For more information about the
property, see Appendix D, “Trading Networks Configuration
Properties”.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 429
B Archiving and Deleting Documents

5 In the Criteria panel, specify the archival or deletion criteria in the following fields:

Field Specify...

Sender The name of the sender of whose documents you want to archive or
delete.
If you do not want to limit the data based on the sender, leave this
field blank.
Receiver The name of the receiver of whose documents you want to archive
or delete.
If you do not want to limit the data based on the receiver, leave this
field blank.
Document The name of the TN document type of which documents you want
Type to archive or delete.
If you do not want to limit the data based on the TN document
type, leave this field blank.
Processing The processing status of the documents you want to archive or
Status delete, for example, ACCEPTED, DONE, REPROCESSED, and so on.
If you do not want to limit the data based on the processing status
of the documents, leave this field blank.
For information about processing statuses, see Managing B2B
Integrations: webMethods Trading Networks User’s Guide.
User Status The user status of the documents you want to archive or delete.
 Select NULL when the value of the user status is null.
 Select NOT NULL when the value of the user status is anything
other than null.
If you do not want to limit the data based on the user status of the
documents, leave this field blank.
For information about user statuses, see Understanding webMethods
B2B: webMethods Trading Networks Concepts Guide.

6 In the Data to Archive or Delete panel, select the required data that Trading Networks
must archive or delete. Trading Networks identifies the documents based on the
criteria you select in the Criteria panel.
 If you want to archive or delete all the document data, that is, the transactions
data, select Transaction Details (BizDoc).

430 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
B Archiving and Deleting Documents

 If you do not want to archive or delete all the document data, select one or more of
the following options:
.

Select To...

Transaction Payload Archive or delete the document content of the


Content transactions.
(BizDocContent)
Transaction Custom Archive or delete all the custom attributes, except the
Attribute custom array attributes.
(BizDocAttribute)
Transaction Custom Archive or delete all the custom array attributes.
Array Attribute
(BizDocArrayAttribute)
Related Documents Archive or delete all the related documents of the
(BizDocRelationship) documents identified for archival or deletion.
Delivery Tasks Archive or delete the delivery tasks associated with the
documents.
Activity Logs Archive or delete the activity logs associated with the
documents.
Trading Networks does not archive the activity logs of
documents that have not been archived.
Transaction Unique Key Archive or delete the unique keys of the incoming
Representation documents that are enabled for checking duplicates.
(BizDocUniqueKeys)
Note: For every incoming document that is enabled for
checking duplicates, Trading Networks creates a
unique key and stores it in the BizDocUniqueKeys
table. For information about checking for duplicate
documents, see “Pre-Processing Actions” on page 331.

EDI Tracking Details Archive or delete the details available in the


EDITracking table. For information about the
EDITracking table, see the webMethods EDI Module
Installation and User’s Guide.

7 Click Save. The criteria for the archival or deletion is set.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 431
B Archiving and Deleting Documents

Scheduling the Archival and Deletion of Documents


The archival and deletion occurs periodically based on the schedule settings.

To set the archival and deletion schedule

1 In My webMethods: Administration > Integration > B2B > Archive Schedules.


2 Click Add Schedule.
3 On the Archive Schedule Details page, click the Schedule Settings tab to set the schedule
for the archival or deletion.
4 In the Run Schedule field, specify when you want Trading Networks to execute the
archival or deletion.

Select To...

Run Once Run the archival or deletion only once. You specify the
date and time for the schedule.
This is the default.
Fixed Interval Run the archival or deletion at a fixed interval of time, for
example, every 5 hours.
Hourly Run the archival or deletion on an hourly basis. You
specify the minutes of the hour for the schedule. For
example, run the archival or deletion every hour at 3:15
A.M, 4:15 A.M, 5:15 A.M, and so on.
Daily Run the archival or deletion on a daily basis. You specify
the time in hours and minutes for the schedule. For
example, run the archival or deletion every day at 11:20
P.M.
Weekly Run the archival or deletion on a weekly basis. You
specify the days of the week, and the time in hours and
minutes for the schedule. For example, every Monday,
Tuesday, and Fridays at 1:00 AM, 5:30 A.M, and 12:00 PM.
Monthly Run the archival or deletion on a monthly basis. You
specify the dates, days of the week, and time in hours and
minutes for the schedule. For example, run the archival or
deletion on 5th, 10th, 15th, and 25th that occur on
Mondays and Fridays, at 5:00 AM and 6:00 PM.
Yearly Run the archival or deletion on a yearly basis. You specify
the months, dates, days of the week, and time in hours
and minutes for the schedule. For example, run the
archival or deletion in January, June and December, on
10th and 25th that occur on Sundays, at 5:00 AM and
12:00 PM.

432 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
B Archiving and Deleting Documents

5 Based on the option you select in the Run Schedule field, complete the additional fields
to specify when you want to run the archival or deletion.
 If you select Run Once, complete the following fields:

Field Specify...

Date The date when the archival or deletion must occur.


Time The time when the archival or deletion must occur.
The time is in the 24 hour format.

 If you select Fixed Interval, complete the following fields:

Field Specify...

Fixed Interval The time interval between every execution of the archival or
deletion. Select the unit of time in the list box. For example, if
you specify the value 2 and select Hours in the list box, then
the archival or deletion occurs every 2 hours.
Do not overlap Whether Trading Networks must wait for the archival or
task deletion from an earlier execution to complete before it starts
the next scheduled execution.
 If you select the check box, Trading Networks waits for
the archival or deletion to complete.
 If you do not select the check box, Trading Networks
starts with the next scheduled execution irrespective of
whether the earlier scheduled execution is complete.

 If you select Hourly, complete the following fields:

Field Specify...

Date Range The time period for the archive or delete schedule that you
are creating.
Select from the list of built-in ranges, such as This Day or This
Year, or select Custom to specify your own custom date range.
Start Date The starting date and time of the archive or delete schedule.
This field is automatically populated if you select the built-in
date ranges in the Date Range field. If you select Custom as the
date range, you must specify the start date and time.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 433
B Archiving and Deleting Documents

Field Specify...

End Date The end date and time of the archive or delete schedule.
This field is automatically populated if you select the built-in
date ranges in the Date Range field. If you select Custom as the
date range, you must specify the end date and time.
No end date Whether the schedule has an end date.
 If you select the check box, the archive or delete schedule
is valid for an indefinite period of time.
 If you do not select the check box, specify an end date
and time of the archive or delete schedule in the End Date
field.
Run schedule at The minutes after every hour when the archival or deletion
these hours must occur. For example, if you select 28, then the archival or
deletion occurs every hour after 28 minutes, that is, at, 1:28
AM, 2:28 AM, 3:28 AM, 1:28 PM, 2:28 PM and so on.
You can also select multiple minutes. For example, if you
select 28 and 35, the archival or deletion occurs at 1:28 AM,
1:35 AM, 2:28 AM, 2:35 AM and so on.
The time is in the 24 hour format.
Do not overlap Whether Trading Networks must wait for the archival or
task deletion from an earlier execution to complete before it starts
the next scheduled execution.
 If you select the check box, Trading Networks waits for
the archival or deletion to complete.
 If you do not select the check box, Trading Networks
starts with the next scheduled execution regardless of
whether the earlier scheduled execution is complete.

 If you select Daily, complete the following fields:

Field Specify...

Date Range For the description of each of these fields, see “Date Range”,
Start Date “Start Date”, “End Date”, and “No end date”
End Date
No end date

434 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
B Archiving and Deleting Documents

Field Specify...

Run schedule The time in hours and minutes when the archival or deletion
everyday at these must occur. For example, if you select, 09.00 as the hour and
times 15 as the minutes, then the archival or deletion occurs every
day at 9:15 A.M.
You can also select multiple hours and minutes. For
example, if you select, 09:00 and 23:00 hours, and 15 and 45
as the minutes, then the archival or deletion occurs every
day at 9:15 A.M, 9:45 A.M, 11:15 P.M, and 11:45 P.M.
The time is in the 24 hour format.
Do not overlap Whether Trading Networks must wait for the archival or
task deletion from an earlier execution to complete before it starts
the next scheduled execution.
 If you select the check box, Trading Networks waits for
the archival or deletion to complete.
 If you do not select the check box, Trading Networks
starts with the next scheduled execution regardless of
whether the earlier scheduled execution is complete.

 If you select Weekly, complete the following fields:

Field Specify...

Date Range For the description of each of these fields, see “Date Range”,
Start Date “Start Date”, “End Date”, and “No end date”.
End Date
No end date
Run schedule The day of the week, and time in hours and minutes when
every week the archival or deletion must occur. For example, if you
select Monday as the day, 11:00 as the hour, and 15 as the
minutes, the archival or deletion occurs every Monday, at
11:15 A.M.
You can also select multiple days, hours, and minutes. For
example, if you select Monday, Wednesday, and Friday as
the days, 11:00 and 23:00 as the hours, and 00 and 30 as the
minutes, then the archival or deletion occurs every Monday,
Wednesday, and Friday, at 11:00 A.M, 11:30 A.M, 11:00 P.M,
and 11:30 P.M.
The time is in the 24 hour format.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 435
B Archiving and Deleting Documents

Field Specify...

Do not overlap Whether Trading Networks must wait for the archival or
task deletion from an earlier execution to complete before it starts
the next scheduled execution.
 If you select the check box, Trading Networks waits for
the archival or deletion to complete.
 If you do not select the check box, Trading Networks
starts with the next scheduled execution regardless of
whether the earlier execution is complete.

 If you select Monthly, complete the following fields:

Field Specify...

Date Range For the description of each of these fields, see “Date Range”,
Start Date “Start Date”, “End Date”, and “No end date”.
End Date
No end date
Run schedule The date, day of the week, and time in hours and minutes
every month when the archival or deletion must occur. The archival or
deletion occurs only when the date and the day of the week
match. For example, if you select 5th as the date, Monday as
the day, 5:00 as the hours, and 10 as the minutes, then the
archival or deletion occurs every Monday the 5th at 5:10
A.M.
You can also select multiple dates, days, hours, and minutes.
For example, if you select 5th and 25th as the dates,
Saturdays and Sundays as the days, 5:00 and 23:00 as the
hours, and 00 and 45 as the minutes, then the archival or
deletion occurs at the following times:
 Every 5th that occurs on either a Saturday or a Sunday, at
5:00 A.M, 5:45 A.M, 11:00 P.M, and 11:45 P.M.
 Every 25th that occurs on either a Saturday or a Sunday,
at 5:00 A.M, 5:45 A.M, 11:00 P.M, and 11:45 P.M.
The time is in the 24 hour format.

436 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
B Archiving and Deleting Documents

Field Specify...

Do not overlap Whether Trading Networks must wait for the archival or
task deletion from an earlier execution to complete before it starts
the next scheduled execution.
 If you select the check box, Trading Networks waits for
the archival or deletion to complete.
 If you do not select the check box, Trading Networks
starts with the next scheduled execution regardless of
whether the earlier scheduled execution is complete.

 If you select Yearly, complete the following fields:

Field Specify...

Date Range For the description of each of these fields, see “Date Range”,
Start Date “Start Date”, “End Date”, and “No end date”.
End Date
No end date

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 437
B Archiving and Deleting Documents

Field Specify...

Run schedule The month, date, day of the week, and time in hours and
every year minutes when the archival or deletion must occur. The
archival or deletion occurs only when the month, date, and
the day of the week match. For example, if you select
January as the month, 5th as the date, Monday as the day,
9:00 as the hours and 0.00 as the minutes, then the archival or
deletion occurs when January 5th occurs on a Monday, at
9:00 A.M.
You can also select multiple months, dates, days, hours, and
minutes. For example, if you select January and June as the
months, 10th and 30th as the dates, Saturday and Sunday as
the days, 5:00 and 23:00 as hours, and 00 as the minutes, then
the archival or deletion occurs at the following times:
 January 10th that occurs on a Saturday or a Sunday, at
5:00 A.M and 11:00 P.M.
 January 30th that occurs on a Saturday or a Sunday, at
5:00 A.M and 11:00 P.M.
 June 10th that occurs on a Saturday or a Sunday, at 5:00
A.M and 11:00 P.M.
 June 30th that occurs on a Saturday or a Sunday, at 5:00
A.M and 11:00 P.M.
The time is in the 24 hour format.
Do not overlap Whether Trading Networks must wait for the archival or
task deletion from an earlier execution to complete before it starts
the next scheduled execution.
 If you select the check box, Trading Networks waits for
the archival or deletion to complete.
 If you do not select the check box, Trading Networks
starts with the next scheduled execution regardless of
whether the earlier scheduled execution is complete.

6 Click Save. The settings for the schedule are set.

438 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
B Archiving and Deleting Documents

Searching for Archive and Delete Schedules


You search for the archive or delete schedules using the keyword search.

To search for archive and delete schedules

1 In My webMethods: Administration > Integration > B2B > Archive Schedules.


2 Click the Keyword tab if it is not already displayed.
3 In the Keywords field, type a keyword. The search fetches all the archive and delete
schedules of which names have the specified keyword. The search is case insensitive.
When typing a keyword, you can use the following wildcard characters.
 Use asterisk (*) to match zero or more characters (for example, thr* and th*e will
search for three)
 Use double quotation marks (“) to match a string that the schedule name contains
(for example, “March”, will search for MarchSchedule)
 Use space ( ) to indicate that one or more of the specified keywords must be a part
of the schedule name (for example, March Feb will search for MarchSchedule and
FebSchedule)
If you leave the Keywords field blank, Trading Networks lists all the archive and delete
schedules that you are authorized to view. For more information about how to specify
keywords, see the Working with My webMethods guide.
4 Click Search. The Search Results panel lists the search results.

Editing Archive and Delete Schedules


You can edit the archive or delete schedules that you have already created.

To edit the archive and delete schedules

1 In My webMethods: Administration > Integration > B2B > Archive Schedules.


2 Navigate for the required archive or delete schedule listed in the Search Results panel
or perform a keyword search for the archive or delete schedule. For information
about the keyword search, see “Searching for Archive and Delete Schedules” on
page 439.

3 In the Search Results panel, click in the row that contains the schedule you want to
edit.
4 In the Archive Schedule Details page, update the archive or delete schedule details. For
information about the fields for the schedule details, see “Setting the Archival and
Deletion Criteria” on page 427 and “Scheduling the Archival and Deletion of
Documents” on page 432.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 439
B Archiving and Deleting Documents

5 Click Save.

Deleting Archive and Delete Schedules

To delete archive and delete schedules

1 In My webMethods: Administration > Integration > B2B > Archive Schedules.


2 Navigate for the required archive or delete schedule listed in the Search Results panel
or perform a keyword search for the archive or delete schedule. For information
about the keyword search, see “Searching for Archive and Delete Schedules” on
page 439.
3 In the Search Results panel, select the check box of the schedule that you want to
delete.
4 Click Delete.

Copying Archive and Delete Schedules


To create an archive or delete schedule similar to an existing schedule, you can copy the
existing archive or delete schedule.

To copy an archive and delete schedule

1 In My webMethods: Administration > Integration > B2B > Archive Schedules.


2 Navigate for the required archive or delete schedule listed in the Search Results panel
or perform a keyword search for the archive or delete schedule. For information
about the keyword search, see “Searching for Archive and Delete Schedules” on
page 439.

3 In the Search Results panel, click in the row that contains the schedule you want to
copy.
4 In the Archive Schedule Details page, update the archive or delete schedule details to
create a new archive or delete schedule. For information about the fields for the
schedule details, see “Setting the Archival and Deletion Criteria” on page 427 and
“Scheduling the Archival and Deletion of Documents” on page 432.
5 Click Save. Trading Networks creates a new archive or delete schedule.

440 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
C Exporting and Importing Database Information

 About Exporting and Importing Database Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442


 Trading Networks Objects that You Can Export and Import . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442
 How Trading Networks Detects Items in Target System Before Importing Them . . . . . . . . . . . . 443
 Dependencies For Trading Networks Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444
 Migrating Profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445
 Migrating Profile Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
 Migrating TN Document Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449
 Migrating Custom Document Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450
 Migrating Processing Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450
 Migrating Trading Partner Agreements (TPAs) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452
 Migrating Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
 Migrating Public Queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454
 Migrating Data Permissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455
 Exporting Database Information from the Console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456
 Importing Database Information from the Console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457
 Using the tnexport and tnimport Utilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 441
C Exporting and Importing Database Information

About Exporting and Importing Database Information


webMethods Trading Networks (Trading Networks) provides an export/import feature
to allow you to migrate Trading Networks objects (for example, document attributes, TN
Document Types, profiles) from one database to another. Use the export/import feature
when:
 You want to deploy from a development environment to a production environment.
 You are using multiple instances of Trading Networks, and you want each Trading
Networks instance to have its own database with identical Trading Networks objects.
You can create the Trading Networks objects on one instance of Trading Networks;
then use export/import to migrate the Trading Networks objects to the databases of
the other Trading Networks instances. For more information, see “Separate Trading
Networks Database for Each Instance of Trading Networks” on page 40.
 You have changed the type of database you are using; for example, you changed from
an Oracle database to a SQL Server database.

Important! The export/import feature is only for migrating Trading Networks objects
between databases on your system that use the same version of Trading Networks. It
is not for:
 Migrating database information from one version of Trading Networks to
another.
 Sharing Trading Networks objects with trading partners.

When you export Trading Networks objects, Trading Networks creates a file that contains
the data you exported. You place the file in a location available to the target Trading
Networks system and import the data from the file into the database on the target
Trading Networks system.
Trading Networks objects are available for export regardless of whether they are disabled
or deleted. There is no indication as to which are disabled, enabled, or deleted. Trading
Networks maintains the current state (e.g., disabled, enabled, deleted) of the Trading
Networks objects that you migrate.

Trading Networks Objects that You Can Export and Import


You can export/import the Trading Networks objects listed below.
 Profiles, see “Migrating Profiles” on page 445.
 Profile fields, see “Migrating Profile Fields” on page 448.
 TN Document Types, see “Migrating TN Document Types” on page 449.
 Custom document attributes, see “Migrating Custom Document Attributes” on page 450.
 Processing rules, see “Migrating Processing Rules” on page 450.

442 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
C Exporting and Importing Database Information

 Trading Partner Agreements (TPAs), see “Migrating Trading Partner Agreements (TPAs)”
on page 452.
 Queries that you defined for Console screens, see “Migrating Queries” on page 453.
 Public queues, see “Migrating Public Queues” on page 454.
 Data permissions, see “Migrating Data Permissions” on page 455.
You cannot export/import information about the documents that are in your system, for
example, document content, tasks, and activity log entries.
To export data using the Console, you use the Export Data dialog box; to import, use the
Import Data dialog box. Trading Networks displays a tree structure in these dialog boxes
that contains the items that are available for you to export/import.

Note: To export/import using the command line utilities, see “Using the tnexport and
tnimport Utilities” on page 460.

How Trading Networks Detects Items in Target System Before


Importing Them
When importing an item, Trading Networks checks whether the item it is importing
already exists in the target system by checking the internal ID. If it does not locate an
existing item based on the internal ID, it then checks based on the name of the item. The
names against which Trading Networks checks for the items are as follows:

Trading Networks
object Trading Networks checks for...
Profile field Profile field with the same profile field name.
Profile Profile with the same Corporation Name and Unit Name.
Trading Partner TPA with the same sender name, receiver name and agreement
Agreement (TPA) ID.
Document Attribute with the same name.
attribute
TN Document TN Document Type with the same name.
Type
Processing rule Processing rule with the same name.

If Trading Networks finds a matching item using either method, Trading Networks
prompts as to whether it should overwrite that item in the target system. For more
information about how Trading Networks overwrites the items in the target system, see
“Using the Overwrite Dialog Box” on page 458.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 443
C Exporting and Importing Database Information

Dependencies For Trading Networks Objects


In the Export Data dialog boxes, when you select an item in the tree structure, if the
selected item requires additional items, Trading Networks shows these dependencies in
the Dependencies area of the dialog. For example, if you select a TN Document Type that
references custom attributes and a duplicate checking service for the Check for Duplicate
Document pre-processing action, Trading Networks lists the custom attributes and the
duplicate checking service in the Dependencies area of the dialog.

Export Data dialog with a TN Document Type that has dependencies selected

Note: The Import Data dialog box shows some, but not all of the dependencies. For
example, the Import Data dialog box cannot display the IS service dependencies
because these dependencies are not recorded in the exported file.

444 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
C Exporting and Importing Database Information

Migrating Profiles
To migrate profiles, use the following items in the Export Data and Import Data dialog
boxes:

Items in
Export/Import
Data Dialog box Use to migrate... Dependencies
Partner Data Data for:  Profile Groups
 Standard profile fields  Delivery Methods
 Extended profile fields  External ID Types
 Certificate information on the Security  Contact Types
tab of the profile.
For more information,
For more information, see “Partner Data” see “Partner Data
on page 446. Dependencies” on
page 446.
External ID Types External ID types referenced by the None
profiles on your system.
Trading Networks lists all external ID
types defined in the database. These
include all the standard external ID types
(e.g., DUN, DUNS+4) that are installed
with Trading Networks and all custom
external ID types that you add using the
wm.tn.dictionary:addIDType service.
Contact Types Contact types referenced by the profiles on None
your system.
Trading Networks lists all contact types
defined in the database. These include both
the standard contact types (i.e., Technical
and Administrative) that are installed with
Trading Networks and all custom contact
types that you add using the
wm.tn.dictionary:addContactType service.
Profile Groups Partner groups that you have registered on None
your Trading Networks system.

Important! You cannot use export/import to share your profile with a partner. When
you export your (Enterprise) profile, Trading Networks records that the profile is the
Enterprise profile. Trading Networks does not allow you to import the Enterprise
system from your system into a partner's system.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 445
C Exporting and Importing Database Information

Note: When importing profiles, if any of the dependent data is not defined, Trading
Networks throws an error and does not import the profile. For example, if the contact
type is not already defined in the target system before importing a contact of that
type, an error is thrown and that profile is not imported.

Partner Data
Trading Networks lists each partner by its corporation name under the Partner Data item.

Partner Data in the Export Data or Import Data dialog box

Note: The Enterprise profile is also listed by its corporation name. It is not listed under
Enterprise.

For each partner that is listed under Partner Data, Trading Networks lists the following
elements:
 Profile. Select this item to migrate the data for the standard profile fields for the
specific partner.
 Security Data. Select this item to migrate the certificate information from the Security
tab of the partner's profile. If the profile has no information on the Security tab, the
Security Data element will not be listed under Partner Data in the tree.
 One element for each extended profile field. Select these items to migrate the data for the
extended profile fields for the specific partner. If you have not defined extended
fields, no extended field elements will be listed under Partner Data in the tree.

Partner Data Dependencies


The following table shows the dependencies for Partner Data. For more information about
dependencies, see “Dependencies For Trading Networks Objects” on page 444.

Partner Data
Element Dependencies Description
Profile Partner Groups The partner groups that are identified in the partner’s
profile.
Use the Profile Groups tree element to migrate the
partner groups.

446 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
C Exporting and Importing Database Information

Partner Data
Element Dependencies Description
Delivery The delivery methods that are defined for the
Methods partner.
If only the built-in immediate delivery methods are
defined for the partner, no action is needed.
If immediate delivery methods that you create or the
custom delivery services are defined for the partner,
you cannot migrate the delivery methods. You must
create these methods in the target system.
External ID The external ID types that are used by the partner.
Types
If the partner uses custom external ID types that you
added using the wm.tn.dictionary:addIDType service,
migrate the those external ID types using the External
ID Types item.
Trading Networks also lists standard external ID
types. You do not need to migrate these unless they
have been deleted from the target system.
Contact Types The contact types that are used by the partner.
If the partner uses custom contact types that you
added using the wm.tn.dictionary:addContactType service,
migrate those contact types using the Contact Types
item.
Trading Networks also lists standard contact types.
You do not need to migrate these unless they have
been deleted from the target system.
Queues The public queues used by the partner.
You migrate the queues using the Public Queues item.
Security Data Profile The partner’s profile. You migrate the profile when
you select the Profile element under Partner Data.
Extended Field Definition The profile field definition for the extended profile
Profile Fields field.
Use the Field Definitions item to migrate the definition
for the extended profile field. For more information,
see “Migrating Profile Fields” on page 448.
Profile The partner’s profile. You migrate the profile when
you select the Profile element under Partner Data.

In addition to migrating the queue, ensure you move the scheduled delivery services that
are associated with the queues to the target system.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 447
C Exporting and Importing Database Information

Migrating Profile Fields


To migrate profile fields, use the following items in the Export Data and Import Data
dialog boxes:

Items in
Export/Import
Data Dialog box Use to migrate... Dependencies
Field Definitions Definitions for standard and extended profile Field Group
fields.
For more
Note: To migrate the data for profile fields, use information, see
the Partner Data item. For more information, see “Field Definitions
“Partner Data” on page 446. Dependencies”
on page 448.
Field Groups Profile field groups that you added to your None
system on the Extended Field group of a profile or
by using the wm.tn.dictionary:addFieldGroup service.
Trading Networks lists all field groups,
including the standard field groups that are
installed with Trading Networks (e.g.,
Corporation, Delivery, Contact). You only need
to migrate custom field groups that you add.

Field Definitions Dependencies


When you select a profile field under the Field Definitions item, Trading Networks lists the
field group to which the profile field belongs in Dependencies.
If the profile field belongs to a custom field group that you added on the Extended Fields
tab of a profile or by using the wm.tn.dictionary:addFieldGroup service, migrate the field
groups using the Field Group item.
If the profile field belongs to a standard field group (e.g., Corporation, Delivery) that was
installed with Trading Networks, Trading Networks lists the standard field group. You
do not need to migrate standard field groups.
For more information about dependencies, see “Dependencies For Trading Networks
Objects” on page 444.

448 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
C Exporting and Importing Database Information

Migrating TN Document Types


To migrate TN Document Types, use the following items in the Export Data and Import
Data dialog boxes:

Items in Export/Import
Data Dialog box Use to migrate... Dependencies
Document Types Definitions for TN Document Types.  IS Services
 Attributes
For more
information, see
“Document Type
Dependencies”
on page 449.
DocType Categories Categories of documents (e.g., XML and None
Flat File). All Trading Networks systems
(which is a sub-item
will have the TN Document Type
under Binary Data)
categories. You do not need to migrate
them.

Document Type Dependencies


The following table shows the dependencies for Document Types. For more information
about dependencies, see “Dependencies For Trading Networks Objects” on page 444.

Dependencies Description
IS Services The fully-qualified name of the following types of services that
you can specify in a TN Document Type:
 Duplicate checking service for the Check for Duplicate
Document pre-processing action
 Custom attribute transformation services if specified for an
attributes to extract.
If a TN Document Type that you are migrating uses either or
both of these types of services, ensure that you move the IS
services to the target Trading Networks system.
Attributes The custom document attributes that are associated with the TN
Document Type.
Use the Attributes item to migrate the custom attributes for the
TN Document Type. For more information, see “Migrating
Custom Document Attributes” on page 450.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 449
C Exporting and Importing Database Information

Note: When importing TN Document Types, Trading Networks determines whether


the attributes used by the TN Document Type exist in the target system with the same
internal ID or name. If they do not exist, Trading Networks throws an error and does
not import the TN Document Type.

Migrating Custom Document Attributes


To migrate custom document attributes, use the following item in the Export Data and
Import Data dialog boxes.

Note: You do not need to migrate system attributes because the system attributes are
defined when you install Trading Networks, and you cannot delete nor alter their
definitions.

Items in
Export/Import Data
Dialog box Use to migrate... Dependencies
Document Definitions for custom document attributes. None
Attributes

Migrating Processing Rules


To migrate processing rules, use the following item in the Export Data and Import Data
dialog boxes.

Items in
Export/Import Data
Dialog box Use to migrate... Dependencies
Processing Rules Processing rules  IS Services
 Delivery Methods
For more information, see
“Processing Rules Dependencies”
on page 451.

When you select to export and import processing rules, be aware of the order of the
processing rules. Trading Networks maintains processing rules in a specific order. This is
the order in which Trading Networks selects a processing rule to use for processing an
incoming document. (Trading Networks uses the first processing rule that matches.)

450 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
C Exporting and Importing Database Information

Trading Networks maintains the list of processing rules that you want to export and
import in the order it is in the target system. When you import a processing rule, Trading
Networks replaces the matching processing rules and appends the non-matching
processing rules without changing the order of the list in the target system, irrespective of
its order in the source system.

Note: When you import processing rules, you can select to replace all the processing
rules in the target Trading Networks system with the imported processing rules by
selecting the Replace Processing Rule List option in the Import Data dialog box.

Processing Rules Dependencies


The following table shows the dependencies for Processing Rules. For more information
about dependencies, see “Dependencies For Trading Networks Objects” on page 444.

Dependencies Description
IS Services The fully-qualified names of the following types of services that
you can specify in a processing rule:
 Service you identify with the Execute a Service processing
action
 Duplicate checking service for the Check for Duplicate Document
pre-processing action if a custom service is specified
If a processing rule that you are migrating uses either or both of
these types of services, ensure that you move the IS services to
the target Trading Networks system.
Delivery Methods The immediate delivery method that is used in the Deliver
Document By action of the processing rule.
If the processing rule uses a custom immediate delivery method
that you added, ensure that you move the corresponding IS
services to the target Trading Networks system, and use the
wm.tn.delivery:registerService service to register the IS service using
the same delivery method name.
If the processing rule uses a built-in immediate delivery method,
no action is needed.
If the processing rule contains the immediate delivery methods
that you create or the custom delivery services, you cannot
migrate the delivery methods. You must create these methods in
the target system.

Although the Dependencies does not list the following Trading Networks objects, they are
also required if referenced in a processing rule. Review the processing rules you want to
export/import and migrate the following if appropriate.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 451
C Exporting and Importing Database Information

 Profiles for senders identified in the Sender criterion on the Criteria tab of the
processing rule, see “Migrating Profiles” on page 445.
 Profiles for the receivers identified in the Receiver criterion on the Criteria tab of the
processing rule, see “Migrating Profiles” on page 445.
 TN Document Types identified in the Document Type criterion on the Criteria tab of the
processing rule, see “Migrating TN Document Types” on page 449.
 Custom document attributes identified on the Extended Criteria tab of the processing
rule, see “Migrating Custom Document Attributes” on page 450.
 Queues referenced by a Scheduled Delivery used by the Deliver Document By processing
action. To create the queues on the target system, you can do one of the following:
 Use the tnexport and tnimport utilities to export all public and private queues.
For more information, see “Using the tnexport and tnimport Utilities” on
page 460.
 Manually create the required queue on the target system. Be sure to use the exact
queue name with the same combination of upper and lowercase letters when
defining the queue on the target system.
In addition to migrating the queue, ensure you move the scheduled delivery service
that are associated with the queue to the target system.

Note: When importing processing rules, Trading Networks determines whether the
associated senders, receivers, and TN Document Types exist in the target system with
the same internal ID or name. If they do not exist, Trading Networks throws an error
and does not import the processing rule.

Migrating Trading Partner Agreements (TPAs)


To migrate Trading Partner Agreements (TPAs), use the following item in the Export Data
and Import Data dialog boxes.

Items in
Export/Import Data
Dialog box Use to migrate... Dependencies
Agreements TPAs  Profiles
 IS Services
 IS Document Types
For more information, see
“Agreements Dependencies” on
page 453.

452 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
C Exporting and Importing Database Information

Agreements Dependencies
The following table shows the dependencies for Agreements. For more information about
dependencies, see “Dependencies For Trading Networks Objects” on page 444.

Dependencies Description
Profiles The profiles of the partners that are associated with the TPA. A
TPA is associated with two trading partners on your system, one
that acts as the sender and one that acts as the receiver. Migrate
the profiles for the sender and receiver. For more information,
see “Migrating Profiles” on page 445.
IS Services The fully-qualified names of the following types of services that
you can specify in a TPA:
 Initialization service
 Export service
If a TPA that you are migrating uses either or both of these types
of services, ensure that you move the IS services to the target
Trading Networks system.
IS document types The fully-qualified name of the IS document type that defines the
structure of the TPA data.
Ensure that you migrate this IS document type to the target
Trading Networks system.

Note: When importing TPAs, Trading Networks determines whether the associated
senders and receivers exist in the target system with the same internal ID or name. If
they do not exist, Trading Networks throws an error and does not import the TPA.

Migrating Queries
You can migrate all the queries you have defined for the Trading Networks Console
screens (e.g., queries you defined for the Transaction Analysis screen to search for specific
documents). To migrate all of your queries, use the following item in the Export Data and
Import Data dialog boxes.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 453
C Exporting and Importing Database Information

Items in
Export/Import Data
Dialog box Use to migrate... Dependencies
Query All queries that you have defined for all screens None
of the Trading Networks Console:
(a sub-item
under Binary Data)  Trading Partners
 Document Types
 Processing Rules
 Agreements
 Transaction Analysis
 Tasks
 Activity Log

Note: This migrates only queries defined in the Console. Searches you save in My
webMethods are not stored in the Trading Networks database.

Migrating Public Queues


To migrate public queues, use the following item in the Export Data and Import Data
dialog boxes.

Items in
Export/Import Data
Dialog box Use to migrate... Dependencies
Public Queues Public queues. IS services

Public Queues Dependencies


The following table shows the dependencies for Public Queues. For more information
about dependencies, see “Dependencies For Trading Networks Objects” on page 444.

Dependencies Description
IS Services The fully-qualified names of the delivery service associated with
the queue. Be sure to move the IS services to the target Trading
Networks system.

454 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
C Exporting and Importing Database Information

Migrating Data Permissions


You can migrate data permissions that provide role-based access to Trading Networks
data when accessing the data via My webMethods. You define the data permissions in
My webMethods. When you define data permissions, you define rules that identify:
 A data set that defines the Trading Networks data to which the data permission rule
applies. The data set can contain partner profiles and transaction (BizDoc type)
entries.
 The roles that can act on the data in the data set. Additionally, for each role you
indicate the Trading Networks permissions that the role can take against the data.
For more information about data permissions, see “Data and Actions Governed by Data
Permissions” on page 68 and “Defining Data Permissions” on page 72.

Note: You cannot migrate the general functional permissions.

How to Migrate Data Permissions


You must use the command line utilities tnexport and tnimport to migrate data
permissions. You cannot export or import data permissions from the Console.
To export data permissions, use the -dls option of the tnexport utility. The tnexport
utility exports all data permission rules. You cannot select a subset of the data permission
rules.
When you use the tnimport utility to import the data permission rules, the utility imports
all data in the file that contains the data you are importing. As a result, if the file contains
data permission rules, they will be imported into the target Trading Networks.
For more information, see “Using the tnexport and tnimport Utilities” on page 460.

Data Permission Dependencies


The following table shows the dependencies when migrating data permissions.

Dependencies Description
Profiles All profiles that are part of the data set definitions for data
permission rules.
TN Document All TN Document Types that are part of the data set definitions for
Types data permission rules.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 455
C Exporting and Importing Database Information

Dependencies Description
My webMethods The My webMethods roles that the data permission rules
roles reference. These roles are defined in the My webMethods Server
database not the Trading Networks database, and as a result, you
cannot import/export them with the Trading Networks tnexport
and tnimport command line utilities. You must ensure the My
webMethods Server setup is the same in the target system.

For more information about how profiles and TN Document Types are used to define the
data set of a data set permission rule, see “Defining Data Permissions” on page 72.
When you export the data permissions, and you do not include the dependent profiles,
and TN document types, then when importing, Trading Networks throws a warning
indicating that the required dependent does not exist in the target system. It then
continues to import the other items.

Exporting Database Information from the Console


To export database information, perform the following procedure.

To export database information

1 In Trading Networks Console: File > Export.


Trading Networks displays the Export Data dialog box. The Available Items contains a
tree structure that lists the database items that are available for you to export.
2 Select the items that you want to export by moving items to the Selected Items list.
When you select one of the following types of items in the Available Items list, check the
Dependencies to determine whether there are other items you should export as well.

Item For more information about dependencies, see...

Partner Data “Partner Data Dependencies” on page 446


Field Definitions “Field Definitions Dependencies” on page 448
Document Types “Document Type Dependencies” on page 449
Processing Rules “Processing Rules Dependencies” on page 451
Public Queues “Public Queues Dependencies” on page 454

3 Click OK.
4 In the Save File dialog box, specify the file to which you want Trading Networks to
write the database information. Then, click Save.

Note: The file that contains the exported data is a binary-encoded file.

456 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
C Exporting and Importing Database Information

Importing Database Information from the Console


When importing data, you need to:
 Determine how to handle importing items that exist in the target system. For more
information, see “Importing Items that Match With Those in the Target System” on
page 457.
 Select the Replace Processing Rules List option when you want to replace all the
processing rules in the target Trading Networks system with the imported processing
rules.

Importing Items that Match With Those in the Target System


When importing an item, if the item in the target system matches either the internal ID or
the name, then Trading Networks handles the items based on the type of item that is
being imported.

For the following items in the Import


Data dialog box: Trading Networks...
 Document Types Displays the Overwrite dialog box.
 Document Attributes For more information about how to use this dialog
box, see “Using the Overwrite Dialog Box” on
 Partner Data:
page 458.
 Profiles
For information about how to force the overwrite
 Field Groups of identically named items without displaying the
Overwrite dialog box, see “Suppressing the
 Contact Types Overwrite Dialog Box and Forcing the Overwrite
 Public Queues of Items” on page 459.
 Field Definitions Does not display the Overwrite dialog box.
Attempts to add the identically named item to the
 External ID Types
target database.
 Agreements
 Binary Types
 Partner Data:
 Security Data
 Extended Field Data
 Processing Rules Displays the Overwrite dialog box, when you do
not select the Replace Processing Rule List option.
Does not display the Overwrite dialog box when
you select the Replace Processing Rule List option.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 457
C Exporting and Importing Database Information

Using the Overwrite Dialog Box


When you attempt to import any of the following items and the same type of item with
an identical name already exists in the target database, Trading Networks will prompt
you to determine whether to overwrite the item in the target database:
 Document Types
 Document Attributes
 Partner Data (Profiles only)
 Field Groups
 Contact Types
 Public Queues
 Processing Rules
The Overwrite dialog box allows you to select one of the following options:

Overwrite dialog option Description


Yes Selecting Yes grants Trading Networks permission to
overwrite only the Trading Networks object described in the
Overwrite dialog box.
Yes to All Selecting Yes to All grants Trading Networks permission to
overwrite the Trading Networks object described in the
Overwrite dialog box and all subsequent identically named
items that Trading Networks might encountered during the
import process. When you select Yes to All Trading Networks
no longer displays the Overwrite dialog box for identically
named items.
No Selecting No denies Trading Networks the permission to
overwrite the Trading Networks object described in the
Overwrite dialog box. Trading Networks does not import the
item described in the Overwrite dialog box.
No to All Selecting No to All denies Trading Networks the permission to
overwrite the Trading Networks object described in the
Overwrite dialog box and all subsequent identically named
items that Trading Networks might encountered during the
import process. When you select No to All Trading Networks no
longer displays the Overwrite dialog box for identically
named items. No identically named items are imported.

458 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
C Exporting and Importing Database Information

Suppressing the Overwrite Dialog Box and Forcing the Overwrite of Items
If you want Trading Networks to automatically overwrite the matching items in the
target database, select the Force Import check box on the Import Data dialog box. When
you select the Force Import check box, Trading Networks does not display the Overwrite
dialog box. It overwrites the matching items without prompting for confirmation.

Procedure for Importing Database Information from the Console


To import database information, perform the following procedure.

To import database information

1 In Trading Networks Console: File > Import.


Trading Networks displays the Import Data dialog box.
2 Click the Select File icon to open the Select File dialog box to identify the file that
contains the database information that you want to import. Then, click Open.
Trading Networks populates the Available Items list with the items contained in the file
you select.
3 If you want Trading Networks to automatically import the items that match with
those in the target database without prompting for confirmation, select the Force
Import check box. For more information, see “Importing Items that Match With Those
in the Target System” on page 457 and “Suppressing the Overwrite Dialog Box and
Forcing the Overwrite of Items” on page 459.
If you do not select the Force Import check box, see “Using the Overwrite Dialog Box”
on page 458 for how to use the Overwrite dialog box.
4 If you want to import processing rules, and you want Trading Networks to replace all
the existing processing rules in the target database with the processing rules that you
import, select the Replace Processing Rule List check box. For more information, see
“Procedure for Importing Database Information from the Console” on page 459.
5 Select the items that you want to import by moving items to the Selected Items list.
When you select one of the following types of items in the Available Items list, check the
Dependencies to determine whether there are other items you should import as well.

Item For more information about dependencies, see...

Partner Data “Partner Data Dependencies” on page 446


Field Definitions “Field Definitions Dependencies” on page 448
Document Types “Document Type Dependencies” on page 449
Processing Rules “Processing Rules Dependencies” on page 451
Public Queues “Public Queues Dependencies” on page 454

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 459
C Exporting and Importing Database Information

6 Click OK.

Note: If there are any import errors, Trading Networks displays the Import Errors
dialog. This dialog lists each item that has an error. To see more details of the error,
select the item in the Name column.

Using the tnexport and tnimport Utilities


In addition to exporting and importing data using the Trading Networks Console, you
can export and import data using the command line utilities tnexport and tnimport. Run
these utilities from the following directory:
IntegrationServer_directory\packages\WmTN\bin

Use these utilities to perform a bulk transfer of data from one Trading Networks system
to another.

tnexport Utility
Use the tnexport utility to export all objects of the selected types. For example, if you
specify you want to export processing rules, all processing rules defined in the Trading
Networks database are exported. The format of the tnexport command line is as follows:

tnexport outfile options

where:
outfile is one of the following:

-bin binfile Use the -bin option to export the data to a binary file. binfile is the
path and file name to which you want to export the data. The
directory in which you want the output file placed must already
exist. If you specify a relative path, Trading Networks uses a
directory relative to the directory from which you are running the
tnexport utility. If the file already exists, Trading Networks
overwrites it.

Note: Binary output is much smaller than the XML output, but
cannot be read by humans.

-xml xmlfile Use the -xml option to export the data to an XML file. xmlfile is the
path and file name to which you want to export the data. The
directory in which you want the output file placed must already
exist. If you specify a relative path, Trading Networks uses a
directory relative to the directory from which you are running the
tnexport utility. If the file already exists, Trading Networks
overwrites it.

460 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
C Exporting and Importing Database Information

options is one or more of the following:

-attribs Indicates you want to export all the document attributes.


-types Indicates you want to export all the TN Document Types.
-rules Indicates you want to export all the processing rules.
-profiles Indicates you want to export all the profiles.
-extflds Indicates you want to export the values for the extended fields
that are in the profiles.
-flddefs Indicates you want to export all the definitions for field groups
and all the definitions for the profile fields in those groups.
-lkup Indicates you want to export all the definitions for contact types,
external ID types, and partner groups that you might have
added.
-queues Indicates you want to export all public and private queues.
-securityData Indicates the you want to export all certificate information from
the Security tabs of all profiles.
-tpas Indicates you want to export all the trading partner agreements
(TPAs).
-dls Indicates that you want to export all the data permission rules
that were defined in My webMethods.
-all Indicates that you want to export all objects, that is, all attributes,
TN Document Types, processing rules, profiles, extended field
values, profile field groups, field definitions, custom contact
types, custom extended fields, public queue, and TPAs.

Examples
 You want to export all profiles, all extended field values in the profiles, and all the
extended field definitions to the XML file \TradingNetworks\ExportedData.xml. Use
the following command line:
tnexport -xml \TradingNetworks\ExportedData.xml -profiles -extflds -flddefs

 You want to export all data in the Trading Networks database to the binary file
ExportedData.bin, and you want the utility to create the ExportedData.bin file in the
same directory as where you are running the utility. Use the following command line:
tnexport -bin ExportedData.bin -all

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 461
C Exporting and Importing Database Information

tnimport Utility
Use the tnimport utility to import all data in a specified file. The file you specify must
contain data that you previously exported from a Trading Networks database using
either the tnexport utility or the Trading Networks Console.

Note: After using the tnimport utility, you must reload the WmTN package to be able
to use the imported data.

The format of the tnexport command line is as follows:

tnimport infile options

where:
infile is one of the following:

-bin binfile Use the -bin option to import the data from a binary file.
binfile is the path and file name of the binary file that
contains the data to import. If you specify a relative path,
Trading Networks looks for the directory relative to the
directory from which you are running the tnimport utility.
-xml xmlfile Use the -xml option to import the data from an XML file.
xmlfile is the path and file name of the XML file that contains
the data to import. If you specify a relative path, Trading
Networks looks for the directory relative to the directory
from which you are running the tnimport utility.

options is one or more of the following:

-db Indicates that you actually want to import the information


and write it to the Trading Networks database.
If you do not specify this option, the tnimport utility will only
load and print information about the data in your file. This is
useful for testing purposes.
-force Indicates whether you want the tnimport utility to overwrite
existing data with the same ID or name that already exists in
the Trading Networks database. This option only applies
when importing document attributes, TN Document Types,
profiles, profile field groups, profile field definitions, and
TPAs.
If you do not specify this option and an object with the same
ID or name already exists in the Trading Networks database,
the import fails.

462 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
C Exporting and Importing Database Information

-replaceRuleList Indicates whether you want the tnimport utility to replace all
the processing rules in the input file to the current list of
processing rules. This applies only to importing processing
rules.
If you do not specify this option, the tnimport utility replaces
only the matching processing rules in the target system and
appends the non-matching processing rules to the existing
list on the target system.

Examples
 You want to import the data in the XML file \TradingNetworks\ExportedData.xml.
You want the tnimport utility to overwrite objects that have the same ID or name as
those in the input file, and you want to completely overwrite the matching processing
rules and append the non-matching processing rules to the current list. Use the
following command line:
tnimport -xml \TradingNetworks\ExportedData.xml -db -force

 You want to view information about the data in the input file ExportedData.bin that
resides in the same directory as the tnimport utility. You do not want to import it into
your database. Use the following command line:
tnimport -bin ExportedData.bin

 You want to import all data in the binary file ExportedData.bin that resides in the
same directory as the tnimport utility. You want the tnimport utility to replace all the
existing list of processing rules in the target system with the imported processing
rules. Use the following command line:
tnimport -bin ExportedData.bin -db -replaceRuleList

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 463
C Exporting and Importing Database Information

464 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
D Trading Networks Configuration Properties

 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
 Updating Properties on the Configure Properties Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
 Alphabetical Listing of the Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
 Cluster Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 468
 Database Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
 Database Query Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
 Data Level Security Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473
 Debugging Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473
 Document Archiving Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474
 Document Delivery Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475
 Document Validation Property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476
 Flat File Property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477
 Large Document Handling Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478
 Localization Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479
 Performance Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480
 Profile Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 486
 Task Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 489
 Miscellaneous Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 465
D Trading Networks Configuration Properties

Overview
You can update properties from My webMethods using the Administration > Integration >
B2B Settings > Configure Properties page. Updating properties on the Configure Properties
page changes the properties in the Trading Networks properties.cnf file. The
properties.cnf file is located in the
Software AG_directory\IntegrationServer\packages\WmTN\config\ directory, where
Software AG_directory\IntegrationServer is the directory in which your Integration Server
is installed.

Updating Properties on the Configure Properties Page


Use the following procedure to update the Trading Networks properties.
1 In My webMethods: Administration > Integration > B2B Settings > Configure Properties.
2 If the property that you want to update is in the list, change its value.
3 If the property that you want to update is not in the list, create a new line by typing
the property you want to add along with its value. Be sure to use the correct
combination of uppercase and lowercase letters.
4 Click Save.

Alphabetical Listing of the Properties


The following table lists all the Trading Networks properties that you can set along with a
category for each property. Click on a property to view a description of that property. To
view all properties within a category, click on the category name.

Property Category
tn.archive.archiveAfterDays Document Archiving Properties
tn.archive.batchSize Document Archiving Properties
tn.archive.batchBackoffTime Document Archiving Properties
tn.archive.deleteAfterDays Document Archiving Properties
tn.archive.maxRows Document Archiving Properties
tn.BigDocThreshold Large Document Handling Properties
tn.check.ambiguous.docs Miscellaneous Properties
tn.clean.routePipeline Performance Properties
tn.cluster.notifyCacheChange Cluster Properties
tn.cluster.notifyProfileAddUser Cluster Properties

466 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
D Trading Networks Configuration Properties

Property Category
tn.cluster.notifyPropertyChange Cluster Properties
tn.cluster.sync.remoteAliases Cluster Properties
tn.db.fetchMaxRows Performance Properties
tn.db.sortDocTimestamp Performance Properties
tn.default.idType Profile Properties
tn.default.userCreation Profile Properties
tn.delivery.ftpTransferType Document Delivery Properties
tn.dls.EnableLogDataSetChanges Data Level Security Properties
tn.doc.saveAsDone Performance Properties
tn.doctype.includeHidden Miscellaneous Properties
tn.doc.validate.max_errs Document Validation Property
tn.export.deleted.profiles Profile Properties
tn.ff.contenttypes Flat File Property
tn.ism.stats.saveFrequency Miscellaneous Properties
tn.locale.country Localization Properties
tn.locale.language Localization Properties
tn.locale.variant Localization Properties
tn.mail.from Document Delivery Properties
tn.mail.onuserfail Miscellaneous Properties
tn.mail.subject Document Delivery Properties
tn.profile.EnableLogProfileChanges Profile Properties
tn.query.maxrows Database Query Properties
tn.query.threshold Database Query Properties
tn.receive.clearKeys Performance Properties
tn.receive.clearTNObjects Performance Properties
tn.recursion.max Miscellaneous Properties
tn.resubmit.return.bizdocs Performance Properties
tn.server.seq Miscellaneous Properties
tn.store.encoding Database Properties
tn.store.logsql Data Level Security Properties
tn.store.pool.stmt Performance Properties

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 467
D Trading Networks Configuration Properties

Property Category
tn.task.attempt.notPersisted Task Properties
tn.task.dbupdate.enableNotifications Task Properties
tn.task.dbupdate.retryEnabled Task Properties
tn.task.dbupdate.retrySweepTime Task Properties
tn.task.init.groupSize Task Properties
tn.task.init.pauseLength Task Properties
tn.task.maxRetries Task Properties
tn.task.notifyFailure Task Properties
tn.task.pauseOnMaxThreads Task Properties
tn.task.retryFactor Task Properties
tn.task.sweepTime Task Properties
tn.task.threadpool.pct Task Properties
tn.task.ttw Task Properties
tn.tpa.cacheSize Performance Properties
tn.transport.user Task Properties
tn.xml.cacheXQLQueryResults Performance Properties
tn.xml.xqlThreshold Large Document Handling Properties

Cluster Properties
Set these properties to configure Trading Networks to run in a clustered environment.

Note: If you are using Trading Networks in a cluster, be sure to set the tn.query.threshold
property to -1.

468 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
D Trading Networks Configuration Properties

tn.cluster.notifyCacheChange
Description: Controls whether an Integration Server will notify other servers in
the cluster when a change occurs in any of the following:
 TN document types
 processing rules
 attributes
 profile summaries
 delivery services
Specify either true or false. If you specify true, use the
tn.cluster.sync.remoteAliases property to specify the servers in the cluster
that should be notified.
Default Value: true

Example: To configure Trading Networks so that it will not notify servers in the
cluster, use the following:
tn.cluster.notifyCacheChange=false

tn.cluster.notifyProfileAddUser
Description: Controls whether when a user account is created on one Integration
Server in a cluster, the user account is also created on the other
servers in the cluster. Specify either true or false. If you specify true,
use the tn.cluster.sync.remoteAliases property to specify the servers in the
cluster that should be notified.
Default Value: true

Example: To configure Trading Networks so that it will not automatically create


user accounts on other servers in the cluster, use the following:
tn.cluster.notifyProfileAddUser=false

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 469
D Trading Networks Configuration Properties

tn.cluster.notifyPropertyChange
Description: Controls whether when you update the Trading Networks properties
on one Integration Server in a cluster that the Trading Networks
properties are updated on the other servers in the cluster. Specify
either true or false. If you specify true, use the
tn.cluster.sync.remoteAliases property to specify the servers in the cluster
that should be notified.
Default Value: true

Example: To configure Trading Networks so that it will not automatically


update properties on all servers in the cluster, use the following:
tn.cluster.notifyPropertyChange=false

tn.cluster.sync.remoteAliases
Description: Specifies the remote server aliases for the other servers in the cluster.
Default Value: No default; if you do not provide a value, Trading Networks cannot
notify other servers when there are changes.
Example: If you have two servers, Server1 and Server2, running in a cluster,
you must create a remote server alias for Server1 on Server2, and a
remote server alias for Server2 on Server1. For example, the
tn.cluster.sync.RemoteAliases property for Server1 would look like
the following:
tn.cluster.sync.remoteAliases=Server2

If you have more than two Integration Servers (for example, Server1,
Server2, and Server3) running in a cluster, separate the remote server
aliases with a comma. For example, the tn.cluster.sync.RemoteAliases
property for Server 1 in this instance would look like the following:
tn.cluster.sync.remoteAliases=Server2,Server3

470 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
D Trading Networks Configuration Properties

Database Properties

tn.store.encoding
Description: Identifies the encoding that your database is using. When a string is
passed to an INSERT or UPDATE statement and that string is too
long to fit into a column, Trading Networks uses the value of this
property to determine where to truncate the string.
Default Value: If you do not specify a value, Trading Networks uses the default
system encoding.
Example: To indicate that your database uses the SHIFT_JIS encoding, specify
the following:
tn.store.encoding=SHIFT_JIS

Database Query Properties

tn.query.maxrows
Description: Specifies the default number of rows that the query services return.
The query services are services in the wm.tn.query folder. An input
variable to the query services allows you to specify a maximum
number of rows that you want returned from a query. However, if
you do not specify the number of rows to return when you invoke a
query service, the query service uses the value you specify for this
property. If a query returns more rows than allowed by this property,
the query service silently drops the rows that exceed the value you
specify.
Default Value: 0 (This value means there is no maximum.)
Example: If you want to set the default value for the number of rows a query
service returns to 500, specify the following:
tn.query.maxrows=500

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 471
D Trading Networks Configuration Properties

tn.query.threshold
Description: The number of rows of query results that Trading Networks stores in
the session object.
You can have Trading Networks store query results in the session
object to optimize query execution. Trading Networks stores the
number of rows that you specify in the session object on the server
and uses the caching component to store the remaining rows of query
results. This caching component stores these results in Coherence
cache.
Trading Networks uses this property for all queries that you perform
from My webMethods and the Console, for example, queries for
documents, tasks, and activity logs. In addition, this is the default for
queries that you perform using the built-in services in the wm.tn.query
folder. For more information about the built-in service in the
wm.tn.query folder, see the webMethods Trading Networks Built-In
Services Reference.
If you are using Trading Networks in a cluster, Trading Networks
should not store query results in the session object. To prevent
Trading Networks from storing query results in the session object, set
this property to –1.
If you are not using Trading Networks in a cluster, for best
performance, this setting should be the page size you use for query
results. Trading Networks uses a page size of 50 for queries
performed through the Console.
Default Value: 50

Example: To indicate that you do not want Trading Networks to store query
results in a session object because you are using Trading Networks in
a cluster, specify the following:
tn.query.threshold=-1

472 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
D Trading Networks Configuration Properties

Data Level Security Properties

tn.dls.EnableLogDataSetChanges
Description: Controls whether you want to log actions related to role-based access.
When you use My webMethods to manage data permissions and
general functional permissions, Trading Networks logs changes that
you make.
Default Value: false

When you specify false, Trading Networks does not log role-based
access auditing information.
Example: If you want Trading Networks to log role-based access auditing
information, specify the following:
tn.dls.EnableLogDataSetChanges=true

Debugging Properties

tn.store.logsql
Description: Specifies whether you want Trading Networks to write each SQL
statement to the server log as it executes the statement. Writing the
SQL statements to the log will cause the server to run more slowly.
You should only use this feature when in a development
environment and not in a production environment. Specify true to
have Trading Networks write the SQL statements to the log or false
to prevent Trading Networks from writing the SQL statements to the
log.

Note: To view the SQL statements in the server log, you must have the
detail level for your server log set to 9 or higher. You specify the level
of detail you want to view in the server log using the -debug startup
option when you start the Integration Server.

Default Value: false

Example: If you are running in a development environment and want Trading


Networks to write the SQL statements to the log, specify the
following:
tn.store.logsql=true

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 473
D Trading Networks Configuration Properties

Document Archiving Properties

tn.archive.archiveAfterDays
Description: Specifies the number of days so that Trading Networks archives
documents older than the specified number of days. Specify a
number from 0 through 730365. If you omit this property or specify 0
for this property, Trading Networks does not archive documents.
Default Value: No default. If you omit this property, Trading Networks does not
archive documents.
Example: To archive documents 30 days after they are received, specify the
following:
tn.archive.archiveAfterDays=30

tn.archive.batchSize
Description: Specifies the number of documents that Trading Networks must
archive or delete in a batch. Trading Networks archives or deletes
documents in batches.
If the number of documents available for archival or deletion is less
than the value that you set for this property, then Trading Networks
archives or deletes only those number of documents in the batch.
There is no limit for the batch size.
Default Value: 100

Example: To archive 300 documents in one batch, specify the following:


tn.archive.batchSize=300

tn.archive.batchBackoffTime
Description: Specifies the pause time in seconds between two batches of archival
or deletion. There is no time limit for the pause time.
Default Value: 15

Example: To set a back off time of 5 seconds, specify the following:


tn.archive.batchBackoffTime=5

474 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
D Trading Networks Configuration Properties

tn.archive.deleteAfterDays
Description: Specifies the number of days so that Trading Networks deletes
documents older than the specified number of days. Specify a
number from 0 through 730365. If you omit this property or specify 0
for this property, Trading Networks does not delete documents.
Default Value: No default. If you omit this property, Trading Networks does not
delete documents.
Example: To delete documents 60 days after they are received, specify the
following:
tn.archive.deleteAfterDays=60

tn.archive.maxRows
Description: Specifies the maximum number of documents that must be archived
or deleted in each schedule. These documents are archived or deleted
in batches with the size that you provide in the “tn.archive.batchSize”
property.
The value you provide in this property must be greater than or equal
to the value of the tn.archive.batchSize property.
Default Value: -1. -1
indicates that there is no limit to the maximum number of
documents that can be archived or deleted in a schedule.
Example: To archive or delete a maximum of 100000 documents in each
schedule, specify the following:
tn.archive.maxRows=100000

Document Delivery Properties

tn.delivery.ftpTransferType
Description: Controls the transfer type for FTP delivery of documents. Specify
active if you want to use active mode FTP to deliver documents.
Specify passive if you want to use passive mode FTP.
Default Value: passive

Example: If you want to use active mode FTP to deliver documents, specify the
following:
tn.delivery.ftpTransferType=active

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 475
D Trading Networks Configuration Properties

tn.mail.from
Description: The e-mail address you want Trading Networks to use as the “from”
e-mail address in the e-mail messages that it sends to deliver a
document when instructed to use an e-mail delivery method.
Default Value: No default.
Example: If you want the e-mail messages to use the “from” e-mail address
TNAdmin@ifc.com, specify the following:
tn.mail.from=TNAdmin@ifc.com

tn.mail.subject
Description: The subject line you want Trading Networks to use in the e-mail
messages that it sends to deliver a document when instructed to use
an e-mail delivery method.
Default Value: By default, Trading Networks does not specify a subject line in e-mail
messages.
Example: If you want the e-mail messages to use the subject line “Document
from IFC”, specify the following:
tn.mail.subject=Document From IFC

Document Validation Property

tn.doc.validate.max_errs
Description: The maximum number of errors that Trading Networks returns when
errors occur when validating a document. If the structure of a
document is not valid, the validation service can return many error
messages. Set this property to limit the number of returned error
messages.
Default Value: 10

Example: To limit the number of errors to 20, specify the following:


tn.doc.validate.max_errs=20

476 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
D Trading Networks Configuration Properties

Flat File Property

tn.ff.contenttypes
Description: The content types you want the Integration Server to associate with
flat file documents. Use this property to register content types for flat
file documents. To set this property, specify a comma-separated list of
all the content types you want the Integration Server to treat as flat
files.
If you do not include this property in the properties.cnf file, by
default the Integration Server treats documents with the content type
text/plain as flat files.
You cannot register the following content types as flat files:
 application/x-www-form-urlencoded
 text/xml
 application/x-wmrpc2
 application/x-x509v3-bin
 application/x-wmrpc
 application/x-wmrpc-bin
 application/x-wmidatabin
 application/wm-soap
 application/soap
 application/soap+xml
Default Value: text/plain

Example: If you want the Integration Server to treat documents with the
content types text/plain, text/csv, text/richtext, and multipart/digest
as flat files, specify the following:
tn.ff.contenttypes=text/plain,text/csv,text/richtext,multipart
/digest

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 477
D Trading Networks Configuration Properties

Large Document Handling Properties


Set these properties to configure Trading Networks to handle large documents.

tn.BigDocThreshold
Description: The threshold size at which Trading Networks should consider a
document to be large.
Possible Values: -n, any negative whole number indicating that Trading Networks
considers no documents as large. Trading Networks processes all
documents in the traditional manner, reading the document content
into memory during processing.
0,indicating that Trading Networks considers all documents large.
Because all documents that Trading Networks receives contain more
than 0 bytes, Trading Networks uses large document handling for all
documents.
n,
any positive whole number indicating the number of bytes over
which Trading Networks considers a document to be large.
Default Value: -1, indicating that Trading Networks considers no documents to be
large.
Example: If you want Trading Networks to consider all documents over
1,000,000 bytes to be large, set this property to 1000000:
tn.BigDocThreshold=1000000

tn.xml.xqlThreshold
Description: Determines the maximum number of bytes that Trading Networks
reads into memory from the start of an XML document to perform
the XQL queries that are defined in a TN XML document type. The
XQL queries can be identifying queries or queries to extract
attributes. In your TN document types, if you have XQL queries that
point to nodes beyond the number of bytes that Trading Networks
reads, the queries will fail. For more information about queries in TN
document types, see the Chapter 13, “Defining and Managing TN
XML Document Types”.
Specify a positive whole number greater than 1000. If you specify a
value less than 1000, Trading Networks reads 1000 bytes.

478 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
D Trading Networks Configuration Properties

Default Value: If tn.xml.xqlThreshold is not defined, Trading Networks uses the


value of tn.BigDocThreshold.
Example: If you want Trading Networks to read in 50,000 bytes to perform the
XQL queries in TN XML documents, specify the following:
tn.xml.xqlThreshold=50000

Localization Properties
Use the localization properties to change the server’s locale. When you change the locale,
Trading Networks displays error messages and screen labels using the language that is
associated with the locale. To display the messages and screen labels in the language,
Trading Networks must have the appropriate resource bundle. These resource bundles
reside in the tncore.zip file, which was copied to your system during installation. If you
change the locale but the resource bundle does not exist for that locale, Trading Networks
attempts to find the best match. For information about how Trading Networks selects the
resource bundle that matches best, see Sun® Microsystems’ documentation for the
java.util.ResourceBundle class. By default, Trading Networks uses the locale of the host
machine.
To change the locale you must set, at a minimum, the tn.locale.language and tn.locale.country
properties. If you do not specify both of these properties, Trading Networks continues to
use the default locale (the locale of the host machine).

tn.locale.language
Description: The two-letter ISO 639 language code for the language you want
Trading Networks to use for messages and screen labels.
Example: The two-letter ISO 639 language code for the French language is “fr”.
To set this property to identify the French language, specify:
tn.locale.language=fr

tn.locale.country
Description: The two letter ISO 3166 country code for the country that is
associated with the language.
Example: The two-letter ISO 3166 country code for Canada is “CA”. If you want
to localize for the French language in Canada, set tn.locale.language
to "fr" (as shown above) and set tn.locale.country to "CA":
tn.locale.country=CA

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 479
D Trading Networks Configuration Properties

tn.locale.variant
Description: A variant code that further distinguishes the locale, if necessary.
Typically you use the variant code if there is a difference based on the
platform on which the server is running. If you need to specify more
than one variant code, separate them with an underscore, placing the
most important codes first.
For more information about variant codes, see the Sun Microsystems’
documentation for the java.util.Locale class.
Example: You might specify a variant code because of font differences between
platforms. If you are running on UNIX, you might set the variant
code to UNIX:
tn.locale.variant=UNIX

Performance Properties

tn.clean.routePipeline
Description: Removes some of the contents of the pipeline when a document is
routed. If set to true, this property removes all data from the pipeline
except bizdoc, rule, TN_parms, and $tnReprocess. Setting this property
to true can help prevent the pipeline from growing very large, which
could affect system performance.
Default Value: false

Example: If you want Trading Networks to remove some of the contents of the
pipeline when a document is routed, specify the following:
tn.clean.routePipeline=true

tn.db.fetchMaxRows
Description: Specifies the maximum number of result rows that Trading Networks
must retrieve from the database for each query.
If you set the value as 0 (zero), then all the rows of the query result
are retrieved from the database.

480 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
D Trading Networks Configuration Properties

Default Value: 10000

Example: If you want to set 5000 as the maximum number of rows to be


retrieved from the database for a query, specify the following:
tn.db.fetchMaxRows=5000

tn.db.sortDocTimestamp
Description: Specifies whether Trading Networks must sort the result rows based
on their timestamps in the descending order.
If you specify true, then Trading Networks sorts the rows based on
the timestamps.
If you set the value as false, then Trading Networks does not sort the
rows.
Default Value: true

Example: If you want to sort the rows based on the timestamps, specify the
following:
tn.db.sortDocTimestamp=true

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 481
D Trading Networks Configuration Properties

tn.doc.saveAsDone
Description: When Trading Networks originally receives a document, it saves
information about the resulting BizDocEnvelope for that document
to the database. When it saves the BizDocEnvelope to the database, it
sets the status of the BizDocEnvelope. Based on this property,
Trading Networks can set the status of the BizDocEnvelope to one of
the following:
 NEW If you set this property to false, Trading Networks sets the
status of the BizDocEnvelope to NEW. This status means that
Trading Networks has received the document, but not yet
processed it.
 DONE If you set this property to true, Trading Networks sets the
status of the BizDocEnvelope to DONE. Typically, the DONE
status means that Trading Networks has completed processing
the document. However, you can use this property to have
Trading Networks immediately set the status to DONE. This
saves a database update per document if Trading Networks
completes processing of the document normally with no errors.

Important! If the server ends unexpectedly while processing a


document, upon server restart, because the status is already DONE,
processing of the document will appear to be complete. There is a
risk that the document might not be processed completely.

Default Value: false (This value means that new BizDocEnvelopes are saved with the
NEW status.)
Example: If you want Trading Networks to immediately set the status of a
BizDocEnvelope to DONE, specify the following:
tn.doc.saveAsDone=true

482 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
D Trading Networks Configuration Properties

tn.receive.clearKeys
Description: Specifies the pipeline variables that represent Trading Networks
objects that you want Trading Networks to drop from the pipeline
when the tn.receive.clearTNObjects property is set to true. Specify a
comma-separated list naming the pipeline variables that you want
Trading Networks to drop. Do not use spaces in the list. Your list can
contain the following Trading Networks objects:
 node
 bizdoc
 sender
 receiver
 flags
 ffdata
 TN_parms
If you specify a pipeline variable other than the ones listed above,
Trading Networks ignores it, and Trading Networks will not drop the
variable.
Default Value: null (which means no variables appear in the pipeline)
Example: If you want Trading Networks to drop the pipeline variables node,
flags, and ffdata, specify the following:
tn.receive.clearKeys=node,flags,ffdata

tn.receive.clearTNObjects
Description: Specifies whether you want Trading Networks to drop pipeline
variables that represent Trading Networks objects. Trading Networks
drops the pipeline variables after it completes the execution of the
wm.tn:receive entry point service.
You specify the pipeline variables to drop using the tn.receive.clearKeys
property. Dropping these objects reduces the time it takes to process
each document and improves the overall performance of the server
because the content handler does not have to format the objects for
return to the client.
Specify true if you want Trading Networks to drop the objects;
specify false if you do not want Trading Networks to drop the
objects.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 483
D Trading Networks Configuration Properties

Default Value: true

Example: If you do not want Trading Networks to drop the Trading Networks
objects, specify the following:
tn.receive.clearTNObjects=false

tn.store.pool.stmt
Description: Specifies whether you want Trading Networks to cache SQL
statements in memory rather than read them from
WmTN/config/dbops.sql. Specify true to have Trading Networks
cache SQL statements; specify false to have Trading Networks read
SQL statements from a file.
Default Value: true

Example: If you want Trading Networks to read SQL statements from


WmTN/config/dbops.sql, specify the following:
tn.store.pool.stmt=false

tn.resubmit.return.bizdocs
Description: Specifies whether you want the wm.tn.doc:resubmit and
wm.tn.doc:resubmits services to return BizDocEnvelopes in the pipeline.
You use the wm.tn.doc:resubmit and wm.tn.doc:resubmits services to
resubmit documents that are in the Trading Networks database for
processing. When you resubmit a document, Trading Networks has a
BizDocEnvelope for the original document that was in the database
and forms an additional BizDocEnvelope for the new instance of the
document being resubmitted. This property controls whether the
wm.tn.doc:resubmit and wm.tn.doc:resubmits services leave these
BizDocEnvelopes in the pipeline when returning to the caller.
Performance is improved if the BizDocEnvelopes are not returned in
the pipeline. For more information about the wm.tn.doc:resubmit and
wm.tn.doc:resubmits services, see the webMethods Trading Networks Built-
In Services Reference.
Specify false if you do not want the BizDocEnvelopes returned in the
pipeline; specify true if you do want the BizDocEnvelopes returned
in the pipeline.

484 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
D Trading Networks Configuration Properties

Default Value: false

Example: If you want the wm.tn.doc:resubmit and wm.tn.doc:resubmits services to


return the BizDocEnvelopes in the pipeline, specify the following:
tn.resubmit.return.bizdocs=true

tn.tpa.cacheSize
Description: Specifies the maximum number of trading partner agreements
(TPAs) that Trading Networks caches in memory. Trading Networks
only caches TPAs that have an Agreed status. Caching TPAs speeds
up the run-time retrieval of TPAs; however, it also increases the
amount of memory used by the server.
Default Value: 1000

Example: If you want Trading Networks to cache 1500 TPAs, specify the
following:
tn.tpa.cacheSize=1500

tn.xml.cacheXQLQueryResults
Description: Specifies whether Trading Networks should save and reuse the
results of XQL queries executed against an XML document while
attempting to match that XML document to an TN XML document
type.
During document recognition, Trading Networks attempts to locate a
single TN document type that the inbound document matches. For an
XML document, the TN XML document types can contain XQL
queries that Trading Networks performs to determine whether the
XML document contains a specific node and optionally whether that
node contains a specific value. Several of your TN XML document
types might use the same XQL queries. Each time the XQL query is
executed, it would produce the same result for the inbound XML
document.
Specify true for this property to have Trading Networks perform
each unique XQL query only a single time and save the results for
subsequent TN XML document types that might use the same XQL
query. Specify false if you want Trading Networks to perform all
XQL queries in each TN XML document type whether they have
previously been executed for the document or not.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 485
D Trading Networks Configuration Properties

Default Value: true


Example: If you want Trading Networks to execute all XQL queries in all TN
XML document types even if some of the XQL queries might have
already been performed against the document being processed,
specify the following:
tn.xml.cacheXQLQueryResults=false

Profile Properties

tn.default.idType
Description: Specifies the external ID type (e.g., D-U-N-S® number) that Trading
Networks initially displays when creating or editing a profile in My
webMethods and the Console. For example, when you add a profile
in My webMethods and click Add ID on the External IDs tab, Trading
Networks makes the external ID type that you identify using this
property as the selected item in the ID Type list.
When creating a profile from the Console, this property also works in
conjunction with the tn.default.userCreation property, which determines
whether Trading Networks will create an Integration Server user
account for a profile created from the Console.
Default Value: DUNS

By default, Trading Networks displays the DUNS ID type.


Example: If you want Trading Networks to use the Mutually Defined external
ID for the default ID type, specify the following:
tn.default.idType=Mutually Defined

486 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
D Trading Networks Configuration Properties

tn.default.userCreation
Description: Specifies whether you want Trading Networks to create an
Integration Server user account when you define a profile in Trading
Networks Console. When this property is true, Trading Networks
automatically creates an Integration Server user account when a new
partner profile is created from Console. The user name of the account
is set to the value of the new partner's external ID identified by the
tn.default.idType property. For example, if the tn.default.idType is set to
DUNS and the D-U-N-S number in the profile that you are adding is
987654321, Trading Networks will create an Integration Server user
account where the user name is "987654321".

Note: Functionality to create and manage profiles in Trading


Networks Console is deprecated.

Note: If you have Trading Networks create anIntegration Server user


account, the value of the external ID cannot contain blank spaces
because blank spaces are invalid in an Integration Server user
account user name.

Specify either true if you want Trading Networks to create an


Integration Server user account when you define a profile in the
Console, or false if you do not.
Default Value: false

By default, Trading Networks does not create an Integration Server


user account when you define a profile from Trading Networks
Console.
Example: If you want Trading Networks to create an Integration Server user
account when defining profiles from Trading Networks Console:
tn.default.userCreation=true

tn.export.deleted.profiles
Description: Displays deleted profiles in the Export Data dialog box. Specify true
or false.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 487
D Trading Networks Configuration Properties

Default Value: false

When the value for this property is false, Trading Networks does not
display the deleted profiles.
Example: If you want Trading Networks to display the deleted profiles in the
Export Data dialog box, specify the following:
tn.export.deleted.profiles=true

tn.profile.EnableLogProfileChanges
Description: Specifies whether you want Trading Networks to log profile auditing
information to the activity log when you manage profiles from My
webMethods. This property also controls whether you want to log
actions related to role-based access.
If profile logging is enabled, when you manage profiles using My
webMethods, Trading Networks logs changes that you make to
profile components, for example addresses, contacts, delivery
methods, etc. Trading Networks logs activity log entries when you
add, update, and/or delete profile components.
Similarly, when you use My webMethods to manage data
permissions and general functional permissions, Trading Networks
logs changes that you make.

Note: This property affects only profile actions you take from My
webMethods. It has no affect for actions taken from Trading
Networks Console.

Default Value: false

When you specify false, Trading Networks does not log profile and
role-based access auditing information.
Example: If you want Trading Networks to log profile and role-based access
auditing information, specify the following:
tn.profile.EnableLogProfileChanges=true

488 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
D Trading Networks Configuration Properties

Task Properties

tn.task.attempt.notPersisted
Description: For Trading Networks to use reliable service execution for a
document, the document must be saved. If a processing rule is
executed that is configured to perform reliable service execution, and
the document has not been saved, this property determines whether
to attempt a single asynchronous execution of the service.
Default Value: true

When you specify true, the service is executed once, asynchronously;


otherwise the service will not be executed.
Example: If you want Trading Networks to attempt to execute a service on a
document that is not persisted, specify the following:
tn.task.attempt.notPersisted=true

tn.task.dbupdate.enableNotifications
Description: Controls whether you want Trading Networks to publish an IS
document (i.e., raise an Integration Server event) when it attempts to
update the database for a task after a database failure condition
occurs.
You can use webMethods Developer to define a trigger that
subscribes to the IS document and takes appropriate actions. For
more information about creating triggers, see the Publish-Subscribe
Developer’s Guide.
Specify either true or false for this property. If you specify true,
Trading Networks publishes an IS document. Trading Networks
publishes an IS document each time it retries to update the database,
whether the attempt was successful or failed. The IS document that
Trading Networks publishes is in the format defined by the
wm.tn.rec:TaskDbUpdate IS document type. For more information about
the wm.tn.rec:TaskDbUpdate IS document type, see the webMethods
Trading Networks Built-In Services Reference.
Default Value: false

Example: If you want Trading Networks to publish an IS document when it


attempts to update the database for a task after a database failure,
specify the following:
tn.task.dbupdate.enableNotifications=true

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 489
D Trading Networks Configuration Properties

tn.task.dbupdate.retryEnabled
Description: Controls whether Trading Networks tries to update the database
again after it encounters a database failure when trying to update the
information for a task.
If Trading Networks encounters an error when attempting to update
the information for a task, for example because it lost connectivity to
the database, the information that Trading Networks is maintaining
in memory for the task will not match the information stored in the
database. If the server is shut down, the task information will be
incorrect upon server restart.
If you want Trading Networks to continuously attempt to retry
updating the database until the update is successful or until the
server shuts down, specify true; otherwise specify false.
Default Value: true

Example: If you do not want Trading Networks to continuously attempt to


retry updating the database when it encounters a database failure,
specify the following:
tn.task.dbupdate.retryEnabled=false

tn.task.dbupdate.retrySweepTime
Description: Specifies the number of seconds between attempts to retry updating
the database information for a task.
Trading Networks only uses this property when the
tn.task.dbupdate.retryEnabled property is true.
Default Value: 300

Example: If you want Trading Networks to retry updating the database every
600 seconds (10 minutes), specify the following:
tn.task.dbupdate.retrySweepTime=600

490 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
D Trading Networks Configuration Properties

tn.task.init.groupSize
Description: Specifies the number of tasks that Trading Networks processes at one
time during server startup. Trading Networks uses a background
thread during startup to read the task data from the database and
create the tasks in groups. The number of tasks in a group is the value
you specify for this property. After creating a group of tasks, Trading
Networks pauses for the amount of time specified by the
tn.task.init.pauseLength property. By pausing between groups, this makes
CPU cycles available to other Integration Server functions that are
initializing during startup. This improves performance when starting
Trading Networks when there are many pending tasks.
Default Value: 100

Example: To have Trading Networks process 75 tasks at a time during startup,


specify the following:
tn.task.init.groupSize=75

tn.task.init.pauseLength
Description: Specifies the number of seconds that Trading Networks pauses
between processing groups of tasks during server startup. Trading
Networks uses a background thread during startup to read the task
data from the database and create the tasks in groups. The number of
tasks in a group is the value you specify for the tn.task.init.groupSize
property. After creating a group of tasks, Trading Networks pauses
for the amount of time specified by this property. By pausing
between groups, this makes CPU cycles available to other Integration
Server functions that are initializing during startup. This improves
startup performance when starting Trading Networks when there are
many pending tasks.
Default Value: 10 (seconds)
Example: To have Trading Networks pause for 15 seconds between the groups
of tasks that it processes during startup, specify the following:
tn.task.init.pauseLength=15

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 491
D Trading Networks Configuration Properties

tn.task.maxRetries
Description: Specifies the number of times you want Trading Networks to attempt
to re-execute a service when it is executing the service using reliable
execution and the service fails. Specify a whole number.
Default Value: 5

Example: If you want Trading Networks to attempt to re-execute a service three


times, specify the following:
tn.task.maxRetries=3

tn.task.notifyFailure
Description: Controls whether you want Trading Networks to publish an IS
document (i.e., raise an Integration Server event) when a task fails.
You can use the webMethods Developer to define a trigger that
subscribes to the IS document and takes appropriate actions. For
more information about creating triggers, see the Publish-Subscribe
Developer’s Guide.
The IS document that Trading Networks publishes is in the format
defined by the wm.tn.rec:TaskFailure IS document type. For more
information about the wm.tn.rec:TaskFailure IS document type, see the
webMethods Trading Networks Built-In Services Reference.
To have Trading Networks publish an IS document when a task fails,
specify true; otherwise, specify false.
Default Value: false

Example: If you want Trading Networks to publish an IS document to notify


you of failed tasks, specify the following:
tn.task.notifyFailure=true

492 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
D Trading Networks Configuration Properties

tn.task.pauseOnMaxThreads
Description: Specifies the number of milliseconds that Trading Networks pauses
when the task manager runs out of threads. You control the number
of threads that the task manager is allocated using the
tn.task.threadpool.pct property. If the number of threads specified by the
tn.task.threadpool.pct property are in use and Trading Networks has
more tasks to process, Trading Networks pauses the number of
milliseconds specified by this property to allow some of the working
threads to complete and become available.
Default Value: 500 (milliseconds)
Example: If you want Trading Networks to pause for 750 milliseconds when the
task manager runs out of threads, specify the following:
tn.task.pauseOnMaxThreads=750

tn.task.retryFactor
Description: The factor you want Trading Networks to use when determining how
long to wait before making the second and subsequent attempts to re-
execute a service that Trading Networks is executing using reliable
execution.
Trading Networks calculates the time to wait by multiplying the last
wait time by tn.task.retryFactor. Specify a whole number greater than
zero for tn.task.retryFactor.
Example: The following shows sample values for the reliable execution
properties and how they affect the wait times between attempts to re-
execute a failed service.
tn.task.maxRetries=3
tn.task.ttw=10000
tn.task.tn.task.retryFactor=2
Retry 1 Retry 2 Retry 3

Wait until next attempt: 10000 ms 20000 ms 40000 ms

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 493
D Trading Networks Configuration Properties

tn.task.sweepTime
Description: Specifies the number of seconds the reliable task manager thread
remains idle before checking for tasks it needs to perform (for
example, a task to deliver a document or execute a service).
The task manager thread becomes idle when all tasks are completed,
failed, or in the wait period between attempts. The task manager
thread waits the number of seconds you specify with this property
before waking up to check for tasks it needs to process. The tasks that
the task manager attempts to process when it wakes up are those
tasks that failed on their last attempt and have not yet reached their
retry limit.
The minimum allowable value for this property is 1 second. If you
attempt to set this property to a value less than 1 second, the new
value will be ignored. In other words, if you set tn.task.sweepTime to
any value below 1 second, the task manager remains idle for 1 second
before checking for tasks it needs to perform.

Note: The task manager wakes up immediately when a new task


arrives.

The value of tn.task.sweepTime can affect how long Trading


Networks waits between attempts to retry a task. Typically, the wait
between retries value is governed by one of the following:
Type of task Wait between retries is governed by …

Delivery The Wait between retries value specified in the


delivery settings of the receiving partner’s
profile.
Service of execution The tn.task.ttw property.
However, Trading Networks could wait as long as the
tn.task.sweepTime. If the task manager thread is idle when the wait
between retries value expires, the task manager thread will not wake
up to process the task until the tn.task.sweepTime expires.
Default Value: 300

Example: To set the sweep time to 500 seconds, specify the following:
tn.task.sweepTime=500

494 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
D Trading Networks Configuration Properties

tn.task.threadpool.pct
Description: Controls the percentage of the Integration Server’s pool of threads
that the task manager can use to process tasks simultaneously. This is
to prevent the task manager from consuming all Integration Serverr
threads when the task manager has a large number of tasks to
process.
Possible property values can range from .2 to .8. If you set the
property value less than the range, the task manager ignores the
value and takes the lowest value of the range, or .2. If you set the
property value greater than the range, the task manager ignores the
value and takes the greatest value of the range, or .8. No matter how
small you set the property value, the task manager is guaranteed to
always have at least one thread with which to execute tasks.
Default Value: .5

tn.task.ttw
Description: Specifies the number of milliseconds you want Trading Networks to
wait before making its first attempt to re-execute a failed service
when Trading Networks is executing the service using reliable
execution. (Trading Networks uses this setting along with
tn.task.retryFactor to calculate how long to wait for subsequent retry
attempts.)
Default Value: 300

Example: If you want Trading Networks to wait 500 milliseconds after a service
fails before making the first attempt to re-execute the service, specify
the following:
tn.task.ttw=500

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 495
D Trading Networks Configuration Properties

tn.transport.user
Description: Specifies the user account to use to invoke a service that Trading
Networks is executing reliably due to a processing action in a
processing rule. This affects the user account used to invoke the built-
in delivery services (which are in the wm.tn.transport folder), custom
delivery services that you create, and services invoked by service
execution tasks.
To have Trading Networks use the currently connected user to invoke
services, do not supply a value for the tn.transport.user property. By
default, Trading Networks will use the currently connected user to
invoke services. This is the user that submitted the document to
Trading Networks, unless you are resubmitting or reprocessing a
document. When you resubmit or reprocess a document, the current
user is the user issuing the resubmit or reprocess.
If you want Trading Networks to use a user account other than the
currently connected user's account, use this property to specify the
user name. If you want an Administrator account to execute services
from processing rules, specify Administrator. Some Integration
Server administrators might delete the built-in Administrator
account and create a new one with a different name. If
tn.transport.user is Administrator, Trading Networks will use an
account from the Administrators group, though it might not be the
built-in Administrator account.

Important! Ensure that the ACL you use to protect the service grants
Execute access to the user you specify.

Default Value: No default. Trading Networks will use the currently-connected user
to invoke services fro processing rules.

496 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
D Trading Networks Configuration Properties

Miscellaneous Properties

tn.check.ambiguous.docs
Description: Determines whether Trading Networks searches through all TN
document types to find a matching TN document type or uses the
first match.
By default, Trading Networks searches through all TN document
types to find a single TN document type to use for the incoming
document. If it finds multiple TN document types that match it
considers the document to be an unknown document because it does
not know which TN document type to use.
However, you can use this property to configure Trading Networks
to stop looking for TN document types after it finds the first match
and uses the first matching TN document type for the incoming
document.
Default Value: true

Example: If you want Trading Networks to use the first TN document type it
finds that matches an incoming document and not check through all
TN document types, specify the following:
tn.check.ambiguous.docs=false

tn.doctype.includeHidden
Description: Determines whether the wm.tn.doctype:list service returns the built-in
TN document types. You can override this property when you invoke
the wm.tn.doctype:list service by using the includeHidden input variable.
Because the Trading Networks Console uses the wm.tn.doctype:list to
retrieve the list of TN document types, this property also controls
whether to show or hide the built-in TN document types in the
Trading Networks Console.
Specify true if you want the wm.tn.doctype:list service to return the
built-in TN document types and therefore also show them in the
Trading Networks Console. Specify false if you do not want the
wm.tn.doctype:list service to return the built-in TN document types and
therefore hide them in the Trading Networks Console.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 497
D Trading Networks Configuration Properties

Default Value: true

Example: If you do not want the wm.tn.doctype:list service to return the built-
in TN document types and want to hide the built-in TN document
types in the Trading Networks Console, specify the following:
tn.doctype.includeHidden=false

tn.ism.stats.saveFrequency
Description: Specifies how frequently (in seconds) you want Trading Networks to
save document processing statistics to the database. You can view
these statistics using My webMethods.
Default Value: 30 (seconds)
Example: If you want Trading Networks to save document processing statistics
to the database every 45 seconds, specify the following:
tn.ism.stats.saveFrequency=45

tn.mail.onuserfail
Description: Specifies whether you want Trading Networks to send an e-mail
message to the Integration Server Administrator to alert the
administrator of the following errors:
 Sender of the document is not the same as the current user
 Trading Networks has no profile for current user
 Trading Networks was unable to retrieve the profile summary for
the sender
 Sender's profile is Inactive, which does not allow for sending
documents
 Sender's profile has been deleted
 Internal exception prevented processing from completing
Specify true if you want Trading Networks to send the alert e-mail
messages. Otherwise, specify false.
Default Value: false

Example: If you want Trading Networks to send alert e-mail messages for the
above error conditions, specify the following:
tn.mail.onuserfail=true

498 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
D Trading Networks Configuration Properties

tn.recursion.max
Description: Specifies the maximum number of successive times that Trading
Networks can use a processing rule for a specific document. If
Trading Networks attempts to recursively use a processing rule more
times than the number you specify for this property, Trading
Networks aborts processing of the document.
Trading Networks recursively uses a processing rule if the processing
rule uses the Execute a Service processing action to synchronously
invoke a service that calls the wm.tn:submit service to submit the same
BizDocEnvelope to Trading Networks, and Trading Networks selects
the same processing rule again.
Default Value: 0

When you specify 0, recursive use of processing rules is not allowed.


Example: If you have a processing rule that executes a service and resubmits
the document to Trading Networks, and Trading Networks will select
the same processing rule on the resubmit, you can set this value to a
higher number to allow recursion of the processing rule. The number
you set is the maximum number of subsequent times that Trading
Networks will allow the same document to use the same processing
rule. For example, to allow 5 recursive calls, specify the following:
tn.recursion.max=5

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 499
D Trading Networks Configuration Properties

tn.server.seq
Description: Trading Networks uses this property when generating internal IDs.
To guarantee that Trading Networks internal IDs are unique across
all servers, they consist of:
 hash code of the hostname
 server sequence number
 timestamp -AND-
 counter
The second element, “server sequence number”, is the value of the
tn.server.seq property. Use this property only if you are running more
than one instance of Trading Networks on the same machine. In this
situation, each instance of Trading Networks should be given a
unique value for tn.server.seq.
If you run multiple instances of Trading Networks on one machine
and do not supply a value for this property, you run the risk of
Trading Networks generating duplicate internal IDs. If you supply an
invalid value (less than 0 or greater than 31), Trading Networks
ignores the setting and uses 0 for the server sequence number portion
of generated internal IDs, which again runs the risk of generating
duplicate internal IDs.
Default Value: Specify a value from 0 to 31, inclusive.
Example: If you have two instances of Trading Networks running on the same
machine, you should specify the tn.server.seq property for each
instance of Trading Networks. For example, for the first instance,
specify the following:
tn.server.seq=1

For the second instance of Trading Networks, specify the following:


tn.server.seq=2

500 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
E XQL Reference

 XQL Reference Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 502


 Sample XML File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 502
 Example XQL Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 503
 Extracting Custom Attributes From XML Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 505

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 501
E XQL Reference

XQL Reference Information


Use the following link for more information about the W3C, World Wide Web Consortium
reference information for XQL: http://www.w3.org/TandS/QL/QL98/pp/xql.html.

Sample XML File


The example XQL queries in the next section reference the following XML file.
<?xml version='1.0'?>
<!-- This file represents a fragment of a book store database. -->
<bookstore specialty='novel'>
<book style='autobiography'>
<title>Seven Years in Trenton</title>
<author>
<first-name>Joe</first-name>
<last-name>Bob</last-name>
<award>Trenton Literary Review Honorable Mention</award>
</author>
<price>12</price>
</book>
<book style='textbook'>
<title>History of Trenton</title>
<author>
<first-name>Mary</first-name>
<last-name>Bob</last-name>
<publication>
Selected Short Stories of
<first-name>Mary</first-name> <last-name>Bob</last-name>
</publication>
</author>
<price>55</price>
</book>
<magazine style='glossy' frequency='monthly'>
<title>Tracking Trenton</title>
<price>2.50</price>
<subscription price='24' per='year'/>
</magazine>
<book style='novel' id='myfave'>
<title>Trenton Today, Trenton Tomorrow</title>
<author>
<first-name>Toni</first-name>
<last-name>Bob</last-name>
<degree from='Trenton U'>B.A.</degree>
<degree from='Harvard'>Ph.D.</degree>
<award>Pulitzer</award>
<publication>Still in Trenton</publication>
<publication>Trenton Forever</publication>
</author>
<price intl='canada' exchange='0.7'>6.50</price>
<excerpt>
<p>It was a dark and stormy night.</p>
<p>But then all nights in Trenton seem dark and
stormy to someone who has gone through what

502 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
E XQL Reference

<emph>I</emph> have.</p>
<definition-list>
<term>Trenton</term>
<definition>misery</definition>
</definition-list>
</excerpt>
</book>
<my:book style='leather' price='29.50' xmlns:my='http://www.placeholder-name-
here.com/schema/'>
<my:title>Who's Who in Trenton</my:title>
<my:author>Robert Bob</my:author>
</my:book>
</bookstore>

Example XQL Queries


The following table lists sample XQL queries.

XQL Query Description


/bookstore To find the root element (bookstore) of the
document
//author Find all author elements anywhere within
the current document.
//author/first-name Find all first-name elements within an
author element anywhere in the current
document.
bookstore/*/title Find all title elements that are
grandchildren of bookstore elements.
//@style Find all style attributes anywhere within
the current document.
bookstore/book/price/@exchange Find the exchange attributes of price
elements that are contained inside book
elements that are contained in a bookstore
element.
//book[excerpt] Anywhere within the current document,
find all book elements containing at least
one child excerpt element.
//book[excerpt]/author[degree] Anywhere within the current document,
find all author elements containing at least
one child degree element that are contained
inside a book element that has at least one
excerpt element.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 503
E XQL Reference

XQL Query Description


//book[excerpt][title] Anywhere within the current document,
find all book elements containing at least
one excerpt element and at least one title
element.
//author[(degree $or$ award) $and$ Anywhere within the current document,
publication] find all author elements that contain at least
one degree element or award element and at
least one publication element.
//degree[@from $ne$ 'Harvard'] Anywhere within the current document,
find all degree elements where the from
attribute is not equal to “Harvard”.
//(book/author)[end()] Anywhere within the current document,
find the last author element from the entire
set of author elements that are contained
within book elements.
//my:book Anywhere within the current document,
find all book elements with the namespace
my.
/*/my:book/my:title Find the title element with a my prefix
within a book element with a my prefix that
is a child of the root node of the document.
//book[index() $le$ 1] Find the first two books anywhere within
the current document.
//author[publication!count() $gt$ 1] Anywhere within the current document,
find all author elements that contain more
than one publication element.
//author[$any$ last-name = 'Bob'] Find all author elements where at least one
of the last-name elements is "Bob"
anywhere within the current document.
//book $union$ //book/author Anywhere within the current document,
find all book elements and all author
elements that are children of book elements.
/bookstore/book/author[last- Find all the author elements that have last-
name/regex('Bo.')] name elements that contain the string "Bo."
and another single character.
//book[@style/regex("no.*")] Find all the book elements that have a style
attribute that contains the regular
expression pattern "no.*"
/comment()[0] Find the first comment element starting from
the root of the current document.

504 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
E XQL Reference

Extracting Custom Attributes From XML Documents


For custom attributes that are extracted from an XML document, Trading Networks
returns specific values for different attribute data types:
 STRINGLIST and STRING
 NUMBERLIST and NUMBER
 DATETIMELIST and DATETIME
The following tables demonstrate the values that Trading Networks returns using the
example XQL query of: /node/item. In some cases, the query returns a null value.

Extracting STRINGLIST or STRING ATTRIBUTES


This table shows the values Trading Networks stores for a STRINGLIST or STRING attribute
based on the value returned by the XQL query of: /node/item

What the XQL query How Trading Networks stores the


returns results as a:
(result always returned
XML Data as a String List) STRINGLIST STRING
<node></node> null null null
<node> {““} {null} null
<item></item>
</node> (String List with (String List with
one element, an one element, a
empty String) null String)
<node> {“value”} {“value”} “value”
<item>value</item>
</node> (String List with (String List with
one element) one element)
<node> {“value”, ““} {“value”, null} “value”
<item>value</item>
<item></item> (String List with (String List with
</node> two elements) two elements)
<node> {““, “value”} {null,“value”} null
<item></item>
<item>value</item> (String List with (String List with
</node> two elements) two elements)

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 505
E XQL Reference

What the XQL query How Trading Networks stores the


returns results as a:
(result always returned
XML Data as a String List) STRINGLIST STRING
<node> {““, “”} {null, null} null
<item></item>
<item></item> (String List with (String List with
</node> two elements) two elements)
<node> {“valuea”,““,””, {“valuea”, null, “valuea”
<item>valuea</item> ”valueb”} null, ”valueb”}
<item> </item>
<item></item> (String List with (String List with
<item>valuez</item> four elements) four elements)
</node>

Extracting NUMBERLIST or NUMBER ATTRIBUTES


This table shows the values Trading Networks stores for a NUMBERLIST or NUMBER
attribute based on the value returned by the XQL query of: /node/item

What the XQL query How Trading Networks stores the


returns results as a:
(result always returned
XML Data as a String List) NUMBERLIST NUMBER
<node></node> null null null
<node> {““} {null} null
<item></item>
</node> (String List with (Number List
one element, an with one
empty String) element, a null
element)
<node> {“123”} {“123”} “123”
<item>123</item>
</node> (String List with (Number List
one element) with one
element)
<node> {“123”, ““} {“123”, null} “123”
<item>123</item>
<item></item> (String List with (Number List
</node> two elements) with two
elements)
<node> {““, “123”} {null,“123”} null
<item></item>
<item>123</item> (String List with (Number List
</node> two elements) with two
elements)

506 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
E XQL Reference

What the XQL query How Trading Networks stores the


returns results as a:
(result always returned
XML Data as a String List) NUMBERLIST NUMBER
<node> {““, “”} {null, null} null
<item></item>
<item></item> (String List with (Number List
</node> two elements) with two
elements)
<node> {“123”, {“123”, “123”
<item>123</item> ““,””,”456”} null,null,”456”}
<item> </item>
<item></item> (String List with (Number List
<item>456</item> four elements) with four
</node> elements)

Extracting DATETIMELIST or DATETIME ATTRIBUTES


This table shows the values Trading Networks stores for a NUMBERLIST or NUMBER
attribute based on the value returned by the XQL query of: /node/item

What the XQL query How Trading Networks stores the


returns results as a:
(result always
returned as a String
XML Data List) DATETIMELIST DATETIME
<node></node> null null null
<node> {““} {null} null
<item></item>
</node> (String List with (Datetime List
one element, an with one
empty String) element, a
null element)
<node> {“2004/12/31”} {“2004/12/31”} “2004/12/31”
<item>2004/12/31</item>
</node> (String List with (Datetime List
one element) with one
element)
<node> {“2004/12/31”, ““} {“2004/12/31”, “2004/12/31”
<item>2004/12/31</item> null}
<item></item> (String List with
</node> two elements) (Datetime List
with two
elements)

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 507
E XQL Reference

What the XQL query How Trading Networks stores the


returns results as a:
(result always
returned as a String
XML Data List) DATETIMELIST DATETIME
<node> {““, “123”} {null, null
<item></item> “2004/12/31”}
<item>2004/12/31</item> (String List with
</node> two elements) (Datetime List
with two
elements)
<node> {““, “”} {null, null} null
<item></item>
<item></item> (String List with (Datetime List
</node> two elements) with two
elements)
<node> {“2004/12/31”, {“2004/12/31”, “2004/12/31”
<item>2004/12/31</item> ““,””,”2006/01/31 null,null,”200
<item> </item> ”} 5/01/31”}
<item></item>
<item>2005/01/31</item> (String List with (Datetime List
</node> four elements) with four
elements)

508 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
F Large Document Handling

 Overview of Large Document Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 510


 What You Need to Do to Use Large Document Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 510
 Features Not Available for Large Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511
 Defining TN Document Type XQL Queries for Large Documents . . . . . . . . . . . . . . . . . . . . . . . . 511
 Creating Services that Recognize Large Document Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . 512
 Sending Large XML Documents for Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515
 Viewing Large Documents that Trading Networks Has Processed . . . . . . . . . . . . . . . . . . . . . . . 515

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 509
F Large Document Handling

Overview of Large Document Handling


As installed, when webMethods Trading Networks (Trading Networks) receives a
document, it keeps the document’s content in memory during processing. If a document
is large, Trading Networks can encounter memory constraint problems, for example:
 When Trading Networks attempts to execute an XQL query against a document
during document recognition
 When Trading Networks attempts to perform pre-processing and processing actions
defined
You can set up Trading Networks to behave differently for large documents; that is, to
have Trading Networks write large document content to hard disk drive space (called
tspace) and keep a pointer to the large document content in memory rather than the
document content itself.
For more information about Trading Networks large document processing, see
Understanding webMethods B2B: webMethods Trading Networks Concepts Guide.

What You Need to Do to Use Large Document Handling


You must set up Trading Networks to use large document handling. As installed, Trading
Networks does not use this feature for any documents.
To use large document handling you must:
 Ensure your system meets the minimum hardware requirements. For more
information, see “Minimum Hardware Requirements for Large Document Handling”
on page 48”.
 Set configuration properties that determine when and how Trading Networks uses
large document handling. For more information see, “Configuring Trading Networks
for Large Document Handling” on page 47.
 Redefine the XQL queries in your TN document types, so they do not require Trading
Networks to read the entire document content into memory. For more information
see, “Defining TN Document Type XQL Queries for Large Documents” on page 511.
 Code custom services to recognize when a document is large and take the
appropriate actions based on whether the document content is in memory or written
to hard disk drive space. This affects the following services that you create:
 Services specified with the Execute a service processing action
 Immediate and scheduled delivery services that you add
For more information see, “Creating Services that Recognize Large Document
Handling” on page 512.
 Ensure IS clients (trading partners) do not use the $xmldata variable to send large
XML documents to Trading Networks.

510 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
F Large Document Handling

 Increase the largest size of a document that Trading Networks can save to the
database. You only need to do this if you are using DB2 for the database and if you
need to save documents that are greater than 2M. For more information, see
“Increasing the Size of the Largest Document that Can Be Saved When Using DB2” on
page 50.

Features Not Available for Large Documents


The following Trading Networks features are not available for large documents:
 Queue for polling delivery method–Trading Networks does not schedule large documents
for polling. If a processing rule indicates that Trading Networks is to use queue for
polling as the delivery method for a large document, Trading Networks logs a
message to the activity log and continues processing. The document is not available
for your partner to poll. If the pre-processing actions indicated that the document be
saved, the document is saved in the Trading Networks database.
 Validate pre-processing action–The validation service that Trading Networks uses to
validate the structure of a document does not support large document handling.
When Trading Networks processes a large document and is instructed to validate the
document structure, Trading Networks does not validate the document, logs a
message to the activity log, and continues document processing.
 Verify pre-processing action–The service that Trading Networks uses to verify the digital
signature of a document does not support large document handling. When Trading
Networks processes a large document and is instructed to verify the document’s
digital signature, Trading Networks does not verify the digital signature, logs a
message to the activity log, and continues document processing.

Defining TN Document Type XQL Queries for Large


Documents
When defining TN XML document types, you can include two types of XQL queries:
identifying queries and queries to extract document attributes. When a document is
considered large, Trading Networks does not necessarily read the entire document
content into memory to perform the XQL queries. Instead, Trading Networks reads a set
number of bytes of the document into memory. You set a configuration property
(tn.xml.xqlThreshold) to define the number of bytes that Trading Networks reads. For more
information, see “Configuring Trading Networks for Large Document Handling” on
page 47.
Because Trading Networks only reads in a set number of bytes, the XQL queries you
define for identifying and attribute queries, must match to nodes in the first portion of
the document that Trading Networks reads into memory. If the XQL query identifies a
node that is in the portion of the document that is not in memory, the query will fail. A

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 511
F Large Document Handling

failed identifying query causes Trading Networks not to select the TN document type for
the document. A failed attribute query causes Trading Networks to be unable to extract
the attribute information from the document.
For more information about specifying identifying queries and queries for extracting
document attributes in TN XML document types, see Chapter 13, “Defining and
Managing TN XML Document Types”.

Important! Large XML files that are sent to Trading Networks for processing must
contain the XML declaration (e.g., <?xml...) as the first line. If a large XML document
contains any blank space before the XML declaration, Trading Networks throws an
exception when attempting to process the document.

Creating Services that Recognize Large Document Handling


You can create services that act on documents that Trading Networks receives. These
services are:
 Services specified with the Execute a service processing action in a processing rule. For
more information, see “Action 1—Execute a Service” on page 334.
 Immediate and scheduled delivery services. For more information, see “Creating an
Immediate Delivery Service” on page 395 and “Creating a Scheduled Delivery
Service” on page 397.
When you create these services, you should code them to handle documents that are
considered large and documents that are not considered large; that is, code them to
recognize when the document content is in memory or when the service must retrieve the
document content from hard disk drive space. For example, a processing rule that might
match documents that are considered large can also match documents that do not meet
the large document requirement that you configure. If the processing rule invokes a
service, it must take appropriate actions to obtain the document content whether the
document content is in memory or on hard disk drive space.

Determining Where the Document Content is Stored


Regardless of whether a document is considered large or not, Trading Networks keeps
information about the document in the pipeline in the bizdoc variable. Fields within the
bizdoc indicate whether Trading Networks considers the document large, and therefore,
indicates whether the document is stored in memory (if the document is not considered
large) or on hard disk drive space (if the document is considered large).

Note: The structure of bizdoc is defined by the wm.tn.rec:BizDocEnvelope IS document


type.

512 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
F Large Document Handling

Using Fields in bizdoc to Determine Where the Document Content is Stored

If StorageType is “tspace”, the document


is in the hard disk drive space.

If StorageType is null, the document is


If the part is large, LargePart?, is true. in the Content object.

If the document contains at least one


large part, LargeDocument? is true.

Use the following fields in bizdoc to determine whether the document is stored in
memory or on the hard disk drive space:
 LargePart?–This field that is within the ContentParts field, indicates whether the
content part is considered large. Its value is true if Trading Networks considers the
content part large; otherwise it is false.
 LargeDocument?–This field indicates whether any of the content parts of the
document are large. If at least one of the content parts is considered large, its value is
true. If all content parts are not considered large, its value is false.

If a content part is considered large, Trading Networks sets StorageType to tspace and
leaves the Content variable null. If the document is not considered large, Trading
Networks stores the document content in the Content variable and leaves StorageType null.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 513
F Large Document Handling

Retrieving Document Content from Hard Disk Drive Space


Use the wm.tn.doc:getContentPartData service to retrieve the document content from the
hard disk drive space. When you invoke this service, specify the following as input:

Input Variable Description

BizDocEnvelope The BizDocEnvelope that Trading Networks created for the


document.
partName The part name of the content that you want to retrieve.
getAs How you want Trading Networks to retrieve the document content.
Specify one of the following:
 bytes—to retrieve a specified number of bytes of the document
content
 stream — to obtain the document content using a Java
InputStream object
startIndex If you specified bytes for getAs, specify the index into the document
where you want Trading Networks to start retrieving content. For
example, to retrieve document content from the beginning, specify
0.

byteCount If you specified bytes for getAs, specify the number of bytes of
content that you want Trading Networks to retrieve.

If you indicate that you want the wm.tn.doc:getContentPartData service to retrieve a


specified number of bytes, the service returns a byte array that contains the retrieved
bytes of the document content. If you indicate that you want the
wm.tn.doc:getContentPartData service to retrieve using a stream, the service returns a
Java InputStream object.
Note that you can invoke this service for all documents, that is whether a document is
considered large or not.

Retrieving the Content for Document Delivery


To deliver a document, you need the original document content (i.e., the content Trading
Networks received before processing). Use the wm.tn.doc:getDeliveryContent service to
retrieve the document content. When you invoke this service, specify the following as
input:

Input Variable Description

BizDocEnvelope The BizDocEnvelope that Trading Networks created for the


document.

514 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
F Large Document Handling

You can invoke this service for all documents. The service determines whether the
document is considered large or not. If the document is not considered large, the service
returns a byte array that contains the retrieved delivery content. If the document is
considered large, the service retrieves the delivery content using a Java InputStream
object.

Sending Large XML Documents for Processing


To have Trading Networks process XML documents, send them to the Integration Server.
To send the XML documents, create an IS service or IS client (Java client, C/C++ client,
Visual Basic client, Excel client, or browser-based client). When sending a document that
Trading Networks considers large, do not submit the document using the $xmldata
variable.
For more information about other methods you can use to submit XML documents
(besides the $xmldata variable), see the chapter about passing XML data to services in
Developing Integration Solutions: webMethods Developer User’s Guide. For more information
about creating clients, see the chapter about creating client code in Developing Integration
Solutions: webMethods Developer User’s Guide. For more information about sending XML
documents to Trading Networks, see Understanding webMethods B2B: webMethods Trading
Networks Concepts Guide.

Viewing Large Documents that Trading Networks Has


Processed
When you use My webMethods, viewing large documents is the same as viewing any
other document.
However, if you use Trading Networks Console to view large documents, the behavior
for large documents is different from how Trading Networks displays other documents
in the Console. Trading Networks still lists the large documents on the Transaction
Analysis screen. From the Transaction Analysis screen, you can view the Document
Details screen (Transactions > View Document). However, the Content tab of the Document
Details screen displays only 1,000 bytes of the document.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 515
F Large Document Handling

Content tab of Document Details screen

Click to display the next 1,000 bytes. Click to display the previous 1,000 bytes.

516 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
G Enabling a Document Delivery Using a Web Service

 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 518
 Enabling the Delivery of Documents Using a Web Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 518

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 517
G Enabling a Document Delivery Using a Web Service

Overview
This appendix discusses the step by step procedure required to enable a document
delivery using a web service.
For information about the working of a web service delivery method, see Understanding
webMethods B2B: webMethods Trading Networks Concepts Guide.

Enabling the Delivery of Documents Using a Web Service


Consider a scenario where company ABC manufactures tires. You want to request for the
inventory status of tires from company ABC. However, company ABC accepts inventory
status requests only via a web service. After company ABC receives the request, it sends
the inventory status back to you.
Perform the following configuration steps to be able to successfully deliver a document to
your partner using a web service; in this scenario, to be able to deliver the inventory
status request document to company ABC using a web service:
Step 1: Create a Web service connector
Step 2: Create a Mapping Service
Step 3: Define a Web Services Delivery Method
Step 4: Define a Processing Rule
Step 5: Perform Additional Steps if the Web Service Response must be a New Document

Step 1: Create a Web service connector


You create a Web service connector for every web service you want to invoke.
Using webMethods Developer, create a consumer Web service descriptor from the
remote web service. For information about the procedure of creating a consumer Web
service descriptor, see the Web Services Developer’s Guide.
After you create the Web service descriptor, Integration Server automatically creates the
Web service connector.

Step 2: Create a Mapping Service


To be able to pass the data from Trading Networks to the Web service connector based on
the connector’s input document structure, create a mapping service. The mapping service
can either be a Java service or a flow service.

518 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0
G Enabling a Document Delivery Using a Web Service

To create a mapping service

1 Using Developer, create a Java service or a flow service. The output of the service
must have the same document structure as that of the Web service connector’s input
document structure. For information about the procedure for creating a Java service
or a flow service, see Developing Integration Solutions: webMethods Developer User’s
Guide.
2 Map the pipeline variables with the required input values of the Web service
connector.
In most cases, you might want to map the bizdoc attributes with the relevant input
parameters of the Web service connector. In such cases, the input for the mapping
service is the bizdoc.

Step 3: Define a Web Services Delivery Method


Using My webMethods, create a web service delivery method by providing the Web
service connector and mapping service details. For information about the procedure for
defining a web service delivery method, see “Managing Document Delivery Methods in a
Partner Profile” on page 167.

Step 4: Define a Processing Rule


Using the Trading Networks Console, create a processing rule to process the inventory
status request document. While creating the processing rule, select the following:
 Deliver Document By as the processing action
 Immediate Delivery as the way to deliver documents
 The web service delivery method that you created as the delivery method.
With this, Trading Networks processes the documents as defined in the processing rule
and immediately delivers the inventory status request document to company ABC using
the web service delivery method. For information about processing rules and the
procedure for defining a processing rule, see Chapter 15, “Defining and Managing
Processing Rules”.

Step 5: Perform Additional Steps if the Web Service Response must


be a New Document
You can add the web service response, in this scenario, the inventory status sent by
company ABC, to the bizdoc or create a new document out of the response.
You set the response handling mechanism in the Response Handling field while defining
the web service delivery method. If you selected the option New Document in the Response
Handling field, you must perform a few additional steps.

Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0 519
G Enabling a Document Delivery Using a Web Service

To perform additional steps when the web service response must be in a new document

1 Define a document type for the inventory status document so that Trading Networks
recognizes the document.
2 Define a processing rule for that document type to specify how you want Trading
Networks to process the inventory status document.
You can now send the inventory status request to company ABC using a web service. The
Web service connector invokes the web service available at company ABC’s end. The web
service sends the status back to your Trading Networks. Based on the response handling
mechanism you chose, the status document is either added to the bizdoc or sent as a new
document to your Trading Networks. When the status document is sent as a new
document, Trading Networks recognizes the document and processes the document
based on the processing rule you defined for the inventory status document.

520 Building B2B Integrations: webMethods Trading Networks Administrator’s Guide Version 8.0

You might also like