diff --git a/phpwf/plugins/class.yui.php b/phpwf/plugins/class.yui.php index ca9ff155..8cde715e 100644 --- a/phpwf/plugins/class.yui.php +++ b/phpwf/plugins/class.yui.php @@ -6576,7 +6576,7 @@ r.land as land, p.abkuerzung as projekt, r.zahlungsweise as zahlungsweise, r.zahlungsweise as zahlungsweise, FORMAT(r.soll,2{$extended_mysql55} ) as soll, ifnull(r.waehrung,'EUR'), - if(r.soll-r.ist=0 AND r.ist > 0 AND r.zahlungsstatus!='bezahlt','teilbezahlt',r.zahlungsstatus) as zahlung, + r.zahlungsstatus as zahlung, if(r.soll-r.ist!=0 AND r.ist > 0,FORMAT(r.ist-r.soll,2{$extended_mysql55}),FORMAT((r.soll-r.ist)*-1,2{$extended_mysql55})) as fehlt, if(r.status = 'storniert' AND r.teilstorno = 1,'TEILSTORNO',UPPER(r.status)) as status, ".(!empty($zusatzcols)?implode(', ',$zusatzcols).',':'')." diff --git a/www/lib/class.erpapi.php b/www/lib/class.erpapi.php index 061202d9..32b2a4bb 100644 --- a/www/lib/class.erpapi.php +++ b/www/lib/class.erpapi.php @@ -13780,6 +13780,19 @@ function SendPaypalFromAuftrag($auftrag, $test = false) } } + function ReplaceKontorahmen($db,$value,$fromform = null) { + $value = $this->app->DB->real_escape_string($value); + + if ($db) { + $sachkonto = explode(' ',$value)[0]; + $kontoid = $this->app->DB->Select("SELECT id FROM kontorahmen WHERE sachkonto = '$sachkonto' LIMIT 1"); + return($kontoid); + } else { + $sachkonto = $this->app->DB->Select("SELECT CONCAT(sachkonto,' ',beschriftung) FROM kontorahmen WHERE id = '$value' LIMIT 1"); + return($sachkonto); + } + } + // @refactor FormHelper Komponente function ReplaceLieferant($db,$value,$fromform) { @@ -36033,7 +36046,7 @@ function Firmendaten($field,$projekt="") * Auftrag: gesamtsumme, rechnung: soll, gutschrift: soll verbindlichkeit: betrag * returns array(betrag, waehrung) or empty array if multiple */ - public function GetSaldoDokument(int $id, string $type) : array { + public function GetSaldoDokument(int $id, string $type, string $buchungsart = '', string $datum_bis = '') : array { $sql = " SELECT @@ -36042,10 +36055,15 @@ function Firmendaten($field,$projekt="") FROM fibu_buchungen_alle WHERE - typ = '".$type."' AND id = ".$id." + typ = '".$type."' + AND + id = ".$id." + AND + (buchungsart = '".$buchungsart."' OR '".$buchungsart."' = '') + AND + (datum <= '".$datum_bis."' OR '".$datum_bis."' = '') GROUP BY waehrung"; - $result = $this->app->DB->SelectArr($sql); if (!empty($result)) { @@ -36067,6 +36085,16 @@ function Firmendaten($field,$projekt="") } } + /* + * Refresh fibu buchung_alle tables + * using module fibu_buchungen + */ + public function fibu_rebuild_tables() { + $fibu_buchungen = $this->app->loadModule('fibu_buchungen', false); + if($fibu_buchungen !== null && method_exists($fibu_buchungen, 'fibu_buchungen_buchen')) { + return $fibu_buchungen->fibu_rebuild_tables(); + } + } public function ANABREGSNeuberechnen($id,$art,$force=false) { diff --git a/www/pages/content/firmendaten.tpl b/www/pages/content/firmendaten.tpl index 5143fce6..a3110f77 100644 --- a/www/pages/content/firmendaten.tpl +++ b/www/pages/content/firmendaten.tpl @@ -1109,7 +1109,10 @@
Buchungen erzeugen ab Datum: | + | Buchungen erzeugen ab Datum: | Für die Nutzung mit dem Modul Buchhaltung-Buchungen (Zahlungseingang, Zahlungsstatus, Mahnwesen) | +||||
Konto für Rechnung-Skontobuchungen: | Auf dieses Sachkonto werden Skontobuchungen mithilfe der Funktion "Zahlungsstatus berechnen" im Rechnungsmodul gebucht |