主题:向COM组件传递数据时出现的问题
哪位朋友可以帮我这个忙呀?
是这样的,我在写一个向COM组件(该组件是用PB写的)传递数据时可是提示的是"OLE 错误码 ox80020005:TYPE mismatch"(这个错误的意思应该是数据类型不匹配)
函数定义如下:
String uploadDiagnosisAndTreatData(String[] hosinfo, String[] data1, String[] data2, String[] data3, String[] data4, String[] data5, String[] data6, String[] data7, String[] data8, double[] data9, int[] data10, double[] data11)
hosinfo 数组长度为7,其中最后5个为扩展用
hosinfo[1]:(必填)长度为10位,医疗机构准入账号
hosinfo[2]:(必填)长度为20位,医疗机构准入密码
hosinfo[3]:扩展用
hosinfo[4]:扩展用
hosinfo[5]:扩展用
hosinfo[6]:扩展用
hosinfo[7]:扩展用
data1 数组长度为8,其中最后5个为扩展用
data1[1]: (必填)长度不超过50位,住院/门诊登记流水号,组成规则见“5.5参数说明”
data1[2]: (必填)长度不超过2位,数据条数
data1[3]: (必填)长度为1位,就诊类型;参考附件“就诊类型代码”
data1[4]: 扩展用
data1[5]: 扩展用
data1[6]: 扩展用
data1[7]: 扩展用
data1[8]: 扩展用
data2 (必填)长度不超过50位,住院/门诊处方流水号;
data3 (必填)长度为1位,项目类别(数据与data2对应);参考附件“服务价格项目类别代码”
data4 (必填)长度不超过50位,项目名称(数据与data2对应);参考《全国医疗服务价格项目规范》
data5 (必填)长度不超过15位,项目编码(数据与data2对应);参考《全国医疗服务价格项目规范》
data6 (必填)长度不超过40位,计价单位(数据与data2对应);参考《全国医疗服务价格项目规范》
data7 (必填)长度不超过8位,医生姓名(数据与data2对应)
data8 (必填)长度为10位,开单时间”YYYY-MM-DD”(数据与data2对应)
data9 (必填)精度为2位,单价(数据与data2对应)
data10 (必填)精度为2位,数量(数据与data2对应)
data11 (必填)精度为2位,金额(数据与data2对应)
我写的部分如下:
Public myhyjk && 定义合医接口全局变量(用于引用对象)
Local lc_return && 返回字符串
Local lc_hosinfo[7] As String
Local lc_data1[8 ] As String && 转诊登记信息
lc_hosinfo(1) ="R50101H01"
lc_hosinfo(2) ="000"
lc_hosinfo(3) = ""
lc_hosinfo(4) = ""
lc_hosinfo(5) = ""
lc_hosinfo(6) = ""
lc_hosinfo(7) = ""
lc_data1(1) = "R50101H010002384220100706004053755756"
lc_data1(2) = "1"
lc_data1(3) = "2"
lc_data1(4) = ""
lc_data1(5) = ""
lc_data1(6) = ""
lc_data1(7) = ""
lc_data1(8) = ""
LOCAL lc_data2[1] As String
LOCAL lc_data3[1] As String
LOCAL lc_data4[1] As String
LOCAL lc_data5[1] As String
LOCAL lc_data6[1] As String
LOCAL lc_data7[1] As String
LOCAL lc_data8[1] As String
LOCAL lc_data9[1] As Double
LOCAL lc_data10[1] As Int
LOCAL lc_data11[1] As Double
lc_data2(1)="R50101H010002384220100706004053755756"
lc_data3(1)="H"
lc_data4(1)="尿液分析"
lc_data5(1)="250102035"
lc_data6(1)="次"
lc_data7(1)="何艳"
lc_data8(1)="2010-06-08"
lc_data9(1)=12.86
lc_data10(1)=8
lc_data11(1)=102.88
lc_return=myhyjk.uploadDiagnosisAndTreatData(@lc_hosinfo,@lc_data1,@lc_data2,@lc_data3,@lc_data4,@lc_data5,@lc_data6,@lc_data7,@lc_data8,@lc_data9,@lc_data10,@lc_data11)
主要应出在后三个数据上.在传递时是否要进行数据类型转换?怎样转换请? 哪位朋友可以帮帮我.多谢!
是这样的,我在写一个向COM组件(该组件是用PB写的)传递数据时可是提示的是"OLE 错误码 ox80020005:TYPE mismatch"(这个错误的意思应该是数据类型不匹配)
函数定义如下:
String uploadDiagnosisAndTreatData(String[] hosinfo, String[] data1, String[] data2, String[] data3, String[] data4, String[] data5, String[] data6, String[] data7, String[] data8, double[] data9, int[] data10, double[] data11)
hosinfo 数组长度为7,其中最后5个为扩展用
hosinfo[1]:(必填)长度为10位,医疗机构准入账号
hosinfo[2]:(必填)长度为20位,医疗机构准入密码
hosinfo[3]:扩展用
hosinfo[4]:扩展用
hosinfo[5]:扩展用
hosinfo[6]:扩展用
hosinfo[7]:扩展用
data1 数组长度为8,其中最后5个为扩展用
data1[1]: (必填)长度不超过50位,住院/门诊登记流水号,组成规则见“5.5参数说明”
data1[2]: (必填)长度不超过2位,数据条数
data1[3]: (必填)长度为1位,就诊类型;参考附件“就诊类型代码”
data1[4]: 扩展用
data1[5]: 扩展用
data1[6]: 扩展用
data1[7]: 扩展用
data1[8]: 扩展用
data2 (必填)长度不超过50位,住院/门诊处方流水号;
data3 (必填)长度为1位,项目类别(数据与data2对应);参考附件“服务价格项目类别代码”
data4 (必填)长度不超过50位,项目名称(数据与data2对应);参考《全国医疗服务价格项目规范》
data5 (必填)长度不超过15位,项目编码(数据与data2对应);参考《全国医疗服务价格项目规范》
data6 (必填)长度不超过40位,计价单位(数据与data2对应);参考《全国医疗服务价格项目规范》
data7 (必填)长度不超过8位,医生姓名(数据与data2对应)
data8 (必填)长度为10位,开单时间”YYYY-MM-DD”(数据与data2对应)
data9 (必填)精度为2位,单价(数据与data2对应)
data10 (必填)精度为2位,数量(数据与data2对应)
data11 (必填)精度为2位,金额(数据与data2对应)
我写的部分如下:
Public myhyjk && 定义合医接口全局变量(用于引用对象)
Local lc_return && 返回字符串
Local lc_hosinfo[7] As String
Local lc_data1[8 ] As String && 转诊登记信息
lc_hosinfo(1) ="R50101H01"
lc_hosinfo(2) ="000"
lc_hosinfo(3) = ""
lc_hosinfo(4) = ""
lc_hosinfo(5) = ""
lc_hosinfo(6) = ""
lc_hosinfo(7) = ""
lc_data1(1) = "R50101H010002384220100706004053755756"
lc_data1(2) = "1"
lc_data1(3) = "2"
lc_data1(4) = ""
lc_data1(5) = ""
lc_data1(6) = ""
lc_data1(7) = ""
lc_data1(8) = ""
LOCAL lc_data2[1] As String
LOCAL lc_data3[1] As String
LOCAL lc_data4[1] As String
LOCAL lc_data5[1] As String
LOCAL lc_data6[1] As String
LOCAL lc_data7[1] As String
LOCAL lc_data8[1] As String
LOCAL lc_data9[1] As Double
LOCAL lc_data10[1] As Int
LOCAL lc_data11[1] As Double
lc_data2(1)="R50101H010002384220100706004053755756"
lc_data3(1)="H"
lc_data4(1)="尿液分析"
lc_data5(1)="250102035"
lc_data6(1)="次"
lc_data7(1)="何艳"
lc_data8(1)="2010-06-08"
lc_data9(1)=12.86
lc_data10(1)=8
lc_data11(1)=102.88
lc_return=myhyjk.uploadDiagnosisAndTreatData(@lc_hosinfo,@lc_data1,@lc_data2,@lc_data3,@lc_data4,@lc_data5,@lc_data6,@lc_data7,@lc_data8,@lc_data9,@lc_data10,@lc_data11)
主要应出在后三个数据上.在传递时是否要进行数据类型转换?怎样转换请? 哪位朋友可以帮帮我.多谢!