Esempio n. 1
0
 function rechnung_schreiben_positionen_wahl_LETZTE($kostentraeger_typ, $kostentraeger_id, $positionen, $aussteller_typ, $aussteller_id)
 {
     // echo "<pre>";
     // print_r($positionen);
     // echo "</pre>";
     $f = new formular();
     $f->erstelle_formular("Rechnung aus Pool zusammenstellen", NULL);
     $f->hidden_feld('option', 'AUTO_RECHNUNG_VORSCHAU');
     $js_action = 'onblur="javascript:rechnung_pool_neuberechnen(this.form)" onchange="javascript:rechnung_pool_neuberechnen(this.form)" onfocus="javascript:rechnung_pool_neuberechnen(this.form)" onmouseover="javascript:rechnung_pool_neuberechnen(this.form)"';
     $objekt_info = new objekt();
     if ($kostentraeger_typ == 'Objekt') {
         $objekt_info->get_objekt_eigentuemer_partner($kostentraeger_id);
         $rechnungs_empfaenger_id = $objekt_info->objekt_eigentuemer_partner_id;
     }
     if ($kostentraeger_typ == 'Einheit') {
         $this->get_empfaenger_infos($kostentraeger_typ, $kostentraeger_id);
         $rechnungs_empfaenger_typ = $this->rechnungs_empfaenger_typ;
         $rechnungs_empfaenger_id = $this->rechnungs_empfaenger_id;
     }
     if ($kostentraeger_typ == 'Lager') {
         $rechnungs_empfaenger_id = $kostentraeger_id;
         /*
          * $l = new lager;
          * $l->lager_name_partner($kostentraeger_id);
          * $rechnungs_empfaenger_typ = 'Partner';
          * $rechnungs_empfaenger_id = $l->lager_partner_id;
          */
     }
     if ($kostentraeger_typ == 'Partner') {
         $rechnungs_empfaenger_id = $kostentraeger_id;
     }
     $positionen = array_sortByIndex($positionen, 'BELEG_NR');
     $this->rechnungs_kopf_zusammenstellung($kostentraeger_typ, $kostentraeger_id, $aussteller_typ, $aussteller_id);
     echo "<table class=rechnungen>";
     echo "<tr><td colspan=3>";
     $faellig_am = date("Y-m-t");
     $faellig_am = date_mysql2german($faellig_am);
     $datum_feld = 'document.getElementById("rechnungsdatum").value';
     $js_datum = "onchange='check_datum({$datum_feld})'";
     $f->text_feld('Rechnungsdatum:', 'rechnungsdatum', '', '20', 'rechnungsdatum', $js_datum);
     $datum_feld = 'document.getElementById("faellig_am").value';
     $js_datum = "onchange='check_datum({$datum_feld})'";
     $f->text_feld('Faellig am:', 'faellig_am', "{$faellig_am}", '20', 'faellig_am', $js_datum);
     $f->text_feld("Skonto in %:", "skonto", "0", "5", "skonto_feld", $js_action);
     echo "</td><td colspan=6>";
     echo "</td></tr>";
     // onMouseover=\"BoxenAktivieren(this);
     echo "<tr class=feldernamen><td width=\"30px\"><input type=\"checkbox\" onClick=\"this.value=check(this.form.positionen_list)\">Alle</td><td>Position</td><td>Menge</td><td>Bezeichnung</td><td>Einzelpreis</td><td>Netto</td><td>Rabatt %</td><td>MWSt</td><td>Kostentraeger</td></tr>";
     $f->hidden_feld('RECHNUNG_EMPFAENGER_TYP', "{$kostentraeger_typ}");
     $f->hidden_feld('RECHNUNG_EMPFAENGER_ID', "{$rechnungs_empfaenger_id}");
     $f->hidden_feld('RECHNUNG_AUSSTELLER_TYP', "{$aussteller_typ}");
     $f->hidden_feld('RECHNUNG_AUSSTELLER_ID', "{$aussteller_id}");
     $f->hidden_feld('RECHNUNG_KOSTENTRAEGER_ID', "{$kostentraeger_id}");
     $f->hidden_feld('RECHNUNG_KOSTENTRAEGER_TYP', "{$kostentraeger_typ}");
     $f->hidden_feld('RECHNUNG_NETTO_BETRAG', NULL);
     $f->hidden_feld('RECHNUNG_BRUTTO_BETRAG', NULL);
     $f->hidden_feld('RECHNUNG_SKONTO_BETRAG', NULL);
     $rechnungs_summe = 0;
     for ($a = 0; $a < count($positionen); $a++) {
         $zeile = $a + 1;
         $belegnr = $positionen[$a]['BELEG_NR'];
         $f->hidden_feld("positionen[{$a}][beleg_nr]", "{$belegnr}");
         $position = $positionen[$a][POSITION];
         $f->hidden_feld("positionen[{$a}][position]", "{$position}");
         $artikel_bezeichnung = $this->kontierungsartikel_holen($belegnr, $position);
         $f->hidden_feld("positionen[{$a}][artikel_nr]", "{$this->artikel_nr}");
         $f->hidden_feld("positionen[{$a}][art_lieferant]", "{$this->art_lieferant}");
         $pos_kostentraeger_typ = $positionen[$a][KOSTENTRAEGER_TYP];
         $f->hidden_feld("positionen[{$a}][position_kostentraeger_typ]", "{$pos_kostentraeger_typ}");
         $pos_kostentraeger_id = $positionen[$a][KOSTENTRAEGER_ID];
         $f->hidden_feld("positionen[{$a}][position_kostentraeger_id]", "{$pos_kostentraeger_id}");
         $verwendungs_jahr = $positionen[$a][VERWENDUNGS_JAHR];
         $f->hidden_feld("positionen[{$a}][verwendungs_jahr]", "{$verwendungs_jahr}");
         $kontenrahmen_konto = $positionen[$a][KONTENRAHMEN_KONTO];
         $f->hidden_feld("positionen[{$a}][kontenrahmen_konto]", "{$kontenrahmen_konto}");
         $kostentraeger = $this->kostentraeger_ermitteln($pos_kostentraeger_typ, $pos_kostentraeger_id);
         // echo "$menge $kontenrahmen_konto $kostentraeger_typ $kostentraeger<br>\n";
         $menge = $positionen[$a][MENGE];
         $f->hidden_feld("positionen[{$a}][ursprungs_menge]", "{$menge}");
         $epreis = $positionen[$a][EINZEL_PREIS];
         $gpreis = $positionen[$a][GESAMT_SUMME];
         $rabatt_satz = $positionen[$a][RABATT_SATZ];
         $rechnungs_summe = $rechnungs_summe + $menge * $epreis;
         $mwst_satz_in_prozent = $this->mwst_satz_der_position($belegnr, $position);
         // aus Beleg infos holen //
         $kontierung_id = $positionen[$a][KONTIERUNG_ID];
         $kontierung_dat = $positionen[$a][KONTIERUNG_DAT];
         $f->hidden_feld("positionen[{$a}][kontierung_dat]", "{$kontierung_dat}");
         echo "<tr><td><input type=\"checkbox\" name=uebernehmen[] id=\"positionen_list\" value=\"{$a}\" {$js_action}></td><td>{$zeile}. ERF:{$belegnr}</td><td>";
         $f->text_feld("Menge:", "positionen[{$a}][menge]", "{$menge}", "5", "mengen_feld", $js_action);
         // $f->hidden_feld("positionen[$a][bezeichnung]", "$artikel_bezeichnung");
         echo "</td><td>{$artikel_bezeichnung}</td><td>";
         $f->text_feld("Einzelpreis:", "positionen[{$a}][preis]", "{$epreis}", "8", "epreis_feld", $js_action);
         echo "</td><td>";
         $f->text_feld("Netto:", "positionen[{$a}][gpreis]", "{$gpreis}", "8", "netto_feld", $js_action);
         echo "</td><td>";
         // $gpreis_brutto = ($gpreis / 100) * (100 + $rechnung->rechnungs_mwst_satz);
         $gpreis_brutto = $gpreis / 100 * (100 + $mwst_satz_in_prozent);
         $gpreis_brutto = $gpreis_brutto * 100 / 100;
         $gpreis_brutto = nummer_punkt2komma($gpreis_brutto);
         // $form->text_feld("Brutto:", "positionen[$a][gpreis_brutto]", "$gpreis_brutto", "5");
         $f->text_feld("Rabatt:", "positionen[{$a}][rabatt_satz]", "{$rabatt_satz}", "5", "rabatt_feld", $js_action);
         $f->hidden_feld("positionen[{$a}][pos_mwst]", "{$mwst_satz_in_prozent}");
         echo "</td><td>";
         $f->text_feld("Mwst:", "mwst_satz", "{$mwst_satz_in_prozent}", "3", "mwst_feld", $js_action);
         echo "{$mwst_satz}</td><td valign=bottom>{$kostentraeger}</td></tr>";
         $f->hidden_feld("positionen[{$a}][kontierung_id]", "{$kontierung_id}");
     }
     echo "<tr><td colspan=9><hr></td></tr></table>";
     echo "<table><tr><td colspan=\"9\">";
     // if($aussteller_typ == 'Partner'){
     $geld_konto_info = new geldkonto_info();
     $geld_konto_info->dropdown_geldkonten($aussteller_typ, $aussteller_id);
     // }else{
     // $form->hidden_feld('geld_konto', '0');
     // }
     echo "</td></tr>";
     // echo "<tr><td><input type=\"checkbox\" name=\"in_rechung_stellen\" id=\"in_rechung_stellen\" onclick=\"check_ob_pos_gewaehlt(this, this.form.positionen_list)\"><b>Eingabe beenden</b></td>\n</tr>";
     echo "<tr><td>";
     $f->text_bereich('Kurzbeschreibung', 'kurzbeschreibung', '', 30, 30, 'kurzbeschreibung');
     echo "<br>";
     $f->send_button_disabled("senden_pos", "Speichern deaktiviert", "speichern_button2");
     echo "</td></tr>";
     echo "<tr><td colspan=9><hr></td></tr>";
     echo "<tr><td colspan=8 align=right>Netto ausgewählte Positionen</td><td id=\"g_netto_ausgewaehlt\"></td></tr>";
     echo "<tr><td colspan=8 align=right>Brutto ausgewählte Positionen</td><td id=\"g_brutto_ausgewaehlt\"></td></tr>";
     echo "<tr><td colspan=8 align=right>Skontonachlass</td><td id=\"g_skonto_nachlass\"></td></tr>";
     echo "<tr><td colspan=8 align=right>Skontobetrag</td><td id=\"g_skonto_betrag\"></td></tr>";
     echo "<tr><td colspan=9><hr></td></tr>";
     echo "<tr><td colspan=8 align=right>Gesamt Netto errechnet</td><td id=\"g_netto_errechnet\"></td></tr>";
     echo "<tr><td colspan=8 align=right>Gesamt Brutto errechnet</td><td id=\"g_brutto_errechnet\"></td></tr>";
     echo "<tr><td colspan=8 align=right>Durchschnittsrabatt im Pool</td><td id=\"durchschnitt_rabatt\"></td></tr>";
     echo "</table>";
     $f->ende_formular();
 }