学习.交流
专业源于专注
www. myoit. cn   
学习交流 文件下载 手册资料 交流QQ群

    

 7  1/1   1  
作者
内容
fwj3861  [个人空间]
QQ名  叶子


注册  2010-09-09
发贴数  197
精华贴  8
原创贴  11
来自  越南
状态  正常

级别  贵宾
#1»发布于2021-12-17 15:33

启用扩展属性1-8 
扩展属性1:成品料号,字符型,脚本自动生成 
扩展属性2:成品名称,字典型:产品资料字典,输入成品料号从产品资料里面匹配出成品名称并提取成品料号到扩展属性1 
扩展属性3:BOM版本,字典型:自建BOM版本字典,从字典里面选择 
扩展属性4:版本日期,日期型 
扩展属性5:更新人,字典型:操作员字典,脚本提取登录操作员账号 
扩展属性6:更新日期,日期型,脚本生成当前日期 
扩展属性7:更新时刻,字符型,脚本生成当前时刻 
扩展属性8:间隔天数,字符型,脚本提取创建日期,计算创建日期和更新日期之间的天数 
BOM编号= 成品料号*版本号,脚本自动生成 
BOM名称= 成品名称,脚本自动生成 
BOM备注:默认脚本提取产品资料的其他描述,保存前可手动修改 
为防止误操作,隐藏编辑界面的删除按钮,需要的时候用F9显示出来,默认使用脚本锁定BOM明细内容,添加保存按钮右键修改菜单,点击修改菜单取消BOM明细锁定和扩展属性2-3及BOM备注锁定 
BOM自定义一设置为序号列,在导入BOM保存时按序号排序后再保存 
BOM自定义二和三分别设置为自动获取BOM编号和BOM版本日期(在产品资料的产品组成导入BOM的时候通过脚本分解出BOM编号的成品编号部分来和产品资料编号匹配,编号不一致的禁止保存,避免导入BOM的时候选择错误没有被及时发现)






        




没有最好,只有更好!
越南-叶子

fwj3861  [个人空间]
QQ名  叶子


注册  2010-09-09
发贴数  197
精华贴  8
原创贴  11
来自  越南
状态  正常

级别  贵宾
#2»发布于2021-12-18 10:23

脚本一。BOM记录编辑脚本 
extern change_obj; 
 
int func_f9_call() 

  gui_show("SpeedButton_Erase");//显示删除控件 
 // msg('f9 pressed'); 
  return 1; 
}; 
 
int func_show_win() 

  gui_disable("edit_Ext1");//扩展属性1不可编辑 
  gui_disable("ext_Ext5");//扩展属性5不可编辑 
  gui_disable("date_Ext6");//扩展属性6不可编辑 
  gui_disable("edit_Ext7");//扩展属性7不可编辑 
  gui_disable("edit_Ext8");//扩展属性8不可编辑 
  gui_disable("Edit_Bom_Id");//BOM编号不可编辑 
  gui_disable("Edit_Bom_Name");//BOM名称不可编辑 
  gui_disable("Memo_Note_Info");//BOM备注不可编辑 
  gui_disable("ComboBox_Ext_Bom_Type");//BOM目录不可编辑 
  menu_create_popup("SpeedButton_Save",'my');//添加保存控件右键菜单 
  menu_add_csp('my',0,'item_r1un_a_csp','修改','a_csp');//保存控件右键菜单命名:修改,点击执行脚本a_csp 
  gui_hide("SpeedButton_Erase");//隐藏删除控件 
  grid_mark_readonly("MG_Composing","base_num")//BOM基本数量列不可编辑 
  grid_mark_readonly("MG_Composing","waste_factor")//BOM损耗率列不可编辑 
  grid_mark_readonly("MG_Composing","num")//BOM数量列不可编辑 
  grid_mark_readonly("MG_Composing","emf_process_name")//BOM工序列不可编辑 
  grid_mark_readonly("MG_Composing","note_info")//BOM描述信息列不可编辑 
  grid_mark_readonly("MG_Composing","ext_2")//BOM自定义2(BOM编号)不可编辑 
  grid_mark_readonly("MG_Composing","ext_3")//BOM自定义3(BOM版本日期)不可编辑 
 
  grid_mark_readonly("MG_Composing","res_id")//BOM物资代码列不可编辑 

  //msg('show win'); 
  return 1; 
}; 
 
