Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

TSQL संग्रहीत कार्यविधि से SOAP webservice को कॉल करना

अतीत में मैंने निम्नलिखित विधि का उपयोग किया है, यह इन दिनों सबसे अच्छी विधि नहीं हो सकती है लेकिन इसने मेरे लिए सफलतापूर्वक काम किया है:

DECLARE @obj int,
        @url VarChar(MAX),
        @response VarChar(MAX),
        @requestHeader VarChar(MAX),
        @requestBody VarChar(MAX)

SET @url = 'http://....'

SET @requestBody = '<soapenv:Envelope>
                     <soapenv:Header/>
                      <soapenv:Body>
                       ...
                      </soapenv:Body>
                     </soapenv:Envelope>'

EXEC sp_OACreate 'MSXML2.ServerXMLHttp', @obj OUT
EXEC sp_OAMethod @obj, 'Open', NULL, 'GET', @url, false
EXEC sp_OAMethod @obj, 'setRequestHeader', NULL, 'Content-Type', 'text/xml;charset=UTF-8'
EXEC sp_OAMethod @obj, 'setRequestHeader', NULL, 'SOAPAction', 'POST'
EXEC sp_OAMethod @obj, 'setRequestHeader', NULL, 'Content-Length', LEN(@requestBody)
EXEC sp_OAMethod @obj, 'send', NULL, @requestBody
EXEC sp_OAGetProperty @obj, 'responseText', @response OUT


SELECT @response [RESPONSE]

EXEC sp_OADestroy @obj

मैंने इसका उपयोग एक webservice को कॉल करने के लिए किया है जो एक रिपोर्ट तैयार करता है और इसे विधि के भीतर ईमेल करता है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. वितरित प्रश्नों के लिए OLE DB प्रदाता 'Microsoft.Jet.OLEDB.4.0' का उपयोग नहीं किया जा सकता है

  2. SQL सर्वर 2008 में .csv फ़ाइल में क्वेरी परिणाम निर्यात करें

  3. SQL सर्वर - UTF-8 एन्कोडिंग के साथ XML प्रकार के कॉलम को परिभाषित करना

  4. SQL दृश्य में कुल योग चल रहा है

  5. विशिष्ट पहचानकर्ता द्वारा पूछे गए परिणामों की पंक्तियों का मेल?