2022.03.26更新,添加检测已上传的文件,判断是否重新上传并替换的脚本,表头添加客户采购订单上传状态控件 int create_voucher() { gui_hide('sczt')//新建单据的时候隐藏客户采购订单上传状态控件 return 1; } int func_show() { if(have_role("0010")==1 || have_role("0009")==1)//限定有角色编号0010和0009权限(销售订单编辑和审核权限)的操作员才能看到这个控件 { gui_create_button("Panel_Func","Cgddsc_on5",985,7,95,22,"上传采购订单","call_csp.voucher.BA.cgddsc"); gui_create_button("Panel_Func","Cgddck",1085,7,95,22,"查看采购订单","call_csp.voucher.BA.cgddck"); //显示客户采购订单是否上传的状态 string v,v1; v = grid_get_v('MG_Item','voucher_id',1) v1 = "voucher."+v; if((get_obj_file(v1,'1')) == ''){ gui_create_label("ScrollBox_Base",'sczt',990,0,'客户采购订单待上传') gui_set_font_size("sczt",'16') gui_set_font_color('sczt',0x0000ff); msg('请联系制单人员上传客户采购订单!')} else{ gui_create_label("ScrollBox_Base",'sczt',990,0,'客户采购订单已上传') gui_set_font_size("sczt",'12') gui_set_font_color('sczt',32768);} }; return 1; }; int cgddsc() { string v,v1,v2,v3,v4,v5,v6,v7,v8,v9; v = grid_get_v('MG_Item','voucher_id',1) if(v==""){ msg("请先保存单据再上传!"); return 1; } v1 = "voucher."+v; v3 = "select file_id,org_file_name,create_date,create_user_id from app_fs_file where obj_id='" + v1 + "'";//根据相关文件的属性标识提取相关文件编号,原始文件来源信息,上传日期,上传的操作员编号 db_run_query(v3); v4 = db_res(0) v5 = db_res(1) v6 = fmt_date(db_res(2),'yyyy-mm-dd')//格式化上传日期 v7 = db_res(3) v8 = "select user_name from mup_user where user_id='" + db_res(3) + "'";//根据操作员编号提取操作员姓名 db_run_query(v8); v9 = db_res(0) if((get_obj_file(v1,'1')) == ''){ v2=select_file_to_open('选择文件','xls|*.xls|xlsx|*.xlsx|doc|*.doc|docx|*.docx|pdf|*.pdf');//创建选择文件窗口,可根据需要添加其他文件类型 if(v2 != ''){ upload_file(v1,'1',v2,'客户采购订单')//上传选择的文件 msg('ok,客户采购订单文件【'+v2+'】上传成功!'); gui_create_label("ScrollBox_Base",'sczt',990,0,'客户采购订单已上传') gui_set_font_size("sczt",'12') gui_set_font_color('sczt',32768);} if(v2 == ''){ msg('未选取客户采购订单文档,操作取消!'); gui_create_label("ScrollBox_Base",'sczt',990,0,'客户采购订单待上传') gui_set_font_size("sczt",'16') gui_set_font_color('sczt',0x0000ff);} return 1; } if((get_obj_file(v1,'1')) != ''){ if(confirm(v7+'/'+v9+': 已于 '+v6+' 上传客户采购订单文件:'+v5+' !是否打开该文件后删除上传记录并重新选择新的客户采购订单上传?')== '1'){ shell(get_obj_file(v1,'1'));//打开已上传的文件 erase_file_by_id(v4)//删除已上传的文件 msg('警告:已上传的文件【'+v5+'】已删除!') msg('若需要恢复已上传的文件,请重新选择已打开的原始文件上传') v2=select_file_to_open('选择文件','xls|*.xls|xlsx|*.xlsx|doc|*.doc|docx|*.docx|pdf|*.pdf');//选择要更新的文件 upload_file(v1,'1',v2,'客户采购订单')//上传选择的文件 gui_create_label("ScrollBox_Base",'sczt',990,0,'客户采购订单已上传') gui_set_font_size("sczt",'12') gui_set_font_color('sczt',32768); msg('ok,客户采购订单文件【'+v2+'】上传成功!'); }; }; return 1; }; int cgddck() { string v,v1; v = grid_get_v('MG_Item','voucher_id',1)//获取单据流水号 v1 = "voucher."+v;//生成对象标识 if((get_obj_file(v1,'1')) == '')//1为相关文件界面的文件类型编码,返回的文件地址为空时弹窗提醒 { msg('客户采购订单待上传!') } else { shell(get_obj_file(v1,'1'));//打开上传的文档 } return 1; }; int func_before_oper() { if(oper_type='ask_check')//在单据送审的时候检查是否有上传客户采购订单,若无则弹窗提醒 { int grid_rc,i; string v,v1; grid_rc= grid_find('MG_Item','res_name',''); v = grid_get_v('MG_Item','voucher_id',i) v1 = "voucher."+v; if((get_obj_file(v1,'1')) == ''){ msg('请上传客户采购订单后再送审单据')} }; //oper_type=save,check,check_r,finish,finish_r,delete,giveup,ask_check,ask_check_r; //can_oper=1; return 1; }; |