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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
ÿþ--[[
    x: WMS-38-01
     Tðy: ,dЏcäN-Rú^MR
    \O€ÿHAN  
    åegÿ2023-01-02
 
    §~+RÿúVš[ (ô‹f,gµkãNx(Wy˜îv-N N*YOØSS)
    
    ýQpeÿ BeforeDataObjCreate
 
    ŸRý€:
        1    ÿubûN¡Rx
        2    ÿù[N›Npe<P{|‹W„v^\'`ubُ›N{|‹W„v㉐g^\'`
    ôf9e°‹U_:
        V1.1
            žX R†Nù[S_EQ_TASK_CODE„vYt ÿ‚Yœgُ*N<P:Nzz1\I{ŽNûN¡Rx
        V3.0 HAN 2023-6-16
        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/22 -- S_TASK_CODE -- S_CODE
    --]]
 
require ("WMS-BASE")
 
function BeforeDataObjCreate ( strLuaDEID ) 
    local   nRet, strRetInfo
    nRet, strRetInfo = mobox.getCurEditDataObjAttr( strLuaDEID, "N_B_STATE","N_SCHEDULE_TYPE","N_TYPE","S_EQ_TASK_CODE","S_CODE" ) 
    if ( nRet ~= 0 )  then lua.Error( strLuaDEID, debug.getinfo(1), "·ƒÖSS_MR‘^\'`1Y%! "..strRetInfo ) end 
    local obj_attrs = json.decode( strRetInfo ) 
 
    local state = lua.StrToNumber( obj_attrs[1].value )               -- ¶r`
    local schedule = lua.StrToNumber( obj_attrs[2].value )            -- Œ¦^û|ß~{|‹W
    local task_type = lua.StrToNumber( obj_attrs[3].value )           -- ûN¡R{|‹W
    local eq_task_code = obj_attrs[4].value                       -- ¾‹YûN¡Rx
    local strCode = obj_attrs[5].value                          -- ûN¡Rx
 
    -- 9hncW[xQ·ƒÖS N_B_STATE „v>f:y Tðy
    local str_b_satte = wms_base.GetDictItemName( strLuaDEID, "WMS_TaskState", state ) 
 
    -- ÖSŒ¦^û|ß~{|‹WáOo`
    local str_schedule_type = wms_base.GetDictItemName( strLuaDEID, "WMS_ScheduleSystemType", schedule ) 
 
    -- ÖSûN¡R{|‹WáOo`
    local str_task_type = wms_base.GetDictItemName( strLuaDEID, "WMS_TaskType", task_type ) 
 
 
    -- ub0ûN¡R0x
    if ( strCode == '' ) then
        local strHeader = 'TA'..os.date("%y%m%d")..'-'
        nRet,strCode = mobox.getSerialNumber( "ûN¡R", strHeader, 5 )  
        if ( nRet ~= 0 ) then lua.Error( strLuaDEID, debug.getinfo(1), '3u÷‹0ûN¡R0x1Y%!'..strCode ) end
        if  (eq_task_code == '') then  eq_task_code = strCode end
    end
 
    -- ¾‹náOo`
    local   attr_value = {}
    attr_value[1] = lua.KeyValueObj( "S_B_STATE", str_b_satte )
    attr_value[2] = lua.KeyValueObj( "S_SCHEDULE_TYPE", str_schedule_type )
    attr_value[3] = lua.KeyValueObj( "S_CODE", strCode )
    attr_value[4] = lua.KeyValueObj( "S_TYPE", str_task_type )
    attr_value[5] = lua.KeyValueObj( "S_EQ_TASK_CODE", eq_task_code )
    
    nRet, strRetInfo = mobox.setCurEditDataObjAttr( strLuaDEID, lua.table2str(attr_value) ) 
    if ( nRet ~= 0 ) then lua.Error( strLuaDEID, debug.getinfo(1), "¾‹n0ûN¡R0áOo`1Y%!  "..strRetInfo ) end   
end