深圳全飞鸿

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 827|回复: 2
打印 上一主题 下一主题

关于BindDataEx接口函数

[复制链接]

104

主题

171

帖子

1177

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1177
跳转到指定楼层
楼主
发表于 2019-6-1 10:53:32 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
关于BindDataEx接口函数

如果导入的接口函数列表中找不到BindDataEx函数,说明MES接口版本较低,联系我们升级!


函数形态如下:


具体介绍,参见文档:



demo下载:
WindowsFormsApplication5.zip (74.47 KB, 下载次数: 1194)


回复

使用道具 举报

800

主题

1379

帖子

7704

积分

版主

Rank: 7Rank: 7Rank: 7

积分
7704
沙发
发表于 2019-6-1 11:43:16 | 只看该作者
本帖最后由 zhgc 于 2019-6-1 11:45 编辑

关于字符串的约定:

  1. 数据名称1=数据内容,数据名称2=数据内容,数据名称3=数据内容,END
复制代码


例如:
SN=12345,MAC=001234BBCCDD,IMEI=512789855125454

注意:
要保证数据内容没有等号和逗号!

有些base64加密的内容是常常有等号存在的,不适用

例如
lrl1234QIkQgwn20EWXXw+zos0RXXqt63mZ4nvpJNRbK4hUD7bmMoRxgG/JDWoQ7mtFG42Vht2hnHEguRIflow==


回复 支持 反对

使用道具 举报

228

主题

466

帖子

2184

积分

版主

Rank: 7Rank: 7Rank: 7

积分
2184
板凳
发表于 2019-6-13 11:55:02 | 只看该作者
  1. DELIMITER $

  2. DROP PROCEDURE IF EXISTS `sfc`.`SOAP_04_BIND_DATA_EX`$

  3. CREATE DEFINER=`root`@`localhost` PROCEDURE `SOAP_04_BIND_DATA_EX`(
  4. IN   P_DATA    VARCHAR(35),
  5. IN   P_TYPE  VARCHAR(20),
  6. IN   P_Value  VARCHAR(200)
  7. )
  8. SP:BEGIN
  9.   DECLARE res varchar(200);
  10.   DECLARE msg varchar(200);
  11.   DECLARE MO VARCHAR(25);
  12.   DECLARE C_MODEL VARCHAR(30);
  13.   DECLARE L_TYPE VARCHAR(20);
  14.   DECLARE L_VALUE VARCHAR(200);
  15.   DECLARE L_NAME VARCHAR(20);
  16.   DECLARE L_STR VARCHAR(200);
  17.   DECLARE L_GROUP varchar(25);
  18.   declare l_sn varchar(30);
  19.   DECLARE L_I INT;
  20.   DECLARE L_J INT;
  21.   DECLARE L_ROWID INT;
  22.   DECLARE L_COUNT INT;
  23.   DECLARE L_LOOP int;
  24.   DECLARE stopFlag int default 0;
  25.    DECLARE    this_input CURSOR FOR
  26.        select d1,d2 from sfc.z_cursor where idd=l_rowid;
  27.   DECLARE CONTINUE HANDLER FOR NOT FOUND set stopFlag=1;
  28.   SET msg='FAIL,SN not exists';
  29.   set res='FAIL,SN not exists';
  30.   SET L_TYPE=UPPER(TRIM(P_TYPE));
  31.   SET L_VALUE=Trim(P_VALUE);
  32.   SELECT serial_number,MO_NUMBER,MODEL_NAME,WIP_GROUP INTO L_SN, MO,C_MODEL,L_GROUP FROM SFC.R_WIP_TRACKING_T
  33.          WHERE SERIAL_NUMBER = P_DATA  LIMIT 1;
  34.   if(stopFlag=1)then
  35.         SET stopFlag=0;
  36.         SELECT serial_number,MO_NUMBER,MODEL_NAME,WIP_GROUP INTO L_SN, MO,C_MODEL,L_GROUP FROM SFC.R_WIP_TRACKING_T
  37.           WHERE SHIPPING_SN = P_DATA  LIMIT 1;
  38.   end if;
  39.   if(stopFlag>0)then
  40.         select res,msg from dual;
  41.         leave sp;
  42.   end if;

  43.   set L_LOOP:=0;
  44.   SET L_ROWID:=NEXTVAL('ROWID');
  45.   SET L_I:=ifnull(INSTR(L_VALUE,'='),0);  
  46.   WHILE L_I>0 and l_loop<=20 DO
  47.     set l_loop:=L_loop+1;
  48.     SET L_NAME=SUBSTR(L_VALUE,1,L_I-1);
  49.     set L_value:=substr(l_value,L_I+1);
  50.     set L_STR:='';
  51.     --
  52.     SET L_J:=ifnull(INSTR(L_VALUE,','),0);
  53.     if(L_J>0)then
  54.         SET L_STR=SUBSTR(L_VALUE,1,L_J-1);
  55.         set L_value:=substr(l_value,L_J+1);
  56.     else
  57.         set L_STR=L_VALUE;
  58.         set L_VALUE='';
  59.     end if;
  60.     insert into sfc.z_cursor(IDD,d1,d2,d3,IN_TIME)values (L_ROWID,L_NAME,L_STR,'BIND_DATA',now());
  61.     --
  62.      SET L_I:=ifnull(INSTR(L_VALUE,'='),0);
  63.   END WHILE;
  64.   if(l_loop>=20)then
  65.         delete from sfc.z_cursor where idd=l_rowid;
  66.         SET msg='FAIL,DEAD LOOP IN BIND DATA EX';
  67.         set res='FAIL,DEAD LOOP IN BIND DATA EX';
  68.         select res,msg from dual;
  69.         leave sp;
  70.   end if;
  71.   set res="PASS";
  72.   set msg="PASS";
  73.   set stopFlag:=0;
  74.    OPEN this_input;
  75.    read_loop: LOOP
  76.     FETCH this_input INTO L_NAME, L_STR;
  77.    IF stopFlag=1 THEN
  78.     LEAVE read_loop;
  79.    END IF;
  80.         insert into sfc.r_wip_keyparts_undo_t
  81.                   select * from sfc.r108 where serial_number=L_SN and key_part_no=L_NAME limit 2;
  82.         delete  from sfc.r108 where serial_number=L_SN and key_part_no=L_NAME limit 2;
  83.         insert into r108(emp_no,serial_number,key_part_no,key_part_sn,kp_relation,group_name,carton_no,work_time,version,kp_code,mo_number)
  84.               values (L_GROUP,L_SN,L_NAME,L_STR,0,'ATE','N/A',now(),'00S0','N/A',MO);
  85.    END LOOP;
  86.    CLOSE this_input;
  87.    delete from sfc.z_cursor where idd=l_rowid;
  88.    select res,msg from dual;
  89. END$

  90. DELIMITER ;
复制代码
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|Archiver|手机版|小黑屋|nagomes  

GMT+8, 2025-5-4 20:51 , Processed in 0.027705 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表