$PBExportHeader$w_saletask_import.srw forward global type w_saletask_import from w_publ_base end type type r_bar from rectangle within w_saletask_import end type type cb_del from uo_imflatbutton within w_saletask_import end type type cb_edit from uo_imflatbutton within w_saletask_import end type type cb_import from uo_imflatbutton within w_saletask_import end type type cb_accept from uo_imflatbutton within w_saletask_import end type type cb_reflash from uo_imflatbutton within w_saletask_import end type type cbx_1 from checkbox within w_saletask_import end type type cb_p_edit from uo_imflatbutton within w_saletask_import end type type st_1 from statictext within w_saletask_import end type type cb_cus from uo_imflatbutton within w_saletask_import end type type ddlb_scid from uo_ddlb_scid within w_saletask_import end type type ln_bar from line within w_saletask_import end type type ln_bar2 from line within w_saletask_import end type type ln_1 from line within w_saletask_import end type type ln_2 from line within w_saletask_import end type type dw_1 from u_dw_rbtnfilter within w_saletask_import end type type ddlb_acpt from dropdownlistbox within w_saletask_import end type type cbx_acpt from checkbox within w_saletask_import end type type cbx_priceflag from checkbox within w_saletask_import end type type ddlb_im_type from dropdownlistbox within w_saletask_import end type type st_2 from statictext within w_saletask_import end type type sle_userid from singlelineedit within w_saletask_import end type type cb_selectuser from uo_imflatbutton within w_saletask_import end type type cb_export from uo_imflatbutton within w_saletask_import end type type cbx_withother from checkbox within w_saletask_import end type type cb_newprice from uo_imflatbutton within w_saletask_import end type type cbx_checkaddress from checkbox within w_saletask_import end type type em_1 from editmask within w_saletask_import end type type pb_em1 from picturebutton within w_saletask_import end type type st_4 from statictext within w_saletask_import end type type em_2 from editmask within w_saletask_import end type type pb_em2 from picturebutton within w_saletask_import end type type pb_2 from picturebutton within w_saletask_import end type type st_taskdate from statictext within w_saletask_import end type type ln_3 from line within w_saletask_import end type type ln_4 from line within w_saletask_import end type type ln_5 from line within w_saletask_import end type type ln_6 from line within w_saletask_import end type end forward shared variables end variables global type w_saletask_import from w_publ_base integer y = 388 integer width = 3825 integer height = 2128 string title = "销售订单导入" boolean maxbox = true boolean resizable = true windowstate windowstate = maximized! event ue_xml_import ( ) event ue_f8 ( ) event ue_f9 ( ) event ue_p_cus ( ) event ue_p_mtrl ( ) event ue_taobao_import ( ) event ue_new_cust ( ) event ue_xls_import ( ) event ue_xls_import_sny ( ) event ue_jindong_import ( ) event ue_accept_saletask ( ) event ue_select_user ( ) event ue_custitle_doubleclicked ( ) event ue_xls_export_title ( ) event ue_xls_export_data ( ) event ue_retrieve_newprice ( ) event ue_csv_import ( ) event ue_new_cust_p ( ) event ue_date1 ( ) event ue_date2 ( ) event ue_date3 ( ) event ue_p_cus_taobao ( ) event ue_taobao_import_new ( ) event ue_xls_import_jiayun ( ) r_bar r_bar cb_del cb_del cb_edit cb_edit cb_import cb_import cb_accept cb_accept cb_reflash cb_reflash cbx_1 cbx_1 cb_p_edit cb_p_edit st_1 st_1 cb_cus cb_cus ddlb_scid ddlb_scid ln_bar ln_bar ln_bar2 ln_bar2 ln_1 ln_1 ln_2 ln_2 dw_1 dw_1 ddlb_acpt ddlb_acpt cbx_acpt cbx_acpt cbx_priceflag cbx_priceflag ddlb_im_type ddlb_im_type st_2 st_2 sle_userid sle_userid cb_selectuser cb_selectuser cb_export cb_export cbx_withother cbx_withother cb_newprice cb_newprice cbx_checkaddress cbx_checkaddress em_1 em_1 pb_em1 pb_em1 st_4 st_4 em_2 em_2 pb_em2 pb_em2 pb_2 pb_2 st_taskdate st_taskdate ln_3 ln_3 ln_4 ln_4 ln_5 ln_5 ln_6 ln_6 end type global w_saletask_import w_saletask_import type variables long ins_child = 47 long ins_child_min = 3 uo_saletask_import ins_saletask_import uo_ljlib_taobao_comapp ins_comapp /////////////////////////////////////////////// oleobject ins_taobao boolean ins_create = false boolean ins_connected = false boolean ins_inited = false s_eb_user ins_user end variables forward prototypes public subroutine wf_face () public function integer wf_save (ref string arg_msg) public function integer wf_del (ref string arg_msg) public subroutine wf_selectall () public function integer wf_from_ole (ref s_saletask_import arg_s_import, oleobject arg_import, ref string arg_msg) public function integer wf_taobao_haspower (ref string arg_msg) public function integer days_in_month (integer month, integer year) end prototypes event ue_xml_import();Int rslt = 1 String arg_msg = '' String ls_path, ls_filename[] IF GetFileOpenName("请选择要导入的XML", ls_path, ls_filename[], "XML","XML文件(*.XML),*.XML") <> 1 THEN RETURN END IF String ls_filepath Long i IF UpperBound(ls_filename) = 1 THEN ls_path = Mid(ls_path, 1, Len(ls_path) - Len(ls_filename[1])) END IF IF Mid(ls_path, Len(ls_path)) <> '\' THEN ls_path = ls_path + '\' END IF s_saletask_import arr_import[] FOR i = 1 To UpperBound(ls_filename) ls_filepath = ls_path + ls_filename[i] IF ins_saletask_import.uf_xml_to_import(ls_filepath, arr_import, arg_msg) <> 1 THEN rslt = 0 GOTO ext END IF NEXT FOR i = 1 To UpperBound(arr_import) IF ins_saletask_import.uf_save_saletask_import(arr_import[i], arg_msg, False) <> 1 THEN rslt = 0 GOTO ext END IF NEXT ext: IF rslt = 1 THEN COMMIT; MessageBox('OK', '导入成功') cb_reflash.TriggerEvent(Clicked!) ELSE ROLLBACK; OpenWithParm(w_message_err, arg_msg) END IF end event event ue_f8();IF Not dw_edit_mode THEN RETURN Long ll_row ll_row = dw_1.GetRow() IF ll_row <= 0 THEN RETURN s_edit_index_tran s_tranf8 //传递参数使用 s_tranf8.if_retrieve_all = False //是否一次RETRIEVE所有行 s_tranf8.work_mode = 1 //0-单纯编辑模式 1-选择\编辑模式 s_tranf8.arg_pkid = 0 //目标定位PKID (备用) s_tranf8.arg_string_code = '' //查询列(物料编码)部分内容,用于初步筛选 s_tranf8.if_select_all = False //多选 s_tranf8.b_long = -1 //选采购 s_tranf8.c_long = -1 s_tranf8.f_long = -1 s_tranf8.g_long = -1 s_tranf8.arg_string_code = dw_1.Object.realmtrlcode[ll_row] OpenWithParm(W_mtrldef_edit,s_tranf8) //调用 s_mtrldef_array S_INSCUST IF ClassName(Message.PowerObjectParm) <> 's_mtrldef_array' THEN RETURN S_INSCUST = Message.PowerObjectParm //接受返回结构 IF UpperBound(S_INSCUST.mtrlid) <= 0 THEN RETURN IF S_INSCUST.mtrlid[1] <= 0 THEN RETURN dw_1.Object.mtrlid[ll_row] = S_INSCUST.mtrlid[1] dw_1.Object.realmtrlcode[ll_row] = S_INSCUST.mtrlcode[1] dw_1.Object.realmtrlname[ll_row] = S_INSCUST.mtrlname[1] dw_1.Object.mtrlmode[ll_row] = S_INSCUST.mtrlmode[1] dw_1.Object.mtrlsectype[ll_row] = S_INSCUST.mtrlsectype[1] dw_1.Object.zxmtrlmode[ll_row] = S_INSCUST.zxmtrlmode[1] dw_1.Object.usermtrlmode[ll_row] = S_INSCUST.usermtrlmode[1] dw_1.Object.mtrldscrp[ll_row] = S_INSCUST.dscrp[1] end event event ue_f9();IF Not dw_edit_mode THEN RETURN Long ll_row ll_row = dw_1.GetRow() IF ll_row <= 0 THEN RETURN s_edit_index_tran s_ch_tran //传递参数使用 s_ch_tran.if_retrieve_all = False //是否一次RETRIEVE所有行 s_ch_tran.work_mode = 1 //0-单纯编辑模式 1-选择\编辑模式 s_ch_tran.arg_pkid = 0 //目标定位PKID (备用) //查询列(物料编码)部分内容,用于初步筛选 s_ch_tran.arg_string_code = dw_1.Object.realcuscode[ll_row] OpenWithParm(W_cust_edit,s_ch_tran) //调用 s_custom S_INSCUST IF ClassName(Message.PowerObjectParm) <> 's_custom' THEN RETURN S_INSCUST = Message.PowerObjectParm //接受返回结构 IF S_INSCUST.cusid <= 0 THEN RETURN dw_1.Object.cusid[ll_row] = S_INSCUST.cusid dw_1.Object.realcuscode[ll_row] = S_INSCUST.cuscode dw_1.Object.realcusname[ll_row] = S_INSCUST.Name dw_1.Object.assign_emp[ll_row] = S_INSCUST.bsntype dw_1.Object.upname[ll_row] = S_INSCUST.upname IF cbx_withother.Checked THEN dw_1.Object.cus_address[ll_row] = S_INSCUST.Address dw_1.Object.rel_rep[ll_row] = S_INSCUST.rep dw_1.Object.cus_tele[ll_row] = S_INSCUST.tele dw_1.Object.cus_fax[ll_row] = S_INSCUST.fax dw_1.Object.freight[ll_row] = S_INSCUST.freight dw_1.Object.freight_tele[ll_row] = S_INSCUST.freight_tele END IF String ls_relcode ls_relcode = dw_1.Object.relcode[ll_row] Long i IF ls_relcode <> '' THEN IF MessageBox('提问', '是否同时修改相关号[' + ls_relcode + ']选中的客户?', Question!, YesNo!) <> 1 THEN RETURN END IF FOR i = 1 To dw_1.RowCount() IF i = ll_row THEN CONTINUE IF dw_1.Object.ch[i] <> 1 THEN CONTINUE IF dw_1.Object.relcode[i] <> ls_relcode THEN CONTINUE dw_1.Object.cusid[i] = S_INSCUST.cusid dw_1.Object.realcuscode[i] = S_INSCUST.cuscode dw_1.Object.realcusname[i] = S_INSCUST.Name dw_1.Object.assign_emp[i] = S_INSCUST.bsntype dw_1.Object.upname[i] = S_INSCUST.upname IF cbx_withother.Checked THEN dw_1.Object.cus_address[i] = S_INSCUST.Address dw_1.Object.rel_rep[i] = S_INSCUST.rep dw_1.Object.cus_tele[i] = S_INSCUST.tele dw_1.Object.cus_fax[i] = S_INSCUST.fax dw_1.Object.freight[i] = S_INSCUST.freight dw_1.Object.freight_tele[i] = S_INSCUST.freight_tele END IF NEXT END IF end event event ue_p_cus();IF Not dw_edit_mode THEN RETURN s_edit_index_tran s_ch_tran //传递参数使用 s_ch_tran.if_retrieve_all = False //是否一次RETRIEVE所有行 s_ch_tran.work_mode = 1 //0-单纯编辑模式 1-选择\编辑模式 s_ch_tran.arg_pkid = 0 //目标定位PKID (备用) //查询列(物料编码)部分内容,用于初步筛选 s_ch_tran.arg_string_code = '' OpenWithParm(W_cust_edit,s_ch_tran) //调用 s_custom S_INSCUST S_INSCUST = Message.PowerObjectParm //接受返回结构 IF S_INSCUST.cusid <= 0 THEN RETURN Long ll_row FOR ll_row = 1 To dw_1.RowCount() IF dw_1.Object.ch[ll_row] = 1 THEN dw_1.Object.cusid[ll_row] = S_INSCUST.cusid dw_1.Object.realcuscode[ll_row] = S_INSCUST.cuscode dw_1.Object.realcusname[ll_row] = S_INSCUST.Name dw_1.Object.assign_emp[ll_row] = S_INSCUST.bsntype dw_1.Object.upname[ll_row] = S_INSCUST.upname IF cbx_withother.Checked THEN dw_1.Object.cus_address[ll_row] = S_INSCUST.Address dw_1.Object.rel_rep[ll_row] = S_INSCUST.rep dw_1.Object.cus_tele[ll_row] = S_INSCUST.tele dw_1.Object.cus_fax[ll_row] = S_INSCUST.fax dw_1.Object.freight[ll_row] = S_INSCUST.freight dw_1.Object.freight_tele[ll_row] = S_INSCUST.freight_tele END IF END IF NEXT end event event ue_p_mtrl();IF Not dw_edit_mode THEN RETURN s_edit_index_tran s_tranf8 //传递参数使用 s_tranf8.if_retrieve_all = False //是否一次RETRIEVE所有行 s_tranf8.work_mode = 1 //0-单纯编辑模式 1-选择\编辑模式 s_tranf8.arg_pkid = 0 //目标定位PKID (备用) s_tranf8.arg_string_code = '' //查询列(物料编码)部分内容,用于初步筛选 s_tranf8.if_select_all = False //多选 s_tranf8.b_long = -1 //选采购 s_tranf8.c_long = -1 s_tranf8.f_long = -1 s_tranf8.g_long = -1 OpenWithParm(W_mtrldef_edit,s_tranf8) //调用 s_mtrldef_array S_INSCUST IF ClassName(Message.PowerObjectParm) <> 's_mtrldef_array' THEN RETURN S_INSCUST = Message.PowerObjectParm //接受返回结构 IF UpperBound(S_INSCUST.mtrlid) <= 0 THEN RETURN IF S_INSCUST.mtrlid[1] <= 0 THEN RETURN Long ll_row FOR ll_row = 1 To dw_1.RowCount() IF dw_1.Object.ch[ll_row] = 1 THEN dw_1.Object.mtrlid[ll_row] = S_INSCUST.mtrlid[1] dw_1.Object.realmtrlcode[ll_row] = S_INSCUST.mtrlcode[1] dw_1.Object.realmtrlname[ll_row] = S_INSCUST.mtrlname[1] END IF NEXT end event event ue_taobao_import();Int rslt = 1 String arg_msg = '' String ls_tids[] IF wf_taobao_haspower(arg_msg) <> 1 THEN MessageBox('提示', arg_msg) RETURN END IF s_saletask_import_taobao_option s_taobao_option Open(w_saletask_import_taobao_option_ch) s_taobao_option = Message.PowerObjectParm IF s_taobao_option.ifok <> 1 THEN RETURN ls_tids = ins_taobao.GetSoldTids(s_taobao_option.status, s_taobao_option.begindate, s_taobao_option.enddate) IF ins_saletask_import.uf_taobao_unload(Ref ls_tids, Ref arg_msg) <> 1 THEN rslt = 0 GOTO ext END IF MessageBox('', '有'+String(UpperBound(ls_tids))+'份订单要下载') IF UpperBound(ls_tids) <= 0 THEN RETURN Long i, j oleobject s_import_arr s_saletask_import arr_import[], s_tmp, s_empty[] Long k = 0 Long cnt String ls_msg String ls_alltids = '' FOR i = 1 To UpperBound(ls_tids) IF i = 1 THEN ls_alltids += ls_tids[i] ELSE ls_alltids += ','+ls_tids[i] END IF NEXT Open(w_sys_wait_jdt) //初始化进度条 w_sys_wait_jdt.Show() w_sys_wait_jdt.wf_accepttol(100) w_sys_wait_jdt.st_msg.Text = " 正在下载淘宝订单..." //进度信息 IF Not ins_taobao.GetTrades(ls_alltids, Ref s_import_arr, Ref ls_msg) THEN rslt = 0 IF arg_msg <> '' THEN arg_msg += '~r~n' END IF arg_msg += '下载订单失败,' + ls_msg GOTO ext END IF cnt = s_import_arr.GetCount() arr_import = s_empty k = 0 w_sys_wait_jdt.wf_accepttol(cnt) FOR j = 0 To cnt - 1 w_sys_wait_jdt.st_msg.Text = " 正在获取订单..." //进度信息 w_sys_wait_jdt.wf_inc(j+1) IF wf_from_ole(Ref s_tmp, s_import_arr.GetItem(j), Ref ls_msg) <> 1 THEN rslt = 0 IF arg_msg <> '' THEN arg_msg += '~r~n' END IF arg_msg += '获取订单'+ls_tids[i]+'-'+String(j)+'失败,' + ls_msg k = 0 EXIT END IF k++ arr_import[k] = s_tmp ins_saletask_import.uf_fill_taobao(Ref arr_import[k]) NEXT Destroy s_import_arr w_sys_wait_jdt.wf_accepttol(cnt) FOR i = 1 To k w_sys_wait_jdt.st_msg.Text = " 正在保存订单"+arr_import[i].tid+"..." //进度信息 w_sys_wait_jdt.wf_inc(i) IF ins_saletask_import.uf_save_saletask_import(arr_import[i], ls_msg, True) <> 1 THEN rslt = 0 IF arg_msg <> '' THEN arg_msg += '~r~n' END IF arg_msg += '保存订单'+arr_import[i].tid+'失败,'+ls_msg + "~r~n"; END IF NEXT //FOR i = 1 To UpperBound(ls_tids) // // w_sys_wait_jdt.st_msg.Text = ls_tids[i] + " 正在下载..." //进度信息 // w_sys_wait_jdt.wf_inc(i) // // TRY // IF Not ins_taobao.GetTrade(ls_tids[i], Ref s_import_arr, Ref ls_msg) THEN // rslt = 0 // IF arg_msg <> '' THEN // arg_msg += '~r~n' // END IF // arg_msg += '下载订单'+ls_tids[i]+'失败,' + ls_msg // CONTINUE // END IF // Catch (throwable ex) // rslt = 0 // IF arg_msg <> '' THEN // arg_msg += '~r~n' // END IF // arg_msg += '下载订单'+ls_tids[i]+'失败,' + ex.Text // CONTINUE // END TRY // cnt = s_import_arr.GetCount() // arr_import = s_empty // k = 0 // // FOR j = 0 To cnt - 1 // IF wf_from_ole(Ref s_tmp, s_import_arr.GetItem(j), Ref ls_msg) <> 1 THEN // rslt = 0 // IF arg_msg <> '' THEN // arg_msg += '~r~n' // END IF // arg_msg += '获取订单'+ls_tids[i]+'-'+String(j)+'失败,' + ls_msg // k = 0 // EXIT // END IF // k++ // arr_import[k] = s_tmp // ins_saletask_import.uf_fill_taobao(Ref arr_import[k]) // NEXT // Destroy s_import_arr // // // FOR i = 1 To k // IF ins_saletask_import.uf_save_saletask_import(arr_import[i], ls_msg, True) <> 1 THEN // rslt = 0 // IF arg_msg <> '' THEN // arg_msg += '~r~n' // END IF // arg_msg += '获取订单'+arr_import[i].tid+'失败,'+ls_msg + "~r~n"; // END IF // NEXT // //NEXT // ext: IF IsValid(w_sys_wait_jdt) THEN Close(w_sys_wait_jdt) END IF IF rslt = 1 THEN MessageBox('OK', '导入成功') cb_reflash.TriggerEvent(Clicked!) ELSE OpenWithParm(w_message_err, arg_msg) cb_reflash.TriggerEvent(Clicked!) END IF end event event ue_new_cust();IF Not dw_edit_mode THEN RETURN IF dw_1.AcceptText() <> 1 THEN RETURN Long ll_row ll_row = dw_1.GetRow() IF ll_row <= 0 THEN RETURN s_edit_index_tran s_ch_tran //传递参数使用 s_ch_tran.if_retrieve_all = False //是否一次RETRIEVE所有行 s_ch_tran.work_mode = 1 //0-单纯编辑模式 1-选择\编辑模式 s_ch_tran.arg_pkid = 0 //目标定位PKID (备用) s_custom s_tran_cust s_ch_tran.d_long = 1 s_tran_cust.cuscode = dw_1.Object.cuscode[ll_row] s_tran_cust.name = dw_1.Object.cusname[ll_row] s_tran_cust.custype = dw_1.Object.assign_emp[ll_row] s_tran_cust.upname = dw_1.Object.upname[ll_row] s_tran_cust.rep = dw_1.Object.rel_rep[ll_row] s_tran_cust.tele = dw_1.Object.cus_tele[ll_row] s_tran_cust.tele1 = '' s_tran_cust.fax = dw_1.Object.cus_fax[ll_row] s_tran_cust.Address = dw_1.Object.cus_address[ll_row] s_tran_cust.freight = dw_1.Object.freight[ll_row] s_tran_cust.freight_tele = dw_1.Object.freight_tele[ll_row] s_tran_cust.moneyid = dw_1.Object.moneyid[ll_row] s_tran_cust.banktypeid = dw_1.Object.banktypeid[ll_row] s_ch_tran.a_any = s_tran_cust OpenWithParm(W_cust_edit,s_ch_tran) //调用 IF dw_edit_mode THEN s_custom S_INSCUST S_INSCUST = Message.PowerObjectParm //接受返回结构 IF S_INSCUST.cusid <= 0 THEN RETURN dw_1.Object.cusid[ll_row] = S_INSCUST.cusid dw_1.Object.realcuscode[ll_row] = S_INSCUST.cuscode dw_1.Object.realcusname[ll_row] = S_INSCUST.Name dw_1.Object.assign_emp[ll_row] = S_INSCUST.bsntype dw_1.Object.upname[ll_row] = S_INSCUST.upname IF cbx_withother.Checked THEN dw_1.Object.cus_address[ll_row] = S_INSCUST.Address dw_1.Object.rel_rep[ll_row] = S_INSCUST.rep dw_1.Object.cus_tele[ll_row] = S_INSCUST.tele dw_1.Object.cus_fax[ll_row] = S_INSCUST.fax dw_1.Object.freight[ll_row] = S_INSCUST.freight dw_1.Object.freight_tele[ll_row] = S_INSCUST.freight_tele END IF String ls_relcode ls_relcode = dw_1.Object.relcode[ll_row] Long i IF ls_relcode <> '' THEN IF MessageBox('提问', '是否同时修改相关号[' + ls_relcode + ']选中的客户?', Question!, YesNo!) <> 1 THEN RETURN END IF FOR i = 1 To dw_1.RowCount() IF i = ll_row THEN CONTINUE IF dw_1.Object.ch[i] <> 1 THEN CONTINUE IF dw_1.Object.relcode[i] <> ls_relcode THEN CONTINUE dw_1.Object.cusid[i] = S_INSCUST.cusid dw_1.Object.realcuscode[i] = S_INSCUST.cuscode dw_1.Object.realcusname[i] = S_INSCUST.Name dw_1.Object.assign_emp[i] = S_INSCUST.bsntype dw_1.Object.upname[i] = S_INSCUST.upname IF cbx_withother.Checked THEN dw_1.Object.cus_address[i] = S_INSCUST.Address dw_1.Object.rel_rep[i] = S_INSCUST.rep dw_1.Object.cus_tele[i] = S_INSCUST.tele dw_1.Object.cus_fax[i] = S_INSCUST.fax dw_1.Object.freight[i] = S_INSCUST.freight dw_1.Object.freight_tele[i] = S_INSCUST.freight_tele END IF NEXT END IF END IF end event event ue_xls_import();Int rslt = 1 String arg_msg = '' String ls_path, ls_filename IF GetFileOpenName("请选择要导入的Excel文件", ls_path, ls_filename, "XLS","Excel文件(*.XLS),*.XLS") <> 1 THEN RETURN END IF Long i s_saletask_import arr_import[] IF ins_saletask_import.uf_xls_to_import(ls_path, arr_import, arg_msg) <> 1 THEN rslt = 0 GOTO ext END IF String ls_msg FOR i = 1 To UpperBound(arr_import) IF ins_saletask_import.uf_save_saletask_import(arr_import[i], Ref ls_msg, True) <> 1 THEN rslt = 0 IF arg_msg <> '' THEN arg_msg += '~r~n' END IF arg_msg += '第'+String(i)+'行'+arr_import[i].relcode+'保存失败,' + ls_msg END IF NEXT ext: IF rslt = 1 THEN COMMIT; MessageBox('OK', '导入成功') cb_reflash.TriggerEvent(Clicked!) ELSE ROLLBACK; OpenWithParm(w_message_err, arg_msg) END IF end event event ue_xls_import_sny();Int rslt = 1 String arg_msg = '' String ls_path, ls_filename IF GetFileOpenName("请选择要导入的Excel文件", ls_path, ls_filename, "XLS","Excel文件(*.XLS),*.XLS") <> 1 THEN RETURN END IF Long i s_saletask_import arr_import[] IF ins_saletask_import.uf_xls_to_import_sny(ls_path, arr_import, arg_msg) <> 1 THEN rslt = 0 GOTO ext END IF String ls_msg FOR i = 1 To UpperBound(arr_import) IF ins_saletask_import.uf_save_saletask_import(arr_import[i], Ref ls_msg, True) <> 1 THEN rslt = 0 IF arg_msg <> '' THEN arg_msg += '~r~n' END IF arg_msg += '第'+String(i)+'行'+arr_import[i].relcode+'保存失败,' + ls_msg END IF NEXT ext: IF rslt = 1 THEN COMMIT; MessageBox('OK', '导入成功') cb_reflash.TriggerEvent(Clicked!) ELSE ROLLBACK; OpenWithParm(w_message_err, arg_msg) END IF end event event ue_accept_saletask();Long i String arg_msg = '' String im_ids[] Long cnt = 0 Long im_type = -1 FOR i = 1 To dw_1.RowCount() IF dw_1.Object.ch[i] <> 1 THEN CONTINUE cnt++ im_ids[cnt] = dw_1.Object.im_id[i] IF im_type = -1 THEN im_type = dw_1.Object.im_type[i] ELSE IF im_type <> dw_1.Object.im_type[i] THEN MessageBox('ERROR', '第' + String(i) + '行,外部订单类型不相同') RETURN END IF END IF NEXT IF UpperBound(im_ids) <= 0 THEN MessageBox('ERROR', '没有接受对象') RETURN END IF String ls_ids = '' Long acptcnt = 0 Long acptflag = 0 String ls_cus_address, ls_rel_rep, ls_cus_tele String ls_ids2 = '' FOR i = 1 To UpperBound(im_ids) acptflag = 0 SELECT accept_flag INTO :acptflag FROM eb_saletask_import WHERE im_type = :im_type And im_id = :im_ids[i]; IF sqlca.SQLCode <> 0 THEN MessageBox('ERROR', '查询外部订单状态失败,' + sqlca.SQLErrText) RETURN END IF IF acptflag = 1 THEN acptcnt++ IF acptcnt = 1 THEN ls_ids = im_ids[i] ELSE ls_ids += ',' + im_ids[i] END IF END IF IF cbx_checkaddress.Checked THEN SELECT cus_address,rel_rep, cus_tele INTO :ls_cus_address,:ls_rel_rep,:ls_cus_tele FROM eb_saletask_import WHERE im_type = :im_type And im_id = :im_ids[i]; IF sqlca.SQLCode <> 0 THEN MessageBox('ERROR', '查询外部订单状态失败,' + sqlca.SQLErrText) RETURN END IF IF ls_cus_address = '' Or ls_rel_rep = '' Or ls_cus_tele = '' THEN IF ls_ids2 = '' THEN ls_ids2 = im_ids[i] ELSE ls_ids2 += ',' + im_ids[i] END IF END IF END IF NEXT IF acptcnt > 0 THEN IF MessageBox('提问', '外部订单['+ls_ids+']已经接受了,是否再次接受?', question!, yesno!) <> 1 THEN RETURN END IF END IF IF cbx_checkaddress.Checked And ls_ids2 <> '' THEN IF MessageBox('提问', '外部订单['+ls_ids2+']收货人信息不全,是否继续接受?', question!, yesno!) <> 1 THEN RETURN END IF END IF Long ll_audit IF cbx_acpt.Checked THEN ll_audit = 1 ELSE ll_audit = 0 END IF Long ll_priceflag IF cbx_priceflag.Checked THEN ll_priceflag = 1 ELSE ll_priceflag = 0 END IF IF ins_saletask_import.uf_accepts(ddlb_scid.uo_scid, im_type, im_ids, ll_audit, ll_priceflag, arg_msg) <> 1 THEN OpenWithParm(w_message_err, arg_msg) cb_reflash.TriggerEvent(Clicked!) RETURN END IF OpenWithParm(w_message_err, arg_msg) cb_reflash.TriggerEvent(Clicked!) end event event ue_select_user();Long ins_im_type IF ddlb_im_type.Text = '其它' THEN ins_im_type = 0 ELSEIF ddlb_im_type.Text = '亚洲国际电商' THEN ins_im_type = 1 ELSEIF ddlb_im_type.Text = '淘宝' THEN ins_im_type = 5 ELSEIF ddlb_im_type.Text = '京东' THEN ins_im_type = 6 ELSE ins_im_type = -1 END IF s_eb_user s_ch OpenWithParm(w_eb_user_define_ch, ins_im_type) s_ch = Message.PowerObjectParm IF s_ch.UserID > 0 THEN ins_user = s_ch END IF IF ins_user.im_type = 0 THEN ddlb_im_type.Text = '其它' ELSEIF ins_user.im_type = 1 THEN ddlb_im_type.Text = '亚洲国际电商' ELSEIF ins_user.im_type = 5 THEN ddlb_im_type.Text = '淘宝' ELSEIF ins_user.im_type = 6 THEN ddlb_im_type.Text = '京东' ELSE ddlb_im_type.Text = '全部' END IF sle_userid.Text = ins_user.im_userid cb_reflash.triggerevent(clicked!) end event event ue_custitle_doubleclicked();IF Not dw_edit_mode THEN RETURN Long ll_cusid String ls_cuscode, ls_cusname, ls_emp, ls_upname Long ll_firstrow = 0 Long i String Address,rep,tele,fax,freight,freight_tele FOR i = 1 To dw_1.RowCount() IF dw_1.Object.ch[i] <> 1 THEN CONTINUE IF ll_firstrow = 0 THEN ll_firstrow = i ll_cusid = dw_1.Object.cusid[i] ls_cuscode = dw_1.Object.realcuscode[i] ls_cusname = dw_1.Object.realcusname[i] ls_emp = dw_1.Object.assign_emp[i] ls_upname = dw_1.Object.upname[i] Address = dw_1.Object.cus_address[i] rep = dw_1.Object.rel_rep[i] tele = dw_1.Object.cus_tele[i] fax = dw_1.Object.cus_fax[i] freight = dw_1.Object.freight[i] freight_tele = dw_1.Object.freight_tele[i] ELSE dw_1.Object.cusid[i] = ll_cusid dw_1.Object.realcuscode[i] = ls_cuscode dw_1.Object.realcusname[i] = ls_cusname dw_1.Object.assign_emp[i] = ls_emp dw_1.Object.upname[i] = ls_upname IF cbx_withother.Checked THEN dw_1.Object.cus_address[i] = Address dw_1.Object.rel_rep[i] = rep dw_1.Object.cus_tele[i] = tele dw_1.Object.cus_fax[i] = fax dw_1.Object.freight[i] = freight dw_1.Object.freight_tele[i] = freight_tele END IF END IF NEXT end event event ue_xls_export_title();Integer i String Pathname,Filename String arg_filename,arg_msg Blob arg_blob IF GetFileSaveName("选择备份文件",Pathname,Filename,'xls',"Excel,*.xls") <> 1 THEN RETURN arg_filename = Trim(Pathname) IF arg_filename = '' THEN MessageBox('提示','请输入文件名称', Information!, OK! ) RETURN END IF IF FileExists(arg_filename) THEN IF MessageBox("询问","指定文件已经存在,是否覆盖该文件?",question!,yesno!,2) = 2 THEN RETURN END IF END IF datastore arg_dw arg_dw = create datastore arg_dw.DataObject = 'dw_saletask_import_xls' arg_dw.SaveAsAscii(arg_filename) MessageBox('OK', '导出成功!') end event event ue_xls_export_data();Integer i String Pathname,Filename String arg_filename,arg_msg Blob arg_blob IF GetFileSaveName("选择备份文件",Pathname,Filename,'xls',"Excel,*.xls") <> 1 THEN RETURN arg_filename = Trim(Pathname) IF arg_filename = '' THEN MessageBox('提示','请输入文件名称', Information!, OK! ) RETURN END IF IF FileExists(arg_filename) THEN IF MessageBox("询问","指定文件已经存在,是否覆盖该文件?",question!,yesno!,2) = 2 THEN RETURN END IF END IF dw_1.SaveAsAscii(arg_filename) MessageBox('OK', '导出成功!') end event event ue_retrieve_newprice();IF dw_edit_mode THEN RETURN Long i Decimal ld_newprice Decimal ld_newrebate String arg_msg long ll_cnt = 0 FOR i = 1 To dw_1.RowCount() IF dw_1.Object.ch[i] = 1 THEN IF ins_saletask_import.uf_retrieve_newprice(dw_1.Object.im_type[i], dw_1.Object.im_id[i],Ref ld_newprice, Ref ld_newrebate, Ref arg_msg, True) = 1 THEN dw_1.Object.eb_saletask_import_new_price[i] = ld_newprice dw_1.Object.eb_saletask_import_new_rebate[i] = ld_newrebate ll_cnt++ END IF END IF NEXT MessageBox('提示', '已经更新了' + string(ll_cnt) + '条数据') end event event ue_csv_import();Int rslt = 1 String arg_msg = '' String ls_path, ls_filename IF GetFileOpenName("请选择要导入的csv文件", ls_path, ls_filename, "csv","csv文件(*.csv),*.csv") <> 1 THEN RETURN END IF Long i s_saletask_import arr_import[] IF ins_saletask_import.uf_csv_to_import(ls_path, arr_import, arg_msg) <> 1 THEN rslt = 0 GOTO ext END IF String ls_msg = '' FOR i = 1 To UpperBound(arr_import) IF IsNull(arr_import[i].im_id) Or arr_import[i].im_id = '' THEN rslt = 0 arg_msg += '订单编号'+arr_import[i].tid+'的采购单编号不存在~r~n' ELSE IF ins_saletask_import.uf_save_saletask_import(arr_import[i], ls_msg, True) <> 1 THEN rslt = 0 arg_msg += ls_msg + "~r~n"; END IF END IF NEXT ext: IF rslt = 1 THEN MessageBox('OK', '导入成功') cb_reflash.TriggerEvent(Clicked!) ELSE OpenWithParm(w_message_err, arg_msg) cb_reflash.TriggerEvent(Clicked!) END IF end event event ue_new_cust_p();IF Not dw_edit_mode THEN RETURN IF dw_1.AcceptText() <> 1 THEN RETURN s_saletask_import s_import, s_empty, s_import_arr[] Long cnt = 0 Long i String arg_msg FOR i = 1 To dw_1.RowCount() IF dw_1.Object.ch[i] <> 1 THEN CONTINUE s_import = s_empty s_import.im_type = dw_1.Object.im_type[i] s_import.im_id = dw_1.Object.im_id[i] s_import.moneyname = dw_1.Object.moneyname[i] s_import.moneyid = dw_1.Object.moneyid[i] s_import.mrate = dw_1.Object.mrate[i] s_import.taskdate = dw_1.Object.taskdate[i] s_import.tasktype = dw_1.Object.tasktype[i] s_import.typeid = dw_1.Object.typeid[i] s_import.cuscode = dw_1.Object.cuscode[i] s_import.cusname = dw_1.Object.cusname[i] s_import.level_str = dw_1.Object.level_str[i] s_import.Level = dw_1.Object.Level[i] s_import.cusid = dw_1.Object.cusid[i] s_import.cus_address = dw_1.Object.cus_address[i] s_import.rel_rep = dw_1.Object.rel_rep[i] s_import.cus_tele = dw_1.Object.cus_tele[i] s_import.cus_fax = dw_1.Object.cus_fax[i] s_import.freight = dw_1.Object.freight[i] s_import.freight_tele = dw_1.Object.freight_tele[i] s_import.assign_emp = dw_1.Object.assign_emp[i] s_import.upname = dw_1.Object.upname[i] s_import.banktype = dw_1.Object.banktype[i] s_import.banktypeid = dw_1.Object.banktypeid[i] s_import.damt = dw_1.Object.damt[i] s_import.relcode = dw_1.Object.relcode[i] s_import.paytype = dw_1.Object.paytype[i] s_import.otheramt = dw_1.Object.otheramt[i] s_import.dscrp2 = dw_1.Object.dscrp2[i] s_import.dscrp = dw_1.Object.dscrp[i] s_import.dscrp3 = dw_1.Object.dscrp3[i] s_import.outtypestr = dw_1.Object.outtypestr[i] s_import.mtrlcode = dw_1.Object.mtrlcode[i] s_import.mtrlname = dw_1.Object.mtrlname[i] s_import.mtrlid = dw_1.Object.mtrlid[i] s_import.unit = dw_1.Object.unit[i] s_import.saleqty = dw_1.Object.saleqty[i] s_import.pricetype = dw_1.Object.pricetype[i] s_import.enprice = dw_1.Object.enprice[i] s_import.rebate = dw_1.Object.rebate[i] s_import.taxrate = dw_1.Object.taxrate[i] s_import.requiredate = dw_1.Object.requiredate[i] s_import.status = dw_1.Object.status[i] s_import.woodcode = dw_1.Object.woodcode[i] s_import.pcode = dw_1.Object.pcode[i] s_import.mxdscrp = dw_1.Object.mxdscrp[i] s_import.mxdscrp2 = dw_1.Object.mxdscrp2[i] s_import.mtrlcuscode = dw_1.Object.mtrlcuscode[i] s_import.tid = dw_1.Object.tid[i] cnt++ s_import_arr[cnt] = s_import NEXT IF uo_saletask_spi.wf_new_cust_p(s_import_arr, arg_msg) <> 1 THEN IF arg_msg <> '' THEN MessageBox('ERROR', arg_msg) RETURN END IF END IF cb_reflash.TriggerEvent(Clicked!) end event event ue_date1();em_1.text = string(today(),"yyyy-mm-dd") em_2.text = string(today(),"yyyy-mm-dd") end event event ue_date2(); Int li_DayNum li_DayNum = DayNumber(Today()) em_1.Text = String(RelativeDate ( Today(), 1 - li_DayNum ),"yyyy-mm-dd") em_2.Text = String(RelativeDate ( Today(), 7 - li_DayNum ),"yyyy-mm-dd") end event event ue_date3(); Int li_Month, li_Year, li_Days li_Month = Month(Today()) li_Year = Year(Today()) li_Days = days_in_month(li_Month, li_Year) em_1.Text = String(Date(li_Year, li_Month, 1),"yyyy-mm-dd") em_2.Text = String(Date(li_Year, li_Month, li_Days),"yyyy-mm-dd") end event event ue_p_cus_taobao();// DONE: 批导入淘宝客地址 IF Not dw_edit_mode THEN RETURN String ls_path, ls_filename IF GetFileOpenName("请选择要导入的Excel文件", ls_path, ls_filename, "XLS","Excel文件(*.XLS),*.XLS") <> 1 THEN RETURN END IF Int rslt = 1 String arg_msg = '' Datastore ds_1 ds_1 = Create Datastore ds_1.DataObject = 'dw_saletask_import_tbaddress' IF f_xls_import_to_dw(ls_path, ds_1, arg_msg) <> 1 THEN rslt = 0 arg_msg = '导入Excel失败,' + arg_msg GOTO ext END IF Long i, ll_row, cnt = 0 String ls_nick FOR i = 1 To dw_1.RowCount() IF dw_1.Object.ch[i] <> 1 THEN CONTINUE END IF ls_nick = dw_1.Object.cuscode[i] ll_row = ds_1.Find("cuscode='"+ls_nick+"'", 1, ds_1.RowCount()) IF ll_row > 0 THEN cnt++ dw_1.Object.rel_rep[i] = ds_1.Object.rel_rep[ll_row] dw_1.Object.cus_address[i] = ds_1.Object.cus_address[ll_row] dw_1.Object.cus_tele[i] = ds_1.Object.cus_tele[ll_row] END IF NEXT ext: Destroy ds_1 IF rslt = 1 THEN MessageBox('OK', '导入成功,条数:' + String(cnt)) ELSE MessageBox('ERROR', arg_msg) END IF end event event ue_taobao_import_new();Int rslt = 1 String arg_msg = '' IF wf_taobao_haspower(arg_msg) <> 1 THEN MessageBox('提示', arg_msg) RETURN END IF s_saletask_import_taobao_option s_taobao_option Open(w_saletask_import_taobao_option_ch) s_taobao_option = Message.PowerObjectParm IF s_taobao_option.ifok <> 1 THEN RETURN Long i, j oleobject s_import_arr s_saletask_import arr_import[], s_tmp, s_empty[] Long k = 0 Long cnt String ls_msg IF Not ins_taobao.GetSoldTrades(s_taobao_option.status, s_taobao_option.begindate, s_taobao_option.enddate, ref s_import_arr, ref arg_msg) THEN rslt = 0 IF arg_msg <> '' THEN arg_msg += '~r~n' END IF arg_msg += '下载订单失败,' + ls_msg GOTO ext END IF cnt = s_import_arr.GetCount() MessageBox('提示', '共下载订单数:' + string(cnt)) Open(w_sys_wait_jdt) //初始化进度条 w_sys_wait_jdt.Show() w_sys_wait_jdt.wf_accepttol(100) w_sys_wait_jdt.st_msg.Text = " 正在匹配淘宝订单..." //进度信息 arr_import = s_empty k = 0 string ls_tid w_sys_wait_jdt.wf_accepttol(cnt) FOR j = 0 To cnt - 1 ls_tid = s_import_arr.GetItem(j).im_id w_sys_wait_jdt.st_msg.Text = " 正在匹配淘宝订单"+ls_tid+"..." //进度信息 w_sys_wait_jdt.wf_inc(j+1) IF wf_from_ole(Ref s_tmp, s_import_arr.GetItem(j), Ref ls_msg) <> 1 THEN rslt = 0 IF arg_msg <> '' THEN arg_msg += '~r~n' END IF arg_msg += '匹配淘宝订单'+ls_tid+'失败,' + ls_msg k = 0 EXIT END IF k++ arr_import[k] = s_tmp ins_saletask_import.uf_fill_taobao(Ref arr_import[k]) NEXT Destroy s_import_arr w_sys_wait_jdt.wf_accepttol(cnt) FOR i = 1 To k w_sys_wait_jdt.st_msg.Text = " 正在保存订单"+arr_import[i].im_id+"..." //进度信息 w_sys_wait_jdt.wf_inc(i) IF ins_saletask_import.uf_save_saletask_import(arr_import[i], ls_msg, True) <> 1 THEN rslt = 0 IF arg_msg <> '' THEN arg_msg += '~r~n' END IF arg_msg += '保存订单'+arr_import[i].im_id+'失败,'+ls_msg + "~r~n"; END IF NEXT //FOR i = 1 To UpperBound(ls_tids) // // w_sys_wait_jdt.st_msg.Text = ls_tids[i] + " 正在下载..." //进度信息 // w_sys_wait_jdt.wf_inc(i) // // TRY // IF Not ins_taobao.GetTrade(ls_tids[i], Ref s_import_arr, Ref ls_msg) THEN // rslt = 0 // IF arg_msg <> '' THEN // arg_msg += '~r~n' // END IF // arg_msg += '下载订单'+ls_tids[i]+'失败,' + ls_msg // CONTINUE // END IF // Catch (throwable ex) // rslt = 0 // IF arg_msg <> '' THEN // arg_msg += '~r~n' // END IF // arg_msg += '下载订单'+ls_tids[i]+'失败,' + ex.Text // CONTINUE // END TRY // cnt = s_import_arr.GetCount() // arr_import = s_empty // k = 0 // // FOR j = 0 To cnt - 1 // IF wf_from_ole(Ref s_tmp, s_import_arr.GetItem(j), Ref ls_msg) <> 1 THEN // rslt = 0 // IF arg_msg <> '' THEN // arg_msg += '~r~n' // END IF // arg_msg += '获取订单'+ls_tids[i]+'-'+String(j)+'失败,' + ls_msg // k = 0 // EXIT // END IF // k++ // arr_import[k] = s_tmp // ins_saletask_import.uf_fill_taobao(Ref arr_import[k]) // NEXT // Destroy s_import_arr // // // FOR i = 1 To k // IF ins_saletask_import.uf_save_saletask_import(arr_import[i], ls_msg, True) <> 1 THEN // rslt = 0 // IF arg_msg <> '' THEN // arg_msg += '~r~n' // END IF // arg_msg += '获取订单'+arr_import[i].tid+'失败,'+ls_msg + "~r~n"; // END IF // NEXT // //NEXT // ext: IF IsValid(w_sys_wait_jdt) THEN Close(w_sys_wait_jdt) END IF IF rslt = 1 THEN MessageBox('OK', '导入成功') cb_reflash.TriggerEvent(Clicked!) ELSE OpenWithParm(w_message_err, arg_msg) cb_reflash.TriggerEvent(Clicked!) END IF end event event ue_xls_import_jiayun();Int rslt = 1 // 选择文件 String ls_path, ls_filename IF GetFileOpenName("请选择要导入的csv文件", ls_path, ls_filename, "csv","csv文件(*.csv),*.csv") <> 1 THEN RETURN END IF uo_saletask_import uo_import uo_import = Create uo_saletask_import String arg_msg //open(w_testwindow) //uo_import.ins_dw_test1 = w_testwindow.dw_1 IF uo_import.uf_save_saletask_jiayu(ls_path, arg_msg) <> 1 THEN rslt = 0 GOTO ext END IF ext: Destroy uo_import IF rslt = 0 THEN MessageBox('ERROR', arg_msg) ELSE MessageBox('OK', '已经全部导入到订单') END IF end event public subroutine wf_face ();Long i ddlb_im_type.Enabled = Not dw_edit_mode cb_selectuser.Enabled = Not dw_edit_mode ddlb_acpt.Enabled = Not dw_edit_mode cb_export.Enabled = Not dw_edit_mode cb_reflash.Enabled = Not dw_edit_mode cb_cus.Enabled = dw_edit_mode cb_p_edit.Enabled = dw_edit_mode cb_import.Enabled = Not dw_edit_mode cb_accept.Enabled = Not dw_edit_mode cb_newprice.Enabled = Not dw_edit_mode IF dw_edit_mode THEN FOR i = 1 To ins_child dw_1.SetTabOrder(i, i * 10) NEXT cb_edit.Text = '保存' cb_edit.normalpicname = 'Save.bmp' cb_del.Text = '放弃' cb_del.normalpicname = 'Undo.bmp' ELSE FOR i = 1 To ins_child_min - 1 dw_1.SetTabOrder(i, i * 10) NEXT FOR i = ins_child_min To ins_child dw_1.SetTabOrder(i, 0) NEXT cb_edit.Text = '修改' cb_edit.normalpicname = 'OPEN.bmp' cb_del.Text = '删除' cb_del.normalpicname = 'delete.bmp' END IF cb_edit.of_init_draw() cb_edit.of_paint() cb_edit.TriggerEvent('ue_textchange') cb_del.of_init_draw() cb_del.of_paint() cb_del.TriggerEvent('ue_textchange') end subroutine public function integer wf_save (ref string arg_msg);Int rslt = 1 Long i s_saletask_import s_import, s_empty FOR i = 1 To dw_1.RowCount() IF dw_1.Object.ch[i] <> 1 THEN CONTINUE s_import = s_empty s_import.im_type = dw_1.Object.im_type[i] s_import.im_id = dw_1.Object.im_id[i] s_import.moneyname = dw_1.Object.moneyname[i] s_import.moneyid = dw_1.Object.moneyid[i] s_import.mrate = dw_1.Object.mrate[i] s_import.taskdate = dw_1.Object.taskdate[i] s_import.tasktype = dw_1.Object.tasktype[i] s_import.typeid = dw_1.Object.typeid[i] s_import.cuscode = dw_1.Object.cuscode[i] s_import.cusname = dw_1.Object.cusname[i] s_import.level_str = dw_1.Object.level_str[i] s_import.level = dw_1.Object.level[i] s_import.cusid = dw_1.Object.cusid[i] s_import.cus_address = dw_1.Object.cus_address[i] s_import.rel_rep = dw_1.Object.rel_rep[i] s_import.cus_tele = dw_1.Object.cus_tele[i] s_import.cus_fax = dw_1.Object.cus_fax[i] s_import.freight = dw_1.Object.freight[i] s_import.freight_tele = dw_1.Object.freight_tele[i] s_import.assign_emp = dw_1.Object.assign_emp[i] s_import.upname = dw_1.Object.upname[i] s_import.banktype = dw_1.Object.banktype[i] s_import.banktypeid = dw_1.Object.banktypeid[i] s_import.damt = dw_1.Object.damt[i] s_import.relcode = dw_1.Object.relcode[i] s_import.paytype = dw_1.Object.paytype[i] s_import.otheramt = dw_1.Object.otheramt[i] s_import.dscrp2 = dw_1.Object.dscrp2[i] s_import.dscrp = dw_1.Object.dscrp[i] s_import.dscrp3 = dw_1.Object.dscrp3[i] s_import.outtypestr = dw_1.Object.outtypestr[i] s_import.mtrlcode = dw_1.Object.mtrlcode[i] s_import.mtrlname = dw_1.Object.mtrlname[i] s_import.mtrlid = dw_1.Object.mtrlid[i] s_import.unit = dw_1.Object.unit[i] s_import.saleqty = dw_1.Object.saleqty[i] s_import.pricetype = dw_1.Object.pricetype[i] s_import.enprice = dw_1.Object.enprice[i] s_import.rebate = dw_1.Object.rebate[i] s_import.taxrate = dw_1.Object.taxrate[i] s_import.requiredate = dw_1.Object.requiredate[i] s_import.status = dw_1.Object.status[i] s_import.woodcode = dw_1.Object.woodcode[i] s_import.pcode = dw_1.Object.pcode[i] s_import.mxdscrp = dw_1.Object.mxdscrp[i] s_import.mxdscrp2 = dw_1.Object.mxdscrp2[i] s_import.mtrlcuscode = dw_1.Object.mtrlcuscode[i] s_import.tid = dw_1.Object.tid[i] s_import.moddate = dw_1.Object.eb_saletask_import_moddate[i] IF ins_saletask_import.uf_save_saletask_import(s_import, arg_msg, False) <> 1 THEN rslt = 0 arg_msg = '第' + String(i) + '行' + arg_msg GOTO ext END IF NEXT ext: IF rslt = 1 THEN COMMIT; ELSE ROLLBACK; END IF RETURN rslt end function public function integer wf_del (ref string arg_msg);Int rslt = 1 Long i FOR i = 1 To dw_1.RowCount() IF dw_1.Object.ch[i] <> 1 THEN CONTINUE IF ins_saletask_import.uf_del(dw_1.Object.im_type[i], dw_1.Object.im_id[i], arg_msg, False) <> 1 THEN rslt = 0 arg_msg = '第' + String(i) + '行,' + arg_msg GOTO ext END IF NEXT ext: IF rslt = 1 THEN COMMIT; ELSE ROLLBACK; END IF RETURN rslt end function public subroutine wf_selectall ();Long ll_check IF cbx_1.Checked THEN ll_check = 1 ELSE ll_check = 0 END IF Long i FOR i = 1 To dw_1.RowCount() dw_1.Object.ch[i] = ll_check NEXT end subroutine public function integer wf_from_ole (ref s_saletask_import arg_s_import, oleobject arg_import, ref string arg_msg);Int rslt = 1 IF IsNull(arg_import) THEN rslt = 0 arg_msg = 'ole对象为空' GOTO ext END IF TRY arg_s_import.im_type = arg_import.im_type arg_s_import.im_id = arg_import.im_id arg_s_import.moneyname = arg_import.moneyname arg_s_import.moneyid = arg_import.moneyid arg_s_import.mrate = arg_import.mrate arg_s_import.taskdate = arg_import.taskdate arg_s_import.tasktype = arg_import.tasktype arg_s_import.typeid = arg_import.typeid arg_s_import.cuscode = arg_import.cuscode arg_s_import.cusname = arg_import.cusname arg_s_import.level_str = arg_import.level_str arg_s_import.Level = arg_import.Level arg_s_import.cusid = arg_import.cusid arg_s_import.cus_address = arg_import.cus_address arg_s_import.rel_rep = arg_import.rel_rep arg_s_import.cus_tele = arg_import.cus_tele arg_s_import.cus_fax = arg_import.cus_fax arg_s_import.freight = arg_import.freight arg_s_import.freight_tele = arg_import.freight_tele arg_s_import.assign_emp = arg_import.assign_emp arg_s_import.upname = arg_import.upname arg_s_import.banktype = arg_import.banktype arg_s_import.banktypeid = arg_import.banktypeid arg_s_import.damt = arg_import.damt arg_s_import.relcode = arg_import.relcode arg_s_import.paytype = arg_import.paytype arg_s_import.otheramt = arg_import.otheramt arg_s_import.dscrp2 = arg_import.dscrp2 arg_s_import.dscrp = arg_import.dscrp arg_s_import.dscrp3 = arg_import.dscrp3 arg_s_import.outtypestr = arg_import.outtypestr arg_s_import.mtrlcode = arg_import.mtrlcode arg_s_import.mtrlname = arg_import.mtrlname arg_s_import.mtrlid = arg_import.mtrlid arg_s_import.unit = arg_import.unit arg_s_import.saleqty = arg_import.saleqty arg_s_import.pricetype = arg_import.pricetype arg_s_import.enprice = arg_import.enprice arg_s_import.rebate = arg_import.rebate arg_s_import.taxrate = arg_import.taxrate arg_s_import.requiredate = arg_import.requiredate arg_s_import.status = arg_import.status arg_s_import.woodcode = arg_import.woodcode arg_s_import.pcode = arg_import.pcode arg_s_import.mxdscrp = arg_import.mxdscrp arg_s_import.mxdscrp2 = arg_import.mxdscrp2 arg_s_import.mtrlcuscode = arg_import.mtrlcuscode arg_s_import.accept_flag = arg_import.accept_flag arg_s_import.accept_emp = arg_import.accept_emp arg_s_import.accept_date = arg_import.accept_date arg_s_import.tid = arg_import.tid arg_s_import.im_userid = arg_import.im_userid arg_s_import.trade_status = arg_import.trade_status arg_s_import.props = arg_import.props arg_s_import.trade_no = arg_import.trade_no arg_s_import.moddate = arg_import.moddate Catch (throwable ex) rslt = 0 arg_msg = ex.Text END TRY ext: RETURN rslt end function public function integer wf_taobao_haspower (ref string arg_msg);Int rslt = 1 IF Not sys_power_issuper And ins_user.im_type <> 5 THEN rslt = 0 arg_msg = '当前选择的不是淘宝帐号' GOTO ext END IF IF Not ins_connected THEN rslt = 0 arg_msg = '连接LJLib.TaoBao.dll失败' GOTO ext END IF IF Not sys_power_issuper And ins_user.im_userid <> ins_taobao.username THEN ins_taobao.Logout() END IF IF Not ins_taobao.HasPower() THEN rslt = 0 arg_msg = '淘宝控件未得到授权' GOTO ext END IF IF Not sys_power_issuper And ins_user.im_userid <> ins_taobao.username THEN ins_taobao.Logout() rslt = 0 arg_msg = '请用指定帐号登录授权:' + ins_user.im_userid GOTO ext END IF ext: RETURN rslt end function public function integer days_in_month (integer month, integer year);//Most cases are straight forward in that there are a fixed number of //days in 11 of the 12 months. February is, of course, the problem. //In a leap year February has 29 days, otherwise 28. Integer li_DaysInMonth, li_Days[12] = {31,28,31,30,31,30,31,31,30,31,30,31} // Get the number of days per month for a non leap year. li_DaysInMonth = li_Days[Month] // Check for a leap year. If Month = 2 Then // If the year is a leap year, change the number of days. // Leap Year Calculation: // Year divisible by 4, but not by 100, unless it is also divisible by 400 If ( (Mod(Year,4) = 0 And Mod(Year,100) <> 0) Or (Mod(Year,400) = 0) ) Then li_DaysInMonth = 29 End If End If //Return the number of days in the relevant month Return li_DaysInMonth end function on w_saletask_import.create int iCurrent call super::create this.r_bar=create r_bar this.cb_del=create cb_del this.cb_edit=create cb_edit this.cb_import=create cb_import this.cb_accept=create cb_accept this.cb_reflash=create cb_reflash this.cbx_1=create cbx_1 this.cb_p_edit=create cb_p_edit this.st_1=create st_1 this.cb_cus=create cb_cus this.ddlb_scid=create ddlb_scid this.ln_bar=create ln_bar this.ln_bar2=create ln_bar2 this.ln_1=create ln_1 this.ln_2=create ln_2 this.dw_1=create dw_1 this.ddlb_acpt=create ddlb_acpt this.cbx_acpt=create cbx_acpt this.cbx_priceflag=create cbx_priceflag this.ddlb_im_type=create ddlb_im_type this.st_2=create st_2 this.sle_userid=create sle_userid this.cb_selectuser=create cb_selectuser this.cb_export=create cb_export this.cbx_withother=create cbx_withother this.cb_newprice=create cb_newprice this.cbx_checkaddress=create cbx_checkaddress this.em_1=create em_1 this.pb_em1=create pb_em1 this.st_4=create st_4 this.em_2=create em_2 this.pb_em2=create pb_em2 this.pb_2=create pb_2 this.st_taskdate=create st_taskdate this.ln_3=create ln_3 this.ln_4=create ln_4 this.ln_5=create ln_5 this.ln_6=create ln_6 iCurrent=UpperBound(this.Control) this.Control[iCurrent+1]=this.r_bar this.Control[iCurrent+2]=this.cb_del this.Control[iCurrent+3]=this.cb_edit this.Control[iCurrent+4]=this.cb_import this.Control[iCurrent+5]=this.cb_accept this.Control[iCurrent+6]=this.cb_reflash this.Control[iCurrent+7]=this.cbx_1 this.Control[iCurrent+8]=this.cb_p_edit this.Control[iCurrent+9]=this.st_1 this.Control[iCurrent+10]=this.cb_cus this.Control[iCurrent+11]=this.ddlb_scid this.Control[iCurrent+12]=this.ln_bar this.Control[iCurrent+13]=this.ln_bar2 this.Control[iCurrent+14]=this.ln_1 this.Control[iCurrent+15]=this.ln_2 this.Control[iCurrent+16]=this.dw_1 this.Control[iCurrent+17]=this.ddlb_acpt this.Control[iCurrent+18]=this.cbx_acpt this.Control[iCurrent+19]=this.cbx_priceflag this.Control[iCurrent+20]=this.ddlb_im_type this.Control[iCurrent+21]=this.st_2 this.Control[iCurrent+22]=this.sle_userid this.Control[iCurrent+23]=this.cb_selectuser this.Control[iCurrent+24]=this.cb_export this.Control[iCurrent+25]=this.cbx_withother this.Control[iCurrent+26]=this.cb_newprice this.Control[iCurrent+27]=this.cbx_checkaddress this.Control[iCurrent+28]=this.em_1 this.Control[iCurrent+29]=this.pb_em1 this.Control[iCurrent+30]=this.st_4 this.Control[iCurrent+31]=this.em_2 this.Control[iCurrent+32]=this.pb_em2 this.Control[iCurrent+33]=this.pb_2 this.Control[iCurrent+34]=this.st_taskdate this.Control[iCurrent+35]=this.ln_3 this.Control[iCurrent+36]=this.ln_4 this.Control[iCurrent+37]=this.ln_5 this.Control[iCurrent+38]=this.ln_6 end on on w_saletask_import.destroy call super::destroy destroy(this.r_bar) destroy(this.cb_del) destroy(this.cb_edit) destroy(this.cb_import) destroy(this.cb_accept) destroy(this.cb_reflash) destroy(this.cbx_1) destroy(this.cb_p_edit) destroy(this.st_1) destroy(this.cb_cus) destroy(this.ddlb_scid) destroy(this.ln_bar) destroy(this.ln_bar2) destroy(this.ln_1) destroy(this.ln_2) destroy(this.dw_1) destroy(this.ddlb_acpt) destroy(this.cbx_acpt) destroy(this.cbx_priceflag) destroy(this.ddlb_im_type) destroy(this.st_2) destroy(this.sle_userid) destroy(this.cb_selectuser) destroy(this.cb_export) destroy(this.cbx_withother) destroy(this.cb_newprice) destroy(this.cbx_checkaddress) destroy(this.em_1) destroy(this.pb_em1) destroy(this.st_4) destroy(this.em_2) destroy(this.pb_em2) destroy(this.pb_2) destroy(this.st_taskdate) destroy(this.ln_3) destroy(this.ln_4) destroy(this.ln_5) destroy(this.ln_6) end on event close;call super::close;Destroy ins_saletask_import Destroy ins_comapp end event event resize;call super::resize;r_bar.Width = this.width ln_bar.endx = this.width ln_bar2.endx = this.width ln_1.endx = this.width ln_2.endx = this.width ln_3.endx = this.width ln_4.endx = this.width ln_5.endx = this.width ln_6.endx = this.width dw_1.height = this.WorkSpaceHeight() - dw_1.Y dw_1.Width = this.WorkSpaceWidth() - dw_1.X end event event open;call super::open;String arg_msg ins_saletask_import = Create uo_saletask_import ins_comapp = Create uo_ljlib_taobao_comapp ins_comapp.uf_init(ins_taobao, ins_create, ins_connected, ins_inited, arg_msg) dw_1.SetTransObject(sqlca) // 选择电商帐号 IF sys_power_issuper THEN ddlb_im_type.AddItem('全部') END IF ins_user.UserID = 0 ins_user.im_type = 0 ins_user.im_userid = '' em_1.Text = string(RelativeDate(Today(), -15), 'yyyy-MM-dd') em_2.Text = string(Today(), 'yyyy-MM-dd') cb_reflash.TriggerEvent(Clicked!) wf_face() end event type cb_func from w_publ_base`cb_func within w_saletask_import boolean visible = false end type type cb_exit from w_publ_base`cb_exit within w_saletask_import integer x = 1335 integer width = 150 integer height = 163 integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type type r_bar from rectangle within w_saletask_import long linecolor = 16777215 integer linethickness = 4 long fillcolor = 1073741824 integer x = 1423 integer width = 146 integer height = 67 end type event constructor;this.fillcolor = 14215660 this.linecolor = 14215660 this.x = -1 this.y = -1 this.height = ln_5.beginy - 5 end event type cb_del from uo_imflatbutton within w_saletask_import integer x = 311 integer width = 150 integer height = 163 integer taborder = 50 boolean bringtotop = true string text = "删除" string normalpicname = "delete.bmp" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;String ls_msg IF dw_edit_mode THEN dw_edit_mode = Not dw_edit_mode cb_reflash.TriggerEvent(Clicked!) wf_face() ELSE IF MessageBox('提问', '是否要删除选中的记录?', Question!, YesNo!) <> 1 THEN RETURN END IF IF wf_del(ls_msg) <> 1 THEN MessageBox('错误', ls_msg) RETURN END IF cb_reflash.TriggerEvent(Clicked!) END IF end event type cb_edit from uo_imflatbutton within w_saletask_import integer x = 154 integer width = 150 integer height = 163 integer taborder = 60 boolean bringtotop = true string text = "修改" string normalpicname = "OPEN.bmp" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;String arg_msg IF dw_edit_mode THEN IF dw_1.AcceptText() <> 1 THEN RETURN IF wf_save(arg_msg) <> 1 THEN MessageBox('错误', arg_msg) RETURN END IF END IF dw_edit_mode = Not dw_edit_mode IF dw_edit_mode THEN cbx_1.Checked = True wf_selectall() ELSE cb_reflash.TriggerEvent(Clicked!) END IF wf_face() end event type cb_import from uo_imflatbutton within w_saletask_import integer x = 1024 integer width = 150 integer height = 163 integer taborder = 10 boolean bringtotop = true string text = "导入" string normalpicname = "imexport.BMP" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;m_Dfc_Control_PopupMenu dmPopupMenu String menustr menustr = "Text=xml~tEvent=ue_xml_import" menustr = menustr + "|" + "Text=xls~tEvent=ue_xls_import" menustr = menustr + "|" + "Text=淘宝~tEvent=ue_taobao_import" menustr = menustr + "|" + "Text=淘宝(收货人)~tEvent=ue_taobao_import_new" menustr = menustr + "|" + "Text=淘宝分销csv~tEvent=ue_csv_import" menustr = menustr + "|" + "Text=京东~tEvent=ue_jindong_import" menustr = menustr + "|" + "Text=-" menustr = menustr + "|" + "Text=xls(订制)~tEvent=ue_xls_import_sny" menustr = menustr + "|" + "Text=xls(jy)~tEvent=ue_xls_import_jiayun" IF Len(Trim(menustr)) <> 0 THEN dmPopupMenu = Create m_Dfc_Control_PopupMenu dmPopupMenu.mf_BuildMenu(This, menustr) dmPopupMenu.mf_PopMenu() Destroy dmPopupMenu END IF end event type cb_accept from uo_imflatbutton within w_saletask_import integer x = 1393 integer y = 186 integer width = 351 integer height = 90 integer taborder = 20 boolean bringtotop = true string text = "接受订单" string normalpicname = "ok.bmp" integer picsize = 16 end type event clicked;call super::clicked;parent.triggerevent('ue_accept_saletask') end event type cb_reflash from uo_imflatbutton within w_saletask_import integer width = 150 integer height = 163 integer taborder = 20 boolean bringtotop = true string text = "刷新" string normalpicname = "refresh.BMP" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;Long ins_im_type IF ddlb_im_type.Text = '其它' THEN ins_im_type = 0 ELSEIF ddlb_im_type.Text = '亚洲国际电商' THEN ins_im_type = 1 ELSEIF ddlb_im_type.Text = '淘宝' THEN ins_im_type = 5 ELSEIF ddlb_im_type.Text = '京东' THEN ins_im_type = 6 ELSE ins_im_type = -1 END IF long ll_acpt_flag = -1 if ddlb_acpt.Text = '未接受' then ll_acpt_flag = 0 elseif ddlb_acpt.Text = '已接受' then ll_acpt_flag = 1 else ll_acpt_flag = -1 end if Long ll_is_super = 0 IF sys_power_issuper THEN ll_is_super = 1 END IF DateTime dt_begin datetime dt_end dt_begin = DateTime(Date(em_1.Text), Time(0)) dt_end = DateTime(Date(em_2.Text), Time('23:59:59')) dw_1.Retrieve(ins_im_type, ins_user.im_userid, ll_is_super, ll_acpt_flag, dt_begin, dt_end) wf_selectall() end event type cbx_1 from checkbox within w_saletask_import integer x = 2066 integer y = 307 integer width = 274 integer height = 58 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 67108864 string text = "全选" end type event constructor;this.backcolor = 14215660 end event event clicked;wf_selectall() end event type cb_p_edit from uo_imflatbutton within w_saletask_import integer x = 746 integer width = 274 integer height = 163 integer taborder = 30 boolean bringtotop = true string text = "批修改" string normalpicname = "p2.BMP" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;m_Dfc_Control_PopupMenu dmPopupMenu String menustr menustr = "Text=批选客户~tEvent=ue_p_cus" menustr = menustr + "|" + "Text=批选物料~tEvent=ue_p_mtrl" menustr = menustr + "|" + "Text=批导入淘宝客地址~tEvent=ue_p_cus_taobao" IF Len(Trim(menustr)) <> 0 THEN dmPopupMenu = Create m_Dfc_Control_PopupMenu dmPopupMenu.mf_BuildMenu(This, menustr) dmPopupMenu.mf_PopMenu() Destroy dmPopupMenu END IF end event type st_1 from statictext within w_saletask_import integer x = 1723 integer width = 1262 integer height = 99 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 255 long backcolor = 67108864 string text = "双击标题批修改" boolean focusrectangle = false end type event constructor;this.backcolor = 14215660 end event type cb_cus from uo_imflatbutton within w_saletask_import integer x = 464 integer width = 274 integer height = 163 integer taborder = 40 boolean bringtotop = true string text = "新客户" string normalpicname = "new.BMP" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;m_Dfc_Control_PopupMenu dmPopupMenu String menustr menustr = "Text=新建~tEvent=ue_new_cust" menustr = menustr + "|" + "Text=批新建~tEvent=ue_new_cust_p" IF Len(Trim(menustr)) <> 0 THEN dmPopupMenu = Create m_Dfc_Control_PopupMenu dmPopupMenu.mf_BuildMenu(This, menustr) dmPopupMenu.mf_PopMenu() Destroy dmPopupMenu END IF end event type ddlb_scid from uo_ddlb_scid within w_saletask_import integer x = 7 integer y = 189 integer width = 549 integer height = 621 integer taborder = 40 boolean bringtotop = true end type event constructor;Long ls_scid Long cnt,cnt_user String ls_scname long ll_i string ls_space int li_spacenum for ll_i =1 to upperbound(sys_user_scid) ls_scid = sys_user_scid[ll_i] SELECT scname INTO :ls_scname FROM u_scdef Where scid = :ls_scid; if sqlca.sqlcode <> 0 or isnull(ls_scname) then ls_scname = '' li_spacenum = 50 - len(trim(ls_scname)) - 2 - len(string(ls_scid)) ls_space = fill(' ',li_spacenum) THIS.AddItem (ls_scname+ls_space+'['+String(ls_scid)+']') next THIS.uo_scid = ls_scid uo_scid_arr[1] = ls_scid THIS.Text = ls_scname+ls_space+'['+String(ls_scid)+']' end event type ln_bar from line within w_saletask_import long linecolor = 268435456 integer linethickness = 4 integer beginy = 282 integer endx = 2008 integer endy = 282 end type type ln_bar2 from line within w_saletask_import long linecolor = 16777215 integer linethickness = 4 integer beginy = 285 integer endx = 2041 integer endy = 285 end type type ln_1 from line within w_saletask_import long linecolor = 268435456 integer linethickness = 4 integer beginy = 170 integer endx = 2008 integer endy = 170 end type type ln_2 from line within w_saletask_import long linecolor = 16777215 integer linethickness = 4 integer beginy = 173 integer endx = 2041 integer endy = 173 end type type dw_1 from u_dw_rbtnfilter within w_saletask_import integer y = 515 integer width = 2798 integer height = 851 integer taborder = 20 boolean bringtotop = true string dataobject = "dw_saletask_import" boolean hscrollbar = true boolean vscrollbar = true boolean hsplitscroll = true boolean rbutton_filter_use = true boolean rbutton_setposition_use = true boolean titleclick_sort_use = true end type event rowfocuschanged;call super::rowfocuschanged;This.SelectRow(0, False) IF currentrow > 0 THEN This.SelectRow(currentrow, True) END IF end event event doubleclicked;call super::doubleclicked;IF Not dw_edit_mode THEN RETURN IF dw_1.AcceptText() <> 1 THEN RETURN String ls_name ls_name = dwo.Name IF ls_name = 'realcuscode' THEN Parent.TriggerEvent('ue_f9') ELSEIF ls_name = 'realmtrlcode' THEN Parent.TriggerEvent('ue_f8') ELSEIF Pos(ls_name, '_t') = Len(ls_name) - 1 THEN String ls_type ls_type = dwo.Type IF Lower(ls_type) <> 'text' THEN RETURN String ls_colname ls_colname = Mid(ls_name, 1, Len(ls_name) - 2) IF Lower(dw_1.Describe(ls_colname + ".Type")) <> 'column' THEN RETURN Long ll_id ll_id = Long(dw_1.Describe(ls_colname + ".ID")) IF ll_id < ins_child_min Or ll_id > ins_child THEN RETURN IF ls_colname = 'realcuscode' THEN Parent.TriggerEvent('ue_custitle_doubleclicked') RETURN ELSEIF ls_colname = 'realmtrlcode' THEN RETURN END IF ls_type = Lower(dw_1.Describe(ls_colname + ".ColType")) Any ll_value Long ll_firstrow = 0 Long i FOR i = 1 To dw_1.RowCount() IF dw_1.Object.ch[i] <> 1 THEN CONTINUE IF ll_firstrow = 0 THEN ll_firstrow = i IF ls_type = 'date' THEN ll_value = dw_1.GetItemDate(ll_firstrow, ls_colname) ELSEIF ls_type = 'datetime' THEN ll_value = dw_1.GetItemDateTime(ll_firstrow, ls_colname) ELSEIF ls_type = 'time' Or Pos(ls_type, 'time') > 0 THEN ll_value = dw_1.GetItemTime(ll_firstrow, ls_colname) ELSEIF Pos(ls_type, 'dec') > 0 THEN ll_value = dw_1.GetItemDecimal(ll_firstrow, ls_colname) ELSEIF Pos(ls_type, 'char') > 0 THEN ll_value = dw_1.GetItemString(ll_firstrow, ls_colname) ELSE ll_value = dw_1.GetItemNumber(ll_firstrow, ls_colname) END IF ELSE dw_1.SetItem(i, ls_colname, ll_value) END IF NEXT END IF end event event clicked;call super::clicked;IF row > 0 THEN dw_1.SetRow(row) END IF end event event itemchanged;call super::itemchanged;IF Not dw_edit_mode THEN RETURN IF row <= 0 THEN RETURN String ls_name ls_name = dwo.Name dw_1.AcceptText() String ls_relcode ls_relcode = dw_1.Object.relcode[row] Long i String ls_chname = '' IF ls_name = 'banktypeid' THEN ls_chname = '结算方式' ELSEIF ls_name = 'moneyid' THEN ls_chname = '币种' ELSEIF ls_name = 'mrate' THEN ls_chname = '汇率' ELSEIF ls_name = 'taskdate' THEN ls_chname = '订单日期' ELSEIF ls_name = 'typeid' THEN ls_chname = '分类' ELSEIF ls_name = 'level' THEN ls_chname = '优先级' ELSEIF ls_name = 'cus_address' THEN ls_chname = '客户地址' ELSEIF ls_name = 'rel_rep' THEN ls_chname = '客户联系人' ELSEIF ls_name = 'cus_tele' THEN ls_chname = '客户电话' ELSEIF ls_name = 'cus_fax' THEN ls_chname = '客户传真' ELSEIF ls_name = 'freight' THEN ls_chname = '货运部' ELSEIF ls_name = 'freight_tele' THEN ls_chname = '货运部电话' ELSEIF ls_name = 'assign_emp' THEN ls_chname = '业务员' ELSEIF ls_name = 'upname' THEN ls_chname = '上级经理' ELSEIF ls_name = 'damt' THEN ls_chname = '订金' ELSEIF ls_name = 'paytype' THEN ls_chname = '交货方式' ELSEIF ls_name = 'otheramt' THEN ls_chname = '优惠金额' ELSEIF ls_name = 'dscrp2' THEN ls_chname = '生产备注' ELSEIF ls_name = 'dscrp' THEN ls_chname = '备注' ELSEIF ls_name = 'dscrp3' THEN ls_chname = '辅助备注' ELSEIF ls_name = 'outtypestr' THEN ls_chname = '分组' ELSE ls_chname = '' END IF Any ll_value String ls_type IF ls_chname <> '' THEN IF ls_relcode <> '' THEN IF MessageBox('提问', '是否同时修改相关号[' + ls_relcode + ']选中的' + ls_chname + '?', Question!, YesNo!) <> 1 THEN RETURN END IF ls_type = Lower(dw_1.Describe(ls_name + ".ColType")) IF ls_type = 'date' THEN ll_value = dw_1.GetItemDate(row, ls_name) ELSEIF ls_type = 'datetime' THEN ll_value = dw_1.GetItemDateTime(row, ls_name) ELSEIF ls_type = 'time' Or Pos(ls_type, 'time') > 0 THEN ll_value = dw_1.GetItemTime(row, ls_name) ELSEIF Pos(ls_type, 'dec') > 0 THEN ll_value = dw_1.GetItemDecimal(row, ls_name) ELSEIF Pos(ls_type, 'char') > 0 THEN ll_value = dw_1.GetItemString(row, ls_name) ELSE ll_value = dw_1.GetItemNumber(row, ls_name) END IF FOR i = 1 To dw_1.RowCount() IF i = row THEN CONTINUE IF dw_1.Object.ch[i] <> 1 THEN CONTINUE IF dw_1.Object.relcode[i] <> ls_relcode THEN CONTINUE dw_1.SetItem(i, ls_name, ll_value) NEXT END IF END IF end event type ddlb_acpt from dropdownlistbox within w_saletask_import integer x = 1569 integer y = 298 integer width = 479 integer height = 355 integer taborder = 50 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 string text = "未接受" boolean sorted = false string item[] = {"未接受","已接受","全部"} borderstyle borderstyle = stylelowered! end type event selectionchanged;cb_reflash.triggerevent(clicked!) end event type cbx_acpt from checkbox within w_saletask_import integer x = 581 integer y = 192 integer width = 457 integer height = 77 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 67108864 string text = "接受自动审核" end type event constructor;This.BackColor = 14215660 Long ll_check = 0 ll_check = Long(f_ProfileString(sys_empid, Parent.ClassName(), This.ClassName(), '0')) String ls_msg IF Not uo_power_spi.uf_power_ind(3873,ls_msg) And Not uo_power_spi.uf_power_ind(6,ls_msg) THEN ll_check = 0 This.Enabled = False END IF This.Checked = (ll_check = 1) end event event clicked;Long ll_check = 0 IF This.Checked THEN ll_check = 1 ELSE ll_check = 0 END IF f_setProfileString(sys_empid, Parent.ClassName(), This.ClassName(), String(ll_check)) end event type cbx_priceflag from checkbox within w_saletask_import integer x = 1061 integer y = 192 integer width = 315 integer height = 77 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 67108864 string text = "取价格表" end type event clicked;Long ll_check = 0 IF This.Checked THEN ll_check = 1 ELSE ll_check = 0 END IF f_setProfileString(sys_empid, Parent.ClassName(), This.ClassName(), String(ll_check)) end event event constructor;This.BackColor = 14215660 Long ll_check = 0 ll_check = Long(f_ProfileString(sys_empid, Parent.ClassName(), This.ClassName(), '0')) This.Checked = (ll_check = 1) end event type ddlb_im_type from dropdownlistbox within w_saletask_import integer x = 15 integer y = 298 integer width = 479 integer height = 794 integer taborder = 40 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 string text = "其它" boolean sorted = false string item[] = {"其它","亚洲国际电商","淘宝","京东"} borderstyle borderstyle = stylelowered! end type event selectionchanged;Long ins_im_type IF ddlb_im_type.Text = '其它' THEN ins_im_type = 0 ELSEIF ddlb_im_type.Text = '亚洲国际电商' THEN ins_im_type = 1 ELSEIF ddlb_im_type.Text = '淘宝' THEN ins_im_type = 5 ELSEIF ddlb_im_type.Text = '京东' THEN ins_im_type = 6 ELSE ins_im_type = -1 END IF IF ins_im_type <> ins_user.im_type THEN IF ins_im_type = 1 Or ins_im_type = 5 Or ins_im_type = 6 THEN Parent.TriggerEvent('ue_select_user') RETURN END IF END IF IF ins_im_type = 0 THEN ins_user.UserID = 0 ins_user.im_type = 0 ins_user.im_userid = '' sle_userid.Text = '' END IF cb_reflash.TriggerEvent(Clicked!) end event type st_2 from statictext within w_saletask_import integer x = 505 integer y = 314 integer width = 274 integer height = 48 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 67108864 string text = "当前用户:" boolean focusrectangle = false end type event constructor;this.backcolor = 14215660 end event type sle_userid from singlelineedit within w_saletask_import integer x = 786 integer y = 298 integer width = 494 integer height = 83 integer taborder = 60 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 boolean displayonly = true borderstyle borderstyle = stylelowered! end type type cb_selectuser from uo_imflatbutton within w_saletask_import integer x = 1295 integer y = 291 integer width = 256 integer height = 90 integer taborder = 30 boolean bringtotop = true string text = "选择" string normalpicname = "FIND.BMP" integer picsize = 16 end type event clicked;call super::clicked;parent.triggerevent('ue_select_user') end event type cb_export from uo_imflatbutton within w_saletask_import integer x = 1178 integer width = 150 integer height = 163 integer taborder = 20 boolean bringtotop = true string text = "导出" string normalpicname = "excel.bmp" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;m_Dfc_Control_PopupMenu dmPopupMenu String menustr menustr = "Text=Excel标准格式~tEvent=ue_xls_export_title" menustr = menustr + "|" + "Text=Excel数据~tEvent=ue_xls_export_data" IF Len(Trim(menustr)) <> 0 THEN dmPopupMenu = Create m_Dfc_Control_PopupMenu dmPopupMenu.mf_BuildMenu(This, menustr) dmPopupMenu.mf_PopMenu() Destroy dmPopupMenu END IF end event type cbx_withother from checkbox within w_saletask_import integer x = 2392 integer y = 301 integer width = 688 integer height = 77 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 67108864 string text = "选择客户时带出联系信息" end type event clicked;Long ll_check = 0 IF This.Checked THEN ll_check = 1 ELSE ll_check = 0 END IF f_setProfileString(sys_empid, Parent.ClassName(), This.ClassName(), String(ll_check)) end event event constructor;This.BackColor = 14215660 Long ll_check = 0 ll_check = Long(f_ProfileString(sys_empid, Parent.ClassName(), This.ClassName(), '0')) This.Checked = (ll_check = 1) end event type cb_newprice from uo_imflatbutton within w_saletask_import integer x = 1810 integer y = 186 integer width = 351 integer height = 90 integer taborder = 30 boolean bringtotop = true string text = "刷新最新价" string normalpicname = "refresh.BMP" integer picsize = 16 end type event clicked;call super::clicked;parent.triggerevent('ue_retrieve_newprice') end event type cbx_checkaddress from checkbox within w_saletask_import integer x = 2202 integer y = 192 integer width = 486 integer height = 77 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 67108864 string text = "检查收货人信息" end type event clicked;Long ll_check = 0 IF This.Checked THEN ll_check = 1 ELSE ll_check = 0 END IF f_setProfileString(sys_empid, Parent.ClassName(), This.ClassName(), String(ll_check)) end event event constructor;This.BackColor = 14215660 Long ll_check = 0 ll_check = Long(f_ProfileString(sys_empid, Parent.ClassName(), This.ClassName(), '0')) This.Checked = (ll_check = 1) end event type em_1 from editmask within w_saletask_import integer x = 274 integer y = 403 integer width = 388 integer height = 90 integer taborder = 130 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 borderstyle borderstyle = stylelowered! maskdatatype maskdatatype = datemask! string mask = "yyyy-mm-dd" boolean spin = true end type event rbuttondown;s_calender_arg s_calender s_calender.PointerX = THIS.PointerX() s_calender.PointerY = THIS.PointerY() s_calender.X = THIS.X s_calender.Y = THIS.Y OpenWithParm(w_calendar,s_calender) THIS.Text = String(id_date_selected) end event type pb_em1 from picturebutton within w_saletask_import integer x = 658 integer y = 400 integer width = 102 integer height = 93 integer taborder = 40 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" string picturename = "date.BMP" alignment htextalign = left! end type event clicked;em_1.triggerevent(rbuttondown!) end event type st_4 from statictext within w_saletask_import integer x = 753 integer y = 426 integer width = 106 integer height = 61 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 134217739 boolean enabled = false string text = "到:" alignment alignment = right! boolean focusrectangle = false end type event constructor;this.backcolor = 14215660 end event type em_2 from editmask within w_saletask_import integer x = 859 integer y = 403 integer width = 399 integer height = 90 integer taborder = 140 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 borderstyle borderstyle = stylelowered! maskdatatype maskdatatype = datemask! string mask = "yyyy-mm-dd" boolean spin = true end type event rbuttondown;s_calender_arg s_calender s_calender.PointerX = THIS.PointerX() s_calender.PointerY = THIS.PointerY() s_calender.X = THIS.X s_calender.Y = THIS.Y OpenWithParm(w_calendar,s_calender) THIS.Text = String(id_date_selected) end event type pb_em2 from picturebutton within w_saletask_import integer x = 1243 integer y = 400 integer width = 102 integer height = 93 integer taborder = 50 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" string picturename = "date.BMP" alignment htextalign = left! end type event clicked;em_2.triggerevent(rbuttondown!) end event type pb_2 from picturebutton within w_saletask_import integer x = 1346 integer y = 400 integer width = 102 integer height = 93 integer taborder = 60 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" string picturename = "date1.BMP" alignment htextalign = left! end type event clicked;m_Dfc_Control_PopupMenu dmPopupMenu string menustr menustr="Text=本日~tEvent=ue_date1" menustr = menustr + "|" + "Text=本周~tEvent=ue_date2" menustr = menustr + "|" + "Text=本月~tEvent=ue_date3" if len(trim(menustr))<>0 then dmPopupMenu = Create m_Dfc_Control_PopupMenu dmPopupMenu.mf_BuildMenu(This, menustr) dmPopupMenu.mf_PopMenu() Destroy dmPopupMenu end if end event type st_taskdate from statictext within w_saletask_import integer x = 26 integer y = 426 integer width = 249 integer height = 61 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 67108864 string text = "订单日期" boolean focusrectangle = false end type event constructor;this.backcolor = 14215660 end event type ln_3 from line within w_saletask_import long linecolor = 268435456 integer linethickness = 4 integer beginy = 384 integer endx = 2008 integer endy = 384 end type type ln_4 from line within w_saletask_import long linecolor = 16777215 integer linethickness = 4 integer beginy = 387 integer endx = 2041 integer endy = 387 end type type ln_5 from line within w_saletask_import long linecolor = 268435456 integer linethickness = 4 integer beginy = 506 integer endx = 3397 integer endy = 506 end type type ln_6 from line within w_saletask_import long linecolor = 16777215 integer linethickness = 4 integer beginy = 509 integer endx = 3277 integer endy = 509 end type