7/23/2019 BizTalk Integration Reference Guide
1/34
Workflow Solutions
InfoImageBizTalk Integration Reference Guide
UNISYS
2008 Unisys Corporation.
All rights reserved.
Printed in USA
December 2008 8206 3595-000
7/23/2019 BizTalk Integration Reference Guide
2/34
NO WARRANTIES OF ANY NATURE ARE EXTENDED BY THIS DOCUMENT. Any product or related information
described herein is only furnished pursuant and subject to the terms and conditions of a duly executed agreement to
purchase or lease equipment or to license software. The only warranties made by Unisys, if any, with respect to the
products described in this document are set forth in such agreement. Unisys cannot accept any financial or other
responsibility that may be the result of your use of the information in this document or software material, including
direct, special, or consequential damages.
You should be very careful to ensure that the use of this information and/or software material complies with the
laws, rules, and regulations of the jurisdictions with respect to which it is used.
The information contained herein is subject to change without notice. Revisions may be issued to advise of such
changes and/or additions.
Notice to Government End Users: This is commercial computer software or hardware documentation developed atprivate expense. Use, reproduction, or disclosure by the Government is subject to the terms of Unisys standard
commercial license for the products, and where applicable, the restricted/limited rights provisions of the contract
data rights clauses.
Correspondence regarding this publication can be submitted through the normal support process for the product in
question as a UCF. For documentation problem, use the "USER-DOC" component in the UCF.
Visit http://www.support.unisys.com/EPA/TXT/IIF-WELCOME?PLA=IIF&FORM=HTML-UNISYS
Unisys and InfoImage are registered trademarks of Unisys Corporation in the United States and other countries.
All other brands and products referenced in this document are acknowledged to be the trademarks or registered
trademarks of their respective holders.
7/23/2019 BizTalk Integration Reference Guide
3/34
8206 3595-000 iii
Contents
Section 1. Getting Started
Purpose ................................................. ................................................. ....... 11Audience ............................................ ................................................. ............ 11Prerequisites .................................................. ................................................. . 11Scope ................................................. .................................................. ...... 11Introduction to BizTalk Server......................................................................12BizTalk Integration...........................................................................................12
Section 2. Custom Pipeline Components
Process Overview...........................................................................................21Introduction to Custom Pipeline Components ........................................ 22BizTalk Integration Custom Pipeline Components ................................. 22Adding Custom Pipeline Component......................... ................................ 23XML Schema .............................................. ............................................... . 24Send Workitem Schema.................................................. ............................. 24Retrieve Workitem Schema.................................................... ..................... 24Input Specifications .................... ..................................................... ............ 24Using Schemas in Orchestration ................................................... ............. 25
Credential Encryption ............................................... ..................................... 25Introducing Workitem to InfoImage Workflow Domain........................ 26Retrieving Workitem from InfoImage Workflow Domain .................... 28
Section 3. Base64 Encoding
Base64 Encoding.............................................................................................31Code Snippet for Encoding .................................................. ........................ 33Code Snippet for Decoding..........................................................................34
Appendix A. Using the Samples
Before You Begin................................................. .......................................... A1Creating Strong Name Key .............................................. ............................ A1Referencing the SNK File Name and Path ................................................A2Deploying the Solution..................................................................................A2Configuring Receive Port..............................................................................A2Configuring Send Port ............................................. ......................................A3Starting Orchestration...................................................................................A3Adding User Groups to ASPNET............................................. ................... A4Setting up the Internet Information Service (IIS) Manager .................. A4
7/23/2019 BizTalk Integration Reference Guide
4/34
Contents
iv 8206 3595-000
Modifying the Public Key Token.................................................................A4Adapters ........................................................................................................A6Using the File Adapter .......................................... ........................................A6InfoPath Integration.......................................................................................A7
Designing a Form.................................................... ....................................... A7Using the Simple Object Access Protocol (SOAP) Adapter .................A8
Glossary ..................................................................................................... 1
7/23/2019 BizTalk Integration Reference Guide
5/34
8206 3595-000 11
Section 1
Getting Started
This section provides the following information:
A brief description of this documents purpose, audience, prerequisites and scope.
An introduction to Microsoft BizTalk Server and BizTalk Integration.
Purpose
The purpose of this guide is to provide instructions and supporting information forusing the Custom Pipeline Components in Microsoft BizTalk Server to communicatewith the InfoImage workflow domain via Client Automation Layer (CAL).
Audience
This guide is intended for InfoImage system administrators, BizTalk designers, and
others who manage Enterprise Application Integration.
Prerequisites
The BizTalk designers should be familiar with the concepts and operation of the
InfoImage workflow domain. Refer to the Technical Overview Guide for a high-level
overview of InfoImage workflow domain subsystem processes and InfoImage
components.
The prerequisites for installing the InfoImage BizTalk Integration Component are:
Microsoft BizTalk Server 2006
Microsoft Office InfoPath 2003/2007, SP1 (optional)
Scope
The scope of this guide does not include providing instructions for using the Microsoft
BizTalk Server 2006. For information on this product, see the appropriate user guides
or online help.
7/23/2019 BizTalk Integration Reference Guide
6/34
Getting Started
12 8206 3595-000
Introduction to BizTalk Server
BizTalk is a Microsoft product for business-process automation and application-
integration both within and between businesses. Microsoft BizTalk Server facilitates
Enterprise Application Integration (EAI) within your company and automates business-to-business processes among your business partners.
BizTalk Server 2006 is built completely around the .NET Framework and Microsoft
Visual Studio .NET. It is a powerful process-centric integration platform as it offers
Web services support, business rules, workflow, and Business Activity Monitoring
(BAM).
BizTalk Integration
Unisys offers an integrated solution for business process management: seamless
integration between Microsoft BizTalk Server 2006 and InfoImage. BizTalk can be used
to extend InfoImage workflow functionality by combining the extensive EAI
capabilities of BizTalk Server 2006 with the enterprise content management (workflow
and imaging) capabilities of InfoImage 8.2. BizTalk Integration allows the existing
BizTalk enterprise to communicate and pass data between systems.
Integration is accomplished using custom pipeline components hosted on the BizTalk
pipeline. The delivered samples use the CAL API to interact with InfoImage workflow
domains Clients can create, send and retrieve workitems to and from workflow using
these pipelines.
Following are the two custom pipeline components:
Unisys Send Workitemcreates and sends workitems to the default workstep ofan InfoImage workflow domain.
Unisys Retrieve Workitem retrieves workitems from an InfoImage workflow
domain.
For more information on BizTalk Integration installation, refer to the Installation and
Configuration Guide.
7/23/2019 BizTalk Integration Reference Guide
7/34
8206 3595-000 21
Section 2
Custom Pipeline Components
This section contains sections describing the process overview, custom pipeline
components, XML schema, credential encryption and how the BizTalk Integration
custom pipeline components work within an orchestration.
Process Overview
When a message is received in BizTalk Server 2006 it is processed through a receivepipelineby a receive adapter. The receive pipeline contains components that perform
various actions such as message format conversion and validation. The message is
delivered into the MessageBox database.
The message is then dispatched to its target orchestration, which performs the action
defined by that orchestrations business process. Typically the result of this
processing is that another message is produced by the orchestration and saved in the
Message Box database.
This message, in turn, is processed by a send pipeline, which may convert it from the
internal XML format to any format required by its destination. The message is sent out
through a send adapterusing an appropriate mechanism to communicate with the
application for which this message is destined.
The following illustration depicts the BizTalk Server Engine and the Message flow:
DecryptDecrypt ParseParse ResolveResolvePartyParty
MessageBoxMessageBox
DatabaseDatabase
SerializeSerialize SignSignEncryptEncrypt
ReceiveReceive
AdapterAdapterSendSend
AdapterAdapter
Receive Pipeline Send Pipeline
Orchestration
Receive Location Send Port
XMLXML
XML or
Flat File
XML or
Flat File
Receive Port
DecryptDecrypt ParseParse ResolveResolvePartyParty
MessageBoxMessageBox
DatabaseDatabase
SerializeSerialize SignSignEncryptEncrypt
ReceiveReceive
AdapterAdapterSendSend
AdapterAdapter
Receive Pipeline Send Pipeline
Orchestration
Receive Location Send Port
XMLXML
XML or
Flat File
XML or
Flat File
Receive Port
7/23/2019 BizTalk Integration Reference Guide
8/34
Custom Pipeline Components
22 8206 3595-000
Introduction to Custom Pipeline Components
Pipelines are used to prepare messages for processing. A receive pipelineprepares
messages for processing after they are received; the send pipelineprepares
messages for sending after being processed.
BizTalk 2006 Pipelines allow you to customize the processing of XML documents
received or sent via the various BizTalk 2006 adapters. Custom Pipeline components
extend the behavior of Pipelines to include processing data of any format.
BizTalk Integration Custom Pipeline Components
BizTalk Integration includes two custom pipeline components:
Unisys Send Workitem
Unisys Retrieve Workitem
Both of the custom pipeline components are General Components and can be placed
in the following stages of the pipeline:
Pipeline Stages
Receive Pipeline Decode
Validate
Resolve Party
Send Pipeline Pre-assemble
Encode stages
Note: The custom pipeline components cannot be placed in the Disassemble stage
(Receive Pipeline) or the Assemble stage (Send Pipeline).
Using these pipeline components in BizTalk, you can integrate external applications
with your InfoImage workflow domains.
Sample BizTalk project files are provided so that you may customize them to meet
your requirements.
For information about error messages, refer to the BizTalk Integration section in the
Troubleshooting Guide.
7/23/2019 BizTalk Integration Reference Guide
9/34
Custom Pipeline Components
8206 3595-000 23
Adding Custom Pipeline Component
In a Visual Studio.NET BizTalk project, add the custom Pipeline components to the
Pipeline component toolbar by doing the following:
1. Click Add/Remove Toolbox Itemsfrom the Tools menu or right-click the top of
the Pipeline Component toolbar and select Add/Remove Items.
2. Select the Unisys Send Workitem or the Unisys Retrieve Workitem Pipeline
component on the Pipeline Components tab.
Drag and drop the custom Pipeline components onto the Pipeline.
The Unisys Send Workitem and Unisys Retrieve Workitemcustom Pipeline
component are deployed in the\Program Files\Microsoft BizTalk Server
2006\Pipeline Components directory.
To enable encryption, set the EncryptionLevel to "1" in the Pipeline Component
Propertiesunder Properties for the Unisys Send Workitem and/or Unisys Retrieve
Workitemcustom Pipeline component. By default, encryption is disabled and the
EncryptionLevel is set to "0".
Refer to 'Credential Encryption' for more information on how to encrypt/decrypt
string.
7/23/2019 BizTalk Integration Reference Guide
10/34
Custom Pipeline Components
24 8206 3595-000
XML Schema
BizTalk Server relies heavily on Extensible Markup Language (XML) Schema files.
Schemas describe the format of the document and the data being processed between
the two systems. Both incoming and outgoing messages are defined using XMLSchema Definitions (XSDs).
All the schema files (XSD) are installed under the
\UeWI\Samples\IIFBizTalkSamples\IIFBizTalk\IIFBizTalk\directory. There are
specific incoming and outgoing XSD files for each custom pipeline components.
Note: The schemas are available only when Samples is selected during custominstallation.
Send Workitem Schema
Schema Type Schema File Name
Incoming Message Schema InputWISend.xsd
Outgoing Message Schema OutputWISend.xsd
Retrieve Workitem Schema
Schema Type Schema File Name
Incoming Message Schema InputWIRetrieve.xsd
Outgoing Message Schema OutputWIRetrieve.xsd
Input Specifications
Page Markups
The following table lists the value to be provided in the input XML file for patterntype
in page markups.
PatternType Value
Diagonal Cross diagcross
Backward Diagonal bdiagonal
Forward Diagonal fdiagonal
Empty Nodes
While creating/retrieving workitem, the input xml file should not include empty nodes
(node without data). For example: .
Repeating Form Field
While creating a workitem, if the same form fields are repeated then the latest form
field input is considered.
7/23/2019 BizTalk Integration Reference Guide
11/34
Custom Pipeline Components
8206 3595-000 25
Using Schemas in Orchestration
Before referencing the schema assembly in the Orchestration Designer, you must add
a reference.
Adding a Reference
You must define the messages that are being sent and received. All the messages
must adhere to the pre-defined input or output schema. In Visual Studio .Net
2005/2008, in the Orchestration, add a reference to the provided BizTalk Integration
schemas.
While creating variables for the message instances, add the message instance variable
in the Orchestration View.
Adding Message Instance Variable
You must create message variables for each message instance, and associate each
variable with a schema.
Credential Encryption
During installation, the obfuscate.dll is delivered at\UeWI\Common\ directory. Third
party integration can use the two exposed functions, Obfuscate and Elucidate for
encrypting and decrypting passwords (i.e. credentials) respectively.
Following is the code snippet for encrypting and decrypting password.
Encryption
Function Declaration
Function Call
Decryption
Function Declaration
Function Call
7/23/2019 BizTalk Integration Reference Guide
12/34
Custom Pipeline Components
26 8206 3595-000
Introducing Workitem to InfoImage WorkflowDomain
External applications can use the Unisys Send Workitem pipeline component - placed
in either the Send or Receive Pipelines - to create and send workitems to default
workstep in an InfoImage workflow domain.
InfoImageDomain
BizTalk Server Engine
InfoImageDomain
BizTalk Server Engine
To create and send workitems to an InfoImage workflow domain, the following
happens:
The external application must send the create workitem message to BizTalk.
The incoming message to BizTalk, in XML format, should adhere to the
InputWISend.xsd.
Note: For Import, Page and Notes, specify Import, Page, or Notes number alongwith the actual data. If the number provided is in shuffled order, randomnumber, or repetitive number, then the numbers will be sorted and considered.For example, if the number is provided as i) 1,3,2 or ii) 1,3,5, or iii) 1,2,2, thenumbering is sorted and considered as 1,2,3.
BizTalk communicates with Client Automation Layer (CAL) to create a workitem.
The workitem is successfully created, saved and sent to the default workstep in
the InfoImage workflow domain.
Note: If Fields/Imports/Notes/Pages fails to get created due to errors in the
workitem inputs, then the created workitem will be available in ClientList but
not sent to workflow.
7/23/2019 BizTalk Integration Reference Guide
13/34
Custom Pipeline Components
8206 3595-000 27
The outgoing message to BizTalk should adhere to the OutputWISend.xsd.
Note: All the schema files (XSD) are installed under the
\UeWI\Samples\IIFBizTalkSamples\IIFBizTalk\IIFBizTalk\ directory. The
schemas are available only when Samples is selected during custominstallation.
7/23/2019 BizTalk Integration Reference Guide
14/34
Custom Pipeline Components
28 8206 3595-000
Retrieving Workitem from InfoImage Workflow
Domain
External applications can use the Unisys Retrieve Workitem pipeline componentplaced in either Send or Receive Pipeline to retrieve the workitem from the InfoImage
workflow domain.
InfoImage
Domain
BizTalk Server Engine
InfoImage
Domain
BizTalk Server Engine
To retrieve workitems from the InfoImage workflow domain, the following happens:
1. The external application must send the retrieve workitem message to BizTalk.
The incoming message to BizTalk, in XML format, should adhere to the
InputWIRetrieve.xsd. The incoming message contains the WorkItem ID and details
of the workitem (such as pages, notes, imports and fields) that need to be
retrieved.
2. BizTalk communicates to CAL to retrieve a workitem from the InfoImage
workflow domain.
The outgoing message from BizTalk should adhere to the OutputWIRetrieve.xsd.
This information is populated in the custom "Receive Pipeline." The output XML is
passed to the Orchestration for further processing by the customers, as per their
business needs.
3. The workitem is successfully retrieved and sent to the external application.
Note: All the schema files (XSD) files are installed under the \Program
Files\UeWI directory. The schemas are available only when Samples is
selected during custom installation.
7/23/2019 BizTalk Integration Reference Guide
15/34
8206 3595-000 31
Section 3
Base64 Encoding
This section provides information on Base64 encoding.
Base64 Encoding
Base64 encoding is the scheme used to transmit binary data. It is a method of
encoding arbitrary binary data as ASCII text. Base64 processes data as 24-bit groups
and maps data to four encoded characters. Each 6 bits of the 24-bit group is used asan index into a mapping table (base64 alphabet) to obtain a character for the encoded
data.
If the workitem is an image document that includes pages or imports, then all the
pages and imports embedded into the custom application should follow base64-
encoding algorithm. The XML schema has standardized base64 as an XML datatype.
Pages and imports should follow the base64 encoding for integration with external
applications, except InfoPath 2003/2007 that does Base64 encoding/decoding. Pages
and imports should be embedded as base64 encoded data. The custom applications
need to decode the encoded data.
Note:
In Microsoft Office InfoPath 2003/2007, the File Attachment control enables you
to insert files that are base64 encoded. This base64 data is then stored with the
XML data in the InfoPath form.
While using the File adapter, you must ensure that the pages and imports that are
adhering to the base64 encoding are embedded into the custom application.
When the external application generates the messages, it should encode pages and
imports as per the Base64 format.
The Base64 standard to be followed is briefly described below.
In the base64-encoded data, prior to the file content, there is a header that includesinformation about the file being attached.
7/23/2019 BizTalk Integration Reference Guide
16/34
Base64 Encoding
32 8206 3595-000
The header structure consists of the following:
BYTE[4]: Signature:
(decimal) 199 73 70 65
(hexadecimal) C7 49 46 41
(ASCII C notation) \307 I F A
The first byte is chosen as a non-ASCII value to reduce the probability that a text
file may be misrecognized as a file attachment. The rest identifies the file as a File
Attachment.
DWORD: Size of the header
DWORD: IP Version
DWORD: dwReserved
DWORD: File size
DWORD: Size of file name buffer
File name buffer: variable size
After building the header structure described above, the header and file data are
concatenated and base64 encoded.
7/23/2019 BizTalk Integration Reference Guide
17/34
Base64 Encoding
8206 3595-000 33
Code Snippet for Encoding
Following is the code snippet to be used for encoding.
byte[] fileBuffer = null;String encodedData = String.Empty;using(FileStream fs = newFileStream(filePath +fileName,FileMode.Open)){fileBuffer = newbyte[fs.Length];fs.Read(fileBuffer,0,(int)fs.Length);fs.Flush() ;fs.Close() ;}byte[] nameBuffer = newbyte[fileName.Length*2];byte[] fileContent = newbyte[fileBuffer.Length+nameBuffer.Length+24];byte[] filesize = BitConverter.GetBytes((uint)fileBuffer.Length);
byte[] fileNameLength =BitConverter.GetBytes((uint)nameBuffer.Length/2);
//The first 24bytesshould contain the details of the file name//and file size, out of which the first 16 should be constants//as given below.At position 20 there should be DWORD//containing the length of the filename buffer. Filename is//stored as Unicode, the length is multiplied by 2. The file//name starts from position 24.
fileContent[0] = 199 ;
fileContent[1] = 73 ;fileContent[2] = 70 ;fileContent[3] = 65 ;fileContent[4] = 20 ;fileContent[5] = 0 ;fileContent[6] = 0 ;fileContent[7] = 0 ;fileContent[8] = 1 ;fileContent[9] = 0 ;fileContent[10] = 0 ;fileContent[11] = 0 ;fileContent[12] = 0 ;fileContent[13] = 0 ;
fileContent[14] = 0 ;fileContent[15] = 0 ;fileContent[16] = filesize[0] ;fileContent[17] = filesize[1] ;fileContent[18] = filesize[2] ;fileContent[19] = filesize[3] ;fileContent[20] = fileNameLength[0] ;fileContent[21] = fileNameLength[1] ;fileContent[22] = fileNameLength[2] ;
7/23/2019 BizTalk Integration Reference Guide
18/34
Base64 Encoding
34 8206 3595-000
fileContent[23] = fileNameLength[3] ;UnicodeEncoding.Unicode.GetBytes(name+"\0",0,fileName.Length+1,fileContent,24);
for(inti = 0; i < fileBuffer.Length; i++ )
{ fileContent[24+nameBuffer.Length+i] = fileBuffer[i];}
//Convert a subset of an array of 8-bits unsigned integers in to//equivalent String representation consisting of base 64 digits.encodedData = Convert.ToBase64String(fileContent);
Code Snippet for Decoding
Following is the code snippet to be used for decoding.
//Prior to the filecontent, there is a header in the Base64-//string, including the original filename, length of the file,//etc. At position 20 there is a DWORD containing the length of//the filename buffer. Since the filename is stored as Unicode,//the length is multiplied by 2. At position 24 in the header the//filename starts.//The Encoded data is decoded into a byte array.
byte[] decodeByte = Convert.FromBase64String(encodedData);intnamebufferlen = decodeByte[20]*2;byte[] filenameBuffer = newbyte[namebufferlen];
//The byte from where only the decoded data is present is//retrieved in the filenameBuffer.
for(intindex = 0; index< filenameBuffer.Length ;index++){filenameBuffer[index] = decodeByte[24+index];}byte[] filecontent = newbyte[decodeByte.Length-(24+namebufferlen)];for(intindex = 0; index < filecontent.Length; index++){filecontent[index] = decodeByte[24+namebufferlen + index];}
//The actual file content is saved into a file using filestream.
using(FileStream fs = newFileStream(fileName,FileMode.Create)){fs.Write(filecontent,0,filecontent.Length);fs.Flush();fs.Close();}
7/23/2019 BizTalk Integration Reference Guide
19/34
8206 3595-000 A1
Appendix A
Using the Samples
This section provides the information about the following:
Before You Begin
Adapters
Using the File Adapter
InfoPath Integration
Using the Simple Object Access Protocol (SOAP) Adapter
Before You Begin
Before you start using the samples, do the following:
Create Strong Name Key (SNK)
Reference the SNK
Deploy the solution
Configure Receive Port
Configure Send Port
Start Orchestration
Add User Groups to ASPNET
Set up the Internet Information Service (IIS) Manager
Modify the Public Key Token
Creating Strong Name Key
To create the strong name key (SNK) file, do the following:
1. From the Start menu Programs, select Microsoft Visual Studio .Net, then selectVisual Studio .Net Tools and then select Visual Studio .Net Command Prompt.
2. Type the command and press Enter. For
example, sn k "D:\Samples\IIF.snk"
The key pair is written to the provided path.
7/23/2019 BizTalk Integration Reference Guide
20/34
Using the Samples
A2 8206 3595-000
Referencing the SNK File Name and Path
To reference the SNK file name and path
1.
In Visual Studio .Net, open the IIFBizTalk.sln from the\UeWI\Samples\IIFBizTalkSamples\iifbiztalk directory.
2. From the Project menu, click IIFBizTalk Properties.
3. In the dialog box, click Assemblyunder Common Properties.
4. Provide the created SNK file name and path against the Assembly Key Filefield
and click OK.
5. From the Build menu, click Build Solution.
Deploying the Solution
To deploy the solution, do the following:
1. In Visual Studio .Net, open the IIFBizTalk.sln from the
\UeWI\Samples\IIFBizTalkSamples\IIFBizTalk directory.
2. From the Project menu, click Properties. Under Configuration Properties, select
Deployment and then select the server where the orchestration needs to be
deployed.
3. From the Build menu, click Deploy Solution.
Configuring Receive Port
To configure the receive port, do the following:
Using File Adapter
1. From the View menu, click BizTalk Explorer
2. In the BizTalk Explorer, expand the server node where the solution was deployed.
3. To retrieve workitem, expand the Receive Port node and then expand the
RetrieveWorkitemFile.
4. Expand the Receive Locations node. Right-click the Location and click Edit.
5. In the Receive Location Properties dialog box, select FILE as the 'Transport Type'
and for 'Address URI', click and type the path for the 'Receive folder'. Verify if
the File Mash has *.xml as value. Click Applyand then OK.
6.
Right-click the Location and click Enable.7. To send workitem, expand the Receive Port node and then expand the
SendWorkitemFile. Repeat the above step 4 to 6.
Using SOAP Adapter
1. In the BizTalk Explorer, expand the server node where the solution was deployed.
2. Right-click the RetrieveWorkitemSoap and click Enableto enable the location.
3. Right-click the SendWorkitemSoap and click Enableto enable the location.
7/23/2019 BizTalk Integration Reference Guide
21/34
Using the Samples
8206 3595-000 A3
Configuring Send Port
To configure the send port, do the following
1.
In the BizTalk Explorer, expand the server node where the solution was deployed.2. Expand Send Portsnode, right-click the RetrieveWorkitemFileand click Edit.
3. In the Configurations dialog box,
a. Expand the Transportnode and click Primary. Make sure the Transport
Type is FILE. For Address URI, click and type the path and File name with
file type in the Destination folder. For example, %MessageID%.xml. By default,
Create New is selected for Copy Mode. But if you are changing the file name,
then select Overwrite for Copy Mode.
b. Expand the Sendnode and click General. Select the
Microsoft.BizTalk.Default.Pipeline.PassThroughTrasmit. from the drop-down
menu for the Send Pipeline.
c. Expand the Filters & Mapsnode and click Filter. Select
BTS.ReceivePortNamefrom the drop-down menu for the Property. Select
== for Operator and paste the Receive Port name for Value. To copy the
Receive Port Name, right-click the Receive Port and click Edit.
4. Click Applyand then click OK.
5. Right-click the Send Port and click Enlistand then click Start.
6. Expand Send Portnode, right-click the SendWorkitemFileand click Edit.
Repeat the above steps 3 through 5.
Note: There is no need to configure send ports when using SOAP adapter.
Starting Orchestration
To start the orchestration, do the following:
1. In the BizTalk Explorer, expand the server node where the solution was deployed.
2. Expand the Orchestration node.
3. Select individual orchestration, right-click and click Enlist.
4. Right-click again and click Start.
Repeat this step for all orchestrations.
7/23/2019 BizTalk Integration Reference Guide
22/34
Using the Samples
A4 8206 3595-000
Adding User Groups to ASPNET
To add the user groups to ASPNET do the following:
1. Right-click My Computericon on the desktop and select Manage.
2. In Computer Management, expand the System Toolsnode, and then expand the
Local Users and Groupsnode.
3. Click the Usersnode, then right-click the ASPNETand select Propertiesto
provide details for the ASP .Net Machine account.
4. In the ASPNET Properties dialog box, select the Member Oftab, and click Addto
add a new user group.
5. Type "BizTalk Application Users" as the object name and click OK.
6. Again click Addto add another user group.
7. Type "BizTalk Isolated Host Users" as the object name and click OK.
8. Click OK.
Setting up the Internet Information Service (IIS) Manager
If you use the IIFBizTalk samples, a virtual directory needs to be created.
To set up the IIS Manager, do the following:
Using the IIS Manager, create a Virtual Directory under the Default Web Site with
the name as 'IIFBizTalk_Proxy' and point it to
\UeWI\Samples\IIFBizTalkSamples\webservice\IIFBizTalk_Proxy directory. It
requires only the 'read' and 'Run Script' option.
Modifying the Public Key Token
To modify the Public Key Token in the sample IIFBizTalk_Proxy solution file, do the
following:
1. In Visual Studio .Net, open the IIFBizTalk_Proxy.slnfrom the
\UeWI\Samples\IIFBizTalkSamples\webservice\IIFBizTalk_Proxy directory.
2. In Solution Explorer, click the
IIFBizTalk_RetrieveWorkitem_RetrieveWorkitemPort.asmx.cs under
IIFBizTalk_RetrieveWorkitem_RetrieveWorkitemPort.asmx.
3. Click the linkclick here to switch to code view.
4. In Windows Explorer, browse either to WINDOWS\assembly or WINNT\assembly.
Select the IIFBizTalkassembly, then right-click and then select Propertiesto
view the version and public key token. Copy these details.
7/23/2019 BizTalk Integration Reference Guide
23/34
Using the Samples
8206 3595-000 A5
5. In the code view in Visual Studio .Net, do the following:
a. Find ""and replace the existing valuewith the Public Key
Token value from the created SNK file.
b. Find and replace the existing valuewith the Version number fromthe created SNK file.
6. In Solution Explorer, click the
IIFBizTalk_SendWorkitem_SendWorkitemPort.asmx.cs under
IIFBizTalk_SendWorkitem_SendWorkitemPort.asmx.
Repeat the steps 3 through 5.
7. From the Build menu, click Build Solution.
8. In IIS Manager, expand the Application Pools node, click DefaultAppPool and
then right-click Properties.
9. In the Identity tab, provide the security account details, Username and
Password, and then click OK.
10. In IIS Manager, expand the Websites node, under the IIFBizTalk_Proxy, then right-
click the .asmx files (for Retrieve and Send Workitem) and click Browse.
Verify if the link is functional. It should open a browser window with "InfoPath
BizTalk Integration Web Service"in title.
7/23/2019 BizTalk Integration Reference Guide
24/34
Using the Samples
A6 8206 3595-000
Adapters
BizTalk Server messages are received and sent via Adapters. BizTalk Server 2004/2006
includes various transport adapters such as File, HTTP, SMTP, SOAP, BizTalk Message
Queuing, FTP, SQL, and EDI adapters, as well as the Adapter Framework.
The adapters for BizTalk implements a series of messaging patterns such as Request-
Reply, Publish-Subscribe, Correlation Identifier, etc.
The Sample BizTalk Project files provide connectivity through two adapters:
File Adapter
SOAP adapter
Using the File Adapter
Use of the File adapter allows the messages to be read and written to the files in the
Windows file system. You must ensure that all the attachments (such as pages,
imports, etc) with a workitem are Base64 encoded.
To use File adapter for BizTalk to access the InfoImage workflow domain
When a message arrives at the Input port, RetrieveWorkiteminputor
SendWorkiteminput, the File Adapter picks the message and transfers to
Receive Pipeline.
The Retrieve or Send Workitemcustom pipeline component,
Validates the incoming message with respect to a predefined schema
(InputWIRetrieve.xsd or InputWISend.xsd) Uses CAL to connect to domain and retrieve or send the details
Constructs an XML with output details
The output is sent to the defined output port.
7/23/2019 BizTalk Integration Reference Guide
25/34
Using the Samples
8206 3595-000 A7
InfoPath Integration
The use of InfoPath as an intermediary between the InfoImage workflow domain and
BizTalk Server makes it possible to streamline and automate business processes.
BizTalk uses XML as a universal data encoding standard and it is based on publish andsubscribe pattern, where an incoming document source can provide data to any
number of parties.
Data can be sent from InfoPath through XML Web Services to BizTalk. Using the
schema-based Web Services, you can connect the InfoPath forms to the InfoImage
workflow domain.
You can design forms that receive data from a Web service, submit data to a Web
service, or both. If you are designing a form that does both, you can specify different
Web services for receiving and submitting data.
Designing a Form
You can use the provided sample InfoPath forms or design a new form in Microsoft
InfoPath.
For example to retrieve data from a Web service, use the data source wizard and
create a new form based on an existing Web service.
To connect the form to the Web service, do the following:
1. From the Filemenu, click Design a Form.
2. In the Design a Formtask pane, click New from Data Connection.
3. In the Data Connection Wizard, click Web service, and then click Next.
4. On the next page of the wizard, click Receive data, and then click Next.
5. On the next page of the wizard, type the location of the Web service, and then
click Next.
Note: Do not deploy forms that use a localhost address for the Web service.
6. On the next page of the wizard, specify the Web service operation that you want
to submit your form data to.
7. Click Next.
8. On the next page of the wizard, type a name for the data connection, and then
click Finish.
7/23/2019 BizTalk Integration Reference Guide
26/34
Using the Samples
A8 8206 3595-000
Using the Simple Object Access Protocol (SOAP) Adapter
The Simple Object Access Protocol (SOAP) adapter enables sending and receiving
messages by using SOAP over HTTP.
To use SOAP adapter for InfoPath to send/receive data from InfoImage through
BizTalk, do the following:
1. Create a custom Send / Receive Pipeline and place the custom pipeline
components, Send Workitem or Retrieve Workitem.
2. Create and configure port types to use the custom pipeline.
3. Build and deploy the Pipeline.
4. Publish the BizTalk Orchestration as Web service.
5. Design the InfoPath form as per the Published SOAP Request and Response
Schema or use the provided sample form.
6. Fill the InfoPath form and submit the details.
The custom Pipeline component deployed in Receive Pipeline retrieves the result.
SOAP response sent to InfoPath from Web service and query results are displayed
in InfoPath.
The following illustration depicts the process.
InfoImage
WorkflowDomain
Web ServiceBizTalk
Server 2004
SOAP Request /SOAP Response
InfoImage
WorkflowDomain
Web ServiceBizTalk
Server 2004
SOAP Request /SOAP Response
7/23/2019 BizTalk Integration Reference Guide
27/34
Using the Samples
8206 3595-000 A9
The following illustration is an example to create and send workitem, using InfoPath
form, into the InfoImage workflow domain.
SendWorkitem details View
7/23/2019 BizTalk Integration Reference Guide
28/34
Using the Samples
A10 8206 3595-000
Pages View
7/23/2019 BizTalk Integration Reference Guide
29/34
Using the Samples
8206 3595-000 A11
The following illustration is an example to retrieve information of the workitem using
InfoPath form from the InfoImage workflow domain.
Query details View
7/23/2019 BizTalk Integration Reference Guide
30/34
Using the Samples
A12 8206 3595-000
Pages View
7/23/2019 BizTalk Integration Reference Guide
31/34
8206 3595-000 Glossary1
Glossary
A
API
Application Programming Interface
A documented method by which one program can request services from another.
Any language and format used by one program to help it communicate with
another program.
The APIs enable programmers to repackage, recombine, or integrate parts of an
imaging system application with other applications, and to customize the userinterface.
B
BizTalk
A Microsoft product for business-process automation and application-integration both
within and between businesses. BizTalk is an industry initiative to promote Extensible
Markup Language (XML) as the common data exchange language for e-commerce and
application integration on the Internet.
BizTalk Server interacts with the back-end and legacy systems to automate
transactions between the business partners, and to automate the day-to-day
business workflow.
BizTalk Server 2004/2006 is a powerful process-centric integration platform, as itoffers Web services support, business rules, workflow, business activity
monitoring and is built on .Net Framework.
BizTalk Server Schema
An XML Schema Definition (XSD) language -based description of the structure of one
or more BizTalk Server instance messages.
BizTalk Server Schema File (.xsd)
A file containing the persisted form of a BizTalk schema.
C
CAL
The Client API OLE Automation Layer (CAL) provides an object-oriented programming
interface to the underlying system. The CAL interface is built on the Client Engine, but
it exposes the Client Engine API at a higher level as a set of interrelated OLE
Automation objects.
7/23/2019 BizTalk Integration Reference Guide
32/34
Glossary
Glossary2 8206 3595-000
F
File adapter
An adapter that can read messages from the file system and submit them to the
server, as well as write messages from the server to a file on the file system.
G
Global Assembly Cache (GAC)
It stores assemblies that are shared across all applications on a computer.
O
Orchestration
An executable business process in BizTalk. Orchestration is the process of outliningand implementing a workflow.
Orchestration Designer
A Microsoft Visio-based BizTalk Orchestration Designer is a graphical user-interface
tool used to design and implement business processes.
Orchestration File (*.odx)
All orchestrations created in BizTalk Orchestration Designer have an .odx file
extension.
Orchestration Instance
A running instance of a specific executable business process in BizTalk.
P
Pipeline
A software infrastructure in BizTalk that defines and links one or more processing
stages, running them in prescribed order to complete a specific task. Pipelines divide
processing into stages, abstractions that describe a category of work. They also
determine the sequence in which each category of work is performed. The BizTalk
Pipeline enables to customize the processing of XML documents received or sent via
the various BizTalk adapters.
Pipeline File (*.btp)All pipelines created with BizTalk Pipeline Designer has a .btp extension.
7/23/2019 BizTalk Integration Reference Guide
33/34
Glossary
8206 3595-000 Glossary3
R
Pipeline Component
A component created to integrate applications with BizTalk Server. A COM or .NET-
based component that can be placed into a pipeline to perform some processingaction on the messages going through that pipeline. Custom Pipeline components
extend the behavior of Pipelines to include processing data of virtually any format.
Receive Pipeline
A pipeline in BizTalk that is executed on messages after they have been received by
an adapter and before they are published into the Message Box database.
Receive Port
A logical grouping of similar receive locations in BizTalk.
SSend Pipeline
A pipeline that is executed on messages before they are sent out of the BizTalk
server.
Send Port
The location to which messages are sent or from which messages are received, and
the technology that is used to implement the communication action in BizTalk. The
location is uniquely identified by the name of the port.
SOAP
Simple Object Access Protocol (SOAP) is one of the adapters supplied by BizTalk
Server 2004. SOAP adapter that implements the SOAP protocol to interact with line-of-business applications, publishes orchestrations as Web services, and consumes
external Web services.
W
Web Services
A unit of application logic providing data and services to other applications.
Applications access XML Web services using standard Web protocols and data
formats such as HTTP, XML, and SOAP, independent of how each XML Web service is
implemented.
Workflow
A collection of all the ways in which workitems can move through an organization, the
processing and routing of work from workstep to workstep under program control.
Workflow Domain
A logical group of InfoImage components that generally form a departmental
processing unit within an enterprise, runs a route specific to the processing unit, and
communicates with a single Workflow Domain Controller. Formerly called an
InfoImage Domain.
7/23/2019 BizTalk Integration Reference Guide
34/34
Glossary
Workitem
A container that holds objects or other workitems. You can index, store, and retrieve a
workitem. Workitems include folders and documents. Every workitem is associated
with a data form that holds index data, has a name and a unique internal ID recognized.
X
XML
Extensible Markup Language, a pared-down version of SGML, designed especially for
Web documents, and used by designers to create customized tags that enable the
definition, transmission, validation, and interpretation of data between applications and
between organizations.
XML Schema (.XSD)
(1) An XML schema is a specification that defines the structure of an XML document,
including element names and data types, the form definition and means of data
validation in a form.
(2) A BizTalk Server schema file.
XSL
(1) A World Wide Web Consortium (W3C) standard defining stylesheets for (and in)
XML.
(2) Extensible Stylesheet Language (XSL) is an XML vocabulary that defines the format
of the data in the resulting document. It is used to transform XML data by means of a
style sheet that defines presentation rules.