BOM更新建立新版本后,会停用旧版本,有时会先停用旧版本再更新新的版本,为防止在更新【新版本BOM】之前忘记删除旧版本的产品组成明细而被做【材料需求表】,特增加在修改BOM状态为【停用】后保存的时候自动删除对应版本的产品组成明细(若有),并禁止同步停用状态的BOM明细到产品组成明细 在脚本文件【rec.res_bom】添加 int func_save_rec() { string bomzt,sql,m_resid,count_res,bm_id,bombh; bomzt = gui_get_val("ComboBox_Ext_State");//获取BOM状态 bm_id = gui_get_val("Edit_Bom_Id");//获取BOM编号 m_resid = gui_get_val("ext_Ext2");//获取BOM扩展属性1(主产品料号) sql = "select ext_2 from res_composing where res_id='" + m_resid + "' and ext_2='" + bm_id + "'"; db_run(sql); bombh = db_res(0) //获取对应版本的产品组成明细的扩展属性2(BOM编号) if(bomzt == 'X' && bombh != '') { if(confirm('停用BOM后【需要删除对应的产品组成明细】,点【确定】删除,点【否】取消删除')== '1'){ sql = "delete from res_composing where res_id='" + m_resid + "'";//删除BOM对应的产品资料已有的产品组成明细 db_run(sql);} else { msg('选择【取消删除对应版本的产品组成明细】后禁止保存【BOM】为【停用】状态!'); can_save=0 }; sql = "select * from res_composing where res_id='" + m_resid + "'";//检查BOM对应的产品资料是否还存在产品组成明细 db_run(sql); count_res = db_row_count(); if(count_res == '0'){ msg('已成功删除对应的产品组成明细,【若需要恢复此版本的产品组成明细,请取消停用后再同步主件组成一次即可】') }; }; //msg('save rec'); //can_save=1; return 1; }; |