Build a Custom BizTalk 2004 Pipeline Component [InfoPath 2003 SDK Documentation]

Applies to:

Microsoft Office InfoPath 2003 Service Pack 1

The Microsoft Office InfoPath 2003 Software Development Kit (SDK) custom BizTalk 2004 pipeline component code library contains a code example that is necessary to build a custom Microsoft BizTalk Server 2004 Human Workflow Services (HWS) pipeline component. This component allows the BizTalk server to process InfoPath forms that use custom workflow actions.

Prerequisites

  • An understanding of the Microsoft Office InfoPath 2003 editing environment
  • An understanding of the Microsoft BizTalk Server 2004 editing environment
  • An understanding of the Microsoft Visual Studio .NET IDE
  • A conceptual understanding of Human Workflow Services (HWS)

Build the Custom Pipeline Component

The custom BizTalk pipeline component included in this SDK demonstrates how to create a custom pipeline for use with InfoPath form processing on a BizTalk 2004 server.

Note  Microsoft Visual Studio .NET 2003 and Microsoft BizTalk Server 2004 are required to build the custom pipeline component.

  1. Open a Visual Studio .NET 2003 Command Prompt window.

  2. Type in the following command:

    sn -k <strong key location>\myKey.snk
    
  3. Close the command prompt window.

To create the custom Pipeline component, follow these steps:

  1. Create a new C# Class Library project in Visual Studio .NET 2003, and name it InfoPathPipelineComponent.

  2. Delete the Class1.cs file from the project.

  3. Add the HWSInfoPathPipelineComponent.cs file to the project. This file is located, by default, in the <drive>:\Program Files\Microsoft Office 2003 Developer Resources\Microsoft Office InfoPath 2003 SDK\CodeLibrary\ folder.

  4. Add a reference to <BizTalkInstallDir>\Microsoft.BizTalk.Pipeline.dll.

  5. From the View menu, click Solution Explorer.

  6. In the Solution Explorer, double-click AssemblyInfo.cs.

  7. In the assembly: AssemblyKeyFile entry, type the location of the strong key you created earlier.

    Your entry should look similar to this:

    [assembly: AssemblyKeyFile(@"<strong key location>\myKey.snk")]
    
  8. From the Build menu, click Build Solution.

  9. Copy the InfoPathComponent.dll file from the \bin\debug folder of the project to the <BizTalkInstallDir>\Pipeline Components\ folder.

Build the Pipeline Assembly

To build the Pipeline Assembly, follow these steps:

  1. Create a new Empty BizTalk Server Project named InfoPathPipelineAssembly.
  2. From the View menu, click Solution Explorer.
  3. From the Project menu, click Add New Item.
  4. Select Send Pipeline.
  5. Click Open.
  6. In the Solution Explorer, double-click SendPipeline1.btp.
  7. From the Tools menu, click Add/Remove Toolbox Items.
  8. In the Customize Toolbox dialog box, click the BizTalk Pipeline Components tab.
  9. Click Browse.
  10. In the File name box of the Open dialog box, type <BizTalkInstallDir>\Pipeline Components\InfoPathPipelineComponent.dll
  11. Click OK.
  12. From the Customize Toolbox dialog box, on the BizTalk Pipeline Components tab, in the Name column, select the box next to BizTalk 2004 HWS – InfoPath 2003 SP1 Integration Component.
  13. Click OK.
  14. Add BizTalk 2004 HWS – InfoPath 2003 SP1 Integration Component to the first stage (Pre-Assemble) of the Pipeline Component.
  15. From the Project menu, click Properties.
  16. Under Common Properties, click Assembly.
  17. In the right pane, under Strong name, enter the location and name of the Assembly Key File.
  18. Click OK.
  19. From the Build menu, click Build Solution.
  20. In the Solution Explorer, right-click on the InfoPathPipelineAssembly project, and click Deploy.
  21. Configure your send ports to use this Pipeline Assembly as the transport.

For a complete walkthrough of designing a BizTalk HWS workflow for use with InfoPath forms, including the custom BizTalk pipeline component, see the hands-on lab, Lab 12: Workflow Support in InfoPath 2003, available from the Microsoft Office Developer Center on the Microsoft Developer Network (MSDN).