示例#1
0
 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();
         }
     }
 }
示例#2
0
 $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");
 }