1
Jianw
9 天以前 70f29da38121b9a467841253e3268feb5df02902
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
--[[
   sys.encode: AMS-102-01
   sys.name: 
   views.0018.author:
   sys.date:2025-05-16
 
   views.0018.function: QuickMark
   views.0018.use:
 
   views.0018.change_record:
 
--]]
 
json  = require ("json")
mobox = require ("OILua_JavelinExt")
m3 = require ("oi_base_mobox")
 
function QuickMark( strLuaDEID )
    --获取PDA参数
    nRet,strRetInfo = mobox.getCurEditDataObjAttr(strLuaDEID,"S_CODE")
    if(nRet ~=0) then lua.Error(strLuaDEID,debug.getinfo(1), "调用方法GetSysDataJson出错") end
    
    lua.Debug(strLuaDEID, debug.getinfo(1), 'strRetInfo', strRetInfo)
    
    local obj_attrs = json.decode(strRetInfo)
    
    local serial_no = obj_attrs[1].value
    if (serial_no == nil or serial_no == '') then return end
    
    
    --查询条码信息
    local label_attrs, strCondition
    local strCondition = "COALESCE(LTRIM(RTRIM(S_CNTR_CODE)), '') + COALESCE(LTRIM(RTRIM(S_ITEM_CODE)), '') = '"..serial_no.."'"
    lua.Debug(strLuaDEID, debug.getinfo(1), 'strCondition', strCondition)
    
    -- 使用组合后的条码作为查询条件
    nRet, label_attrs = m3.GetDataObjByCondition(strLuaDEID,"SAF_Inventory",strCondition)
    if (nRet ~= 0) then 
       lua.Error(strLuaDEID, debug.getinfo(1), label_attrs) 
    end
    lua.Debug(strLuaDEID, debug.getinfo(1), 'label_attrs', label_attrs)
    
    --设置窗口中的信息
    local setAttr = '[{"attr":"S_LOC_CODE","value":"'..label_attrs.loc_code..'"},'
    setAttr = setAttr..'{"attr":"S_CNTR_CODE","value":"'..label_attrs.cntr_code..'"},'
    setAttr = setAttr..'{"attr":"S_ITEM_CODE","value":"'..label_attrs.item_code..'"},'
    setAttr = setAttr..'{"attr":"S_ITEM_NAME","value":"'..label_attrs.item_name..'"},'
    setAttr = setAttr..'{"attr":"F_QTY","value":"'..label_attrs.safety_qty..'"}]'
    
    lua.Debug(strLuaDEID, debug.getinfo(1), 'setAttr', setAttr)
    
    local action = {}
 
    action.action_type = "set_dlg_attr"
    action.value = json.decode(setAttr)
 
    nRet, strRetInfo = mobox.setAction(strLuaDEID, '[' .. lua.table2str(action) .. ']')
    if (nRet ~= 0) then lua.Error(strLuaDEID, debug.getinfo(1), "setAction失败! " .. strRetInfo .. ' action = ' .. strAction) end
end