TIBCO ActiveMatrix BusinessWorks™ Plug

TIBCO ActiveMatrix BusinessWorks™ Plug
TIBCO ActiveMatrix BusinessWorks™
Plug-in for SWIFT
User’s Guide
Software Release 5.14
July 2015
Two-Second Advantage®
Important Information
SOME TIBCO SOFTWARE EMBEDS OR BUNDLES OTHER TIBCO SOFTWARE. USE OF SUCH EMBEDDED
OR BUNDLED TIBCO SOFTWARE IS SOLELY TO ENABLE THE FUNCTIONALITY (OR PROVIDE LIMITED
ADD-ON FUNCTIONALITY) OF THE LICENSED TIBCO SOFTWARE. THE EMBEDDED OR BUNDLED
SOFTWARE IS NOT LICENSED TO BE USED OR ACCESSED BY ANY OTHER TIBCO SOFTWARE OR FOR
ANY OTHER PURPOSE.
USE OF TIBCO SOFTWARE AND THIS DOCUMENT IS SUBJECT TO THE TERMS AND CONDITIONS OF A
LICENSE AGREEMENT FOUND IN EITHER A SEPARATELY EXECUTED SOFTWARE LICENSE
AGREEMENT, OR, IF THERE IS NO SUCH SEPARATE AGREEMENT, THE CLICKWRAP END USER
LICENSE AGREEMENT WHICH IS DISPLAYED DURING DOWNLOAD OR INSTALLATION OF THE
SOFTWARE (AND WHICH IS DUPLICATED IN THE LICENSE FILE) OR IF THERE IS NO SUCH SOFTWARE
LICENSE AGREEMENT OR CLICKWRAP END USER LICENSE AGREEMENT, THE LICENSE(S) LOCATED
IN THE “LICENSE” FILE(S) OF THE SOFTWARE. USE OF THIS DOCUMENT IS SUBJECT TO THOSE TERMS
AND CONDITIONS, AND YOUR USE HEREOF SHALL CONSTITUTE ACCEPTANCE OF AND AN
AGREEMENT TO BE BOUND BY THE SAME.
This document contains confidential information that is subject to U.S. and international copyright laws and
treaties. No part of this document may be reproduced in any form without the written authorization of TIBCO
Software Inc.
TIBCO, Two-Second Advantage, TIBCO ActiveMatrix BusinessWorks, TIBCO Administrator, TIBCO Designer,
TIBCO Hawk, TIBCO Rendezvous, and TIBCO Runtime Agent are either registered trademarks or trademarks
of TIBCO Software Inc. in the United States and/or other countries.
Enterprise Java Beans (EJB), Java Platform Enterprise Edition (Java EE), Java 2 Platform Enterprise Edition
(J2EE), and all Java-based trademarks and logos are trademarks or registered trademarks of Oracle Corporation
in the U.S. and other countries.
All other product and company names and marks mentioned in this document are the property of their
respective owners and are mentioned for identification purposes only.
THIS SOFTWARE MAY BE AVAILABLE ON MULTIPLE OPERATING SYSTEMS. HOWEVER, NOT ALL
OPERATING SYSTEM PLATFORMS FOR A SPECIFIC SOFTWARE VERSION ARE RELEASED AT THE SAME
TIME. SEE THE README FILE FOR THE AVAILABILITY OF THIS SOFTWARE VERSION ON A SPECIFIC
OPERATING SYSTEM PLATFORM.
THIS DOCUMENT IS PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR
IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.
THIS DOCUMENT COULD INCLUDE TECHNICAL INACCURACIES OR TYPOGRAPHICAL ERRORS.
CHANGES ARE PERIODICALLY ADDED TO THE INFORMATION HEREIN; THESE CHANGES WILL BE
INCORPORATED IN NEW EDITIONS OF THIS DOCUMENT. TIBCO SOFTWARE INC. MAY MAKE
IMPROVEMENTS AND/OR CHANGES IN THE PRODUCT(S) AND/OR THE PROGRAM(S) DESCRIBED IN
THIS DOCUMENT AT ANY TIME.
THE CONTENTS OF THIS DOCUMENT MAY BE MODIFIED AND/OR QUALIFIED, DIRECTLY OR
INDIRECTLY, BY OTHER DOCUMENTATION WHICH ACCOMPANIES THIS SOFTWARE, INCLUDING
BUT NOT LIMITED TO ANY RELEASE NOTES AND "READ ME" FILES.
Copyright © 2001-2015 TIBCO Software Inc. ALL RIGHTS RESERVED.
TIBCO Software Inc. Confidential Information
| iii
Contents
Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .vii
Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi
Related Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xii
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . xii
Other TIBCO Product Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xii
Typographical Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii
Connecting with TIBCO Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv
How to Join TIBCOmmunity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv
How to Access TIBCO Documentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv
How to Contact TIBCO Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv
Chapter 1 Product Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
Terminologies and Acronyms. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Product Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
SWIFT Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
SWIFT Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Communicating with the SWIFT Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Chapter 2 Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Creating a Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Loading a SWIFT MT Schema. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Creating a Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Configuring a Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Testing a Process. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Deploying a Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Chapter 3 SWIFT MT Palette . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23
Palette Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Load SWIFT MT Schema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
iv
| Contents
Configuration Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Generate SWIFT BICPlusIBAN. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Configuration Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Input Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Output Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Error Output Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
26
26
26
27
27
Validate SWIFT BICPlusIBAN. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Configuration Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Input Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Output Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Error Output Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
28
28
28
29
29
Parse SWIFT MT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Configuration Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Input Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Output Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Error Output Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
30
30
34
34
34
Render SWIFT MT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Configuration Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Input Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Output Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Error Output Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
36
36
39
39
40
Route SWIFT MT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Configuration Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Input Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Output Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Error Output Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
41
41
44
44
45
Limitations and Suggestions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Chapter 4 SWIFT MX Palette . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Palette Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Load SWIFT MX Schema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Configuration Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Parse SWIFT MX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Configuration Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Basic Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Input Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Output Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Error Output Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
52
52
53
55
56
56
Render SWIFT MX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Configuration Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Basic Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Input Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
57
57
58
60
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Contents v
|
Output Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Error Output Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Chapter 5 Generating and Validating an IBAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .63
IBAN Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
BICPlusIBAN Validation Scenarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Generating an IBAN. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Downloading Required Files. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Configuring the Generate SWIFT BICPlusIBAN Activity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Generating an IBAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Validating an IBAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Configuring the Validate SWIFT BICPlusIBAN Activity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Validating an IBAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Chapter 6 Configuring Advanced Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .77
Parsing and Validating SWIFT Files Using SwiftCheck . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Validating SWIFT Files Using SwiftMXCheck . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Loading SWIFT MT Message Types into a Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
Using Dynamic BIC or BEI Update . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Activating Dynamic BIC or BEI Update. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Triggering Dynamic BIC or BEI Update . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Using Validation Filters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Filter Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Filters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Path Specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
Configuring Customized MX Java Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Using Global Variables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Changing Global Variable Values at Run Time. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Predefined Global Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
Chapter 7 Processing Acknowledgment Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .99
Overview of Acknowledgment Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
Processing Acknowledgment Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
Reconciling Acknowledgment Messages. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Chapter 8 Migrating Projects to the Current SWIFT Standards. . . . . . . . . . . . . . . . . . . . . . . . .103
Migration Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Migrating Projects with SWIFT MT Activities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Migrating Projects with SWIFT MX Activities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
vi
| Contents
Appendix A Managing Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
Log Levels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Checking Debug Logs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Appendix B Error Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
Plug-in Error Codes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Figures vii
|
Figures
Figure 1
SWIFT Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Figure 2
SWIFT MT Palette . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Figure 3
SWIFT MX Palette . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Figure 4
Input of the Generate SWIFT BICPlusIBAN Activity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Figure 5
Output of the Generate SWIFT BICPlusIBAN Activity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Figure 6
Configuration of the Validate SWIFT BICPlusIBAN Activity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Figure 7
Input of the Validate SWIFT BICPlusIBAN Activity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Figure 8
Output of the Validate SWIFT BICPlusIBAN Activity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Figure 9
Example List of Filter Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
viii
| Figures
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Tables ix
|
Tables
Table 1
General Typographical Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii
Table 2
Terminologies. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Table 3
Acronyms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Table 4
Load SWIFT MT Schema - Configuration Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Table 5
Generate SWIFT BICPlusIBAN - Configuration Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Table 6
Generate SWIFT BICPlusIBAN - Input Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Table 7
Generate SWIFT BICPlusIBAN - Output Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Table 8
Generate SWIFT BICPlusIBAN - Error Output Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Table 9
Validate SWIFT BICPlusIBAN - Configuration Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Table 10
Validate SWIFT BICPlusIBAN - Input Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Table 11
Validate SWIFT BICPlusIBAN - Output Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Table 12
Validate SWIFT BICPlusIBAN - Error Output Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Table 13
Parse SWIFT MT - Configuration Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Table 14
Parse SWIFT MT - Input Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Table 15
Parse SWIFT MT - Output Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Table 16
Parse SWIFT MT - Error Output Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Table 17
Render SWIFT MT - Configuration Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Table 18
Render SWIFT MT - Input Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Table 19
Render SWIFT MT - Output Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Table 20
Render SWIFT MT - Error Output Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Table 21
Route SWIFT MT - Configuration Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Table 22
Route SWIFT MT - Input Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Table 23
Route SWIFT MT - Output Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Table 24
Route SWIFT MT - Error Output Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Table 25
Load SWIFT MX Schema - Configuration Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Table 26
Parse SWIFT MX - Configuration Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Table 27
Parse SWIFT MX - Basic Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Table 28
Parse SWIFT MX - Input Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
x
| Tables
Table 29
Parse SWIFT MX - Output Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Table 30
Parse SWIFT MX - Error Output Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Table 31
Render SWIFT MX - Configuration Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Table 32
Render SWIFT MX - Basic Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Table 33
Render SWIFT MX - Input Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Table 34
Render SWIFT MX - Output Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Table 35
Render SWIFT MX - Error Output Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Table 36
IBAN Components. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Table 37
Trigger Types and Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Table 38
Path Specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
Table 39
Using Validation Filters: Valid Paths . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Table 40
Using Validation Filters: Invalid Paths . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
Table 41
Predefined Global Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
Table 42
Log Levels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Table 43
Error Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
| xi
Preface
With TIBCO ActiveMatrix BusinessWorks™ Plug-in for SWIFT, you can parse,
validate, and render MT and MX messages. This manual describes the supported
features of the plug-in and the advantages of using the plug-in.
Topics
•
Related Documentation, page xii
•
Typographical Conventions, page xiii
•
Connecting with TIBCO Resources, page xv
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
xii
| Related Documentation
Related Documentation
This section lists documentation resources.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT Documentation
The following documents form the TIBCO ActiveMatrix BusinessWorks Plug-in
for SWIFT documentation set:
•
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT Installation Read this manual
for instructions on site preparation and installation.
•
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide Read this manual
for instructions on using the plug-in.
•
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT Examples Read this manual to
work through the examples provided with the plug-in.
•
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT Release Notes Read this release
notes for a list of new and changed features. This document also contains lists
of closed issues and known issues for this release.
Other TIBCO Product Documentation
You might find it useful to read the documentation for the following TIBCO
products:
•
TIBCO Administrator™
•
TIBCO ActiveMatrix BusinessWorks™
•
TIBCO Designer™
•
TIBCO Enterprise Message Service™
•
TIBCO Hawk®
•
TIBCO Rendezvous™
•
TIBCO Runtime Agent™
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Preface xiii
|
Typographical Conventions
The following typographical conventions are used in this manual.
Table 1 General Typographical Conventions
Convention
Use
TIBCO_HOME
TIBCO products are installed into an installation environment. A product
installed into an installation environment does not access components in
other installation environments. Incompatible products and multiple
instances of the same product must be installed into different installation
environments.
ENV_NAME
An installation environment consists of the following properties:
•
Name Identifies the installation environment. This name is referenced
in documentation as ENV_NAME. In Microsoft Windows, the name is
appended to the name of Windows services created by the installer and
is a component of the path to the product shortcut in the Windows Start
> All Programs menu.
•
Path The directory into which the product is installed. This directory is
referenced in documentation as TIBCO_HOME.
The product is installed into a directory within a TIBCO_HOME.
TIB_ADSWIFT_HOME
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT installs the product
in the directory which is referenced in documentation as
TIB_ADSWIFT_HOME. The default value of TIBCO_ADSWIFT_HOME depends
on the operating system. For example, in Windows systems, the default
value is C:\tibco\bw\plugins\adswift.
CONFIG_HOME
A TIBCO configuration directory stores configuration data generated by
TIBCO products. Configuration data can include sample scripts, session
data, configured binaries, logs, and so on. This directory is referenced in
documentation as CONFIG_HOME. The default location of the directory is
USER_HOME\ENV_NAME\tibco\cfgmgmt\product_name. For example, in
Windows, the default location is C:\ProgramData\TIBCO_HOME\tibco
\cfgmgmt\product_name.
code font
Code font identifies commands, code examples, filenames, pathnames, and
output displayed in a command window. For example:
Use MyCommand to start the foo process.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
xiv
| Typographical Conventions
Table 1 General Typographical Conventions (Cont’d)
Convention
Use
bold code font
Bold code font is used in the following ways:
In procedures, to indicate what a user types. For example: Type admin.
In large code samples, to indicate the parts of the sample that are of
particular interest.
In command syntax, to indicate the default parameter for a command. For
example, if no parameter is specified, MyCommand is enabled:
MyCommand [enable | disable]
italic font
Italic font is used in the following ways:
To indicate a document title. For example: See TIBCO BusinessWorks
Concepts.
To introduce new terms. For example: A portal page might contain several
portlets. Portlets are mini-applications that run in a portal.
To indicate a variable in a command or code syntax that you must replace.
For example: MyCommand pathname.
Key combinations
Key name separated by a plus sign indicate keys pressed simultaneously.
For example: Ctrl+C.
Key names separated by a comma and space indicate keys pressed one after
the other. For example: Esc, Ctrl+Q.
The note icon indicates information that is of special interest or importance,
for example, an additional action required only in certain circumstances.
The tip icon indicates an idea that could be useful, for example, a way to
apply the information provided in the current section to achieve a specific
result.
The warning icon indicates the potential for a damaging situation, for
example, data loss or corruption if certain steps are taken or not taken.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Preface xv
|
Connecting with TIBCO Resources
How to Join TIBCOmmunity
TIBCOmmunity is an online destination for TIBCO customers, partners, and
resident experts. It is a place to share and access the collective experience of the
TIBCO community. TIBCOmmunity offers forums, blogs, and access to a variety
of resources. To register, go to http://www.tibcommunity.com.
How to Access TIBCO Documentation
Documentation for this and other TIBCO products is available on the TIBCO
Documentation site:
https://docs.tibco.com
Documentation on the TIBCO Documentation site is updated more frequently
than any documentation that might be included with the product. To ensure that
you are accessing the latest available help topics, please visit us at:
https://docs.tibco.com
How to Contact TIBCO Support
For comments or problems with this manual or the software it addresses, contact
TIBCO Support as follows:
•
For an overview of TIBCO Support, and information about getting started
with TIBCO Support, visit this site:
http://www.tibco.com/services/support
•
If you already have a valid maintenance or support contract, visit this site:
https://support.tibco.com
Entry to this site requires a user name and password. If you do not have a user
name, you can request one.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
xvi
| Connecting with TIBCO Resources
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
|1
Chapter 1
Product Introduction
This chapter provides an overview of SWIFT and TIBCO ActiveMatrix
BusinessWorks Plug-in for SWIFT.
Topics
•
Terminologies and Acronyms, page 2
•
Product Overview, page 4
•
SWIFT Overview, page 6
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
2
| Chapter 1
Product Introduction
Terminologies and Acronyms
The following terminologies and acronyms are used in this manual:
Table 2 Terminologies
Terminology
Meaning
ADK
Alliance Development Kit.
ADK is a SWIFT product that developers of third-parties and financial
institutions use to build their own applications for Alliance Access.
BIC
Business Identifier Code.
BIC is an international standard for identification of institutions within the
financial services industry. BICs are used in automated processing. They
unambiguously identify a financial institution or a non-financial institution. The
ISO 9362 standard specifies the elements and the structure of a BIC. A BIC
consists of either eight or eleven contiguous characters. These characters comprise
either the first three, or all four, of the following components: party prefix,
country code, party suffix, and branch identifier. The International Organization
for Standardization has designated SWIFT as the BIC registration authority.
Delivery
Report
The SWIFT network can, either on its own or in response to a request from the
user, report the delivery status of a user message. Typically, this message specifies
whether the user message was successfully delivered, could not be delivered, was
acknowledged or not acknowledged (ACK or NACK) by the receiver or sender.
Such a message is called a Delivery Report.
MT
A traditional message type for use on the SWIFT network.
MX
An XML message definition for use on the SWIFT network.
SAE
SWIFT Alliance Entry.
SAE is a messaging interface that SWIFT develops for low-volume customers that
use a single destination. SAE offers the flexibility and control of a private
infrastructure.
SAA
SWIFT Alliance Access.
SAA is a prime multi-platform messaging interface designed to connect business
applications to SWIFT messaging services. Customers can use SAA to connect
single or multiple destinations to SWIFT with the maximum automation of
system management tasks.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Terminologies and Acronyms 3
|
Table 2 Terminologies (Cont’d)
Terminology
Meaning
SWIFT
Society for Worldwide Interbank Financial Telecommunication.
This organization maintains a global store and forward network for secure
financial messaging. In addition, SWIFT defines standard formats for interbank
messages.
Transmission
Report
The transmission report is a message that states whether the user message was
accepted or not (ACK or NACK) by the network. Since the SWIFT network is a
store and forward network, every user message is stored by the network before
being forwarded to the receiver. At the time of storing, the network also validates
the message.
The following acronyms are used in this manual:
Table 3 Acronyms
Acronym
Spelled-out Form
ACK
Positive Acknowledgment
API
Application Programming Interface
BEI
Business Entity Identifier
IBAN
International Bank Account Number
JMS
Java Messaging Service
JNI
Java Native Interface
LTA
Logical Terminal Address
NAK
Negative Acknowledgment
UAK
User Positive Acknowledgment
UNK
User Negative Acknowledgment
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
4
| Chapter 1
Product Introduction
Product Overview
With TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT, you can parse,
validate, and render MT and MX messages. You can also use the plug-in to route
MT messages to different activities based on the message type.
The plug-in has the following advantages:
•
Parses, routes, renders, or validates MT messages without interacting with a
live SWIFT network. The plug-in is useful for customers, such as Custodian
brokers and dealers using the SWIFT MT format internally.
•
Parses, renders, or validates MX messages without interacting with a live
SWIFT networks.
•
Gives you more control over disposing and transferring messages to the
SWIFT network.
After installing the plug-in, the following two palettes are available:
•
SWIFT MT Palette
This palette includes the Load SWIFT MT Schema shared resource and the
following activities:
— Generate SWIFT BICPlusIBAN
You can use this activity to generate the International Bank Account
Number (IBAN).
— Validate SWIFT BICPlusIBAN
You can use this activity to validate the IBAN.
— Parse SWIFT MT
You can use this activity to parse an incoming MT message to the XML
format.
— Render SWIFT MT
You can use this activity to render an incoming MT message from the XML
format to an MT message format.
— Route SWIFT MT
You can use this activity to route MT messages to different activities based
on the message type.
Before parsing or rendering an MT message, you must load the corresponding
message type schema using the Load SWIFT MT Schema shared resource.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Product Overview 5
|
•
SWIFT MX Palette
This palette includes the Load SWIFT MX Schema shared resource and the
following activities:
— Parse SWIFT MX
You can use this activity to parse an incoming MX message to the XML
format.
— Render SWIFT MX
You can use this activity to render an incoming MX message from the XML
format to an MX message format.
Before parsing or rendering an MX message, you must add the Load SWIFT
MX Schema shared resource, download required XML Schema Definition
(XSD) files from the SWIFT website, and save them in the
TIB_ADSWIFT_HOME\bin\xsd\year directory.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
6
| Chapter 1
Product Introduction
SWIFT Overview
Society for Worldwide Interbank Financial Telecommunication (SWIFT) is an
organization that provides automated fast and safe means of sending and
receiving financial messages between financial institutions worldwide.
SWIFT users include financial institutions such as banks, brokers, dealers, or
investment managers. Typical users of SWIFT deal in payments, securities,
foreign exchange, money markets, treasury, and trade. All SWIFT users are
identified on the SWIFT network by a unique address called a Business Identifier
Code (BIC). To exchange messages over the SWIFT network, every user must
have at least one unique BIC.
SWIFT processes information, such as data, text, or commands, in the form of
messages. SWIFT provides the following applications that include all messaging
functions and facilities available to users:
•
General Purpose Application (GPA)
Controls how users communicate within SWIFT.
•
Financial Application
Controls the user-to-user messaging facilities within SWIFT.
SWIFT Messages
SWIFT messages mainly include MT messages and MX messages. A SWIFT
message must conform to SWIFT standards and structure requirements.
MT Messages
All SWIFT MT messages start with the literal MT followed by a 3-digit number.
The first digit represents the message category, the second digit represents a
group of related parts in a transaction life cycle, and the third digit represents the
message type.
SWIFT MT messages mainly include the following types:
•
System messages
These messages are sent by a user to the SWIFT system (delivery notifications,
retrievals) or by the SWIFT system to the user (retrieved messages,
non-delivery warnings).
System messages are represented by MT0nn, and used for system-level
information, such as delivery notifications and non-delivery warnings.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
SWIFT Overview 7
|
•
User-to-user messages
These messages are sent from one user to another. You can use them to
conduct financial transactions. These messages are represented by MT1nn
through MT9nn.
•
Service messages
These messages are also known as control messages, and are related either to
system commands, for example, LOGIN, SELECT, or QUIT; or to message
acknowledgments. For example, when you send a message to the SWIFT
network, SWIFT accepts the message and sends you an ACK if the syntax of
the message is correct. If not, it returns a NAK.
All SWIFT MT messages are ASCII text messages and, in general, have the
following structure:
•
Basic header block
This block is represented by {1:} and includes details, such as the application
ID, service ID, address of the logical terminal, session number, sequence
number, and so on.
The application ID in this block helps you identify whether a message is a
GPA message (system message) or an MT message (user-to-user message). For
example, M indicates that the message is an MT message, and A indicates that
the message is a GPA message.
•
Application header block
This block is represented by {2:}. Application headers include two types: input
and output. The structure of the block varies depending on the type of the
application header. This header block typically includes details, such as the
message type, message priority, delivery monitoring, and so on.
•
User header block
This block is represented by {3:} and includes details, such as the banking
priority code, and so on. This is an optional block.
•
Text block
This block is represented by {4:} and contains the actual MTnnn message. This
block includes details, such as the ordering customer, beneficiary customer,
amount, currency code, date, and so on.
This block consists of field tags of the format :nna:. nn is a number, and a is
an optional letter which might be present on selected tags. The symbol CrLf is
a control character and represents Carriage Return/Line Feed. The symbol
CrLf is a mandatory delimiter in this block.
•
Trailer block
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
8
| Chapter 1
Product Introduction
This block is represented by {5:}. A message always ends in a trailer block,
which is used for control purposes. A trailer block includes details, such as
message authentication code and checksum calculated for all message types.
The following shows the structure of a typical SWIFT MT message:
B a s ic H e a d e r
A p p lic a tio n H e a d e r
User Header
{ 1 : - - - - - - - - } { 2 : - - - - - - - - } { 3 : - - - - - - - - }{ 4 : < C r L f >
:nn:-----------------<CrLf>
:nna:----------------<CrLf>
:nna:----------------<CrLf>
:nna:----------------<CrLf>
T e x t B lo c k
:nna:----------------<CrLf>
:nn:-----------------<CrLf>
:nna:----------------<CrLf>
:nna:----------------<CrLf>
:nna:----------------<CrLf>
:nna:----------------<CrLf>
:nn:-----------------<CrLf>
:nna:----------------<CrLf>
-}
{5: {MAC:--------}{CHK:--------}}
T r a ile r B lo c k
MX Messages
SWIFT MX messages mainly include the following types:
•
InterAct messages
These messages are MX messages using the InterAct messaging service. The
structure of the InterAct messages mainly includes the transport, header, and
document.
•
SAA messages
These messages are MX messages delivered to SWIFT Alliance Access (SAA).
The structure of the SAA messages mainly includes the transport, header, and
document.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
SWIFT Overview 9
|
The following shows the structure of InterAct MX message blocks with
Application Header:
The following shows the structure of InterAct MX message blocks with Business
Application Header:
For more details about MX messages, see www.swift.com > Support >
Documentation (User Handbook) > Standards MX > General Information.
Basic Message Flow
The basic SWIFT message flow involves syntax validation and confirmation of
receipt and acceptance.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
10
| Chapter 1
Product Introduction
When you send a message to the SWIFT network, SWIFT validates the syntax of
the message. If the message is correct, SWIFT accepts the message, sends you an
ACK, and attempts to deliver the message to the receiver. If the message does not
comply with the standards, SWIFT rejects it and returns a NAK. The NAK
contains an error code, which helps the sender identify the type of error and its
location. The sender can then correct the message before resending it to SWIFT.
SWIFT delivers the message as soon as the receiver is logging in to the SWIFT
network. The interface at the receiver's end automatically confirms the receipt and
acceptance of the message by sending a UAK. When a UAK is received by SWIFT,
the message is considered to be delivered. If the message received is corrupted,
the interface of the receiver sends a UNK to SWIFT, and SWIFT attempts to
redeliver the message.
Communicating with the SWIFT Network
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT does not communicate
directly with the SWIFT network. To communicate with the SWIFT network, you
must have SWIFT Alliance Access (SAA), SWIFT Alliance Entry (SAE), or any
other interface approved by SWIFT.
Messages can be produced on a variety of user applications, but they can only be
sent to SWIFT through SAA or SAE. Similarly, messages can be processed on a
variety of user applications, but can only be received through SAA or SAE.
You can communicate with SAA using one of the following interfaces:
•
CASmf
CASmf is a software used for communication between SAA and other user
applications. CASmf uses a MAPID, a name given to each instance of the
messaging application, to establish the communication between the user
application and SAA. The MAPID is defined in the user’s host and in the
SWIFT interface.
CASmf also provides APIs to developers of the user application. With APIs,
the user host environment can communicate with the SWIFT interface,
establishing a real-time session. After a real-time session is established,
financial messages can be exchanged. APIs can open, close, or abort a session,
and send or receive data. The CASmf software uses TCP/IP as the
communication protocol.
•
FTP
An FTP server can be used for communication between SWIFT interfaces and
user applications. The user application transfers SWIFT messages to a
specified directory on the server. SAA picks up the SWIFT messages from this
directory, and sends them to the SWIFT network.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
SWIFT Overview 11
|
•
MQSA
MQSA is a software used for communication between SAA and MQSeries.
The MQSA interface is based on the SWIFT Alliance Development Kit (ADK).
It uses ADK functions to communicate with SWIFT Alliance, and MQSeries
functions to access message queuing services.
The following diagram shows how the preceding interfaces are used to integrate
SAA with the user application:
Figure 1 SWIFT Interfaces
Inside Institution X
SWIFT
Network
CASmf
End user application
SWIFT Alliance Access
Institution X
FTP
MQSA
MQ Series
Institution Z
Institution Y
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
12
| Chapter 1
Product Introduction
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
| 13
Chapter 2
Getting Started
This chapter describes the basic steps that are required to configure and run
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT in TIBCO Designer.
Topics
•
Overview, page 14
•
Creating a Project, page 15
•
Loading a SWIFT MT Schema, page 16
•
Creating a Process, page 17
•
Configuring a Process, page 18
•
Testing a Process, page 20
•
Deploying a Project, page 21
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
14
| Chapter 2
Getting Started
Overview
This tutorial is designed for the beginners who want to use TIBCO ActiveMatrix
BusinessWorks Plug-in for SWIFT in TIBCO Designer.
All the operations are performed in TIBCO Designer. See the TIBCO Designer
documentation to get familiar with TIBCO Designer.
The following tasks demonstrate how to use the Parse SWIFT MT activity to parse
an MT message. To parse an MT message, you must first load SWIFT MT schemas
by using the Load SWIFT MT Schema shared resource.
1. Creating a Project, page 15
2. Loading a SWIFT MT Schema, page 16
3. Creating a Process, page 17
4. Configuring a Process, page 18
5. Testing a Process, page 20
6. Deploying a Project, page 21
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Creating a Project 15
|
Creating a Project
TIBCO Designer GUI is used to create a project. When starting TIBCO Designer,
you must create or select a project. A project contains configuration files that
define options used during run time.
To create a project:
1. Start TIBCO Designer.
Perform one of the following platform-specific operations to open the TIBCO
Designer window:
— On Microsoft Windows
Click Start > All Programs > TIBCO > TIBCO_HOME > TIBCO Designer
version_number > TIBCO Designer.
Or
From a command window, run
TIBCO_HOME\designer\version_number\bin\designer.exe.
— On UNIX
From a command window, change to the
TIBCO_HOME/designer/version_number/bin directory and run
./designer.
2. In the TIBCO Designer dialog, click New empty project to create a project.
3. In the Save Project dialog, click Select a file from the file system
in the
Multi-File Project tab to navigate to the location where you intend to save the
project, or directly type the path in the Project Directory field. Click OK to
save the project.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
16
| Chapter 2
Getting Started
Loading a SWIFT MT Schema
After creating a project in TIBCO Designer, you have to load a SWIFT MT schema
by using the Load SWIFT MT Schema shared resource.
To load a SWIFT MT schema:
1. In the Project panel, expand the project folder created in Creating a Project on
page 15.
2. Add a Load SWIFT MT Schema shared resource to the created project by
using either of the following ways:
— In the Palettes panel, click the SWIFT MT palette and drag the Load SWIFT
MT Schema shared resource to the Design panel.
Or
— Right-click the created project folder, and then click Add Resource >
SWIFT MT > Load SWIFT MT Schema.
3. In the Configuration tab, configure the Load SWIFT MT Schema shared
resource:
a. From the Specification list, select a SWIFT specification.
b. In the Message Types table, select the check box next to an MT message
type schema.
c. Click Load Selected to load the selected MT message type schema.
See Load SWIFT MT Schema on page 25 for more information.
4. From the menu, click Project > Save to save the project.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Creating a Process 17
|
Creating a Process
After configuring a SWIFT shared resource, create a process to deal with certain
workflows.
To create a process:
1. Click a project you created in the Project panel.
2. Add a process using either of the following ways:
— Expand the Process palette in the Palette panel and drag the Process
Definition icon into the Design panel.
Or
— Right-click the created project, and then click Add Resource > Process >
Process Definition from the pop-up menu.
3. Configure the process.
For more details on how to configure a process, see TIBCO Designer User’s
Guide. You can also access the detailed information by clicking Help >
Designer Help in TIBCO Designer.
4. Click Apply to save the configuration.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
18
| Chapter 2
Getting Started
Configuring a Process
After creating a process, add the Parse SWIFT MT activity to the process and
configure the activity.
To configure a process:
1. Click the process that was previously created in Creating a Process on page 17.
The Start and End activities are displayed in the Design panel.
2. Right-click anywhere except for the Start and End activities, and then click
Add Resource > File > Read File to add a Read File activity to the process.
3. Add a Parse SWIFT MT activity to the Process using either of the following
ways:
— Expand the SWIFT MT palette in the Palette panel, and select and drop the
Parse SWIFT MT activity from the SWIFT MT palette to the Design panel.
Or
— Right-click anywhere except for the Start and End activities, and then click
Add Resource > SWIFT MT > Parse SWIFT MT to add a Parse SWIFT MT
activity to the process.
If the SWIFT MT palette is not shown in the Palette panel, click Palettes >
Activities > SWIFT MT to make it visible.
4. On the TIBCO Designer toolbar, click Create transition
between the activities in the Design panel.
to draw transitions
5. Configure the Read File activity.
a. In the Configuration tab, type a name for this activity in the Name field,
for example, Read File.
b. In Activity Input panel of the Input tab, type the path of a message file in
the fileName field.
The message file must contain the contents of one or more MT messages
corresponding to the loaded message type schema.
For more details about the Read File activity, see TIBCO ActiveMatrix
BusinessWorks Palette Reference.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Configuring a Process 19
|
6. Configure the Parse SWIFT MT activity in the process.
a. Click the Configuration tab of this activity.
b. In the Name filed, type a name for this activity.
c. Click Browse resources
next to the SWIFT Message Schema filed.
d. In the Select a Resource dialog, click project_name > AESchemas > ae >
SWIFTAdapter > SWIFTLibrary > Classes > schema_name to select the
loaded schema, and then click OK.
e. Select the Validate Message Structure check box to validate the message
structure.
f.
Click the Input tab of this activity.
g. In the Input tab, click Read-File > ReadActivityOutputTextClass >
fileContent > textContent in the Process Data panel, and link textContent
to the FINMessage field in the Activity Input panel.
For more detailed activity information, see Parse SWIFT MT on page 30.
7. Click Apply to save the configuration.
8. From the menu, click Project > Save to save the project.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
20
| Chapter 2
Getting Started
Testing a Process
After creating and configuring a process, test it in TIBCO Designer to check if the
process works properly before you deploy it.
To test a process:
1. In the Project panel, click the configured process that you want to run.
2. In the Tester panel, click Start testing viewed process
.
In the Select Processes to Load dialog, the check box next to the process is
selected by default.
3. Click Load Selected to run the process.
When the process is running, the black transition arrows pointing to each
activity turn green.
4. In the Output tab of the Parse SWIFT MT activity, view the SWIFT message
parse result.
5. Click Stop testing
to stop testing and return to Design mode.
For detailed information on using the Test mode, see TIBCO ActiveMatrix
BusinessWorks Process Design, Chapter 18, "Testing Process Definitions."
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Deploying a Project 21
|
Deploying a Project
You can deploy a process to monitor and manage the process in TIBCO
Administrator.
To deploy a project that you have configured, generate an enterprise archive
(EAR) file that contains the configuration for the process definition you want to
deploy. You can upload the archive to TIBCO Administrator to deploy the
associated application. See TIBCO ActiveMatrix BusinessWorks Administration for
more information.
Before you deploy a plug-in project, ensure that:
•
When you create a domain using TIBCO Runtime Agent, you must select the
Local Application Data check box in the Domain Data Store Configuration
area of the TIBCO DomainUtility version_number - Administrator
Configuration dialog.
•
The repository location specified in TIBCO Designer is consistent with the
directory where the repository file is located in the machine that you plan to
deploy on.
The following is the basic procedure for deploying a project:
1. Save the project in the TIBCO Designer window.
2. From the menu, click Tools > Create Project EAR to create an EAR.
3. Select the Process Archive resource in the created EAR. In the Processes tab,
click Browse to specify the process definitions to include.
4. Click Apply to save the configuration.
5. Click Build Archive in the Enterprise Archive panel.
An EAR file is generated by TIBCO Designer, which you can then deploy from
TIBCO Administrator.
6. Start TIBCO Administrator, and create an application related to the project.
7. Upload the generated EAR file to TIBCO Administrator.
8. Deploy the application and start the process.
You can define multiple EAR resources for a single Designer project. For each
archive, you can choose the processes you want to include.
See TIBCO ActiveMatrix BusinessWorks Administration for more details on how to
deploy an application.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
22
| Chapter 2
Getting Started
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
| 23
Chapter 3
SWIFT MT Palette
This chapter describes the SWIFT MT palette of TIBCO ActiveMatrix
BusinessWorks Plug-in for SWIFT.
Topics
•
Palette Overview, page 24
•
Load SWIFT MT Schema, page 25
•
Generate SWIFT BICPlusIBAN, page 26
•
Validate SWIFT BICPlusIBAN, page 28
•
Parse SWIFT MT, page 30
•
Render SWIFT MT, page 36
•
Route SWIFT MT, page 41
•
Limitations and Suggestions, page 46
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
24
| Chapter 3
SWIFT MT Palette
Palette Overview
The SWIFT MT palette includes a shared resource and five activities, as shown in
Figure 2.
Figure 2 SWIFT MT Palette
Shared resource:
— Load SWIFT MT Schema
This shared resource is enabled only when you add a resource to a project.
Activities:
— Generate SWIFT BICPlusIBAN
— Validate SWIFT BICPlusIBAN
— Parse SWIFT MT
— Render SWIFT MT
— Route SWIFT MT
These activities are enabled after you select a process.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Load SWIFT MT Schema 25
|
Load SWIFT MT Schema
You can use the Load SWIFT MT Schema shared resource to select a
SWIFT specification, and then load one or more MT message type
schemas that comply with the selected SWIFT specification. The
loaded schemas are used by the Parse SWIFT MT and Route SWIFT
MT activities.
Before parsing or rendering an MT message, you must load the corresponding
message type schema using the Load SWIIFT MT Schema shared resource.
Configuration Tab
The following table lists the fields in the Configuration tab of the Load SWIFT
MT Schema shared resource:
Table 4 Load SWIFT MT Schema - Configuration Tab
Field
Description
Specification
(Required) Select a SWIFT specification from the Specification list.
Note: Changing from one specification to another unloads all existing
SWIFT-related schemas. Therefore, it is good practice not to change from one
SWIFT specification to another. However, if you have to change the SWIFT
specification using the Load SWIFT MT Schema shared resource, you have to
select and load the schemas required by an existing project.
Message
Types
(Required) Select the check box next to the message type schema that you want to
load in the Message Types table. You can also clear the check box next to the
message type schema that you want to unload.
Load Selected
Click this button to load all the selected message type schemas.
Unload
Selected
Click this button to unload all the selected message type schemas.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
26
| Chapter 3
SWIFT MT Palette
Generate SWIFT BICPlusIBAN
You can use the Generate SWIFT BICPlusIBAN activity to generate
an IBAN. The inputs to the activity are the country code and Basic
Bank Account Number (BBAN), and the output is an IBAN.
IBAN is an international standard for identifying bank accounts
across national borders with the minimal risk of propagating
transcription errors. IBAN imposes a flexible but regular format sufficient for
account identification, and contains validation information to avoid transcription
errors.
For details on how to generate an IBAN, see Generating an IBAN on page 67.
Configuration Tab
The following table lists the fields in the Configuration tab of the Generate
SWIFT BICPlusIBAN activity:
Table 5 Generate SWIFT BICPlusIBAN - Configuration Tab
Field
Description
Name
(Required) Specify the name of the activity in the process definition.
The default value is Generate
Description
(Optional) Provide a short description for the activity.
Click
BANK Directory
and IBAN Plus
SWIFT BICPlusIBAN.
to add a description in the Description dialog.
(Required) Click Select a file from the file system
the Bank Directory Plus and IBAN Plus data file.
next to this field to select
Input Tab
The following table lists the input items in the Input tab of the Generate SWIFT
BICPlusIBAN activity:
Table 6 Generate SWIFT BICPlusIBAN - Input Tab
Input Item
Data Type
Description
CountryCode
string
Specify the 2-character country code that is required to generate
an IBAN.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Generate SWIFT BICPlusIBAN 27
|
Table 6 Generate SWIFT BICPlusIBAN - Input Tab (Cont’d)
Input Item
Data Type
Description
BBAN
string
Specify the BBAN that is required to generate an IBAN.
Output Tab
The following table lists output items in the Output tab of the Generate SWIFT
BICPlusIBAN activity:
Table 7 Generate SWIFT BICPlusIBAN - Output Tab
Output Item
Data Type
Description
IBAN
string
Displays the generated IBAN in string format.
Error Output Tab
The following table lists the exceptions in the Error Output tab of the Generate
SWIFT BICPlusIBAN activity:
Table 8 Generate SWIFT BICPlusIBAN - Error Output Tab
Exception
Thrown When
ValidationException
An MT message in validation does not follow the selected SWIFT
specification.
SwiftException
The activity cannot locate the metadata directory or fails to initialize the
metadata.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
28
| Chapter 3
SWIFT MT Palette
Validate SWIFT BICPlusIBAN
You can use the Validate SWIFT BICPlusIBAN activity to validate
an IBAN. The inputs of the activity are the IBAN, BIC, and Branch
Code. The output is the whole record of the information about
financial institutions and their IBAN-related data.
For details on how to validate an IBAN, see Validating an IBAN on
page 71.
Configuration Tab
The following table lists the fields in the Configuration tab of the Validate SWIFT
BICPlusIBAN activity:
Table 9 Validate SWIFT BICPlusIBAN - Configuration Tab
Field
Description
Name
(Required) Specify the name of the activity in the process definition.
The default value is Validate
Description
(Optional) Provide a short description for the activity.
Click
BANK Directory
and IBAN Plus
SWIFT BICPlusIBAN.
to add a description in the Description dialog.
(Required) Click Select a file from the file system
the Bank Directory Plus and IBAN Plus data file.
next to this field to select
Input Tab
The following table lists the input items in the Input tab of the Validate SWIFT
BICPlusIBAN activity:
Table 10 Validate SWIFT BICPlusIBAN - Input Tab
Input Item
Data Type
Description
IBAN
string
Specify the IBAN that you want to validate.
BIC
string
Specify the BIC that you want to validate.
BranchCode
string
Specify the branch code that you want to validate.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Validate SWIFT BICPlusIBAN 29
|
Output Tab
The following table lists the output items in the Output tab of the Validate SWIFT
BICPlusIBAN activity:
Table 11 Validate SWIFT BICPlusIBAN - Output Tab
Output Item
Data Type
Description
BICPlusIBANRecord
XML
Displays the IBAN validation result.
Error Output Tab
The following table lists the exceptions in the Error Output tab of the Validate
SWIFT BICPlusIBAN activity:
Table 12 Validate SWIFT BICPlusIBAN - Error Output Tab
Exception
Thrown When
ValidationException
An MT message in validation does not follow the selected SWIFT
specification.
SwiftException
The activity cannot locate the metadata directory or fails to initialize the
metadata.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
30
| Chapter 3
SWIFT MT Palette
Parse SWIFT MT
You can use the Parse SWIFT MT activity to parse an incoming
MT message to the XML format. The input to the activity is an MT
message in MT message format, and the output is an MT message
in XML format.
Before configuring this activity, load the appropriate message type schemas using
the Load SWIFT MT Schema shared resource.
Configuration Tab
The following table lists the fields in the Configuration tab of the Parse SWIFT
MT activity:
Table 13 Parse SWIFT MT - Configuration Tab (Sheet 1 of 4)
Field
Description
Name
(Required) Specify the name of the activity in the process definition.
The default value is Parse
Description
SWIFT MT.
(Optional) Provide a short description for the activity.
Click
to add a description in the Description dialog.
SWIFT Message
Schema
(Required) Click Browse resources
message type schema.
to select a loaded SWIFT MT
Select All Validations
Specify whether to enable all the supported types of validation.
Validate Message
Structure
Select this check box to validate the structure of SWIFT messages.
Validate Field Format
Select this check box to validate the field format of SWIFT messages.
See Guidelines for Validating the Message Structure on page 33.
This format specification includes character set membership, mandatory
subfield presence, fixed- and maximum length subfield enforcement, and
multi-line subfield line count enforcement. All SWIFT text and header
fields must follow their format specifications exactly.
Note: Certain field format errors are considered parse errors, and occur
even when this validation feature is disabled.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Parse SWIFT MT 31
|
Table 13 Parse SWIFT MT - Configuration Tab (Sheet 2 of 4)
Field
Description
Validate Data Types
Select this check box to validate the data types of SWIFT messages.
SWIFT header and text subfields, such as message types, currency codes,
amounts, dates, and times are all validated for correct formats. And, the
syntactic BIC and LTA validation are part of this feature. Validation
against the BIC database requires use of the Validate BIC/BEI field.
Validate Qualifier
Code Words
Select this check box to validate the qualifier code words of SWIFT
messages.
SWIFT code words are various qualifier-dependent values used in
various text subfields. The SWIFT network is currently in a transition for
code word validation, and not all customers might want to validate code
words.
Validate BIC/BEI
Select this check box to validate the SWIFT message BIC/BEI codes
against a BIC directory.
SWIFT BIC and BEI codes are entity identifiers that appear in various
subfields of the text block. Validating them takes a lot of time, because
data must be searched for in a very large database that is time and
memory consuming to load.
At initialization time, an FI.dat BIC directory is provided to the
validator, and then full BIC/BEI validation is performed against the
provided directory. If no BIC directory is provided, the plug-in uses the
default BIC file.
Note: Use the latest BIC file provided by SWIFT for up-to-date BIC or BEI
validation.
Validate Field-Level
Semantics
Select this check box to validate the field-level semantics of SWIFT text
blocks.
Field-level rules are SWIFT network validation rules that relate data in
the subfields of a single field. Examples include "field 22H must have
one of subfield Narrative, or Amount, but not both".
Note: This validation is not performed for SWIFT-to-user system
messages even if this feature is enabled. This situation happens because
these messages are always from SWIFT, and they are assumed to be valid.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
32
| Chapter 3
SWIFT MT Palette
Table 13 Parse SWIFT MT - Configuration Tab (Sheet 3 of 4)
Field
Description
Validate
Message-Level
Semantics
Select this check box to validate the message-level semantics of SWIFT
text blocks.
Message-level rules are SWIFT network validation rules that relate data in
different parts of a message. Examples include "if field 22H in
sequence A has value X, then field 98A in sequence B must be
present".
These rules are complex and slow the validation process.
Furthermore, customers frequently enforce these rules downstream of the
validator in their own business logic, so it is not always necessary to
enable this sort of validation.
Note: This validation is not performed for SWIFT-to-user system
messages even if this feature is enabled. The reason is that these messages
are always from SWIFT, and they are assumed to be valid.
Validate Structured
Narrative
Select this check box to validate the structured narrative of SWIFT
message headers.
Various SWIFT narrative tags, for example, 71B and 72, require structure
when they are used in various messages. The structure typically consists
of keywords, continuation characters, or both, sometimes in a particular
order.
Validate Advanced
Header
BIC Code File (FI.dat)
Select this check box to validate the advanced SWIFT message headers.
During the validation process, the following operations are also
performed:
•
Enforcing the order of tags in the user header section.
•
Enforcing the order of tags in the trailer section.
•
Enforcing relationships between delivery options, message types, and
obsolescence periods in the application header.
Click Select a file from the file system
to navigate to the location of
the BIC or BICPlus file. Select the file and click Open to load it.
Note: The BIC or BICPlus file is extremely large and, if specified, causes
the plug-in startup time to increase. If you do not specify any file here, the
default FI.dat file is used, and BIC/BEI codes are checked for structural
validity only.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Parse SWIFT MT 33
|
Table 13 Parse SWIFT MT - Configuration Tab (Sheet 4 of 4)
Field
Description
ISO3166 Country
Code File (CT.dat)
Click Select a file from the file system
to navigate to the location of
the country code data file. Select the file and click Open to load it.
Note: ISO3166 country codes are used if the file is specified here.
Otherwise, an internal database of country codes is used.
ISO4217 Currency
Code File (CU.dat)
Click Select a file from the file system
to navigate to the location of
the currency code data file. Select the file and click Open to load it.
Note: ISO4217 currency codes are used if the file is specified here.
Otherwise, an internal database of currency codes is used.
Validation Filter File
(ValidationFilter.xml)
Click Select a file from the file system
to navigate to the location of
the ValidationFilter.xml file. Select the file and click Open to load it.
See Using Validation Filters on page 85 for more information.
Guidelines for Validating the Message Structure
Structural validation follows the following guidelines:
•
The fields of all required basic and application headers have the correct
length.
•
The basic header and service identifiers are valid.
•
Application input and output indicators are valid.
•
Application input delivery monitoring and obsolescence cannot be displayed
in the message unless the priority is displayed.
•
Application input obsolescence cannot be displayed in the message unless the
delivery monitoring is displayed.
•
The user header is displayed if required.
•
Message types requiring a user header field validation tag 119 have such a tag.
•
No duplicate user header or trailer tags are found.
•
No invalid user header, trailer, or system acknowledgment tags are found.
•
The lengths of all user header, trailer, and system acknowledgment tag values
are correct.
•
Message types requiring user header field validation tags to select correct
message metadata (types 102, 103, and 574) have validation tags with valid
values.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
34
| Chapter 3
SWIFT MT Palette
•
All mandatory text block sequences and fields are displayed in the message.
•
The text block contains no invalid fields.
Input Tab
The following table lists the input items in the Input tab of the Parse SWIFT MT
activity:
Table 14 Parse SWIFT MT - Input Tab
Input Item
Data Type
Description
FINMessage
string
Specify the MT message in string format.
Output Tab
The following table lists the output items in the Output tab of the Parse SWIFT
MT activity:
Table 15 Parse SWIFT MT - Output Tab
Output Item
Data Type
Description
SWIFTMessage
XML
Displays the XML representation of the input MT
message.
The XML schema structure corresponding to the selected message type is
displayed in the Output tab only after you click Apply and save the project. After
you run the process, the XML structure is populated with the contents of the input
MT message.
Error Output Tab
The following table lists the exceptions in the Error Output tab of the Parse
SWIFT MT activity:
Table 16 Parse SWIFT MT - Error Output Tab
Exception
Thrown When
ValidationException
An MT message in validation does not follow the selected SWIFT
specification.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Parse SWIFT MT 35
|
Table 16 Parse SWIFT MT - Error Output Tab (Cont’d)
Exception
Thrown When
SwiftException
The activity cannot locate the metadata directory or fails to initialize the
metadata.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
36
| Chapter 3
SWIFT MT Palette
Render SWIFT MT
You can use the Render SWIFT MT activity to render an
incoming MT message from the XML format to MT message
format.
The input to the activity is an XML format MT message, and the
output is an MT message in MT message format.
Before configuring this activity, load the appropriate message type schemas using
the Load SWIFT MT Schema shared resource.
Configuration Tab
The following table lists the fields in the Configuration tab of the Render SWIFT
MT activity:
Table 17 Render SWIFT MT - Configuration Tab (Sheet 1 of 4)
Field
Description
Name
(Required) Specify the name of the activity in the process definition.
The default value is Render
Description
SWIFT MT.
(Optional) Provide a short description for the activity.
Click
to add a description in the Description dialog.
SWIFT Message
Schema
(Required) Click Browse resources
message schema.
to select a loaded SWIFT MT
Select All Validations
Specify whether to enable all the supported types of validation.
Validate Message
Structure
Select this check box to validate the structure of SWIFT messages.
Validate Field Format
Select this check box to validate the field format of SWIFT messages.
See Guidelines for Validating the Message Structure on page 33.
This format specification includes character set membership, mandatory
subfield presence, fixed- and maximum length subfield enforcement,
and multi-line subfield line count enforcement. All SWIFT text and
header fields must follow their format specifications exactly.
Note: Certain field format errors are considered parse errors, and occur
even when this validation feature is disabled.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Render SWIFT MT 37
|
Table 17 Render SWIFT MT - Configuration Tab (Sheet 2 of 4)
Field
Description
Validate Data Types
Select this check box to validate the data types of SWIFT messages.
SWIFT header and text subfields, such as message types, currency codes,
amounts, dates, and times are all validated for correct formats. And, the
syntactic BIC and LTA validation are part of this feature. Validation
against the BIC database requires use of the Validate BIC/BEI field.
Validate Qualifier
Code Words
Select this check box to validate the qualifier code words of SWIFT
messages.
SWIFT code words are various qualifier-dependent values used in
various text subfields. The SWIFT network is currently in a transition for
code word validation, and not all customers might want to validate code
words.
Validate BIC/BEI
Select this check box to validate the SWIFT message BIC/BEI codes
against a BIC directory.
SWIFT BIC and BEI codes are entity identifiers that appear in various
subfields of the text block. Validating them is expensive because data
must be searched for in a very large database that is time and memory
consuming to load.
At initialization time, an FI.dat BIC directory is provided to the
validator, and then full BIC/BEI validation is performed against the
provided directory. If no BIC directory is provided, the plug-in uses the
default BIC file.
Note: Use the latest BIC file provided by SWIFT for up-to-date BIC or
BEI validation.
Validate Field-Level
Semantics
Select this check box to validate the field-level semantics of SWIFT text
blocks.
Field-level rules are SWIFT network validation rules that relate data in
the subfields of a single field. Examples include "field 22H must have
one of subfield Narrative, or Amount, but not both".
Note: This validation is not performed for SWIFT-to-user system
messages even if this feature is enabled. This situation happens because
these messages are always from SWIFT, and they are assumed to be
valid.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
38
| Chapter 3
SWIFT MT Palette
Table 17 Render SWIFT MT - Configuration Tab (Sheet 3 of 4)
Field
Description
Validate
Message-Level
Semantics
Select this check box to validate the message-level semantics of SWIFT
text blocks.
Message-level rules are SWIFT network validation rules that relate data
in different parts of a message. Examples include "if field 22H in
sequence A has value X, then field 98A in sequence B must be
present".
These rules are complex and slow the validation process.
Furthermore, customers frequently enforce these rules downstream of
the validator in their own business logic, so it is not always necessary to
enable this sort of validation.
Note: This validation is not performed for SWIFT-to-user system
messages even if this feature is enabled. The reason is that these
messages are always from SWIFT, and they are assumed to be valid.
Validate Structured
Narrative
Select this check box to validate the structured narrative of SWIFT
message headers.
Various SWIFT narrative tags, for example, 71B and 72, require structure
when they are used in various messages. The structure typically consists
of keywords, continuation characters, or both, sometimes in a particular
order.
Validate Advanced
Header
BIC Code File (FI.dat)
Select this check box to validate the advanced SWIFT message headers.
During the validation process, the following operations are also
performed:
•
Enforcing the order of tags in the user header section.
•
Enforcing the order of tags in the trailer section.
•
Enforcing relationships between delivery options, message types,
and obsolescence periods in the application header.
Click Select a file from the file system
to navigate to the location of
the BIC or BICPlus file. Select the file and click Open to load it.
Note: The BIC or BICPlus file is extremely large and, if specified, causes
the plug-in startup time to increase. If you do not specify any file here,
the default FI.dat file is used, and BIC/BEI codes are checked for
structural validity only.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Render SWIFT MT 39
|
Table 17 Render SWIFT MT - Configuration Tab (Sheet 4 of 4)
Field
Description
ISO3166 Country Code
File (CT.dat)
Click Select a file from the file system
to navigate to the location of
the country code data file. Select the file and click Open to load it.
Note: ISO3166 country codes are used if the file is specified here.
Otherwise, an internal database of country codes is used.
Click Select a file from the file system
to navigate to the location of
the currency code data file. Select the file and click Open to load it.
ISO4217 Currency
Code File (CU.dat)
Note: ISO4217 currency codes are used if the file is specified here.
Otherwise, an internal database of currency codes is used.
Validation Filter File
(ValidationFilter.xml)
Click Select a file from the file system
to navigate to the location of
the ValidationFilter.xml file. Select the file and click Open to load it.
See Using Validation Filters on page 85 for more information.
Input Tab
The following table lists the input items in the Input tab of the Render SWIFT MT
activity:
Table 18 Render SWIFT MT - Input Tab
Input Item
Data Type
Description
SWIFTMessage
XML
Specify the XML representation of the input MT message.
The XML schema structure corresponding to the selected message type is
displayed in the Input tab only after you click Apply and save the project.
Output Tab
The following table lists the output items in the Output tab of the Render SWIFT
MT activity:
Table 19 Render SWIFT MT - Output Tab
Output Item
Data Type
Description
FINMessage
string
Displays the MT message in string format.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
40
| Chapter 3
SWIFT MT Palette
Error Output Tab
The following table lists the exceptions in the Error Output tab of the Render
SWIFT MT activity:
Table 20 Render SWIFT MT - Error Output Tab
Exception
Thrown When
ValidationException
An MT message in validation does not follow the selected SWIFT
specification.
SwiftException
The activity cannot locate the metadata directory or fails to initialize the
metadata.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Route SWIFT MT 41
|
Route SWIFT MT
You can use the Route SWIFT MT activity to route MT messages
to different activities based on the message type.
The input to the activity can be a single MT message or multiple
$-delimited MT messages received from any upstream activity in
a TIBCO ActiveMatrix BusinessWorks process. The output of the
activity is available in an array of message types and MT messages. Any
downstream activities in the process can be configured based on the message type
output of the activity.
Configuration Tab
The following table lists the fields in the Configuration tab of the Route SWIFT
MT activity:
Table 21 Route SWIFT MT - Configuration Tab (Sheet 1 of 4)
Field
Description
Name
(Required) Specify the name of the activity in the process definition.
The default value is Route
Description
SWIFT MT.
(Optional) Provide a short description for the activity.
Click
to add a description in the Description dialog.
Select All Validations
Specify whether to enable all the supported types of validation.
Validate Message
Structure
Select this check box to validate the structure of SWIFT messages.
Validate Field Format
Select this check box to validate the field format of SWIFT messages.
See Guidelines for Validating the Message Structure on page 33.
This format specification includes character set membership, mandatory
subfield presence, fixed- and maximum length subfield enforcement, and
multi-line subfield line count enforcement. All SWIFT text and header
fields must follow their format specifications exactly.
Note: Certain field format errors are considered parse errors, and occur
even when this validation feature is disabled.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
42
| Chapter 3
SWIFT MT Palette
Table 21 Route SWIFT MT - Configuration Tab (Sheet 2 of 4)
Field
Description
Validate Data Types
Select this check box to validate the data types of SWIFT messages.
SWIFT header and text subfields, such as message types, currency codes,
amounts, dates, and times are all validated for correct formats. And, the
syntactic BIC and LTA validation are part of this feature. Validation
against the BIC database requires use of the Validate BIC/BEI field.
Validate Qualifier
Code Words
Select this check box to validate the qualifier code words of SWIFT
messages.
SWIFT code words are various qualifier-dependent values used in various
text subfields. The SWIFT network is currently in a transition for code
word validation, and not all customers might want to validate code
words.
Validate BIC/BEI
Select this check box to validate the SWIFT message BIC/BEI codes
against a BIC directory.
SWIFT BIC and BEI codes are entity identifiers that appear in various
subfields of the text block. Validating them is expensive because data must
be searched for in a very large database that is time and memory
consuming to load.
At initialization time, an FI.dat BIC directory is provided to the validator,
and then full BIC/BEI validation is performed against the provided
directory. If no BIC directory is provided, the plug-in uses the default BIC
file.
Note: Use the latest BIC file provided by SWIFT for up-to-date BIC or BEI
validation.
Validate Field-Level
Semantics
Select this check box to validate the field-level semantics of SWIFT text
blocks.
Field-level rules are SWIFT network validation rules that relate data in the
subfields of a single field. Examples include "field 22H must have one
of subfield Narrative, or Amount, but not both".
Note: This validation is not performed for SWIFT-to-user system
messages even if this feature is enabled. This situation happens because
these messages are always from SWIFT, and they are assumed to be valid.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Route SWIFT MT 43
|
Table 21 Route SWIFT MT - Configuration Tab (Sheet 3 of 4)
Field
Description
Validate
Message-Level
Semantics
Select this check box to validate the message-level semantics of SWIFT text
blocks.
Message-level rules are SWIFT network validation rules that relate data in
different parts of a message. Examples include "if field 22H in
sequence A has value X, then field 98A in sequence B must be
present".
These rules are complex and slow the validation process.
Furthermore, customers frequently enforce these rules downstream of the
validator in their own business logic, so it is not always necessary to
enable this sort of validation.
Note: This validation is not performed for SWIFT-to-user system
messages even if this feature is enabled. The reason is that these messages
are always from SWIFT, and they are assumed to be valid.
Validate Structured
Narrative
Select this check box to validate the structured narrative of SWIFT
message headers.
Various SWIFT narrative tags, for example, 71B and 72, require structure
when they are used in various messages. The structure typically consists
of keywords, continuation characters, or both, sometimes in a particular
order.
Validate Advanced
Header
BIC Code File (FI.dat)
Select this check box to validate the advanced SWIFT message headers.
During the validation process, the following operations are also
performed:
•
Enforcing the order of tags in the user header section.
•
Enforcing the order of tags in the trailer section.
•
Enforcing relationships between delivery options, message types, and
obsolescence periods in the application header.
Click Select a file from the file system
to navigate to the location of
the BIC or BICPlus file. Select the file and click Open to load it.
Note: The BIC or BICPlus file is extremely large and, if specified, causes
the plug-in startup time to increase. If you do not specify any file here, the
default FI.dat file is used, and BIC/BEI codes are checked for structural
validity only
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
44
| Chapter 3
SWIFT MT Palette
Table 21 Route SWIFT MT - Configuration Tab (Sheet 4 of 4)
Field
Description
ISO3166 Country
Code File (CT.dat)
Click Select a file from the file system
to navigate to the location of
the country code data file. Select the file and click Open to load it.
Note: ISO3166 country codes are used if the file is specified here.
Otherwise, an internal database of country codes is used.
Click Select a file from the file system
to navigate to the location of
the currency code data file. Select the file and click Open to load it.
ISO4217 Currency
Code File (CU.dat)
Note: ISO4217 currency codes are used if the file is specified here.
Otherwise, an internal database of currency codes is used.
Validation Filter File
(ValidationFilter.xml)
Click Select a file from the file system
to navigate to the location of
the ValidationFilter.xml file. Select the file and click Open to load it.
See Using Validation Filters on page 85 for more information.
Input Tab
The following table lists the input items in the Input tab of the Route SWIFT MT
activity:
Table 22 Route SWIFT MT - Input Tab
Input Item
Data Type
Description
FINMessage
string
Specify single or multiple $-delimited MT messages in
string format.
Output Tab
The following table lists the output items in the Output tab of the Route SWIFT
MT activity:
Table 23 Route SWIFT MT - Output Tab
Output Item
Data Type
Description
MessageType
string
Displays the message type of the input MT message.
MTMessage
string
Displays the message that is the same as the input MT
message.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Route SWIFT MT 45
|
Error Output Tab
The following table lists the exceptions in the Error Output tab of the Route
SWIFT MT activity:
Table 24 Route SWIFT MT - Error Output Tab
Exception
Thrown When
ValidationException
An MT message in validation does not follow the selected SWIFT
specification.
SwiftException
The activity cannot locate the MT metadata directory or fails to initialize
the metadata.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
46
| Chapter 3
SWIFT MT Palette
Limitations and Suggestions
This section specifies the limitations you might encounter when using the SWIFT
MT palette of the plug-in and provides useful suggestions:
•
Changing from one SWIFT specification to another unloads all existing
SWIFT-related schemas. Hence, it is good practice not to change from one
SWIFT specification to another. However, if you have to change the SWIFT
specification using the Load SWIFT MT Schema shared resource, you have to
select and load the schemas required by an existing project.
•
For message types containing more than one Qualifier Groups, the order of
the output MT message appearing in the Qualifier Groups can be different
from that of the input MT message. This is not an error. The Qualifier Groups
can appear in any order according to the SWIFT specification.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
| 47
Chapter 4
SWIFT MX Palette
This chapter describes the SWIFT MX palette of TIBCO ActiveMatrix
BusinessWorks Plug-in for SWIFT.
Topics
•
Palette Overview, page 48
•
Load SWIFT MX Schema, page 49
•
Parse SWIFT MX, page 52
•
Render SWIFT MX, page 57
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
48
| Chapter 4
SWIFT MX Palette
Palette Overview
The SWIFT MX palette includes a shared resource and two activities, as shown in
Figure 3.
Figure 3 SWIFT MX Palette
Shared resource:
— Load SWIFT MX Schema
This shared resource is enabled only when you are adding a resource to a
project.
Activities:
— Parse SWIFT MX
— Render SWIFT MX
These activities are enabled after you select a process.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Load SWIFT MX Schema 49
|
Load SWIFT MX Schema
You can use the Load SWIFT MX Schema shared resource to select a
SWIFT specification from a list, and then load or unload the
message type schemas for the selected SWIFT specification. The
schemas loaded using the Load SWFIT MX Schema shared resource
are used by the Parse SWIFT MX and Render SWIFT MX activities.
Before configuring this shared resource, you must download required XSD files
from the SWIFT website, and save them into the
TIB_ADSWIFT_HOME\bin\xsd\year directory. Then, the message type schemas
corresponding to these XSD files become available in the Configuration tab.
Configuration Tab
The following table lists the fields in the Configuration tab of the Load SWIFT
MX Schema shared resource:
Table 25 Load SWIFT MX Schema - Configuration Tab
Field
Description
Name
(Required) Specify the name of the shared resource.
The default value is Load
Description
(Optional) Provide a short description for the shared resource.
Click
Specification
SWIFT MX Schema.
to add a description in the Description dialog.
(Required) Select a supported SWIFT specification from the Specification list.
Note: The message type schemas become available only after you download
required XSD files from the SWIFT website, and save them into the
TIB_ADSWIFT_HOME\bin\xsd\year directory. Available message type schemas
are displayed in black, while unavailable message type schemas are displayed in
gray.
Supported MX Messages
The plug-in supports part of SWIFT MX Standard Release 2015, and therefore,
supports a certain set of MX messages that conform to SWIFT MX Standard
Release 2015.
The plug-in supports extended rules validation for the following MX messages:
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
50
| Chapter 4
SWIFT MX Palette
semt.013.001.03
semt.014.001.03
semt.015.001.04
semt.017.001.05
semt.018.001.06
semt.019.001.04
semt.021.001.05
semt.023.001.01
sese.020.001.04
sese.023.001.05
sese.024.001.06
sese.025.001.05
sese.027.001.04
sese.028.001.04
sese.029.001.03
sese.030.001.05
sese.031.001.06
sese.038.001.03
sese.039.001.03
sese.040.001.01
setr.027.001.03
setr.029.001.01
setr.030.001.01
setr.044.001.02
<!-- 2015 of fund -->
acmt.001.001.05
acmt.002.001.05
acmt.003.001.05
acmt.004.001.03
acmt.005.001.03
acmt.006.001.04
camt.040.001.04
camt.041.001.04
camt.042.001.04
camt.043.001.04
camt.044.001.03
camt.045.001.03
reda.001.001.04
reda.002.001.04
reda.004.001.02
reda.005.001.02
semt.001.001.03
semt.002.001.02
semt.003.001.02
semt.004.001.02
semt.005.001.02
semt.006.001.02
semt.007.001.02
semt.012.001.01
sese.001.001.06
sese.002.001.06
sese.003.001.06
sese.004.001.06
sese.005.001.06
sese.006.001.06
sese.007.001.06
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Load SWIFT MX Schema 51
|
sese.008.001.06
sese.009.001.04
sese.010.001.04
sese.011.001.04
sese.012.001.06
sese.013.001.06
sese.014.001.06
sese.018.001.04
sese.019.001.03
setr.001.001.03
setr.002.001.03
setr.003.001.03
setr.004.001.03
setr.005.001.03
setr.006.001.03
setr.007.001.03
setr.008.001.03
setr.009.001.03
setr.010.001.03
setr.011.001.03
setr.012.001.03
setr.013.001.03
setr.014.001.03
setr.015.001.03
setr.016.001.03
setr.017.001.03
setr.018.001.03
setr.047.001.01
setr.048.001.01
setr.049.001.01
setr.050.001.01
setr.051.001.01
setr.052.001.01
setr.053.001.01
setr.054.001.01
setr.055.001.01
setr.056.001.01
setr.057.001.01
setr.058.001.01
setr.059.001.01
setr.060.001.01
setr.061.001.01
setr.062.001.01
setr.064.001.01
setr.065.001.01
setr.066.001.01
<!-- 2015 of camt,pacs -->
camt.029.001.05
camt.052.001.05
camt.053.001.05
camt.056.001.04
pacs.002.001.06
pacs.003.001.05
pacs.004.001.05
pacs.007.001.05
pacs.008.001.05
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
52
| Chapter 4
SWIFT MX Palette
Parse SWIFT MX
The Parse SWIFT MX activity takes a SWIFT MX message string
as input, validates it, and generates an XML message in TIBCO
ActiveMatrix BusinessWorks. The output of this activity can be
used by other activities.
Before configuring this activity, you must download required XSD files from the
SWIFT website, and save them in the TIB_ADSWIFT_HOME\bin\xsd\year
directory.
Configuration Tab
The following table lists the fields in the Configuration tab of the Parse SWIFT
MX activity:
Table 26 Parse SWIFT MX - Configuration Tab
Field
Description
Name
(Required) Specify the name of the activity in the process definition.
The default value is Parse
Description
SWIFT MX.
(Optional) Provide a short description for the activity.
Click
to add a description in the Description dialog.
SWIFT
Specification
(Required) Click Browse resources
to select a Load SWIFT MX Schema
shared resource in the Select a Resource dialog.
Schema
(Required) Select one of the following schema types from the Schema list:
Transport Schema
•
MX Schema
•
All Schema
(Required) Click Select a file from the file system
schema that you want to parse.
to select the transport
This field is displayed only when you select All Schema from the Schema
list.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Parse SWIFT MX 53
|
Table 26 Parse SWIFT MX - Configuration Tab (Cont’d)
Field
Description
Element
(Required) Select one message element type from the Element list.
This field is displayed only when you select All Schema from the Schema
list. It provides a list of message element types after you select a transport
schema in the Transport Schema field.
The following items are available in the Element list after you select an
InterAct type transport schema:
•
ExchangeRequest
•
ExchangeResponse
•
HandleRequest
•
HandleResponse
Only the DataPDU item is available in the Element list after you select an
SAA type transport schema.
(Required) Click Select a file from the file system
AppHeader schema that you want to parse.
AppHeader
Schema
to select the
This field is displayed only when you select All Schema from the Schema
list.
(Required) Click Select a file from the file system
message type schema that you want to parse.
MX Schema
to select the MX
Basic Tab
The following table lists the fields in the Basic tab of the Parse SWIFT MX activity:
Table 27 Parse SWIFT MX - Basic Tab (Sheet 1 of 3)
Field
Description
Select All
Validations
Select this check box to enable all the supported types of validation.
Validate Transport
Schema
Select this check box to enable message transport validation in SWIFT
messages against the SWIFT transport schema.
Validate
AppHeader
Schema
Select this check box to enable message header validation in SWIFT
messages against the SWIFT AppHeader schema.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
54
| Chapter 4
SWIFT MX Palette
Table 27 Parse SWIFT MX - Basic Tab (Sheet 2 of 3)
Field
Description
Validate MX
Schema
Select this check box to enable syntax validation in SWIFT messages against
the SWIFT MX schema.
Validate MX Rules
Select this check box to validate extended rules and business logic in SWIFT
messages against the MX rules.
When you select this box, the Validate MX Schema check box is selected
automatically.
Validate BIC/BEI
Select this check box to validate SWIFT message BIC/BEI codes against a
BIC/BEI directory.
SWIFT BIC and BEI codes are entity identifiers that appear in various
subfields of the text block. Validating them is expensive because data must
be searched for in a very large database that is time-and memory-consuming
to load.
At initialization time, an FI . dat BIC directory is provided to be the
validator, and then full BIC/BEI validation is performed against the
provided directory. If no BIC directory is provided, the plug-in uses the
default BIC file.
Note: Use the latest BIC file provided by SWIFT for up-to-date BIC or BEI
validation.
Validate
IBAN/BBAN
Select this check box to enable IBAN/BBAN validation in SWIFT messages
against an IBAN/BBAN directory.
When you select this box, the Validate MX Schema and Validate MX Rules
check boxes are selected automatically, and the BANK Directory and IBAN
Plus field becomes available.
BANK Directory
and IBAN Plus
Click Select a file from the file system
to navigate to the location of the
BANK directory and IBAN plus file. Select the file and click Open to load it.
This field becomes available only when you select the Validate IBAN/BBAN
check box.
BIC Code File
(Fl.dat)
Click Select a file from the file system
to navigate to the location of BIC
or BICPlus file. Select the file and click Open to load it.
Note: If you do not specify any file here, the default FI.dat file is used.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Parse SWIFT MX 55
|
Table 27 Parse SWIFT MX - Basic Tab (Sheet 3 of 3)
Field
Description
ISO3166 Country
Code File (CT.dat)
Click Select a file from the file system
to navigate to the location of the
country code data file. Select the file and click Open to load it.
Note: ISO3166 country codes are used if the file is specified here. Otherwise,
an internal database of country codes is used.
ISO4217 Currency
Code File (CU.dat)
Click Select a file from the file system
to navigate to the location of the
currency code data file. Select the file and click Open to load it.
Note: ISO4217 currency codes are used if the file is specified here.
Otherwise, an internal database of country codes is used.
Validation Filter
File (Validation
Filter.xml)
Click Select a file from the file system
to navigate to the location of the
ValidationFilter.xml file. Select the file and click Open to load it.
See Using Validation Filters on page 85 for more information.
Input Tab
The following table lists the input items in the Input tab of the Parse SWIFT MX
activity:
Table 28 Parse SWIFT MX - Input Tab
Input Item
Data Type
Description
MXMessage
string
Specify an MX message in string format.
If an input item is of the Boolean type, you must set the value of the input item to
true or false.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
56
| Chapter 4
SWIFT MX Palette
Output Tab
The following table lists the output items in the Output tab of the Parse SWIFT
MX activity:
Table 29 Parse SWIFT MX - Output Tab
Output Item
Data Type
Description
SWIFTMessage
XML
Displays the XML representation of the output SWIFT MX
message.
The structure of the output SWIFT MX message is based on the
value you select from the Element list in the Configuration tab.
Error Output Tab
The following table lists the exceptions in the Error Output tab of the Parse
SWIFT MX activity:
Table 30 Parse SWIFT MX - Error Output Tab
Exception
Description
ValidationException
An MX message in validation does not follow the selected SWIFT
specification.
SwiftException
The activity cannot locate the metadata directory or fails to initialize the
metadata.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Render SWIFT MX 57
|
Render SWIFT MX
The Render SWIFT MX activity generates specific MX messages
based on the MX schema provided. In TIBCO ActiveMatrix
BusinessWorks, you can easily drag the output of other activities
to map the input values.
Before configuring this activity, you must download required XSD files from the
SWIFT website, and save them in the TIB_ADSWIFT_HOME\bin\xsd\year
directory.
Configuration Tab
The following table lists the fields in the Configuration tab of the Render SWIFT
MX activity:
Table 31 Render SWIFT MX - Configuration Tab
Field
Description
Name
(Required) Specify the name of the activity in the process definition.
The default value is Render
Description
SWIFT MX.
(Optional) Provide a short description for the activity.
Click
to add a description in the Description dialog.
SWIFT
Specification
(Required) Click Browse resources
to select a Load SWIFT MX Schema
shared resource in the Select a Resource dialog.
Schema
(Required) Select one of the following schema types from the Schema list:
Transport Schema
•
MX Schema
•
All Schema
(Required) Click Select a file from the file system
schema that you want to render.
to select the transport
This field is displayed only when you select All Schema from the Schema
list.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
58
| Chapter 4
SWIFT MX Palette
Table 31 Render SWIFT MX - Configuration Tab (Cont’d)
Field
Description
Element
(Required) Select one message element type from the Element list.
This field is displayed only when you select All Schema from the Schema
list. It provides a list of message element types after you select a transport
schema in the Transport Schema field.
The following items are available in the Element list after you select an
InterAct type transport schema:
•
ExchangeRequest
•
ExchangeResponse
•
HandleRequest
•
HandleResponse
Only the DataPDU item is available in the Element list after you select an
SAA type transport schema.
(Required) Click Select a file from the file system
AppHeader schema that you want to render.
AppHeader
Schema
to select the
This field is displayed only when you select All Schema from the Schema
list.
(Required) Click Select a file from the file system
message type schema that you want to render.
MX Schema
to select the MX
Basic Tab
The following table lists the fields in the Basic tab of the Render SWIFT MX
activity:
Table 32 Render SWIFT MX - Basic Tab (Sheet 1 of 3)
Field
Description
Select All
Validations
Select this check box to enable all the supported types of validation.
Validate Transport
Schema
Select this check box to enable message transport validation in SWIFT
messages against the SWIFT transport schema.
Validate AppHeader
Schema
Select this check box to enable message header validation in SWIFT
messages against the SWIFT AppHeader schema.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Render SWIFT MX 59
|
Table 32 Render SWIFT MX - Basic Tab (Sheet 2 of 3)
Field
Description
Validate MX Schema
Select this check box to enable syntax validation in SWIFT messages
against the SWIFT MX schema.
Validate MX Rules
Select this check box to validate extended rules and business logic in
SWIFT messages against the MX rules.
When you select this box, the Validate MX Schema check box is selected
automatically.
Validate BIC/BEI
Select this check box to validate a SWIFT message BIC/BEI codes against a
BIC/BEI directory.
SWIFT BIC and BEI codes are entity identifiers that appear in various
subfields of the text block. Validating them is expensive because data must
be searched for in a very large database that is time and memory
consuming to load.
At initialization time, an FI.dat BIC directory is provided to be the
validator, and then full BIC/BEI validation is performed against the
provided directory. If no BIC directory is provided, then the plug-in uses
the default BIC file.
Note: Use the latest BIC file provided by SWIFT for up-to-date BIC or BEI
validation.
Validate
IBAN/BBAN
Select this check box to enable IBAN/BBAN validation in SWIFT messages
against an IBAN/BBAN directory.
When you select this box, the Validate MX Schema and Validate MX
Rules check boxes are selected automatically, and the BANK Directory
and IBAN Plus field becomes available.
BANK Directory and
IBAN Plus
Click Select a file from the file system
to navigate to the location of the
BANK directory and IBAN plus file. Select the file and click Open to load
it.
This field becomes available only when you select the Validate
IBAN/BBAN check box.
BIC Code File
(Fl.dat)
Click Select a file from the file system
to navigate to the location of
BIC or BICPlus file. Select the file and click Open to load it.
Note: If you do not specify any file here, the default FI.dat file is used.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
60
| Chapter 4
SWIFT MX Palette
Table 32 Render SWIFT MX - Basic Tab (Sheet 3 of 3)
Field
Description
ISO3166 Country
Code File (CT.dat)
Click Select a file from the file system
to navigate to the location of the
country code data file. Select the file and click Open to load it.
Note: ISO3166 country codes are used if the file is specified here.
Otherwise, an internal database of country codes is used.
Click Select a file from the file system
to navigate to the location of the
currency code data file. Select the file and click Open to load it.
ISO4217 Currency
Code File(CU.dat)
Note: ISO4217 currency codes are used if the file is specified here.
Otherwise, an internal database of country codes is used.
Validation Filter File
(Validation
Filter.xml)
Click Select a file from the file system
to navigate to the location of the
file. Select the file and click Open to load it.
ValidationFilter.xml
See Using Validation Filters on page 85 for more information.
Input Tab
The following table lists the input items in the Input tab of the Render SWIFT MX
activity:
Table 33 Render SWIFT MX - Input Tab
Input Item
Data Type
Description
SWIFTMessage
XML
Specify the XML representation of the input MX
message.
If an input item is of the Boolean type, you must set the value of the input item to
true or false.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Render SWIFT MX 61
|
Output Tab
The following table lists the output items in the Output tab of the Render SWIFT
MX activity:
Table 34 Render SWIFT MX - Output Tab
Output Item
Data Type
Description
MXMessage
string
Displays the output SWIFT MX message.
The structure of the output SWIFT MX message is
based on the element in the Configuration tab.
Error Output Tab
The following table lists the exceptions in the Error Output tab of the Render
SWIFT MX activity:
Table 35 Render SWIFT MX - Error Output Tab
Exception
Thrown When
ValidationException
An MX message in validation does not follow the selected SWIFT
specification.
SwiftException
The activity cannot locate the metadata directory or fails to initialize the
metadata.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
62
| Chapter 4
SWIFT MX Palette
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
| 63
Chapter 5
Generating and Validating an IBAN
This chapter describes how to use TIBCO ActiveMatrix BusinessWorks Plug-in
for SWIFT to generate and validate an IBAN.
Topics
•
IBAN Overview, page 64
•
BICPlusIBAN Validation Scenarios, page 65
•
Generating an IBAN, page 67
•
Validating an IBAN, page 71
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
64
| Chapter 5
Generating and Validating an IBAN
IBAN Overview
IBAN is an international standard for identifying bank accounts across national
borders with the minimal risk of propagating transcription errors.
IBAN imposes a flexible but regular format sufficient for account identification,
and contains validation information to avoid transcription errors.
An IBAN contains the country code, check digits, and a BBAN, as listed in
Table 36.
Table 36 IBAN Components
IBAN
Component
Description
Country code
Code of a country. It is a string of two characters.
Check digits
Check digits that are system generated. It is a string of two characters.
BBAN
BBAN consists of:
•
IBAN national ID
The IBAN national ID itself includes:
— Bank identifier
It is a standardized and unique code that is used to identify a specific
bank.
— Branch identifier
It is part of the branch prediction system that gives an address to indicate
if there is a branch at that address, and possibly what type of branch
(conditional, call, return, indirect, and so on.) it is.
•
Account number
An account number is the primary identifier for ownership of an account.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
BICPlusIBAN Validation Scenarios 65
|
BICPlusIBAN Validation Scenarios
The following are different BICPlusIBAN validation scenarios:
•
Worldwide related
— Translate IBANs into BICs
You can use this validation method to create messages for any country that
has a registered ISO IBAN structure, and helps users automatically derive
the beneficiary’s BIC from the IBAN. This can be useful in situations where
the IBAN is present but the BIC of the beneficiary is missing or incorrect.
— Search for the bank participation in the Real Time Gross Settlement (RTGS)
systems
You can use this validation method to check whether a bank participates in
the RTGS systems. If yes, the Validate SWIFT BICPlusIBAN activity
validates the transactions that are settled as soon as they are processed on
a one-to-one basis without bunching with any other transaction.
— Search for the bank details
You can use this validation method to validate the bank details, such as the
name, address, and so on.
•
Single Euro Payments Area (SEPA) related
— Derive BICs from IBANs
You can use this validation method to derive the BIC from the IBAN. This
can be useful when the IBAN is present but the BIC is missing in a SPEPA
payment instruction. The method takes no arguments, and returns an
arraylist of BIC code and BRANCH code.
— Validate IBANs and BICs
You can use the Validate IBANs validation method to check whether the
Bank ID contained in an IBAN is valid. This can be useful when the
ordering customer has constructed the IBAN. However, this validation
does not guarantee that the IBAN itself is valid. This method takes no
arguments, and returns a Boolean result.
You can use the Validate BICs method to check whether a BIC is valid. This
can be useful when the ordering customer attempts to derive the BIC itself
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
66
| Chapter 5
Generating and Validating an IBAN
from a financial institution name and address. This method takes no
arguments, and returns a Boolean result.
— Validate IBAN-BIC combinations in payments
You can use this validation method to check whether the BIC and the IBAN
belong to the same institution. This method takes no arguments, and
returns a Boolean result.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Generating an IBAN 67
|
Generating an IBAN
You can use the plug-in to generate IBANs.
Before generating an IBAN, you have to set the heap size to 1024 M in case a
memory outbound error occurs. To do so:
1. Browse to the TIBCO_HOME\designer\Version\bin directory.
2. Open the designer.tra file and update the heap size to 1024 M:
tibco.env.HEAP_SIZE 1024M
3. Save the designer.tra file.
4. Restart TIBCO Designer.
After setting the heap size, complete the following tasks to generate an IBAN:
1. Downloading Required Files, page 67
2. Configuring the Generate SWIFT BICPlusIBAN Activity, page 68
3. Generating an IBAN, page 69
Downloading Required Files
Download the Bank Directory Plus and IBAN Plus directories, and extract them
to the same folder.
The Bank Directory Plus and IBAN Plus directories are available as downloadable
packages. You can download them from the following locations:
•
www.swift.com/SWIFTRef, over the Internet.
•
SWIFTNet Portal, over SWIFTNet (using Browse, and Alliance WebStation or
Starter Set). For more information about SWIFTNet Portal, see the SWIFTNet
Portal User Guide, available on www.swift.com > Support > Documentation
(User Handbook).
•
SWIFT now supports automated downloading of the Bank Directory Plus and
IBAN Plus directories from www.swift.com. They are also distributed over
FileAct.
After extracting the Bank Directory Plus and IBAN Plus directories, ensure that
the following data files are inside:
•
IBANPLUS_V*_FULL_year****
file (IBAN information), required.
•
IBANSTRUCTURE_FULL_year****
file (IBAN structure information), required.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
68
| Chapter 5
Generating and Validating an IBAN
•
EXCLUSIONLIST_V*_FULL_year****
file (National IDs cannot be in IBANs),
required.
•
COUNTRY_CODE_year****
file (Country code information), required.
•
BANKDIRECTORYPLUS_V*_FULL_year****
file (Bank information), required.
Configuring the Generate SWIFT BICPlusIBAN Activity
After downloading the Bank Directory Plus and IBAN Plus directories, you can
create a process and add a Generate SWIFT BICPlusIBAN activity to it:
1. Start TIBCO Designer.
2. In the TIBCO Designer dialog, click New empty project to create a project.
3. In the Save Project dialog, click Select a file from the file system
in the
Multi-File Project tab to create a directory to store the project:
C:\tibco\projects\IBANGeneration. Click OK to save the project.
4. Drag the Process icon from the Palettes panel to the Design panel, and then
double-click the Process icon in the Design panel.
5. Drag the Generate SWIFT BICPlusIBAN icon from the Palettes panel to the
Design panel.
6. In the Configuration tab, click Select a file from the file system
next to
the BANK Directory and IBAN Plus field to navigate to the directory where
the Bank Directory Plus and IBAN Plus data files are saved.
When configuring the Bank Directory Plus and IBAN Plus directory, note the
following items:
— You must have a permission to write in the directory.
— Within one project, the directory specified in the BANK Directory and
IBAN Plus field in the Generate SWIFT BICPlusIBAN activity must be
consistent with the one specified in the Validate SWIFT BICPlusIBAN
activity.
— When you are working with two different projects and setting the same
value in the BANK Directory and IBAN Plus field, you must finish
processing the first project, and then process the second project.
— You can also use the Global Variables editor to set the directory.
7. In the Input tab, expand the Generate SWIFT BICPlusIBAN Input item in
the Activity Input panel, and then type appropriate values in the
CountryCode and the BBAN fields. See Figure 4.
8. Click Apply to save the configuration.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Generating an IBAN 69
|
9. From the menu, click Project > Save to save the project.
Figure 4 Input of the Generate SWIFT BICPlusIBAN Activity
Generating an IBAN
After configuring the process, you can run it to generate an IBAN:
1. In the Design panel, click Create transition
on the TIBCO Designer
toolbar to create transitions between the Generate SWIFT BICPlusIBAN
activity and other activities.
2. In the Tester panel, click Start testing viewed process
.
In the Select Processes to Load dialog, the process check box is selected by
default.
3. Click Load Selected to run the process.
When the process is running, the black transition arrows pointing to each
activity turn green.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
70
| Chapter 5
Generating and Validating an IBAN
During the IBAN generation process, the following operations are performed
at the background:
— Validating the BBAN
— Generating the check digit
A bank or its customer uses the check digit to perform a sanity check of the
routing destination, and an account number from a single string of data at the
time of data entry. It is guaranteed to detect any instances where a single
character has been omitted, duplicated, mistyped, or where two characters
have been transposed. Thus, routing and account number errors are virtually
eliminated.
4. Click the Generate SWIFT BICPlusIBAN activity, and then click the Output
tab to see the output.
The generated IBAN is displayed in the IBAN field. See Figure 5.
Figure 5 Output of the Generate SWIFT BICPlusIBAN Activity
5. Click Stop testing
to stop testing and return to Design mode.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Validating an IBAN 71
|
Validating an IBAN
You can use the plug-in to validate an IBAN.
Before validating an IBAN, you have to set the heap size to 1024 M in case a
memory outbound error occurs. To do so:
1. Browse to the TIBCO_HOME\designer\Version\bin directory.
2. Open the designer.tra file and update the heap size to 1024 M:
tibco.env.HEAP_SIZE 1024M
3. Save the designer.tra file.
4. Restart TIBCO Designer.
After setting the heap size, complete the following tasks to validate an IBAN:
1. Configuring the Validate SWIFT BICPlusIBAN Activity, page 71
2. Validating an IBAN, page 73
Configuring the Validate SWIFT BICPlusIBAN Activity
Before implementing the BICPlusIBAN validation, you must create a process and
add a Validate SWIFT BICPlusIBAN activity to it:
1. Start TIBCO Designer.
2. In the TIBCO Designer dialog, click New empty project to create a project.
opens.
3. In the Save Project dialog, click Select a file from the file system
in the
Multi-File Project tab to create a directory to store the project:
C:\tibco\projects\ValidateBICPlusIBAN. Click OK to save the project.
4. Drag the Process icon from the Palettes panel to the Design panel, and then
double-click the Process icon in the Design panel.
5. Drag the Validate SWIFT BICPlusIBAN icon from the Palettes panel to the
Design panel.
6. In the Configuration tab, click Select a file from the file system
next to
the BANK Directory and IBAN Plus field to navigate to the directory where
the Bank Directory Plus and IBAN Plus data files are saved. See Figure 6.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
72
| Chapter 5
Generating and Validating an IBAN
When you specify the directory where the Bank Directory Plus and IBAN Plus
data files are saved in the BANK Directory and IBAN Plus field, note the
following items:
— You must have a permission to write in the directory.
— Within one project, the directory specified in the BANK Directory and
IBAN Plus field in the Generate SWIFT BICPlusIBAN activity must be
consistent with the one specified in the Validate SWIFT BICPlusIBAN
activity.
— When you are working with two different projects and setting the same
value in the BANK Directory and IBAN Plus field, you must finish
processing the first project, and then process the second project.
— You can also use the Global Variables editor to set the directory.
Figure 6 Configuration of the Validate SWIFT BICPlusIBAN Activity
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Validating an IBAN 73
|
7. In the Input tab, expand the Validate SWIFTBICPlusIBANInput item in the
Activity Input panel, and then type appropriate values in the IBAN field, for
example, ’DE70750903004510002321’. See Figure 7.
The IBAN field is mandatory, and the BIC and BranchCode fields are
optional.
8. Click Apply to save the configuration.
9. From the menu, click Project > Save to save the project.
Figure 7 Input of the Validate SWIFT BICPlusIBAN Activity
Validating an IBAN
After configuring the process, you can run it to validate an IBAN:
1. In the Design panel, click Create transition
on the TIBCO Designer
toolbar to create transitions between the Validate SWIFT BICPlusIBAN
activity and other activities.
2. In the Tester panel, click Start testing viewed process
.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
74
| Chapter 5
Generating and Validating an IBAN
In the Select Processes to Load dialog, the process check box is selected by
default.
3. Click Load Selected to run the process.
When the process is running, the black transition arrows pointing to each
activity turn green.
4. Click the Validate SWIFT BICPlusIBAN activity, and then click the Output
tab to see the output.
The whole record of information about the financial institutions and their
IBAN-related data is displayed. See Figure 8.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Validating an IBAN 75
|
Figure 8 Output of the Validate SWIFT BICPlusIBAN Activity
5. Click Stop testing
to stop testing and return to Design mode.
During the BICPlusIBAN validation, the following items are validated:
•
Country code
•
Check digits
•
IBAN length
•
IBAN format
•
IBAN national ID
•
BIC
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
76
| Chapter 5
Generating and Validating an IBAN
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
| 77
Chapter 6
Configuring Advanced Options
This chapter describes how to configure advanced configuration options, such as
parsing and validating SWIFT files using utilities, loading SWIFT message types
into a repository, how to use the Dynamic BIC Update feature and validation
filters, configuring customized MX Java rules, and using global variables.
Topics
•
Parsing and Validating SWIFT Files Using SwiftCheck, page 78
•
Validating SWIFT Files Using SwiftMXCheck, page 80
•
Loading SWIFT MT Message Types into a Repository, page 82
•
Using Dynamic BIC or BEI Update, page 83
•
Using Validation Filters, page 85
•
Configuring Customized MX Java Rules, page 91
•
Using Global Variables, page 94
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
78
| Chapter 6
Configuring Advanced Options
Parsing and Validating SWIFT Files Using SwiftCheck
You can use the SwiftCheck utility to parse and validate one or more SWIFT files.
The utility can be used for low-level testing of SWIFT message files. You can
configure the SwiftCheck.tra file, and then run the utility. The utility is in the
TIB_ADSWIFT_HOME\bin directory.
SwiftCheck Options
The following are metadata options:
-data or --dataDir file metadata directory
-set or --dataSet file metadata set
-fi or --fiFile file bankdata file (BIC codes)
-ff or --filterFile file validation warning filter file
-cu or --cuFile file currency code file
-ct or --ctFile file country code file
For details on how to use validation filters, see Using Validation Filters on
page 85.
The following are validation options:
-v or --valAll
validate using all rules
-vc or --valFormat
turn on format validation
-vt or --valType
turn on data type validation
-vw or --valWord
turn on code word validation
-vb or --valBic
turn on BIC code validation
-vf or --valField
turn on field level semantics validation
-vm or --valMsg
turn on message level semantics validation
-vn or --valNarr
turn on narrative validation
-va or --valAdvanced turn on advanced header validation
-vs or --valStructural turn on structural validation.
Prerequisites
If you have not installed TIBCO Enterprise Message Service before installing the
plug-in, and the installed TIBCO Runtime Agent version is 5.9.x, you have to
install TIBCO Enterprise Message Service in the existing TIBCO_HOME, and add
the EMS class path to the mySwiftCheck.tra file.
To do so:
1. Open the copied TRA file: mySwiftCheck.tra.
2. Add the following class path to the tibco.class.path.extended area:
EMS_HOME/version_number/lib
3. Save the mySwiftCheck.tra file.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Parsing and Validating SWIFT Files Using SwiftCheck 79
|
Using the SwiftCheck Utility
You can use the SwiftCheck utility to parse and validate one or more SWIFT files.
To use the SwiftCheck utility:
1. Open a command line and change from the current directory to the plug-in
bin directory.
cd
TIB_ADSWIFT_HOME\bin
2. Copy the SwiftCheck.tra file, rename it as mySwiftCheck.tra, and open
the copied file in the text editor.
3. Change the application.args property to include the metadata and
validation options to use. For example:
application.args -data TIB_ADSWIFT_HOME/bin/data -set
TIB_ADSWIFT_HOME/examples/SampleMT.txt
year -v
4. Save the properties file and exit the text editor.
5. On a command line, type the following command to start the utility:
SwiftCheck --run --propFile mySwiftCheck.tra
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
80
| Chapter 6
Configuring Advanced Options
Validating SWIFT Files Using SwiftMXCheck
You can use the SwiftMXCheck utility to validate one or more SWIFT files. The
utility can be used for low-level testing of SWIFT message files. You can configure
the SwiftMXCheck.tra file, and then run the utility. The utility is in the
TIB_ADSWIFT_HOME\bin directory.
SwiftMXCheck Options
The following are metadata options:
-mxdata or --mxdataDir
-set or --mxdataSet
file
file
-schema or --useSchema
metamxdata directory
mxmetadata set
Schema
-txsd or --txsdFile
file
Transport XSD File
-axsd or --axsdFile
file
AppHdr XSD File
-mxsd or --mxsdFile
file or dir
MX XSD File or Dir
-ib or --ibDir
dir
IBAN/BBAN Dir
-fi or --fiFile
file
bankdata file (BIC codes)
-cu or --cuFile
file
currency code file
-ct or --ctFile
file
country code file
-ff or --filterFile
file
validation warning filter file
The following are validation options:
-v or --valAll
validate using all rules
-vt or --valTransportSchema
turn on Transport schema validation
-va or --valAppHdrSchema
turn on AppHdr schema validation
-vm or --valMXSchma
turn on MX schema validation
-vr or --valMXrules
turn on MX rules validation
-vb or --valBic
turn on BIC code validation
-vi or --valIBAN
turn on IBAN/BBAN code validation
Prerequisites
If you have not installed TIBCO Enterprise Message Service before installing the
plug-in, and the installed TIBCO Runtime Agent version is 5.9.x, you have to
install TIBCO Enterprise Message Service in the existing TIBCO_HOME, and add
the EMS class path to the mySwiftMXCheck.tra file.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Validating SWIFT Files Using SwiftMXCheck 81
|
To do so:
1. Open the copied TRA file: mySwiftMXCheck.tra.
2. Add the following class path to the tibco.class.path.extended area:
EMS_HOME/version_number/lib
3. Save the mySwiftMXCheck.tra file.
Using the SwiftCheck Utility
You can use the SwiftMXCheck utility to validate one or more SWIFT files.
To use the SwiftMXCheck utility:
1. Open a command line and change from the current directory to the plug-in
bin directory.
cd
TIB_ADSWIFT_HOME\bin
2. Copy the SwiftMXCheck.tra file, rename it as mySwiftMXCheck.tra, and
open the copied file in the text editor.
3. Change the application.args property to include the metadata and
validation options. For example:
TIB_ADSWIFT_HOME/bin/mxdata -set year TIB_ADSWIFT_HOME/bin/xsd/year/SwInt.xsd -mxsd
TIB_ADSWIFT_HOME/bin/xsd/year/$ahV10.xsd txsd
TIB_ADSWIFT_HOME/bin/xsd/year/ -ib IBAN_dir -v
TIB_ADSWIFT_HOME/examples/SampleMX.xml
application.args -mxdata
txsd
Ensure that before running an example, you download the required XSD files
that correspond to the MX message files used in the example, and save them
in the TIB_ADSWIFT_HOME\bin\xsd\year directory.
4. Save the properties file and exit the text editor.
5. On a command line, type the following command to start the utility:
SwiftMXCheck --run --propFile mySwiftMXCheck.tra
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
82
| Chapter 6
Configuring Advanced Options
Loading SWIFT MT Message Types into a Repository
You can use the adswiftSchemaLoader utility to load SWIFT MT message types
into a repository.
You can run the utility on a command line by providing the arguments to use in
the adswiftSchemaLoader.tra file, and then run the utility. The utility is located
in the TIB_ADSWIFT_HOME\bin directory.
Prerequisites
If you have not installed TIBCO Enterprise Message Service before installing the
plug-in, and the installed TIBCO Runtime Agent version is 5.9.x, you have to
install TIBCO Enterprise Message Service in the existing TIBCO_HOME, and add
the EMS class path to the mySchemaLoader.tra file.
To do so:
1. Open the copied TRA file: mySchemaLoader.tra.
2. Add the following class path to the tibco.class.path.extended area.
EMS_HOME/version_number/lib
3. Save the mySchemaLoader.tra file.
Using the adswiftSchemaLoader Utility
To set arguments in the adswiftSchemaLoader.tra file and run the
utility:
adswiftSchemaLoader
1. Change from the current directory to the plug-in bin directory.
cd
TIB_ADSWIFT_HOME\bin
2. Copy the adswiftSchemaLoader.tra file, and rename it as
mySchemaLoader.tra, and open the copied file in the text editor.
3. Change the application.args property with the repository location, the
plug-in home directory, SWIFT specification, load or unload (-l, -u) and
message types. For example:
application.args -system:propFile
TIB_ADSWIFT_HOME/bin/mySchemaLoader.tra -r
TIB_ADSWIFT_HOME/examples/Tester.dat -h
TIB_ADSWIFT_HOME -s specification_year -l -m 517
4. Save the properties file and exit the text editor.
5. On a command line, type the following command to start the utility:
adswiftSchemaLoader --run --propFile mySchemaLoader.tra
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Using Dynamic BIC or BEI Update 83
|
Using Dynamic BIC or BEI Update
The plug-in supports the BIC or BEI validations. In the previous releases of the
plug-in, if changes are made to the BIC file, the plug-in does not update
dynamically for the BIC or BEI validations. With the new Dynamic BIC or BEI
update feature, if changes are made to the BIC file, the plug-in updates
dynamically for the BIC or BEI validations.
If you use the plug-in, specify the BIC file to be used for validation in the
Configuration tab of TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT
activities.
Dynamic BIC update can be triggered using any of the following ways:
•
TIBCO Rendezvous message
•
TIBCO Enterprise Message Service message
The following specifies how to use the Dynamic BIC or BEI Update feature:
1. Activating Dynamic BIC or BEI Update, page 83
2. Triggering Dynamic BIC or BEI Update, page 83
Activating Dynamic BIC or BEI Update
You must activate the Dynamic BIC or BEI Update feature before you can use it.
To activate the Dynamic BIC or BEI Update feature, you have to specify the value
of the BIC_UPDATE_CONFIG_FILE_PATH property in the bwengine.tra file.
For example:
=
TIB_ADSWIFT_HOME/examples/BICUpdate.properties
java.property.BIC_UPDATE_CONFIG_FILE_PATH
The value of the property is the file name that contains the configuration
information for Dynamic BIC Update. The bwengine.tra file is located in the
TIBCO_HOME\bw\version_number\bin directory.
Triggering Dynamic BIC or BEI Update
The BIC information of the FI.dat file changes if you perform any of the
following operations:
•
Editing the FI.dat file
•
Overwriting the FI.dat file
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
84
| Chapter 6
Configuring Advanced Options
Generating a trigger to indicate to the plug-in the changes made to the file. You
can generate the trigger manually or automatically.
Manually
Using this method, you send a message using TIBCO Rendezvous or TIBCO
Enterprise Message Service to the plug-in.
Automatically
Automatic triggering of the message is possible if you use TIBCO Rendezvous or
TIBCO Enterprise Message Service.
In TIBCO Designer, configure a process with the following configurations:
•
Poll the BIC file (using the File Poller activity) to identify the changes in its
content.
•
Configure the TIBCO Rendezvous or TIBCO Enterprise Message Service
publisher activity for the required subject, topic, or queue. See Table 37 for
configuration information.
To receive the trigger, the plug-in updates its temporary memory (in-memory
cache) with new BIC information.
The following table lists the trigger types and parameters:
Table 37 Trigger Types and Parameters
Trigger Type
(triggerType)
TIBCO
Rendezvous
(RV)
Parameter
Notes
TIBCO Rendezvous parameters:
If you update the BIC file, you
must send a TIBCO Rendezvous
message on the configured
subject that has the BIC file
name as the message body.
RV_Service
RV_Network
RV_Daemon
RV_Subject
TIBCO
Enterprise
Message
Service (EMS)
Server parameters:
EMS_Server_URL
EMS_Username
EMS_Password
Destination parameters:
EMS_DestinationName
EMS_DestinationType(Topic or Queue)
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
If you update the BIC file, you
must send a TIBCO Enterprise
Message Service message on the
configured topic or queue that
has the BIC file name as the
message body.
Using Validation Filters 85
|
Using Validation Filters
You can use the validation filter feature to specify and thus selectively filter out
validation warnings that the plug-in might generate when processing an invalid
message.
With this feature, you can have access to fine-grained control over the overall
validation feature, in addition to the predefined validation features provided.
This section contains examples of how to do this.
Filter Groups
The ValidationFilter.xml file consists of a list of filter groups. Each filter
group has zero or more filters.
The following figure shows an example list of filter groups in the
ValidationFilter.xml file:
Figure 9 Example List of Filter Groups
<FILTERLIST>
Filter group
<!-- Disable validation of 23G, and 98B, but only for message type 509 -->
<FILTERGROUP MESSAGETYPE="509">
<FILTER PATH="Text/A/23G//"/>
Filters
<FILTER PATH="Text/B/QG98/98B//"/>
</FILTERGROUP>
Filter group
<!-- Disable basic header LTA validation for all SWIFT messages -->
<FILTERGROUP MESSAGETYPE="*">
<FILTER PATH="Basic/LT"/>
Filter
</FILTERGROUP>
Filter group
<!-- Disable very specific validation of field 22C -->
<FILTERGROUP MESSAGETYPE="365">
<FILTER PATH="Text/A/22C//" ERRORCODE="T22"/>
</FILTERGROUP>
Filter
</FILTERLIST>
For more details, see the ValidationFilter.xml file in the
TIB_ADSWIFT_HOME/examples/ValidationFilter_for_MT or
TIB_ADSWIFT_HOME/examples/ValidationFilter_for_MX directory.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
86
| Chapter 6
Configuring Advanced Options
Each filter group has a specification that defines the SWIFT message type or types
to which the group's filters apply. A wildcard "*" character is permitted as the
entire message type specification, or can appear after one or more message type
characters. The specification "*", for example, applies its filter group to all SWIFT
message types; the specification "5*" applies its filter group to all SWIFT message
types whose first digit is 5; the specification "sese.023.001*" applies its filter group
to all SWIFT message types whose first prefix is sese.023.001, and so on.
Filters
Each filter group has zero or more filters. With these filters, you can have access to
even finer-grained control of validation.
Filtering does not apply to parse errors, only to validation errors. If a SWIFT
message is invalid at a fundamental structural level and cannot be parsed, such
parse errors cannot be filtered out.
Filters for MT messages are different from those for MX messages.
MT Filters
Each MT filter contains a "disable path specification" and an optional error code.
A path specification is an XPath-like string that identifies one or more fields in a
SWIFT message. See Path Specification on page 88 for details on how to construct
path specifications. All fields that match the MT filter's path specification have
their validation warnings ignored.
If an MT filter also contains a SWIFT error code, then in addition to a path match
with a field, only those validation errors with that particular error code are
ignored. With this feature, you can have access to even finer-grained control of
validation.
Consider the following filter for MT messages:
<FILTER PATH="Text/A/22C//"/>
The preceding filter ignores validation errors for all occurrences of field 22C in
sequence A, for all messages in the filter's filter group. Another example:
<FILTER PATH="Text/A/22C//" ERRORCODE="T22"/>
This filter is more fine-grained than the previous filter. It only ignores validation
errors on field 22C in sequence A with SWIFT error code T22. All other validation
errors for this field pass through the filter.
Not all MT filters have to apply to the text block of a SWIFT MT message. The
following filter disables validation of the basic header's Logical Terminal Address:
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Using Validation Filters 87
|
<FILTER PATH="Basic/LT"/>
The following XML contains examples of how to disable various kinds of
validation:
<FILTERLIST>
<!--Disable validation of 23G, and 98B, but only for message type
509 -->
<FILTERGROUP MESSAGETYPE="509">
<FILTER PATH="Text/A/23G//" />
<FILTER PATH="Text/B/QG98/98B//" />
</FILTERGROUP>
<!-- Disable basic header LTA validation for all SWIFT messages
-->
<FILTERGROUP MESSAGETYPE="*">
<FILTER PATH="Basic/LT" />
</FILTERGROUP>
<!-- Disable very specific validation of field 22C -->
<FILTERGROUP MESSAGETYPE="365">
<FILTER PATH="Text/A/22C//" ERRORCODE="T22" />
</FILTERGROUP>
</FILTERLIST>
For more details, see the ValidationFilter.xml file in the
TIB_ADSWIFT_HOME/examples/ValidationFilter_for_MT directory.
MX Filters
Each MX filter contains a SWIFT error code. All MX messages that match the MX
filter's error code have their validation warnings ignored.
Consider the following filter for MX messages:
<FILTERLIST>
<!-- Disable validation of all sese.023.001* message's error code
D00008 -->
<FILTERGROUP MESSAGETYPE="sese.023.001*">
<FILTER ERRORCODE="D00008"/>
</FILTERGROUP>
</FILTERLIST>
This filter ignores validation errors in MX messages with the prefix sese.023.001*
and SWIFT error code D00008. All other validation errors pass through the filter.
For more details, see the ValidationFilter.xml file in the
TIB_ADSWIFT_HOME/examples/ValidationFilter_for_MX directory.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
88
| Chapter 6
Configuring Advanced Options
Path Specification
An MT filter uses a subset of the XPath grammar with a few additional
abbreviations to identify one or more elements of a message.
The XPath like syntax for the identifying path is composed of tokens separated by
the slash (/) character. Each token is composed of an element name or the
wildcard character (*). Optionally a predicate can be added inside square brackets
immediately following the element name. The predicates supported are a simple
one based index to identify the position of an element and an expression to
identify an attribute of the element. You can only use one predicate in square
brackets for each element name. In addition, only tag fields support the attribute
value expression. You can use an additional abbreviation with the attribute
matching expression. Multiple values can be entered separately by a vertical bar
to denote that either of the supplied values must match.
The slash separator character is used to mark the separation of element names.
They are also used to identify characteristics of the start and end of the path. A
slash at the start of a path identifies the path as an absolute path. Since all paths
are evaluated from the message, the path can be a relative path that does not start
with a slash or an absolute path that does start with a slash. As an addition to
XPath, a slash at the end of the path indicates that the path must match the last
name in the path as well as any immediate children of that element. Two slashes
indicate all descendents of the element must match.
Table 38 Path Specification
Field
Description
Text
The message Text block as sequences
Basic
The message Basic Header: AppId, Service, LT, Session, Sequence
App
The message Application Header:
•
io: IO flag, either "I" or "O".
•
I: Input Header: Type, Receiver, Priority, Delivery, Obsolescence.
•
O: Output Header: Type, InputTime, MIR, OutputDate, OutputTime, Priority.
User
The message User Header
Tags
The message Text block as a flat list of tag fields
Trailer
The message Trailer
S
The message SWIFT Alliance trailer if it exists
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Using Validation Filters 89
|
Valid Paths
The following are valid paths:
Table 39 Using Validation Filters: Valid Paths
Field
Description
/Basic/AppId
The AppId in the Basic Header
/Basic/*
Any subfield of the Basic Header
Basic/*[2]
The second subfield in the Basic Header
Basic/2
The second subfield in the Basic Header
/Text/A/A1[2]/A1a/16R/1
The first subfield of a 16R
/Text/A/*[2]/16R/Qualifier
Any second sequence in A
Text/A/*/57D/2-3
Subfield 2 to 3 of tag field 57D in any sequence in A
/Tags/16R/Qualifier
Used to identify the subfield by name
Tags/*/1
The first subfield of the any tag field
/App/O/MIR
MIR in the Output Header of the Application Header
/App/io
The io value for the Application Header
/User/119
Subfield 119 of the User Header
Trailer/MAC
Subfield MAC of the Trailer
/Text/A/
A and any immediate sequences, qualifier groups, or fields
Text/A//
A and any descendent sequences, qualifier groups, or fields
/Text/A/A1[2]/QG22/22F
A 22F tag field where the Qualifier subfield is 'MICO'
[@Qualifier=MICO]
[@Qualifier=MICO|FORM]
A 22F tag field where the Qualifier subfield is 'MICO' or
'FORM'
//
The message and any element in the message
Text/A/A1[2]/QG22/22F
Invalid Paths
The following are invalid paths:
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
90
| Chapter 6
Configuring Advanced Options
Table 40 Using Validation Filters: Invalid Paths
Field
Description
Text/A/A1[2]/A1a/16RS/
Qualifier
Multiple option characters for tags with different field names are
not supported.
Invalid/12A/2
Invalid part of the message.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Configuring Customized MX Java Rules 91
|
Configuring Customized MX Java Rules
You can configure customized MX Java rules so that TIBCO ActiveMatrix
BusinessWorks Plug-in for SWIFT supports additional MX message type
schemas.
To configure a customized MX Java rule:
1. Open a code writing software and write an MX Java rule code.
Note the following items when writing an MX Java rule code:
— You have to extend the MXValidationRule Java class and eval() method.
— The Java class name must be the same as the rule name in the SWIFT
Standard MX file.
— The Java rule code depends on the adswiftcore.jar and
dom4j-1.6.1.jar files, which are located in the
TIBCO_HOME\bw\plugins\lib directory.
For details about an example of an MX Java rule code, see Example MX Java
Rule Code on page 92.
2. Export Java rule code to a .jar file, and save the .jar file into the
TIBCO_HOME\bw\plugins\lib directory.
3. Add a customized MX message type to the KnownMessages.xml file in the
TIB_ADSWIFT_HOME\bin\mxdata\year directory. For example, add the
following information to the file:
<MESSAGE TYPE="semt.021.001.05"
DESCRIPTION="SecuritiesStatementQueryV05" />
4. Configure a customized MX message rule in a specific XML file in the
TIB_ADSWIFT_HOME\bin\mxdata\year directory based on the message type.
The prefix of the MX message type name in an MX message rule must be the
same as the suffix of a specific XML file in the
TIB_ADSWIFT_HOME\bin\mxdata\year directory. For example:
— The semt.021.001.05 MX message rule must be configured in the
MXsemt.xml file.
— The pacs.003.001.05 MX message rule must be configured in the
MXpacs.xml file.
— The acmt.001.001.05 MX message rule must be configured in the
MXacmt.xml file.
For details about an example of an MX message rule, see Example MX
message Rule on page 93.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
92
| Chapter 6
Configuring Advanced Options
5. Restart TIBCO Designer.
The customized MX Java rule becomes available, and the plug-in supports the
corresponding MX message.
Example MX Java Rule Code
The following is an example of an MX Java rule code:
package com.customer.swift.spec2015;
import org.dom4j.Element;
import
import
import
import
import
import
com.tibco.swift2.msg.MXFinder;
com.tibco.swift2.msg.SwiftMXMessage;
com.tibco.swift2.util.SwiftException;
com.tibco.swift2.validate.ArgResolver;
com.tibco.swift2.validate.MXValidationRule;
com.tibco.swift2.validate.MXValidator;
public class OtherIdentificationPresenceRule extends
MXValidationRule {
public OtherIdentificationPresenceRule(String name,String
xpath, String overrideErrorSeverity, String
overrideErrorCode,String overrideErrorText,String[] args,
ArgResolver resolver) throws SwiftException {
super(name, xpath, overrideErrorSeverity, overrideErrorCode,
overrideErrorText,args, resolver, 0, 0, new Class[0]);
}
@Override
public boolean eval(SwiftMXMessage msg, MXValidator validator,
int validationLevel) {
MXFinder finderFinInstrmId=new
MXFinder(getParam_FinInstrmId());
MXFinder finderISIN= new MXFinder(getParam_ISIN());
MXFinder finderOthrId= new MXFinder(getParam_OthrId());
MXFinder finderDesc= new MXFinder(getParam_Desc());
boolean isValid = true;
Element elementISIN=finderISIN.getElement(msg);
Element elementDesc=finderDesc.getElement(msg);
Element elementOthrId=finderOthrId.getElement(msg);
Element elementFinInstrmId=finderFinInstrmId.getElement(msg);
if(elementOthrId!=null)
return true;
if
(elementFinInstrmId!=null&&elementISIN==null&&elementDesc==
null) {
msg.addWarning(elementFinInstrmId, getName(),
getOverrideErrorCode(),getOverrideErrorText());
isValid = false;
}
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Configuring Customized MX Java Rules 93
|
return isValid;
}
public String getParam_FinInstrmId(){
return getParam().get("FinInstrmId");
}
public String getParam_OthrId(){
return getParam().get("OthrId");
}
public String getParam_ISIN(){
return getParam().get("ISIN");
}
public String getParam_Desc(){
return getParam().get("Desc");
}
}
Example MX message Rule
The following is an example of a customized MX message rule:
<MESSAGE TYPE="semt.021.001.05"
NAME="SecuritiesStatementQueryV05">
<RULE NAME="C1" EXPRESSION="AnyBICRule()" XPATH="//AnyBIC"
ERRORTEXT="Invalid BIC" ERRORCODE="D00008"/>
<RULE NAME="C7"
EXPRESSION="spec2015.DescriptionPresenceRule()" ERRORTEXT="At
least one identification must be present" ERRORCODE="X00192">
<PARAM NAME="FinInstrmId"
XPATH="//AddtlQryParams//FinInstrmId"/>
<PARAM NAME="ISIN" XPATH="//FinInstrmId/ISIN"/>
<PARAM NAME="OthrId" XPATH="//FinInstrmId/OthrId"/>
<PARAM NAME="Desc" XPATH="//FinInstrmId/Desc"/>
</RULE>
<RULE NAME="C10" EXPRESSION="spec2015.ISINPresenceRule()"
ERRORTEXT="At least one identification must be present"
ERRORCODE="X00194">
<PARAM NAME="FinInstrmId"
XPATH="//AddtlQryParams//FinInstrmId"/>
<PARAM NAME="ISIN" XPATH="//FinInstrmId/ISIN"/>
<PARAM NAME="OthrId" XPATH="//FinInstrmId/OthrId"/>
<PARAM NAME="Desc" XPATH="//FinInstrmId/Desc"/>
</RULE>
<RULE NAME="C11"
EXPRESSION="com.customer.swift.spec2015.OtherIdentificationPre
senceRule()" ERRORTEXT="At least one identification must be
present" ERRORCODE="X00193">
<PARAM NAME="FinInstrmId"
XPATH="//AddtlQryParams//FinInstrmId"/>
<PARAM NAME="ISIN" XPATH="//FinInstrmId/ISIN"/>
<PARAM NAME="OthrId" XPATH="//FinInstrmId/OthrId"/>
<PARAM NAME="Desc" XPATH="//FinInstrmId/Desc"/>
</RULE>
</MESSAGE>
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
94
| Chapter 6
Configuring Advanced Options
Using Global Variables
The variable substitution mechanism can override the global variables predefined
in a project in a restricted manner. Predefined variables can be viewed and set in
TIBCO Designer. Variables are specified as %%VARNAME%%, and cannot contain any
white space.
With variable substitution, you can accomplish the following tasks:
•
Substitute string variables specified in the project at startup time.
•
Locally define the value for a variable for a specific project.
The local value takes precedence over any global value.
•
Specify the value for a variable in a properties file.
This overrides the project repository and values set in code, but not variables
set on the command line.
•
Enforce the predefined variables listed in Predefined Global Variables on
page 96.
Specifying Variables Using TIBCO Designer
Global variables provide an easy way to set defaults for use throughout your
project. There are several ways in which they can be used:
•
Define a variable using TIBCO Designer, and then override the value for
individual applications at deployment time using TIBCO Administrator. You
can also override values for predefined variables, unless you cannot make
them settable later in the GUI.
•
Predefine a variable using TIBCO Designer, and then override the value for
individual services (for example, Publication service or TIBCO ActiveMatrix
BusinessWorks process) at deployment time using TIBCO Administrator. The
values you specify are then used at run time. You can also override values for
predefined variables, unless you cannot make them settable later in the GUI.
For example, you can assign the value 7474 to the predefined global variable
RvDaemon, and then use the variable in different sessions in your plug-in. If you
want to change the TIBCO Rendezvous daemon for your plug-in, you can
globally set it to a different value or override it from the command line.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Using Global Variables 95
|
To use global variables in your project:
1. Click the Global Variables panel, and then click Open Advanced Editor
You have the following choices:
.
— To assign or change a variable value, select that region and triple-click the
variable, and then change either the variable name or the variable value.
Click OK to save the settings.
— To add a global variable group, click Add a Variable Group
at the
bottom of the dialog. Specify the name of the group, then click OK.
— To add a global variable, click Add a Variable
at the bottom of the
dialog. A new global variable item is added to the bottom of the list. Specify
the variable name and, optionally, the value. Click OK to save the settings.
2. When you want to use the global variable in the fields of a resource, type the
variable name surrounded by %% on both sides.
When the project is deployed and the configured components are run, all
occurrences of the global variable name are replaced with the global variable
value, unless it was overridden in a way that had higher precedence.
A number of global variables are predefined. See Predefined Global Variables on
page 96 for more information. You might add definitions of any variables you
have to predefine.
Changing Global Variable Values at Run Time
You can change the value of a global variable when you deploy your project in
TIBCO Administrator. See the section of modifying runtime variables in TIBCO
Administrator User’s Guide for more information on using TIBCO Administrator.
You can also specify values for global variables when starting a process engine on
a command line. To do this, specify the following information as a command line
argument when starting the process engine:
-tibco.clientVar.variablePathAndName
value
where variablePathAndName is the name of the variable you want to set, including
the path to the variable if it is contained in a directory. value is the value you want
to set the variable to. For example, if you have a global variable named item1
contained in a directory named myGroup and you want to set its value to 500, add
the following argument to the command line when starting the process engine:
-tibco.clientVar.myGroup/item1 500
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
96
| Chapter 6
Configuring Advanced Options
Predefined Global Variables
The following table lists and explains the predefined global variables. Some
global variables are automatically used within the system when a plug-in instance
is configured.
Table 41 Predefined Global Variables
Variable
Description
Deployment
Defaults to the TIBCO Designer project name. This global variable is used
by the system to partially define the subject name defined for a service.
DirLedger
Used by the system when defining the path name of the TIBCO
Rendezvous certified messaging ledger file. The default value is the root
installation directory.
DirTrace
Used by the system to partially create the path name for the log file used
by the plug-in. The default is the root installation directory.
Domain
The default value for file-based local projects is domain. This value for
server-based projects is the domain to which the project was saved.
HawkEnabled
Indicate whether TIBCO Hawk is used to monitor the plug-in. true
indicates that a TIBCO Hawk microagent is defined for the plug-in.
false indicates the microagent is not to be used.
JmsProviderUrl
Tell applications where the JMS daemon is located. Setting this value
mostly makes sense in early stages of a project when only one JMS
daemon is used.
JmsSslProviderUrl
Specify where the JMS SSL daemon is located.
ReceiverInstanceId
Identify the SWIFT receiver instance. The default value is Receiver.
RemoteRvDaemon
Used by the system to identify the TIBCO Rendezvous routing daemon.
See TIBCO Rendezvous Administration for details about specifying the
routing daemon name.
RvDaemon
Used by the system to identify the TIBCO Rendezvous daemon
parameter. The parameter instructs the transport object about how and
where to find the Rendezvous daemon and establish communication.
The default value is 7500.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Using Global Variables 97
|
Table 41 Predefined Global Variables (Cont’d)
Variable
Description
RvNetwork
Used by the system to identify the TIBCO Rendezvous network
parameter. Every network transport communicates with other transports
over a single network interface. On computers with more than one
network interface, the network parameter instructs the TIBCO
Rendezvous daemon to use a particular network for all outbound
messages from this transport.
In most cases, you can keep the default value.
RvService
Used by the system to identify the TIBCO Rendezvous service parameter.
The TIBCO Rendezvous daemon divides the network into logical
partitions. Each transport communicates on a single service; a transport
can communicate only with other transports on the same service.
Unless you are using a non-default TIBCO Rendezvous configuration,
you can keep the default value 7500.
RvaHost
Used by the system to identify the computer on which the TIBCO
Rendezvous agent runs. See TIBCO Rendezvous Administration for details
about specifying the TIBCO Rendezvous agent parameters.
RvaPort
Used by the system to identify the TIBCO Rendezvous agent TCP port
where the agent listens to client connection requests. See TIBCO
Rendezvous Administration for details about specifying the TIBCO
Rendezvous agent parameters.
SenderInstanceId
Identify the SWIFT sender instance. The default value is Sender.
TIBHawkDaemon
Used by the system to identify the TIBCO Hawk daemon parameter. See
TIBCO Hawk Installation and Configuration for details about this
parameter.
TIBHawkNetwork
Used by the system to identify the TIBCO Hawk network parameter. See
TIBCO Hawk Installation and Configuration for details about this
parameter.
TIBHawkService
Used by the system to identify the TIBCO service parameter. See TIBCO
Hawk Installation and Configuration for details about this parameter.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
98
| Chapter 6
Configuring Advanced Options
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
| 99
Chapter 7
Processing Acknowledgment Messages
The chapter describes information on how to process ACK and NAK messages.
Topics
•
Overview of Acknowledgment Messages, page 100
•
Processing Acknowledgment Messages, page 101
•
Reconciling Acknowledgment Messages, page 102
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
100
| Chapter 7
Processing Acknowledgment Messages
Overview of Acknowledgment Messages
The acknowledgment is sent by the MT service to Logical Terminal to confirm the
receipt of a message and its safe storage by the service.
If an ACK is returned, the message is accepted by the MT service for delivery to
its destination. If a NAK is returned, the message, though safely stored, is not
accepted for delivery. The structure of an ACK or a NAK message is the same,
except that the value of tag 451 in the text block of an Acknowledgment message.
0 indicates the ACK, and 1 indicates the NAK.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Processing Acknowledgment Messages 101
|
Processing Acknowledgment Messages
MT acknowledgment messages are parsed using the
Message_FIN_Acknowledgement schema. The schema loads automatically when
you drag the Load SWIFT MT Schema shared resource from the SWIFT MT
palette to the Design panel in TIBCO Designer.
The activities of TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT support
the parsing and rendering of the ACK and NAK messages. To use the parser or
renderer for processing the acknowledgment messages, configure the SWIFT
Message Schema field of these activities to point to the
Message_FIN_Acknowledgement schema.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
102
| Chapter 7
Processing Acknowledgment Messages
Reconciling Acknowledgment Messages
The acknowledgment message from the SWIFT network contains the field 108.
The field carries Message User Reference (MUR) information of the original
message. This information can be one of the following ways:
•
MUR information is present in the user header of the original message.
•
If no MUR is present in the original message, contents of Field 20 of the
original message or (for Category 5 messages only) the contents of Field 20C,
with the code word SEME, but only when all alphabets are uppercase.
•
Contents of Field 20C.
For reconciling, you must have the reference information of the MT message sent
and value of the tag 108 of the acknowledgment message received. Compare both
information. If they match, the reconciliation is successful.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
| 103
Chapter 8
Migrating Projects to the Current SWIFT
Standards
This chapter describes how to migrate your projects to the current SWIFT
standards.
Topics
•
Migration Overview, page 104
•
Migrating Projects with SWIFT MT Activities, page 105
•
Migrating Projects with SWIFT MX Activities, page 106
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
104
| Chapter 8
Migrating Projects to the Current SWIFT Standards
Migration Overview
Every year, SWIFT releases new message standards. This release of the plug-in
supports the standards release 2015. Therefore, you have to migrate existing
projects to the current SWIFT standards.
The migrations to the current SWIFT standards are different for projects with
SWIFT MT activities and projects with SWIFT MX activities.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Migrating Projects with SWIFT MT Activities 105
|
Migrating Projects with SWIFT MT Activities
You can migrate your projects that use SWIFT MT activities and the previous
SWIFT standards to the current SWIFT standards.
To migrate projects with SWIFT MT activities:
1. Uninstall the previous version of the plug-in.
2. Install the new version of the plug-in.
3. Start TIBCO Designer.
4. Open the project configured using previous versions of the plug-in; you are
prompted to upgrade to the new release. Click OK to upgrade it.
5. In the Configuration tab of the Load SWIFT MT Schema shared resource,
select the new SWIFT specification, for example, SWIFT November 2015
specification, from the Specification list.
6. When the Load SWIFT MT Schema dialog is displayed, click Yes to unload
all your existing SWIFT-related schemas.
The message type schemas of the previous SWIFT MT standards release are
unloaded.
7. In the Configuration tab, select the check boxes next to the corresponding
message type schemas required by the existing project.
8. Click Load Selected to load the required message type schemas.
9. From the menu, click Project > Save to save the project.
In SWIFT Standards Release 2015, structural changes in a SWIFT message can
cause the mappings from the existing projects to break. Restore the broken links
manually.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
106
| Chapter 8
Migrating Projects to the Current SWIFT Standards
Migrating Projects with SWIFT MX Activities
You can migrate your projects that use the previous SWIFT MX activities and the
previous SWIFT standards to the current SWIFT standards.
To migrate projects with SWIFT MX activities:
1. Uninstall the previous version of the plug-in.
2. Install the new version of the plug-in.
3. Download required XSD files from the SWIFT website, and save them in the
TIB_ADSWIFT_HOME\bin\xsd\year directory.
The XSD files must correspond to the message type schemas that are used in
the existing project.
4. Start TIBCO Designer.
5. Open the project configured using previous versions of the plug-in; you are
prompted to upgrade to the new release. Click OK to upgrade it.
6. Add a Load SWIFT MX Schema shared resource to the existing project.
7. In the Configuration tab of the Load SWIFT MX Schema shared resource,
select a SWIFT specification, for example, SWIFT November 2015
specification, from the Specification list.
8. Click Apply to save the configuration.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Migrating Projects with SWIFT MX Activities 107
|
9. In the Configuration tab of the Parse SWIFT MX or Render SWIFT MX
activity, configure the following fields as required:
a. Click Browse resources
next to the SWIFT Specification field.
b. In the Select a Resource dialog, select the added Load SWIFT MX Schema
shared resource, and click OK.
c. Click Select a file from the file system
field.
next to the Transport Schema
d. In the Select Schema dialog, select the corresponding transport schemas,
and click OK.
e. Click Select a file from the file system
Schema field.
f.
next to the AppHeader
In the Select Schema dialog, select the corresponding AppHeader
schemas, and click OK.
g. Click Select a file from the file system
next to the MX Schema field.
h. In the Select Schema dialog, select the corresponding MX schemas, and
click OK.
10. Click Apply to save the configuration.
11. From the menu, click Project > Save to save the project.
If an MX message used in existing projects is updated, you must update the
corresponding MX message file accordingly.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
108
| Chapter 8
Migrating Projects to the Current SWIFT Standards
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
| 109
Appendix A
Managing Logs
This appendix describes how to manage the logs of TIBCO ActiveMatrix
BusinessWorks Plug-in for SWIFT.
Topics
•
Log Levels, page 110
•
Checking Debug Logs, page 111
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
110
| Appendix A
Managing Logs
Log Levels
When an error occurs, you can check logs to trace and troubleshoot the plug-in
exceptions.
You can specify the log level for trace messages. Different log levels correspond to
different messages. Table 42 lists common log levels.
Table 42 Log Levels
Log Level
Description
Trace
Includes all information regarding the running process.
Debug
Indicates a developer-defined tracing message.
Info
Indicates normal plug-in operations. No action is required. A tracing message
tagged with Info indicates that a significant processing step is reached, and
logged for tracking or auditing purposes. Only info messages preceding a
tracking identifier are considered as significant steps.
Warn
Indicates that an abnormal condition occurred. Processing continues, but for
best practice, you can contact the administrator to investigate it.
Error
Indicates that an unrecoverable error occurred. Depending on the severity of
the error, the plug-in might continue with the next operation or might stop.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Checking Debug Logs 111
|
Checking Debug Logs
By default, the info level and error level information is logged. You can check
debug level and warn level log information by setting properties.
To check debug level log information:
1. Create a property file in a local directory.
2. Open the created property file, and add the following information to the file:
Trace.Task.*=true
Trace.Debug.*=true
Trace.Info.*=false
Trace.Error.*=false
Trace.Warn.*=false
If you want to check the log of another specific level, set the value of the
corresponding property to true.
3. Start TIBCO Designer.
4. In the Project panel, click the configured process that you want to run.
5. In the Tester panel, click Start testing viewed process
.
In the Select Processes to Load dialog, the check box next to the process is
selected by default.
6. In the Select Processes to Load dialog, click Advanced to configure advanced
test settings.
7. In the Advanced Test Settings tab, type -p property_file_path in the Test Engine
User Args field, for example, -p C:\test.properties. Click OK to save the
configuration.
8. Click Load Selected to run the process.
When the process is running, the black transition arrows pointing to each
activity turn green.
9. Click Stop testing
to stop testing and return to Design mode.
10. From the menu, click Window > Show Console to view the debug level log
information.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
112
| Appendix A
Managing Logs
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
| 113
Appendix B
Error Codes
This appendix describes the error codes used by TIBCO ActiveMatrix
BusinessWorks Plug-in for SWIFT.
Topics
•
Plug-in Error Codes, page 114
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
114
| Appendix B
Error Codes
Plug-in Error Codes
Table 43 lists the exceptions that are thrown by the plug-in, corresponding
descriptions, and solutions.
Table 43 Error Codes
Error Code
Role
BW-ADSWIFT100000
Validation Warnings: [ %1 ].
errorRole
BW-ADSWIFT200000
Category
BW-Plugin
Description
When you validate an
MT or MX message, an
error occurs if the
message does not
follow the SWIFT
specification.
Solution
Check errors listed in the
error message, and take an
appropriate action.
Exception Message: [ %1 ]. Exception StackTrace: [ %2 ].
errorRole
BW-Plugin
After the validation of
an MT or MX message,
an error occurs when
you transfer the
message.
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Check errors listed in the
error message, and take an
appropriate action.
| 115
Index
B
M
BIC code file (FI.dat) 32, 38, 43
MQSA 11
C
P
CASmf 10
CONFIG_HOME xiii
connecting with TIBCO resources xv
customer support xv
processing acknowledgment messages 101
R
E
reconciling acknowledgment messages 102
related documentation xii
ENV_NAME xiii
S
F
FTP 10
G
global variables 94
predefined global variables 96
support, contacting xv
SWIFT messages 6
SWIFT MT palette 24
Generate SWIFT BICPlusIBAN 26
Load SWIFT MT Schema 25
Parse SWIFT MT 30
Render SWIFT MT 36
Route SWIFT MT 41
Validate SWIFT BICPlusIBAN 28
SWIFT MX palette 48
Load SWIFT MX Schema 49
Parse SWIFT MX 52
Render SWIFT MX 57
L
log levels 110
logs 110
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
116
| Index
T
technical support xv
terminology and acronyms 2
TIB_ADSWIFT_HOME xiii
TIBCO_HOME xiii
typographical conventions xiii
U
using validation filters
filter groups 85
filters 86
path specification 88
utilities
SwiftCheck utility 78
SwiftMXCheck utility 80
V
validate advanced header 32, 38, 43
validate AppHeader schema 53, 58
validate BIC/BEI 31, 37, 42, 54, 59
validate data types 31, 37, 42
validate field format 30, 36, 41
validate field-level semantics 31, 37, 42
validate IBAN/BBAN 54, 59
validate message structure 30, 36, 41
validate message-level semantics 32, 38, 43
validate MX rules 54, 59
validate MX schema 54, 59
validate qualifier code words 31, 37, 42
validate structured narrative 32, 38, 43
validate transport schema 53, 58
validation filter file (ValidationFilter.xml) 33, 39, 44,
55, 60
TIBCO ActiveMatrix BusinessWorks Plug-in for SWIFT User’s Guide
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement