function pruefung_bericht($profil_id, $monat = null) { if ($monat == null) { $monat = date("m"); } $jahr = date("Y"); $this->get_r_profil_infos($profil_id); $email_err = $this->pruefen_emails($this->objekt_id); if (is_array($email_err)) { echo "<pre>"; print_r($email_err); $anz_e = count($email_err); fehlermeldung_ausgeben("FOlgende Eigentümer haben keine Emailadresse!!!"); echo "<table>"; for ($e = 0; $e < $anz_e; $e++) { $weg = new weg(); $e_id = $arr[$e]['ET_ID']; $weg->get_eigentumer_id_infos3($e_id); echo "<tr><td>{$weg->einheit_kurzname}</td><td>{$weg->empf_namen_u}</td></tr>"; } echo "</table>"; die; } else { fehlermeldung_ausgeben("Keine Email fehler!"); $bk_konten_arr = $this->bk_konten_arr($profil_id); if (!is_array($bk_konten_arr)) { fehlermeldung_ausgeben("Keine Kostenkonten gewählt!!!"); } else { // print_r($bk_konten_arr); $anz_k = count($bk_konten_arr); $f = new formular(); $f->erstelle_formular("Bericht erstellen", null); $this->get_r_profil_infos($profil_id); echo "<hr>{$this->kurz_b}<hr>"; echo "<table>"; for ($a = 0; $a < $anz_k; $a++) { $kto = $bk_konten_arr[$a]['KONTO']; $bez_de = $bk_konten_arr[$a]['BEZ_DE']; $bez_en = $bk_konten_arr[$a]['BEZ_EN']; $this->get_last_zeitraum($profil_id, $kto); if (!isset($this->report_bis)) { $this->report_von_neu = "{$jahr}-{$monat}-01"; $lt = letzter_tag_im_monat($monat, $jahr); $this->report_bis_neu = "{$jahr}-{$monat}-{$lt}"; } else { $this->report_von_neu = tage_plus($this->report_bis, 1); $von_n_arr = explode('-', $this->report_von); $von_m_neu = $von_n_arr[1]; $lt_neu = letzter_tag_im_monat($monat, $jahr); $this->report_bis_neu = "{$jahr}-{$monat}-{$lt_neu}"; } $this->report_von_neu_d = date_mysql2german($this->report_von_neu); $this->report_bis_neu_d = date_mysql2german($this->report_bis_neu); echo "<tr><td>{$kto}</td><td>{$bez_de}</td><td>{$bez_en}</td><td>"; echo "ALT: {$this->report_von}<br>NEU:{$this->report_von_neu}<br>"; $f->datum_feld('VON', 'bericht_von[]', $this->report_von_neu_d, 'von'); echo "</td><td>"; echo "ALT: {$this->report_bis}<br>NEU:{$this->report_bis_neu}<br>"; $f->datum_feld('BIS', 'bericht_bis[]', $this->report_bis_neu_d, 'bis'); echo "</td></tr>"; $f->hidden_feld('bk_konten[]', $kto); } echo "</table>"; // print_r($this); $f->hidden_feld('monat', $monat); $f->hidden_feld('jahr', $jahr); $f->hidden_feld('objekt_id', $this->objekt_id); $f->hidden_feld('option', 'dyn_pdf'); $f->hidden_feld('lang', 'en'); $this->dropdown_lang('Sprache', 'lang', 'lng'); $f->hidden_feld('profil_id', $profil_id); $f->send_button('Bnt_Bericht', 'PDF-Anzeigen'); $f->ende_formular(); } } }
$o = new objekt(); $o->get_objekt_infos($_SESSION['objekt_id']); $kurztext_neu = "{$kurztext}\n<b>Objektname: {$o->objekt_kurzname}</b>"; $r = new rechnung(); $letzte_belegnr = $r->letzte_beleg_nr() + 1; $jahr = date("Y"); $datum = date("Y-m-d"); $letzte_aussteller_rnr = $r->letzte_aussteller_ausgangs_nr($_SESSION['partner_id'], 'Partner', $jahr, 'Rechnung') + 1; $letzte_aussteller_rnr = sprintf('%03d', $letzte_aussteller_rnr); $r->rechnungs_kuerzel = $r->rechnungs_kuerzel_ermitteln('Partner', $_SESSION['partner_id'], $datum); $rechnungsnummer = $r->rechnungs_kuerzel . ' ' . $letzte_aussteller_rnr . '-' . $jahr; $letzte_empfaenger_rnr = $r->letzte_empfaenger_eingangs_nr($empf_id, $empf_typ, $jahr, 'Rechnung') + 1; $netto_betrag = 0.0; $gk = new geldkonto_info(); $gk->geld_konto_ermitteln('Partner', $_SESSION['partner_id']); $faellig_am = tage_plus($datum, 10); $db_abfrage = "INSERT INTO RECHNUNGEN VALUES (NULL, '{$letzte_belegnr}', '{$rechnungsnummer}', '{$letzte_aussteller_rnr}', '{$letzte_empfaenger_rnr}', 'Rechnung', '{$datum}','{$datum}', '{$netto_betrag}','0.00','0.00', 'Partner', '{$_SESSION['partner_id']}','{$empf_typ}', '{$empf_id}','1', '1', '0', '0', '0', '0', '0', '{$faellig_am}', '0000-00-00', '{$kurztext_neu}', '{$gk->geldkonto_id}')"; $resultat = mysql_query($db_abfrage) or die(mysql_error()); /* Protokollieren */ $last_dat = mysql_insert_id(); protokollieren('RECHNUNGEN', $last_dat, '0'); $pos = 0; $g_sum = 0; for ($a = 0; $a < count($typ_arr); $a++) { $pos++; $brutto_bet = $brutto_arr[$a]; $netto_betrag = nummer_komma2punkt($brutto_bet) / 1.19; $typ_bez = $typ_arr[$a]; $menge = $mengen_arr[$a]; $g_sum += nummer_komma2punkt($brutto_bet) * $menge; $g_netto = $netto_betrag * $menge;
function rechnung_aus_beleg($p_id, $beleg_nr, $empf_p_id) { $r = new rechnung(); $r_org = new rechnung(); $r_org->rechnung_grunddaten_holen($beleg_nr); $letzte_belegnr = $r->letzte_beleg_nr() + 1; $jahr = date("Y"); $datum = date("Y-m-d"); $letzte_aussteller_rnr = $r->letzte_aussteller_ausgangs_nr($p_id, 'Partner', $jahr, 'Rechnung') + 1; $letzte_aussteller_rnr = sprintf('%03d', $letzte_aussteller_rnr); $r->rechnungs_kuerzel = $r->rechnungs_kuerzel_ermitteln('Partner', $p_id, $datum); $rechnungsnummer = $r->rechnungs_kuerzel . ' ' . $letzte_aussteller_rnr . '-' . $jahr; $letzte_empfaenger_rnr = $r->letzte_empfaenger_eingangs_nr($empf_p_id, 'Partner', $jahr, 'Rechnung') + 1; $gk = new geldkonto_info(); $gk->geld_konto_ermitteln('Partner', $p_id); $faellig_am = tage_plus($datum, 10); $db_abfrage = "INSERT INTO RECHNUNGEN VALUES (NULL, '{$letzte_belegnr}', '{$rechnungsnummer}', '{$letzte_aussteller_rnr}', '{$letzte_empfaenger_rnr}', 'Rechnung', '{$datum}','{$datum}', '0','0.00','0.00', 'Partner', '{$p_id}','Partner', '{$empf_p_id}','1', '1', '0', '0', '1', '0', '0', '{$faellig_am}', '0000-00-00', '{$r_org->kurzbeschreibung}', '{$gk->geldkonto_id}')"; $resultat = mysql_query($db_abfrage) or die(mysql_error()); /* Protokollieren */ $last_dat = mysql_insert_id(); protokollieren('RECHNUNGEN', $last_dat, '0'); /* Posititonen */ $arr = $r->rechnungs_positionen_arr($beleg_nr); // echo '<pre>'; // print_r($arr); $anz_p = count($arr); for ($a = 0; $a < $anz_p; $a++) { $pos = $arr[$a]['POSITION']; $art_lieferant = $arr[$a]['ART_LIEFERANT']; $art_nr = $arr[$a]['ARTIKEL_NR']; $menge = $arr[$a]['MENGE']; $preis = $arr[$a]['PREIS']; $mwst = $arr[$a]['MWST_SATZ']; $rab = $arr[$a]['RABATT_SATZ']; $skonto = $arr[$a]['SKONTO']; $preis_g = $arr[$a]['GESAMT_NETTO']; $letzte_rech_pos_id = $r->get_last_rechnung_pos_id() + 1; $db_abfrage = "INSERT INTO RECHNUNGEN_POSITIONEN VALUES (NULL, '{$letzte_rech_pos_id}', '{$pos}', '{$letzte_belegnr}', '{$beleg_nr}','{$p_id}', '{$art_nr}', {$menge},'{$preis}','{$mwst}', '{$rab}','{$skonto}', '{$preis_g}','1')"; $resultat = mysql_query($db_abfrage) or die(mysql_error()); /* Protokollieren */ $last_dat = mysql_insert_id(); protokollieren('RECHNUNGEN_POSITIONEN', $last_dat, '0'); $r2 = new rechnungen(); $kont_arr = $r2->get_kontierung_arr($beleg_nr, $pos); $anz_k = count($kont_arr); if ($anz_k < 1) { fehlermeldung_ausgeben("Position {$pos} ist nicht kontiert"); } else { for ($p = 0; $p < $anz_k; $p++) { $k_menge = $kont_arr[$p]['MENGE']; $k_preis = $kont_arr[$p]['EINZEL_PREIS']; $k_preis_g = $kont_arr[$p]['GESAMT_SUMME']; $k_mwst = $kont_arr[$p]['MWST_SATZ']; $k_skonto = $kont_arr[$p]['SKONTO']; $k_rabatt = $kont_arr[$p]['RABATT_SATZ']; $k_konto = $kont_arr[$p]['KONTENRAHMEN_KONTO']; $k_kos_typ = $kont_arr[$p]['KOSTENTRAEGER_TYP']; $k_kos_id = $kont_arr[$p]['KOSTENTRAEGER_ID']; /* Kontieren */ $kontierung_id = $r->get_last_kontierung_id() + 1; $db_abfrage = "INSERT INTO KONTIERUNG_POSITIONEN VALUES (NULL, '{$kontierung_id}','{$letzte_belegnr}', '{$pos}','{$k_menge}', '{$k_preis}', '{$k_preis_g}', '{$k_mwst}', '{$k_skonto}', '{$k_rabatt}', '{$k_konto}', '{$k_kos_typ}', '{$k_kos_id}', '{$datum}', '{$jahr}', '0', '1')"; $resultat = mysql_query($db_abfrage) or die(mysql_error()); /* Protokollieren */ $last_dat = mysql_insert_id(); protokollieren('KONTIERUNG_POSITIONEN', $last_dat, '0'); } // end for2 } // end if } // end for weiterleiten("?daten=rechnungen&option=erfasste_rechnungen"); }