$PBExportHeader$f_update_printnum.srf global type f_update_printnum from function_object end type forward prototypes global function integer f_update_printnum (string arg_tablename, long arg_printnum, long arg_1_num, long arg_2_num, string arg_1_str, string arg_2_str, ref string arg_msg, boolean arg_ifcommit) end prototypes global function integer f_update_printnum (string arg_tablename, long arg_printnum, long arg_1_num, long arg_2_num, string arg_1_str, string arg_2_str, ref string arg_msg, boolean arg_ifcommit);Int rslt = 1 CHOOSE CASE arg_tablename CASE 'u_buytask' //**采购订单 UPDATE u_buytask SET printnum = printnum + :arg_printnum Where scid = :arg_1_num AND taskid = :arg_2_num; CASE 'u_inware' //**进仓单 UPDATE u_inware SET printnum = printnum + :arg_printnum Where scid = :arg_1_num AND inwareid = :arg_2_num; CASE 'u_outware' //**出仓单 UPDATE u_outware SET printnum = printnum + :arg_printnum Where scid = :arg_1_num AND outwareid = :arg_2_num; CASE 'u_gz_award_punish' //**奖罚单 UPDATE u_gz_award_punish SET printnum = printnum + :arg_printnum Where billid = :arg_2_num; CASE 'u_gz_cwork' //**考勤单 UPDATE u_gz_cwork SET printnum = printnum + :arg_printnum Where billid = :arg_2_num; CASE 'u_gz_loanwage' //**借支单 UPDATE u_gz_loanwage SET printnum = printnum + :arg_printnum Where billid = :arg_2_num; // case 'u_order_ml' //**生产计划 // update u_order_ml set printnum = printnum + :arg_printnum // where scid =:arg_1_num and orderid =:arg_2_num; CASE 'u_order_wfjg' //**外加工计划 UPDATE u_order_wfjg SET printnum = printnum + :arg_printnum Where scid = :arg_1_num AND wfjgid = :arg_2_num; CASE 'u_saletask' //**销售订单 UPDATE u_saletask SET printnum = printnum + :arg_printnum Where scid = :arg_1_num AND taskid = :arg_2_num; // case 'u_sc_abnormity_bill' //**返工返修赔偿单 // update u_sc_abnormity_bill set printnum = printnum + :arg_printnum // where billid =:arg_2_num; CASE 'u_oppose' //**投诉单 UPDATE u_oppose SET printnum = printnum + :arg_printnum Where billid = :arg_2_num; CASE 'u_spt_price_change' //**调价单 UPDATE u_spt_price_change SET printnum = printnum + :arg_printnum Where billid = :arg_2_num; CASE 'u_spt_amerce' //**罚款单 UPDATE u_spt_amerce SET printnum = printnum + :arg_printnum Where scid = :arg_1_num AND billid = :arg_2_num; CASE 'u_spt_amerce' //**损耗单 UPDATE u_order_wfjg_waste SET printnum = printnum + :arg_printnum Where scid = :arg_1_num AND wasteid = :arg_2_num; CASE 'u_incase' //**装箱单 UPDATE u_incase SET printnum = printnum + :arg_printnum Where scid = :arg_1_num AND incaseid = :arg_2_num; CASE 'u_quote' //**报价单 UPDATE u_quote SET printnum = printnum + :arg_printnum Where scid = :arg_1_num AND quoteid = :arg_2_num; CASE 'u_cusamt' //客户收款单 UPDATE u_cusamt SET printnum = printnum + :arg_printnum Where scid = :arg_1_num AND cusmonid = :arg_2_num; CASE 'ow_wfjg_in' //外协收货单 UPDATE ow_wfjg_in SET printnum = printnum + :arg_printnum Where scid = :arg_1_num AND inwareid = :arg_2_num; CASE 'ow_wfjg_out' //外协发出单 UPDATE ow_wfjg_out SET printnum = printnum + :arg_printnum Where scid = :arg_1_num AND outwareid = :arg_2_num; CASE 'u_saletaskmx_card' //流程卡 UPDATE u_saletaskmx_card SET printnum = printnum + :arg_printnum Where scid = :arg_1_num AND cardid = :arg_2_num; CASE 'u_saletaskmx' UPDATE u_SaleTaskMx SET u_SaleTaskMx.printnum = u_SaleTaskMx.printnum + :arg_printnum FROM u_SaleTask, u_SaleTaskMx WHERE ( u_SaleTask.TaskID = u_SaleTaskMx.TaskID ) AND ( u_SaleTask.scid = u_SaleTaskMx.scid ) AND ((LTRIM(RTRIM(u_saletask.TaskCode)) + LTRIM(RTRIM(u_SaleTaskMx.printid)) = :arg_1_str ) ); CASE 'u_rap_money_transfer' UPDATE u_rap_money_transfer SET printnum = printnum + :arg_printnum Where billid = :arg_2_num; CASE 'u_sc_taskwork' UPDATE u_sc_taskwork SET printnum = printnum + :arg_printnum Where scid = :arg_1_num AND billid = :arg_2_num; CASE 'u_scwg_taskwork_2' //个人产品计件单 UPDATE u_scwg_taskwork_2 SET printnum = printnum + :arg_printnum Where scid = :arg_1_num AND billid = :arg_2_num; CASE 'u_sc_abnormity' //个人工序计件单 UPDATE u_sc_abnormity SET printnum = printnum + :arg_printnum Where scid = :arg_1_num AND billid = :arg_2_num; CASE 'u_outware_move' UPDATE u_outware_move SET printnum = printnum + :arg_printnum Where outwareid = :arg_2_num; END CHOOSE IF sqlca.SQLCode <> 0 THEN arg_msg = '更新表:'+arg_tablename+'打印次数失败' rslt = 0 GOTO ext END IF ext: IF rslt = 0 THEN ROLLBACK; ELSEIF rslt = 1 AND arg_ifcommit THEN COMMIT; END IF RETURN rslt end function