Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles / database / SQL-Server

Calling a Web Service from a SQL Integration Services package

4.54/5 (11 votes)
7 Apr 2008CPOL1 min read 1  
How to call a Web Service from a SQL Integration Services package.

Introduction

The SSIS framework provides a Web Service task which executes a Web Service method. You can use the Web Service task for the following purposes:

  • Writing to a variable the values that a Web Service method returns.
  • Writing to a file the values that a Web Service method returns.

Image1.jpg

This article defines a step by step approach to using a Web Service call in SQL Integration Services.

First, create a web service project.

image2.jpg

Figure 2 - Create a Web Service

Now, expose a method call in the Web Service:

C#
public class SSISService : System.Web.Services.WebService
{
    [WebMethod]
    public string HelloMoon()
    {
        return "Hello Moon";
    }
    [WebMethod]
    public int Multiply(int nParam1, int nParam2)
    {
        return nParam1 * nParam2;
    }
}

Create an SSIS package:

image3.jpg

Figure 3 - Create an SSIS Package

Add a web service task:

image4.jpg

Figure 4 - SSIS Toolbox

image5.jpg

Figure 5 - Web Service Task

Next, modify the Web Service task:

image6.jpg

Figure 6 - Edit Web Service Task

image7.jpg

Figure 7 - Web Service Task Editor

Now, define the HTTP connection:

image8.jpg

Figure 8 - HTTP Connection Manager Editor

The next step is to define the WSDL file:

image9.jpg

Figure 9 - Web Service Task Edit (Definition of the WSDL file)

Define the Web Service Task inputs:

image10.jpg

Figure 10 - Web Service Task Editor (Definition of web service input properties)

Now, define the Web Service output. The output of the Web Service can be written to variables or to an output file. This sample outputs the results from the Web Service to a file system file that is defined using the File Connection Manager Editor (Figure 11).

image11.jpg

Figure 11 - Web Service Task Editor (Definition of Web Service output properties)

image12.jpg

Figure 12 - File Connection Manger

Results

The following is the encoded output from the Web Service, stored in a test.txt file:

XML
<?xml version="1.0" encoding="utf-16"?>
<int>200</int>

References

  1. Web Service Task, SQL Server 2005 Books Online

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)