原创_脚本分享:开单时让商品按批次库存先进先出,批次库存不足自动调用下一批次的商品。_使用经验
学习.交流
专业源于专注
www. onlyit. cn   
学习交流 文件下载 手册资料 交流QQ群

    

 10  1/1   1  
作者
内容
afoo  [个人空间]
QQ名  常德-ZEN


注册  2010-04-08
发贴数  204
精华贴  6
原创贴  6
来自  常德-ZEN
状态  正常

级别  会员
#1»发布于2015-04-25 08:16

int _fifo() 

  string sql_batch_no,batchno,resid; 
  int i,j,k,v; 
  num resinpnum,x,s; 
 
  grid_seek("MG_Item","res_id","");//将光标定位到商品编码的最后一行; 
  i=grid_cur_row("MG_Item");//获得最后一行的行号,用它减1就是真实的有数据的行数了。 
 
  for(j=1;j<i;j++) 
  { 
    sql_batch_no="select res_id,edt_id,produce_date,batch_no,num from edt_res where res_id='" + grid_get_v("MG_Item","res_id",j) ; 
    sql_batch_no=sql_batch_no + "' and edt_id='" + gui_get_val('ComboBox_Ext_Edt_Id') + "'order by produce_date"; 
    db_run(sql_batch_no); 
 
  //fmt_date(db_res(2),'yyyy.mm.dd'); //格式化生产日期 
 
    grid_set_v('MG_Item','batch_no',j,db_res(3)); 
    grid_set_v('MG_Item','produce_date',j,db_res(2)); 
    grid_trigger_change('MG_Item','batch_no',-1); 
  }; 
 
 
  for(j=1;j<i;j++)//第一个循环用于获取最初的数据 
  { 
    resid=grid_get_v("MG_Item","res_id",j); 
    sql_batch_no="select res_id,edt_id,produce_date,batch_no,num from edt_res where res_id='" + resid + "' and edt_id='" + gui_get_val('ComboBox_Ext_Edt_Id') + "'order by batch_no"; 
    db_run(sql_batch_no); 
    k=db_row_count(); 
    batchno=grid_get_v("MG_Item","batch_no",j); //获取循环行的批号 
    resinpnum=grid_get_v("MG_Item","inp_num",j); //获取循环行的数量 
 
    for(v=0;v<k-1;v++)//第二个循环用于新增行并填写正确的数据 
    { 
      db_go_row(v); 
      s=db_res(4); 
      if(batchno==db_res(3) && resinpnum>s) 
      { 
        j=j+v; 
        grid_seek_from('MG_Item',j,'res_id',resid); 
        menu_trigger_click("Popu_Item_Copy_Curr"); 
        grid_set_v('MG_Item','inp_num',j,db_res(4)); 
        grid_set_v('MG_Item','produce_date',j,db_res(2)); 
        grid_trigger_change('MG_Item','inp_num',-1); 
        grid_insert_before('MG_Item',j+1); 
        grid_seek_from('MG_Item',j+1,'res_id',''); 
  //      x=db_res(4); 
        menu_trigger_click("Popu_Item_Paster"); 
        db_go_row(v+1); 
        grid_set_v('MG_Item','batch_no',j+1,db_res(3)); 
        grid_set_v('MG_Item','produce_date',j+1,db_res(2)); 
        grid_trigger_change('MG_Item','batch_no',-1); 
        grid_set_v('MG_Item','inp_num',j+1,resinpnum-s); 
        grid_trigger_change('MG_Item','inp_num',-1); 
        batchno=grid_get_v("MG_Item","batch_no",j+1); 
        resinpnum=grid_get_v("MG_Item","inp_num",j+1); 
 
        s=db_res(4); 
        i++; 
      }; 
    }; 
  }; 
  return 1; 
}; 
 
int func_before_save() 

  if(confirm('是否进行先进先出处理?')==1) 
  { 
    _fifo(); 
  }; 
}; 
 
脚本写得比较笨拙,还希望高手们多指点。


        于 2015-04-25 08:16 被 afoo 修改




官方认证第三方服务团队  蒋逸凡(常德-ZEN) QQ:50636277
服务介绍: http://www.onlyit.cn/user_home?user_id=13498

xwb514  [个人空间]
QQ名  福建流浪(340298101)


注册  2010-03-19
发贴数  574
精华贴  7
原创贴  7
来自  
状态  正常

级别  会员
#2»发布于2015-02-01 14:26

顶一下.这是个难点.






官方认证第三方服务团队  徐文标(福建-流浪) QQ:340298101 V&P :177-5046-4787
服务介绍:http://www.onlyit.cn/onlyit_service.html

wbjjzhu  [个人空间]


注册  2012-08-22
发贴数  102
精华数  0
原创贴  1
来自  
状态  正常

级别  会员
#3»发布于2015-09-12 13:29

很好,收藏学习。




wuxuguan  [个人空间]


注册  2012-01-07
发贴数  43
精华贴  1
原创贴  0
来自  
状态  正常

级别  会员
#4»发布于2015-09-22 09:13

好东西,收下。




wwx001  [个人空间]
QQ名  时光呓语


注册  2011-05-23
发贴数  694
精华贴  2
原创贴  3
来自  
状态  正常

级别  会员
#5»发布于2015-09-22 16:50

感谢分享,收藏参考。






QQ:772600297

feensky  [个人空间]


注册  2011-03-29
发贴数  43
精华数  0
原创贴  0
来自  
状态  正常

级别  会员
#6»发布于2016-01-22 14:31

谢谢分享,值得学习。




youtv5856  [个人空间]


注册  2017-03-06
发贴数  8
精华数  0
原创贴  0
来自  
状态  正常

级别  会员
#7»发布于2017-03-10 00:28

谢谢分享,值得学习。




1934184799  [个人空间]
QQ名  河内-服装


注册  2015-06-23
发贴数  472
精华贴  1
原创贴  0
来自  
状态  正常

级别  会员
#8»发布于2017-03-10 09:22

感谢分享,收藏参考




xuelan20008  [个人空间]


注册  2017-10-24
发贴数  1
精华数  0
原创贴  0
来自  
状态  正常

级别  会员
#9»发布于2018-03-27 12:34

为什么超过4.5个批次后就不行




afoo  [个人空间]
QQ名  常德-ZEN


注册  2010-04-08
发贴数  204
精华贴  6
原创贴  6
来自  常德-ZEN
状态  正常

级别  会员
#10»发布于2018-03-31 10:28

4.5个确实有问题。写这个脚本的时候当时也没考虑到这个,我们厂不会有一次超过3个批次的情况。






官方认证第三方服务团队  蒋逸凡(常德-ZEN) QQ:50636277
服务介绍: http://www.onlyit.cn/user_home?user_id=13498


 10  1/1   1  

登录后方可发贴


[ 电话: 0571-85462761 王先生 QQ: 124520435 加入软件QQ群 - 杭州 - 浙ICP备19051128号-1 网安 33010402003225 ]