int func_create_rec() 

  gui_enable("ext_Ext2");//显示扩展属性2(成品名称) 
  gui_enable("ext_Ext3");//显示扩展属性3(BOM版本) 
  gui_enable("date_Ext4");//显示扩展属性4(版本日期) 
  gui_enable("Memo_Note_Info");//显示BOM备注 
  gui_disable("edit_Ext1");//扩展属性1(成品料号)不可编辑 
  gui_disable("ext_Ext5");//扩展属性5(更新人)不可编辑 
  gui_disable("date_Ext6");//扩展属性6(更新日期)不可编辑 
  gui_disable("edit_Ext7");//扩展属性7(更新时刻)不可编辑 
  gui_disable("edit_Ext8");//扩展属性8(间隔天数)不可编辑 
  gui_disable("Edit_Bom_Id");//BOM编号不可编辑 
  gui_disable("Edit_Bom_Name");//BOM名称不可编辑 
  gui_disable("ComboBox_Ext_Bom_Type");//BOM目录不可编辑 
  gui_hide("SpeedButton_Erase");//隐藏删除控件 
  //msg('create rec'); 
  return 1; 
}; 
 
int func_edit_rec() 

 
  //msg('edit rec'); 
  return 1; 
}; 
 
int func_delete_rec() 

  //msg('delete rec'); 
  //can_delete=1; 
  return 1; 
}; 
 
int func_save_rec() 

  int grid_rc,i; 
  string v_bb,v_cpmc,v_cpmc2,v_bmbh,v_gx,v_wlbh,v_wlmc,v_bomrq; 
  v_cpmc = gui_get_val("ext_Ext2");//获取成品编号 
  v_cpmc2 = gui_get_text("ext_Ext2");//获取成品名称 
  v_bb = gui_get_text("ext_Ext3");//版本号 
  v_bmbh = gui_get_val("Edit_Bom_Id");//BOM编号 
  v_bomrq = gui_get_val("date_Ext4");//版本日期 
  gui_set_val("edit_Ext1",v_cpmc)//扩展属性1(成品编号)赋值 
  gui_set_val("Edit_Bom_Id",v_cpmc + '*' + v_bb)//BOM编号赋值 
  gui_set_val("Edit_Bom_Name",v_cpmc2)//BOM名称赋值 
  grid_sort("MG_Composing","ext_1")//BOM自定义一(序号)列排序 
  grid_rc= grid_find("MG_Composing",'res_name',''); 
  for(i=1;i<grid_rc;i++) 
  { 
    v_gx = grid_get_v('MG_Composing',"emf_process_name",i)//工序 
    v_wlbh = grid_get_v('MG_Composing',"res_id",i)//物资代码 
    v_wlmc = grid_get_v('MG_Composing',"res_name",i)//物资名称 
 
    grid_set_v("MG_Composing","ext_2",i,v_bmbh);//BOM自定义二(BOM编号)赋值 
    grid_trigger_change("MG_Composing","ext_2",i); 
    grid_set_v("MG_Composing","ext_3",i,v_bomrq); //BOM自定义三(BOM版本日期)赋值 
    grid_trigger_change("MG_Composing","ext_3",i); 
    if(v_gx == '') 
    { 
     msg('物料编号:'+v_wlbh+'; 物料名称:'+v_wlmc+' ......工序没有定义,请补齐工序之后再保存!') 
     can_save=0; 
     }; 
   }; 
