zoukankan      html  css  js  c++  java
  • SQL执行WebService

    写了一个钉钉发送消息的类, 要发送用友等审核单据信息, 

    模式: 钉钉发消息功能在webservice中, 用友消息列表中有新消息时,采用触发器执行webservice. 

    在测试中 ,功能正常 ,但将在汉字发送到手机端后,显示乱码. 

    其实这种模式不合理, 这个乱码问题也不解决了.下面是触发器中的代码:

    USE [UFDATA_001_2016]
    GO
    /****** Object:  StoredProcedure [dbo].[richen_message_send]    Script Date: 11/30/2018 08:03:51 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    -- =============================================
    -- Author:        <李孝徽>
    -- Create date: <2018-11-05>
    -- Description:    <单据在提交审批时,调用webservice向钉钉发送通知消息
    --               在传入参数时,需要用户ID和消息内容 ,最后没使用原因:读数据库发出去消息到钉钉时中文乱码.    >
    -- =============================================
    ALTER PROCEDURE [dbo].[richen_message_send]
        @userid varchar(30),   
        @content varchar(200)
    AS
    
    BEGIN
        SET NOCOUNT ON;
    
        Declare @ServiceUrl nvarchar(1000) 
        Declare @UrlAddress nvarchar(100)
     
        --WebService地址:以http开头,结尾带斜杠
        set @UrlAddress = 'http://192.168.0.7/richen_ws/dd_ws.asmx/'
     
        DECLARE @FunName nvarchar(30)--WebService中调用的方法名
        SET @FunName = 'Send_DD'   
     
        --以下参数对应WebService中参数的[参数名]
        declare @P1  nvarchar(30),@P2  nvarchar(30)
        SET @P1='userid'
        SET @P2='content'
      
        --参数赋值
        DECLARE @P1_Value nvarchar(30),@P2_Value  nvarchar(200)
        set @P1_Value=@userid
        set @P2_Value=@content
        SET @ServiceUrl = @UrlAddress + @FunName  + '?' + @P1 +'='+ @P1_Value +'&' + @P2 + '=' +@P2_Value 
     
        --select  @serviceurl --调试时查看拼接结果
     
        ----访问地址执行获取结果
        Declare @Object as Int
        Declare @ResponseText as nvarchar(4000)                   
        Exec sp_OACreate 'MSXML2.XMLHTTP', @Object OUT;
        Exec sp_OAMethod @Object, 'open', NULL, 'get',@ServiceUrl,'false'
        Exec sp_OAMethod @Object, 'send'
        Exec sp_OAMethod @Object, 'responseText', @ResponseText OUTPUT
             
        --Select @ResponseText     --调试时查看返回参数 
        Exec sp_OADestroy @Object
    
    END
     
  • 相关阅读:
    CSS笔记
    EasyUI笔记
    EasyUI treegrid 获取编辑状态中某字段的值 [getEditor方法获取不到editor]
    2019.10.12解题报告
    %lld 和 %I64d
    关于kmp算法
    洛谷p2370yyy2015c01的U盘题解
    About me & 友链
    关于Tarjan
    洛谷p3398仓鼠找suger题解
  • 原文地址:https://www.cnblogs.com/snowguest/p/10583393.html
Copyright © 2011-2022 走看看