$PBExportHeader$w_sys_init_guide_zt.srw forward global type w_sys_init_guide_zt from w_publ_base end type type cb_next from uo_imflatbutton within w_sys_init_guide_zt end type type rb_1 from radiobutton within w_sys_init_guide_zt end type type rb_2 from radiobutton within w_sys_init_guide_zt end type type rb_3 from radiobutton within w_sys_init_guide_zt end type type ddlb_sysplan from dropdownlistbox within w_sys_init_guide_zt end type type sle_plan from singlelineedit within w_sys_init_guide_zt end type type cb_plan from commandbutton within w_sys_init_guide_zt end type type st_1 from statictext within w_sys_init_guide_zt end type type st_2 from statictext within w_sys_init_guide_zt end type type sle_printbill from singlelineedit within w_sys_init_guide_zt end type type cb_printbill from commandbutton within w_sys_init_guide_zt end type type gb_1 from groupbox within w_sys_init_guide_zt end type type gb_2 from groupbox within w_sys_init_guide_zt end type type gb_3 from groupbox within w_sys_init_guide_zt end type end forward global type w_sys_init_guide_zt from w_publ_base integer x = 302 integer y = 300 integer width = 2327 integer height = 1364 boolean titlebar = false string title = "" boolean controlmenu = false boolean minbox = false boolean border = false windowtype windowtype = child! long backcolor = 16777215 cb_next cb_next rb_1 rb_1 rb_2 rb_2 rb_3 rb_3 ddlb_sysplan ddlb_sysplan sle_plan sle_plan cb_plan cb_plan st_1 st_1 st_2 st_2 sle_printbill sle_printbill cb_printbill cb_printbill gb_1 gb_1 gb_2 gb_2 gb_3 gb_3 end type global w_sys_init_guide_zt w_sys_init_guide_zt type prototypes Function long GetFullPathName (String lpFileName ,Long nBufferLength,ref string lpBuffer,ref long lpFilePart) library "kernel32" ALIAS FOR "GetFullPathNameA;Ansi" Function ULong CopyFile(Ref String lpExistingFileName,Ref String lpNewFileName,ULong bFailIfExists) Library "kernel32.dll" Alias FOR "CopyFileA;Ansi"; end prototypes type variables int len_headinfo = 100 end variables forward prototypes public function integer wf_import (ref string arg_msg) public function integer wf_copyfile (ref string arg_msg) public function integer wf_system_import (ref string arg_msg) end prototypes public function integer wf_import (ref string arg_msg);Integer rslt = 1 Blob lb_rsyntax String ls_importstr Blob lb_r_headinfo Blob lb_importfilename String bczh_headinfo String headinfo String ls_system_id Integer ls_k Integer ls_psc String ls_importfilename String ls_pwrstr,ls_optionstr ls_importfilename = '' IF ddlb_sysplan.Text = '自定义' THEN ls_importfilename = Trim(sle_plan.Text) IF ls_importfilename = '' THEN rslt = 0 arg_msg = '请选择自定义解决方案' GOTO ext END IF ELSEIF ddlb_sysplan.Text = '标准家具制造' THEN ls_importfilename = sys_cur_path + "标准家具制造.ljsp" ELSEIF ddlb_sysplan.Text = '软体家具制造' THEN ls_importfilename = sys_cur_path + "软体家具制造.ljsp" ELSEIF ddlb_sysplan.Text = '标准材料商业' THEN ls_importfilename = sys_cur_path + "标准材料商业\标准材料商业.ljsp" ELSEIF ddlb_sysplan.Text = '皮布商业' THEN ls_importfilename = sys_cur_path + "皮布商业\皮布商业.ljsp" END IF IF ls_importfilename = '' THEN rslt = 0 arg_msg = '请选择解决方案' GOTO ext END IF IF Not FileExists(ls_importfilename) THEN rslt = 0 arg_msg = '解决方案文件' + ls_importfilename + '不存在' GOTO ext END IF IF f_getblobfromfile(lb_importfilename,ls_importfilename,arg_msg) = 0 THEN rslt = 0 ELSE bczh_headinfo = Left(String(lb_importfilename),len_headinfo * 3) headinfo = f_psw_bczh(bczh_headinfo,1,sys_power_key) ls_k = 0 ls_psc = 0 ls_psc = Pos(headinfo,";") ls_system_id = Left(headinfo,ls_psc - 1) IF ls_system_id <> sys_system_id THEN arg_msg = "导入的不是本系统的数据包,请检查" rslt = 0 GOTO ext ELSE lb_rsyntax = BlobMid(lb_importfilename,Len(bczh_headinfo) + 1) ls_importstr = String(lb_rsyntax) ls_importstr = f_psw_bczh(ls_importstr,1,sys_power_key) ls_pwrstr = Mid(ls_importstr,1,Pos(ls_importstr,'/*1/')) ls_optionstr = Mid(ls_importstr,Pos(ls_importstr,'/*1/') + 4,Pos(ls_importstr,'/*2/')) UPDATE sys_DB_version SET sys_pwrstr = :ls_pwrstr, sys_optionstr = :ls_optionstr, sys_pwrstr_sys = :ls_pwrstr; IF sqlca.SQLCode <> 0 THEN rslt = 0 arg_msg = '更新系统解决方案失败,'+sqlca.SQLErrText GOTO ext END IF END IF END IF ext: IF rslt = 1 THEN COMMIT; ELSE ROLLBACK; END IF RETURN rslt end function public function integer wf_copyfile (ref string arg_msg);Int rslt = 1 String target IF sle_printbill.Text = '' THEN rslt = 1 // arg_msg = '请选择打印格式文件' GOTO ext END IF IF Not FileExists(sle_printbill.Text) THEN rslt = 0 arg_msg = '打印格式文件'+sle_printbill.Text+'不存在' GOTO ext END IF IF sys_cur_path = "" THEN String lpBuffer lpBuffer = Fill('',200) Long lpfilepart,li_FileNum GetFullPathName(sys_inifilename,196,lpBuffer,lpfilepart) sys_cur_path = Left(lpBuffer,Len(lpBuffer)-Len(sys_inifilename)) END IF target = sys_cur_path + "Ew_printbill.pbl" IF FileExists(target) THEN IF FileExists(target + '.bak') THEN IF Not FileDelete(target + '.bak') THEN rslt = 0 arg_msg = '删除旧备份文件' + target + '.bak失败' GOTO ext END IF END IF IF FileMove(target, target + '.bak') <> 1 THEN rslt = 0 arg_msg = '备份旧打印格式失败' GOTO ext END IF END IF IF CopyFile(sle_printbill.Text,target, 0)<>1 THEN //IF FileMove(sle_printbill.Text, target) <> 1 THEN rslt = 0 arg_msg = '备份旧打印格式失败' GOTO ext END IF ext: RETURN rslt end function public function integer wf_system_import (ref string arg_msg);Integer rslt = 1 Blob lb_rsyntax String ls_importstr Blob lb_r_headinfo Blob lb_importfilename String bczh_headinfo String headinfo String ls_system_id String ls_WinDwStr, ls_DwObjStr Integer ls_k Integer ls_psc String ls_importfilename String ls_pwrstr,ls_optionstr,ls_AllowVersion datastore ds ds = Create datastore ls_importfilename = '' IF ddlb_sysplan.Text = '自定义' THEN ls_importfilename = Trim(sle_plan.Text) IF ls_importfilename = '' THEN rslt = 0 arg_msg = '请选择自定义解决方案' GOTO ext END IF ELSEIF ddlb_sysplan.Text = '标准家具制造' THEN ls_importfilename = sys_cur_path + "标准家具制造.ljsp" ELSEIF ddlb_sysplan.Text = '软体家具制造' THEN ls_importfilename = sys_cur_path + "软体家具制造.ljsp" ELSEIF ddlb_sysplan.Text = '标准材料商业' THEN ls_importfilename = sys_cur_path + "标准材料商业\标准材料商业.ljsp" ELSEIF ddlb_sysplan.Text = '皮布商业' THEN ls_importfilename = sys_cur_path + "皮布商业\皮布商业.ljsp" END IF IF ls_importfilename = '' THEN rslt = 0 arg_msg = '请选择解决方案' GOTO ext END IF IF Not FileExists(ls_importfilename) THEN rslt = 0 arg_msg = '解决方案文件' + ls_importfilename + '不存在' GOTO ext END IF IF f_getblobfromfile(lb_importfilename,ls_importfilename,arg_msg) = 0 THEN rslt = 0 GOTO ext END IF ls_importstr = String(lb_importfilename) //bczh_headinfo = Left(String(lb_importfilename),len_headinfo * 3) //headinfo = f_psw_bczh(bczh_headinfo,1,sys_power_key) headinfo = Left(ls_importstr,len_headinfo) ls_importstr = mid(ls_importstr, len_headinfo + 1) ls_k = 0 ls_psc = 0 ls_psc = Pos(headinfo,";") ls_system_id = Left(headinfo,ls_psc - 1) IF ls_system_id <> sys_system_id THEN arg_msg = "导入的不是本系统的数据包,请检查" rslt = 0 GOTO ext END IF //lb_rsyntax = BlobMid(lb_importfilename,Len(bczh_headinfo) + 1) //ls_importstr = String(lb_rsyntax) //ls_importstr = f_psw_bczh(ls_importstr,1,sys_power_key) //ls_pwrstr = Mid(ls_importstr,1,Pos(ls_importstr,'/*1/')) //ls_optionstr = Mid(ls_importstr,Pos(ls_importstr,'/*1/') + 4,Pos(ls_importstr,'/*2/')) //ls_DwObjStr = Mid(ls_importstr,Pos(ls_importstr,'/*2/') + 4,Pos(ls_importstr,'/*3/')) ls_psc = Pos(ls_importstr,"/*1/") if ls_psc = 1 then ls_pwrstr = "" else ls_pwrstr = left(ls_importstr,ls_psc) end if ls_importstr = Mid(ls_importstr,ls_psc + 4) ls_psc = Pos(ls_importstr,"/*2/") if ls_psc = 1 then ls_optionstr = "" else ls_optionstr = left(ls_importstr,ls_psc) end if ls_importstr = Mid(ls_importstr,ls_psc + 4) ls_psc = Pos(ls_importstr,"/*3/") ls_DwObjStr = left(ls_importstr,ls_psc - 1) ls_importstr = Mid(ls_importstr,ls_psc + 4) Blob lb_DwObjStr lb_DwObjStr = Blob(ls_DwObjStr) String ls_tmpfile IF Right(sys_cur_path, 1) = "\" THEN ls_tmpfile = sys_cur_path + "tmppbsavefile.txt" ELSE ls_tmpfile = sys_cur_path + "\tmppbsavefile.txt" END IF IF FileExists(ls_tmpfile) THEN IF Not FileDelete(ls_tmpfile) THEN rslt = 0 arg_msg = "删除临时文件失败(" + ls_tmpfile + "),请先手动清除!" GOTO ext END IF END IF IF f_saveblobtofile(lb_DwObjStr,ls_tmpfile,arg_msg) = 0 THEN rslt = 0 END IF UPDATE sys_DB_version SET sys_pwrstr = :ls_pwrstr, sys_optionstr = :ls_optionstr, sys_pwrstr_sys = :ls_pwrstr; IF sqlca.SQLCode <> 0 THEN rslt = 0 arg_msg = '更新系统解决方案失败,'+sqlca.SQLErrText GOTO ext END IF DELETE FROM sys_user_dwnSyntax Where empid = -1; IF sqlca.SQLCode <> 0 THEN rslt = 0 arg_msg = '删除管理员解决方案原数据2失败,'+sqlca.SQLErrText GOTO ext END IF //取解决方案所有字段 ds.DataObject = 'ds_system_plan_dw_obj_export_super' ds.SetTransObject(sqlca) ds.ImportFile(Text!, ls_tmpfile, 2) IF ds.Update() = -1 THEN rslt = 0 arg_msg = '更新系统解决方案窗口对应字段数据失败,'+sqlca.SQLErrText GOTO ext END IF ext: IF rslt = 1 THEN COMMIT; ELSE ROLLBACK; END IF RETURN rslt end function on w_sys_init_guide_zt.create int iCurrent call super::create this.cb_next=create cb_next this.rb_1=create rb_1 this.rb_2=create rb_2 this.rb_3=create rb_3 this.ddlb_sysplan=create ddlb_sysplan this.sle_plan=create sle_plan this.cb_plan=create cb_plan this.st_1=create st_1 this.st_2=create st_2 this.sle_printbill=create sle_printbill this.cb_printbill=create cb_printbill this.gb_1=create gb_1 this.gb_2=create gb_2 this.gb_3=create gb_3 iCurrent=UpperBound(this.Control) this.Control[iCurrent+1]=this.cb_next this.Control[iCurrent+2]=this.rb_1 this.Control[iCurrent+3]=this.rb_2 this.Control[iCurrent+4]=this.rb_3 this.Control[iCurrent+5]=this.ddlb_sysplan this.Control[iCurrent+6]=this.sle_plan this.Control[iCurrent+7]=this.cb_plan this.Control[iCurrent+8]=this.st_1 this.Control[iCurrent+9]=this.st_2 this.Control[iCurrent+10]=this.sle_printbill this.Control[iCurrent+11]=this.cb_printbill this.Control[iCurrent+12]=this.gb_1 this.Control[iCurrent+13]=this.gb_2 this.Control[iCurrent+14]=this.gb_3 end on on w_sys_init_guide_zt.destroy call super::destroy destroy(this.cb_next) destroy(this.rb_1) destroy(this.rb_2) destroy(this.rb_3) destroy(this.ddlb_sysplan) destroy(this.sle_plan) destroy(this.cb_plan) destroy(this.st_1) destroy(this.st_2) destroy(this.sle_printbill) destroy(this.cb_printbill) destroy(this.gb_1) destroy(this.gb_2) destroy(this.gb_3) end on event open;IF sys_if_network = 0 THEN rb_3.Visible = False END IF IF sys_cur_path = "" THEN Long rslt = 1 String lpBuffer lpBuffer = Fill('',200) Long lpfilepart,li_FileNum rslt = GetFullPathName(sys_inifilename,196,lpBuffer,lpfilepart) sys_cur_path = Left(lpBuffer,Len(lpBuffer)-Len(sys_inifilename)) END IF IF sys_version_type = 1 THEN rb_1.Checked = True ddlb_sysplan.AddItem("标准材料商业") ddlb_sysplan.AddItem("皮布商业") sle_printbill.text=sys_cur_path + '标准材料商业\ew_printbill.pbl' ELSEIF sys_version_type = 0 THEN rb_2.Checked = True ddlb_sysplan.AddItem("标准家具制造") ddlb_sysplan.AddItem("软体家具制造") ELSE rb_3.Checked = True ddlb_sysplan.AddItem("标准家具制造") ddlb_sysplan.AddItem("软体家具制造") END IF ddlb_sysplan.AddItem("自定义") rb_1.Enabled = False rb_2.Enabled = False rb_3.Enabled = False ddlb_sysplan.selectitem(1) end event event close;//f_set_sysmessage() end event type cb_func from w_publ_base`cb_func within w_sys_init_guide_zt integer x = 1198 integer y = 1412 integer width = 357 integer height = 96 string text = "<上一步(&B)" string normalpicname = "" integer picsize = 0 toolbaralignment pic_align = alignatleft! boolean border = true end type event cb_func::clicked;//if dw_1.update()<>1 then // messagebox('提示','系统用户信息修改失败,请重试!', Information!, OK! ) // rollback; //else // messagebox('提示','系统用户信息修改成功!', Information!, OK! ) // commit; // f_set_sysmessage() //end if end event type cb_exit from w_publ_base`cb_exit within w_sys_init_guide_zt integer x = 1911 integer y = 1412 integer width = 357 integer taborder = 30 string text = "取消(&C)" string normalpicname = "" end type type cb_next from uo_imflatbutton within w_sys_init_guide_zt integer x = 1554 integer y = 1412 integer width = 357 integer height = 96 integer taborder = 30 boolean bringtotop = true string text = "下一步>(&N)" end type type rb_1 from radiobutton within w_sys_init_guide_zt integer x = 151 integer y = 120 integer width = 402 integer height = 60 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 16777215 string text = "商业版" end type type rb_2 from radiobutton within w_sys_init_guide_zt integer x = 631 integer y = 120 integer width = 402 integer height = 60 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 16777215 string text = "工业版" end type type rb_3 from radiobutton within w_sys_init_guide_zt integer x = 1111 integer y = 120 integer width = 402 integer height = 60 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 16777215 string text = "工业版+" end type type ddlb_sysplan from dropdownlistbox within w_sys_init_guide_zt integer x = 123 integer y = 400 integer width = 773 integer height = 300 integer taborder = 30 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 borderstyle borderstyle = stylelowered! end type event selectionchanged;sle_plan.text="" sle_printbill.text="" IF ddlb_sysplan.Text = '自定义' THEN sle_plan.Enabled = True cb_plan.Enabled = True ELSE sle_plan.Enabled = False cb_plan.Enabled = False END IF IF ddlb_sysplan.Text = '标准材料商业' THEN sle_plan.text='标准材料商业' sle_printbill.text=sys_cur_path + '标准材料商业\ew_printbill.pbl' elseif ddlb_sysplan.Text = '皮布商业' THEN sle_plan.text='皮布商业' sle_printbill.text=sys_cur_path + '皮布商业\ew_printbill.pbl' end if end event type sle_plan from singlelineedit within w_sys_init_guide_zt integer x = 530 integer y = 516 integer width = 1527 integer height = 84 integer taborder = 40 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 boolean enabled = false string text = "标准材料商业" borderstyle borderstyle = stylelowered! end type type cb_plan from commandbutton within w_sys_init_guide_zt integer x = 2062 integer y = 516 integer width = 142 integer height = 84 integer taborder = 50 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" boolean enabled = false string text = "..." end type event clicked; Integer i String Pathname String Filename i = GetFileOpenName("系统方案文件",Pathname,Filename,"ljsp","系统方案文件ljsp,*.ljsp") IF i = 1 AND Trim(Pathname) <> "" AND Trim(Filename) <> "" THEN sle_plan.Text = Pathname END IF RETURN end event type st_1 from statictext within w_sys_init_guide_zt integer x = 123 integer y = 532 integer width = 398 integer height = 52 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 16777215 string text = "解决方案" boolean focusrectangle = false end type type st_2 from statictext within w_sys_init_guide_zt integer x = 123 integer y = 812 integer width = 347 integer height = 52 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 16777215 string text = "打印格式文件" boolean focusrectangle = false end type type sle_printbill from singlelineedit within w_sys_init_guide_zt integer x = 462 integer y = 796 integer width = 1595 integer height = 84 integer taborder = 50 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 borderstyle borderstyle = stylelowered! end type type cb_printbill from commandbutton within w_sys_init_guide_zt integer x = 2062 integer y = 796 integer width = 142 integer height = 84 integer taborder = 60 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" string text = "..." end type event clicked; Integer i String Pathname String Filename i = GetFileOpenName("打印格式文件",Pathname,Filename,"pbl","打印格式文件pbl,*.pbl") IF i = 1 AND Trim(Pathname) <> "" AND Trim(Filename) <> "" THEN sle_printbill.Text = Pathname END IF RETURN end event type gb_1 from groupbox within w_sys_init_guide_zt integer x = 32 integer y = 36 integer width = 2286 integer height = 208 integer taborder = 10 integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 16777215 string text = "帐套版本" end type type gb_2 from groupbox within w_sys_init_guide_zt integer x = 32 integer y = 284 integer width = 2286 integer height = 340 integer taborder = 20 integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 16777215 string text = "解决方案选择" end type type gb_3 from groupbox within w_sys_init_guide_zt integer x = 32 integer y = 664 integer width = 2286 integer height = 340 integer taborder = 30 integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 16777215 string text = "打印格式选择" end type