//当BOM创建人和更新人不是同一人,或创建人和更新人为同一人且在超过当日之后保存单据时给扩展属性5-8赋相应值 
  string v,v1,c1,c2,v_jgts,v_fwqrq,v_dqsk; 
  v_fwqrq = get_cur_date();//获取服务器日期 
  v_dqsk = get_cur_time();//获取当前时刻 
  c1 = get_user_id();//获取登录操作员账号 c2 = fmt_time(get_cur_date_std(),"yyyymmdd")//格式化当前日期 
   v = gui_get_val("Edit_Bom_Id");//获取BOM编号 
   v = "select create_date from res_bom where bom_id = '" + v + "'";//根据BOM编号在res_bom表查找创建日期 
     // dbg(v); 
      db_run(v); 
      v = db_res(0); 
 
   v1 = "select create_user_id from res_bom where bom_id = '" + v + "'";//根据BOM编号在res_bom表查找创建人 
     // dbg(v1); 
      db_run(v1); 
      v1 = db_res(0); 
    v_jgts = get_day_between(v,c2)//计算创建日期和当前日期的天数(间隔天数) 
    //dbg(v_jgts) 
if(v_jgts > 0 || c1 != v1)//当间隔天数大于0或者创建人不是当前操作员(更新人)时 

  gui_set_val("ext_Ext5",c1)//扩展属性5(更新人)赋值 
  gui_set_val("date_Ext6",v_fwqrq)//扩展属性6(更新日期)赋值 
  gui_set_val("edit_Ext7",v_dqsk)//扩展属性7(更新时刻)赋值 
  gui_set_val("edit_Ext8",v_jgts)//扩展属性8(间隔天数)赋值 
}; 
  gui_disable("edit_Ext1");//扩展属性1(成品料号)不可编辑 
  gui_disable("ext_Ext2");//扩展属性2(成品名称)不可编辑 
  gui_disable("ext_Ext3");//扩展属性3(版本号)不可编辑 
  gui_disable("date_Ext4");//扩展属性4(版本日期)不可编辑 
  gui_disable("ext_Ext5");//扩展属性5(更新人)不可编辑 
  gui_disable("date_Ext6");//扩展属性6(更新日期)不可编辑 
  gui_disable("edit_Ext7");//扩展属性7(更新时刻)不可编辑 
  gui_disable("edit_Ext8");//扩展属性8(间隔天数)不可编辑 
  gui_disable("Edit_Bom_Id");//BOM编号不可编辑 
  gui_disable("Edit_Bom_Name");//BOM名称不可编辑 
  gui_disable("ComboBox_Ext_Bom_Type");//BOM目录不可编辑 
  gui_disable("ComboBox_Ext_State");//BOM状态不可编辑 
  gui_disable("Memo_Note_Info");//BOM备注不可编辑 
 }; 
  //msg('save rec'); 
  //can_save=1; 
  return 1; 
}; 
 
int func_after_save() 

 
  //msg('after save rec'); 
  return 1; 
}; 
 
int func_after_delete() 

  //msg('after delete rec'); 
  return 1; 
}; 
 
int obj_change() 

if(change_obj ==  "ext_Ext2"||change_obj ==  "ext_Ext3")//当扩展属性2(成品名称)或扩展属性3(版本号)内容变化时 
 { 
  string v_bb,v_cpmc,v_cpmc2,v,v1; 
  v_cpmc = gui_get_val("ext_Ext2");//获取成品料号 
  v_cpmc2 = gui_get_text("ext_Ext2");//获取成品名称 
  v_bb = gui_get_text("ext_Ext3");//版本号 
  gui_set_val("edit_Ext1",v_cpmc)//成品料号赋值 
  gui_set_val("Edit_Bom_Id",v_cpmc + '*' + v_bb)//BOM编号赋值 
  gui_set_val("Edit_Bom_Name",v_cpmc2)//BOM名称赋值 
      v = gui_get_val("ext_Ext2"); 
      v = "select res_desc from res where res_id = '" + v + "'";//根据成品料号从产品资料表获取其他描述 
    //  dbg(v); 
      db_run(v); 
      v = db_res(0); 
   gui_set_val("Memo_Note_Info",v)//将产品资料的其他描述赋值到BOM备注 
 
 }; 
  //msg('obj change'); 
  //change_obj 
  return 1; 
}; 
 
int func_duplicate_rec() 

  //msg('duplicate rec'); 
  return 1; 
};


        于 2021-12-18 10:23 被 fwj3861 修改




没有最好,只有更好!
越南-叶子

fwj3861  [个人空间]
QQ名  叶子


注册  2010-09-09
发贴数  197
精华贴  8
原创贴  11
来自  越南
状态  正常

