$PBExportHeader$w_saletask_sc_card.srw forward global type w_saletask_sc_card from w_pageretr_ch end type type cb_build from uo_imflatbutton within w_saletask_sc_card end type type cb_del from uo_imflatbutton within w_saletask_sc_card end type type cb_edit from uo_imflatbutton within w_saletask_sc_card end type type cb_print from uo_imflatbutton within w_saletask_sc_card end type type cb_viewprint from uo_imflatbutton within w_saletask_sc_card end type type cbx_2 from checkbox within w_saletask_sc_card end type type cb_add from uo_imflatbutton within w_saletask_sc_card end type type cb_audit from uo_imflatbutton within w_saletask_sc_card end type type cb_caudit from uo_imflatbutton within w_saletask_sc_card end type type ddlb_3 from dropdownlistbox within w_saletask_sc_card end type end forward global type w_saletask_sc_card from w_pageretr_ch integer width = 3611 integer height = 2380 string title = "流程卡" event ue_viewprint ( ) event ue_print ( ) cb_build cb_build cb_del cb_del cb_edit cb_edit cb_print cb_print cb_viewprint cb_viewprint cbx_2 cbx_2 cb_add cb_add cb_audit cb_audit cb_caudit cb_caudit ddlb_3 ddlb_3 end type global w_saletask_sc_card w_saletask_sc_card type variables int if_all long cur_scid long cur_taskid long cur_printid long cur_qty uo_order_ml obj_order string ins_sqlerrtext String ls_newname = '' Long ll_prownum Long ls_powerid Int li_auditprint String ls_rpname = '' Long ls_msgprintid_rpt = 0 s_saletaskmx_card s_card_null[],s_card_temp[] boolean delete_all = false Long ll_cardrow Long cardid[],cardid_null[] long cur_flag = -1 end variables forward prototypes public subroutine wf_facechange () public function integer wf_retr (integer arg_flag, ref string arg_msg) end prototypes event ue_viewprint();IF NOT f_power_ind(1360) THEN MessageBox('提示','你没有使用权限!',information!,OK!) RETURN END IF Long LS_ROW,ll_mx String ls_ll_cardid String ls_msg Long ls_msgprintid String ls_parms[] Long ll_cardid[] ls_msgprintid = Message.LongParm SELECT dft_new_dwname,powerid,auditprint,prownum INTO :ls_newname,:ls_powerid,:li_auditprint,:ll_prownum FROM sys_dft_dwprint_dynamic Where sys_dft_dwprint_dynamic.dwprintid = :ls_msgprintid USING sqlca; IF sqlca.SQLCode <> 0 THEN ls_newname = '' ls_powerid = 0 END IF ll_mx = 0 ls_msg = '' dw_pageretr.AcceptText() FOR LS_ROW = 1 TO dw_pageretr.RowCount() IF dw_pageretr.Object.isselect[LS_ROW] = 1 THEN ll_mx ++ ls_parms[ll_mx] = String(dw_pageretr.Object.cardid[LS_ROW]) ll_cardid[ll_mx] = dw_pageretr.Object.cardid[LS_ROW] END IF NEXT IF ls_msg <> '' THEN MessageBox('错误',ls_msg,stopsign!,OK!) RETURN END IF S_print_MSG LS_PRMSG IF ls_newname <> '' THEN LS_PRMSG.obj_dwNAME = ls_newname ELSE LS_PRMSG.obj_dwNAME = 'dw_rp_saletaskmx_card_print' END IF LS_PRMSG.TAG_TEXT = '流程卡打印' LS_PRMSG.FILTER_STRING = '' LS_PRMSG.retr_pram_falg = 17 LS_PRMSG.PAGECH_FLAG = 0 LS_PRMSG.retr_scid = cur_scid LS_PRMSG.a_string_arr = ls_parms LS_PRMSG.rowcnt = ll_mx OpenWithParm(w_publ_preview,LS_PRMSG) String arg_msg printnum = Message.DoubleParm IF printnum > 0 THEN FOR LS_ROW = 1 TO ll_mx f_update_printnum('u_saletaskmx_card',printnum,cur_scid,ll_cardid[LS_ROW],'','',arg_msg,TRUE) NEXT CHOOSE CASE sys_option_saletask_sc_card2 CASE 1 IF MessageBox ("询问","打印是否成功?成功则确认当前选定流程卡",Question!,YesNo! ) = 1 THEN cb_audit.TriggerEvent(Clicked!) END IF CASE 2 cb_audit.TriggerEvent(Clicked!) END CHOOSE END IF cb_refresh.TriggerEvent(Clicked!) end event event ue_print();IF NOT f_power_ind(1360) THEN MessageBox('提示','你没有使用权限!',information!,OK!) RETURN END IF Long LS_ROW,ll_cardid[] Long ll_sptid,printid String ls_taskcode String ls_printid String ls_parms[] String ls_msg Long ll_mx Long ls_msgprintid s_saletaskmx s_mx[] ls_msgprintid = Message.LongParm SELECT dft_new_dwname,powerid,auditprint,prownum INTO :ls_newname,:ls_powerid,:li_auditprint,:ll_prownum FROM sys_dft_dwprint_dynamic Where sys_dft_dwprint_dynamic.dwprintid = :ls_msgprintid USING sqlca; IF sqlca.SQLCode <> 0 THEN ls_newname = '' ls_powerid = 0 END IF ll_mx = 0 ls_msg = '' dw_pageretr.AcceptText() FOR LS_ROW = 1 TO dw_pageretr.RowCount() IF dw_pageretr.Object.isselect[LS_ROW] = 1 THEN ll_mx ++ ls_parms[ll_mx] = String(dw_pageretr.Object.cardid[LS_ROW]) ll_cardid[ll_mx] = dw_pageretr.Object.cardid[LS_ROW] END IF NEXT IF ls_msg <> '' THEN MessageBox('错误',ls_msg,stopsign!,OK!) RETURN END IF IF ll_mx = 0 THEN MessageBox('提示','请选择要打印的目标单据!',information!,OK!) RETURN END IF S_print_MSG LS_PRMSG IF ls_newname <> '' THEN LS_PRMSG.obj_dwNAME = ls_newname ELSE LS_PRMSG.obj_dwNAME = 'dw_rp_saletaskmx_card_print' END IF uo_print_preview uo_print LS_PRMSG.TAG_TEXT = '流程卡打印' LS_PRMSG.FILTER_STRING = '' LS_PRMSG.retr_pram_falg = 17 LS_PRMSG.PAGECH_FLAG = 0 LS_PRMSG.retr_scid = cur_scid LS_PRMSG.a_string_arr = ls_parms LS_PRMSG.rowcnt = ll_mx uo_print.FACT_PRINT_MSG = LS_PRMSG String arg_msg IF uo_print.uof_print_begin(arg_msg) = 0 THEN MessageBox("错误",arg_msg,stopsign!,OK!) RETURN END IF uo_print.ds_print() FOR LS_ROW = 1 TO ll_mx f_update_printnum('u_saletaskmx_card',1,cur_scid,ll_cardid[LS_ROW],'','',arg_msg,TRUE) NEXT CHOOSE CASE sys_option_saletask_sc_card2 CASE 1 IF MessageBox ("询问","打印是否成功?成功则确认当前选定流程卡",Question!,YesNo! ) = 1 THEN cb_audit.TriggerEvent(Clicked!) END IF CASE 2 cb_audit.TriggerEvent(Clicked!) END CHOOSE cb_refresh.TriggerEvent(Clicked!) end event public subroutine wf_facechange (); IF dw_edit_mode THEN cb_refresh.Enabled = FALSE cb_build.Enabled = FALSE cb_del.Enabled = FALSE cb_print.Enabled = FALSE cb_viewprint.Enabled = FALSE cb_add.Enabled = TRUE dw_pageretr.RBUTTON_FILTER_USE = FALSE //右键查询功能开关 dw_pageretr.titleclick_sort_use = FALSE //单击标题排序功能开关 cb_edit.Text = "放弃&E" cb_edit.normalpicname = 'Undo.bmp' cb_audit.Enabled = FALSE cb_caudit.Enabled = FALSE ELSE cb_refresh.Enabled = TRUE cb_build.Enabled = TRUE cb_del.Enabled = TRUE cb_print.Enabled = TRUE cb_viewprint.Enabled = TRUE cb_add.Enabled = FALSE dw_pageretr.RBUTTON_FILTER_USE = TRUE //右键查询功能开关 dw_pageretr.titleclick_sort_use = TRUE //单击标题排序功能开关 cb_edit.Text = "修改&E" cb_edit.normalpicname = 'OPEN.bmp' cb_audit.Enabled = TRUE cb_caudit.Enabled = TRUE END IF Long i IF dw_edit_mode THEN dw_pageretr.SetTabOrder (2,2*10 ) ELSE dw_pageretr.SetTabOrder (2,0 ) END IF cb_edit.of_init_draw() cb_edit.of_paint() cb_edit.TriggerEvent('ue_textchange') end subroutine public function integer wf_retr (integer arg_flag, ref string arg_msg);Int rslt = 1 Long i,it_max,j,ll_row,NO_MXCHECK ll_cardrow = 0 cardid = cardid_null FOR i = 1 TO UpperBound(s_tran.arr_long) //Restart: s_card_temp = s_card_null it_max = 1 DECLARE CUR_INWAERMX CURSOR FOR SELECT u_saletaskmx_card.cardid FROM u_saletaskmx_card INNER JOIN u_SaleTaskMx ON u_saletaskmx_card.scid = u_SaleTaskMx.scid AND u_saletaskmx_card.taskid = u_SaleTaskMx.TaskID AND u_saletaskmx_card.mxprintid = u_SaleTaskMx.printid INNER JOIN u_mtrldef ON u_SaleTaskMx.MtrlID = u_mtrldef.mtrlid WHERE u_saletaskmx_card.scid = :s_tran.arr_long[i] AND u_saletaskmx_card.taskid = :s_tran.arr_long2[i] AND u_saletaskmx_card.mxprintid = :s_tran.arr_long3[i] Order By u_saletaskmx_card.cardid Desc; OPEN CUR_INWAERMX; FETCH CUR_INWAERMX INTO :s_card_temp[it_max].cardid; DO WHILE sqlca.SQLCode = 0 it_max++ FETCH CUR_INWAERMX INTO :s_card_temp[it_max].cardid; LOOP CLOSE CUR_INWAERMX; //检验明细是否读入完整 SELECT COUNT(*) INTO :NO_MXCHECK FROM u_saletaskmx_card INNER JOIN u_SaleTaskMx ON u_saletaskmx_card.scid = u_SaleTaskMx.scid AND u_saletaskmx_card.taskid = u_SaleTaskMx.TaskID AND u_saletaskmx_card.mxprintid = u_SaleTaskMx.printid INNER JOIN u_mtrldef ON u_SaleTaskMx.MtrlID = u_mtrldef.mtrlid WHERE u_saletaskmx_card.scid = :s_tran.arr_long[i] AND u_saletaskmx_card.taskid = :s_tran.arr_long2[i] AND u_saletaskmx_card.mxprintid = :s_tran.arr_long3[i] ; IF sqlca.SQLCode <> 0 THEN rslt = 0 arG_MSG = "查询操作失败,流程卡数量" GOTO ext END IF IF it_max <> (NO_MXCHECK+1) THEN rslt = 0 arG_MSG = "查询操作失败,流程卡数量" GOTO ext END IF FOR j = 1 TO NO_MXCHECK ll_cardrow ++ cardid[ll_cardrow] = s_card_temp[j].cardid NEXT NEXT IF IsNull(cardid) THEN dw_pageretr.reset() ELSE dw_pageretr.SetRedraw(FALSE) dw_pageretr.Retrieve(cardid, cur_flag) dw_pageretr.SetRedraw(TRUE) END IF ext: RETURN rslt end function on w_saletask_sc_card.create int iCurrent call super::create this.cb_build=create cb_build this.cb_del=create cb_del this.cb_edit=create cb_edit this.cb_print=create cb_print this.cb_viewprint=create cb_viewprint this.cbx_2=create cbx_2 this.cb_add=create cb_add this.cb_audit=create cb_audit this.cb_caudit=create cb_caudit this.ddlb_3=create ddlb_3 iCurrent=UpperBound(this.Control) this.Control[iCurrent+1]=this.cb_build this.Control[iCurrent+2]=this.cb_del this.Control[iCurrent+3]=this.cb_edit this.Control[iCurrent+4]=this.cb_print this.Control[iCurrent+5]=this.cb_viewprint this.Control[iCurrent+6]=this.cbx_2 this.Control[iCurrent+7]=this.cb_add this.Control[iCurrent+8]=this.cb_audit this.Control[iCurrent+9]=this.cb_caudit this.Control[iCurrent+10]=this.ddlb_3 end on on w_saletask_sc_card.destroy call super::destroy destroy(this.cb_build) destroy(this.cb_del) destroy(this.cb_edit) destroy(this.cb_print) destroy(this.cb_viewprint) destroy(this.cbx_2) destroy(this.cb_add) destroy(this.cb_audit) destroy(this.cb_caudit) destroy(this.ddlb_3) end on event ue_before_open;call super::ue_before_open;if_ue_retr=true if_ue_sort=true obj_order = create uo_order_ml obj_order.commit_transaction = sqlca end event event ue_usual_query_filt;call super::ue_usual_query_filt;string obj_expr='' if trim(sle_usual_query.text)<>'' then IF POS(trim(sle_usual_query.text),'%')=0 THEN obj_expr=obj_expr+'( u_mtrldef_mtrlcode LIKE "%'+trim(sle_usual_query.text)+'%" )' ELSE obj_expr=obj_expr+'( u_mtrldef_mtrlcode LIKE "'+trim(sle_usual_query.text)+'" )' END IF end if dw_pageretr.setfilter(obj_expr) dw_pageretr.SetRedraw(False) dw_pageretr.filter() if dw_pageretr.rowcount()>=1 then dw_pageretr.selectrow(0,false) dw_pageretr.selectrow(1,true ) end if dw_pageretr.SetRedraw(TRUE ) end event event ue_usual_query_retr;call super::ue_usual_query_retr;string ls_querystrpart='' ls_newselect=lower(ori_oldselect) if trim(sle_usual_query.text)<>'' then if pos(trim(sle_usual_query.text),'%')=0 then ls_querystrpart=" u_mtrldef.mtrlcode like '%"+trim(sle_usual_query.text)+"%'" else ls_querystrpart=" u_mtrldef.mtrlcode like '"+trim(sle_usual_query.text)+"'" end if if Pos(ls_newselect," where ") <> 0 then ls_newselect=ls_newselect+" AND ("+ls_querystrpart+')' else ls_newselect=ls_newselect+" where ("+ls_querystrpart+')' end if end if wf_retrieveuc(dw_pageretr,ls_newselect,1) this.triggerevent('retrieve_pageretr') end event event open;THIS.TriggerEvent('ue_before_open') wf_movetocenter() OLD_TITLE = THIS.Title s_tran = Message.PowerObjectParm IF NOT IsNull(s_tran) THEN retrieve_all = TRUE cur_scid = s_tran.b_long cur_taskid = s_tran.c_long cur_printid = s_tran.d_long cur_qty = s_tran.e_long END IF //dw_pageretr.RBUTTON_FILTER_USE = TRUE //右键查询功能开关 //dw_pageretr.titleclick_sort_use = TRUE //单击标题排序功能开关 dw_pageretr.SetTransObject (sqlca) //pkcolumndbtname = wf_get_pkcolumndbtname(dw_pageretr) //取第一列为关键字 // //ori_oldselect = dw_pageretr.Describe("DataWindow.Table.Select") //ls_newselect = ori_oldselect //ds_curquery = CREATE DATASTORE //ds_curquery.DataObject = 'd_extr_find' //ds_curquery.SetTransObject (sqlca) // //wf_editindex_lockf() String ls_msg IF wf_retr(1,ls_msg) = 0 THEN messagebox('错误',ls_msg) return END IF end event event close;call super::close; f_SetProfileString(sys_empid, "saletask_sc_card", "cur_flag", string(cur_flag)) end event type cb_func from w_pageretr_ch`cb_func within w_saletask_sc_card boolean visible = false end type type cb_exit from w_pageretr_ch`cb_exit within w_saletask_sc_card integer x = 1682 string text = "退出" end type event cb_exit::clicked;IF dw_edit_mode THEN IF MessageBox ("询问","是否先保存当前吗",Question!,YesNo! ) = 1 THEN RETURN END IF Close(PARENT) end event type sle_usual_query from w_pageretr_ch`sle_usual_query within w_saletask_sc_card boolean visible = false integer x = 197 integer y = 184 end type type cb_retrieveall from w_pageretr_ch`cb_retrieveall within w_saletask_sc_card boolean visible = false integer x = 1413 end type type em_pagerowno from w_pageretr_ch`em_pagerowno within w_saletask_sc_card boolean visible = false integer x = 1115 integer y = 32 end type type dw_pageretr from w_pageretr_ch`dw_pageretr within w_saletask_sc_card integer y = 276 integer width = 3547 integer height = 1992 string dataobject = "dw_saletaskmx_card_index1" boolean rbutton_filter_use = true boolean rbutton_setposition_use = true boolean titleclick_sort_use = true end type event dw_pageretr::dberror;call super::dberror;ins_sqlerrtext=sqlerrtext return 1 end event type st_1 from w_pageretr_ch`st_1 within w_saletask_sc_card boolean visible = false integer x = 18 end type type cb_nextpage from w_pageretr_ch`cb_nextpage within w_saletask_sc_card boolean visible = false integer x = 1563 end type type cb_choice from w_pageretr_ch`cb_choice within w_saletask_sc_card boolean visible = false integer x = 814 integer taborder = 120 end type type cb_refresh from w_pageretr_ch`cb_refresh within w_saletask_sc_card end type event cb_refresh::clicked;String ls_msg IF wf_retr(0,ls_msg) = 0 THEN messagebox('错误',ls_msg) return END IF end event type cb_help from w_pageretr_ch`cb_help within w_saletask_sc_card integer x = 1531 end type type ln_bar from w_pageretr_ch`ln_bar within w_saletask_sc_card end type type ln_bar2 from w_pageretr_ch`ln_bar2 within w_saletask_sc_card end type type r_bar from w_pageretr_ch`r_bar within w_saletask_sc_card integer x = 2949 end type type ln_1 from w_pageretr_ch`ln_1 within w_saletask_sc_card boolean visible = false integer beginy = 252 integer endy = 252 end type type ln_2 from w_pageretr_ch`ln_2 within w_saletask_sc_card boolean visible = false integer beginy = 256 integer endy = 256 end type type cb_build from uo_imflatbutton within w_saletask_sc_card integer x = 151 integer width = 155 integer height = 164 integer taborder = 40 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;IF Not f_power_ind(1358) THEN MessageBox('提示','你没有使用权限!',information!,OK!) RETURN END IF IF dw_edit_mode THEN RETURN String ls_msg Long i,ll_cardid[] String ls_cardcode[] Long j IF dw_pageretr.RowCount() > 0 THEN IF MessageBox ("询问","已生成流程卡,重新生成将删除旧的流程卡,是否继续",Question!,YesNo! ) = 2 THEN RETURN delete_all = True cb_del.TriggerEvent(Clicked!) END IF IF Not delete_all THEN IF obj_order.uof_buildcard1(s_tran.arr_long,s_tran.arr_long2,s_tran.arr_long3,s_tran.arr_long4,publ_operator,ls_msg,True) = 0 THEN MessageBox('错误',ls_msg,StopSign!, OK! ) RETURN ELSE MessageBox('提示','生成流程卡成功',information! , OK! ) cb_refresh.TriggerEvent(Clicked!) END IF END IF end event type cb_del from uo_imflatbutton within w_saletask_sc_card integer x = 690 integer width = 155 integer height = 164 integer taborder = 70 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;IF NOT f_power_ind(1361) THEN MessageBox('提示','你没有使用权限!',information!,OK!) RETURN END IF Long i,j,ll_cardid[],k,ll_row[] String ls_cardcode[],ls_msg j = 0 IF dw_pageretr.RowCount() > 0 THEN FOR i = 1 TO dw_pageretr.RowCount() IF delete_all or dw_pageretr.Object.isselect[i] = 1 THEN j++ ll_cardid[j] = dw_pageretr.Object.cardid[i] ls_cardcode[j] = dw_pageretr.Object.cardcode[i] FOR k = 1 TO UpperBound(s_tran.arr_long2) IF dw_pageretr.Object.scid[i] = s_tran.arr_long[k] AND & dw_pageretr.Object.taskid[i] = s_tran.arr_long2[k] AND & dw_pageretr.Object.printid[i] = s_tran.arr_long3[k] THEN ll_row[j] = k END IF NEXT END IF NEXT IF j > 0 THEN IF obj_order.uof_delcard1(ll_cardid,ls_cardcode,ll_row,s_tran.arr_long,s_tran.arr_long2,s_tran.arr_long3,ls_msg,TRUE) = 0 THEN MessageBox('错误',ls_msg,StopSign!, OK! ) RETURN ELSE MessageBox('提示','删除流程卡成功!' ) delete_all = false cb_refresh.TriggerEvent(Clicked!) RETURN END IF ELSE MessageBox('提示','没有选择删除对象!' ) END IF END IF end event type cb_edit from uo_imflatbutton within w_saletask_sc_card integer x = 498 integer width = 192 integer height = 164 integer taborder = 50 boolean bringtotop = true string text = "修改&E" string normalpicname = "OPEN.bmp" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;IF NOT f_power_ind(1359) THEN MessageBox('提示','你没有使用权限!',information!,OK!) RETURN END IF IF dw_edit_mode THEN cb_refresh.TriggerEvent(Clicked!) END IF dw_edit_mode = NOT dw_edit_mode wf_facechange() end event type cb_print from uo_imflatbutton within w_saletask_sc_card integer x = 1367 integer width = 165 integer height = 164 integer taborder = 80 boolean bringtotop = true string text = "打印" string normalpicname = "print.bmp" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;String ls_dft_old_dwname, ls_dft_new_dwname,ls_chnname,ls_dwtype Long ls_dwprintid String ls_windowname Int ls_i Long ll_billid Int li_ifuse Long ll_row String Name,ll_rpname Long ll_RpID,ll_flag,ll_ifuse w_curwin = PARENT ls_windowname = PARENT.ClassName ( ) SELECT billid,ifuse INTO :ll_billid, :li_ifuse FROM u_report_bill Where winName = :ls_windowname; IF sqlca.SQLCode <> 0 THEN li_ifuse = 0 END IF li_ifuse = 0 IF li_ifuse = 0 THEN DECLARE dft_dwprint CURSOR FOR SELECT dwprintid,dft_old_dwname, dft_new_dwname, chnname, dwtype FROM sys_dft_dwprint_dynamic WHERE dwtype = :ls_windowname AND ptype = 0 and ifuse = 1; OPEN dft_dwprint; FETCH dft_dwprint INTO :ls_dwprintid,:ls_dft_old_dwname, :ls_dft_new_dwname,:ls_chnname, :ls_dwtype; IF sqlca.SQLCode <> 0 THEN PARENT.TriggerEvent('ue_print',0,0) ELSE m_dft_dwprint_item m_1 m_1 = CREATE m_dft_dwprint_item ls_i = 1 DO WHILE sqlca.SQLCode = 0 f_add_menuitem_print_dft(m_1,ls_i,ls_chnname,String(ls_dwprintid)) FETCH dft_dwprint INTO :ls_dwprintid,:ls_dft_old_dwname, :ls_dft_new_dwname,:ls_chnname, :ls_dwtype; ls_i++ LOOP CLOSE dft_dwprint; m_1.PopMenu(THIS.X+50,THIS.Y+50) END IF ELSE DECLARE rpt_dwprint CURSOR FOR SELECT RpID,RpName,Flag,Ifuse FROM U_report_list WHERE billid = :ll_billid Order By RpName; OPEN rpt_dwprint; FETCH rpt_dwprint INTO :ll_RpID,:ll_rpname,:ll_flag,:ll_ifuse; IF sqlca.SQLCode <> 0 THEN PARENT.TriggerEvent('ue_print',0,0) ELSE m_rpt_dwprint_print_item m_2 m_2 = CREATE m_rpt_dwprint_print_item ls_i = 1 DO WHILE sqlca.SQLCode = 0 IF ll_ifuse = 1 AND ll_flag = 1 AND f_pow_rpt(ll_RpID) THEN //需添加权限 f_add_menuItem_print_rpt(m_2,ls_i,ll_rpname,String(ll_RpID)) END IF FETCH rpt_dwprint INTO :ll_RpID,:ll_rpname,:ll_flag,:ll_ifuse; ls_i++ LOOP CLOSE rpt_dwprint; m_2.Item[1].Visible = FALSE m_2.PopMenu(THIS.X+50,THIS.Y+50) END IF END IF end event type cb_viewprint from uo_imflatbutton within w_saletask_sc_card integer x = 1202 integer width = 165 integer height = 164 integer taborder = 90 boolean bringtotop = true string text = "预览" string normalpicname = "preview.bmp" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;String ls_dft_old_dwname, ls_dft_new_dwname,ls_chnname,ls_dwtype Long ls_dwprintid String ls_windowname Int ls_i Long ll_billid Int li_ifuse Long ll_row String Name,ll_rpname Long ll_RpID,ll_flag,ll_ifuse w_curwin = PARENT ls_windowname = PARENT.ClassName ( ) SELECT billid,ifuse INTO :ll_billid, :li_ifuse FROM u_report_bill Where winName = :ls_windowname; IF sqlca.SQLCode <> 0 THEN li_ifuse = 0 END IF li_ifuse = 0 IF li_ifuse = 0 THEN DECLARE dft_dwprint CURSOR FOR SELECT dwprintid,dft_old_dwname, dft_new_dwname, chnname, dwtype FROM sys_dft_dwprint_dynamic WHERE dwtype = :ls_windowname AND ptype = 0 AND ifuse = 1; OPEN dft_dwprint; FETCH dft_dwprint INTO :ls_dwprintid,:ls_dft_old_dwname, :ls_dft_new_dwname,:ls_chnname, :ls_dwtype; IF sqlca.SQLCode <> 0 THEN PARENT.TriggerEvent('ue_viewprint',0,0) ELSE m_dft_dwprint_item m_1 m_1 = CREATE m_dft_dwprint_item ls_i = 1 DO WHILE sqlca.SQLCode = 0 f_add_menuItem_dft(m_1,ls_i,ls_chnname,String(ls_dwprintid)) FETCH dft_dwprint INTO :ls_dwprintid,:ls_dft_old_dwname, :ls_dft_new_dwname,:ls_chnname, :ls_dwtype; ls_i++ LOOP CLOSE dft_dwprint; m_1.PopMenu(THIS.X+50,THIS.Y+50) END IF ELSE DECLARE rpt_dwprint CURSOR FOR SELECT RpID,RpName,Flag,Ifuse FROM U_report_list WHERE billid = :ll_billid Order By RpName; OPEN rpt_dwprint; FETCH rpt_dwprint INTO :ll_RpID,:ll_rpname,:ll_flag,:ll_ifuse; IF sqlca.SQLCode <> 0 THEN PARENT.TriggerEvent('ue_rpt_viewprint',0,0) ELSE m_rpt_dwprint_item m_2 m_2 = CREATE m_rpt_dwprint_item ls_i = 1 DO WHILE sqlca.SQLCode = 0 IF f_pow_rpt(ll_RpID) AND ll_ifuse = 1 AND ll_flag = 1 THEN //权限检查f_pow_rpt( ) f_add_menuItem_rpt(m_2,ls_i,ll_rpname,String(ll_RpID)) END IF FETCH rpt_dwprint INTO :ll_RpID,:ll_rpname,:ll_flag,:ll_ifuse; ls_i++ LOOP CLOSE rpt_dwprint; m_2.Item[1].Visible = FALSE m_2.PopMenu(THIS.X+50,THIS.Y+50) END IF END IF end event type cbx_2 from checkbox within w_saletask_sc_card integer x = 1998 integer y = 92 integer width = 256 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 = 67108864 string text = "全选" boolean checked = true end type event clicked;if dw_edit_mode then return IF dw_pageretr.RowCount() = 0 THEN RETURN Long i dw_pageretr.SetRedraw(FALSE) FOR i = 1 TO dw_pageretr.RowCount() IF this.checked THEN dw_pageretr.Object.isselect[i] = 1 ELSE dw_pageretr.Object.isselect[i] = 0 END IF NEXT dw_pageretr.SetRedraw(TRUE) end event event constructor;this.backcolor = 14215660 end event type cb_add from uo_imflatbutton within w_saletask_sc_card integer x = 306 integer width = 192 integer height = 164 integer taborder = 60 boolean bringtotop = true boolean enabled = false string text = "保存&S" string normalpicname = "Save.bmp" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;String ls_errmsg IF dw_pageretr.Update() = -1 THEN IF Pos(ins_sqlerrtext,"Cannot insert duplicate key row") > 0 THEN ls_errmsg = "关键内容重复" ELSE ls_errmsg = "因为网络或其他原因>"+ins_sqlerrtext END IF ROLLBACK; MessageBox ('提示',ls_errmsg+",保存操作失败!", Information!, OK! ) RETURN END IF dw_edit_mode = NOT dw_edit_mode wf_facechange() end event type cb_audit from uo_imflatbutton within w_saletask_sc_card integer x = 846 integer width = 165 integer height = 164 integer taborder = 80 boolean bringtotop = true string text = "确认" string normalpicname = "audit.bmp" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;IF NOT f_power_ind(1362) THEN MessageBox('提示','你没有使用权限!',information!,OK!) RETURN END IF Long i,j,ll_cardid[] String ls_cardcode[],ls_msg dw_pageretr.AcceptText() j = 0 IF dw_pageretr.RowCount() > 0 THEN FOR i = 1 TO dw_pageretr.RowCount() IF dw_pageretr.Object.isselect[i] = 1 THEN j++ ll_cardid[j] = dw_pageretr.Object.cardid[i] ls_cardcode[j] = dw_pageretr.Object.cardcode[i] IF dw_pageretr.Object.flag[i] = 1 THEN ls_msg = '第' + String(dw_pageretr.Object.row[i]) + '行,卡号' + dw_pageretr.Object.cardcode[i] + ',已经确认,不能再确认!' MessageBox('错误',ls_msg,StopSign!, OK! ) RETURN END IF END IF NEXT IF j > 0 THEN IF obj_order.uof_auditcard(ll_cardid,ls_cardcode,ls_msg,TRUE) = 0 THEN MessageBox('错误',ls_msg,StopSign!, OK! ) RETURN ELSE MessageBox('提示','确认流程卡成功!' ) delete_all = FALSE cb_refresh.TriggerEvent(Clicked!) RETURN END IF ELSE MessageBox('提示','没有选择确认对象!' ) END IF END IF end event type cb_caudit from uo_imflatbutton within w_saletask_sc_card integer x = 1010 integer width = 192 integer height = 164 integer taborder = 90 boolean bringtotop = true string text = "反确认" string normalpicname = "caudit.bmp" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;IF NOT f_power_ind(1363) THEN MessageBox('提示','你没有使用权限!',information!,OK!) RETURN END IF Long i,j,ll_cardid[] String ls_cardcode[],ls_msg j = 0 IF dw_pageretr.RowCount() > 0 THEN FOR i = 1 TO dw_pageretr.RowCount() IF dw_pageretr.Object.isselect[i] = 1 THEN j++ ll_cardid[j] = dw_pageretr.Object.cardid[i] ls_cardcode[j] = dw_pageretr.Object.cardcode[i] IF dw_pageretr.Object.flag[i] = 0 THEN ls_msg = '第' + String(dw_pageretr.Object.row[i]) + '行,卡号' + dw_pageretr.Object.cardcode[i] + ',没有确认,不能反确认!' MessageBox('错误',ls_msg,StopSign!, OK! ) RETURN END IF END IF NEXT IF j > 0 THEN IF obj_order.uof_cauditcard(ll_cardid,ls_cardcode,ls_msg,TRUE) = 0 THEN MessageBox('错误',ls_msg,StopSign!, OK! ) RETURN ELSE MessageBox('提示','反确认流程卡成功!' ) delete_all = FALSE cb_refresh.TriggerEvent(Clicked!) RETURN END IF ELSE MessageBox('提示','没有选择反确认对象!' ) END IF END IF end event type ddlb_3 from dropdownlistbox within w_saletask_sc_card integer x = 18 integer y = 184 integer width = 302 integer height = 300 integer taborder = 130 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 constructor;cur_flag = Long(f_ProfileString(sys_empid, "saletask_sc_card", "cur_flag", "-1")) CHOOSE CASE cur_flag CASE 0 this.Text = "未确认" CASE 1 this.Text = "已确认" CASE -1 this.Text = "[全部]" END CHOOSE end event event selectionchanged;IF This.Text = '未确认' THEN cur_flag = 0 ELSEIF This.Text = '已确认' THEN cur_flag = 1 ELSE cur_flag = -1 END IF cb_refresh.TriggerEvent(Clicked!) end event