群里总有人问质保期提醒的问题,可以说目前官方没有提供这个解决方案,本人不才,献丑用脚本解决这个问题。因没有环境,把脚本贴出以供测试,请有环境的朋友测试跟贴反馈。 脚本放在主窗口脚本定义中;如果认为主窗口脚本定义要简洁,可以把脚本另存为(例如 quality_days)然后在主窗口脚本定义中: int main() { call_str("call_csp. quality_days") return 1; }; 以下为质保期提醒脚本,从临期30天开始提醒,临期10天再提醒,如果达到或者超过质保期也作出提醒。 int main() { dbg_clear(); string sql; string today,resid,batch,produce; int i,row,day,days; today=get_cur_date_std(); sql="select res_id,produce_date,batch_no,num from edt_res " db_run(sql); if(db_row_count()>0) { for (i=0;i<db_row_count();i++) { db_go_row(i) resid=db_res(0); produce=db_res(1); batch=db_res(2); days=get_res_info(resid,"quality_days");//产品资料中的质保天数 day=days-get_day_between(produce,today);//剩余天数 if(db_res(3)>0) { if(day<=30 && day>20 && day>0) dbg("编号:"+resid+" 名称:"+get_res_info(resid,"res_name")+"批次号为:"+batch+" 的质保期还有:"+day+"天") else if(day<=10 && day>0) dbg("编号:"+resid+" 名称:"+get_res_info(resid,"res_name")+"批次号为:"+batch+" 的质保期还有:"+day+"天") else if(day<=0) dbg("编号:"+resid+" 名称:"+get_res_info(resid,"res_name")+" 批次号为:"+batch+" 质保期已过!"); } } } return 1; }; 提示:如果产品较多在进入软件时速度较慢,请耐心等待。 |