SCL区域查询与修改

   日期:2020-08-31     浏览:102    评论:0    
核心提示:区域查询与修改FUNCTION “物流管理” : Void{ S7_Optimized_Access := ‘TRUE’ }VERSION : 0.1VAR_TEMP货位编号X : Int; // 行货位编号Y : Int; // 排货位编号Z : Int; // 层查询货位号X : Int;查询货位号Y : Int;查询货位号Z : Int;A : Int;B : Int;C : Int;E : Int;D : Int;F : Int;END_VARBEGI

区域查询与修改

FUNCTION “物流管理” : Void
{ S7_Optimized_Access := ‘TRUE’ }
VERSION : 0.1
VAR_TEMP
货位编号X : Int; // 行
货位编号Y : Int; // 排
货位编号Z : Int; // 层
查询货位号X : Int;
查询货位号Y : Int;
查询货位号Z : Int;
A : Int;
B : Int;
C : Int;
E : Int;
D : Int;
F : Int;
END_VAR

BEGIN
//查询
//物料编号用物料所在位置
//货位号:111、112、113、114、115;
//货位号拆分
IF “DATA”.查询货位号> 455 OR “DATA”.查询货位号 < 111 THEN
“DATA”.查询货位号:= 111;
;
END_IF;
#查询货位号Z:=#货位编号Z := “DATA”.查询货位号 MOD 10;
#查询货位号Y:=#货位编号Y:=(“DATA”.查询货位号/10)MOD 10;
#查询货位号X:=#货位编号X := “DATA”.查询货位号 / 100;

"DATA".查询缺省.物料编号 := "DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].物料编号;
"DATA".查询缺省.物料条码 := "DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].物料条码;
"DATA".查询缺省.托盘ID := "DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].托盘ID;
"DATA".查询缺省.件数 := "DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].件数;
"DATA".查询缺省.补充信息 := "DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].补充信息;
//修改
//
IF "DATA".修改货位号 > 455 OR "DATA".修改货位号 < 111 THEN
    "DATA".修改货位号 := 111;
    ;
END_IF;
#货位编号Z := "DATA".修改货位号 MOD 10;
#货位编号Y := ("DATA".修改货位号 / 10 ) MOD 10;
#货位编号X := "DATA".修改货位号 / 100;

IF "DATA".修改按钮 THEN
    "DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].物料编号 := "DATA".修改缺省.物料编号;
    "DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].物料条码 := "DATA".修改缺省.物料条码;
    "DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].托盘ID := "DATA".修改缺省.托盘ID;
    "DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].件数 := "DATA".修改缺省.件数;
    "DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].补充信息 := "DATA".修改缺省.补充信息;
END_IF;
//删除数据
//
IF "DATA".删除货位号 > 455 OR "DATA".删除货位号 < 111 THEN
    "DATA".删除货位号 := 111;
    ;
END_IF;
#货位编号Z := "DATA".删除货位号 MOD 10;
#货位编号Y := ("DATA".删除货位号 / 10) MOD 10;
#货位编号X := "DATA".删除货位号 / 100;

IF "DATA".删除按钮 THEN
    "DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].物料编号 := 0;
    "DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].物料条码 := 0;
    "DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].托盘ID := 0;
    "DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].件数 := 0;
    "DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].补充信息 := 0;
END_IF;
//移动,把查询的数据移动过来
IF"DATA".移动货位号 > 455 OR "DATA".移动货位号< 111 THEN
    "DATA".移动货位号 := 111;
    ;
END_IF;
#货位编号Z := "DATA".修改货位号 MOD 10;
#货位编号Y := ("DATA".修改货位号 / 10) MOD 10;
#货位编号X := "DATA".修改货位号 / 100;
"DATA".移动数据源.物料编号:="DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].物料编号  ;
"DATA".移动数据源.物料条码:="DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].物料条码  ;
"DATA".移动数据源.托盘ID:="DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].托盘ID ;
"DATA".移动数据源.件数:="DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].件数 ;
"DATA".移动数据源.补充信息 := "DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].补充信息;

IF "DATA".修改按钮 THEN
    "DATA".物料信息[#查询货位号X, #查询货位号Y, #查询货位号Z].物料编号 := "DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].物料编号  ;
    "DATA".物料信息[#查询货位号X, #查询货位号Y, #查询货位号Z].物料条码 := "DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].物料条码;
    "DATA".物料信息[#查询货位号X, #查询货位号Y, #查询货位号Z].托盘ID := "DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].托盘ID;
    "DATA".物料信息[#查询货位号X, #查询货位号Y, #查询货位号Z].件数 := "DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].件数;
    "DATA".物料信息[#查询货位号X, #查询货位号Y, #查询货位号Z].补充信息 := "DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].补充信息;
  
    
    "DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].物料编号 := 0;
    "DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].物料条码 := 0;
    "DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].托盘ID := 0;
    "DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].件数 := 0;
    "DATA".物料信息[#货位编号X, #货位编号Y, #货位编号Z].补充信息 := 0;
    "DATA".修改按钮 := FALSE;
END_IF;
//物料对应数字

//托盘ID重复报警
FOR #A := 1 TO 4 DO
    // Statement section FOR
    FOR #B := 1 TO 5 DO
        // Statement section FOR
        FOR #C := 1 TO 5 DO
            // Statement section FOR
            
            FOR #E:= 1 TO 4 DO
                // Statement section FOR
                ;
                FOR #D:= 1 TO 5 DO
                    // Statement section FOR
                    ;
                    FOR #F := 1TO 5 DO
                        // Statement section FOR
                        IF 100*#A+10*#B+#C<>100*#E+10*#D+#F THEN//不允许给自己比较
                            // Statement section IF
                            IF "DATA".物料信息[#A,#B,#C].托盘ID = "DATA".物料信息[#E,#D,#F].托盘ID THEN
                                // Statement section IF
                                "DATA".报警信息 := 1;
                                ;
                            END_IF;
                            
                            ;
                        END_IF;
                        
                        ;
                    END_FOR;
                    
                END_FOR;
                
            END_FOR;
            
            ;
        END_FOR;
        
        ;
    END_FOR;
    
    ;
END_FOR;
IF "DATA".复位 THEN
    "DATA".报警信息 := 0;
END_IF;

END_FUNCTION

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服