我现在在做一个材料合计表(名字为RH_MAT_SUM)的触发器,有以下三张表。
1.投入材实绩表 RH_MAT_RESULT里记录的是投入材的消耗量,字段为
处理号RH_NO 投入时刻(charge_time)  材料消耗1(M_WGT1)  材料消耗2(M_WGT2)...材料消耗14(M_WGT14)
处理号和投入时刻作为主键
2.命名实绩表 RH_BIN_RESULT记录的是料仓号里料仓的名称,字段为
处理号RH_NO  料仓号BIN_NO(范围是 1~14)  材料名称 M_NAME
处理号作为主键
3.材料合计表(名字为RH_MAT_SUM)的字段为
处理号RH_NO 投入材名称MAT_NAME 投入材消耗量MAT_WGT
处理号作为主键
说明:材料消耗1(M_WGT1)里放的是1号料仓的消耗量(后面13个代表的含义以此类推),1号料仓放的材料名称是放在命名实绩表RH_BIN_RESULT里的材料名称 M_NAME里。(根据处理号和料仓号BIN_NO为“1”进行访问)要求:每在投入材实绩表 RH_MAT_RESULT里插入一条记录,自动更新材料合计表(名字为RH_MAT_SUM)里的数据(累加),如果没有记录则自动添加。如果投入材名称没有在命名实绩表中,则报警(这部分预留代码)。触发器流程:
在插入投入材实绩表 RH_MAT_RESULT里插入一条记录后,根据M_WGT1...M_WGT14的赋值情况,(实际插入时M_WGT1...M_WGT14里可能只有其中的几个被赋值)根据处理号NO在命名实绩表 RH_BIN_RESULT中查找相应的材料名称 M_NAME,如果没有找到则报警。然后在材料合计表RH_MAT_SUM根据处理号NO更新相应材料的消耗量(相加),如果没有则自动插入该材料的消耗量。难点:如何判断M_WGT1...M_WGT14的赋值情况?请各位给出具体代码?谢谢。