lzh
2025-06-24 13c4a636539584ab977fddacfae884b3ec250aee
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
ÿþ--[[
    x: WMS-04-02
     Tðy: 'MO-Rú^MR
    \O€ÿHAN  
    åegÿ2022-12-23
 
    §~+RÿúVš[ (ô‹f,gµkãNx(Wy˜îv-N N*YOØSS)
    
    ýQpeÿ BeforeDataObjModify
 
    ŸRý€:
        1    ÿŠb N_PURPOSE N_TYPE 9hncW[xQ·ƒÖSُ›N<P„vô‹f
    
    ôf9e°‹U_:
        V3.1 HAN 2023-7-2
            getDictItemIInfo 9eb wms_GetDictTypeName   
        V4.1 HAN 2023-8-9  wmsøvsQ¥cãSŒte     
        V4.2 wms_GetDictTypeName -> wms_base.GetDictItemName    
        V6.0 HAN 2023/9/6  -- lua.Error/lua.Debug ýQpeØSS  
        V6.1 HAN 2023/9/19 -- N_LOC_TYPE  9e:N N_TYPE  
        V7.0 HAN 2023/11/15 -- ÖSˆm N_DEEP ÿ WMS_LocDeepPosition    
--]]
 
m3 = require( "oi_base_mobox" )
wms_base = require( "wms_base" )
function BeforeDataObjModify ( strLuaDEID ) 
    local   nRet, strRetInfo
    -- step1  ·ƒÖSS_MR'MOÑ~š[hˆ„váOo` ÿ·ƒÖS 'MO÷S ÿ¹[hV÷S
    nRet, strRetInfo = mobox.getCurEditDataObjAttr( strLuaDEID, "N_PURPOSE","N_TYPE","N_LOCK_STATE" ) 
    if ( nRet ~= 0 )  then lua.Error( strLuaDEID, debug.getinfo(1), "·ƒÖSS_MR‘^\'`1Y%! "..strRetInfo ) end 
    local obj_attrs = json.decode( strRetInfo ) 
    local purpose = lua.StrToNumber( obj_attrs[1].value )           -- 'MO(u
    local loc_type = lua.StrToNumber( obj_attrs[2].value )          -- 'MO{|‹W
    local lock_state = lua.StrToNumber( obj_attrs[3].value )        -- 'MO•¶r`
 
    -- 9hncW[xQ·ƒÖS N_PURPOSE „v>f:y Tðy
    local str_purpose = wms_base.GetDictItemName( strLuaDEID, "WMS_LocationPurpose", purpose ) 
    -- ÖS'MO{|‹WáOo`
    local str_loc_type = wms_base.GetDictItemName( strLuaDEID, "WMS_LocationType", loc_type ) 
    -- ÖS'MO•¶r`áOo`
    local str_loc_state = wms_base.GetDictItemName( strLuaDEID, "WMS_LocationLockState", lock_state ) 
    
    -- ¾‹n#cäN÷S
    local   attr_value = {}
    attr_value[1] = lua.KeyValueObj( "S_PURPOSE", str_purpose )
    attr_value[2] = lua.KeyValueObj( "S_TYPE", str_loc_type )
    attr_value[3] = lua.KeyValueObj( "S_LOCK_STATE", str_loc_state )
    nRet, strRetInfo = mobox.setCurEditDataObjAttr( strLuaDEID, lua.table2str(attr_value) ) 
    if ( nRet ~= 0 ) then lua.Error( strLuaDEID, debug.getinfo(1), "¾‹n'MOáOo`1Y%!  "..strRetInfo ) end   
end