我正在编写一个从Web服务获取数据的过程。 Web服务以XML字符串形式提供数据。但是,它正在截断从网站上提取的数据。它在SSMS中执行时运行完美。它在批处理文件中运行时将数据截断为2048个字符,并在使用SS作业运行时将数据截断为512个字符。
这些值不能是随机的。某处必须有设置,但我找不到它。有什么想法吗?
以下是代码:
DECLARE
@url nvarchar(max),
@win integer,
@hr integer ,
@Date date,
@SearchDate nvarchar(50)
Set @Date = GETDATE()
set @SearchDate = CAST(@Date as nvarchar(50))
set @SearchDate = REPLACE(@SearchDate,'-','')
CREATE TABLE TextData([SEMO_Data] [nvarchar](max) NULL)
Select @url = 'http://semorep.sem-o.com/DataCollection/DataSets.asmx/queryDatasetXML?DatasetName=SET_CAL&User=primplims@gmail.com&Password=testsemo&FromDate=20130103&ToDate=20130111&P1=Energy&P2=Statements&P3=Initial&P4=&P5='
EXEC @hr=sp_OACreate 'WinHttp.WinHttpRequest.5.1',@win OUT
IF @hr <> 0 EXEC sp_OAGetErrorInfo @win
EXEC @hr=sp_OAMethod @win, 'Open',NULL,'GET',@url,'false'
IF @hr <> 0 EXEC sp_OAGetErrorInfo @win
EXEC @hr=sp_OAMethod @win,'Send'
IF @hr <> 0 EXEC sp_OAGetErrorInfo @win
INSERT XMLParsing.dbo.TextData(SEMO_Data)
EXEC @hr=sp_OAGetProperty @win,'ResponseText'
IF @hr <> 0 EXEC sp_OAGetErrorInfo @win
EXEC @hr=sp_OADestroy @win
IF @hr <> 0 EXEC sp_OAGetErrorInfo @win
这是我上一期的问题。我希望如果我发布一个新问题会更容易。