$PBExportHeader$w_rp_add.srw forward global type w_rp_add from w_publ_base end type type cb_save_add from uo_imflatbutton within w_rp_add end type type cb_save_exit from uo_imflatbutton within w_rp_add end type type cb_save_delet from uo_imflatbutton within w_rp_add end type type st_1 from statictext within w_rp_add end type type st_2 from statictext within w_rp_add end type type st_3 from statictext within w_rp_add end type type st_4 from statictext within w_rp_add end type type st_5 from statictext within w_rp_add end type type st_6 from statictext within w_rp_add end type type st_7 from statictext within w_rp_add end type type st_8 from statictext within w_rp_add end type type sle_1 from singlelineedit within w_rp_add end type type sle_2 from singlelineedit within w_rp_add end type type sle_4 from singlelineedit within w_rp_add end type type sle_5 from singlelineedit within w_rp_add end type type sle_6 from singlelineedit within w_rp_add end type type sle_7 from singlelineedit within w_rp_add end type type sle_8 from singlelineedit within w_rp_add end type type ddlb_1 from dropdownlistbox within w_rp_add end type type sle_3 from singlelineedit within w_rp_add end type type st_9 from statictext within w_rp_add end type type sle_9 from singlelineedit within w_rp_add end type type st_10 from statictext within w_rp_add end type type r_bar from rectangle within w_rp_add end type type s_u_rp from structure within w_rp_add end type end forward type s_u_rp from structure string rpcode string rpname integer rptype string col1name0 string col1name1 string col1name2 string col2name0 string col2name1 string col2name2 end type global type w_rp_add from w_publ_base integer width = 1847 integer height = 1080 string title = "报表增加" boolean minbox = false windowtype windowtype = response! long backcolor = 134217742 cb_save_add cb_save_add cb_save_exit cb_save_exit cb_save_delet cb_save_delet st_1 st_1 st_2 st_2 st_3 st_3 st_4 st_4 st_5 st_5 st_6 st_6 st_7 st_7 st_8 st_8 sle_1 sle_1 sle_2 sle_2 sle_4 sle_4 sle_5 sle_5 sle_6 sle_6 sle_7 sle_7 sle_8 sle_8 ddlb_1 ddlb_1 sle_3 sle_3 st_9 st_9 sle_9 sle_9 st_10 st_10 r_bar r_bar end type global w_rp_add w_rp_add type variables public: long rpid private: s_u_rp ss_u_rp Boolean IT_NEWBEGIN = FALSE //新建标志 Boolean IT_UPDATEBEGIN = FALSE//修改标志 end variables forward prototypes public subroutine p_clearmx () public function integer save (ref string arg_msg) public function integer acceptmx (string arg_rpcode, string arg_rpname, integer arg_rptype, string arg_col1name0, string arg_col1name1, string arg_col1name2, string arg_col2name0, string arg_col2name1, string arg_col2name2) end prototypes public subroutine p_clearmx ();ss_u_rp.rpcode = "" ss_u_rp.rpname ="" ss_u_rp.rptype =0 ss_u_rp.col1name0 ="" ss_u_rp.col1name1 ="" ss_u_rp.col1name2 = "" ss_u_rp.col2name0 ="" ss_u_rp.col2name1 ="" ss_u_rp.col2name2 = "" end subroutine public function integer save (ref string arg_msg);Int rslt = 1,i IF IT_NEWBEGIN = True And IT_UPDATEBEGIN = False THEN rpid = f_sys_scidentity(0,"u_rp","rpid",arg_msg,True,sqlca) //数据commit事务) IF rpid <= 0 THEN rslt = 0 GOTO ext END IF INSERT INTO u_rp (rpid, rpcode, rpname, rptype, col1name0, col1name1, col1name2, col2name0, col2name1, col2name2 ) VALUES ( :rpid, :ss_u_rp.rpcode , :ss_u_rp.rpname , :ss_u_rp.rptype, :ss_u_rp.col1name0 , :ss_u_rp.col1name1 , :ss_u_rp.col1name2 , :ss_u_rp.col2name0, :ss_u_rp.col2name1, :ss_u_rp.col2name2 ) Using sqlca; IF sqlca.SQLCode <> 0 THEN rslt = 0 arg_msg = "因网络或其它原因导致插入明细操作失败"+"~n"+sqlca.SQLErrText ROLLBACK Using sqlca; GOTO ext END IF END IF IF IT_UPDATEBEGIN = True And IT_NEWBEGIN = False THEN UPDATE u_rp SET rpcode = :ss_u_rp.rpcode, rpname = :ss_u_rp.rpname, rptype = :ss_u_rp.rptype, col1name1 = :ss_u_rp.col1name1, col1name2 = :ss_u_rp.col1name2, col2name1 = :ss_u_rp.col2name1, col2name2 = :ss_u_rp.col2name2, col1name0 = :ss_u_rp.col1name0, col2name0 = :ss_u_rp.col2name0 Where rpid = :rpid; IF sqlca.SQLCode <> 0 THEN rslt = 0 arg_msg = "因网络或其它原因导致插入明细操作失败"+"~n"+sqlca.SQLErrText ROLLBACK Using sqlca; GOTO ext END IF END IF ext: IF rslt = 0 THEN p_clearmx() ROLLBACK Using sqlca; ELSEIF rslt = 1 THEN COMMIT Using sqlca; END IF RETURN rslt end function public function integer acceptmx (string arg_rpcode, string arg_rpname, integer arg_rptype, string arg_col1name0, string arg_col1name1, string arg_col1name2, string arg_col2name0, string arg_col2name1, string arg_col2name2);Int rslt = 1 IF Trim(arg_rpcode) = "" THEN arg_rpcode = "" IF Trim(arg_rpname) = "" THEN arg_rpname = "" IF Trim(arg_col1name0) = "" THEN arg_col1name0 = "" IF Trim(arg_col1name1) = "" THEN arg_col1name1 = "" IF Trim(arg_col1name2) = "" THEN arg_col1name2 = "" IF Trim(arg_col2name0) = "" THEN arg_col2name0 = "" IF Trim(arg_col2name1) = "" THEN arg_col2name1 = "" IF Trim(arg_col2name2) = "" THEN arg_col2name2 = "" IF arg_rpcode = "" THEN MessageBox("Error","报表编码不能为空") rslt = 0 GOTO ext END IF IF arg_rpname = "" THEN MessageBox("Error","报表名称不能为空") rslt = 0 GOTO ext END IF ss_u_rp.rpcode = arg_rpcode ss_u_rp.rpname = arg_rpname ss_u_rp.rptype = arg_rptype ss_u_rp.col1name0 = arg_col1name0 ss_u_rp.col1name1 = arg_col1name1 ss_u_rp.col1name2 = arg_col1name2 ss_u_rp.col2name0 = arg_col2name0 ss_u_rp.col2name1 = arg_col2name1 ss_u_rp.col2name2 = arg_col2name2 ext: IF rslt = 0 THEN p_clearmx() RETURN rslt end function on w_rp_add.create int iCurrent call super::create this.cb_save_add=create cb_save_add this.cb_save_exit=create cb_save_exit this.cb_save_delet=create cb_save_delet this.st_1=create st_1 this.st_2=create st_2 this.st_3=create st_3 this.st_4=create st_4 this.st_5=create st_5 this.st_6=create st_6 this.st_7=create st_7 this.st_8=create st_8 this.sle_1=create sle_1 this.sle_2=create sle_2 this.sle_4=create sle_4 this.sle_5=create sle_5 this.sle_6=create sle_6 this.sle_7=create sle_7 this.sle_8=create sle_8 this.ddlb_1=create ddlb_1 this.sle_3=create sle_3 this.st_9=create st_9 this.sle_9=create sle_9 this.st_10=create st_10 this.r_bar=create r_bar iCurrent=UpperBound(this.Control) this.Control[iCurrent+1]=this.cb_save_add this.Control[iCurrent+2]=this.cb_save_exit this.Control[iCurrent+3]=this.cb_save_delet this.Control[iCurrent+4]=this.st_1 this.Control[iCurrent+5]=this.st_2 this.Control[iCurrent+6]=this.st_3 this.Control[iCurrent+7]=this.st_4 this.Control[iCurrent+8]=this.st_5 this.Control[iCurrent+9]=this.st_6 this.Control[iCurrent+10]=this.st_7 this.Control[iCurrent+11]=this.st_8 this.Control[iCurrent+12]=this.sle_1 this.Control[iCurrent+13]=this.sle_2 this.Control[iCurrent+14]=this.sle_4 this.Control[iCurrent+15]=this.sle_5 this.Control[iCurrent+16]=this.sle_6 this.Control[iCurrent+17]=this.sle_7 this.Control[iCurrent+18]=this.sle_8 this.Control[iCurrent+19]=this.ddlb_1 this.Control[iCurrent+20]=this.sle_3 this.Control[iCurrent+21]=this.st_9 this.Control[iCurrent+22]=this.sle_9 this.Control[iCurrent+23]=this.st_10 this.Control[iCurrent+24]=this.r_bar end on on w_rp_add.destroy call super::destroy destroy(this.cb_save_add) destroy(this.cb_save_exit) destroy(this.cb_save_delet) destroy(this.st_1) destroy(this.st_2) destroy(this.st_3) destroy(this.st_4) destroy(this.st_5) destroy(this.st_6) destroy(this.st_7) destroy(this.st_8) destroy(this.sle_1) destroy(this.sle_2) destroy(this.sle_4) destroy(this.sle_5) destroy(this.sle_6) destroy(this.sle_7) destroy(this.sle_8) destroy(this.ddlb_1) destroy(this.sle_3) destroy(this.st_9) destroy(this.sle_9) destroy(this.st_10) destroy(this.r_bar) end on event open;call super::open;String rpcode,rpname,col1name0,col1name1,col1name2,col2name0,col2name1,col2name2 integer rptype IF String( Message.StringParm) = "new" THEN IT_NEWBEGIN = True IT_UPDATEBEGIN = False ELSE rpid = Long(Message.StringParm) IT_NEWBEGIN = False IT_UPDATEBEGIN = True SELECT rpcode,rpname,rptype,col1name0,col1name1,col1name2,col2name0,col2name1,col2name2 INTO : rpcode,:rpname,:rptype,:col1name0,:col1name1,:col1name2,:col2name0,:col2name1,:col2name2 From u_rp Where u_rp.rpid = :rpid; sle_2.text=rpcode sle_4.text=rpname sle_3.text=col1name0 sle_5.text=col1name1 sle_6.text=col1name2 sle_9.text=col2name0 sle_7.text=col2name1 sle_8.text=col2name2 if rptype=0 then ddlb_1.text="单列" else ddlb_1.text="双列" end if ddlb_1.TriggerEvent(selectionchanged!) END IF //IF String( Message.StringParm) = "update" THEN // IT_NEWBEGIN = False // IT_UPDATEBEGIN = True //END IF //MessageBox("",String(rpid)) end event type cb_func from w_publ_base`cb_func within w_rp_add boolean visible = false integer x = 2592 integer y = 280 end type type cb_exit from w_publ_base`cb_exit within w_rp_add boolean visible = false integer x = 2363 integer y = 104 end type type cb_save_add from uo_imflatbutton within w_rp_add integer x = 46 integer y = 848 integer width = 416 integer height = 132 integer taborder = 160 boolean bringtotop = true string text = "保存并新增" string normalpicname = "new.bmp" integer picsize = 16 end type event clicked;call super::clicked;Integer rp_type String arg_msg IF ddlb_1.Text = "单列" THEN rp_type = 0 sle_7.Text = "" sle_8.Text = "" ELSE rp_type = 1 END IF IF acceptmx(Trim(sle_2.Text),Trim(sle_4.Text), rp_type,Trim(sle_3.Text),Trim(sle_5.Text),Trim(sle_6.Text),Trim(sle_9.Text),Trim(sle_7.Text),Trim(sle_8.Text)) = 0 THEN GOTO ext END IF arg_msg = "" IF Save(arg_msg ) = 0 THEN //i 为printid MessageBox('Error!',arg_msg) RETURN END IF MessageBox(publ_operator,'保存操作成功!') sle_2.Text = "" sle_3.Text = "" sle_4.Text = "" sle_5.Text = "" sle_6.Text = "" sle_7.Text = "" sle_8.Text = "" sle_9.Text = "" ext: IT_NEWBEGIN = True IT_UPDATEBEGIN = False RETURN end event type cb_save_exit from uo_imflatbutton within w_rp_add integer x = 727 integer y = 848 integer width = 411 integer height = 132 integer taborder = 170 boolean bringtotop = true string text = "保存并退出" boolean default = true string normalpicname = "open.bmp" integer picsize = 16 end type event clicked;call super::clicked;Integer rp_type string arg_msg IF ddlb_1.Text = "单列" THEN rp_type = 0 sle_7.Text = "" sle_8.Text = "" ELSE rp_type = 1 END IF IF acceptmx(Trim(sle_2.Text),Trim(sle_4.Text), rp_type,Trim(sle_3.Text),Trim(sle_5.Text),Trim(sle_6.Text),Trim(sle_9.Text),Trim(sle_7.Text),Trim(sle_8.Text)) = 0 THEN GOTO ext END IF //messagebox("",sle_9.Text) arg_msg = "" IF Save(arg_msg ) = 0 THEN //i 为printid MessageBox('Error!',arg_msg) RETURN END IF MessageBox(publ_operator,'保存操作成功!') sle_2.Text = "" sle_3.Text = "" sle_4.Text = "" sle_5.Text = "" sle_6.Text = "" sle_7.Text = "" sle_8.Text = "" sle_9.Text = "" close(parent) ext: RETURN end event type cb_save_delet from uo_imflatbutton within w_rp_add integer x = 1408 integer y = 848 integer width = 389 integer height = 132 integer taborder = 180 boolean bringtotop = true string text = "退出" boolean default = true string normalpicname = "delete.bmp" integer picsize = 16 end type event clicked;call super::clicked;close(parent) end event type st_1 from statictext within w_rp_add boolean visible = false integer x = 32 integer y = 36 integer width = 507 integer height = 80 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 = "报表id:" alignment alignment = right! boolean focusrectangle = false end type type st_2 from statictext within w_rp_add integer x = 32 integer y = 28 integer width = 507 integer height = 80 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 134217751 long backcolor = 134217748 string text = "报表编号:" boolean focusrectangle = false end type type st_3 from statictext within w_rp_add integer x = 32 integer y = 128 integer width = 507 integer height = 80 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 134217751 long backcolor = 134217748 string text = "报表名称:" boolean focusrectangle = false end type type st_4 from statictext within w_rp_add integer x = 1042 integer y = 124 integer width = 261 integer height = 80 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 134217751 long backcolor = 134217748 string text = "报表类型:" alignment alignment = right! boolean focusrectangle = false end type type st_5 from statictext within w_rp_add integer x = 23 integer y = 356 integer width = 507 integer height = 80 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 134217751 long backcolor = 134217748 string text = "左边第1列统计标题:" alignment alignment = right! boolean focusrectangle = false end type type st_6 from statictext within w_rp_add integer x = 23 integer y = 440 integer width = 507 integer height = 80 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 134217751 long backcolor = 134217748 string text = "左边第2列统计标题:" alignment alignment = right! boolean focusrectangle = false end type type st_7 from statictext within w_rp_add integer x = 23 integer y = 636 integer width = 507 integer height = 80 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 134217751 long backcolor = 134217748 string text = "右边第1列统计标题:" alignment alignment = right! boolean focusrectangle = false end type type st_8 from statictext within w_rp_add integer x = 23 integer y = 728 integer width = 507 integer height = 80 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 134217751 long backcolor = 134217748 string text = "右边第2列统计标题:" alignment alignment = right! boolean focusrectangle = false end type type sle_1 from singlelineedit within w_rp_add boolean visible = false integer x = 535 integer y = 20 integer width = 494 integer height = 84 integer taborder = 10 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 boolean enabled = false boolean border = false end type type sle_2 from singlelineedit within w_rp_add integer x = 288 integer y = 24 integer width = 1495 integer height = 84 integer taborder = 20 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 134217750 boolean border = false end type type sle_4 from singlelineedit within w_rp_add integer x = 283 integer y = 116 integer width = 731 integer height = 84 integer taborder = 20 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 134217750 boolean border = false end type type sle_5 from singlelineedit within w_rp_add integer x = 530 integer y = 332 integer width = 1253 integer height = 84 integer taborder = 20 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 134217750 boolean border = false end type type sle_6 from singlelineedit within w_rp_add integer x = 530 integer y = 424 integer width = 1253 integer height = 84 integer taborder = 20 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 134217750 boolean border = false end type type sle_7 from singlelineedit within w_rp_add integer x = 535 integer y = 628 integer width = 1253 integer height = 84 integer taborder = 20 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 134217750 boolean border = false end type type sle_8 from singlelineedit within w_rp_add integer x = 535 integer y = 720 integer width = 1253 integer height = 84 integer taborder = 20 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 134217750 boolean border = false end type type ddlb_1 from dropdownlistbox within w_rp_add integer x = 1307 integer y = 124 integer width = 480 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 string text = "双列" string item[] = {"单列","双列"} borderstyle borderstyle = stylelowered! end type event selectionchanged;IF ddlb_1.Text = "双列" THEN st_10.Visible = True sle_9.Visible = True st_7.Visible = True st_8.Visible = True sle_7.Visible = True sle_8.Visible = True // cb_save_add.y=cb_save_add.y + 300 // cb_save_exit.y=cb_save_exit.y + 300 // cb_save_delet.y=cb_save_delet.y + 300 END IF IF ddlb_1.Text = "单列" THEN st_10.Visible = False sle_9.Visible = False st_7.Visible = False st_8.Visible = False sle_7.Visible = False sle_8.Visible = False // cb_save_add.y=cb_save_add.y - 300 // cb_save_exit.y=cb_save_exit.y - 300 // cb_save_delet.y=cb_save_delet.y -300 END IF end event type sle_3 from singlelineedit within w_rp_add integer x = 530 integer y = 240 integer width = 1253 integer height = 84 integer taborder = 30 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 134217750 boolean border = false end type type st_9 from statictext within w_rp_add integer x = 197 integer y = 264 integer width = 334 integer height = 80 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 134217751 long backcolor = 134217748 string text = "左边行标题:" alignment alignment = right! boolean focusrectangle = false end type type sle_9 from singlelineedit within w_rp_add integer x = 535 integer y = 536 integer width = 1253 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 long backcolor = 134217750 boolean border = false end type type st_10 from statictext within w_rp_add integer x = 197 integer y = 560 integer width = 334 integer height = 80 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 134217751 long backcolor = 134217748 string text = "右边行标题:" alignment alignment = right! boolean focusrectangle = false end type type r_bar from rectangle within w_rp_add boolean visible = false long linecolor = 16777215 integer linethickness = 4 long fillcolor = 1073741824 integer x = 4530 integer y = 544 integer width = 146 integer height = 68 end type event constructor;this.fillcolor = 14215660 this.linecolor = 14215660 this.x = -1 this.y = -1 //this.height = ln_bar.beginy - 5 // end event