12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399 |
- $PBExportHeader$w_publ_preview.srw
- forward
- global type w_publ_preview from w_publ_base
- end type
- type cb_refresh from uo_imflatbutton within w_publ_preview
- end type
- type st_1 from statictext within w_publ_preview
- end type
- type cb_savestyle from uo_imflatbutton within w_publ_preview
- end type
- type cb_3 from uo_imflatbutton within w_publ_preview
- end type
- type ddlb_1 from dropdownlistbox within w_publ_preview
- end type
- type dw_1 from datawindow within w_publ_preview
- end type
- type ddlb_printerlist from dropdownlistbox within w_publ_preview
- end type
- type em_1 from editmask within w_publ_preview
- end type
- type st_2 from statictext within w_publ_preview
- end type
- type cbx_select_page from checkbox within w_publ_preview
- end type
- type cb_mdfmxrp from commandbutton within w_publ_preview
- end type
- type st_3 from statictext within w_publ_preview
- end type
- type st_4 from statictext within w_publ_preview
- end type
- type cb_1 from uo_imflatbutton within w_publ_preview
- end type
- type lb_1 from listbox within w_publ_preview
- end type
- type st_5 from statictext within w_publ_preview
- end type
- type st_6 from statictext within w_publ_preview
- end type
- type cbx_ifprint_xj from checkbox within w_publ_preview
- end type
- type cbx_ifprint_hj from checkbox within w_publ_preview
- end type
- type cb_2 from commandbutton within w_publ_preview
- end type
- type ln_bar from line within w_publ_preview
- end type
- type ln_bar2 from line within w_publ_preview
- end type
- type r_bar from rectangle within w_publ_preview
- end type
- type ln_1 from line within w_publ_preview
- end type
- type ln_2 from line within w_publ_preview
- end type
- end forward
- global type w_publ_preview from w_publ_base
- integer x = 9
- integer y = 24
- integer width = 4494
- integer height = 2372
- string title = "打印预览"
- boolean minbox = false
- windowtype windowtype = response!
- windowstate windowstate = maximized!
- event ue_filter ( )
- event ue_sentdataout ( )
- event ue_setprintpage_value ( )
- event ue_spp ( )
- event ue_snp ( )
- event ue_mod_printbill ( )
- cb_refresh cb_refresh
- st_1 st_1
- cb_savestyle cb_savestyle
- cb_3 cb_3
- ddlb_1 ddlb_1
- dw_1 dw_1
- ddlb_printerlist ddlb_printerlist
- em_1 em_1
- st_2 st_2
- cbx_select_page cbx_select_page
- cb_mdfmxrp cb_mdfmxrp
- st_3 st_3
- st_4 st_4
- cb_1 cb_1
- lb_1 lb_1
- st_5 st_5
- st_6 st_6
- cbx_ifprint_xj cbx_ifprint_xj
- cbx_ifprint_hj cbx_ifprint_hj
- cb_2 cb_2
- ln_bar ln_bar
- ln_bar2 ln_bar2
- r_bar r_bar
- ln_1 ln_1
- ln_2 ln_2
- end type
- global w_publ_preview w_publ_preview
- type prototypes
- //function boolean IsWindowsNT() library "PrintCtrl.dll"
- //SUBROUTINE About() library "PrintCtrl.dll"
- //function boolean GetDefaultPrinter(ref string PrinterName, int BufferLen) library "PrintCtrl.dll"
- //function boolean GetPrinterPort(ref string PrinterName, ref string Port, int PortLen, ref string Driver, int DriverLen) library "PrintCtrl.dll"
- //function boolean GetPrinterList(ref string PrinterList, ref long bufferLen) library "PrintCtrl.dll"
- //function boolean GetPrinterStatus(ref string Printer, ref long status) library "PrintCtrl.dll"
- //function boolean GetPaperList(ref string Printer, ref string PaperList, ref long bufferLen) library "PrintCtrl.dll"
- //function boolean SetPrinterDefault(ref string Printer) library "PrintCtrl.dll"
- //function boolean AddCustomPaper( ref string Printer, ref string PaperName, long pwidth, long pheight, long left, long right, long top, long bottom) library "PrintCtrl.dll"
- //function boolean DeleteCustomPaper(ref string Printer, ref string PaperName) library "PrintCtrl.dll"
- //function boolean SetUserDefinePaper(ref string Printer, ref long pWidth, ref long pHeight) library "PrintCtrl.dll"
- //function boolean GetUserDefinePaperMinMax(ref string Printer, ref long minWidth, ref long minHeight, ref long maxWidth, ref long maxHeight) library "PrintCtrl.dll"
- //function boolean GetDefaultPaper(ref string Printer, ref string PaperName, ref int nOrientation) library "PrintCtrl.dll"
- //function boolean SetDefaultPaper(ref string Printer, ref string PaperName, int nOrientation) library "PrintCtrl.dll"
- //function boolean GetDefaultPaper(ref string Printer, ref string PaperName,ref long nPapserSize, ref long nOrientation) library "PrintCtrl.dll"
- //function boolean GetPaperName(ref string Printer, ref string PaperName, int PaperSize) library "PrintCtrl.dll"
- //function boolean GetPaperSize(ref string Printer, ref string PaperName, ref int PaperSize) library "PrintCtrl.dll"
- //function boolean GetBinNameList(ref string Printer, ref string BinNameList) library "PrintCtrl.dll"
- //function boolean GetBin(ref string Printer, ref string BinName, ref int Bin) library "PrintCtrl.dll"
- //function boolean GetBinName(ref string Printer, ref string BinName, int Bin) library "PrintCtrl.dll"
- end prototypes
- type variables
- s_print_msg fact_print_msg
- String dwdataobject
- datawindowchild ins_dwcld
- s_childreportxwidth s_xwidth
- dwobject dwod
- Long retrieveid = 0,secondretrieveid = 0
- String retrievestr = ''
- uo_printer_setting lnv_printer
- String ins_printerlist [ ]
- Int p_printerlist = 0
- String dw_default_printer = '',default_printer = ''
- String default_printer_info = ''
- Long print_row
- String default_dwname,default_dname
- Int rslt_printnum = 0
- string obj_dwname
- string ls_dw_arr[]
- long it_max
- long ifwork = 1
- string ls_comments[]
- dwobject childwod
- end variables
- forward prototypes
- public function integer wf_mdfmxreport (s_childreportxwidth s_xw)
- public function integer wf_mdfx (s_childreportxwidth s_xw, integer pt)
- public function integer wf_initprinterinfo ()
- public function integer wf_setdefaultprinter ()
- public function integer wf_write_childdw_pos (string arg_childdw_name, s_childreportxwidth arg_s_xwidth)
- public function integer wf_read_childdw_pos (string arg_childdw_name, ref s_childreportxwidth arg_s_xwidth)
- public subroutine wf_readini_begin ()
- public function integer wf_trycreate_sys_dwnsyntax (ref string arg_msg)
- public function integer wf_dwcreate (string arg_dwname, string arg_formatname, ref string arg_errmsg)
- public subroutine wf_defdataobject ()
- public subroutine wf_subdwpos_strutoblob (s_childreportxwidth arg_s_xwidth, ref blob subdwpos)
- public subroutine wf_subdwpos_blobtostru (blob arg_blob, ref s_childreportxwidth arg_s_xwidth)
- public subroutine wf_dowithm (integer commid)
- public function integer wf_read_subdwpos (string arg_dwname, string arg_dname, ref s_childreportxwidth s_subdwwidth, ref string arg_msg)
- public subroutine wf_nullrow (long arg_rowcnt, long arg_pagerow, ref long arg_nullrow)
- public function integer f_export ()
- public function integer f_inport ()
- public function integer wf_check_mxreport ()
- public subroutine dw_retrieve ()
- public subroutine wf_add_pic ()
- public subroutine wf_clear_temp ()
- end prototypes
- event ue_filter();OPENWITHPARM(w_filter_query,dw_1)
- STRING LS_EXPR
- LS_EXPR=Message.StringParm
- if len(LS_EXPR)>2 and trim(LS_EXPR)='' then return
- dw_1.setfilter(LS_EXPR)
- dw_1.SetRedraw (false)
- dw_1.filter()
- dw_1.SetRedraw (TRUE)
- end event
- event ue_sentdataout;IF NOT f_power_ind(sys_func_print_sentdataout) THEN
- MessageBox(publ_operator,sys_msg_pow)
- RETURN
- END IF
- OPENWITHPARM(w_sentdataout,dw_1)
- end event
- event ue_setprintpage_value();s_print_value s_print
- s_print.obj_dw = DW_1
- s_print.dft_printername = ddlb_printerlist.text
- OpenWithParm(w_sys_printpage_value,s_print)
- end event
- event ue_spp();dw_1.ScrollPriorPage()
- end event
- event ue_snp();dw_1.ScrollNextPage()
- end event
- event ue_mod_printbill();//
- IF NOT sys_power_issuper THEN
- MessageBox('提示','只有管理员才能编辑打印格式')
- RETURN
- END IF
- String ls_dwname,ls_pblname
- ls_dwname = fact_print_msg.obj_dwname
- SELECT pblname
- INTO :ls_pblname
- FROM sys_dft_dwprint_dynamic
- Where dft_new_dwname = :ls_dwname;
- IF sqlca.SQLCode <> 0 THEN
- ls_pblname = ''
- END IF
- IF ls_pblname = '' THEN
- MessageBox('提示','该格式没有指定格式库文件,不能编辑!')
- RETURN
- END IF
- Long lib_row
- Long list_row
- str_rpt s_rpt_parm
- s_rpt_parm.auto = "auto"
- s_rpt_parm.transation = sqlca //数据库连接
- s_rpt_parm.oname = ls_dwname
- s_rpt_parm.otype = sys_cur_path + ls_pblname
- s_rpt_parm.rcname = ls_dwname
- s_rpt_parm.retr_pram_falg = -1
- s_rpt_parm.retr_flag = TRUE
- s_rpt_parm.import_flag = TRUE
- s_rpt_parm.pblpath = sys_cur_path + ls_pblname
- OpenWithParm(w_rpt_main,s_rpt_parm)
- end event
- public function integer wf_mdfmxreport (s_childreportxwidth s_xw);//wf_mdfmxreport(s_childreportxwidth)
- if s_xw.p=0 then
- return 0
- end if
- if mod(s_xw.cmplp,2)=1 then
- if s_xw.cmplx[1]>0 then dwod.object.cmpl1.width=s_xw.cmplwidth[1]
- end if
- if s_xw.cmplp=2 or s_xw.cmplp=3 then
- if s_xw.cmplx[2]>0 then dwod.object.cmpl2.width= s_xw.cmplwidth[2]
- end if
- if s_xw.cmplp=4 or s_xw.cmplp=6 or s_xw.cmplp=7 then
- if s_xw.cmplx[3]>0 then dwod.object.cmpl3.width= s_xw.cmplwidth[3]
- end if
- if s_xw.x[1]>0 then dwod.object.#1.width=s_xw.width[1]
- if s_xw.p<2 then goto mdfx
- if s_xw.x[2]>0 then dwod.object.#2.width=s_xw.width[2]
- if s_xw.p<3 then goto mdfx
- if s_xw.x[3]>0 then dwod.object.#3.width=s_xw.width[3]
- if s_xw.p<4 then goto mdfx
- if s_xw.x[4]>0 then dwod.object.#4.width=s_xw.width[4]
- if s_xw.p<5 then goto mdfx
- if s_xw.x[5]>0 then dwod.object.#5.width=s_xw.width[5]
- if s_xw.p<6 then goto mdfx
- if s_xw.x[6]>0 then dwod.object.#6.width=s_xw.width[6]
- if s_xw.p<7 then goto mdfx
- if s_xw.x[7]>0 then dwod.object.#7.width=s_xw.width[7]
- if s_xw.p<8 then goto mdfx
- if s_xw.x[8]>0 then dwod.object.#8.width=s_xw.width[8]
- if s_xw.p<9 then goto mdfx
- if s_xw.x[9]>0 then dwod.object.#9.width=s_xw.width[9]
- if s_xw.p<10 then goto mdfx
- if s_xw.x[10]>0 then dwod.object.#10.width=s_xw.width[10]
- if s_xw.p<11 then goto mdfx
- if s_xw.x[11]>0 then dwod.object.#11.width=s_xw.width[11]
- if s_xw.p<12 then goto mdfx
- if s_xw.x[12]>0 then dwod.object.#12.width=s_xw.width[12]
- if s_xw.p<13 then goto mdfx
- if s_xw.x[13]>0 then dwod.object.#13.width=s_xw.width[13]
- if s_xw.p<14 then goto mdfx
- if s_xw.x[14]>0 then dwod.object.#14.width=s_xw.width[14]
- if s_xw.p<15 then goto mdfx
- if s_xw.x[15]>0 then dwod.object.#15.width=s_xw.width[15]
- if s_xw.p<16 then goto mdfx
- if s_xw.x[16]>0 then dwod.object.#16.width=s_xw.width[16]
- if s_xw.p<17 then goto mdfx
- if s_xw.x[17]>0 then dwod.object.#17.width=s_xw.width[17]
- if s_xw.p<18 then goto mdfx
- if s_xw.x[18]>0 then dwod.object.#18.width=s_xw.width[18]
- if s_xw.p<19 then goto mdfx
- if s_xw.x[19]>0 then dwod.object.#19.width=s_xw.width[19]
- if s_xw.p<20 then goto mdfx
- if s_xw.x[20]>0 then dwod.object.#20.width=s_xw.width[20]
- if s_xw.p<21 then goto mdfx
- if s_xw.x[21]>0 then dwod.object.#21.width=s_xw.width[21]
- if s_xw.p<22 then goto mdfx
- if s_xw.x[22]>0 then dwod.object.#22.width=s_xw.width[22]
- if s_xw.p<23 then goto mdfx
- if s_xw.x[23]>0 then dwod.object.#23.width=s_xw.width[23]
- if s_xw.p<24 then goto mdfx
- if s_xw.x[24]>0 then dwod.object.#24.width=s_xw.width[24]
- if s_xw.p<25 then goto mdfx
- if s_xw.x[25]>0 then dwod.object.#25.width=s_xw.width[25]
- if s_xw.p<26 then goto mdfx
- if s_xw.x[26]>0 then dwod.object.#26.width=s_xw.width[26]
- if s_xw.p<27 then goto mdfx
- if s_xw.x[27]>0 then dwod.object.#27.width=s_xw.width[27]
- if s_xw.p<28 then goto mdfx
- if s_xw.x[28]>0 then dwod.object.#28.width=s_xw.width[28]
- if s_xw.p<29 then goto mdfx
- if s_xw.x[29]>0 then dwod.object.#29.width=s_xw.width[29]
- mdfx:
- if mod(s_xw.cmplp,2)=1 then
- if s_xw.cmplx[1]>0 then dwod.object.cmpl1.x= s_xw.cmplx[1] - 9
- end if
- if s_xw.cmplp=2 or s_xw.cmplp=3 then
- if s_xw.cmplx[2]>0 then dwod.object.cmpl2.x= s_xw.cmplx[2] - 9
- end if
- if s_xw.cmplp=4 or s_xw.cmplp=6 or s_xw.cmplp=7 then
- if s_xw.cmplx[3]>0 then dwod.object.cmpl3.x= s_xw.cmplx[3] - 9
- end if
- long obp,bp,bi,bj,bk
- obp=0
- for bi=1 to s_xw.p
- bp=50000
- bk=0
- for bj=1 to s_xw.p
- if s_xw.x[bj]<bp and s_xw.x[bj]>obp and s_xw.x[bj]>0 then
- bp=s_xw.x[bj]
- bk=bj
- end if
- next
- if mod(s_xw.cmplp,2)=1 then
- if s_xw.cmplx[1]<bp and s_xw.cmplx[1]>obp and s_xw.cmplx[1]>0 then
- bp=s_xw.cmplx[1]
- bk=0
- bi = bi -1
- dwod.object.cmpl1.x= s_xw.cmplx[1] - 9
- end if
- end if
- wf_mdfx(s_xw,bk)
- obp=bp
- next
- if mod(s_xw.cmplp,2)=1 then
- if s_xw.cmplx[1]>0 then dwod.object.cmpl1.x= s_xw.cmplx[1] - 9
- end if
- if s_xw.cmplp=2 or s_xw.cmplp=3 then
- if s_xw.cmplx[2]>0 then dwod.object.cmpl2.x= s_xw.cmplx[2] - 9
- end if
- if s_xw.cmplp=4 or s_xw.cmplp=6 or s_xw.cmplp=7 then
- if s_xw.cmplx[3]>0 then dwod.object.cmpl3.x= s_xw.cmplx[3] - 9
- end if
- //if s_xw.x[1]>0 then dwod.object.#1.x=s_xw.x[1] - 1
- //if s_xw.p<2 then goto ext
- //if s_xw.x[2]>0 then dwod.object.#2.x=s_xw.x[2] - 1
- //if s_xw.p<3 then goto ext
- //if s_xw.x[3]>0 then dwod.object.#3.x=s_xw.x[3] - 1
- //if s_xw.p<4 then goto ext
- //if s_xw.x[4]>0 then dwod.object.#4.x=s_xw.x[4] - 1
- //if s_xw.p<5 then goto ext
- //if s_xw.x[5]>0 then dwod.object.#5.x=s_xw.x[5] - 1
- //if s_xw.p<6 then goto ext
- //if s_xw.x[6]>0 then dwod.object.#6.x=s_xw.x[6] - 1
- //if s_xw.p<7 then goto ext
- //if s_xw.x[7]>0 then dwod.object.#7.x=s_xw.x[7] - 1
- //if s_xw.p<8 then goto ext
- //if s_xw.x[8]>0 then dwod.object.#8.x=s_xw.x[8] - 1
- //if s_xw.p<9 then goto ext
- //if s_xw.x[9]>0 then dwod.object.#9.x=s_xw.x[9] - 1
- //if s_xw.p<10 then goto ext
- //if s_xw.x[10]>0 then dwod.object.#10.x=s_xw.x[10] - 1
- //if s_xw.p<11 then goto ext
- //if s_xw.x[11]>0 then dwod.object.#11.x=s_xw.x[11] - 1
- //if s_xw.p<12 then goto ext
- //if s_xw.x[12]>0 then dwod.object.#12.x=s_xw.x[12] - 1
- //if s_xw.p<13 then goto ext
- //if s_xw.x[13]>0 then dwod.object.#13.x=s_xw.x[13] - 1
- //if s_xw.p<14 then goto ext
- //if s_xw.x[14]>0 then dwod.object.#14.x=s_xw.x[14] - 1
- //if s_xw.p<15 then goto ext
- //if s_xw.x[15]>0 then dwod.object.#15.x=s_xw.x[15] - 1
- //if s_xw.p<16 then goto ext
- //if s_xw.x[16]>0 then dwod.object.#16.x=s_xw.x[16] - 1
- //if s_xw.p<17 then goto ext
- //if s_xw.x[17]>0 then dwod.object.#17.x=s_xw.x[17] - 1
- //if s_xw.p<18 then goto ext
- //if s_xw.x[18]>0 then dwod.object.#18.x=s_xw.x[18] - 1
- //if s_xw.p<19 then goto ext
- //if s_xw.x[19]>0 then dwod.object.#19.x=s_xw.x[19] - 1
- //if s_xw.p<20 then goto ext
- //if s_xw.x[20]>0 then dwod.object.#20.x=s_xw.x[20] - 1
- //if s_xw.p<21 then goto ext
- //if s_xw.x[21]>0 then dwod.object.#21.x=s_xw.x[21] - 1
- //if s_xw.p<22 then goto ext
- //if s_xw.x[22]>0 then dwod.object.#22.x=s_xw.x[22] - 1
- //if s_xw.p<23 then goto ext
- //if s_xw.x[23]>0 then dwod.object.#23.x=s_xw.x[23] - 1
- //if s_xw.p<24 then goto ext
- //if s_xw.x[24]>0 then dwod.object.#24.x=s_xw.x[24] - 1
- //if s_xw.p<25 then goto ext
- //if s_xw.x[25]>0 then dwod.object.#25.x=s_xw.x[25] - 1
- //if s_xw.p<26 then goto ext
- //if s_xw.x[26]>0 then dwod.object.#26.x=s_xw.x[26] - 1
- //if s_xw.p<27 then goto ext
- //if s_xw.x[27]>0 then dwod.object.#27.x=s_xw.x[27] - 1
- //if s_xw.p<28 then goto ext
- //if s_xw.x[28]>0 then dwod.object.#28.x=s_xw.x[28] - 1
- //if s_xw.p<29 then goto ext
- //if s_xw.x[29]>0 then dwod.object.#29.x=s_xw.x[29] - 1
- //
- //ext:
- return 0
- end function
- public function integer wf_mdfx (s_childreportxwidth s_xw, integer pt);//wf_mdfx(s_childreportxwidth,int)
- if s_xw.p=0 or pt=0 then
- return 0
- end if
- CHOOSE CASE pt
- CASE 1
- if s_xw.p>=1 and s_xw.x[1]>0 then dwod.object.#1.x=s_xw.x[1] - 9
- CASE 2
- if s_xw.p>=2 and s_xw.x[2]>0 then dwod.object.#2.x=s_xw.x[2] - 9
- CASE 3
- if s_xw.p>=3 and s_xw.x[3]>0 then dwod.object.#3.x=s_xw.x[3] - 9
- CASE 4
- if s_xw.p>=4 and s_xw.x[4]>0 then dwod.object.#4.x=s_xw.x[4] - 9
- CASE 5
- if s_xw.p>=5 and s_xw.x[5]>0 then dwod.object.#5.x=s_xw.x[5] - 9
- CASE 6
- if s_xw.p>=6 and s_xw.x[6]>0 then dwod.object.#6.x=s_xw.x[6] - 9
- CASE 7
- if s_xw.p>=7 and s_xw.x[7]>0 then dwod.object.#7.x=s_xw.x[7] - 9
- CASE 8
- if s_xw.p>=8 and s_xw.x[8]>0 then dwod.object.#8.x=s_xw.x[8] - 9
- CASE 9
- if s_xw.p>=9 and s_xw.x[9]>0 then dwod.object.#9.x=s_xw.x[9] - 9
- CASE 10
- if s_xw.p>=10 and s_xw.x[10]>0 then dwod.object.#10.x=s_xw.x[10] - 9
- CASE 11
- if s_xw.p>=11 and s_xw.x[11]>0 then dwod.object.#11.x=s_xw.x[11] - 9
- CASE 12
- if s_xw.p>=12 and s_xw.x[12]>0 then dwod.object.#12.x=s_xw.x[12] - 9
- CASE 13
- if s_xw.p>=13 and s_xw.x[13]>0 then dwod.object.#13.x=s_xw.x[13] - 9
- CASE 14
- if s_xw.p>=14 and s_xw.x[14]>0 then dwod.object.#14.x=s_xw.x[14] - 9
- CASE 15
- if s_xw.p>=15 and s_xw.x[15]>0 then dwod.object.#15.x=s_xw.x[15] - 9
- CASE 16
- if s_xw.p>=16 and s_xw.x[16]>0 then dwod.object.#16.x=s_xw.x[16] - 9
- CASE 17
- if s_xw.p>=17 and s_xw.x[17]>0 then dwod.object.#17.x=s_xw.x[17] - 9
- CASE 18
- if s_xw.p>=18 and s_xw.x[18]>0 then dwod.object.#18.x=s_xw.x[18] - 9
- CASE 19
- if s_xw.p>=19 and s_xw.x[19]>0 then dwod.object.#19.x=s_xw.x[19] - 9
- CASE 20
- if s_xw.p>=20 and s_xw.x[20]>0 then dwod.object.#20.x=s_xw.x[20] - 9
- CASE 21
- if s_xw.p>=21 and s_xw.x[21]>0 then dwod.object.#21.x=s_xw.x[21] - 9
- CASE 22
- if s_xw.p>=22 and s_xw.x[22]>0 then dwod.object.#22.x=s_xw.x[22] - 9
- CASE 23
- if s_xw.p>=23 and s_xw.x[23]>0 then dwod.object.#23.x=s_xw.x[23] - 9
- CASE 24
- if s_xw.p>=24 and s_xw.x[24]>0 then dwod.object.#24.x=s_xw.x[24] - 9
- CASE 25
- if s_xw.p>=25 and s_xw.x[25]>0 then dwod.object.#25.x=s_xw.x[25] - 9
- CASE 26
- if s_xw.p>=26 and s_xw.x[26]>0 then dwod.object.#26.x=s_xw.x[26] - 9
- CASE 27
- if s_xw.p>=27 and s_xw.x[27]>0 then dwod.object.#27.x=s_xw.x[27] - 9
- CASE 28
- if s_xw.p>=28 and s_xw.x[28]>0 then dwod.object.#28.x=s_xw.x[28] - 9
- CASE 29
- if s_xw.p>=29 and s_xw.x[29]>0 then dwod.object.#29.x=s_xw.x[29] - 9
-
- END CHOOSE
- return 0
- end function
- public function integer wf_initprinterinfo ();///////////////////////读取打印机信息
- //// 用uo取打印机列表
- //int ls_ii
- //p_printerlist = lnv_printer.of_GetPrinterList ( ins_printerlist )
- //
- //for ls_ii=1 to p_printerlist
- // ddlb_printerlist.additem(ins_printerlist[ls_ii])
- //next
- ////用dll取打印机列表
- //String printerlist = Space(512)
- //Long bufferlen = 512
- //Boolean rt
- //ddlb_printerlist.Reset()
- //Long p1,p2
- //p1 = 1
- //p2 = 0
- //rt = GetPrinterList(REF printerlist, REF bufferlen)
- //IF rt THEN
- // p2 = Pos(printerlist,"~t",p1)
- // DO WHILE p2 > 0
- // ddlb_printerlist.AddItem(Mid(printerlist,p1,p2 - p1))
- // p1 = p2+1
- // p2 = Pos(printerlist,"~t",p1)
- // LOOP
- //END IF
- //用pb取打印机列表
- String ls_left, ls_prntrs,ls_printername
- Long ll_pos_n,ll_pos_t
- ddlb_printerlist.Reset()
- ls_prntrs = PrintGetPrinters()
- DO WHILE Len(Trim(ls_prntrs)) > 0
- ll_pos_n = Pos (ls_prntrs, "~n" )
- IF ll_pos_n > 0 THEN
- ls_left = Left (ls_prntrs, ll_pos_n - 1)
- ll_pos_t = Pos (ls_left, "~t" )
- ls_printername = Left (ls_left, ll_pos_t - 1)
- ddlb_printerlist.AddItem(ls_printername)
- ls_prntrs = Mid (ls_prntrs, ll_pos_n + 1)
- ELSE
- ll_pos_t = Pos (ls_prntrs, "~t" )
- ls_printername = Left (ls_prntrs, ll_pos_t - 1)
- ddlb_printerlist.AddItem(ls_printername)
- ls_prntrs = ''
- END IF
- LOOP
- // 取PB缺省打印机
- default_printer = lnv_printer.of_GetPBPrinter ( )
- //// 取dll缺省打印机
- //String printerName
- //Boolean rt_1
- //printerName = Space(255)
- //rt_1 = GetDefaultPrinter(REF printerName, 255)
- //IF rt_1 THEN
- // default_printer = Trim(printerName)
- //ELSE
- // default_printer = ''
- //END IF
- //取PB缺省打印机设置字符串
- default_printer_info=ProfileString ( "win.ini", "windows", "device", "" )
- return 0
- end function
- public function integer wf_setdefaultprinter ();///wf_setdefaultprinter
- if default_printer_info='' or pos(default_printer_info,',')=0 then return 0
- setProfileString ( "win.ini", "windows", "device", default_printer_info )
- return 1
- end function
- public function integer wf_write_childdw_pos (string arg_childdw_name, s_childreportxwidth arg_s_xwidth);//wf_write_childdw_pos(string arg_childdw_name,s_childreportxwidth arg_s_xwidth)
- //
- long ls_clmxp,ls_clm_cmplxp
- long i,j
- //列数
- ls_clmxp=arg_s_xwidth.p
- if ls_clmxp > 0 then
- for i=1 to ls_clmxp
- SetProfileString (sys_inifilename,arg_childdw_name, string(i)+".x",string(arg_s_xwidth.x[i]))
- SetProfileString (sys_inifilename,arg_childdw_name, string(i)+".width",string(arg_s_xwidth.width[i]))
- next
- end if
- //计算列数量
- ls_clm_cmplxp=arg_s_xwidth.cmplp
- choose case ls_clm_cmplxp
- case 1
- SetProfileString (sys_inifilename,arg_childdw_name, "cmpl"+string(1)+".x",string(arg_s_xwidth.cmplx[1]))
- SetProfileString (sys_inifilename,arg_childdw_name, "cmpl"+string(1)+".width",string(arg_s_xwidth.cmplwidth[1]))
- case 2
- SetProfileString (sys_inifilename,arg_childdw_name, "cmpl"+string(2)+".x",string(arg_s_xwidth.cmplx[2]))
- SetProfileString (sys_inifilename,arg_childdw_name, "cmpl"+string(2)+".width",string(arg_s_xwidth.cmplwidth[2]))
- case 3
- SetProfileString (sys_inifilename,arg_childdw_name, "cmpl"+string(1)+".x",string(arg_s_xwidth.cmplx[1]))
- SetProfileString (sys_inifilename,arg_childdw_name, "cmpl"+string(1)+".width",string(arg_s_xwidth.cmplwidth[1]))
-
- SetProfileString (sys_inifilename,arg_childdw_name, "cmpl"+string(2)+".x",string(arg_s_xwidth.cmplx[2]))
- SetProfileString (sys_inifilename,arg_childdw_name, "cmpl"+string(2)+".width",string(arg_s_xwidth.cmplwidth[2]))
- case 4
- SetProfileString (sys_inifilename,arg_childdw_name, "cmpl"+string(4)+".x",string(arg_s_xwidth.cmplx[4]))
- SetProfileString (sys_inifilename,arg_childdw_name, "cmpl"+string(4)+".width",string(arg_s_xwidth.cmplwidth[4]))
- case 5
- SetProfileString (sys_inifilename,arg_childdw_name, "cmpl"+string(2)+".x",string(arg_s_xwidth.cmplx[2]))
- SetProfileString (sys_inifilename,arg_childdw_name, "cmpl"+string(2)+".width",string(arg_s_xwidth.cmplwidth[2]))
-
- SetProfileString (sys_inifilename,arg_childdw_name, "cmpl"+string(3)+".x",string(arg_s_xwidth.cmplx[3]))
- SetProfileString (sys_inifilename,arg_childdw_name, "cmpl"+string(3)+".width",string(arg_s_xwidth.cmplwidth[3]))
- case 6
- SetProfileString (sys_inifilename,arg_childdw_name, "cmpl"+string(2)+".x",string(arg_s_xwidth.cmplx[2]))
- SetProfileString (sys_inifilename,arg_childdw_name, "cmpl"+string(2)+".width",string(arg_s_xwidth.cmplwidth[2]))
-
- SetProfileString (sys_inifilename,arg_childdw_name, "cmpl"+string(4)+".x",string(arg_s_xwidth.cmplx[3]))
- SetProfileString (sys_inifilename,arg_childdw_name, "cmpl"+string(4)+".width",string(arg_s_xwidth.cmplwidth[3]))
- case 7
- SetProfileString (sys_inifilename,arg_childdw_name, "cmpl"+string(1)+".x",string(arg_s_xwidth.cmplx[1]))
- SetProfileString (sys_inifilename,arg_childdw_name, "cmpl"+string(1)+".width",string(arg_s_xwidth.cmplwidth[1]))
-
- SetProfileString (sys_inifilename,arg_childdw_name, "cmpl"+string(2)+".x",string(arg_s_xwidth.cmplx[2]))
- SetProfileString (sys_inifilename,arg_childdw_name, "cmpl"+string(2)+".width",string(arg_s_xwidth.cmplwidth[2]))
-
- SetProfileString (sys_inifilename,arg_childdw_name, "cmpl"+string(4)+".x",string(arg_s_xwidth.cmplx[3]))
- SetProfileString (sys_inifilename,arg_childdw_name, "cmpl"+string(4)+".width",string(arg_s_xwidth.cmplwidth[3]))
- end choose
- return 1
- end function
- public function integer wf_read_childdw_pos (string arg_childdw_name, ref s_childreportxwidth arg_s_xwidth);//f_read_childdw_pos(string arg_childdw_name,s_childreportxwidth arg_s_xwidth)
- //
- int ls_i,ls_clmno
- int rslt=1
- datastore obj_dw
- obj_dw =create datastore
- obj_dw.dataobject=arg_childdw_name
- obj_dw.settransobject(sqlca)
- ls_clmno=integer(obj_dw.Describe('DataWindow.Column.Count'))
- if ls_clmno=0 then
- rslt=0
- goto ext
- end if
- for ls_i=1 to ls_clmno
- long column_xpos,column_width
- column_xpos=long(ProfileString(sys_inifilename,arg_childdw_name, string(ls_i)+".x",'-1'))
- column_width=long(ProfileString(sys_inifilename,arg_childdw_name, string(ls_i)+".width",'-1'))
- if column_xpos = -1 or column_width = -1 then
- rslt=0
- goto ext
- end if
- arg_s_xwidth.width[ls_i]=column_width
- arg_s_xwidth.x[ls_i]=column_xpos
- next
- arg_s_xwidth.p=ls_clmno
- if obj_dw.Describe('cmpl1.name')='cmpl1' then
- arg_s_xwidth.cmplwidth[1]=long(ProfileString(sys_inifilename,arg_childdw_name, "cmpl1.width",'-1'))
- arg_s_xwidth.cmplx[1]=long(ProfileString(sys_inifilename,arg_childdw_name, "cmpl1.x",'-1'))
- if arg_s_xwidth.cmplx[1] = -1 or arg_s_xwidth.cmplwidth[1] = -1 then
- rslt=0
- goto ext
- end if
- arg_s_xwidth.cmplp=1
- end if
- if obj_dw.Describe('cmpl2.name')='cmpl2' then
- arg_s_xwidth.cmplwidth[2]=long(ProfileString(sys_inifilename,arg_childdw_name, "cmpl2.width",'-1'))
- arg_s_xwidth.cmplx[2]=long(ProfileString(sys_inifilename,arg_childdw_name, "cmpl2.x",'-1'))
- if arg_s_xwidth.cmplx[2] = -1 or arg_s_xwidth.cmplwidth[2] = -1 then
- rslt=0
- goto ext
- end if
- arg_s_xwidth.cmplp=arg_s_xwidth.cmplp+2
- end if
- if obj_dw.Describe('cmpl3.name')='cmpl3' then
- arg_s_xwidth.cmplwidth[3]=long(ProfileString(sys_inifilename,arg_childdw_name, "cmpl3.width",'-1'))
- arg_s_xwidth.cmplx[3]=long(ProfileString(sys_inifilename,arg_childdw_name, "cmpl3.x",'-1'))
- if arg_s_xwidth.cmplx[3] = -1 or arg_s_xwidth.cmplwidth[3] = -1 then
- rslt=0
- goto ext
- end if
- arg_s_xwidth.cmplp=arg_s_xwidth.cmplp+4
- end if
- ext:
- return rslt
- end function
- public subroutine wf_readini_begin ();dwod=dw_1.object.mxreport
- s_mdfxwidth_tran s_mdfxw_tran
- s_mdfxw_tran.retrieveid=retrieveid
- if em_1.enabled then
- secondretrieveid=long(em_1.text)
- end if
- s_mdfxw_tran.secondretrieveid=secondretrieveid
- s_mdfxw_tran.dataobject=dwod.dataobject
- if wf_read_childdw_pos(dwod.dataobject,s_xwidth)=0 then
- return
- end if
- wf_mdfmxreport(s_xwidth)
- end subroutine
- public function integer wf_trycreate_sys_dwnsyntax (ref string arg_msg);//wf_trycreate_sys_dwnsyntax
- long rslt=1
- long cnt
- string createsql_string,t_str
- createsql_string="CREATE TABLE sys_dwnSyntax ( dwname char (50) NOT NULL,dname char (50) NOT NULL,default_flag tinyint not null default (0),dwSyntaxB image not NULL DEFAULT (''),subdwSyntaxB image not NULL DEFAULT ('')) "+&
- " ~n ALTER TABLE sys_dwnSyntax WITH NOCHECK ADD CONSTRAINT PK_sys_dwnSyntax PRIMARY KEY CLUSTERED (dwname,dname)"
- t_str="select count(*) from sys_dwnSyntax"
- Execute immediate :t_str;
- if sqlca.sqlcode=0 then //已经存在该表
- rslt=1
- goto ext
- end if
- Execute immediate :createsql_string ;
-
- if sqlca.sqlcode<>0 then
- arg_msg='建立表sys_dwnSyntax失败>>'+sqlca.sqlerrtext
- rollback ;
- rslt=0
- goto ext
- end if
- commit ;
- ext:
- return rslt
- return 0
- end function
- public function integer wf_dwcreate (string arg_dwname, string arg_formatname, ref string arg_errmsg);blob dwSyntax
- int rslt=1
- selectblob dwSyntaxB into :dwSyntax from sys_dwnSyntax where dwname=:arg_dwname and dname=:arg_formatname;
- if sqlca.sqlcode=-1 then
- Messagebox('系统提示','查询单据格式失败,原因:'+sqlca.sqlerrtext)
- rslt=0
- goto ext
- end if
- //Messagebox('string(dwSyntax)',string(dwSyntax))
- if dw_1.create(string(dwSyntax),arg_errmsg)<>1 then
- Messagebox('系统提示',arg_errmsg)
- goto ext
- end if
- dw_1.object.DataWindow.Print.Preview = 'yes'
- // dw_1.Object.DataWindow.Print.Duplex = 2
- dw_1.Object.DataWindow.Print.Preview.Rulers = "yes"
- ext:
- return rslt
- end function
- public subroutine wf_defdataobject ();String errmsg
- Long ls_count,rslt = 1
- Blob sqlblob
- SELECT count(*) INTO :ls_count FROM sys_dwnSyntax Where dwname = :fact_print_msg.obj_dwname AND default_flag = 1 ;
- IF sqlca.SQLCode = -1 THEN
- MessageBox('系统提示','查询单据格式失败'+sqlca.SQLErrText)
- RETURN
- END IF
- IF ls_count = 1 THEN
- SELECT dwname,dname INTO :default_dwname,:default_dname FROM sys_dwnSyntax Where dwname = :fact_print_msg.obj_dwname AND default_flag = 1 ;
- IF sqlca.SQLCode = -1 THEN
- MessageBox('系统提示','查询单据格式失败'+sqlca.SQLErrText)
- RETURN
- END IF
- IF wf_dwcreate(default_dwname,default_dname,errmsg) = 0 THEN
- MessageBox('系统提示','打开单据格式失败!原因:'+errmsg)
- RETURN
- END IF
- st_4.Text = default_dname
- dw_1.SetTransObject(sqlca)
- ELSEIF ls_count = 0 THEN
- st_4.Text = '标准格式'
- END IF
- st_5.text = dw_1.dataobject
- end subroutine
- public subroutine wf_subdwpos_strutoblob (s_childreportxwidth arg_s_xwidth, ref blob subdwpos);long ls_clmxp,ls_cmplxp
- long i,j
- string x_str,width_str,clmxp_str,cmpx_str,cmpwidth_str,cmp_str,subdwstr
- //列数
- ls_clmxp=arg_s_xwidth.p
- if ls_clmxp > 0 then
- for i=1 to ls_clmxp
- x_str=x_str+string(arg_s_xwidth.x[i])+','
- width_str=width_str+string(arg_s_xwidth.width[i])+','
- next
- x_str=left(x_str,len(x_str) - 1)+';'
- width_str=left(width_str,len(width_str) - 1)+';'
- clmxp_str='P:'+string(ls_clmxp)+';x:'+x_str+'width:'+width_str
- end if
- //Messagebox('clmxp_str',clmxp_str)
- ls_cmplxp=arg_s_xwidth.cmplp
- if ls_cmplxp>0 then
- for i= 1 to upperbound(arg_s_xwidth.cmplx)
- cmpwidth_str=cmpwidth_str+string(arg_s_xwidth.cmplwidth[i])+','
- cmpx_str=cmpx_str+string(arg_s_xwidth.cmplx[i])+','
- next
- cmpx_str=left(cmpx_str,len(cmpx_str) - 1)+';'
- cmpwidth_str=left(cmpwidth_str,len(cmpwidth_str) - 1)+';'
- cmp_str='cmplp:'+string(ls_cmplxp)+';x:'+cmpx_str+'width:'+cmpwidth_str
- end if
- //Messagebox('cmp_str',cmp_str)
- //Messagebox('',clmxp_str+cmp_str)
- subdwpos=blob(clmxp_str+cmp_str)
- //s_subdwxwidth
- end subroutine
- public subroutine wf_subdwpos_blobtostru (blob arg_blob, ref s_childreportxwidth arg_s_xwidth);//wf_subdwpos_blobtostru(arg_blob,arg_s_xwidth)
- string subdwpos_str,clm_str,cmp_str,clm_strx,clm_strwidth,cmplp_x,cmplp_width
- long clm_p,cmplp,i
- subdwpos_str=string(arg_blob)
- if pos(subdwpos_str,'cmplp:') > 0 then
- clm_str=mid(subdwpos_str,1,pos(subdwpos_str,'cmplp:') - 1)
- else
- clm_str=mid(subdwpos_str,1)
- end if
- cmp_str=mid(subdwpos_str,pos(subdwpos_str,'cmplp:'))
- clm_strx=mid(clm_str,pos(clm_str,'x:')+2,pos(clm_str,';width:') - pos(clm_str,'x:') - 1 ) //x_str
- clm_strwidth=mid(clm_str,pos(clm_str,'width:') + 6) //width_str
- cmplp_x=mid(cmp_str,pos(cmp_str,'x:')+2,pos(cmp_str,';width:') - pos(cmp_str,'x:') - 1 )
- cmplp_width=mid(cmp_str,pos(cmp_str,'width:') + 6) //cmplpwidth_str
- clm_p=long(mid(clm_str,3,pos(clm_str,';') - 3)) //P
- cmplp=long(mid(cmp_str,7,pos(cmp_str,';') - 7)) //cmplp
- arg_s_xwidth.p=clm_p
- arg_s_xwidth.cmplp=cmplp
- //messagebox('all',subdwpos_str)
- //MEssagebox('clm_str',clm_str)
- //MEssagebox('cmp_str',cmp_str)
- //
- //MEssagebox('clm_p',clm_p)
- //MEssagebox('cmplp',cmplp)
- //
- //MEssagebox('clm_strx',clm_strx)
- //MEssagebox('clm_strwidth',clm_strwidth)
- long xmx
- string xstr
- xmx=0
- xstr=''
- for i =1 to len(clm_strx) //x
- if mid(clm_strx,i,1)<>',' and mid(clm_strx,i,1)<>';' then
- xstr=xstr+mid(clm_strx,i,1)
- else
- xmx++
- arg_s_xwidth.x[xmx]=long(xstr)
- xstr=''
- end if
- next
-
- xmx=0
- xstr=''
- for i =1 to len(clm_strwidth) //width
- if mid(clm_strwidth,i,1)<>',' and mid(clm_strwidth,i,1)<>';' then
- xstr=xstr+mid(clm_strwidth,i,1)
- else
- xmx++
- arg_s_xwidth.width[xmx]=long(xstr)
- xstr=''
- end if
- next
-
- xmx=0
- xstr=''
- for i =1 to len(cmplp_x) //cmplp_x
- if mid(cmplp_x,i,1)<>',' and mid(cmplp_x,i,1)<>';' then
- xstr=xstr+mid(cmplp_x,i,1)
- else
- xmx++
- arg_s_xwidth.cmplx[xmx]=long(xstr)
- xstr=''
- end if
- next
-
- xmx=0
- xstr=''
- for i =1 to len(cmplp_width) //cmplp_width
- if mid(cmplp_width,i,1)<>',' and mid(cmplp_width,i,1)<>';' then
- xstr=xstr+mid(cmplp_width,i,1)
- else
- xmx++
- arg_s_xwidth.cmplwidth[xmx]=long(xstr)
- xstr=''
- end if
- next
-
-
- //messagebox('','sdfsdf')
-
-
-
-
-
-
- end subroutine
- public subroutine wf_dowithm (integer commid);//wf_dowithm
- String errmsg
- Blob subdwpos
- s_childreportxwidth s_subdwpos
- CHOOSE CASE commid
- CASE 1
- cb_mdfmxrp.TriggerEvent(Clicked!)
- CASE 21
- String ls_STR,ls_subsy
- ls_STR = dw_1.Describe("DataWindow.Syntax")
- s_preview_billformatset_tran s_billformat
- s_billformat.dwname = dw_1.DataObject
- s_billformat.dname = st_4.Text
- s_billformat.dwsyntaxb = Blob(ls_STR)
- wf_subdwpos_strutoblob(s_xwidth,subdwpos)
- s_billformat.subdwsyntaxb = subdwpos
- OpenWithParm(w_publ_preview_billformatset,s_billformat)
- s_billformat = Message.PowerObjectParm
- IF s_billformat.dname <> '' And s_billformat.dname <> '标准格式' THEN
- IF wf_dwcreate(s_billformat.dwname,s_billformat.dname,errmsg) = 0 THEN
- MessageBox('系统提示','打开单据格式失败!原因:'+errmsg)
- RETURN
- END IF
- END IF
-
- IF s_billformat.dname = '标准格式' THEN
- dw_1.DataObject = dw_1.DataObject
- END IF
-
- IF s_billformat.dname <> '' THEN
- s_childreportxwidth s_subdw
- st_4.Text = s_billformat.dname
- // wf_subdwpos_blobtostru(s_billformat.subdwsyntaxb,s_subdw)
- // wf_mdfmxreport(s_subdw)
- dw_1.Object.DataWindow.Print.Preview = 'yes'
- // dw_1.Object.DataWindow.Print.Duplex = 2
- dw_1.Object.DataWindow.Print.Preview.Rulers = "yes"
- dw_1.SetTransObject(sqlca)
- cb_refresh.TriggerEvent(Clicked!)
- END IF
-
- IF wf_read_subdwpos(dw_1.DataObject,s_billformat.dname,s_subdwpos,errmsg) = 0 THEN
- MessageBox('系统信息',errmsg)
- RETURN
- ELSE
- wf_mdfmxreport(s_subdwpos)
- END IF
-
-
- CASE 22
- st_4.Text = '标准格式'
- dw_1.DataObject = dw_1.DataObject
- dw_1.Object.DataWindow.Print.Preview = 'yes'
- // dw_1.Object.DataWindow.Print.Duplex = 2
- dw_1.Object.DataWindow.Print.Preview.Rulers = "yes"
- dw_1.SetTransObject(sqlca)
- dw_retrieve()
-
- END CHOOSE
- end subroutine
- public function integer wf_read_subdwpos (string arg_dwname, string arg_dname, ref s_childreportxwidth s_subdwwidth, ref string arg_msg);//wf_read_subdwpos(arg_dwname,arg_dname,arg_msg)
- Blob ls_subdwSyntaxB
- Int rslt = 1
- SELECTBLOB subdwSyntaxB INTO :ls_subdwSyntaxB FROM sys_dwnSyntax Where dwname = :arg_dwname AND dname = :arg_dname;
- IF sqlca.SQLCode = -1 THEN
- arg_msg = '读取单据明细表格式失败,'+sqlca.SQLErrText
- rslt = 0
- GOTO ext
- END IF
- IF Len(trim(string(ls_subdwSyntaxB))) > 0 THEN
- dwod = dw_1.Object.mxreport
- wf_subdwpos_blobtostru(ls_subdwSyntaxB,s_subdwwidth)
- END IF
- ext:
- RETURN rslt
- end function
- public subroutine wf_nullrow (long arg_rowcnt, long arg_pagerow, ref long arg_nullrow);//====================================================================
- // Function: wf_nullrow()
- //--------------------------------------------------------------------
- // Description:返回加空行数
- //--------------------------------------------------------------------
- // Arguments:
- // value long arg_rowcnt
- // value long arg_pagerow
- // reference long arg_nullrow
- //--------------------------------------------------------------------
- // Returns: (none)
- //--------------------------------------------------------------------
- // Author: yyx Date: 2004.09.13
- //--------------------------------------------------------------------
- // Modify History:
- //
- //====================================================================
- Long pagecnt,tal_rowcnt
- pagecnt = Long(arg_rowcnt / arg_pagerow)
- tal_rowcnt += arg_rowcnt
- //小计
- IF cbx_ifprint_xj.Checked THEN
- tal_rowcnt += pagecnt
- END IF
- //合计
- IF cbx_ifprint_hj.Checked THEN
- tal_rowcnt += 1
- END IF
- //tal_rowcnt = arg_rowcnt + pagecnt + 1
- IF Mod(tal_rowcnt,arg_pagerow) <> 0 THEN
- arg_nullrow = arg_pagerow - Mod(tal_rowcnt,arg_pagerow)
- ELSE
- arg_nullrow = 0
- END IF
- end subroutine
- public function integer f_export ();Blob subdwpos
- String ls_STR,ls_subsy
- s_childreportxwidth s_subdwpos
- ls_STR = dw_1.Describe("DataWindow.Syntax")
- s_preview_billformatset_tran s_billformat
- s_billformat.dwname = dw_1.DataObject
- s_billformat.dname = st_4.Text
- s_billformat.dwsyntaxb = Blob(ls_STR)
- wf_subdwpos_strutoblob(s_xwidth,subdwpos)
- s_billformat.subdwsyntaxb = subdwpos
- s_billformat.ifimporflag = 1
- OpenWithParm(w_report_inexport,s_billformat)
- RETURN 1
- end function
- public function integer f_inport ();Blob subdwpos
- String ls_STR,ls_subsy
- s_childreportxwidth s_subdwpos
- // ls_STR=dw_1.Describe("DataWindow.Syntax")
- s_preview_billformatset_tran s_billformat
- // s_billformat.dwname=dw_1.dataobject
- // s_billformat.dname=st_4.text
- // s_billformat.dwsyntaxb=blob(ls_STR)
- // wf_subdwpos_strutoblob(s_xwidth,subdwpos)
- // s_billformat.subdwsyntaxb=subdwpos
- s_billformat.ifimporflag = 0
- OpenWithParm(w_report_inexport,s_billformat)
- //s_billformat = message.powerobjectparm
- RETURN 1
- end function
- public function integer wf_check_mxreport ();Int rslt = 1
- //datawindowchild childdw
- //
- //dw_uc.GetChild("u_outware_storageid",childdw)
- //childdw.SetTransObject (sqlca)
- //IF childdw.Retrieve(cur_scid,sys_user_storageid) = 0 THEN
- // childdw.InsertRow(0)
- //END IF
- //
- RETURN rslt
- end function
- public subroutine dw_retrieve ();//dw_retrieve
-
- CHOOSE CASE fact_print_msg.retr_pram_falg
- CASE 0 //SHARE DATAWINDOW
- DATAWINDOW LS_DW
- LS_DW = fact_print_msg.SHARE_DW
- LS_DW.ShareData(DW_1)
- CASE 1 //ONE STRING PRAM
- DW_1.Retrieve(fact_print_msg.retr_pramstr)
- CASE 2 //ONE NUMBER PRAM
- DW_1.Retrieve(fact_print_msg.retr_pramnmb)
- retrieveid = fact_print_msg.retr_pramnmb
- CASE 3 //ONE DATE PRAM
- DW_1.Retrieve(fact_print_msg.retr_pramfd)
- CASE 4 //TWO DATE PRAM
- DW_1.Retrieve(fact_print_msg.retr_pramfd,fact_print_msg.retr_pramed)
- CASE 5 //TWO NUMBER PRAM
- DW_1.Retrieve(fact_print_msg.retr_pramnmb,fact_print_msg.b_long)
- CASE 6 //TWO DATETIME PRAM
- DW_1.Retrieve(fact_print_msg.retr_pramfdt,fact_print_msg.retr_pramedt)
- CASE 7 //scid and TWO DATETIME PRAM
- DW_1.Retrieve(fact_print_msg.retr_scid,fact_print_msg.retr_pramfdt,fact_print_msg.retr_pramedt)
- CASE 8 //scid,long and TWO DATETIME PRAM
- DW_1.Retrieve(fact_print_msg.retr_scid,fact_print_msg.retr_pramnmb,fact_print_msg.retr_pramfdt,fact_print_msg.retr_pramedt)
- CASE 9 //TWO NUMBER PRAM and one string pram
- DW_1.Retrieve(fact_print_msg.retr_pramnmb,fact_print_msg.retr_pramstr,fact_print_msg.b_long)
- CASE 11 //scid string
- DW_1.Retrieve(fact_print_msg.retr_scid,fact_print_msg.retr_pramstr)
- CASE 12 //scid long
- DW_1.Retrieve(fact_print_msg.retr_scid,fact_print_msg.retr_pramnmb)
- CASE 13 //scid long and TWO NUMBER PRAM
- DW_1.Retrieve(fact_print_msg.retr_scid,fact_print_msg.retr_pramnmb,fact_print_msg.b_long)
- CASE 14 //ONE NUMBER PRAM and ONE STRING PRAM
- DW_1.Retrieve(fact_print_msg.retr_pramnmb,fact_print_msg.retr_pramstr)
- CASE 15 //scid long and TWO NUMBER PRAM and null_row
- wf_nullrow(fact_print_msg.rowcnt,fact_print_msg.printrow,fact_print_msg.nullrow)
- DW_1.Retrieve(fact_print_msg.retr_scid,fact_print_msg.retr_pramnmb,fact_print_msg.printrow,fact_print_msg.nullrow)
- CASE 16 //scid long and TWO NUMBER PRAM and null_row
- wf_nullrow(fact_print_msg.rowcnt,fact_print_msg.printrow,fact_print_msg.nullrow)
- DW_1.Retrieve(fact_print_msg.retr_scid,fact_print_msg.retr_pramstr,fact_print_msg.printrow,fact_print_msg.nullrow)
- CASE 17 //SCID LONG AND STRING_ARRAY and null_row
- wf_nullrow(fact_print_msg.rowcnt,fact_print_msg.printrow,fact_print_msg.nullrow)
- DW_1.Retrieve(fact_print_msg.retr_scid,fact_print_msg.a_string_arr,fact_print_msg.printrow,fact_print_msg.nullrow,fact_print_msg.retr_pramfdt,fact_print_msg.retr_pramedt)
- case 18
- DW_1.Retrieve(fact_print_msg.retr_scid,fact_print_msg.retr_pramnmb,fact_print_msg.b_long,fact_print_msg.c_long)
- CASE ELSE
- DW_1.Retrieve()
- END CHOOSE
- IF fact_print_msg.retr_pram_falg <> 0 THEN
- DW_1.SetFilter(fact_print_msg.FILTER_STRING)
- DW_1.Filter()
- END IF
- //dw_1.object.title.text=sys_message_report_title
- //messagebox('',sys_message_report_title)
- end subroutine
- public subroutine wf_add_pic ();Long Columns,i,j,k
- String ls_modify_str
- Boolean lb_find = False
- IF Pos(Lower(dw_1.Describe("DataWindow.Objects")),'print_picture') > 0 THEN
- Columns = Long(dw_1.Describe("DataWindow.Column.Count"))
- FOR i = 1 To Columns
- ls_modify_str = dw_1.Describe("#" + String(i) + ".name")
- ls_modify_str = Lower(ls_modify_str)
- IF Pos(ls_modify_str,'mtrlid') > 0 Or Pos(ls_modify_str,'_mtrlid') > 0 THEN
- lb_find = True
- EXIT
- END IF
- NEXT
-
- IF lb_find THEN
- FOR j = 1 To dw_1.RowCount()
- IF dw_1.GetItemNumber( j, ls_modify_str ) > 0 THEN
- FOR k = 1 To UpperBound(fact_print_msg.s_pic.path)
- IF dw_1.GetItemNumber( j, ls_modify_str ) = fact_print_msg.s_pic.mtrlid[k] THEN
- dw_1.Object.Print_Picture[j] = fact_print_msg.s_pic.path[k]
- END IF
- NEXT
- ELSE
- EXIT
- END IF
- NEXT
- END IF
- END IF
- //String a,c
- //a = childwod.dataobject
- //datastore b
- //b = create datastore
- //b.DataObject = a
- //b.SetTransObject (sqlca)
- //
- //IF dw_1.Describe('mxreport.type') = 'report' And Pos(Lower(b.Describe("DataWindow.Objects")),'print_picture') > 0 THEN
- // Columns = Long(b.Describe("DataWindow.Column.Count"))
- // childwod = dw_1.Object.mxreport
- //
- // FOR i = 1 To Columns
- // ls_modify_str = b.Describe("#" + String(i) + ".name")
- // ls_modify_str = Lower(ls_modify_str)
- // IF Pos(Lower(ls_modify_str),'mtrlid') > 0 Or Pos(Lower(ls_modify_str),'_mtrlid') > 0 THEN
- // FOR j = 1 To 1
- // FOR k = 1 To UpperBound(fact_print_msg.s_pic.path)
- //// IF childwod.GetItemNumber( j, ls_modify_str ) = fact_print_msg.s_pic.mtrlid[k] THEN
- // childwod.Object.Print_Picture[j] = fact_print_msg.s_pic.path[k]
- //// END IF
- // NEXT
- // NEXT
- // END IF
- // NEXT
- //ELSE
- //END IF
- end subroutine
- public subroutine wf_clear_temp ();
- String ls_label
- String ls_type,LS_PATH
- Int li_count,i = 1
- ls_type = "*.*"
- LS_PATH = sys_cur_path+ins_fjtemppath
- lb_1.Reset()
- lb_1.DirList(LS_PATH+'\'+ls_type, 0)
- li_count = lb_1.TotalItems()
- IF li_count > 0 THEN
- FOR i = li_count TO 1 STEP -1
- ls_label = lb_1.Text(i)
- if pos(ls_label,String(sys_empid) + '_' + fact_print_msg.obj_dwname) > 0 then
-
- FileDelete(LS_PATH+'\' + ls_label)
- end if
- NEXT
- END IF
- end subroutine
- on w_publ_preview.create
- int iCurrent
- call super::create
- this.cb_refresh=create cb_refresh
- this.st_1=create st_1
- this.cb_savestyle=create cb_savestyle
- this.cb_3=create cb_3
- this.ddlb_1=create ddlb_1
- this.dw_1=create dw_1
- this.ddlb_printerlist=create ddlb_printerlist
- this.em_1=create em_1
- this.st_2=create st_2
- this.cbx_select_page=create cbx_select_page
- this.cb_mdfmxrp=create cb_mdfmxrp
- this.st_3=create st_3
- this.st_4=create st_4
- this.cb_1=create cb_1
- this.lb_1=create lb_1
- this.st_5=create st_5
- this.st_6=create st_6
- this.cbx_ifprint_xj=create cbx_ifprint_xj
- this.cbx_ifprint_hj=create cbx_ifprint_hj
- this.cb_2=create cb_2
- this.ln_bar=create ln_bar
- this.ln_bar2=create ln_bar2
- this.r_bar=create r_bar
- this.ln_1=create ln_1
- this.ln_2=create ln_2
- iCurrent=UpperBound(this.Control)
- this.Control[iCurrent+1]=this.cb_refresh
- this.Control[iCurrent+2]=this.st_1
- this.Control[iCurrent+3]=this.cb_savestyle
- this.Control[iCurrent+4]=this.cb_3
- this.Control[iCurrent+5]=this.ddlb_1
- this.Control[iCurrent+6]=this.dw_1
- this.Control[iCurrent+7]=this.ddlb_printerlist
- this.Control[iCurrent+8]=this.em_1
- this.Control[iCurrent+9]=this.st_2
- this.Control[iCurrent+10]=this.cbx_select_page
- this.Control[iCurrent+11]=this.cb_mdfmxrp
- this.Control[iCurrent+12]=this.st_3
- this.Control[iCurrent+13]=this.st_4
- this.Control[iCurrent+14]=this.cb_1
- this.Control[iCurrent+15]=this.lb_1
- this.Control[iCurrent+16]=this.st_5
- this.Control[iCurrent+17]=this.st_6
- this.Control[iCurrent+18]=this.cbx_ifprint_xj
- this.Control[iCurrent+19]=this.cbx_ifprint_hj
- this.Control[iCurrent+20]=this.cb_2
- this.Control[iCurrent+21]=this.ln_bar
- this.Control[iCurrent+22]=this.ln_bar2
- this.Control[iCurrent+23]=this.r_bar
- this.Control[iCurrent+24]=this.ln_1
- this.Control[iCurrent+25]=this.ln_2
- end on
- on w_publ_preview.destroy
- call super::destroy
- destroy(this.cb_refresh)
- destroy(this.st_1)
- destroy(this.cb_savestyle)
- destroy(this.cb_3)
- destroy(this.ddlb_1)
- destroy(this.dw_1)
- destroy(this.ddlb_printerlist)
- destroy(this.em_1)
- destroy(this.st_2)
- destroy(this.cbx_select_page)
- destroy(this.cb_mdfmxrp)
- destroy(this.st_3)
- destroy(this.st_4)
- destroy(this.cb_1)
- destroy(this.lb_1)
- destroy(this.st_5)
- destroy(this.st_6)
- destroy(this.cbx_ifprint_xj)
- destroy(this.cbx_ifprint_hj)
- destroy(this.cb_2)
- destroy(this.ln_bar)
- destroy(this.ln_bar2)
- destroy(this.r_bar)
- destroy(this.ln_1)
- destroy(this.ln_2)
- end on
- event open;call super::open;//检查本地的打印格式库跟服务器的修改时间是否一致
- String ls_msg
- //初始化打印机
- wf_initprinterinfo()
- ///////////////////// //
- String errmsg
- fact_print_msg = Message.PowerObjectParm
- Long ls_rslt
- String lls_str
- ls_comments[1] = ''
- obj_dwname = fact_print_msg.obj_dwname
- //获取DW嵌套子DW
- String ls_pblname,ls_pblpath,dwsyntax
- Long ll_beg,ll_end
- SELECT pblname
- INTO :ls_pblname
- FROM sys_dft_dwprint_dynamic
- Where dft_new_dwname = :obj_dwname;
- IF sqlca.SQLCode <> 0 THEN
- ls_pblname = ''
- END IF
- IF ls_pblname <> '' THEN
- IF f_init_dftpbl(ls_pblname,obj_dwname,ls_msg) = 0 THEN
- MessageBox('系统信息',ls_msg)
- RETURN
- END IF
- END IF
- st_1.Text = fact_print_msg.tag_text
- dw_1.DataObject = fact_print_msg.obj_dwname
- IF dw_1.Describe("DataWindow.Objects") = "" THEN
- MessageBox('提示','初始化打印格式失败,请检查重定向设置')
- dw_1.DataObject = ''
- RETURN
- END IF
- IF fact_print_msg.printrow = 0 THEN
- em_1.Enabled = True
- em_1.Text = ProfileString (sys_inifilename,dw_1.DataObject, "printrow", '10')
- fact_print_msg.printrow = Long(em_1.Text)
- ELSE
- em_1.Enabled = False
- em_1.Text = String(fact_print_msg.printrow)
- END IF
- IF f_ProfileString (sys_empid,dw_1.DataObject, "cbx_ifprint_xj", '1') = '1' THEN
- cbx_ifprint_xj.Checked = True
- ELSE
- cbx_ifprint_xj.Checked = False
- END IF
- IF f_ProfileString (sys_empid,dw_1.DataObject, "cbx_ifprint_hj", '1') = '1' THEN
- cbx_ifprint_hj.Checked = True
- ELSE
- cbx_ifprint_hj.Checked = False
- END IF
- retrieveid = fact_print_msg.retr_pramnmb
- retrievestr = fact_print_msg.retr_pramstr
- //********************
- //====================================================================
- // script - w_publ_preview inherited from w_publ_base for open
- // reason:
- //--------------------------------------------------------------------
- // modified by: yyx date: 2004.05.09
- //--------------------------------------------------------------------
- IF fact_print_msg.obj_dwname = 'dw_rp_mtrlprocode_lsx' Or fact_print_msg.obj_dwname = 'dw_rp_mtrlprocode_lsx_mg' THEN
- cbx_select_page.Checked = True
- ELSE
- cbx_select_page.Checked = False
- END IF
- //====================================================================
- dw_1.SetTransObject(sqlca)
- IF wf_trycreate_sys_dwnsyntax(errmsg) = 0 THEN
- MessageBox('提示',errmsg)
- END IF
- IF fact_print_msg.share_dw_title <> '' THEN
- dw_1.Object.rp_title.Text = fact_print_msg.share_dw_title
- END IF
- wf_defdataobject()
- dw_retrieve()
- IF wf_read_subdwpos(default_dwname,default_dname,s_xwidth,errmsg) = 0 THEN
- MessageBox('错误',errmsg)
- ELSE
- wf_mdfmxreport(s_xwidth)
- END IF
- dw_1.SetRedraw(False)
- IF /* Not IsNull(fact_print_msg.ini_group) And*/ Trim(dw_1.DataObject) <> '' THEN
- // integer li_test
- // li_test = Integer(ProfileString(sys_inifilename,dw_1.DataObject, "margin_top", "11"))
- // li_test = Integer(ProfileString(sys_inifilename,dw_1.DataObject, "margin_left", "10" ))
- // li_test = Integer(ProfileString(sys_inifilename,dw_1.DataObject, "margin_bottom", "11"))
- // li_test = Integer(ProfileString(sys_inifilename,dw_1.DataObject, "margin_right", "10" ))
-
- // dw_1.Object.datawindow.Print.margin.Top = Integer(ProfileString(sys_inifilename,dw_1.DataObject, "margin_top", "20"))
- // dw_1.Object.datawindow.Print.margin.Left = Integer(ProfileString(sys_inifilename,dw_1.DataObject, "margin_left", "15" ))
- //
- // dw_1.Object.datawindow.Print.margin.bottom = Integer(ProfileString(sys_inifilename,dw_1.DataObject, "margin_bottom", "20"))
- // dw_1.Object.datawindow.Print.margin.Right = Integer(ProfileString(sys_inifilename,dw_1.DataObject, "margin_right", "15" ))
- //
- // dw_1.Object.datawindow.Print.paper.size = Integer(ProfileString(sys_inifilename,dw_1.DataObject, "paper_size", "0" ))
- // dw_1.Object.datawindow.Print.orientation = Integer(ProfileString(sys_inifilename,dw_1.DataObject, "orientation", "0" ))
- Integer margin_top =-1,margin_left=-1,margin_bottom=-1,margin_right=-1,paper_size=-1,orientation=-1
- margin_top = Integer(f_ProfileString(sys_empid,dw_1.DataObject, "margin_top", "-1"))
-
- margin_left= Integer(f_ProfileString(sys_empid,dw_1.DataObject, "margin_left", "-1" ))
-
- margin_bottom= Integer(f_ProfileString(sys_empid,dw_1.DataObject, "margin_bottom", "-1"))
- margin_right= Integer(f_ProfileString(sys_empid,dw_1.DataObject, "margin_right", "-1" ))
-
- paper_size= Integer(f_ProfileString(sys_empid,dw_1.DataObject, "paper_size", "-1" ))
- orientation= Integer(f_ProfileString(sys_empid,dw_1.DataObject, "orientation", "-1" ))
- // dw_1.Object.datawindow.Print.margin.Top = Integer(f_ProfileString(sys_empid,dw_1.DataObject, "margin_top", "20"))
- // dw_1.Object.datawindow.Print.margin.Left = Integer(f_ProfileString(sys_empid,dw_1.DataObject, "margin_left", "15" ))
- //
- // dw_1.Object.datawindow.Print.margin.bottom = Integer(f_ProfileString(sys_empid,dw_1.DataObject, "margin_bottom", "20"))
- // dw_1.Object.datawindow.Print.margin.Right = Integer(f_ProfileString(sys_empid,dw_1.DataObject, "margin_right", "15" ))
- //
- // dw_1.Object.datawindow.Print.paper.size = Integer(f_ProfileString(sys_empid,dw_1.DataObject, "paper_size", "0" ))
- // dw_1.Object.datawindow.Print.orientation = Integer(f_ProfileString(sys_empid,dw_1.DataObject, "orientation", "0" ))
- if margin_top > 0 then
- dw_1.Object.datawindow.Print.margin.Top =margin_top
- end if
- if margin_left > 0 then
- dw_1.Object.datawindow.Print.margin.Left =margin_left
- end if
- if margin_bottom > 0 then
- dw_1.Object.datawindow.Print.margin.bottom =margin_bottom
- end if
- if margin_right > 0 then
- dw_1.Object.datawindow.Print.margin.Right =margin_right
- end if
-
- if paper_size > 0 then
- dw_1.Object.datawindow.Print.paper.size =paper_size
- end if
- if orientation > 0 then
- dw_1.Object.datawindow.Print.orientation =orientation
- end if
-
-
- dw_default_printer = f_ProfileString(sys_empid,dw_1.DataObject, "dw_default_printer ", "" )
-
- IF dw_default_printer = '' THEN
- ddlb_printerlist.Text = default_printer
- ELSE
- ddlb_printerlist.Text = dw_default_printer
-
- END IF
- END IF
- dw_1.SetRedraw(True)
- /////////////////////////////////////////////
- // dw_1.Modify("DataWindow.Print.Paper.Size=256")
- // //25.4 centimeters long
- // dw_1.Modify("DataWindow.Print.CustomPage.Length=140")
- // //19.5 centimeters wide 94
- // dw_1.Modify("DataWindow.Print.CustomPage.Width=210")
- /////////////////////////////////////////
- dw_1.Object.datawindow.Print.Preview = 'yes'
- dw_1.Object.datawindow.Print.Preview.rulers = "yes"
- IF Not dw_1.Describe('mxreport.type') = 'report' Or retrieveid = 0 And retrievestr = '' THEN
- cb_mdfmxrp.Enabled = False //检查是否存在名为mxreport的report没有则此功能不可以用
- END IF
- IF fact_print_msg.ifpic = 1 THEN
- wf_add_pic()
- END IF
- //read ini
- //if cb_mdfmxrp.enabled then
- // wf_readini_begin()
- //end if
- ///
- /*
- 使用调整子dw的列宽及序列功能的约定:
- 1.明细内嵌dw的名称必须为'mxreport'
- 2.mxreport的retrieve参数必须为主dw的第一列值,必须是一个,且必须是long
- 3.mxreport必须是grid
- 4.显示的列必须都是selete列,不可以是dw计算列
- 5.一般(14cm宽打印纸)mxreport.width=3287
- 6.mxreport中的计算列必须命名为(最多支持三个):cmpl1,cmpl2,cmpl3
- */
- //dw_1.modify('title.text="'+trim(fact_print_msg.tag_text)+'"')
- //dw_1.object.datawindow.print.preview.zoom = 100
- /*structure: s_print_msg
- obj_dwname: retrieve datawindow 名称
- share_dw : 目标 share datawindow 名称
- retr_pram_falg :int 参数传递形式
- case 0 //share datawindow
- datawindow ls_dw
- ls_dw=fact_print_msg.share_dw
- ls_dw.sharedata(dw_1)
- case 1 //one string pram
- dw_1.retrieve(fact_print_msg.retr_pramstr)
- case 2 //one number pram
- dw_1.retrieve(fact_print_msg.retr_pramnmb)
- case 3 //one date pram
- dw_1.retrieve(fact_print_msg.retr_pramfd)
- case 4 //two date pram
- dw_1.retrieve(fact_print_msg.retr_pramfd,fact_print_msg.retr_pramed)
- case else
- dw_1.retrieve()
-
- retr_pramstr
- retr_pramnmb
- retr_pramfd
- retr_pramed
-
- tag_text
- filter_string : filter 表达式
- title :datawindow title
- titleobjectname :datawindow title
- setup_flag :0- printsetup enabled 1- printsetup disabled
- pagech_flag : 1 打印时提示选页打印
- ini_group : 存取普通打印设置的系统 ini 文件组名,为空时不存取
- */
- end event
- event resize;dw_1.setredraw(false)
- ln_bar.endx = this.width
- ln_bar2.endx = this.width
- ln_1.endx = this.width
- ln_2.endx = this.width
- r_bar.width = this.width
- DW_1.WIDTH=THIS.WIDTH - DW_1.X - 40
- DW_1.HEIGHT=THIS.HEIGHT - DW_1.Y - 150
- dw_1.setredraw(true)
- end event
- event activate;
- if dw_1.DataObject <> '' then dw_1.Modify("DataWindow.Print.Preview = 'yes'")
- end event
- event close;call super::close;wf_clear_temp()
- CloseWithReturn(THIS,rslt_printnum)
- end event
- event ue_before_open;call super::ue_before_open;///
- end event
- type cb_func from w_publ_base`cb_func within w_publ_preview
- boolean visible = false
- integer x = 155
- integer y = 452
- integer width = 265
- integer height = 92
- boolean enabled = false
- end type
- type cb_exit from w_publ_base`cb_exit within w_publ_preview
- integer x = 709
- integer width = 151
- integer height = 164
- integer picsize = 16
- toolbaralignment pic_align = alignattop!
- boolean border = false
- end type
- type cb_refresh from uo_imflatbutton within w_publ_preview
- integer width = 151
- integer height = 164
- integer taborder = 110
- string text = "刷新"
- string normalpicname = "refresh.bmp"
- integer picsize = 16
- toolbaralignment pic_align = alignattop!
- boolean border = false
- end type
- event clicked;call super::clicked;setProfileString (sys_inifilename,dw_1.DataObject, "printrow", em_1.text)
- fact_print_msg.printrow = Long(em_1.Text)
- dw_retrieve()
- String errmsg
- IF wf_read_subdwpos(default_dwname,default_dname,s_xwidth,errmsg) = 0 THEN
- MessageBox('系统信息',errmsg)
- ELSE
- wf_mdfmxreport(s_xwidth)
- END IF
- dw_1.SetRedraw(TRUE)
- end event
- type st_1 from statictext within w_publ_preview
- integer x = 928
- integer y = 36
- integer width = 1120
- integer height = 60
- integer textsize = -9
- integer weight = 700
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- long backcolor = 134217739
- string text = "标题"
- boolean focusrectangle = false
- end type
- event constructor;this.backcolor = 14215660
- end event
- type cb_savestyle from uo_imflatbutton within w_publ_preview
- integer x = 302
- integer width = 256
- integer height = 164
- integer taborder = 120
- string text = "单据格式"
- string normalpicname = "other.bmp"
- integer picsize = 16
- toolbaralignment pic_align = alignattop!
- boolean border = false
- end type
- event clicked;call super::clicked;m_publ_preview_dnset m_dnset
- m_dnset = CREATE m_publ_preview_dnset
- IF NOT dw_1.Describe('mxreport.type') = 'report' or retrieveid = 0 and retrievestr = '' THEN m_dnset.m_main.m_mxd.Enabled = FALSE //检查是否存在名为mxreport的report没有则此功能不可以用
- m_dnset.m_main.PopMenu(THIS.X+50,THIS.Y+50)
- //m_Dfc_Control_PopupMenu dmPopupMenu
- //String menustr
- //
- //menustr = menustr + "|" + "Text=数据发送~tEvent=ue_sentdataout"
- //menustr = menustr + "|" + "Text=筛选~tEvent=ue_filter"
- //menustr = menustr + "|" + "Text=页面设置~tEvent=ue_setprintpage_value"
- //menustr = menustr + "|" + "Text=-"
- //menustr = menustr + "|" + "Text=下一页~tEvent=ue_snp"
- //menustr = menustr + "|" + "Text=上一页~tEvent=ue_spp"
- //
- //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_3 from uo_imflatbutton within w_publ_preview
- integer x = 151
- integer width = 151
- integer height = 164
- integer taborder = 110
- string text = "功能"
- string normalpicname = "setting.bmp"
- integer picsize = 16
- toolbaralignment pic_align = alignattop!
- boolean border = false
- end type
- event clicked;call super::clicked;//m_publ_preview_func m_func
- //m_func=create m_publ_preview_func
- //m_func.m_0.popmenu(this.x+50,this.y+50)
- m_Dfc_Control_PopupMenu dmPopupMenu
- String menustr
- menustr = menustr + "|" + "Text=数据发送~tEvent=ue_sentdataout"
- menustr = menustr + "|" + "Text=筛选~tEvent=ue_filter"
- menustr = menustr + "|" + "Text=页面设置~tEvent=ue_setprintpage_value"
- menustr = menustr + "|" + "Text=-"
- menustr = menustr + "|" + "Text=下一页~tEvent=ue_snp"
- menustr = menustr + "|" + "Text=上一页~tEvent=ue_spp"
- 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_1 from dropdownlistbox within w_publ_preview
- integer x = 411
- integer y = 184
- integer width = 283
- integer height = 632
- integer taborder = 100
- integer textsize = -9
- integer weight = 400
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- long textcolor = 33554432
- string text = "适当大小"
- boolean vscrollbar = true
- string item[] = {"100%","150%","200%","75%","50%","25%"}
- borderstyle borderstyle = stylelowered!
- end type
- event selectionchanged;dw_1.Object.DataWindow.Print.Preview.Zoom = INTEGER(LEFT(TRIM(this.text),LEN(TRIM(this.text)) - 1))
- dw_1.object.DataWindow.Print.Preview = 'yes'
- end event
- event constructor;if THIS.TotalItems ( )>=1 then THIS.SelectItem(1)
- end event
- type dw_1 from datawindow within w_publ_preview
- integer y = 292
- integer width = 2848
- integer height = 1284
- integer taborder = 90
- boolean bringtotop = true
- boolean hscrollbar = true
- boolean vscrollbar = true
- boolean hsplitscroll = true
- boolean livescroll = true
- borderstyle borderstyle = stylelowered!
- end type
- event rbuttondown;if not f_power_ind(666) then
- // messagebox(publ_operator,'你没有使用权限!')
- return
- end if
- if LOWER(LEFT(dwo.type,4))='text' then
- s_inputbox S_SREU
- STRING LS_STR,column_name
- S_SREU.TITLE='目前标题为: '+dwo.TEXT+' 。请输入新标题: '
- S_SREU.OLD_TEXT=dwo.TEXT
- column_name=DWO.NAME
- openwithparm(w_inputbox,S_SREU)
- LS_STR=Message.StringParm
- if trim(LS_STR)<>'' AND dwo.TEXT<>LS_STR then
- THIS.Modify(column_name+'.text="'+LS_STR+'"')
- END IF
- end if
- //if string(dwo.type)='report' then
- // messagebox('report',string(DWO.NAME))
- //string str_mdf='',str_mdf_width='',str_mdf_x='',str_ls=''
- //int ls_i,ls_clmno,ls_rslt
- //
- ////ins_dwcld=create DataWindowChild
- //ls_rslt=dw_1.getchild(string(DWO.NAME),ins_dwcld)
- //messagebox('',string(ls_rslt))
- // if ls_rslt =1 then
- // ls_clmno=integer(ins_dwcld.Describe('DataWindow.Column.Count'))
- // messagebox('DataWindow.Column.Count',string(ls_clmno))
- // //integer(ins_dwcld.Object.DataWindow.Column.Count)
- // for ls_i=1 to ls_clmno
- // str_ls= '#'+string(ls_i)+'.width='+ins_dwcld.Describe('#'+string(ls_i)+'.width')
- // str_mdf_width=str_mdf_width+'~n'+str_ls
- //
- // str_ls= '#'+string(ls_i)+'.x='+ins_dwcld.Describe('#'+string(ls_i)+'.x')
- // str_mdf_x=str_mdf_x+'~n'+str_ls
- //
- // next
- // str_mdf=str_mdf_width+'~n'+str_mdf_x
- //
- // messagebox('str_mdf',str_mdf)
- // end if
- //end if
- //
- ////1.取子dw,及类型,是grid则处理
- ////2.取dataobject,
- ////3.弹出窗口,设dataobject,sharedata
- ////4.记录语句descrp(列宽,列系列)
- ////5.修改原子dw(Modify)
- ////
- ////
- end event
- event doubleclicked;IF f_power_ind(666) AND NOT sys_power_issuper THEN
- MessageBox(publ_operator,'你没有使用权限!')
- RETURN
- END IF
- IF dwo.TYPE = 'datawindow' THEN RETURN
- IF dwo.TYPE = 'line' THEN RETURN
- s_preview_dwoprp_tran S_SREU
- S_SREU.yn = 0
- S_SREU.X = Integer(dwo.X)
- S_SREU.Y = Integer(dwo.Y)
- S_SREU.Width = Integer(dwo.Width)
- S_SREU.Height = Integer(dwo.Height)
- S_SREU.dwotype = dwo.TYPE
- S_SREU.dwoname = dwo.Name
- IF Lower(Left(dwo.TYPE,4)) = 'text' THEN
- S_SREU.dwotext = dwo.Text
- ELSE
- S_SREU.dwotext = ''
- END IF
- OpenWithParm(w_publ_preview_setdwoprp,S_SREU)
- S_SREU = Message.PowerObjectParm
- IF S_SREU.yn = 1 THEN
- dwo.X = S_SREU.X
- dwo.Y = S_SREU.Y
- dwo.Width = S_SREU.Width
- dwo.Height = S_SREU.Height
-
- IF Lower(Left(dwo.TYPE,4)) = 'text' THEN
-
- THIS.Modify(dwo.Name+'.text="'+S_SREU.dwotext+'"')
- // dwo.TEXT=S_SREU.dwotext
-
- END IF
- END IF
- end event
- type ddlb_printerlist from dropdownlistbox within w_publ_preview
- integer x = 1408
- integer y = 184
- integer width = 1376
- integer height = 1380
- integer taborder = 110
- boolean bringtotop = true
- integer textsize = -9
- integer weight = 400
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- long textcolor = 33554432
- boolean autohscroll = true
- boolean vscrollbar = true
- borderstyle borderstyle = stylelowered!
- end type
- type em_1 from editmask within w_publ_preview
- integer x = 256
- integer y = 184
- integer width = 151
- integer height = 92
- integer taborder = 120
- boolean bringtotop = true
- integer textsize = -9
- integer weight = 400
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- long textcolor = 33554432
- alignment alignment = right!
- borderstyle borderstyle = stylelowered!
- string mask = "######"
- end type
- event constructor;//messagebox("",ProfileString (sys_inifilename,dw_1.DATAOBJECT, "printrow", '18'))
- //
- //this.text=ProfileString (sys_inifilename,dw_1.DATAOBJECT, "printrow", '18')
- //cb_6.triggerevent(clicked!)
- end event
- event modified;if long(trim(em_1.text))<=2 then
- em_1.text='2'
- end if
- setProfileString (sys_inifilename,dw_1.DATAOBJECT, "printrow", trim(em_1.text))
- end event
- type st_2 from statictext within w_publ_preview
- integer x = 5
- integer y = 204
- integer width = 238
- 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 = 134217739
- boolean enabled = false
- string text = "每页行数"
- alignment alignment = right!
- boolean focusrectangle = false
- end type
- type cbx_select_page from checkbox within w_publ_preview
- integer x = 718
- integer y = 192
- integer width = 343
- integer height = 72
- boolean bringtotop = true
- integer textsize = -9
- integer weight = 700
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- long textcolor = 16711680
- long backcolor = 134217739
- string text = "选页打印"
- end type
- type cb_mdfmxrp from commandbutton within w_publ_preview
- boolean visible = false
- integer x = 421
- integer y = 456
- integer width = 379
- integer height = 92
- integer taborder = 40
- integer textsize = -9
- integer weight = 400
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- string text = "明细网格调整"
- end type
- event clicked;dwod=dw_1.object.mxreport
- s_mdfxwidth_tran s_mdfxw_tran
- s_mdfxw_tran.retrievetype = fact_print_msg.retr_pram_falg
- s_mdfxw_tran.retrieveid=retrieveid
- ///////////yyx0821
- if em_1.enabled then
- secondretrieveid=long(em_1.text)
- else
- secondretrieveid = sys_scid
- end if
- ///////////
- s_mdfxw_tran.secondretrieveid=secondretrieveid
- s_mdfxw_tran.retrievestr=fact_print_msg.retr_pramstr
- s_mdfxw_tran.dataobject=dwod.dataobject
- openwithparm(w_publ_preview_mdfcrptxwidth,s_mdfxw_tran)
- s_xwidth=message.powerobjectparm
- //write ini
- //wf_write_childdw_pos(s_mdfxw_tran.dataobject,s_xwidth)
- //
- wf_mdfmxreport(s_xwidth)
- end event
- type st_3 from statictext within w_publ_preview
- integer x = 2075
- integer y = 36
- integer width = 288
- 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 = 134217739
- boolean enabled = false
- string text = "单据格式:"
- boolean focusrectangle = false
- end type
- event constructor;this.backcolor = 14215660
- end event
- type st_4 from statictext within w_publ_preview
- integer x = 2368
- integer y = 36
- integer width = 1001
- 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 = 134217739
- boolean enabled = false
- boolean focusrectangle = false
- end type
- event constructor;this.backcolor = 14215660
- end event
- type cb_1 from uo_imflatbutton within w_publ_preview
- integer x = 558
- integer width = 151
- integer height = 164
- integer taborder = 130
- boolean bringtotop = true
- string text = "打印"
- boolean default = true
- string normalpicname = "print.bmp"
- integer picsize = 16
- toolbaralignment pic_align = alignattop!
- boolean border = false
- end type
- event clicked;call super::clicked;IF cbx_select_page.Checked THEN
- dw_default_printer = ddlb_printerlist.Text
-
- IF dw_default_printer = '' THEN
- MessageBox('提示','请选择打印机')
- RETURN
- END IF
-
- lnv_printer.of_setdefault ( dw_default_printer )
- OpenWithParm(w_sys_printpagesetting,dw_1)
- wf_setdefaultprinter()
- ELSE
- dw_default_printer = ddlb_printerlist.Text
-
- IF dw_default_printer = '' THEN
- MessageBox('提示','请选择打印机')
- RETURN
- END IF
-
- lnv_printer.of_setdefault ( dw_default_printer )
- dw_1.Print()
- wf_setdefaultprinter()
- END IF
- IF IsNull(fact_print_msg.ini_group) OR Trim(dw_1.DataObject) = '' THEN RETURN
- f_SetProfileString (sys_empid,dw_1.DataObject, "margin_top", String(dw_1.Object.datawindow.Print.margin.Top))
- f_SetProfileString (sys_empid,dw_1.DataObject, "margin_left", String(dw_1.Object.datawindow.Print.margin.Left))
- f_SetProfileString (sys_empid,dw_1.DataObject, "margin_bottom", String(dw_1.Object.datawindow.Print.margin.bottom))
- f_SetProfileString (sys_empid,dw_1.DataObject, "margin_right", String(dw_1.Object.datawindow.Print.margin.Right))
- f_SetProfileString (sys_empid,dw_1.DataObject, "paper_size", String(dw_1.Object.datawindow.Print.paper.size) )
- f_SetProfileString (sys_empid,dw_1.DataObject, "orientation", String(dw_1.Object.datawindow.Print.orientation))
- f_SetProfileString (sys_empid,dw_1.DataObject, "dw_default_printer ", dw_default_printer )
- rslt_printnum++
- IF fact_print_msg.obj_dwname = 'dw_rp_order_ml_lsx' OR fact_print_msg.obj_dwname = 'dw_rp_order_ml_lsx_mg' THEN
- ELSE
- cb_exit.TriggerEvent(Clicked!)
- END IF
- end event
- type lb_1 from listbox within w_publ_preview
- boolean visible = false
- integer x = 2880
- integer y = 56
- integer width = 549
- integer height = 452
- integer taborder = 120
- boolean bringtotop = true
- integer textsize = -12
- integer weight = 400
- fontcharset fontcharset = ansi!
- fontpitch fontpitch = variable!
- fontfamily fontfamily = swiss!
- string facename = "Arial"
- long textcolor = 33554432
- borderstyle borderstyle = stylelowered!
- end type
- type st_5 from statictext within w_publ_preview
- integer x = 2368
- integer y = 100
- integer width = 1001
- 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 = 134217739
- boolean enabled = false
- boolean focusrectangle = false
- end type
- event constructor;this.backcolor = 14215660
- end event
- type st_6 from statictext within w_publ_preview
- integer x = 1079
- integer y = 204
- integer width = 329
- 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 = 134217739
- string text = "打印机选择:"
- alignment alignment = right!
- boolean focusrectangle = false
- end type
- type cbx_ifprint_xj from checkbox within w_publ_preview
- integer x = 3209
- integer y = 188
- integer width = 416
- integer height = 72
- boolean bringtotop = true
- integer textsize = -9
- integer weight = 400
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- long textcolor = 33554432
- long backcolor = 134217739
- string text = "每页有小计行"
- end type
- event clicked;Int li_cbx_ifprint_xj
- IF Checked THEN
- li_cbx_ifprint_xj = 1
- ELSE
- li_cbx_ifprint_xj = 0
- END IF
- f_SetProfileString (sys_empid,dw_1.DataObject,"cbx_ifprint_xj",String(li_cbx_ifprint_xj))
- end event
- type cbx_ifprint_hj from checkbox within w_publ_preview
- integer x = 3634
- integer y = 188
- integer width = 416
- integer height = 72
- boolean bringtotop = true
- integer textsize = -9
- integer weight = 400
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- long textcolor = 33554432
- long backcolor = 134217739
- string text = "最后有合计行"
- end type
- event clicked;Int li_cbx_ifprint_hj
- IF Checked THEN
- li_cbx_ifprint_hj = 1
- ELSE
- li_cbx_ifprint_hj = 0
- END IF
- f_SetProfileString (sys_empid,dw_1.DataObject,"cbx_ifprint_hj",String(li_cbx_ifprint_hj))
- end event
- type cb_2 from commandbutton within w_publ_preview
- integer x = 2793
- integer y = 180
- integer width = 402
- integer height = 84
- integer taborder = 130
- boolean bringtotop = true
- integer textsize = -9
- integer weight = 400
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- string text = "读取上次布局"
- end type
- event clicked;dw_1.SetRedraw(False)
- IF Trim(dw_1.DataObject) <> '' THEN
- Integer margin_top =-1,margin_left=-1,margin_bottom=-1,margin_right=-1,paper_size=-1,orientation=-1
- margin_top = Integer(f_ProfileString(sys_empid,dw_1.DataObject, "margin_top", "-1"))
-
- margin_left= Integer(f_ProfileString(sys_empid,dw_1.DataObject, "margin_left", "-1" ))
-
- margin_bottom= Integer(f_ProfileString(sys_empid,dw_1.DataObject, "margin_bottom", "-1"))
- margin_right= Integer(f_ProfileString(sys_empid,dw_1.DataObject, "margin_right", "-1" ))
-
- paper_size= Integer(f_ProfileString(sys_empid,dw_1.DataObject, "paper_size", "-1" ))
- orientation= Integer(f_ProfileString(sys_empid,dw_1.DataObject, "orientation", "-1" ))
- if margin_top > 0 then
- dw_1.Object.datawindow.Print.margin.Top =margin_top
- end if
- if margin_left > 0 then
- dw_1.Object.datawindow.Print.margin.Left =margin_left
- end if
- if margin_bottom > 0 then
- dw_1.Object.datawindow.Print.margin.bottom =margin_bottom
- end if
- if margin_right > 0 then
- dw_1.Object.datawindow.Print.margin.Right =margin_right
- end if
-
- if paper_size > 0 then
- dw_1.Object.datawindow.Print.paper.size =paper_size
- end if
- if orientation > 0 then
- dw_1.Object.datawindow.Print.orientation =orientation
- end if
-
- END IF
- dw_1.SetRedraw(True)
- end event
- type ln_bar from line within w_publ_preview
- long linecolor = 268435456
- integer linethickness = 4
- integer beginy = 172
- integer endx = 2007
- integer endy = 172
- end type
- type ln_bar2 from line within w_publ_preview
- long linecolor = 16777215
- integer linethickness = 4
- integer beginy = 176
- integer endx = 2039
- integer endy = 176
- end type
- type r_bar from rectangle within w_publ_preview
- long linecolor = 16777215
- integer linethickness = 4
- long fillcolor = 1073741824
- integer x = 2711
- integer y = 12
- 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
- type ln_1 from line within w_publ_preview
- long linecolor = 268435456
- integer linethickness = 4
- integer beginy = 284
- integer endx = 2016
- integer endy = 284
- end type
- type ln_2 from line within w_publ_preview
- long linecolor = 16777215
- integer linethickness = 4
- integer beginy = 288
- integer endx = 2048
- integer endy = 288
- end type
|