load ./chilkat.dll
set xml [new_CkXml]
CkXml_put_Tag $xml "soapenv:Envelope"CkXml_AddAttribute $xml "xmlns:soapenv""http://schemas.xmlsoap.org/soap/envelope/"CkXml_AddAttribute $xml "xmlns:spr""http://www.springcm.com/atlas/webservices/v201308/scm/"CkXml_UpdateChildContent $xml "soapenv:Header"""CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:token""string"CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:fileIdentifier""string"CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:Id""string"CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:Name""string"CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:ObjectType""Document"CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:ParentFolderId""string"CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:CreatedBy""string"CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:CreatedDate""dateTime"CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:UpdatedBy""string"CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:UpdatedDate""dateTime"CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:Security""list of enumerated string values"CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:Description""string"CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:Metadata|spr:SCMMetadata|spr:GroupName""string"CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:Metadata|spr:SCMMetadata|spr:FieldName""string"CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:Metadata|spr:SCMMetadata|spr:Value""string"CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:Metadata|spr:SCMMetadata|spr:HighValue""string"CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:Metadata|spr:SCMMetadata|spr:ExcludeFromSearch""true"CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:Metadata|spr:SCMMetadata|spr:SetName""string"CkXml_UpdateChildContentInt $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:Metadata|spr:SCMMetadata|spr:SetNumber"1042CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:Metadata|spr:SCMMetadata|spr:DataType""String"CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:CheckedOutUserId""string"CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:CheckedOutUserName""string"CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:ExpirationDate""dateTime"CkXml_UpdateChildContentInt $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:FileSize"123456CkXml_UpdateChildContentInt $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:PDFFileSize"123456CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:PDFConversion""true"CkXml_UpdateChildContentInt $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:PDFPageCount"1042CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:IsFormDocument""true"CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:CustomFormFields|spr:SCMFormField|spr:Key""string"CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:CustomFormFields|spr:SCMFormField|spr:Value""string"CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:CustomFormFields|spr:SCMFormField|spr:SetName""string"CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:CustomFormFields|spr:SCMFormField|spr:SetNumber""string"CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:MIMEType""string"CkXml_UpdateChildContent $xml "soapenv:Body|spr:DocumentCreateCommit|spr:scmDocument|spr:Version""string"# In a SOAP HTTP request, including the XML declaration (<?xml version="1.0" encoding="UTF-8"?>) in the XML body is generally not required. CkXml_put_EmitXmlDecl $xml 0set soapRequestBody [CkXml_getXml $xml]
set endpoint "https://soapna11.springcm.com/atlas/webservices/v201308/springcmservice.asmx"set soapAction "http://www.springcm.com/atlas/webservices/v201308/scm/DocumentCreateCommit"# For SOAP requests, the standard Content-Type is usually set to "text/xml" or "application/soap+xml"set contentType "text/xml"
set http [new_CkHttp]
CkHttp_ClearHeaders $http
CkHttp_SetRequestHeader $http "Content-Type" $contentType
CkHttp_SetRequestHeader $http "SOAPAction" $soapAction
# resp is a CkHttpResponseset resp [CkHttp_PostXml $http $endpoint $soapRequestBody "utf-8"]
if {[CkHttp_get_LastMethodSuccess $http] == 0} then {
puts [CkHttp_lastErrorText $http]
puts "Failed to send SOAP request."
delete_CkXml $xml
delete_CkHttp $http
exit
}
# Get the XML response body.
set responseXml [new_CkXml]
CkHttpResponse_GetBodyXml $resp $responseXml
set statusCode [CkHttpResponse_get_StatusCode $resp]
puts "response status code: $statusCode"
delete_CkHttpResponse $resp
# If the status code does not indicate succcess, then show the response XML,
# which probably contains error information.if {$statusCode != 200} then {
puts [CkXml_getXml $responseXml]
delete_CkXml $xml
delete_CkHttp $http
delete_CkXml $responseXml
exit
}
puts [CkXml_getXml $responseXml]
# Parse the successful SOAP response XML.# This is a sample of the response XML, but the namespace prefixes will be different.
# We can parse the result using "*" for the namespace prefixes (see below).set Id [CkXml_getChildContent $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:Id"]
set Name [CkXml_getChildContent $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:Name"]
set ObjectType [CkXml_getChildContent $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:ObjectType"]
set ParentFolderId [CkXml_getChildContent $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:ParentFolderId"]
set CreatedBy [CkXml_getChildContent $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:CreatedBy"]
set CreatedDate [CkXml_getChildContent $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:CreatedDate"]
set UpdatedBy [CkXml_getChildContent $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:UpdatedBy"]
set UpdatedDate [CkXml_getChildContent $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:UpdatedDate"]
set Security [CkXml_getChildContent $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:Security"]
set Description [CkXml_getChildContent $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:Description"]
set GroupName [CkXml_getChildContent $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:Metadata|*:SCMMetadata|*:GroupName"]
set FieldName [CkXml_getChildContent $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:Metadata|*:SCMMetadata|*:FieldName"]
set Value [CkXml_getChildContent $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:Metadata|*:SCMMetadata|*:Value"]
set HighValue [CkXml_getChildContent $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:Metadata|*:SCMMetadata|*:HighValue"]
set ExcludeFromSearch [CkXml_getChildContent $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:Metadata|*:SCMMetadata|*:ExcludeFromSearch"]
set SetName [CkXml_getChildContent $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:Metadata|*:SCMMetadata|*:SetName"]
set SetNumber [CkXml_GetChildIntValue $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:Metadata|*:SCMMetadata|*:SetNumber"]
set DataType [CkXml_getChildContent $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:Metadata|*:SCMMetadata|*:DataType"]
set CheckedOutUserId [CkXml_getChildContent $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:CheckedOutUserId"]
set CheckedOutUserName [CkXml_getChildContent $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:CheckedOutUserName"]
set ExpirationDate [CkXml_getChildContent $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:ExpirationDate"]
set FileSize [CkXml_GetChildIntValue $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:FileSize"]
set PDFFileSize [CkXml_GetChildIntValue $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:PDFFileSize"]
set PDFConversion [CkXml_getChildContent $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:PDFConversion"]
set PDFPageCount [CkXml_GetChildIntValue $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:PDFPageCount"]
set IsFormDocument [CkXml_getChildContent $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:IsFormDocument"]
set Key [CkXml_getChildContent $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:CustomFormFields|*:SCMFormField|*:Key"]
set Value [CkXml_getChildContent $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:CustomFormFields|*:SCMFormField|*:Value"]
set SetName [CkXml_getChildContent $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:CustomFormFields|*:SCMFormField|*:SetName"]
set strSetNumber [CkXml_getChildContent $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:CustomFormFields|*:SCMFormField|*:SetNumber"]
set MIMEType [CkXml_getChildContent $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:MIMEType"]
set Version [CkXml_getChildContent $responseXml "*:Body|*:DocumentCreateCommitResponse|*:DocumentCreateCommitResult|*:Version"]
delete_CkXml $xml
delete_CkHttp $http
delete_CkXml $responseXml