function rechnung_schreiben_positionen_wahl($kostentraeger_typ, $kostentraeger_id, $positionen, $aussteller_typ, $aussteller_id) { if (isset($_REQUEST['csv'])) { $this->pool_csv($kos_typ, $kos_id, $positionen, $aussteller_typ, $aussteller_id); die; } // echo "<pre>"; // print_r($positionen); // echo "</pre>"; // die(); $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)"'; $js_action = 'onmouseover="javascript:pool_berechnung(this.form)" onkeyup="javascript:pool_berechnung(this.form)" onmousedown="javascript:pool_berechnung(this.form)" onmouseup="javascript:pool_berechnung(this.form)" onmousemove="javascript:pool_berechnung(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'); // $positionen = array_sortByIndex($positionen,'POSITION'); // $positionen = array_orderby($positionen, 'BELEG_NR', SORT_DESC, 'POSITION', SORT_DESC); $positionen = array_msort($positionen, array('BELEG_NR' => array(SORT_ASC), 'POSITION' => SORT_STRING)); $this->rechnungs_kopf_zusammenstellung($kostentraeger_typ, $kostentraeger_id, $aussteller_typ, $aussteller_id); // echo '<pre>'; // print_r($positionen1); // die(); $self = $_SERVER['QUERY_STRING']; echo "<a href=\"?{$self}&csv\">Als Excel</a>"; echo "<table id=\"pos_tabelle\" class=rechnungen>"; echo "<tr><td colspan=3>"; $faellig_am = date("Y-m-t"); $faellig_am = date_mysql2german($faellig_am); $d_heute = date("d.m.Y"); $f->datum_feld('Rechnungsdatum', 'rechnungsdatum', "{$d_heute}", 'rechnungsdatum'); $f->datum_feld('Faellig am', 'faellig_am', "{$faellig_am}", 'faellig_am'); // $f->text_feld("Skonto in %:", "skonto", "0", "5", "skonto_feld", $js_action); echo "</td><td colspan=6>"; echo "</td></tr>"; echo "<tr><td colspan=\"6\">"; // 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>"; // onMouseover=\"BoxenAktivieren(this); echo "<div id=\"pool_tabelle\" {$js_action}>"; // echo "<tr class=feldernamen><td width=\"30px\"><input type=\"checkbox\" onClick=\"this.value=check(this.form.positionen_list)\" $js_action>Alle</td><td>Rechnung</td><td>Position</td><td>Menge</td><td>Bezeichnung</td><td>Einzelpreis</td><td>Netto</td><td>Rabatt %</td><td>Skonto</td><td>MWSt</td><td>Kostentraeger</td></tr>"; echo "<tr ><th>POOL</th><th><input type=\"checkbox\" onClick=\"this.value=check(this.form.positionen_list)\" {$js_action}>Alle</th><th>Rechnung</th><th>UPos</th><th>Pos</th><th>Menge</th><th>Bezeichnung</th><th>Einzelpreis</th><th>Netto</th><th>Rabatt %</th><th>Skonto</th><th>MWSt</th><th>Kostentraeger</th></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}"); $rechnungs_summe = 0; $start = 3; // nummer of <tr> for ($a = 0; $a < count($positionen); $a++) { $start++; $zeile = $a + 1; $belegnr = $positionen[$a]['BELEG_NR']; $this->rechnung_grunddaten_holen($belegnr); $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); $pos_kostentraeger_typ = $positionen[$a]['KOSTENTRAEGER_TYP']; $pos_kostentraeger_id = $positionen[$a]['KOSTENTRAEGER_ID']; $kostentraeger = $this->kostentraeger_ermitteln($pos_kostentraeger_typ, $pos_kostentraeger_id); $menge = nummer_punkt2komma($positionen[$a]['MENGE']); $epreis = nummer_punkt2komma($positionen[$a]['EINZEL_PREIS']); $gpreis = nummer_punkt2komma($positionen[$a]['GESAMT_SUMME']); $rabatt_satz = nummer_punkt2komma($positionen[$a]['RABATT_SATZ']); $skonto = nummer_punkt2komma($positionen[$a]['SKONTO']); $rechnungs_summe = $rechnungs_summe + nummer_komma2punkt($menge) * nummer_komma2punkt($epreis); $mwst_satz_in_prozent = nummer_punkt2komma($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}"); $link_rechnung_ansehen = "<a href=\"index.php?daten=rechnungen&option=rechnungs_uebersicht&belegnr={$belegnr}\">{$this->rechnungsnummer}</a>"; echo "<tr id=\"tr_zeile.{$start}\"><td>"; $rrr = new rechnungen(); /* * $pool_bez = substr($rrr->get_pool_bez($_SESSION['pool_id'],0,5)); * $pool_bez = $rrr->get_pool_bez($_SESSION['pool_id']); */ // $js_weiter = "onclick=\"pool_wahl('Rechnung aus Pool zusammenstellen', '$kontierung_dat', '$kostentraeger_typ', '$kostentraeger_id')\""; // $js_weiter = "onclick=\"pool_wahl('Rechnung aus Pool zusammenstellen', 'this.form.positionen', '$kostentraeger_typ', '$kostentraeger_id')\""; // $idid = "tr_zeile".$start; // $js_weiter = "onclick=\"deleteCurrentRow(this)\""; // $js_weiter = "onclick=\"zeile_entfernen(this, 'dat', 'kos_typ', 'kos_id', 'pool_id')\""; // $f->button_js('ip', "$pool_bez", $js_weiter); /* * $f->button_js('ip', "$pool_bez", $js_weiter); * $f->button_js('ip', "$pool_bez", $js_weiter); */ // echo $pool_bez; $rrr->btn_pool($kostentraeger_typ, $kostentraeger_id, $kontierung_dat, 'this'); echo "</td><td>{$zeile}<input type=\"checkbox\" name=uebernehmen[] id=\"positionen_list\" value=\"{$a}\" {$js_action}></td><td>{$link_rechnung_ansehen}</td><td>{$position}</td><td>{$zeile}.</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_inaktiv("Netto:", "", "{$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("Skonto:", "positionen[{$a}][skonto]", "{$skonto}", "5", "skonto_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 "</td><td valign=bottom>{$kostentraeger}</td></tr>"; // $f->hidden_feld("positionen[$a][kontierung_id]", "$kontierung_id"); } echo "<tr><td colspan=10><hr></td></tr></table>"; echo "<table>"; // 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>"; echo "</div>"; $f->ende_formular(); }