////////////////////////////////////////// // AB ////////////////////////////////////////// // globale Variablen // debug //nodebug gosub settings $dummy,=,%resetPositionCount ////////////////////////////////////////// // schleife ist in Modul, da jedes EO vorher geprueft werden muss // geht dann auf currentSelObj // Drucken am PBWOEditor wg. fassos // sprache %*.kundennr.sprache while %nextPosition,eq,J if %currentPosition.alternativpos,eq,J continue endif if %currentPosition.storno,eq,J continue endif $posCount,+,1 gosub checkSeitenUmbruch gosub printPosition endwhile if $posCount,>,0 gosub printLetztenFuss else newPage s 11 v 100,100,l,keine Positionen in,%druckTitle,%*.auftragnr endif end ////////////////////////////////////////////////////////// sub neueSeite // import _raster $seitennr,+,1 newPage gosub fixerFuss gosub fixerKopf if $seitennr,<=,1 ////////////////////////////////////////////////////////// // f. brieffenster $adry,=,550 $anschrSpalte,=,$rx + 70 s 6 v $anschrSpalte,$adry,l,"Testfirma GmbH Fabrikstrasse 1 53424 Remagen $adry,+,50 s 11 $adressEO,=,%currentSelObj if %*.abanschr,FILLED, $eo,=,%*.abanschr.*eo if $eo,FILLED, $adressEO,=,$eo endif endif import _Adressblock f Helvetica-Bold s 14 v $rx,1100,l,Auftragsbestaetigung $ty,=,$betreffy f Helvetica-Bold s 11 v $rx,$ty,l,%*.agthema f Helvetica $ty,+,$cr l $rx,$ty + 5,x,$breite $kopfsp1,=,$rx $kopfsp2,=,$kopfsp1 + 450 $kopfsp3,=,$kopfsp2 + 500 $kopfsp4,=,$kopfsp3 + 500 $ty,+,$cr v $kopfsp1,$ty,l,"Auftrag vom: v $kopfsp2,$ty,l,%*.auftragsdat v $kopfsp3,$ty,l,"Nummer: v $kopfsp4,$ty,l,%*.auftragnr $ty,+,$cr v $kopfsp1,$ty,l,"Ihre Nummer: v $kopfsp2,$ty,l,%*.kundennr v $kopfsp3,$ty,l,"Unser Zeichen/Durchwahl: v $kopfsp4,$ty,l, $ty,+,$cr v $kopfsp3,$ty,l,Liefertermin:,%*.bestaetdat l $rx,$ty + 5,x,$breite $ty,+,$cr else ////////////////////////////////////////////////////////// //Folgeseiten seitennr, Auftragsnr, Übertrag? s 11 $ty,=,$eigeneAdry + 100 $ty,+,$cr * 0.5 f Helvetica-Bold v $rx,$ty,l,%druckTitle,%*.auftragnr," f Helvetica v a,$ty,l, V,%*.wfversion, vom,%application.today, (Fortsetzung) Seite,$seitennr $ty,+,$cr v $preisSpalte,$ty,r,Übertrag: v $rr,$ty,r,$lfdSumme,EUR $ty,+,$cr endif ////////////////////////////////////////////////////////// // Spaltenueberschriften s 11 fc $gray3 // rf $rx,$ty,$breite,$fixerFussy - $ty fc $gray2 rf $rx,$ty,$breite,$cr + 15 lw 8 lc $white l $mengeSpalte - 150,$ty,y,$cr + 15 l $bezSpalte - 20,$ty,y,$cr + 15 l $preisSpalte + 20,$ty,y,$cr + 15 lc $black fc $black $ty,+,$cr v $rx,$ty,l,Pos v $mengeSpalte,$ty,r,Menge v $bezSpalte,$ty,l,Beschreibung v $preisSpalte,$ty,r,Einzelpreis v $rr,$ty,r,Gesamtpreis // l $rx,$ty + 5,x,$breite $ty,+,$cr * 1.5 s 10 endsub ////////////////////////////////////////////////////////// sub seitenFuss s 11 $ty,+,$cr $ty,+,$cr v $preisSpalte,$ty,r,Zwischensumme: v $rr,$ty,r,$lfdSumme,EUR endsub ////////////////////////////////////////////////////////// sub printPosition s 10 $r1,=,%currentPosition.rabatt1.*db $r2,=,%currentPosition.rabatt2.*db $r3,=,%currentPosition.rabatt3.*db $tp,=,N $r123,=,0 //feststellen, ob Textposition if %currentPosition.textposition,eq,J $tp,=,J endif v $rx,$ty,l,#,%currentPosition.sortierfolge if $tp,eq,N //nur wenn keine textposition $r123,=,$r1 + $r2 + $r3 v $mengeSpalte,$ty,r,%currentPosition.bestellmenge v $bezSpalte,$ty,l,%currentPosition.artikel,%currentPosition.artikel.matchcode $effPreis,=,%currentPosition.preisnetto.*db $effPoswert,=,%currentPosition.poswertnetto.*db if $r123,==,100 // ohne Berechnung v $preisSpalte,$ty,l,(ohne Berechnung) else v $preisSpalte,$ty,r,$effPreis,EUR v $rr,$ty,r,$effPoswert,EUR $lfdSumme,+,$effPoswert endif $ty,+,$cr v $mengeSpalte,$ty,r,%currentPosition.artikel.mengebez.*bez $ty,+,$cr //kurztext mit blocksatz $kt,=,%currentPosition.artikel.kurztext if $kt,FILLED, b $bezSpalte,$ty,$fliesstextBreite,$cr,l,$kt while %application.hasRestString,eq,J $ty,+,$cr s 10 bf $bezSpalte,$ty,$fliesstextBreite,$cr,l endwhile endif //ende keine textposition gosub varianten $ty,+,$cr endif // dies hier fuer Text- u. Normalpositionen // evt. Zwischensumme drucken if %currentPosition.zwischensumme,eq,J v $bezSpalte,$ty,l,"Zwischensumme bis hierher v $rr,$ty,r,$lfdSumme,EUR lc $black lw 1 l $bezSpalte,$ty + 5,x,$breite $ty,+,$cr endif // Fliesstext //bricht an newline um s 10 $s,=,%currentPosition.postext if $s,FILLED, if $s,ne,$kt b $bezSpalte,$ty,$fliesstextBreite,$cr,l,$s while %application.hasRestString,eq,J $ty,+,$cr gosub checkSeitenUmbruch s 10 bf $bezSpalte,$ty,$fliesstextBreite,$cr,l endwhile s 10 endif endif if $tp,eq,N $ty,+,$cr lw 1 lc $black l $rx,$ty - 20,x,$breite $ty,+,$cr endsub ////////////////////////////////////////////////////////// sub printLetztenFuss //gesamtsumme, zahl.bed., allg. Info ////////////// fusstext //////////////////// $ty,+,$cr v $rx,$ty,l,%*.fusstext1 $ty,+,$cr v $rx,$ty,l,%*.fusstext2 $ty,+,2 * $cr ///////////////////////////////// lw 1 lc $gray4 if %zahltMWSt,eq,J if %bruttoPreiseInPos,eq,J // mit MWSt, positionen brutto v $preisSpalte,$ty,r,Auftragswert: v $rr,$ty,r,%*.wertbrutto,EUR l $bezSpalte,$ty + 8,x,$rr - $bezSpalte $ty,+,$cr f Helvetica-Bold v $preisSpalte,$ty,r, Rechnungsbetrag: $rechbetrag,=,%*.wertbrutto.*db v $rr,$ty,r,$rechbetrag,EUR f Helvetica $ty,+,$cr $mwstbetrag1,=,%*.mwstbetrag1bs.*db v $bezSpalte,$ty,l,(enthaelt gesetzl. Mehrwertsteuer) v $preisSpalte,$ty,r,%*.mwst1,%% v $rr,$ty,r,$mwstbetrag1,EUR if %*.mwst2.*db,>,0 $ty,+,$cr v $bezSpalte,$ty,l,(enthaelt gesetzl. Mehrwertsteuer) v $preisSpalte,$ty,r,%*.mwst2,%% v $rr,$ty,r,%*.mwstbetrag2bs,EUR endif else // mit MWSt, positionen netto v $preisSpalte,$ty,r,Auftragswert netto: v $rr,$ty,r,%*.wertnetto,EUR if $pv,!=,0 $ty,+,$cr l $bezSpalte,$ty + 8,x,$rr - $bezSpalte $ty,+,$cr v $preisSpalte,$ty,r,Gesamt netto: v $rr,$ty,r,%*.wertnetto,EUR endif $ty,+,$cr $mwstbetrag1,=,%*.mwstbetrag1ns.*db v $bezSpalte,$ty,l,zzgl. gesetzl. Mehrwertsteuer v $preisSpalte,$ty,r,%*.mwst1,%% v $rr,$ty,r,$mwstbetrag1,EUR if %*.mwst2.*db,>,0 $ty,+,$cr v $preisSpalte,$ty,r,%*.mwst2,%% v $rr,$ty,r,%*.mwstbetrag2ns,EUR endif l $bezSpalte,$ty + 8,x,$rr - $bezSpalte $ty,+,$cr f Helvetica-Bold v $preisSpalte,$ty,r,Rechnungsbetrag: $rechbetrag,=,%*.geswertbruttons.*db v $rr,$ty,r,$rechbetrag,EUR endif else // nur netto v $preisSpalte,$ty,r,Auftragswert netto: v $rr,$ty,r,%*.wertnetto,EUR l $bezSpalte,$ty + 8,x,$rr - $bezSpalte $ty,+,$cr f Helvetica-Bold v $preisSpalte,$ty,r,Rechnungsbetrag: $rechbetrag,=,%*.wertnetto.*db v $rr,$ty,r,$rechbetrag,EUR endif f Helvetica $ty,+,$cr if %*.skonto1,>,0 v $bezSpalte,$ty,l, - v a,$ty,l,%*.skonto1 v a,$ty,l,"% Skonto v a,$ty,l,%*.ftage1," Tage v a,$ty,l,(bis zum ,%*.skonto1dat,") v a,$ty,l, (,($rechbetrag * (100 - %*.skonto1.*db)) / 100,EUR,) endif if %*.versandart,FILLED, v $rr,$ty,r,Versand: ,%*.versandart.*bez endif gosub stornoDia endsub ////////////////////////////////////////////////////////// sub addVf if $vf,ne, $ty,+,$cr v $bezSpalte,$ty,l,$vf gosub checkSeitenUmbruch endif endsub ////////////////////////////////////////////////////////// import _Varianten import formular