?
Solved

Submitting an InfoPath 2007 repeating table to a sql 2005 web service / end point

Posted on 2008-10-09
3
Medium Priority
?
1,706 Views
Last Modified: 2011-04-14
I'm working on a poc using MOSS 2007, InfoPath 2007 and SQL 2005.   The need is an InfoPath web form retrieving and submitting data using SQL 2005 web service.  Web service in SQL is first choice in our environment to avoid "double hop" issue and keep development contained to exisitng tools or layers as possible.  Everything works fine except that when the InfoPath form is submitted only the first row of the repeating table is updated.  From the research I've done it seems that an answer has something to do with datasets or ADO.datasets but I don't think that will work with SQL 2005 only.  Thanks in advance!
CREATE ENDPOINT [OcpEp] 
	AUTHORIZATION [domain\username]
	STATE=STARTED
	AS HTTP (
		PATH=N'/SqlWs', 
		PORTS = (CLEAR), 
		AUTHENTICATION = (NTLM), 
		SITE=N'*', 
		CLEAR_PORT = 80, 
		COMPRESSION=DISABLED
	)
	FOR SOAP (
				WEBMETHOD 'OrgDescriptionsUpdate'( 
					NAME=N'[BI_OCP_D].[dbo].[prOrgDescriptionsUpdate]',
					SCHEMA=STANDARD, 
					format = ROWSETS_ONLY
				), 
				WEBMETHOD 'OrgDescriptionsSelect'( 
					NAME=N'[BI_OCP_D].[dbo].[prOrgDescriptionsSelect]',
					SCHEMA=STANDARD, 
					format = ROWSETS_ONLY
				), 
				BATCHES=DISABLED, 
				WSDL=DEFAULT, 
				SESSIONS=ENABLED, 
				SESSION_TIMEOUT=60, 
				DATABASE=N'BI_OCP_D', 
				NAMESPACE=N'http://servername/SqlWs/BI_OCP_D', 
				SCHEMA=STANDARD, 
				CHARACTER_SET=XML
	)
 
 
 
CREATE PROCEDURE [dbo].[prOrgDescriptionsUpdate] 
	@OrgDescriptionId int, 
	@OrgID varchar(10), 
	@OrgDescription varchar(100), 
	@UpdateBy varchar(10) = 'domain\username'
AS
BEGIN
	-- SET NOCOUNT ON added to prevent extra result sets from
	-- interfering with SELECT statements.
	SET NOCOUNT ON;
 
	IF @OrgDescriptionId > 0
		UPDATE ORG_DESCRIPTIONS SET 
				ORG_ID = @OrgID, 
				ORG_DESCRIPTION = @OrgDescription, 
				UPDATE_DATETIME = getdate(), 
				UPDATE_BY = @UpdateBy
		WHERE 
				ORG_DESCRIPTIONS_ID = @OrgDescriptionId
	ELSE
	INSERT INTO ORG_DESCRIPTIONS (ORG_ID, ORG_DESCRIPTION, CREATED_DATETIME, CREATED_BY) 
				VALUES (@OrgID, @OrgDescription, getdate(), @UpdateBy)
END
 
 
 
CREATE PROCEDURE [dbo].[prOrgDescriptionsSelect]
AS
SELECT   ORG_DESCRIPTIONS_ID, ORG_ID, ORG_DESCRIPTION, CREATED_DATETIME, CREATED_BY
FROM     ORG_DESCRIPTIONS

Open in new window

0
Comment
Question by:KPEEEOBI
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
3 Comments
 
LVL 28

Expert Comment

by:clayfox
ID: 22684036
You might want to check out qdabra's web service suite. - Database Accelerator.

It can do everything you need with one install or you can use it as a sample.

It has the webservice to submit and query data with multiple tables via web services.
0
 

Accepted Solution

by:
KPEEEOBI earned 0 total points
ID: 22898787
The answer was to Use XML from Infopath to Web Service to SQL. In SQL Procedure OUTPUT using FORXML and when updating use XML as input parameter.
0
 

Expert Comment

by:ADSBIT
ID: 26937205
Could someone clarify, or elaborate on, the soltuion please? I am having a simliar issue and am interested in  this solution, however I'm not sure how to go about it.
0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Note:  There are two main ways to deploy InfoPath forms:  Server-side and directly through the SharePoint site.  Deploying a server-side InfoPath form means the form is approved by the Administrator, thus allowing greater functionality in the form. …
We had a requirement to extract data from a SharePoint 2010 Customer List into a CSV file and then place the CSV file into a directory on the network so that the file could be consumed by an AS400 system. I will share in Part 1 how to Extract the Da…
This is my first video review of Microsoft Bookings, I will be doing a part two with a bit more information, but wanted to get this out to you folks.
Sometimes it takes a new vantage point, apart from our everyday security practices, to truly see our Active Directory (AD) vulnerabilities. We get used to implementing the same techniques and checking the same areas for a breach. This pattern can re…

762 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question