级别  贵宾
#3»发布于2021-12-17 17:29

脚本二,a_csp脚本 
int test() 

  return 1; 
}; 
 
int main() 

  string v,v1,c1,c2,v_jgts,v_czy,v_fwqrq,v_dqsk; 
  v_czy = get_user_id(); 
  v_fwqrq = get_cur_date(); 
  v_dqsk = get_cur_time(); 
  c1 = get_user_id(); 
  c2 = fmt_time(get_cur_date_std(),"yyyymmdd") 
   v = gui_get_val("Edit_Bom_Id"); 
   v = "select create_date from res_bom where bom_id = '" + v + "'"; 
     // dbg(v); 
      db_run(v); 
      v = db_res(0); 
   v1 = "select create_user_id from res_bom where bom_id = '" + v + "'"; 
     // dbg(v1); 
      db_run(v1); 
      v1 = db_res(0); 
    v_jgts = get_day_between(v,c2) 
    //dbg(v_jgts) 
    if(v_jgts > 0 || c1 != v1){ 
  gui_set_val("ext_Ext5",v_czy) 
  gui_set_val("date_Ext6",v_fwqrq) 
  gui_set_val("edit_Ext7",v_dqsk) 
  gui_set_val("edit_Ext8",v_jgts)}; 
  gui_disable("ext_Ext5"); 
  gui_disable("date_Ext6"); 
  gui_disable("edit_Ext7"); 
  gui_disable("edit_Ext8"); 
  gui_disable("Edit_Bom_Id"); 
  gui_disable("Edit_Bom_Name"); 
  gui_disable("Edit_Ext1"); 
  gui_disable("Edit_Bom_Id"); 
  gui_disable("ComboBox_Ext_Bom_Type"); 
  gui_enable("ext_Ext2"); 
  gui_enable("ext_Ext3"); 
  gui_enable("date_Ext4"); 
  gui_enable("ComboBox_Ext_State"); 
  gui_enable("Memo_Note_Info"); 
  grid_unmark_readonly("MG_Composing","base_num") 
  grid_unmark_readonly("MG_Composing","waste_factor") 
  grid_unmark_readonly("MG_Composing","num") 
  grid_unmark_readonly("MG_Composing","emf_process_name") 
  grid_unmark_readonly("MG_Composing","note_info") 
  grid_unmark_readonly("MG_Composing","res_id") 
 
  return 1; 
};


        于 2021-12-17 17:29 被 fwj3861 修改




没有最好,只有更好!
越南-叶子

fwj3861  [个人空间]
QQ名  叶子


注册  2010-09-09
发贴数  197
精华贴  8
原创贴  11
来自  越南
状态  正常

级别  贵宾
#4»发布于2021-12-17 15:41

脚本三,产品资料记录编辑脚本 
int func_f9_call() 

  gui_show("SpeedButton_Erase");//显示删除控件 
  //msg('f9 pressed'); 
  return 1; 
}; 
 
int func_show_win() 

  gui_hide("SpeedButton_Erase");//隐藏删除控件 
//锁定产品组成明细列,只能从BOM清单导入 
 grid_mark_readonly('MG_Composing',"res_id") 
 grid_mark_readonly('MG_Composing',"base_num") 
 grid_mark_readonly('MG_Composing',"waste_factor") 
 grid_mark_readonly('MG_Composing',"num") 
 grid_mark_readonly('MG_Composing',"ext_1") 
 grid_mark_readonly('MG_Composing',"ext_2") 
 grid_mark_readonly('MG_Composing',"ext_3") 
 grid_mark_readonly('MG_Composing',"emf_process_name") 
 grid_mark_readonly('MG_Composing',"note_info")} 
  //msg('show win'); 
  return 1; 
}; 
 
int func_create_rec() 

 gui_hide("SpeedButton_Erase");//隐藏删除控件 
