123
返回列表 发新帖
楼主: ccwlm741212

那位做过访问WebService的接口问题

[复制链接]
论坛徽章:
3
2010新春纪念徽章
日期:2010-03-01 11:20:51ITPUB十周年纪念徽章
日期:2011-11-01 16:24:51
21#
发表于 2012-6-28 12:48 | 只看该作者
PB调用Web不复杂吧

使用道具 举报

回复
求职 : 系统分析师
论坛徽章:
691
博彩大赢家
日期:2014-07-14 11:41:47博彩大赢家
日期:2015-09-24 12:11:05菠菜神灯
日期:2016-04-18 13:59:20NBA季后赛大富翁
日期:2016-04-27 11:51:10NBA季后赛大富翁
日期:2016-06-24 10:29:08芝加哥公牛
日期:2015-06-25 09:32:08芝加哥公牛
日期:2016-04-18 14:22:33芝加哥公牛
日期:2016-10-27 14:28:54芝加哥公牛
日期:2016-12-27 14:16:24芝加哥公牛
日期:2017-04-18 17:07:58
22#
 楼主| 发表于 2012-7-2 19:40 | 只看该作者
mengxing8100 发表于 2012-6-28 12:48
PB调用Web不复杂吧

主要是没搞过,兄弟有这方面的经验可以交流一下

使用道具 举报

回复
论坛徽章:
28
ITPUB新首页上线纪念徽章
日期:2007-10-20 08:38:442014年新春福章
日期:2014-02-23 23:08:492014年世界杯参赛球队: 葡萄牙
日期:2014-08-05 11:31:14马上有对象
日期:2014-11-21 22:36:46暖羊羊
日期:2015-03-04 14:50:372015年新春福章
日期:2015-03-06 11:57:31秀才
日期:2016-03-24 09:10:24秀才
日期:2016-03-24 09:20:52秀才
日期:2016-04-21 14:08:53秀才
日期:2016-06-23 14:15:06
23#
发表于 2012-7-2 22:10 | 只看该作者
下面是我调用他们的下载疾病目录  过程

int mess
mess = messagebox('提示','确定要重新下载数据吗?',question!,yesno!,2)
if mess = 2 then  return
st_waiting.visible = true


//////////////////////////
//pb 调用 Web service 步骤


// 第一步  创建对象 , 连接 Web service

long ll_ret , ll_row
string str_proxy_name = 'qqncmsservicehttpport'
string err

soapconnection lsc_conn
qqncmsservicehttpport  lproxy_obj

try
lsc_conn = create soapconnection
catch (RUNtimeerror e11)
err = '创建soapconnection 出现错误,错误消息是: ' + e11.getMessage()
messagebox('',err)
st_waiting.visible = false
return
end try

try
lsc_conn.SetOptions("SoapLog=~"soaplog.txt~"")
catch (RUNtimeerror e12)
err = 'soapconnection 调用函数SetOptions 出现错误,错误消息是: ' + e12.getMessage()
st_waiting.visible = false
messagebox('',err)
return
end try
  
try  
ll_ret = lsc_conn.createInstance(lproxy_obj,str_proxy_name,wsdl)
catch (RUNtimeerror e13)
err = 'soapconnection 创建实例(函数createInstance)失败,错误消息是: ' + e13.getMessage()
messagebox('',err)
st_waiting.visible = false
return
end try
if ll_ret <> 0 then
err =  '创建实例失败,请检查代理对象是否正确,错误代码'
messagebox('',err)
st_waiting.visible = false
return
end if


//第二步  调用 Ws的方法 , 因为方法不一样,所有函数参数也不一样


string  WebService_Return_Values
try
WebService_Return_Values  =  lproxy_obj.getDiseaseCatalog (gs_hospitalcode )
catch (SoapException e14)
messagebox('调用方法','调用web service 失败:' + e14.getMessage())
st_waiting.visible = false
    return
catch (PBXRuntimeError e15)
messagebox('调用方法','调用 函数出现 运行错误 错误!')
st_waiting.visible = false
return
catch (RUNtimeerror e16)
messagebox('调用方法','调用 函数出现  不可知  错误!')
st_waiting.visible = false
return
end try


//longlong  aa
//aa = len(WebService_Return_Values)
//messagebox('',string(aa))
//messagebox('',mid(WebService_Return_Values , 6000 , 10000))
  
// 第三步  判断 调用方法是否 返回了正确的值  (错误的结果)

//messagebox('',WebService_Return_Values )
string re
re = f_nh_get_true_or_false(WebService_Return_Values)
if re <> '' then    // 表示返回了错误的结果, 并显示错误提示!
messagebox('',re )
st_waiting.visible = false
return
end if


// 第四部  把返回的值 通过 PBDOM , 转化成 XML 文件

PBDOM_BUILDER pbdom_bldr
PBDOM_Document pbdom_doc
PBDOM_Object pbdom_obj_array[]
PBDOM_Element pbdom_elem

Try

pbdom_bldr = Create PBDOM_Builder
pbdom_doc = pbdom_bldr.BuildFromString (WebService_Return_Values)
pbdom_doc.SaveDocument ("pbdom_doc_disease.xml")
Destroy pbdom_bldr

CATCH (PBDOM_Exception except)
MessageBox ("Exception Occurred", '创建PBDOM_Builder失败:' + except.Text)
st_waiting.visible = false
return
END TRY

// 第五部 把xml转化成 需要的 数据, 如,可以导入数据窗口。

//long ll_retrieve
//
//dw_2.reset()
//ll_row = dw_2.ImportFile(XML!,"pbdom_doc_disease.xml")
//if ll_retrieve < 0 then
// messagebox('',string(ll_retrieve))
//end if

destroy lsc_conn




dw_2.ImportFile(XML!,"pbdom_doc_disease.xml")


if dw_2.update() = 1 then
commit;
    messagebox('','下载成功!')
dw_4.retrieve()
else
rollback;
messagebox('','下载失败!')
end if
//============调用web server方法======================
long ll_rv,ll_result

soapconnection i_conn
n_webservicesoap iws_proxy_obj

i_conn = create soapconnection //创建连接
ll_result = i_conn.createinstance(iws_proxy_obj,"n_webservicesoap") //创建实例
try
        sle_2.text= iws_proxy_obj.gf_decode_md5(sle_1.text)  //调用web service方法
catch (soapexception e)
        messagebox('提示:','连接服务器失败!')
end try
       
destroy iws_proxy_obj  //webservices 组件
destroy i_conn

使用道具 举报

回复
求职 : 系统分析师
论坛徽章:
691
博彩大赢家
日期:2014-07-14 11:41:47博彩大赢家
日期:2015-09-24 12:11:05菠菜神灯
日期:2016-04-18 13:59:20NBA季后赛大富翁
日期:2016-04-27 11:51:10NBA季后赛大富翁
日期:2016-06-24 10:29:08芝加哥公牛
日期:2015-06-25 09:32:08芝加哥公牛
日期:2016-04-18 14:22:33芝加哥公牛
日期:2016-10-27 14:28:54芝加哥公牛
日期:2016-12-27 14:16:24芝加哥公牛
日期:2017-04-18 17:07:58
24#
 楼主| 发表于 2012-7-3 07:53 | 只看该作者
ljm8093 发表于 2012-7-2 22:10
下面是我调用他们的下载疾病目录  过程

int mess

这个例子 我也下过重点研究了

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表