From e356051f5a16edfdc73e2b686473aa6d830bc428 Mon Sep 17 00:00:00 2001 From: OpenXE <> Date: Wed, 22 Mar 2023 14:33:34 +0100 Subject: [PATCH] Zahlungen improvements --- phpwf/plugins/class.yui.php | 25 +- www/lib/class.erpapi.php | 53 +- www/pages/auftrag.php | 13 +- www/pages/content/gutschrift_minidetail.tpl | 2 +- www/pages/content/rechnung_minidetail.tpl | 23 +- www/pages/gutschrift.php | 26 +- www/pages/rechnung.php | 121 +-- www/widgets/templates/_gen/rechnung.tpl | 1054 +++++++++++-------- 8 files changed, 781 insertions(+), 536 deletions(-) diff --git a/phpwf/plugins/class.yui.php b/phpwf/plugins/class.yui.php index 47a31003..a2288551 100644 --- a/phpwf/plugins/class.yui.php +++ b/phpwf/plugins/class.yui.php @@ -6551,13 +6551,24 @@ r.land as land, p.abkuerzung as projekt, r.zahlungsweise as zahlungsweise, // $columnfilter = true; // SQL statement - $sql = "SELECT SQL_CALC_FOUND_ROWS r.id,'app->Conf->WFconf['defaulttheme']}/images/details_open.png class=details>' as open,concat('')as auswahl, r.belegnr, DATE_FORMAT(r.datum,'%d.%m.%Y') as vom, - if(r.kundennummer <> '',r.kundennummer,adr.kundennummer), - - CONCAT(" . $this->app->erp->MarkerUseredit("r.name", "r.useredittimestamp") . ", if(r.internebezeichnung!='',CONCAT('
',r.internebezeichnung,''),'')) as kunde, - r.land as land, p.abkuerzung as projekt, r.zahlungsweise as zahlungsweise, FORMAT(r.soll,2{$extended_mysql55} ) as soll, ifnull(r.waehrung,'EUR'), - if(r.soll-r.ist+r.skonto_gegeben!=0 AND r.ist > 0 AND r.zahlungsstatus!='bezahlt','teilbezahlt',r.zahlungsstatus) as zahlung, - if(r.soll-r.ist+r.skonto_gegeben!=0 AND r.ist > 0,FORMAT(r.ist-r.soll+r.skonto_gegeben,2{$extended_mysql55}),FORMAT((r.soll-r.ist+r.skonto_gegeben)*-1,2{$extended_mysql55})) as fehlt, if(r.status = 'storniert' AND r.teilstorno = 1,'TEILSTORNO',UPPER(r.status)) as status, ".(!empty($zusatzcols)?implode(', ',$zusatzcols).',':'')." r.id + $sql = "SELECT SQL_CALC_FOUND_ROWS + r.id, + 'app->Conf->WFconf['defaulttheme']}/images/details_open.png class=details>' as open, + concat('') as auswahl, + r.belegnr, + DATE_FORMAT(r.datum,'%d.%m.%Y') as vom, + if(r.kundennummer <> '',r.kundennummer,adr.kundennummer), + CONCAT(" . $this->app->erp->MarkerUseredit("r.name", "r.useredittimestamp") . ", if(r.internebezeichnung!='',CONCAT('
',r.internebezeichnung,''),'')) as kunde, + r.land as land, + p.abkuerzung as projekt, + r.zahlungsweise as zahlungsweise, + FORMAT(r.soll,2{$extended_mysql55} ) as soll, + ifnull(r.waehrung,'EUR'), + if(r.soll-r.ist+r.skonto_gegeben!=0 AND r.ist > 0 AND r.zahlungsstatus!='bezahlt','teilbezahlt',r.zahlungsstatus) as zahlung, + if(r.soll-r.ist+r.skonto_gegeben!=0 AND r.ist > 0,FORMAT(r.ist-r.soll+r.skonto_gegeben,2{$extended_mysql55}),FORMAT((r.soll-r.ist+r.skonto_gegeben)*-1,2{$extended_mysql55})) as fehlt, + if(r.status = 'storniert' AND r.teilstorno = 1,'TEILSTORNO',UPPER(r.status)) as status, + ".(!empty($zusatzcols)?implode(', ',$zusatzcols).',':'')." + r.id FROM rechnung r LEFT JOIN projekt p ON p.id=r.projekt LEFT JOIN adresse adr ON r.adresse=adr.id LEFT JOIN auftrag au ON au.id = r.auftragid "; if(isset($parameter['artikel']) && !empty($parameter['artikel'])) { $artikelid = $this->app->DB->Select("SELECT id FROM artikel where geloescht != 1 AND nummer != 'DEL' AND nummer != '' AND nummer = '".$this->app->DB->real_escape_string(reset(explode(' ',trim($parameter['artikel']))))."' LIMIT 1"); diff --git a/www/lib/class.erpapi.php b/www/lib/class.erpapi.php index afe6628d..15dfc44c 100644 --- a/www/lib/class.erpapi.php +++ b/www/lib/class.erpapi.php @@ -7088,6 +7088,7 @@ title: 'Abschicken', $navarray['menu']['admin'][$menu]['sec'][] = array('Arbeitsnachweis','arbeitsnachweis','list'); $navarray['menu']['admin'][$menu]['sec'][] = array('Gutschrift / '.$this->Firmendaten("bezeichnungstornorechnung"),'gutschrift','list'); $navarray['menu']['admin'][$menu]['sec'][] = array('Proformarechnung','proformarechnung','list'); + $navarray['menu']['admin'][$menu]['sec'][] = array('Kontoauszüge','kontoauszuege','list'); $navarray['menu']['admin'][$menu]['sec'][] = array('Abolauf','rechnungslauf','rechnungslauf'); $navarray['menu']['admin'][$menu]['sec'][] = array('Mahnwesen','mahnwesen','list'); @@ -36021,7 +36022,7 @@ function Firmendaten($field,$projekt="") * Gutschrift -> Rechnung -> Auftrag OR Verbindlichkeit * Results array of ids, types, belegnr */ - public function GetZahlungenAssociatedDocuments(int $id, string $type) : array { + public function GetZahlungenAssociatedDocuments(int $id, string $type, string $lastlevel = 'auftrag') : array { $assocs = array( array( @@ -36056,6 +36057,11 @@ function Firmendaten($field,$projekt="") // Go to highest level $above = $assocs[array_search($type,array_column($assocs,'type'))]['above']; while ($above) { + + if ($type == $lastlevel) { + break; + } + $sql = "SELECT ".$above."id as id FROM ".$type." WHERE id = ".$id; $above_id = $this->app->DB->SelectArr($sql)[0]; if (!empty($above)) { @@ -36090,16 +36096,18 @@ function Firmendaten($field,$projekt="") * Results array of payments with information * Gutschrift -> Rechnungid, Rechnung -> Auftragid */ - public function GetZahlungen(int $id, string $type) : array { + public function GetZahlungen(int $id, string $type, bool $cascade = false, string $lastlevel = 'auftrag') : array { - $documents = $this->GetZahlungenAssociatedDocuments($id, $type); + if ($cascade) { + $documents = $this->GetZahlungenAssociatedDocuments($id, $type, $lastlevel); + } else { + $documents = array(array('id' => $id, 'type' => $type)); + } if (empty($documents)) { return(array()); } -// print_r($documents); - $zahlungen = array(); $tables = array( @@ -36148,9 +36156,44 @@ function Firmendaten($field,$projekt="") return($zahlungen); } + public function GetZahlung(int $id, string $type, bool $cascade = false, string $lastlevel = 'auftrag') { + $zahlungen = $this->GetZahlungen($id, $type, $cascade); + if (empty($zahlungen)) { + $zahlbetrag = 0; + } else { + $zahlbetrag = array_sum(array_column($zahlungen,'betrag')); + } + return($zahlbetrag); + } + /* * Calculate the payment saldo of a document + * Auftrag: gesamtsumme, rechnung: soll, gutschrift: soll verbindlichkeit: betrag */ + public function GetSaldoDokument($id, $type, string $lastlevel = 'auftrag') { + + $zahlbetrag = $this->GetZahlung($id, $type, false); + + $sollspalten = array( + 'auftrag' => 'gesamtsumme', + 'rechnung' => 'soll', + 'gutschrift' => 'soll', + 'verbindlichkeit' => 'betrag' + ); + + $sql = "SELECT ".$sollspalten[$type]." as sollbetrag FROM ".$type." WHERE id =".$id; + +// echo($sql); + + $result = $this->app->DB->SelectArr($sql); + + if (!empty($result)) { + $sollbetrag = $result[0]['sollbetrag']; + } else { + $sollbetrag = 0; + } + return($sollbetrag-$zahlbetrag); + } public function ANABREGSNeuberechnen($id,$art,$force=false) { diff --git a/www/pages/auftrag.php b/www/pages/auftrag.php index 94e4a16c..5a336f42 100644 --- a/www/pages/auftrag.php +++ b/www/pages/auftrag.php @@ -3423,7 +3423,7 @@ class Auftrag extends GenAuftrag { $id = $this->app->Secure->GetGET('id'); - $zahlungen = $this->app->erp->GetZahlungen($id,'auftrag'); + $zahlungen = $this->app->erp->GetZahlungen($id,'auftrag',true); // print_r($zahlungen); @@ -3451,6 +3451,17 @@ class Auftrag extends GenAuftrag "; } + + $saldo = $this->app->erp->GetSaldoDokument($id,'auftrag'); + + $result .= " + + + ".$saldo." + + + "; + return("".$result."
"); } diff --git a/www/pages/content/gutschrift_minidetail.tpl b/www/pages/content/gutschrift_minidetail.tpl index 9b11acf8..3f005fef 100644 --- a/www/pages/content/gutschrift_minidetail.tpl +++ b/www/pages/content/gutschrift_minidetail.tpl @@ -39,7 +39,7 @@
-