//锁定产品组成明细列,只能从BOM清单导入 
 grid_mark_readonly('MG_Composing',"res_id") 
 grid_mark_readonly('MG_Composing',"base_num") 
 grid_mark_readonly('MG_Composing',"waste_factor") 
 grid_mark_readonly('MG_Composing',"num") 
 grid_mark_readonly('MG_Composing',"ext_1") 
 grid_mark_readonly('MG_Composing',"ext_2") 
 grid_mark_readonly('MG_Composing',"ext_3") 
 grid_mark_readonly('MG_Composing',"emf_process_name") 
 grid_mark_readonly('MG_Composing',"note_info") 
  //msg('create rec'); 
  return 1; 
}; 
 
int func_edit_rec() 

//锁定产品组成明细列,只能从BOM清单导入 
grid_mark_readonly('MG_Composing',"res_id") 
 grid_mark_readonly('MG_Composing',"base_num") 
 grid_mark_readonly('MG_Composing',"waste_factor") 
 grid_mark_readonly('MG_Composing',"num") 
 grid_mark_readonly('MG_Composing',"ext_1") 
 grid_mark_readonly('MG_Composing',"ext_2") 
 grid_mark_readonly('MG_Composing',"ext_3") 
 grid_mark_readonly('MG_Composing',"emf_process_name") 
 grid_mark_readonly('MG_Composing',"note_info") 
  //msg('edit rec'); 
  return 1; 
}; 
 
int func_delete_rec() 

  //msg('delete rec'); 
  //can_delete=1; 
  return 1; 
}; 
 
int func_save_rec() 

  int i,rc,pos; 
  string vbatch,vgckh,vcpbh,vcpxz; 
  rc = grid_row_num("MG_Composing"); 
  vcpbh = gui_get_val("Edit_Res_Id") 
  vcpxz = gui_get_val("ComboBox_Ext_Res_Kind") 
    vbatch = grid_get_v("MG_Composing","ext_2",1); 
    str_lst_to_db(str_replace(vbatch,"*",","));//获取BOM编号内的成品料号 
    //db_show(); 
    db_go_head(); 
    vgckh = db_res(0); 
if(vgckh !=''&&vcpbh != vgckh) 

     msg('警告:导入的BOM清单错误,请重新导入 !') 
     msg('应导入的BOM清单:'+vcpbh+'; 实际导入的BOM清单:'+vgckh) 
can_save=0 
}; 
  //msg('save rec'); 
  //can_save=1; 
  return 1; 
}; 
 
int func_after_save() 

  //msg('after save rec'); 
  return 1; 
}; 
 
int func_after_delete() 

  //msg('after delete rec'); 
  return 1; 
}; 
 
int obj_change() 

  //msg('obj change'); 
  //change_obj 
  return 1; 
}; 
 
int func_duplicate_rec() 

  //msg('duplicate rec'); 
  return 1; 
}; 
 
string change_col,change_col_id,change_row_id; 
int bom_cell_change() 

  //msg('bom_cell_change'); 
  return 1; 
};


        于 2021-12-17 15:41 被 fwj3861 修改




没有最好,只有更好!
越南-叶子

dragonzsp  [个人空间]


注册  2011-03-25
发贴数  121
精华数  0
原创贴  4
来自  温州
状态  正常

级别  贵宾
#5»发布于2021-12-17 16:04

麦总威武,终于雄起了






耳环收费教程地址链接:http://www.onlyit.cn/topic_list_detail?subject_id=7&topic_id=102140&topic_page_id=1

AGF  [个人空间]


注册  2010-05-16
发贴数  135
精华数  0
原创贴  0
来自  
状态  正常

级别  会员
#6»发布于2021-12-18 09:26

在论坛上从叶子身上学到了不少东西,也得到了不少叶子的帮助,能分享脚本的越来越少了,能这样一直坚持做下的也 
没几个人,一直以为叶子是个女的!!




fwj3861  [个人空间]
QQ名  叶子


注册  2010-09-09
发贴数  197
精华贴  8
原创贴  11
来自  越南
状态  正常

级别  贵宾
#7»发布于2021-12-18 10:14

过奖了,我也是在和常德老师和十二老师的合作中学到了一点皮毛,感谢2位老师的耐心指导。一般情况下我都是申请公司付费找2位老师定制服务的


        于 2021-12-18 10:14 被 fwj3861 修改




没有最好,只有更好!
越南-叶子


 7  1/1   1  

登录后方可发贴


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