PROCEDURE PRRECH * prrech: eingabe rechnung **prog="3" PRIVATE aDataB := {}, aDataZ := {}, nDiff := 0, n4 := 0 store space(125) to t1,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14,t15 store space(125) to t16,t17,t18,t19,t20,t21,t22,t23,t24,t25,t26,t27 *store space(125) to t28,t29,t30,t31,t32,t33,t34,t35,t36,t37 set confirm off set function 5 to "sz " set function 6 to "sv " set function 7 to "sp " zkzoffge=" " nt=" " strich="" sumrech=0 auf=" " zttmm=" " zdate=date() schneu=0 store 0 to schsort,merkzei,aufzei,az,schgeb,schnsei,schaufbau,schf,emenge letz=1 store space(20) to zname,zvorname,zansp_name,zansp_vname nrstamm=" " //* mart=space(6) mbezeich=space(45) //mbezeich2=space(45) mpreis=0 *// do prrvor zauftrnr=val(auf) if auf="!" .or. schgeb=1 clear clear all return endif clear if prog="3" @ 1,3 say "Rechnung-Eigenleist.: " + trim(zvorname) +" "+zname endif if prog="4" @ 1,3 say "Nachtrags-Rechnung: " + trim(zvorname) +" "+zname endif @ 1,45 say "Ansprech-P.: " + zansp_name @ 2,0 say strich + strich if aufzei<>0 do aufbau else @ 21,0 say strich + strich @ 24,0 say "-ndern l-schen e-infgen g-ruppe "; + "dru-cken anz-eigen ende" aufzei=0 az=3 endif select 8 use serie index xserie select 6 aezei=0 do while nrstamm<>"ende " @ 22,0 get nrstamm read if nrstamm="sv " .or. nrstamm="sz ".or.nrstamm="sp " select 8 if nrstamm="sp " if .not. eof() skip +1 endif do while .t. if stop="x".or.stop="X" exit else if .not. eof() skip +1 else exit endif endif enddo endif if nrstamm="sv " if .not. eof() skip +1 endif endif if nrstamm="sz " if .not. bof() skip -1 endif endif nrstamm=art @ 22,7 say b1+str(&v_p_s,8,2) select 6 loop endif @ 22,6 say space(73) @ 23,6 say space(73) if (val(nrstamm)>=0 .and. val(nrstamm)<999999).and.nrstamm<>"dru"; .and.nrstamm<>"anz".and.nrstamm<>"".and.nrstamm<>"l".and.nrstamm<>"e".and.nrstamm<>"g" find &nrstamm if eof() @ 22,7 say "Artikel-Nr nicht vorhanden !!!" nrstamm=" " loop endif zkennz=ausg zzugr_z_st=nrstamm //* if mbezeich<>space(45) zbezeich=mbezeich // zbezeich2=mbezeich2 zbetrag=mpreis mbezeich=space(45) else zbezeich=bez // zbezeich2=bez2 zbetrag=&v_p_s endif *// // zbezeich=bez // zbetrag=&v_p_s zmwst_schl=mwst_schl zjn=" " do while .t. if zjn="n" @ 22,11 get zbezeich @ 22,57 get zbetrag else if zbetrag=0 @ 22,11 say zbezeich @ 22,57 get zbetrag else @ 22,11 say zbezeich @ 22,57 say zbetrag endif endif @ 22,71 get zjn @ 22,73 say "(j/n)" read if zjn="n" loop else exit endif enddo if zjn<>"j" loop endif @ 22,7 say space(72) @ 23,7 say space(72) if aezei=0 zaufzei=aufzei aufzei=aufzei+1 merkzei=merkzei+1 else zaufzei=aufzei aufzei=aezei endif if aufzei>9 tabf="t"+str(aufzei,2,0) else tabf="t"+str(aufzei,1,0) endif pr_og="prrech" anz_zeil=1 do eurotabf //&tabf=str(aufzei,2,0)+" "+zzugr_z_st+" "+" "+" "+zbezeich; //+ " "+str(zbetrag,8,2)+" "+zkennz+zmwst_schl+" "+space(45) sumrech=sumrech+zbetrag @ 3,72 say str(sumrech,8,2) if aezei=0 if az>18 schneu=1 do aufbau schneu=0 else @ az,0 say substr(&tabf,1,71) az=az+1 endif else do aufbau aezei=0 aufzei=zaufzei zaufzei=0 endif nrstamm=" " loop endif if nrstamm="dru " clear select 1 zdate=date() anz=2 erste="j" textjn="j" edrucker="h" @ 1,5 say "Ausgabe-Drucker: Epson / HP (e/h)" get edrucker @ 3,5 say "Rechnungs-Datum " get zdate @ 5,5 say "Sarg-Programm-Text (j/n)" get textjn @ 7,5 say "Wie oft soll die Rechnung gedruckt werden ?" get anz read ************************ schsort=1 do prspei do rechdr nrstamm=" " exit endif //-------------------------------------------------- //** ab hier geht das neue Druckmodul: if nrstamm="drun " clear select 1 zdate=date() anz=2 erste="j" textjn="j" edrucker="h" @ 1,5 say "Ausgabe-Drucker: Epson / HP (e/h)" get edrucker @ 3,5 say "Rechnungs-Datum " get zdate @ 5,5 say "Sarg-Programm-Text (j/n)" get textjn @ 7,5 say "Wie oft soll die Rechnung gedruckt werden ?" get anz read ************************ schsort=1 do prspei rechdruni( Auf, edrucker, DtoC( zdate ), textjn, anz ) nrstamm=" " exit endif **// bis hierhin geht das neue Druckmodul "drun " //-------------------------------------------------- if nrstamm="anz " do aufbau nrstamm=" " loop endif if nrstamm=" " .or. nrstamm="l " .or. nrstamm="e " ae=" " do case case nrstamm=" " @ 22,0 say "Welche Zeile soll gendert werden ? " get ae case nrstamm="l " @ 22,0 say "Welche Zeile soll gelscht werden ? " get ae case nrstamm="e " @ 22,0 say "Nach welcher Zeile soll eingefgt werden ? " get ae endcase read aezei=val(ae) @ 22,0 say space(78) if aezei<1 .or. aezei>aufzei schf=1 nrstamm=" " aezei=0 loop endif do case case nrstamm=" " do rechae case nrstamm="l " do rechl case nrstamm="e " do reche endcase //nrstamm=" " loop endif if nrstamm="g " such=" " @ 22,0 say "Welche Artikel-Gruppe soll angezeigt werden ? " get such read do rechg loop endif enddo ************************************** *** speicherung if nrstamm="ende " do prspei endif clear clear all return