app=$app; //parent::Briefpapier(); $this->doctype="proformarechnung"; $this->doctypeOrig=($this->app->erp->Beschriftung("bezeichnungproformarechnungersatz")?$this->app->erp->Beschriftung("bezeichnungproformarechnungersatz"):$this->app->erp->Beschriftung("dokument_proformarechnung"))." $belegnr"; parent::__construct($this->app,$projekt); } function GetProformarechnung($id,$als="",$doppeltmp=0, $_datum = null) { if($this->app->erp->Firmendaten("steuerspalteausblenden")=="1") { // pruefe ob es mehr als ein steuersatz gibt // wenn ja dann darf man sie nicht ausblenden $check = $this->app->erp->SteuerAusBeleg($this->doctype,$id); if(!empty($check)?count($check):0>1)$this->ust_spalteausblende=false; else $this->ust_spalteausblende=true; } $briefpapier_bearbeiter_ausblenden = $this->app->erp->Firmendaten('briefpapier_bearbeiter_ausblenden'); $briefpapier_vertrieb_ausblenden = $this->app->erp->Firmendaten('briefpapier_vertrieb_ausblenden'); $this->doctypeid=$id; $this->setRecipientLieferadresse($id,"proformarechnung"); $data = $this->app->DB->SelectArr( "SELECT adresse, kundennummer, sprache, auftrag, buchhaltung, bearbeiter, vertrieb, lieferschein AS lieferscheinid, projekt, DATE_FORMAT(datum,'%d.%m.%Y') AS datum, DATE_FORMAT(mahnwesen_datum,'%d.%m.%Y') AS mahnwesen_datum, DATE_FORMAT(lieferdatum,'%d.%m.%Y') AS lieferdatum, belegnr, bodyzusatz, doppel, freitext, systemfreitext, ustid, typ, keinsteuersatz, soll, ist, land, zahlungsweise, zahlungsstatus, zahlungszieltage, zahlungszieltageskonto, zahlungszielskonto, ohne_briefpapier, ihrebestellnummer, ust_befreit, waehrung, versandart, DATE_FORMAT(DATE_ADD(datum, INTERVAL zahlungszieltage DAY),'%d.%m.%Y') AS zahlungdatum, DATE_FORMAT(DATE_ADD(datum, INTERVAL zahlungszieltageskonto DAY),'%d.%m.%Y') AS zahlungszielskontodatum, abweichendebezeichnung AS proformarechnungersatz, zollinformation, lieferland, abweichendelieferadresse FROM proformarechnung WHERE id='$id' LIMIT 1" ); $data = reset($data); extract($data,EXTR_OVERWRITE); if($abweichendelieferadresse==1 && !empty($lieferland)){ $land = $lieferland; } if(empty($kundennummer))$kundennummer = $this->app->DB->Select("SELECT kundennummer FROM adresse WHERE id='$adresse' LIMIT 1"); if(empty($sprache))$sprache = $this->app->DB->Select("SELECT sprache FROM adresse WHERE id='$adresse' LIMIT 1"); $trackingnummer = $this->app->DB->Select("SELECT tracking FROM versand WHERE proformarechnung='$id' LIMIT 1"); $lieferschein = $this->app->DB->Select("SELECT belegnr FROM lieferschein WHERE id='$lieferschein' LIMIT 1"); $this->app->erp->BeschriftungSprache($sprache); if($waehrung)$this->waehrung = $waehrung; if($doppeltmp==1) $doppel = $doppeltmp; $this->projekt = $projekt; $this->anrede = $typ; $ihrebestellnummer = $this->app->erp->ReadyForPDF($ihrebestellnummer); $bearbeiter = $this->app->erp->ReadyForPDF($bearbeiter); $vertrieb = $this->app->erp->ReadyForPDF($vertrieb); $seriennummern = array(); if($lieferscheinid)$seriennummern = $this->app->DB->SelectArr("SELECT * FROM seriennummern WHERE lieferschein='$lieferscheinid' AND lieferschein <> 0"); $chargen = array(); if($lieferscheinid)$chargen = $this->app->DB->SelectArr("SELECT * FROM chargen WHERE lieferschein='$lieferscheinid' AND lieferschein <> 0"); if($ohne_briefpapier=="1") { $this->logofile = ""; $this->briefpapier=""; $this->briefpapier2=""; } if($zahlungszieltageskonto<=0) $zahlungszielskontodatum = $zahlungdatum; else $zahlungszielskontodatum = $this->app->DB->Select("SELECT DATE_FORMAT(DATE_ADD(datum, INTERVAL $zahlungszieltageskonto DAY),'%d.%m.%Y') FROM proformarechnung WHERE id='$id' LIMIT 1"); if(!$this->app->erp->ProformarechnungMitUmsatzeuer($id)){ $this->ust_befreit=true; } $zahlungsweise = strtolower($zahlungsweise); //if($zahlungsweise=="proformarechnung"&&$zahlungsstatus!="bezahlt") /* if(1)$zahlungsweise=="rechnung" || $zahlungsweise=="einzugsermaechtigung" || $zahlungsweise=="lastschrift") { if($zahlungsweise=="rechnung") { } else { //lastschrift $zahlungsweisetext = $this->app->erp->Beschriftung("zahlung_".$zahlungsweise."_de"); if($zahlungsweisetext=="") $zahlungsweisetext ="Der Betrag wird von Ihrem Konto abgebucht."; if($zahlungszielskonto!=0) $zahlungsweisetext .="\r\n".$this->app->erp->Beschriftung("dokument_skonto")." $zahlungszielskonto % aus Zahlungskonditionen"; } } else { $zahlungsweisetext = $this->app->erp->Beschriftung("zahlung_".$zahlungsweise."_de"); if($zahlungsweisetext=="" || $zahlungsweise=="vorkasse") $zahlungsweisetext = $this->app->erp->Beschriftung("dokument_zahlung_per")." ".ucfirst($zahlungsweise); } */ if($zahlungszieltage==0){ $zahlungsweisetext = $this->app->erp->Beschriftung("zahlung_proformarechnung_sofort_de"); if($zahlungsweisetext=="") $zahlungsweisetext ="Proformarechnung zahlbar sofort. "; } else { $zahlungsweisetext = $this->app->erp->Beschriftung("zahlung_proformarechnung_de"); if($zahlungsweisetext=="") $zahlungsweisetext ="Proformarechnung zahlbar innerhalb von {ZAHLUNGSZIELTAGE} Tagen bis zum {ZAHLUNGBISDATUM}. "; $zahlungsweisetext = str_replace("{ZAHLUNGSZIELTAGE}",$zahlungszieltage,$zahlungsweisetext); $zahlungsweisetext = str_replace("{ZAHLUNGBISDATUM}",$zahlungdatum,$zahlungsweisetext); } if($zahlungszielskonto!=0) { $zahlungsweisetext .="\n".$this->app->erp->Beschriftung("dokument_skonto")." $zahlungszielskonto % ".$this->app->erp->Beschriftung("dokument_innerhalb")." $zahlungszieltageskonto ".$this->app->erp->Beschriftung("dokument_tagebiszum")." ".$zahlungszielskontodatum; } if($zahlungszielskonto!=0) { $zahlungsweisetext = str_replace("{ZAHLUNGSZIELSKONTO}",$zahlungszielskonto,$zahlungsweisetext); $zahlungsweisetext = str_replace("{ZAHLUNGSZIELTAGESKONTO}",$zahlungszieltageskonto,$zahlungsweisetext); $zahlungsweisetext = str_replace("{ZAHLUNGSZIELSKONTODATUM}",$zahlungszielskontodatum,$zahlungsweisetext); } else { $zahlungsweisetext = str_replace("{ZAHLUNGSZIELSKONTO}","",$zahlungsweisetext); $zahlungsweisetext = str_replace("{ZAHLUNGSZIELTAGESKONTO}","",$zahlungsweisetext); $zahlungsweisetext = str_replace("{ZAHLUNGSZIELSKONTODATUM}","",$zahlungsweisetext); } /* if($belegnr=="" || $belegnr=="0") $belegnr = "- ".$this->app->erp->Beschriftung("dokument_entwurf"); else { if($doppel==1 || $als=="doppel") $belegnr .= " (".$this->app->erp->Beschriftung("dokument_proformarechnung_kopie").")"; } */ if($als=="zahlungserinnerung") $this->doctypeOrig="Zahlungserinnerung vom ".(is_null($_datum)?$mahnwesen_datum:$_datum); else if($als=="mahnung1") $this->doctypeOrig="1. Mahnung vom ".(is_null($_datum)?$mahnwesen_datum:$_datum); else if($als=="mahnung2") $this->doctypeOrig="2. Mahnung vom ".(is_null($_datum)?$mahnwesen_datum:$_datum); else if($als=="mahnung3") $this->doctypeOrig="3. Mahnung vom ".(is_null($_datum)?$mahnwesen_datum:$_datum); else if($als=="inkasso") $this->doctypeOrig="Inkasso-Mahnung vom ".(is_null($_datum)?$mahnwesen_datum:$_datum); else { if($proformarechnungersatz) $this->doctypeOrig=($this->app->erp->Beschriftung("bezeichnungproformarechnungersatz")?$this->app->erp->Beschriftung("bezeichnungproformarechnungersatz"):$this->app->erp->Beschriftung("dokument_proformarechnung"))." $belegnr"; else $this->doctypeOrig=$this->app->erp->Beschriftung("dokument_proformarechnung")." $belegnr"; } $this->zusatzfooter = " (RE$belegnr)"; if($proformarechnung=="") $proformarechnung = "-"; if($kundennummer=="") $kundennummer= "-"; if($auftrag=="0") $auftrag = "-"; if($lieferschein=="0") $lieferschein= "-"; if($lieferschein=="") $lieferschein= "-"; $datumlieferschein = $this->app->DB->Select("SELECT DATE_FORMAT(datum, '%d.%m.%Y') FROM lieferschein WHERE id='$lieferscheinid' LIMIT 1"); if($datumlieferschein=="00.00.0000") $datumlieferschein = $datum; if($lieferdatum=="00.00.0000") $lieferdatum = $datum; if($mahnwesen_datum=="00.00.0000") $mahnwesen_datum = ""; //* start if($briefpapier_bearbeiter_ausblenden || $briefpapier_vertrieb_ausblenden) { if($lieferschein!='-') { if($auftrag!="-") { $sCD = array($this->app->erp->Beschriftung("dokument_auftrag")=>$auftrag,$this->app->erp->Beschriftung("dokument_proformarechnungsdatum")=>$datum,$this->app->erp->Beschriftung("bezeichnungkundennummer")=>$kundennummer,$this->app->erp->Beschriftung("auftrag_bezeichnung_bestellnummer")=>$ihrebestellnummer, $this->app->erp->Beschriftung("dokument_lieferschein")=>$lieferschein,$this->app->erp->Beschriftung("dokument_lieferdatum")=>$datumlieferschein ); } else { $sCD = array($this->app->erp->Beschriftung("dokument_proformarechnungsdatum")=>$datum,$this->app->erp->Beschriftung("bezeichnungkundennummer")=>$kundennummer,$this->app->erp->Beschriftung("auftrag_bezeichnung_bestellnummer")=>$ihrebestellnummer, $this->app->erp->Beschriftung("dokument_lieferschein")=>$lieferschein,$this->app->erp->Beschriftung("dokument_lieferdatum")=>$datumlieferschein ); } } else { if($auftrag!="-") { $sCD = array($this->app->erp->Beschriftung("dokument_auftrag")=>$auftrag,$this->app->erp->Beschriftung("dokument_proformarechnungsdatum")=>$datum,$this->app->erp->Beschriftung("bezeichnungkundennummer")=>$kundennummer,$this->app->erp->Beschriftung("auftrag_bezeichnung_bestellnummer")=>$ihrebestellnummer, $this->app->erp->Beschriftung("dokument_lieferdatum")=>$lieferdatum ); } else { $sCD = array($this->app->erp->Beschriftung("dokument_proformarechnungsdatum")=>$datum,$this->app->erp->Beschriftung("bezeichnungkundennummer")=>$kundennummer,$this->app->erp->Beschriftung("auftrag_bezeichnung_bestellnummer")=>$ihrebestellnummer, $this->app->erp->Beschriftung("dokument_lieferdatum")=>$lieferdatum, $this->app->erp->Beschriftung("dokument_ansprechpartner")=>$buchhaltung ); } } if(!$briefpapier_bearbeiter_ausblenden) { if($bearbeiter)$sCD[$this->app->erp->Beschriftung("auftrag_bezeichnung_bearbeiter")] = $bearbeiter; }elseif(!$briefpapier_vertrieb_ausblenden) { if($vertrieb)$sCD[$this->app->erp->Beschriftung("auftrag_bezeichnung_vertrieb")] = $vertrieb; } $this->setCorrDetails($sCD); }else{ if($vertrieb!=$bearbeiter) { if($lieferschein!='-') { if($auftrag!="-") $this->setCorrDetails(array($this->app->erp->Beschriftung("dokument_auftrag")=>$auftrag,$this->app->erp->Beschriftung("dokument_proformarechnungsdatum")=>$datum,$this->app->erp->Beschriftung("bezeichnungkundennummer")=>$kundennummer,$this->app->erp->Beschriftung("auftrag_bezeichnung_bestellnummer")=>$ihrebestellnummer, $this->app->erp->Beschriftung("dokument_lieferschein")=>$lieferschein,$this->app->erp->Beschriftung("dokument_lieferdatum")=>$datumlieferschein, $this->app->erp->Beschriftung("auftrag_bezeichnung_bearbeiter")=>$bearbeiter,$this->app->erp->Beschriftung("auftrag_bezeichnung_vertrieb")=>$vertrieb )); else $this->setCorrDetails(array($this->app->erp->Beschriftung("dokument_proformarechnungsdatum")=>$datum,$this->app->erp->Beschriftung("bezeichnungkundennummer")=>$kundennummer,$this->app->erp->Beschriftung("auftrag_bezeichnung_bestellnummer")=>$ihrebestellnummer, $this->app->erp->Beschriftung("dokument_lieferschein")=>$lieferschein,$this->app->erp->Beschriftung("dokument_lieferdatum")=>$datumlieferschein, $this->app->erp->Beschriftung("auftrag_bezeichnung_bearbeiter")=>$bearbeiter,$this->app->erp->Beschriftung("auftrag_bezeichnung_vertrieb")=>$vertrieb )); } else { if($auftrag!="-") $this->setCorrDetails(array($this->app->erp->Beschriftung("dokument_auftrag")=>$auftrag,$this->app->erp->Beschriftung("dokument_proformarechnungsdatum")=>$datum,$this->app->erp->Beschriftung("bezeichnungkundennummer")=>$kundennummer,$this->app->erp->Beschriftung("auftrag_bezeichnung_bestellnummer")=>$ihrebestellnummer, $this->app->erp->Beschriftung("dokument_lieferdatum")=>$lieferdatum, $this->app->erp->Beschriftung("auftrag_bezeichnung_bearbeiter")=>$bearbeiter,$this->app->erp->Beschriftung("auftrag_bezeichnung_vertrieb")=>$vertrieb )); else $this->setCorrDetails(array($this->app->erp->Beschriftung("dokument_proformarechnungsdatum")=>$datum,$this->app->erp->Beschriftung("bezeichnungkundennummer")=>$kundennummer,$this->app->erp->Beschriftung("auftrag_bezeichnung_bestellnummer")=>$ihrebestellnummer, $this->app->erp->Beschriftung("dokument_lieferdatum")=>$lieferdatum, $this->app->erp->Beschriftung("auftrag_bezeichnung_bearbeiter")=>$bearbeiter,$this->app->erp->Beschriftung("auftrag_bezeichnung_vertrieb")=>$vertrieb )); } //*ende hack } else { //start hack if($lieferschein!='-') { if($auftrag!="-") $this->setCorrDetails(array($this->app->erp->Beschriftung("dokument_auftrag")=>$auftrag,$this->app->erp->Beschriftung("dokument_proformarechnungsdatum")=>$datum,$this->app->erp->Beschriftung("bezeichnungkundennummer")=>$kundennummer,$this->app->erp->Beschriftung("auftrag_bezeichnung_bestellnummer")=>$ihrebestellnummer, $this->app->erp->Beschriftung("dokument_lieferschein")=>$lieferschein,$this->app->erp->Beschriftung("dokument_lieferdatum")=>$datumlieferschein, $this->app->erp->Beschriftung("auftrag_bezeichnung_bearbeiter")=>$bearbeiter )); else $this->setCorrDetails(array($this->app->erp->Beschriftung("dokument_proformarechnungsdatum")=>$datum,$this->app->erp->Beschriftung("bezeichnungkundennummer")=>$kundennummer,$this->app->erp->Beschriftung("auftrag_bezeichnung_bestellnummer")=>$ihrebestellnummer, $this->app->erp->Beschriftung("dokument_lieferschein")=>$lieferschein,$this->app->erp->Beschriftung("dokument_lieferdatum")=>$datumlieferschein, $this->app->erp->Beschriftung("auftrag_bezeichnung_bearbeiter")=>$bearbeiter )); } else { if($auftrag!="-") $this->setCorrDetails(array($this->app->erp->Beschriftung("dokument_auftrag")=>$auftrag,$this->app->erp->Beschriftung("dokument_proformarechnungsdatum")=>$datum,$this->app->erp->Beschriftung("bezeichnungkundennummer")=>$kundennummer,$this->app->erp->Beschriftung("auftrag_bezeichnung_bestellnummer")=>$ihrebestellnummer, $this->app->erp->Beschriftung("dokument_lieferdatum")=>$lieferdatum, $this->app->erp->Beschriftung("auftrag_bezeichnung_bearbeiter")=>$bearbeiter )); else $this->setCorrDetails(array($this->app->erp->Beschriftung("dokument_proformarechnungsdatum")=>$datum,$this->app->erp->Beschriftung("bezeichnungkundennummer")=>$kundennummer,$this->app->erp->Beschriftung("auftrag_bezeichnung_bestellnummer")=>$ihrebestellnummer, $this->app->erp->Beschriftung("dokument_lieferdatum")=>$lieferdatum, $this->app->erp->Beschriftung("dokument_ansprechpartner")=>$buchhaltung )); } } } //ende hack //if(!$this->app->erp->ProformarechnungMitUmsatzeuer($id) && $ustid!="" ) if(!$this->app->erp->ProformarechnungMitUmsatzeuer($id) && $keinsteuersatz!="1") { $this->ust_befreit=true; if($keinsteuersatz!="1"){ if($this->app->erp->Export($land)) $steuer = $this->app->erp->Beschriftung("export_lieferung_vermerk"); else $steuer = $this->app->erp->Beschriftung("eu_lieferung_vermerk"); $steuer = str_replace('{USTID}',$ustid,$steuer); $steuer = str_replace('{LAND}',$land,$steuer); } } if($als!="") { $body = $this->app->erp->MahnwesenBody($id,$als,$_datum); $footer =$this->app->erp->ParseUserVars("proformarechnung",$id, $this->app->erp->Beschriftung("proformarechnung_footer")); } else { $body = $this->app->erp->Beschriftung("proformarechnung_header"); if($bodyzusatz!="") $body=$body."\r\n".$bodyzusatz; $body = $this->app->erp->ParseUserVars("proformarechnung",$id,$body); if ($versandart!="" && $trackingnummer!=""){ $versandinfo = "$versandart: $trackingnummer\r\n"; }else{ $versandinfo ="";} if($systemfreitext!="") $systemfreitext = "\r\n\r\n".$systemfreitext; //$footer = $versandinfo."$freitext"."\r\n".$this->app->erp->ParseUserVars("proformarechnung",$id,$this->app->erp->Beschriftung("proformarechnung_footer"). // "\r\n$steuer\r\n$zahlungsweisetext").$systemfreitext; if($this->app->erp->Firmendaten("footer_reihenfolge_proformarechnung_aktivieren")=="1") { $footervorlage = $this->app->erp->Firmendaten("footer_reihenfolge_proformarechnung"); if($footervorlage=="") $footervorlage = "{FOOTERVERSANDINFO}{FOOTERFREITEXT}\r\n{FOOTERTEXTVORLAGERECHNUNG}\r\n{FOOTERSTEUER}\r\n{FOOTERZAHLUNGSWEISETEXT}{FOOTERSYSTEMFREITEXT}"; $footervorlage = str_replace('{FOOTERVERSANDINFO}',$versandinfo,$footervorlage); $footervorlage = str_replace('{FOOTERFREITEXT}',$freitext,$footervorlage); $footervorlage = str_replace('{FOOTERTEXTVORLAGERECHNUNG}',$this->app->erp->Beschriftung("proformarechnung_footer"),$footervorlage); $footervorlage = str_replace('{FOOTERSTEUER}',$steuer,$footervorlage); $footervorlage = str_replace('{FOOTERZAHLUNGSWEISETEXT}',$zahlungsweisetext,$footervorlage); $footervorlage = str_replace('{FOOTERSYSTEMFREITEXT}',$systemfreitext,$footervorlage); $footervorlage = $this->app->erp->ParseUserVars("proformarechnung",$id,$footervorlage); $footer = $footervorlage; } else { $footer = $versandinfo."$freitext"."\r\n".$this->app->erp->ParseUserVars("proformarechnung",$id,$this->app->erp->Beschriftung("proformarechnung_footer"). "\r\n$steuer\r\n$zahlungsweisetext").$systemfreitext; } } $this->setTextDetails(array( "body"=>$body, "footer"=>$footer)); $artikel = $this->app->DB->SelectArr("SELECT * FROM proformarechnung_position WHERE proformarechnung='$id' ORDER By sort"); $summe_rabatt = $this->app->DB->Select("SELECT SUM(rabatt) FROM proformarechnung_position WHERE proformarechnung='$id'"); if($summe_rabatt <> 0) $this->rabatt=1; if($this->app->erp->Firmendaten("modul_verband")=="1") $this->rabatt=1; $steuersatzV = $this->app->erp->GetSteuersatzNormal(false,$id,"proformarechnung"); $steuersatzR = $this->app->erp->GetSteuersatzErmaessigt(false,$id,"proformarechnung"); $gesamtsteuern = 0; $mitumsatzsteuer = $this->app->erp->ProformarechnungMitUmsatzeuer($id); foreach($artikel as $key=>$value) { if($value['umsatzsteuer'] != "ermaessigt" && $value['umsatzsteuer'] != "befreit") $value['umsatzsteuer'] = "normal"; $tmpsteuersatz = null; $tmpsteuertext = null; $this->app->erp->GetSteuerPosition('proformarechnung', $value['id'],$tmpsteuersatz, $tmpsteuertext); if(is_null($value['steuersatz']) || $value['steuersatz'] < 0) { if($value['umsatzsteuer'] == "ermaessigt") { $value['steuersatz'] = $steuersatzR; }elseif($value['umsatzsteuer'] == "befreit") { $value['steuersatz'] = 0; }else{ $value['steuersatz'] = $steuersatzV; } if(!is_null($tmpsteuersatz))$value['steuersatz'] = $tmpsteuersatz; } if($tmpsteuertext && !$value['steuertext'])$value['steuertext'] = $tmpsteuertext; if(!$mitumsatzsteuer)$value['steuersatz'] = 0; /* $limit = 60; $summary= $value['bezeichnung']; if (strlen($summary) > $limit) { $value['desc']= $value['bezeichnung']; $value['bezeichnung'] = substr($summary, 0, strrpos(substr($summary, 0, $limit), ' ')) . '...'; } */ $value['herstellernummer'] = $this->app->DB->Select("SELECT herstellernummer FROM artikel WHERE id='".$value['artikel']."' LIMIT 1"); $value['hersteller'] = $this->app->DB->Select("SELECT hersteller FROM artikel WHERE id='".$value['artikel']."' LIMIT 1"); if($zollinformation) { if($value['gewicht']=="") $value['gewicht'] = $this->app->DB->Select("SELECT gewicht FROM artikel WHERE id='".$value['artikel']."' LIMIT 1"); if($value['zolltarifnummer']=="" || $value['zolltarifnummer']=="0") $value['zolltarifnummer'] = $this->app->DB->Select("SELECT zolltarifnummer FROM artikel WHERE id='".$value['artikel']."' LIMIT 1"); if($value['herkunftsland']=="" || $value['herkunftsland']=="0") $value['herkunftsland'] = $this->app->DB->Select("SELECT herkunftsland FROM artikel WHERE id='".$value['artikel']."' LIMIT 1"); $gewichtbezeichnung = $this->app->erp->Firmendaten('gewichtbezeichnung'); if($gewichtbezeichnung=="") $gewichtbezeichnung = "kg"; $value['beschreibung'] = $value['beschreibung']."\r\nCustoms tariff number: ".$value['zolltarifnummer']." Country of origin: ".$value['herkunftsland']; if($value['gewicht']!="") $value['beschreibung'] = $value['beschreibung']."\r\nWeight: ".floatval($value['menge'])." x ".$value['gewicht']." ".$gewichtbezeichnung." = ".floatval($value['gewicht']*$value['menge'])." ".$gewichtbezeichnung; } else { $value['zolltarifnummer']=""; $value['herkunftsland']=""; } if(!empty($seriennummern)) { foreach($seriennummern as $seriennummern=>$seriennummer) { $seriennummernliste = $seriennummernliste.$seriennummer['seriennummer'].";"; } $seriennummernliste=substr($seriennummernliste, 0, -1); $value['seriennummern'] = $this->app->DB->Select("SELECT seriennummern FROM artikel WHERE id='".$value['artikel']."' LIMIT 1"); if ($value['seriennummern']=="keine"){ $value['beschreibung'] = $value['beschreibung']; }elseif ($value['seriennummern']==""){ $value['beschreibung'] = $value['beschreibung']; }else{ $value['beschreibung'] = $value['beschreibung']."\r\n".$this->app->erp->Beschriftung("dokument_seriennummer").": ". $seriennummernliste; } } if(!empty($chargen)) { foreach($chargen as $chargen=>$charge) { $chargenliste = $chargenliste.$charge['charge'].";"; } $chargenliste=substr($chargenliste, 0, -1); $value['chargen'] = $this->app->DB->Select("SELECT chargenverwaltung FROM artikel WHERE id='".$value['artikel']."' LIMIT 1"); if ($value['chargen']=="0"){ $value['beschreibung'] = $value['beschreibung']; }else{ $value['beschreibung'] = $value['beschreibung']."\r\n".$this->app->erp->Beschriftung("dokument_charge").": ". $chargenliste; } } if($value['explodiert_parent_artikel'] > 0) { $check_ausblenden = $this->app->DB->Select("SELECT keineeinzelartikelanzeigen FROM artikel WHERE id='".$value['explodiert_parent_artikel']."' LIMIT 1"); } else $check_ausblenden=0; $value = $this->CheckPosition($value,"proformarechnung",$this->doctypeid,$value['id']); $value['menge'] = floatval($value['menge']); if($check_ausblenden!=1)// && $als=="") //TODO MAHNWESEN { $this->addItem(array('currency'=>$value['waehrung'], 'amount'=>$value['menge'], 'price'=>$value['preis'], 'tax'=>$value['umsatzsteuer'], 'steuersatz'=>$value['steuersatz'], 'itemno'=>$value['nummer'], 'artikel'=>$value['artikel'], 'unit'=>$value['einheit'], 'desc'=>$value['beschreibung'], 'hersteller'=>$value['hersteller'], 'zolltarifnummer'=>$value['zolltarifnummer'], 'herkunftsland'=>$value['herkunftsland'], 'herstellernummer'=>trim($value['herstellernummer']), 'artikelnummerkunde'=>$value['artikelnummerkunde'], 'lieferdatum'=>$value['lieferdatum'], 'lieferdatumkw'=>$value['lieferdatumkw'], 'grundrabatt'=>$value['grundrabatt'], 'rabatt1'=>$value['rabatt1'], 'rabatt2'=>$value['rabatt2'], 'rabatt3'=>$value['rabatt3'], 'rabatt4'=>$value['rabatt4'], 'rabatt5'=>$value['rabatt5'], 'freifeld1'=>$value['freifeld1'], 'freifeld2'=>$value['freifeld2'], 'freifeld3'=>$value['freifeld3'], 'freifeld4'=>$value['freifeld4'], 'freifeld5'=>$value['freifeld5'], 'freifeld6'=>$value['freifeld6'], 'freifeld7'=>$value['freifeld7'], 'freifeld8'=>$value['freifeld8'], 'freifeld9'=>$value['freifeld9'], 'freifeld10'=>$value['freifeld10'], 'freifeld11'=>$value['freifeld11'], 'freifeld12'=>$value['freifeld12'], 'freifeld13'=>$value['freifeld13'], 'freifeld14'=>$value['freifeld14'], 'freifeld15'=>$value['freifeld15'], 'freifeld16'=>$value['freifeld16'], 'freifeld17'=>$value['freifeld17'], 'freifeld18'=>$value['freifeld18'], 'freifeld19'=>$value['freifeld19'], 'freifeld20'=>$value['freifeld20'], 'freifeld21'=>$value['freifeld21'], 'freifeld22'=>$value['freifeld22'], 'freifeld23'=>$value['freifeld23'], 'freifeld24'=>$value['freifeld24'], 'freifeld25'=>$value['freifeld25'], 'freifeld26'=>$value['freifeld26'], 'freifeld27'=>$value['freifeld27'], 'freifeld28'=>$value['freifeld28'], 'freifeld29'=>$value['freifeld29'], 'freifeld30'=>$value['freifeld30'], 'freifeld31'=>$value['freifeld31'], 'freifeld32'=>$value['freifeld32'], 'freifeld33'=>$value['freifeld33'], 'freifeld34'=>$value['freifeld34'], 'freifeld35'=>$value['freifeld35'], 'freifeld36'=>$value['freifeld36'], 'freifeld37'=>$value['freifeld37'], 'freifeld38'=>$value['freifeld38'], 'freifeld39'=>$value['freifeld39'], 'freifeld40'=>$value['freifeld40'], "name"=>ltrim($value['bezeichnung']), 'steuertext'=>$value['steuertext'], "rabatt"=>$value['rabatt'])); } $netto_gesamt = $value['menge']*($value['preis']-($value['preis']/100*$value['rabatt'])); $summe = $summe + $netto_gesamt; if(!isset($summen[$value['steuersatz']]))$summen[$value['steuersatz']] = 0; $summen[$value['steuersatz']] += ($netto_gesamt/100)*$value['steuersatz']; $gesamtsteuern +=($netto_gesamt/100)*$value['steuersatz']; /* if($value['umsatzsteuer']=="" || $value['umsatzsteuer']=="normal") { $summeV = $summeV + (($netto_gesamt/100)*$this->app->erp->GetSteuersatzNormal(false,$id,"proformarechnung")); } else { $summeR = $summeR + (($netto_gesamt/100)*$this->app->erp->GetSteuersatzErmaessigt(false,$id,"proformarechnung")); }*/ } /* $summe = $this->app->DB->Select("SELECT SUM(menge*preis) FROM proformarechnung_position WHERE proformarechnung='$id'"); $summeV = $this->app->DB->Select("SELECT SUM(menge*preis) FROM proformarechnung_position WHERE proformarechnung='$id' AND (umsatzsteuer!='ermaessigt')")/100 * 19; $summeR = $this->app->DB->Select("SELECT SUM(menge*preis) FROM proformarechnung_position WHERE proformarechnung='$id' AND umsatzsteuer='ermaessigt'")/100 * 7; */ if($this->app->erp->ProformarechnungMitUmsatzeuer($id)) { //$this->setTotals(array("totalArticles"=>$summe,"total"=>$summe + $summeV + $summeR,"totalTaxV"=>$summeV,"totalTaxR"=>$summeR)); $this->setTotals(array("totalArticles"=>$summe,"total"=>$summe + $gesamtsteuern,"summen"=>$summen,"totalTaxV"=>0,"totalTaxR"=>0)); } else { $this->setTotals(array("totalArticles"=>$summe,"total"=>$summe)); } /* Dateiname */ $tmp_name = str_replace(' ','',trim($this->recipient['enterprise'])); $tmp_name = str_replace('.','',$tmp_name); $this->filename = $datum."_PRE".$belegnr.".pdf"; $this->setBarcode($belegnr); } }