CREATE PROCEDURE InsertConnectedServicesFromXML(
    @sXML NTEXT
)
AS
begin transaction
    DECLARE @iDoc INT
    EXEC sp_xml_preparedocument @iDoc OUTPUT, @sXML
                       
    INSERT INTO dbo.ConnectedServices (ServiceImplementationClassName, ServiceType, ServiceContract, HostNameIdentifier,ClientConfiguration,DefaultAddressForAdminUserDisplay,BindingType,ConnectedServiceID,ServiceFriendlyName,HostedServiceID,CurrentCSUserKey,ConnectedConfigServiceID,VHostID,OnlineMethod,OnlineParms,LoadBalanceType,UseHttps,ServiceUserKey,ApplyUserCredentials)
    SELECT ServiceImplementationClassName, ServiceType, ServiceContract, HostNameIdentifier,ClientConfiguration,DefaultAddressForAdminUserDisplay,BindingType,ConnectedServiceID,ServiceFriendlyName,HostedServiceID,CurrentCSUserKey,ConnectedConfigServiceID,VHostID,OnlineMethod,OnlineParms,LoadBalanceType,UseHttps,ServiceUserKey,ApplyUserCredentials
    FROM OPENXML(@iDoc,'/ConnectedServices/dbo.ConnectedServices',2)
    WITH (	ServiceImplementationClassName varchar(200) 'ServiceImplementationClassName',
			ServiceType int 'ServiceType',  
			ServiceContract varchar(200) 'ServiceContract',
			HostNameIdentifier varchar(200) 'HostNameIdentifier',
			ClientConfiguration varchar(200) 'ClientConfiguration',
			DefaultAddressForAdminUserDisplay varchar(200) 'DefaultAddressForAdminUserDisplay',	
			BindingType varchar(50) 'BindingType',		
			ConnectedServiceID int 'ConnectedServiceID',
			ServiceFriendlyName varchar(200) 'ServiceFriendlyName', 
			HostedServiceID int 'HostedServiceID',
			CurrentCSUserKey int 'CurrentCSUserKey',
			ConnectedConfigServiceID int 'ConnectedConfigServiceID',
			VHostID int 'VHostID',
			OnlineMethod varchar(200) 'OnlineMethod',
			OnlineParms varchar(200) 'OnlineParms',
			LoadBalanceType int 'LoadBalanceType',
			UseHttps int 'UseHttps',
			ServiceUserKey int 'ServiceUserKey',
			ApplyUserCredentials int 'ApplyUserCredentials'
			);
	commit;
    EXEC sp_xml_removedocument @iDoc;
RETURN;