{|Zahlungen|}

+

Zahlungsübersicht

[ZAHLUNGEN]
diff --git a/www/pages/content/rechnung_minidetail.tpl b/www/pages/content/rechnung_minidetail.tpl index 1910123b..6a352846 100644 --- a/www/pages/content/rechnung_minidetail.tpl +++ b/www/pages/content/rechnung_minidetail.tpl @@ -44,7 +44,7 @@
-

Zahlungen

+

Zahlungsübersicht

[ZAHLUNGEN]
@@ -69,15 +69,12 @@ [PDFARCHIV]
-
-

Deckungsbeitrag

-
- - -
Dieses Modul ist erst ab Version Professional verfügbar
- -
-
- - - + diff --git a/www/pages/gutschrift.php b/www/pages/gutschrift.php index 0da05063..1ea5fdae 100644 --- a/www/pages/gutschrift.php +++ b/www/pages/gutschrift.php @@ -659,7 +659,7 @@ class Gutschrift extends GenGutschrift { $id = $this->app->Secure->GetGET('id'); - $zahlungen = $this->app->erp->GetZahlungen($id,'gutschrift'); + $zahlungen = $this->app->erp->GetZahlungen($id,'gutschrift',true); // print_r($zahlungen); @@ -687,6 +687,30 @@ class Gutschrift extends GenGutschrift "; } + + $sum = array_sum(array_column($zahlungen,'betrag'))." ".$zahlung['waehrung']; + + if ($sum != 0) { + $result .= " + + + + + + + + Summe: + + + + + ".$sum." + + + + "; + } + return("".$result."
"); } diff --git a/www/pages/rechnung.php b/www/pages/rechnung.php index 8b65fbe8..13adc7d8 100644 --- a/www/pages/rechnung.php +++ b/www/pages/rechnung.php @@ -1770,11 +1770,12 @@ class Rechnung extends GenRechnung $this->app->Tpl->Set('VORKASSE',''); } -// $saldo=$this->app->DB->Select("SELECT ist-skonto_gegeben FROM rechnung WHERE id='$id'"); + $ist = $this->app->erp->EUR($this->app->erp->GetZahlung($id,'rechnung')); + $this->app->Tpl->Set('ISTDB',$ist); - $saldo = $this->app->erp->EUR($this->RechnungSaldo($id)); + $istgs = $this->app->erp->EUR($this->app->erp->GetZahlung($id,'rechnung',true,'rechnung')); + $this->app->Tpl->Set('ISTGS',$istgs); - $this->app->Tpl->Set('LIVEIST',"$saldo"); if($schreibschutz=="1" && $this->app->erp->RechteVorhanden('rechnung','schreibschutz')) { @@ -2086,8 +2087,17 @@ class Rechnung extends GenRechnung public function RechnungList() { + $this->app->DB->Update("UPDATE rechnung SET zahlungsstatus='offen' WHERE zahlungsstatus=''"); + // First refresh all open items + $openids = $this->app->DB->SelectArr("SELECT id from rechnung WHERE zahlungsstatus = 'offen'"); + + foreach ($openids as $openid) { + $saldo = $this->app->erp->GetSaldoDokument($openid['id'],'rechnung'); + $this->app->DB->Update("UPDATE rechnung SET ist = soll-".$saldo." WHERE id=".$openid['id']); + } + if($this->app->Secure->GetPOST('ausfuehren') && $this->app->erp->RechteVorhanden('rechnung', 'edit')) { $drucker = $this->app->Secure->GetPOST('seldrucker'); @@ -2734,7 +2744,7 @@ class Rechnung extends GenRechnung { $id = $this->app->Secure->GetGET('id'); - $zahlungen = $this->app->erp->GetZahlungen($id,'rechnung'); + $zahlungen = $this->app->erp->GetZahlungen($id,'rechnung',true); // print_r($zahlungen); @@ -2760,86 +2770,35 @@ class Rechnung extends GenRechnung ".$zahlung['betrag']." ".$zahlung['waehrung']." - "; + + "; } + + $sum = array_sum(array_column($zahlungen,'betrag'))." ".$zahlung['waehrung']; + + if ($sum != 0) { + $result .= " + + + + + + + + Summe: + + + + + ".$sum." + + + + "; + } + return("".$result."
"); } -public function RechnungSaldo($id) - { - if($id <= 0) { - return 0; - } - - $rechnungid = $this->app->DB->Select( - sprintf( - 'SELECT `id` FROM `rechnung` WHERE `id`= %d LIMIT 1', - $id - ) - ); - $auftragid = $rechnungid <= 0?0:$this->app->DB->Select( - sprintf( - 'SELECT `auftragid` FROM `rechnung` WHERE `id`=%d LIMIT 1', - $rechnungid - ) - ); - - $eingangArr = $this->app->DB->SelectArr( - sprintf( - "SELECT ko.bezeichnung as konto, DATE_FORMAT(ke.datum,'%%d.%%m.%%Y') as datum, k.id as kontoauszuege, ke.betrag as betrag - FROM `kontoauszuege_zahlungseingang` AS `ke` - LEFT JOIN `kontoauszuege` AS `k` ON ke.kontoauszuege=k.id - LEFT JOIN `konten` AS `ko` ON k.konto=ko.id - WHERE (ke.objekt='rechnung' AND ke.parameter=%d) - OR (ke.objekt='auftrag' AND ke.parameter=%d AND ke.parameter>0) - OR (ke.objekt='rechnung' AND ke.parameter=%d AND ke.parameter>0)", - $id, $auftragid, $rechnungid - ) - ); - $einnahmen = 0; - if(!empty($eingangArr)) { - foreach($eingangArr AS $eingangRow) { - $einnahmen += $eingangRow['betrag']; - } - } - - //$rechnungen = $this->app->DB->SelectArr("SELECT belegnr, DATE_FORMAT(datum,'%d.%m.%Y') as datum,soll FROM rechnung WHERE rechnungid='$id' "); // alt - $rechnungen = $this->app->DB->SelectArr( - sprintf( - "SELECT ro.belegnr, DATE_FORMAT(ro.datum,'%%d.%%m.%%Y') as datum, ro.soll - FROM `rechnung` AS `ro` - WHERE ro.`id` = %d ", - $id - ) - ); - - if(!empty($rechnungen)) { - foreach($rechnungen as $rechnungRow) { - $einnahmen += $rechnungRow['soll']; - } - } - - $ausgangArr = $this->app->DB->SelectArr( - sprintf( - "SELECT ko.bezeichnung as konto, DATE_FORMAT(ke.datum,'%%d.%%m') as datum, ke.betrag as betrag - FROM kontoauszuege_zahlungsausgang ke - LEFT JOIN kontoauszuege k ON ke.kontoauszuege=k.id - LEFT JOIN konten ko ON k.konto=ko.id - WHERE (ke.objekt='rechnung' AND ke.parameter=%d) - OR (ke.objekt='rechnung' AND ke.parameter=%d AND ke.parameter>0) - OR (ke.objekt='auftrag' AND ke.parameter=%d AND ke.parameter>0)", - $id, $rechnungid, $auftragid - ) - ); - $ausgaben = 0; - if(!empty($ausgangArr)){ - foreach($ausgangArr as $ausgangRow) { - $ausgaben += $ausgangRow['betrg']; - } - } - - return $einnahmen - $ausgaben; - } - } diff --git a/www/widgets/templates/_gen/rechnung.tpl b/www/widgets/templates/_gen/rechnung.tpl index 8fac1f52..a2521c3b 100644 --- a/www/widgets/templates/_gen/rechnung.tpl +++ b/www/widgets/templates/_gen/rechnung.tpl @@ -1,433 +1,633 @@ - - + [SAVEPAGEREALLY]
- - - - -
-[MESSAGE] -
-[LIEFERID][MSGLIEFERID] -[ANSPRECHPARTNERID][MSGANSPRECHPARTNERID] -[FORMHANDLEREVENT] - - - -
- - - - - - - -
 Rechnung [NUMMER][KUNDE][RABATTANZEIGE][ICONMENU] [SAVEBUTTON]
-
- - -
-
-
{|Allgemein|} - - - - - [INTERNET] - - - - - - - - - - -
{|Kunde|}:[ADRESSE][MSGADRESSE]  -[BUTTON_UEBERNEHMEN] -
{|Projekt|}:[PROJEKTAUTOSTART][PROJEKT][MSGPROJEKT][PROJEKTAUTOEND]
[BEZEICHNUNGAKTIONSCODE]:[AKTION][MSGAKTION]
{|Status|}:[STATUS]
{|Auftrag|}:[AUFTRAGID][MSGAUFTRAGID]
{|Debitorennummer|}:[KUNDENNUMMER_BUCHHALTUNG][MSGKUNDENNUMMER_BUCHHALTUNG]
{|Ihre Bestellnummer|}:[IHREBESTELLNUMMER][MSGIHREBESTELLNUMMER]
{|Interne Bezeichnung|}:[INTERNEBEZEICHNUNG][MSGINTERNEBEZEICHNUNG]
{|Lieferdatum|}:[LIEFERDATUM][MSGLIEFERDATUM]
{|Lieferschein|}:[LIEFERSCHEINAUTOSTART][LIEFERSCHEIN][MSGLIEFERSCHEIN][LIEFERSCHEINAUTOEND]
{|Datum|}:[DATUM][MSGDATUM]
{|Rechnungskopie|}:[DOPPEL][MSGDOPPEL] 
{|Schreibschutz|}:[SCHREIBSCHUTZ][MSGSCHREIBSCHUTZ] 
[ABWEICHENDEBEZEICHNUNGBESCHRIFTUNG]:[ABWEICHENDEBEZEICHNUNG][MSGABWEICHENDEBEZEICHNUNG] 
-
-
- - - -
-[MAHNWESENIF] -
{|Mahnwesen|} - - - - - -
Alle Einstellungen manuell festsetzen: [MAHNWESENFESTSETZEN][MSGMAHNWESENFESTSETZEN] 

{|Zahlungsstatus|}:[ZAHLUNGSSTATUS][MSGZAHLUNGSSTATUS] Bezahlt am: [BEZAHLT_AM][MSGBEZAHLT_AM] -
- - - - - -
{|SOLL|}:[SOLL]
{|IST|}:[IST][MSGIST] (manuelle Eingabe)
{|IST|}: -[LIVEIST] 
{|Skonto gegeben|}:[SKONTO_GEGEBEN][MSGSKONTO_GEGEBEN]  (als Geldbetrag)
- - - - - -
{|Mahnstufe|}:[MAHNWESEN][MSGMAHNWESEN] -
{|Mahndatum|}:[MAHNWESEN_DATUM][MSGMAHNWESEN_DATUM]
{|Sperre|}:[MAHNWESEN_GESPERRT][MSGMAHNWESEN_GESPERRT] (nicht im Mahnwesen)
{|Bemerkung|}:[MAHNWESEN_INTERNEBEMERKUNG][MSGMAHNWESEN_INTERNEBEMERKUNG]
-
-[MAHNWESENELSE] -[MAHNWESENENDIF] - - -
-
- -
-
-
-
- -
{|Stammdaten|} - - - - - - - - - - [VORBUNDESSTAAT][NACHBUNDESSTAAT] - -
{|Typ|}:[TYP][MSGTYP]
{|Name|}:[NAME][MSGNAME]
{|Titel|}:[TITEL][MSGTITEL]
{|Ansprechpartner|}:[ANSPRECHPARTNER][MSGANSPRECHPARTNER]
{|Abteilung|}:[ABTEILUNG][MSGABTEILUNG]
{|Unterabteilung|}:[UNTERABTEILUNG][MSGUNTERABTEILUNG]
{|Adresszusatz|}:[ADRESSZUSATZ][MSGADRESSZUSATZ]
{|Straße|}:[STRASSE][MSGSTRASSE]
{|PLZ/Ort|}:[PLZ][MSGPLZ] [ORT][MSGORT]
[EPROO_SELECT_BUNDESSTAAT]
{|Land|}:[EPROO_SELECT_LAND]
- - - - - - - -
{|Telefon|}:[TELEFON][MSGTELEFON]
{|Telefax|}:[TELEFAX][MSGTELEFAX]
{|E-Mail|}:[EMAIL][MSGEMAIL]
Anschreiben[ANSCHREIBEN][MSGANSCHREIBEN]
[LIEFERADRESSEPOPUP] [ANSPRECHPARTNERPOPUP]
-
- -
-
- -
-
- -
-
-
-
- -
{|Freitext|} - [FREITEXT][MSGFREITEXT] -
- + +
+ [MESSAGE] + + [LIEFERID][MSGLIEFERID] + [ANSPRECHPARTNERID][MSGANSPRECHPARTNERID] + [FORMHANDLEREVENT] + +
+
+
+
+ + + + + + + +
 Rechnung [NUMMER][KUNDE][RABATTANZEIGE][ICONMENU] [SAVEBUTTON]
+
+
+
+
+
+
+
+
+
+ {|Allgemein|} + + + + + + + + + + + + + + + + + + [INTERNET] + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
{|Kunde|}:[ADRESSE][MSGADRESSE]  + [BUTTON_UEBERNEHMEN] +
{|Projekt|}:[PROJEKTAUTOSTART][PROJEKT][MSGPROJEKT][PROJEKTAUTOEND]
[BEZEICHNUNGAKTIONSCODE]:[AKTION][MSGAKTION]
{|Status|}:[STATUS]
{|Auftrag|}:[AUFTRAGID][MSGAUFTRAGID]
{|Debitorennummer|}:[KUNDENNUMMER_BUCHHALTUNG][MSGKUNDENNUMMER_BUCHHALTUNG]
{|Ihre Bestellnummer|}:[IHREBESTELLNUMMER][MSGIHREBESTELLNUMMER]
{|Interne Bezeichnung|}:[INTERNEBEZEICHNUNG][MSGINTERNEBEZEICHNUNG]
{|Lieferdatum|}:[LIEFERDATUM][MSGLIEFERDATUM]
{|Lieferschein|}:[LIEFERSCHEINAUTOSTART][LIEFERSCHEIN][MSGLIEFERSCHEIN][LIEFERSCHEINAUTOEND]
{|Datum|}:[DATUM][MSGDATUM]
{|Rechnungskopie|}:[DOPPEL][MSGDOPPEL] 
{|Schreibschutz|}:[SCHREIBSCHUTZ][MSGSCHREIBSCHUTZ] 
[ABWEICHENDEBEZEICHNUNGBESCHRIFTUNG]:[ABWEICHENDEBEZEICHNUNG][MSGABWEICHENDEBEZEICHNUNG] 
+
+
+
+
+
+ [MAHNWESENIF] +
+ {|Zahlungsstatus|} + + + + + + + + + + + + + + + + +
Alle Einstellungen manuell festsetzen: [MAHNWESENFESTSETZEN][MSGMAHNWESENFESTSETZEN] 

{|Zahlungsstatus|}:[ZAHLUNGSSTATUS][MSGZAHLUNGSSTATUS] Bezahlt am: [BEZAHLT_AM][MSGBEZAHLT_AM] +
+ + + + + + + + + + + + + + + + + + +
+ {|SOLL|}: + + [SOLL] +
+ {|IST|}: + + [ISTDB] +
+ {|Gutschriften|}: + + [ISTGS] +
+ {|Skonto gegeben|}: + + [SKONTO_GEGEBEN][MSGSKONTO_GEGEBEN]  (als Geldbetrag) +
+
+ + + + + + + + + + + + + + + + + +
{|Mahnstufe|}:[MAHNWESEN][MSGMAHNWESEN] +
{|Mahndatum|}:[MAHNWESEN_DATUM][MSGMAHNWESEN_DATUM]
{|Sperre|}:[MAHNWESEN_GESPERRT][MSGMAHNWESEN_GESPERRT] (nicht im Mahnwesen)
{|Bemerkung|}:[MAHNWESEN_INTERNEBEMERKUNG][MSGMAHNWESEN_INTERNEBEMERKUNG]
+
+ [MAHNWESENELSE] + [MAHNWESENENDIF] +
+
+
+
+
+
+
+
+
+ {|Stammdaten|} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + [VORBUNDESSTAAT] + + + + + [NACHBUNDESSTAAT] + + + + +
{|Typ|}:[TYP][MSGTYP]
{|Name|}:[NAME][MSGNAME]
{|Titel|}:[TITEL][MSGTITEL]
{|Ansprechpartner|}:[ANSPRECHPARTNER][MSGANSPRECHPARTNER]
{|Abteilung|}:[ABTEILUNG][MSGABTEILUNG]
{|Unterabteilung|}:[UNTERABTEILUNG][MSGUNTERABTEILUNG]
{|Adresszusatz|}:[ADRESSZUSATZ][MSGADRESSZUSATZ]
{|Straße|}:[STRASSE][MSGSTRASSE]
{|PLZ/Ort|}:[PLZ][MSGPLZ] [ORT][MSGORT]
[EPROO_SELECT_BUNDESSTAAT]
{|Land|}:[EPROO_SELECT_LAND]
+ + + + + + + + + + + + + + + + + + + + + +
{|Telefon|}:[TELEFON][MSGTELEFON]
{|Telefax|}:[TELEFAX][MSGTELEFAX]
{|E-Mail|}:[EMAIL][MSGEMAIL]
Anschreiben[ANSCHREIBEN][MSGANSCHREIBEN]
[LIEFERADRESSEPOPUP] [ANSPRECHPARTNERPOPUP]
+
+
+
+
+
+
+
+
+
+
+ {|Freitext|} + [FREITEXT][MSGFREITEXT] +
+
+
+
+
+
+ {|Kopftext|} + [BODYZUSATZ][MSGBODYZUSATZ] +
+
+
+
+
+
+
+
+
+
+ {|Rechnung|} + + + + + + + + + + + + + + + + + + + + + + + + + + +
{|Zahlungsweise|}:[ZAHLUNGSWEISE][MSGZAHLUNGSWEISE]
[LIEFERBEDINGUNG][MSGLIEFERBEDINGUNG]
{|Vertrieb|}:[VERTRIEB][MSGVERTRIEB] [VERTRIEBBUTTON]
{|Bearbeiter|}:[BEARBEITER][MSGBEARBEITER] [INNENDIENSTBUTTON]
{|Kein Briefpapier und Logo|}:[OHNE_BRIEFPAPIER][MSGOHNE_BRIEFPAPIER]
{|Artikeltexte ausblenden|}:[OHNE_ARTIKELTEXT][MSGOHNE_ARTIKELTEXT]
+
+
+
+
+
+ +
+ {|Sonstiges|} + + + + + +
{|GLN|}:[GLN][MSGGLN]
+
+
+
+ {|Rechnung|} + + + + + + + + + +
{|Zahlungsziel (in Tagen)|}:[ZAHLUNGSZIELTAGE][MSGZAHLUNGSZIELTAGE]
{|Zahlungsziel Skonto (in Tagen)|}:[ZAHLUNGSZIELTAGESKONTO][MSGZAHLUNGSZIELTAGESKONTO]
+
+
+
+
+ Einzugsermächtigung + + + + + + +
{|Einzugsdatum (frühestens)|}:[EINZUGSDATUM][MSGEINZUGSDATUM]
+
+
+
+
+
+ {|Kreditkarte|} + + + + + + + + + + + + + + + + + + + + + +
{|Kreditkarte|}:[KREDITKARTE_TYP][MSGKREDITKARTE_TYP]
{|Karteninhaber|}:[KREDITKARTE_INHABER][MSGKREDITKARTE_INHABER]
{|Kreditkartennummer|}:[KREDITKARTE_NUMMER][MSGKREDITKARTE_NUMMER]
{|Prüfnummer|}:[KREDITKARTE_PRUEFNUMMER][MSGKREDITKARTE_PRUEFNUMMER]
{|Gültig bis|}: + [KREDITKARTE_MONAT][MSGKREDITKARTE_MONAT]  + [KREDITKARTE_JAHR][MSGKREDITKARTE_JAHR]  +
+
+
+
+
+ {|Skonto (nur bei Rechnung und Lastschrift)|} + + + + + +
{|Skonto|}:[ZAHLUNGSZIELSKONTO][MSGZAHLUNGSZIELSKONTO]
+
+
+ [STARTDISABLEVERBAND] +
+
+ {|Verband|} + + [VERBANDINFOSTART] + + + + + [VERBANDINFOENDE] + + + + + + + + + + + + + + + + + + + + + +
{|Verband / Gruppe|}:[VERBAND]
{|Rabatt|}:Grund %1 in %2 in %3 in %4 in %5 in %
[RABATT][MSGRABATT][RABATT1][MSGRABATT1][RABATT2][MSGRABATT2][RABATT3][MSGRABATT3][RABATT4][MSGRABATT4][RABATT5][MSGRABATT5]
Information:
[VERBANDINFO]
+
+
+ [ENDEDISABLEVERBAND] +
+
+
+
+
+
+
+
+
+ {|Interne Bemerkung|} + [INTERNEBEMERKUNG][MSGINTERNEBEMERKUNG] +
+
+
+
+
+
+
+
+
+
+ UST-Prüfung + + + + + + + + + + + + + + + + + + + + + +
{|UST ID|}:[USTID][MSGUSTID]
{|Besteuerung|}:[UST_BEFREIT][MSGUST_BEFREIT] [KEINSTEUERSATZ][MSGKEINSTEUERSATZ] {|ohne Hinweis bei EU oder Export|}
{|Brief bestellt|}:[USTBRIEF][MSGUSTBRIEF]
{|Brief Eingang|}:[USTBRIEF_EINGANG][MSGUSTBRIEF_EINGANG]
{|Brief Eingang am|}:[USTBRIEF_EINGANG_AM][MSGUSTBRIEF_EINGANG_AM]
+
+
+
+
+
+
+ {|Einstellung|} + + + + + + + + + + + + + + + + + + + + + +
{|Anzeige Steuer|}:[ANZEIGESTEUER][MSGANZEIGESTEUER]
{|Währung|}:[WAEHRUNG][MSGWAEHRUNG]
{|Sprache|}:[SPRACHE][MSGSPRACHE]
{|Wechselkurs|}:[KURS][MSGKURS]
{|Kostenstelle|}:[KOSTENSTELLE][MSGKOSTENSTELLE]
+
+
+
+
+
+

+ + + + +
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
Rechnung [NUMMER][KUNDE][RABATTANZEIGE][ICONMENU2]
+ [POS] +
-
- - -
-
- -
{|Kopftext|} - [BODYZUSATZ][MSGBODYZUSATZ] -
- -
-
-
- - -
-
-
-
- -
{|Rechnung|} - - - - - - - - -
{|Zahlungsweise|}:[ZAHLUNGSWEISE][MSGZAHLUNGSWEISE]
[LIEFERBEDINGUNG][MSGLIEFERBEDINGUNG]
{|Vertrieb|}:[VERTRIEB][MSGVERTRIEB] [VERTRIEBBUTTON]
{|Bearbeiter|}:[BEARBEITER][MSGBEARBEITER] [INNENDIENSTBUTTON]
{|Kein Briefpapier und Logo|}:[OHNE_BRIEFPAPIER][MSGOHNE_BRIEFPAPIER]
{|Artikeltexte ausblenden|}:[OHNE_ARTIKELTEXT][MSGOHNE_ARTIKELTEXT]
-
- -
-
- -
-
- - - -
{|Sonstiges|} -
{|GLN|}:[GLN][MSGGLN]
-
- - -
-
{|Rechnung|} - - - -
{|Zahlungsziel (in Tagen)|}:[ZAHLUNGSZIELTAGE][MSGZAHLUNGSZIELTAGE]
{|Zahlungsziel Skonto (in Tagen)|}:[ZAHLUNGSZIELTAGESKONTO][MSGZAHLUNGSZIELTAGESKONTO]
-
-
- - -
-
Einzugsermächtigung - - - -
{|Einzugsdatum (frühestens)|}:[EINZUGSDATUM][MSGEINZUGSDATUM]
-
- -
- -
-
- -
-
{|Kreditkarte|} - - - - - - - - - - - -
{|Kreditkarte|}:[KREDITKARTE_TYP][MSGKREDITKARTE_TYP]
{|Karteninhaber|}:[KREDITKARTE_INHABER][MSGKREDITKARTE_INHABER]
{|Kreditkartennummer|}:[KREDITKARTE_NUMMER][MSGKREDITKARTE_NUMMER]
{|Prüfnummer|}:[KREDITKARTE_PRUEFNUMMER][MSGKREDITKARTE_PRUEFNUMMER]
{|Gültig bis|}: - [KREDITKARTE_MONAT][MSGKREDITKARTE_MONAT]  - [KREDITKARTE_JAHR][MSGKREDITKARTE_JAHR]  -
- -
-
- - -
-
{|Skonto (nur bei Rechnung und Lastschrift)|} - - -
{|Skonto|}:[ZAHLUNGSZIELSKONTO][MSGZAHLUNGSZIELSKONTO]
-
-
- - -[STARTDISABLEVERBAND] -
-
{|Verband|} - -[VERBANDINFOSTART][VERBANDINFOENDE] - - - - - - - - - -
{|Verband / Gruppe|}:[VERBAND]
{|Rabatt|}:Grund %1 in %2 in %3 in %4 in %5 in %
[RABATT][MSGRABATT][RABATT1][MSGRABATT1][RABATT2][MSGRABATT2][RABATT3][MSGRABATT3][RABATT4][MSGRABATT4][RABATT5][MSGRABATT5]
Information:
[VERBANDINFO]
-
-
-[ENDEDISABLEVERBAND] - -
-
-
-
- -
-
-
-
- - -
{|Interne Bemerkung|} -[INTERNEBEMERKUNG][MSGINTERNEBEMERKUNG] -
- -
-
-
-
- - -
-
-
-
- - -
UST-Prüfung - - - - - - - -
{|UST ID|}:[USTID][MSGUSTID]
{|Besteuerung|}:[UST_BEFREIT][MSGUST_BEFREIT] [KEINSTEUERSATZ][MSGKEINSTEUERSATZ] {|ohne Hinweis bei EU oder Export|}
{|Brief bestellt|}:[USTBRIEF][MSGUSTBRIEF]
{|Brief Eingang|}:[USTBRIEF_EINGANG][MSGUSTBRIEF_EINGANG]
{|Brief Eingang am|}:[USTBRIEF_EINGANG_AM][MSGUSTBRIEF_EINGANG_AM]
-
-
-
- -
-
- -
{|Einstellung|} - - - - - - -
{|Anzeige Steuer|}:[ANZEIGESTEUER][MSGANZEIGESTEUER]
{|Währung|}:[WAEHRUNG][MSGWAEHRUNG]
{|Sprache|}:[SPRACHE][MSGSPRACHE]
{|Wechselkurs|}:[KURS][MSGKURS]
{|Kostenstelle|}:[KOSTENSTELLE][MSGKOSTENSTELLE]
- - -
- -
-
-
-
- - - -

- -
- -
-
- - - - -
-
- - - -
- - - - - - - - - -
Rechnung [NUMMER][KUNDE][RABATTANZEIGE][ICONMENU2]
- - - -[POS] - -
- - -
-
-
-
- -[FURTHERTABSDIV] - +
+
+ [FURTHERTABSDIV] +