Subversion-Projekte lars-tiefland.content-management

Revision

Revision 1 | Ganze Datei anzeigen | Leerzeichen ignorieren | Details | Blame | Letzte Änderung | Log anzeigen | RSS feed

Revision 1 Revision 2
Zeile 1... Zeile 1...
1
<?php
1
<?php
2
    
-
 
3
    
2
 
4
    // $Id: rechnung.php 3997 2011-10-13 10:22:00Z erling $
3
    // $Id: rechnung.php 4255 2012-03-29 09:59:11Z erling $
-
 
4
    session_start();
Zeile 5... Zeile 5...
5
 
5
 
-
 
6
    require_once "connect2.php";
-
 
7
 
6
    require_once "connect2.php";
8
 
7
    require_once "includes/bestellungen/system/mysql_query_logged.php";
9
    require_once "includes/bestellungen/system/mysql_query_logged.php";
Zeile 8... Zeile 10...
8
    require_once "Weban_Smarty.class.php";
10
    require_once "Weban_Smarty.class.php";
9
 
11
 
10
    require_once "module/functions.common.php";
12
    require_once "module/functions.common.php";
-
 
13
    require_once "includes/rechnung/rechnungsbuch.function.php";
-
 
14
    require_once "includes/bestellungen/system/artikelDatabase.php";
-
 
15
    /**
-
 
16
     * Funktionen der Lagerwirtschaft.
Zeile -... Zeile 17...
-
 
17
     */
Zeile 11... Zeile -...
11
    require_once "includes/rechnung/rechnungsbuch.function.php";
-
 
12
    require_once "includes/bestellungen/system/artikelDatabase.php";
-
 
13
 
-
 
14
 
-
 
15
    // Soll die Vorschaltseite angezeigt werden?
-
 
16
    $show_prepage = 0;
-
 
17
    $zz_text = null;
-
 
18
 
-
 
19
    
-
 
20
    // ME: START Vorbereitung der Ausgabe des Zahlungsziels auf der Rechnung 
-
 
21
    if ( isset($web_rechte["Warenwirtschaft"]["rechnungsbuch"]["zahlungsziel"]) ) {
-
 
22
        if ( $_POST['action'] == "genPDF" )
-
 
23
        {
-
 
24
            if ( $_POST['zahlungsziel'] )
-
 
25
            {
-
 
26
                $sql = "select * from zahlungsziele where id=" . $_POST['zahlungsziel'] . "";
-
 
27
                if ( $q = mysql_query($sql) )
-
 
28
                {
-
 
29
                    if ( $r = mysql_fetch_assoc($q) )
-
 
30
                    {
-
 
31
                        $zieltage = date('d.m.Y', strtotime('+'.$r['zieltage'].' days'));
-
 
32
                        $serArr['ziel'] = strtotime('+'.$r['zieltage'].' days');
-
 
33
                        
-
 
34
                        
-
 
35
                        if($r['skonto1']>0) {
-
 
36
                            $skonto1 = $r['skonto1'];
-
 
37
                            $serArr['skonto1'] = $skonto1;    
-
 
38
                        }
-
 
39
                        if($r['zieltageskonto1']>0) {
-
 
40
                            $zieltageskonto1 = date('d.m.Y', strtotime('+'.$r['zieltageskonto1'].' days'));
-
 
41
                            $serArr['zielskonto1'] = strtotime('+'.$r['zieltageskonto1'].' days');    
-
 
42
                        }
-
 
43
                        
-
 
44
                        if($r['skonto2']>0) {
-
 
45
                            $skonto2 = $r['skonto2'];
-
 
46
                            $serArr['skonto2'] = $skonto2;    
-
 
47
                        }
-
 
48
                        if($r['zieltageskonto2']>0) {
-
 
49
                            $zieltageskonto2 = date('d.m.Y', strtotime('+'.$r['zieltageskonto2'].' days'));
-
 
50
                            $serArr['zielskonto2'] = strtotime('+'.$r['zieltageskonto2'].' days');    
-
 
51
                        }
-
 
52
                        @eval( "\$rechnungsbaustein_int=\"" . addslashes($r["rechnungsbaustein"]) . "\";" );
-
 
53
                        
-
 
54
                        $zz_text = $rechnungsbaustein_int;
-
 
55
                        
-
 
56
                    }
-
 
57
                }
-
 
58
            }
-
 
59
        }
-
 
60
    }
-
 
61
    
-
 
Zeile 62... Zeile 18...
62
    if($_POST['rechnung_bezahlt']) {
18
    require_once '../includes/system/functions.lagerwirtschaft.php';
63
        $zz_text = "Betrag lt. Kassenbeleg dankend erhalten.";
19
 
64
    }
20
    require_once "fpdf/fpdf.php";
65
    // ME: ENDE Vorbereitung der Ausgabe des Zahlungsziels auf der Rechnung
21
 
Zeile -... Zeile 22...
-
 
22
 
-
 
23
    $GLOBALS["ui"] = new Weban_Smarty();
-
 
24
    $GLOBALS["ui"]->compile_dir = $_SERVER["DOCUMENT_ROOT"] . "/templates_c/";
-
 
25
    $GLOBALS["ui"]->compile_id = "Warenwirtschaft|rechnungen";
-
 
26
    $GLOBALS["ui"]->use_sub_dirs = true;
66
 
27
 
67
    $GLOBALS["ui"] = new Weban_Smarty();
28
    $errorIds = array();
68
    $GLOBALS["ui"]->compile_dir = $_SERVER["DOCUMENT_ROOT"] . "/templates_c/";
29
 
69
    $GLOBALS["ui"]->compile_id = "Warenwirtschaft|rechnungen";
30
    $show_prepage = 0;
70
    $GLOBALS["ui"]->use_sub_dirs = true;
31
 
71
 
32
    // ME: bei Einzelrechnung die b_id speichern
72
    if ( $_POST['b_id'] )
33
    if ( $_GET['b_id'] )
-
 
34
    {
-
 
35
        $b_id = $_GET['b_id'];
-
 
36
    }
-
 
37
    elseif ( $_POST["b_id"] )
73
    {
38
    {
74
        $b_id = $_POST['b_id'];
-
 
Zeile 75... Zeile 39...
75
    }
39
        $b_id = $_POST["b_id"];
76
    if ( $b_id )
40
    }
-
 
41
    else // bei Massendruck die erste übergebene b_id speichern
77
    {
42
    {
78
        $GLOBALS["ui"]->assign( "b_id", $b_id );
43
        $b_id = $_POST['chk_bestellung'][0];
Zeile 79... Zeile 44...
79
    }
44
    }
80
    
45
 
-
 
46
    // ME: Soll der Kunde das Rechnungsdatum auf der Vorschaltseite ändern können?
81
 
47
    if ( isset( $web_rechte["Warenwirtschaft"]["bestellung"]["abw_rechnungsdatum"] ) )
82
    // ME: Soll der Kunde das Rechnungsdatum auf der Vorschaltseite ändern können?
48
    {
Zeile 83... Zeile -...
83
    if ( isset($web_rechte["Warenwirtschaft"]["bestellung"]["abw_rechnungsdatum"]) ) {
-
 
84
        $GLOBALS["ui"]->assign( "rechnungsdatum_aendern", true );
-
 
85
    }
-
 
86
 
-
 
87
    // ME: Soll der Kunde das Leistungsdatum auf der Vorschaltseite ändern können?
-
 
88
    if ( isset($web_rechte["Warenwirtschaft"]["bestellung"]["abw_lieferdatum"]) ) {
-
 
89
        $GLOBALS["ui"]->assign( "leistungsdatum_aendern", true );
49
        $GLOBALS["ui"]->assign( "rechnungsdatum_aendern", true );
90
    }
50
    }
91
 
-
 
92
    // ME: soll die Rechnung als Gutschrift ausgegeben werden?
51
 
93
    $gutschrift=0;
52
    // ME: Soll der Kunde das Leistungsdatum auf der Vorschaltseite ändern können?
94
    if(isset( $_POST['gutschrift'] )) {
53
    if ( isset( $web_rechte["Warenwirtschaft"]["bestellung"]["abw_lieferdatum"] ) )
95
        $gutschrift=1;        
54
    {
96
    }
55
        $GLOBALS["ui"]->assign( "leistungsdatum_aendern", true );
Zeile -... Zeile 56...
-
 
56
    }
-
 
57
 
-
 
58
    // ME: Webrecht und Userrecht für Gutschriften gesetzt?
-
 
59
    $GLOBALS["ui"]->assign( "gutschriftoption", 0 );
-
 
60
    if ( ( isset( $web_rechte["Warenwirtschaft"]["bestellung"]["gutschriftoption"] ) ) and
-
 
61
        ( isset( $user_rechte["Warenwirtschaft"]["bestellung"]["gutschriftoption"] ) ) )
Zeile 97... Zeile -...
97
 
-
 
98
    // ME: Webrecht und Userrecht für Gutschriften gesetzt?
-
 
99
    $GLOBALS["ui"]->assign("gutschriftoption",0);
-
 
100
    if(
62
    {
101
        (isset($web_rechte["Warenwirtschaft"]["bestellung"]["gutschriftoption"])) and
63
        $GLOBALS["ui"]->assign( "gutschriftoption", 1 );
102
        (isset($user_rechte["Warenwirtschaft"]["bestellung"]["gutschriftoption"]))
64
    }
103
    ) {
-
 
104
        $GLOBALS["ui"]->assign("gutschriftoption",1);
-
 
105
    }
-
 
106
 
65
 
107
 
66
    // ME: Bestandsminderung? Muss in Kombination mit Rechnungsbausteinen eingebaut werden, damit dasselbe Template genutzt werden kann!
108
    // START PRÜFUNG ARTIKEL FÜR RECHNUNGSDRUCK!
67
    if ( isset( $web_rechte['Warenwirtschaft']['lagerwirtschaft']['minderungsunterdrueckung'] ) )
109
    // ME: hier muss geprüft werden, ob mind. ein Artikel für den Rechnungsdruck ausgewählt wurde.
68
    {
110
    // Wenn nicht, gibts ne Fehlermeldung!
-
 
111
    $sql = "SELECT 
-
 
112
                ab.*    
69
        $GLOBALS["ui"]->assign( "minderungsunterdrueckung", true );
Zeile 113... Zeile 70...
113
            FROM 
70
 
114
                artikel_to_Bestellung ab
71
    }
115
            LEFT OUTER JOIN
72
 
116
                artikel a
73
    $sql = "SELECT 
117
            ON
-
 
118
                a.ID=ab.artikel 
-
 
119
            WHERE 
-
 
120
                Bestellung=$b_id 
74
            bestellart_id,
121
            AND 
75
            shops_ID
-
 
76
        FROM
122
                ab.`status` != 'storniert'
77
            Bestellung
-
 
78
        WHERE
123
    ";
79
            ID = " . $b_id . " 
-
 
80
    ";
-
 
81
 
-
 
82
    if ( $q = mysql_query( $sql ) )
-
 
83
    {
-
 
84
        if ( $r = mysql_fetch_assoc( $q ) )
-
 
85
        {
124
 
86
        }
125
    if ( isset($web_rechte["Warenwirtschaft"]["bestellung"]["artikel_sortieren"]) )
87
    }
-
 
88
 
126
    {
89
    // wenn der filter bestellart gesetzt ist.
-
 
90
    if ( isset( $_SESSION['filter']['bestellart_id'] ) )
-
 
91
    {
-
 
92
        // bestellart_id gesetzt?
-
 
93
        if ( $_SESSION['filter']['bestellart_id'] )
-
 
94
        {
127
        $sql .= "
95
            // wenn ja, bestellart_id nehmen und weiter..
-
 
96
            $bestellart_id = $_SESSION['filter']['bestellart_id'];
-
 
97
        }
-
 
98
        else
-
 
99
        {
-
 
100
            // wenn nein, dann die bestellart_id über die erste Bestellung ermitteln
-
 
101
            $bestellart_id = $r['bestellart_id'];
-
 
102
        }
-
 
103
    }
-
 
104
    // wenn der filter shopID gesetzt ist.
128
            ORDER BY
105
    if ( isset( $_SESSION['filter']['shopID'] ) )
129
                ab.Rang,
106
    {
-
 
107
        // shopID gesetzt?
130
                Father desc,
108
        if ( $_SESSION['filter']['shopID'] )
-
 
109
        {
-
 
110
            // wenn ja, shopID nehmen und weiter..
-
 
111
            $GLOBALS["shops_ID"] = $_SESSION['filter']['shopID'];
-
 
112
        }
131
                a.kennung
113
        else
132
        ";
114
        {
Zeile -... Zeile 115...
-
 
115
            // wenn nein, dann die shopID über die erste Bestellung ermitteln
-
 
116
            $GLOBALS["shops_ID"] = $r['shops_ID'];
-
 
117
        }
-
 
118
    }
133
    }
119
 
-
 
120
    unset( $r );
-
 
121
 
-
 
122
    // Rechnungsbausteine?
134
    else
123
    if ( ( isset( $web_rechte["Warenwirtschaft"]["bestellung"]["rechnungsbausteine"] ) and
-
 
124
        ( !$_POST['action'] ) ) or ( isset( $web_rechte['Warenwirtschaft']['lagerwirtschaft']['minderungsunterdrueckung'] ) and
-
 
125
        ( !$_POST['action'] ) ) )
-
 
126
    {
-
 
127
 
-
 
128
        $bausteinIDs = explode( ";", $web_rechte["Warenwirtschaft"]["bestellung"]["rechnungsbausteine"] );
-
 
129
        $bausteine_ids = implode( " OR ID=", $bausteinIDs );
135
    {
130
 
136
        $sql .= "
131
 
-
 
132
        // gibt es das Feld bestellart_id?
-
 
133
        $wcl = "";
-
 
134
        $result = mysql_query( "SHOW COLUMNS FROM web_settings" );
-
 
135
        if ( !$result )
-
 
136
        {
137
            ORDER BY
137
            echo 'Abfrage konnte nicht ausgeführt werden: ' . mysql_error();
-
 
138
            //exit;
-
 
139
        }
-
 
140
 
-
 
141
        if ( mysql_num_rows( $result ) > 0 )
-
 
142
        {
-
 
143
            while ( $row = mysql_fetch_assoc( $result ) )
-
 
144
            {
-
 
145
                if ( is_array( $row ) )
-
 
146
                {
-
 
147
                    foreach ( $row as $key => $value )
138
                Father desc,
148
                    {
139
                a.kennung
149
                        if ( $value == "bestellart_id" )
140
        ";
-
 
141
    }
-
 
142
    $r_schreiben = 0;
-
 
143
    if ( $q = mysql_query($sql) )
-
 
144
    {
-
 
145
 
-
 
146
        while ( $r = mysql_fetch_assoc($q) )
-
 
147
        {
-
 
148
            if ( $r['rechnungStatus'] == 'schreiben' )
-
 
149
            {
-
 
Zeile -... Zeile 150...
-
 
150
                        {
150
                $r_schreiben++;
151
                            $wcl .= " AND bestellart_id = " . $bestellart_id .
151
            }
152
                                " ";
152
        }
153
                        }
153
    }
-
 
Zeile 154... Zeile -...
154
    else
-
 
155
    {
-
 
156
        echo mysql_error();
-
 
157
    }
-
 
158
    if ( $r_schreiben == 0 )
-
 
159
    {
-
 
160
        die( "<div style=\"font-size:0.8em;padding:10px;width:300px;border:1px solid #ccc;font-family:arial,helvetica,sans-serif;\"><h1 style=\"font-size:1em;\">Fehler!</h1><p>Sie müssen den Rechnungsstatus für mind. einen Artikel auf 'schreiben' setzen!</p><p><a href=\"javascript:window.close();\">Fenster schliessen</a></p></div>" );
-
 
161
    }
-
 
162
    // ENDE PRÜFUNG ARTIKEL FÜR RECHNUNGSDRUCK!
-
 
163
 
-
 
164
    /**
-
 
165
     * Funktionen der Lagerwirtschaft.
-
 
166
     */
-
 
167
    require_once '../includes/system/functions.lagerwirtschaft.php';
-
 
168
 
-
 
Zeile 169... Zeile -...
169
    // Rechnungsbausteine?
-
 
170
    $sql_b = "SELECT * FROM Bestellung WHERE ID=$b_id";
154
                        if ( $value == "shops_ID" )
171
    $res_b = mysql_query_logged( $sql_b );
155
                        {
172
    $row_b = mysql_fetch_assoc( $res_b );
156
                            $wcl .= " AND shops_ID = " . $GLOBALS["shops_ID"] .
173
 
-
 
174
    $bestellart_id = $row_b['bestellart_id'];
-
 
175
    $shops_ID = $row_b['shops_ID'];
-
 
176
    $b_name = $row_b["letzte_Aenderung_von"];
-
 
177
    $b_name = substr( $b_name, 0, strpos($b_name, "@") );
-
 
178
    $dat = datetime2human( $row_b["letzte_Aenderung_am"] );
-
 
179
    $sql_l = "SELECT * FROM Logins WHERE ID=" . $row_b["Login"];
-
 
180
    $res_l = mysql_query_logged( $sql_l );
-
 
181
    $row_l = mysql_fetch_assoc( $res_l );
-
 
182
    $name = ( $row_l["Vorname"] ) ? $row_l["Vorname"] . " " . $row_l['Name1'] :
-
 
183
        $row_l["Name1"];
-
 
184
 
-
 
185
    /**
-
 
186
     *  Wenn Nettoberechnung nicht gesetzt ist (bei Logins),
-
 
187
     * und beim Kunden das Recht gesetzt ist,
-
 
188
     * oder das Webrecht garnicht existiert, 
-
 
189
     * werden Bruttopreise angezeigt
-
 
190
     */
-
 
191
    $showBruttoPreis = 1;
-
 
192
    if ( (isset($web_rechte['logins']['admin']['nettoberechnung']) == 1 and $row_l['nettoberechnung'] ==
-
 
193
        "on") or isset($web_rechte['logins']['admin']['nettoberechnung']) != 1 )
-
 
Zeile -... Zeile 157...
-
 
157
                                " ";
194
    {
158
                        }
-
 
159
                    }
-
 
160
                }
-
 
161
            }
-
 
162
        }
-
 
163
 
-
 
164
        // die Texte zu den Bausteinen ermitteln, wenn es bausteine gibt..
-
 
165
        $bausteine = array();
195
        $showBruttoPreis = 0;
166
        if ( $bausteine_ids )
196
    }
167
        {
197
    if ( isset($web_rechte['Warenwirtschaft']['bestellung']['abw_lieferdatum']) ) {
168
 
-
 
169
 
-
 
170
            $sql_b = "SELECT * FROM Bestellung WHERE ID=$b_id";
198
        define('LEISTUNGS_DATUM',true);
171
            $res_b = mysql_query_logged( $sql_b );
-
 
172
            $row_b = mysql_fetch_assoc( $res_b );
-
 
173
 
-
 
174
            $sql = "SELECT 
-
 
175
                        *
-
 
176
                    FROM 
-
 
177
                        web_settings
-
 
178
                    WHERE 
199
    }
179
                        ID=" . $bausteine_ids . "
200
    if ( file_exists("includes/rechnung/body_" . $site . "_" . $shops_ID .
180
                        " . $wcl . "
201
        ".inc.php") )
181
                    ORDER BY 
-
 
182
                        Rang";
-
 
183
 
-
 
184
            if ( $q = mysql_query( $sql ) )
-
 
185
            {
-
 
186
                $row_b["kk_info"] = unserialize( $row_b["kk_info"] );
-
 
187
                while ( $r = mysql_fetch_assoc( $q ) )
Zeile 202... Zeile -...
202
    {
-
 
203
        require_once ( "includes/rechnung/body_" . $site . "_" . $shops_ID .
-
 
204
            ".inc.php" );
-
 
205
    }
-
 
206
    else
-
 
207
    {
-
 
208
        require_once "includes/rechnung/body_" . $site . ".inc.php";
-
 
209
    }
188
                {
Zeile 210... Zeile 189...
210
 
189
                    $billsafesumme = $row_b["gesamtsumme_buffer"];
211
    if ( $Einzug_rechts )
-
 
212
    {
190
 
213
        $Einzug = $Einzug_rechts;
191
                    $billsafetxn = $row_b["kk_info"]["code"];
214
    }
192
                    $billsafedate = date( "d.m.Y", strtotime( "14 days" ) );
215
    else
193
                    @eval( "\$rbaustein_int=\"" . addslashes( $r['Inhalt'] ) . "\";" );
-
 
194
 
-
 
195
                    $bausteine[$r['ID']] = $rbaustein_int;
-
 
196
                }
216
    {
197
            }
-
 
198
        }
-
 
199
 
-
 
200
        $GLOBALS["ui"]->assign( "b_id", $b_id );
-
 
201
        $GLOBALS["ui"]->assign( "bausteine", $bausteine );
-
 
202
 
-
 
203
        $show_prepage++;
-
 
204
        $GLOBALS["ui"]->assign( "rechnungsbausteine", true );
-
 
205
 
-
 
206
    }
-
 
207
 
-
 
208
    // ME: START Soll 'Rechnung bezahlt' auf der Vorschaltseite angezeigt werden?
-
 
209
    if ( isset( $web_rechte["Warenwirtschaft"]["rechnungsbuch"]["rechnung_bezahlt"] ) )
-
 
210
    {
-
 
211
        if ( isset( $user_rechte["Warenwirtschaft"]["rechnungsbuch"]["rechnung_bezahlt"] ) )
-
 
212
        {
-
 
213
            $show_prepage++;
-
 
214
            $GLOBALS["ui"]->assign( "show_rechnung_bezahlt", 1 );
-
 
215
            if ( strstr( $user_rechte["Warenwirtschaft"]["rechnungsbuch"]["rechnung_bezahlt"],
-
 
216
                ";" ) )
-
 
217
            {
-
 
218
                $bezahlt_values = explode( ";", $user_rechte["Warenwirtschaft"]["rechnungsbuch"]["rechnung_bezahlt"] );
-
 
219
            }
-
 
220
            else
-
 
221
            {
217
        $Einzug = 10;
222
                $bezahlt_values = trim( $user_rechte["Warenwirtschaft"]["rechnungsbuch"]["rechnung_bezahlt"] );
-
 
223
            }
-
 
224
 
-
 
225
            // den bezahlstatus der Bestellung holen
218
    }
226
            $sql = "select bezahlt from Bestellung where ID=$b_id";
-
 
227
            $q = mysql_query( $sql );
219
 
228
            if ( $r = mysql_fetch_assoc( $q ) )
220
    if ( !defined("BEMERKUNG2_DRUCKEN") )
229
            {
-
 
230
                $GLOBALS["ui"]->assign( "bezahlt", $r['bezahlt'] );
-
 
231
                $GLOBALS["ui"]->assign( "bestellung_bezahlt", $r['bezahlt'] );
-
 
232
            }
-
 
233
 
-
 
234
            // die aktuelle Versandart zur Bestellung holen
-
 
235
            $sql = "SELECT
-
 
236
                        a.*,
-
 
237
                        ab.*,
-
 
238
                        z.interner_name
-
 
239
                    FROM
-
 
240
                        artikel_to_Bestellung ab,
-
 
241
                        artikel a,
221
    {
242
                        zahlungsarten z
-
 
243
                    WHERE
-
 
244
                        ab.Bestellung=$b_id
-
 
245
                    AND
-
 
246
                        ab.`status` != 'storniert'
-
 
247
                    AND
-
 
248
                        a.Father=-3
-
 
249
                    AND 
-
 
250
                        a.ID = ab.artikel
-
 
251
                    AND
222
        define( "BEMERKUNG2_DRUCKEN", true );
252
                        a.short_line_1 = z.interner_name
223
    }
253
            ";
-
 
254
 
-
 
255
            if ( $q = mysql_query( $sql ) )
-
 
256
            {
-
 
257
                while ( $r = mysql_fetch_assoc( $q ) )
-
 
258
                {
-
 
259
                    // Prüfen, ob für die Versandart der interne Name (zahlungsarten) übereinstimmt
-
 
260
                    if ( is_array( $bezahlt_values ) )
224
    if ( !defined("LEISTUNGS_DATUM") )
261
                    {
-
 
262
                        foreach ( $bezahlt_values as $key => $val )
-
 
263
                        {
-
 
264
                            if ( stristr( $r['interner_name'], $val ) )
225
    {
265
                            {
226
        define( "LEISTUNGS_DATUM", false );
266
                                $GLOBALS["ui"]->assign( "bezahlt", 1 );
-
 
267
                                $GLOBALS["ui"]->assign( "rechnung_bezahlt",
Zeile 227... Zeile -...
227
    }
-
 
228
 
-
 
229
    // ME: Anrede in der richtigen Sprache
-
 
230
    $anrede = $row_l["Anrede"];
-
 
231
    if ( $row_l['Land'] == "Nederland" )
-
 
232
    {
-
 
233
        switch ( $row_l['Anrede'] )
-
 
-
 
268
                                    "Rechnung bezahlt (" . $val . ")" );
234
        {
269
                            }
235
            case "Herr":
-
 
236
                $anrede = "Heer";
270
                        }
237
                break;
271
                    }
238
            case "Frau":
272
                    else
239
                $anrede = "Mevrouw";
273
                    {
240
                break;
274
                        if ( stristr( $bezahlt_values, $r['interner_name'] ) )
241
            default:
275
                        {
242
                $anrede = "Heer";
276
                            $GLOBALS["ui"]->assign( "bezahlt", 1 );
243
                break;
-
 
244
        }
277
                            $GLOBALS["ui"]->assign( "rechnung_bezahlt",
245
    }
278
                                "Rechnung bezahlt (" . $bezahlt_values . ")" );
246
 
279
                        }
247
    $plz = $row_l["PLZ"];
280
                    }
248
    $ort = $row_l["ORT"];
281
                }
249
    $str = $row_l["Strasse"];
282
            }
250
    $str .= ( isset($row_l["Hausnummer"]) ) ? " " . $row_l["Hausnummer"] : "";
283
            $GLOBALS["ui"]->assign( "bezahlt_values", $bezahlt_values );
251
    $iso_land = getIsoCode( $row_l['Land'], 2 );
284
        }
252
    $firma = ( isset($row_l["Name2"]) ) ? $row_l["Name2"] : "";
285
    }
253
    $mwst_befreiung = $row_l["mwst_befreiung"];
286
    // ME: ENDE Soll 'Rechnung bezahlt' auf der Vorschaltseite angezeigt werden?
254
    $ustid_nr = $row_l["ustid_nr"];
287
 
255
    require_once "fpdf/fpdf.php";
288
 
256
    class PDF extends FPDF
289
    // die FPDF Class erweitern (PDF)
257
    {
290
    class PDF extends FPDF
258
        function generate_LN( $bestell_id, $art, $Nummernkreis )
291
    {
259
        {
292
        function generate_LN( $bestell_id, $art, $Nummernkreis )
260
            global $web_rechte;
293
        {
261
            if ( $Nummernkreis )
294
            global $web_rechte;
262
            {
295
            if ( $Nummernkreis )
263
                global $shops_ID;
296
            {
264
                if ( isset($web_rechte["Warenwirtschaft"]["rechnungsbuch"]["rechnungsnrtrennung"]) )
297
                if ( isset( $web_rechte["Warenwirtschaft"]["rechnungsbuch"]["rechnungsnrtrennung"] ) )
265
                {
298
                {
266
                    $sql_re = "SELECT
299
                    $sql_re = "SELECT
267
                            re_short
300
                                re_short
268
                        FROM
301
                            FROM
269
                            shops
302
                                shops
270
                        WHERE
303
                            WHERE
271
                            ID=" . $shops_ID . "
304
                                ID=" . $GLOBALS["shops_ID"] . "
272
                    ";
305
                        ";
273
                    $res_re = mysql_query( $sql_re );
306
                    $res_re = mysql_query( $sql_re );
274
                    $row_re = mysql_fetch_assoc( $res_re );
307
                    $row_re = mysql_fetch_assoc( $res_re );
275
                    $re_short = $row_re["re_short"];
308
                    $re_short = $row_re["re_short"];
276
                }
309
                }
277
                $sql = "SELECT 
310
                $sql = "SELECT 
278
                        l_nr AS ln 
311
                            l_nr AS ln 
279
                    FROM 
312
                        FROM 
280
                        nummernkreis_rechnung 
313
                            nummernkreis_rechnung 
281
                    WHERE 
314
                        WHERE 
282
                        jahr=" . date( "Y" );
315
                            jahr=" . date( "Y" );
283
                if ( isset($web_rechte["Warenwirtschaft"]["rechnungsbuch"]["rechnungsnrtrennung"]) )
316
                if ( isset( $web_rechte["Warenwirtschaft"]["rechnungsbuch"]["rechnungsnrtrennung"] ) )
284
                {
317
                {
285
                    $sql .= "
318
                    $sql .= "
286
                        AND
319
                            AND
287
                            re_short='$re_short'
320
                                re_short='$re_short'
288
                    ";
321
                        ";
289
                }
322
                }
290
                $res = mysql_query_logged( $sql );
323
                $res = mysql_query_logged( $sql );
291
                if ( $res )
324
                if ( $res )
292
                {
325
                {
293
                    if ( mysql_num_rows($res) )
326
                    if ( mysql_num_rows( $res ) )
294
                    {
327
                    {
295
                        $row = mysql_fetch_assoc( $res );
328
                        $row = mysql_fetch_assoc( $res );
296
                        $ln = $row["ln"];
329
                        $ln = $row["ln"];
297
                        $ln++;
330
                        $ln++;
298
                    }
331
                    }
299
                    else
332
                    else
300
                    {
333
                    {
301
                        $ln = 1;
334
                        $ln = 1;
302
                        $sql = "
335
                        $sql = "
303
                            INSERT INTO 
336
                                INSERT INTO 
304
                                nummernkreis_rechnung 
337
                                    nummernkreis_rechnung 
305
                            (
338
                                (
306
                                l_nr,
339
                                    l_nr,
307
                        ";
340
                            ";
308
                        if ( isset($web_rechte["Warenwirtschaft"]["rechnungsbuch"]["rechnungsnrtrennung"]) )
341
                        if ( isset( $web_rechte["Warenwirtschaft"]["rechnungsbuch"]["rechnungsnrtrennung"] ) )
309
                        {
342
                        {
310
                            $sql .= "
343
                            $sql .= "
311
                                re_short,
344
                                    re_short,
312
                        ";
345
                            ";
313
                        }
346
                        }
314
                        $sql .= "
347
                        $sql .= "
315
                                jahr
348
                                    jahr
316
                            ) 
349
                                ) 
317
                            VALUES
350
                                VALUES
318
                            ( 
351
                                ( 
319
                                $ln,
352
                                    $ln,
320
                            ";
353
                                ";
321
                        if ( isset($web_rechte["Warenwirtschaft"]["rechnungsbuch"]["rechnungsnrtrennung"]) )
354
                        if ( isset( $web_rechte["Warenwirtschaft"]["rechnungsbuch"]["rechnungsnrtrennung"] ) )
322
                        {
355
                        {
323
                            $sql .= "
356
                            $sql .= "
324
                                '" . $re_short . "',
357
                                    '" . $re_short . "',
325
                            ";
358
                                ";
326
                        }
359
                        }
327
                        $sql .= "
360
                        $sql .= "
328
                                " . date( "Y" ) . "
361
                                    " . date( "Y" ) . "
329
                            )
362
                                )
330
                        ";
363
                            ";
331
                        mysql_query_logged( $sql );
364
                        mysql_query_logged( $sql );
332
                    }
365
                    }
333
                }
366
                }
334
                else
367
                else
335
                {
368
                {
336
                    $ln = 1;
369
                    $ln = 1;
337
                }
370
                }
338
                $sql = "
371
                $sql = "
339
                    UPDATE 
372
                        UPDATE 
340
                        nummernkreis_rechnung 
373
                            nummernkreis_rechnung 
341
                    SET 
374
                        SET 
342
                        l_nr=" . $ln . " 
375
                            l_nr=" . $ln . " 
343
                    WHERE 
376
                        WHERE 
344
                        jahr=" . date( "Y" ) . "
377
                            jahr=" . date( "Y" ) . "
345
                ";
378
                    ";
346
                if ( isset($web_rechte["Warenwirtschaft"]["rechnungsbuch"]["rechnungsnrtrennung"]) )
379
                if ( isset( $web_rechte["Warenwirtschaft"]["rechnungsbuch"]["rechnungsnrtrennung"] ) )
347
                {
380
                {
348
                    $sql .= "
381
                    $sql .= "
349
                        AND
382
                            AND
350
                            re_short='$re_short'           
383
                                re_short='$re_short'           
351
                    ";
384
                        ";
352
                }
385
                }
353
                mysql_query_logged( $sql );
386
                mysql_query_logged( $sql );
354
            }
387
            }
-
 
388
            else
355
            else
389
            {
356
            {
390
                $date = date( "Y-m-d" );
357
                $date = date( "Y-m-d" );
391
                $f_name = $art . "_" . $bestell_id . "_" . $date;
358
                $f_name = $art . "_" . $bestell_id . "_" . $date;
392
                $sql = "SELECT
359
                $sql = "SELECT
393
                                MAX(document) AS dokument
Zeile 390... Zeile 424...
390
            return $ln;
424
            return $ln;
391
        }
425
        }
392
        //Page header
426
        //Page header
393
        function Header()
427
        function Header()
394
        {
428
        {
395
            global $site, $r_nr, $shops_ID, $Einzug;
429
            global $site, $r_nr, $Einzug;
Zeile 396... Zeile 430...
396
 
430
 
397
            if ( file_exists("includes/rechnung/header_" . $site . "_" . $shops_ID .
431
            $h_file = "includes/rechnung/header_" . $site . "_" . $GLOBALS["shops_ID"] .
-
 
432
                ".inc.php";
-
 
433
 
398
                ".inc.php") )
434
            if ( file_exists( $h_file ) )
399
            {
-
 
-
 
435
            {
400
                require_once ( "includes/rechnung/header_" . $site . "_" . $shops_ID .
436
 
401
                    ".inc.php" );
437
                require ( $h_file );
402
            }
438
            }
403
            else
439
            else
404
            {
440
            {
405
                require_once ( "includes/rechnung/header_" . $site . ".inc.php" );
441
                require ( "includes/rechnung/header_" . $site . ".inc.php" );
406
            }
442
            }
Zeile 407... Zeile 443...
407
        }
443
        }
408
 
444
 
409
        //Page footer
445
        //Page footer
410
        function Footer()
446
        function Footer()
Zeile 411... Zeile 447...
411
        {
447
        {
412
            global $site, $shops_ID, $Einzug;
448
            global $site, $Einzug;
413
 
449
 
414
            if ( file_exists("includes/rechnung/footer_" . $site . "_" . $shops_ID .
450
            if ( file_exists( "includes/rechnung/footer_" . $site . "_" . $GLOBALS["shops_ID"] .
415
                ".inc.php") )
451
                ".inc.php" ) )
416
            {
452
            {
417
                require_once ( "includes/rechnung/footer_" . $site . "_" . $shops_ID .
453
                require ( "includes/rechnung/footer_" . $site . "_" . $GLOBALS["shops_ID"] .
418
                    ".inc.php" );
454
                    ".inc.php" );
419
            }
455
            }
420
            else
456
            else
421
            {
457
            {
-
 
458
                require ( "includes/rechnung/footer_" . $site . ".inc.php" );
422
                require_once ( "includes/rechnung/footer_" . $site . ".inc.php" );
459
            }
423
            }
460
        }
424
        }
461
 
425
        function NbLines( $w, $txt )
462
        function NbLines( $w, $txt )
426
        {
463
        {
Zeile 472... Zeile 509...
472
            }
509
            }
473
            return $nl;
510
            return $nl;
474
        }
511
        }
475
    }
512
    }
Zeile -... Zeile 513...
-
 
513
 
-
 
514
 
-
 
515
 
-
 
516
    // ME: wurde die Seite über Massenrechnungsdruck aufgerufen?
476
 
517
    if ( is_array( $_POST['chk_bestellung'] ) && $_POST['action'] !=
-
 
518
        "genMultiPDF" )
-
 
519
    {
-
 
520
        unset( $_POST['b_id'] );
-
 
521
        // dann erstmal die Vorschaltseite anzeigen und die action entsprechend ändern
-
 
522
        $GLOBALS["ui"]->assign( "chk_bestellung", $_POST['chk_bestellung'] );
-
 
523
        $GLOBALS["ui"]->assign( "action", "genMultiPDF" );
-
 
524
        $GLOBALS["ui"]->display( "rechnung_prepage.tpl" );
-
 
525
    }
477
    if ( !$b_id )
526
    else
-
 
527
    {
-
 
528
        // Wenn nein, wird die Funktion normal aufgerufen
-
 
529
        $GLOBALS["ui"]->assign( "action", "genPDF" );
-
 
530
        print_Rechnung( $b_id );
-
 
531
    }
-
 
532
 
-
 
533
    // Massendruck: nach der Vorschaltseite gehts hier weiter durch alle Bestellungen
-
 
534
    if ( $_POST['action'] == "genMultiPDF" )
478
    {
535
    {
-
 
536
        unset( $_POST['b_id'] );
-
 
537
        $_POST['action'] = "genPDF";
479
        if ( $_GET["b_id"] )
538
        foreach ( $_POST['chk_bestellung'] as $key => $b_id )
480
        {
539
        {
481
            $b_id = ( int )$_GET["b_id"];
540
            $f_name = print_Rechnung( $b_id );
-
 
541
            if ( !file_exists( $webs['verzeichnis'] .
482
        } elseif ( $_POST["b_id"] )
542
                "/images/dokumente/combine" ) )
-
 
543
            {
-
 
544
                mkdir( $webs['verzeichnis'] . "/images/dokumente/combine" );
-
 
545
            }
483
        {
546
            copy( $webs['verzeichnis'] . "/images/dokumente/" . $f_name, $webs['verzeichnis'] .
484
            $b_id = ( int )$_POST["b_id"];
547
                "/images/dokumente/combine/$f_name" );
-
 
548
        }
-
 
549
        $tmp_name = "combined_" . Text_Password::create( 32, "unpronouncable" ) .
-
 
550
            ".pdf";
-
 
551
        $cmd = "cd " . $webs['verzeichnis'] .
-
 
552
            "/images/dokumente/combine/; mbtPdfAsm -MR*.pdf -d" . $tmp_name .
-
 
553
            ";rm R*.pdf";
-
 
554
        exec( $cmd, $out );
485
        }
555
        $loc = "http://www." . $site_full . "/images/dokumente/combine/$tmp_name";
-
 
556
        //echo $loc;
-
 
557
        header( "Location: $loc" );
486
        else
558
        if ( count( $errorIds ) )
487
        {
559
        {
-
 
560
            $ids = implode( ", ", $errorIds );
488
            die( "Keine Bestellung angegeben!" );
561
            echo "Fehler beim Erstellen der Rechnung in Bestellungen: " . $ids;
489
        }
562
        }
Zeile -... Zeile 563...
-
 
563
    }
490
    }
564
 
-
 
565
    ////////////////////////////////////////////
491
 
566
    // Beginn der Hauptfunktion print_Rechnung
492
    // Standard-Zahlungsziel? START
567
    ////////////////////////////////////////////
493
    if ( isset($web_rechte["logins"]["admin"]["zahlungsziel"]) )
568
    function print_Rechnung( $b_id )
494
    {
569
    {
495
        // alle Zahlungsziele holen
570
        global $errorIds;
496
        $sql = "select 
571
        global $web_rechte;
497
                    *
-
 
498
                from
572
        global $user_rechte;
499
                    zahlungsziele 
573
        global $site;
500
                order by 
-
 
501
                    name
-
 
Zeile 502... Zeile -...
502
                ";
-
 
503
 
-
 
504
        
-
 
505
        if ( $q = mysql_query($sql) )
-
 
506
        {
-
 
507
            while ( $r = mysql_fetch_assoc($q) )
-
 
508
            {
-
 
509
                $zieltage = date('d.m.Y', strtotime('+'.$r['zieltage'].' days'));
-
 
510
                
574
        global $webs;
511
                $skonto1 = $r['skonto1'];
-
 
512
                $zieltageskonto1 = date('d.m.Y', strtotime('+'.$r['zieltageskonto1'].' days'));
-
 
Zeile 513... Zeile -...
513
                if($skonto1>0) {
-
 
514
                    $skontobetrag1 = money_format($summe_b['total'] - ($summe_b['total'] * ($skonto1/100) ),2);
-
 
515
                }
-
 
516
 
-
 
517
                $skonto2 = $r['skonto2'];
-
 
518
                $zieltageskonto2 = date('d.m.Y', strtotime('+'.$r['zieltageskonto2'].' days'));
-
 
519
                if($skonto2>0) {
-
 
520
                    $skontobetrag2 = money_format($summe_b['total'] - ($summe_b['total'] * ($skonto2/100) ),2);
-
 
521
                }
-
 
522
                
-
 
523
                
-
 
524
                
-
 
525
                @eval( "\$rechnungsbaustein_int=\"" . addslashes($r["rechnungsbaustein"]) . "\";" );
-
 
526
                $r["rechnungsbaustein_int"] = $rechnungsbaustein_int;
-
 
Zeile 527... Zeile -...
527
                $zziele[] = $r;
-
 
528
            }
-
 
529
        }
-
 
530
        $GLOBALS["ui"]->assign( "zziele", $zziele );
-
 
531
 
575
        global $show_prepage;
532
        // gibt es für den User ein Zahlungsziel?
-
 
533
        $sql = "select
-
 
534
                    l.zahlungsziele_id
-
 
535
                    
-
 
536
                from
-
 
537
                    Bestellung b,
-
 
538
                    Logins l
-
 
539
                where 
-
 
540
                    b.Login = l.ID
576
        
541
                and
-
 
542
                    b.ID = " . $b_id . "
-
 
543
        ";
577
        global $localhost_dbh;
544
        if ( $q = mysql_query($sql) )
-
 
545
        {
578
 
Zeile 546... Zeile 579...
546
            if ( $r = mysql_fetch_assoc($q) )
579
 
547
            {
580
        if ( $b_id )
548
                $GLOBALS["ui"]->assign( "zID", $r['zahlungsziele_id'] );
-
 
Zeile 549... Zeile -...
549
            }
-
 
550
        }
-
 
551
 
-
 
552
        $GLOBALS["ui"]->assign( "zahlungsziel", "true" );
581
        {
553
        $show_prepage++;
-
 
554
    }
582
            $GLOBALS["ui"]->assign( "b_id", $b_id );
555
 
-
 
556
    // Standard-Zahlungsziel? ENDE
-
 
557
 
-
 
558
    // Rechnungsbausteine?
-
 
559
    if ( (isset($web_rechte["Warenwirtschaft"]["bestellung"]["rechnungsbausteine"]) and
-
 
560
        (!$_POST['action'])) or (isset($web_rechte['Warenwirtschaft']['lagerwirtschaft']['minderungsunterdrueckung']) and
-
 
561
        (!$_POST['action'])) )
-
 
562
    {
-
 
563
 
583
        }
564
        $bausteinIDs = explode( ";", $web_rechte["Warenwirtschaft"]["bestellung"]["rechnungsbausteine"] );
-
 
565
        $where_part = implode( " OR ID=", $bausteinIDs );
584
 
566
        // gibt es das Feld bestellart_id?
585
        $zz_text = null;
Zeile -... Zeile 586...
-
 
586
        $mass_print = 0;
567
        $wcl = "";
587
 
568
        $result = mysql_query( "SHOW COLUMNS FROM web_settings" );
588
        // ME: wurde die Seite über Massenrechnungsdruck aufgerufen?
569
        if ( !$result )
589
        if ( is_array( $_POST['chk_bestellung'] ) )
570
        {
590
        {
571
            echo 'Abfrage konnte nicht ausgeführt werden: ' . mysql_error();
591
            $mass_print = 1;
572
            //exit;
592
        }
-
 
593
 
-
 
594
        // ME: START Vorbereitung der Ausgabe des Zahlungsziels auf der Rechnung
573
        }
595
        if ( isset( $web_rechte["Warenwirtschaft"]["rechnungsbuch"]["zahlungsziel"] ) )
574
 
596
        {
575
        if ( mysql_num_rows($result) > 0 )
597
            if ( $_POST['action'] == "genPDF" )
576
        {
598
            {
-
 
599
                if ( $_POST['zahlungsziel'] )
-
 
600
                {
577
            while ( $row = mysql_fetch_assoc($result) )
601
                    $sql = "select * from zahlungsziele where id=" . $_POST['zahlungsziel'] .
-
 
602
                        "";
-
 
603
                    if ( $q = mysql_query( $sql ) )
-
 
604
                    {
-
 
605
                        if ( $r = mysql_fetch_assoc( $q ) )
-
 
606
                        {
-
 
607
                            $zieltage = date( 'd.m.Y', strtotime( '+' . $r['zieltage'] .
-
 
608
                                ' days' ) );
578
            {
609
                            $serArr['ziel'] = strtotime( '+' . $r['zieltage'] .
-
 
610
                                ' days' );
-
 
611
 
-
 
612
 
-
 
613
                            if ( $r['skonto1'] > 0 )
-
 
614
                            {
579
                if ( is_array($row) )
615
                                $skonto1 = $r['skonto1'];
-
 
616
                                $serArr['skonto1'] = $skonto1;
-
 
617
                            }
-
 
618
                            if ( $r['zieltageskonto1'] > 0 )
580
                {
619
                            {
581
                    foreach ( $row as $key => $value )
620
                                $zieltageskonto1 = date( 'd.m.Y', strtotime( '+' .
-
 
621
                                    $r['zieltageskonto1'] . ' days' ) );
-
 
622
                                $serArr['zielskonto1'] = strtotime( '+' . $r['zieltageskonto1'] .
-
 
623
                                    ' days' );
-
 
624
                            }
-
 
625
 
-
 
626
                            if ( $r['skonto2'] > 0 )
-
 
627
                            {
-
 
628
                                $skonto2 = $r['skonto2'];
-
 
629
                                $serArr['skonto2'] = $skonto2;
-
 
630
                            }
-
 
631
                            if ( $r['zieltageskonto2'] > 0 )
-
 
632
                            {
-
 
633
                                $zieltageskonto2 = date( 'd.m.Y', strtotime( '+' .
-
 
634
                                    $r['zieltageskonto2'] . ' days' ) );
582
                    {
635
                                $serArr['zielskonto2'] = strtotime( '+' . $r['zieltageskonto2'] .
583
                        if ( $value == "bestellart_id" )
636
                                    ' days' );
584
                        {
637
                            }
585
                            $wcl .= " AND bestellart_id = " . $bestellart_id . " ";
638
                            @eval( "\$rechnungsbaustein_int=\"" . addslashes( $r["rechnungsbaustein"] ) .
586
                        }
639
                                "\";" );
Zeile 587... Zeile -...
587
                        if ( $value == "shops_ID" )
-
 
588
                        {
-
 
589
                            $wcl .= " AND shops_ID = " . $shops_ID . " ";
-
 
590
                        }
-
 
591
                    }
-
 
592
                }
-
 
593
            }
-
 
594
        }
-
 
595
 
-
 
596
        // die Texte zu den Bausteinen ermitteln
-
 
597
        $sql = "SELECT 
-
 
598
                    *
640
 
599
                FROM 
641
                            $zz_text = $rechnungsbaustein_int;
600
                    web_settings
-
 
601
                WHERE 
-
 
602
                    ID=" . $where_part . "
-
 
603
                    " . $wcl . "
642
 
604
                ORDER BY 
-
 
605
                    Rang";
-
 
606
 
-
 
607
        if ( $q = mysql_query($sql) )
-
 
608
        {
-
 
609
            $row_b["kk_info"]=unserialize($row_b["kk_info"]);
-
 
610
            while ( $r = mysql_fetch_assoc($q) )
-
 
611
            {
643
                        }
612
                $billsafesumme = $row_b["gesamtsumme_buffer"];
-
 
613
                
-
 
614
                $billsafetxn = $row_b["kk_info"]["code"];
-
 
615
                $billsafedate = date("d.m.Y",strtotime("14 days")); 
-
 
616
                @eval( "\$rbaustein_int=\"" . addslashes($r['Inhalt']) . "\";" );
-
 
617
                
644
                    }
618
                $bausteine[$r['ID']] = $rbaustein_int;
-
 
619
            }
-
 
Zeile 620... Zeile -...
620
        }
-
 
Zeile 621... Zeile -...
621
        $GLOBALS["ui"]->assign( "b_id", $b_id );
-
 
622
        $GLOBALS["ui"]->assign( "bausteine", $bausteine );
-
 
Zeile 623... Zeile -...
623
 
-
 
624
 
-
 
625
        // ME: Bestandsminderung? Muss in Kombination mit Rechnungsbausteinen eingebaut werden, damit dasselbe Template genutzt werden kann!
-
 
626
        if ( isset($web_rechte['Warenwirtschaft']['lagerwirtschaft']['minderungsunterdrueckung']) )
-
 
627
        {
-
 
628
            $GLOBALS["ui"]->assign( "minderungsunterdrueckung", true );
-
 
629
 
-
 
630
        }
-
 
631
 
-
 
632
        $show_prepage++;
-
 
633
        $GLOBALS["ui"]->assign( "rechnungsbausteine", true );
-
 
634
 
-
 
635
    }
-
 
636
    
-
 
637
    // ME: START Soll 'Rechnung bezahlt' auf der Vorschaltseite angezeigt werden?
-
 
638
    if ( isset($web_rechte["Warenwirtschaft"]["rechnungsbuch"]["rechnung_bezahlt"]) ) {
-
 
639
        if ( isset($user_rechte["Warenwirtschaft"]["rechnungsbuch"]["rechnung_bezahlt"]) ) {
-
 
640
            $show_prepage++;
-
 
641
            $GLOBALS["ui"]->assign("show_rechnung_bezahlt",1);
-
 
642
            if(strstr($user_rechte["Warenwirtschaft"]["rechnungsbuch"]["rechnung_bezahlt"],";")) {
-
 
643
                $bezahlt_values = explode(";", $user_rechte["Warenwirtschaft"]["rechnungsbuch"]["rechnung_bezahlt"]);    
-
 
644
            } else {
-
 
645
                $bezahlt_values = trim( $user_rechte["Warenwirtschaft"]["rechnungsbuch"]["rechnung_bezahlt"] );
-
 
646
            }
-
 
647
            
-
 
648
            // den bezahlstatus der Bestellung holen
-
 
649
            $sql = "select bezahlt from Bestellung where ID=$b_id";
-
 
650
            $q = mysql_query($sql);
-
 
651
            if($r=mysql_fetch_assoc($q)) {
-
 
652
                $GLOBALS["ui"]->assign("bezahlt", $r['bezahlt']);
-
 
653
                $GLOBALS["ui"]->assign("bestellung_bezahlt", $r['bezahlt']);
-
 
654
            }
-
 
655
            
-
 
656
            // die aktuelle Versandart zur Bestellung holen
-
 
657
            $sql = "SELECT
-
 
658
                        a.*,
-
 
659
                        ab.*,
-
 
660
                        z.interner_name
-
 
661
                    FROM
-
 
662
                        artikel_to_Bestellung ab,
-
 
663
                        artikel a,
-
 
Zeile 664... Zeile -...
664
                        zahlungsarten z
-
 
665
                    WHERE
-
 
666
                        ab.Bestellung=$b_id
-
 
667
                    AND
-
 
668
                        ab. `status` != 'storniert'
645
                }
669
                    AND
-
 
670
                        a.Father=-3
-
 
671
                    AND 
-
 
672
                        a.ID = ab.artikel
-
 
673
                    AND
646
            }
674
                        a.short_line_1 = z.interner_name
647
        }
675
            ";
-
 
676
 
-
 
677
            if($q=mysql_query($sql)) {
-
 
678
                while($r=mysql_fetch_assoc($q)) {
-
 
679
                    // Prüfen, ob für die Versandart der interne Name (zahlungsarten) übereinstimmt
-
 
680
                    if(is_array($bezahlt_values)) {
648
 
681
                        foreach($bezahlt_values as $key => $val) {
649
        if ( $_POST['rechnung_bezahlt'] )
682
                            if(stristr($r['interner_name'],$val)) {
-
 
683
                                $GLOBALS["ui"]->assign("bezahlt", 1);
650
        {
684
                                $GLOBALS["ui"]->assign( "rechnung_bezahlt", "Rechnung bezahlt (".$val.")" );                    
-
 
685
                            }
-
 
Zeile 686... Zeile -...
686
                        }
-
 
-
 
651
            $zz_text = "Betrag lt. Kassenbeleg dankend erhalten.";
-
 
652
        }
687
                    } else { 
653
        // ME: ENDE Vorbereitung der Ausgabe des Zahlungsziels auf der Rechnung
-
 
654
 
-
 
655
 
-
 
656
 
688
                        if(stristr($bezahlt_values,$r['interner_name'])) {
657
 
-
 
658
        // ME: soll die Rechnung als Gutschrift ausgegeben werden?
-
 
659
        $gutschrift = 0;
689
                            $GLOBALS["ui"]->assign("bezahlt", 1);
660
        if ( isset( $_POST['gutschrift'] ) )
-
 
661
        {
-
 
662
            $gutschrift = 1;
690
                            $GLOBALS["ui"]->assign( "rechnung_bezahlt", "Rechnung bezahlt (".$bezahlt_values.")" );                    
663
        }
691
                        }
664
 
692
                    }                    
-
 
693
                }
665
 
694
            }
666
        // START PRÜFUNG ARTIKEL FÜR RECHNUNGSDRUCK!
Zeile 695... Zeile -...
695
            $GLOBALS["ui"]->assign( "bezahlt_values", $bezahlt_values );
-
 
696
        }
-
 
697
    }
-
 
698
    // ME: ENDE Soll 'Rechnung bezahlt' auf der Vorschaltseite angezeigt werden?
667
        // ME: hier muss geprüft werden, ob mind. ein Artikel für den Rechnungsdruck ausgewählt wurde.
699
 
668
        // Wenn nicht, gibts ne Fehlermeldung!
700
 
669
        $sql = "SELECT 
-
 
670
                    ab.*    
-
 
671
                FROM 
701
    
672
                    artikel_to_Bestellung ab
702
    // ggf. wird die Vorschaltseite ausgegeben
673
                LEFT OUTER JOIN
-
 
674
                    artikel a
-
 
675
                ON
-
 
676
                    a.ID=ab.artikel 
703
    if ( $show_prepage > 0 and !$_POST['action'] )
677
                WHERE 
-
 
678
                    Bestellung=$b_id 
-
 
679
                AND 
704
    {
680
                    ab.`status` != 'storniert'
-
 
681
        ";
-
 
682
 
705
        $GLOBALS["ui"]->display( "rechnung_prepage.tpl" );
683
        if ( isset( $web_rechte["Warenwirtschaft"]["bestellung"]["artikel_sortieren"] ) )
Zeile 706... Zeile -...
706
    }
-
 
707
 
684
        {
708
    if ( ($show_prepage == 0) or ($_POST['action'] == "genPDF") )
-
 
709
    {
685
            $sql .= "
710
 
686
                ORDER BY
711
        //Instanciation of inherited class
-
 
712
        $showLieferadresse = 0;
687
                    ab.Rang,
713
        $pdf = new PDF();
688
                    Father desc,
714
        if ( isset($web_rechte["Warenwirtschaft"]["bestellung"]["rechnung"]) )
-
 
715
        {
689
                    a.kennung
716
            $Status = false;
-
 
717
            $Nummernkreis = false;
-
 
718
            $Speichern = false;
-
 
719
 
-
 
720
            $daten = explode( ";", $web_rechte["Warenwirtschaft"]["bestellung"]["rechnung"] );
-
 
721
 
690
            ";
722
 
691
        }
723
            $id = array_search( "Status", $daten );
-
 
724
            if ( $id !== false )
-
 
725
            {
-
 
726
                $Status = true;
-
 
727
            }
-
 
728
            $id = array_search( "Nummernkreis", $daten );
-
 
729
            if ( $id !== false )
-
 
730
            {
-
 
731
                $Nummernkreis = true;
-
 
732
                if ( !isset($anz_stellen) )
692
        else
733
                {
-
 
734
                    $anz_stellen = 5;
-
 
735
                }
693
        {
-
 
694
            $sql .= "
736
                $r_nr = sprintf( "%0" . $anz_stellen . "d", $pdf->generate_LN($b_id, "R", true) );
695
                ORDER BY
-
 
696
                    Father desc,
-
 
697
                    a.kennung
-
 
698
            ";
-
 
699
        }
-
 
700
 
-
 
701
        $r_schreiben = 0;
-
 
702
        if ( $q = mysql_query( $sql ) )
737
                if ( isset($web_rechte["Warenwirtschaft"]["rechnungsbuch"]["rechnungsnrtrennung"]) )
703
        {
738
                {
-
 
739
                    $sql = "SELECT
-
 
740
                            re_short
-
 
741
                        FROM
-
 
742
                            shops
704
            while ( $r = mysql_fetch_assoc( $q ) )
743
                        WHERE
705
            {
744
                            id=$shops_ID
-
 
745
                    ";
-
 
746
                    $res = mysql_query( $sql );
706
                if ( $r['rechnungStatus'] == 'schreiben' )
747
                    $row = mysql_fetch_assoc( $res );
-
 
748
                    $r_nr = $row["re_short"] . $r_nr;
707
                {
749
                }
708
                    $r_schreiben++;
750
                $r_nr = date( "y" ) . $r_nr;
709
                }
751
                $fName = "R" . $r_nr . ".pdf";
710
            }
-
 
711
        }
752
            }
712
        else
-
 
713
        {
Zeile -... Zeile 714...
-
 
714
            echo mysql_error();
753
            else
715
        }
-
 
716
 
-
 
717
        if ( $r_schreiben == 0 )
754
            {
718
        {
755
                $date = date( "Y-m-d" );
719
            if ( $mass_print == 1 )
756
                $ln = $pdf->generate_LN( $b_id, "L", false );
720
            {
-
 
721
                $errorIds[] = $b_id;
-
 
722
                return true;
757
                if ( !isset($anz_stellen) )
723
            }
758
                {
724
            else
-
 
725
            {
-
 
726
                die( "<div style=\"font-size:0.8em;padding:10px;width:300px;border:1px solid #ccc;font-family:arial,helvetica,sans-serif;\"><h1 style=\"font-size:1em;\">Fehler!</h1><p>Sie müssen den Rechnungsstatus für mind. einen Artikel auf 'schreiben' setzen!</p><p><a href=\"javascript:window.close();\">Fenster schliessen</a></p></div>" );
-
 
727
            }
759
                    $anz_stellen = 5;
728
 
760
                }
729
        }
-
 
730
        // ENDE PRÜFUNG ARTIKEL FÜR RECHNUNGSDRUCK!
761
                $r_nr = sprintf( "%0" . $anz_stellen . "d", $ln );
731
 
-
 
732
 
-
 
733
        // Rechnungsbausteine?
-
 
734
        $sql_b = "SELECT * FROM Bestellung WHERE ID=$b_id";
762
                $fName = "R_" . $b_id . "_" . $date . "_" . $r_nr . ".pdf";
735
 
763
            }
736
 
764
            $id = array_search( "Speichern", $daten );
737
        $res_b = mysql_query_logged( $sql_b );
765
            if ( $id !== false )
738
        $row_b = mysql_fetch_assoc( $res_b );
766
            {
739
 
-
 
740
        $bestellart_id = $row_b['bestellart_id'];
-
 
741
        $shops_ID = $row_b['shops_ID'];
767
                $Speichern = true;
742
        $b_name = $row_b["letzte_Aenderung_von"];
768
            }
743
        $b_name = substr( $b_name, 0, strpos( $b_name, "@" ) );
769
        }
744
        $dat = datetime2human( $row_b["letzte_Aenderung_am"] );
-
 
745
        $sql_l = "SELECT * FROM Logins WHERE ID=" . $row_b["Login"];
-
 
746
        $res_l = mysql_query_logged( $sql_l );
-
 
747
        $row_l = mysql_fetch_assoc( $res_l );
770
 
748
        $name = ( $row_l["Vorname"] ) ? $row_l["Vorname"] . " " . $row_l['Name1'] :
-
 
749
            $row_l["Name1"];
-
 
750
 
771
        $pdf->setSubject( "Rechnung" );
751
        /**
-
 
752
         *  Wenn Nettoberechnung nicht gesetzt ist (bei Logins),
-
 
753
         * und beim Kunden das Recht gesetzt ist,
772
        
754
         * oder das Webrecht garnicht existiert, 
773
        $pdf->setAuthor( $haendler_name );
755
         * werden Bruttopreise angezeigt
774
        $pdf->setCreator( "fpdf PHP Library" );
756
         */
775
        $pdf->AliasNbPages();
757
        $showBruttoPreis = 1;
776
        $pdf->AddPage();
-
 
777
        $pdf->setY( 45 );
-
 
778
        $pdf->setFont( 'Arial', '', 8 );
-
 
779
        $pdf->SetX( $Einzug );
758
        if ( ( isset( $web_rechte['logins']['admin']['nettoberechnung'] ) == 1 &&
780
        $pdf->cell( 80, 4, $umschlag, "B", 1, "L" );
759
            $row_l['nettoberechnung'] == "on" ) || ( isset( $web_rechte['logins']['admin']['nettoberechnung'] ) !=
781
        $pdf->setFont( 'Arial', '', 10 );
-
 
782
        $pdf->ln( 5 );
-
 
-
 
760
            1 ) )
783
        $pdf->setX( 20 );
761
        {
784
        $pdf->SetX( $Einzug );
-
 
785
        if ( !$firma )
762
            $showBruttoPreis = 0;
786
        {
763
        }
787
            $pdf->setX( 20 );
764
        if ( isset( $web_rechte['Warenwirtschaft']['bestellung']['abw_lieferdatum'] ) )
788
            $pdf->cell( 80, 4, $anrede, 0, 1, "L" );
765
        {
789
            $pdf->setX( 20 );
766
            define( 'LEISTUNGS_DATUM', true );
-
 
767
        }
-
 
768
        if ( file_exists( "includes/rechnung/body_" . $site . "_" . $shops_ID .
-
 
769
            ".inc.php" ) )
-
 
770
        {
-
 
771
            require ( "includes/rechnung/body_" . $site . "_" . $shops_ID .
790
            $pdf->cell( 80, 4, $name, 0, 1, "L" );
772
                ".inc.php" );
-
 
773
        }
-
 
774
        else
791
        }
775
        {
792
        else
776
            require "includes/rechnung/body_" . $site . ".inc.php";
793
        {
777
        }
-
 
778
 
-
 
779
        if ( $Einzug_rechts )
-
 
780
        {
-
 
781
            $Einzug = $Einzug_rechts;
794
            $pdf->setX( 20 );
782
        }
-
 
783
        else
795
            $pdf->cell( 80, 4, $firma, 0, 1, "L" );
784
        {
-
 
785
            $Einzug = 10;
796
            $pdf->setX( 20 );
786
        }
-
 
787
 
-
 
788
        if ( !defined( "BEMERKUNG2_DRUCKEN" ) )
-
 
789
        {
-
 
790
            define( "BEMERKUNG2_DRUCKEN", true );
-
 
791
        }
-
 
792
        if ( !defined( "LEISTUNGS_DATUM" ) )
-
 
793
        {
797
            $pdf->cell( 80, 4, $anrede . " " . $name, 0, 1, "L" );
794
            define( "LEISTUNGS_DATUM", false );
798
        }
795
        }
Zeile -... Zeile 796...
-
 
796
 
-
 
797
        // ME: Anrede in der richtigen Sprache
-
 
798
        $anrede = $row_l["Anrede"];
-
 
799
        if ( $row_l['Land'] == "Nederland" )
-
 
800
        {
-
 
801
            switch ( $row_l['Anrede'] )
-
 
802
            {
-
 
803
                case "Herr":
-
 
804
                    $anrede = "Heer";
-
 
805
                    break;
799
        $pdf->setX( 20 );
806
                case "Frau":
800
        $pdf->cell( 80, 4, $str, 0, 1, "L" );
807
                    $anrede = "Mevrouw";
801
        $pdf->setX( 20 );
808
                    break;
802
        if ( $iso_land == "DE" or $iso_land == "DEU" )
-
 
803
        {
809
                default:
804
            $pdf->cell( 80, 4, "$plz $ort", 0, 1, "L" );
-
 
805
        }
810
                    $anrede = "Heer";
806
        else
811
                    break;
807
        {
812
            }
808
            if ( strlen($iso_land) > 0 )
813
        }
809
            {
-
 
810
                $pdf->cell( 80, 4, "$iso_land - $plz $ort", 0, 1, "L" );
814
 
811
            }
815
        $plz = $row_l["PLZ"];
812
            else
-
 
813
            {
-
 
814
                $pdf->cell( 80, 4, "$plz $ort", 0, 1, "L" );
-
 
815
            }
-
 
816
        }
-
 
817
 
-
 
818
        if ( $Infozeile != 'on' )
-
 
819
        {
-
 
820
            $pdf->setY( 80 );
-
 
821
            if ( $bestellnummer_drucken === true )
-
 
822
            {
-
 
823
                $nr_text = "Best.Nr.";
-
 
824
                $nr = $row_b["ID"];
-
 
825
            }
-
 
826
            else
-
 
827
            {
-
 
828
                $nr_text = "Kunden Nr.:";
-
 
829
                $nr = $row_l["ID"];
-
 
830
            }
816
        $ort = $row_l["ORT"];
831
            $pdf->cell( 150, 4, $nr_text, 0, 0, "R" );
817
        $str = $row_l["Strasse"];
832
            $pdf->cell( 0, 4, $nr, 0, 1, "R" );
818
        $str .= ( isset( $row_l["Hausnummer"] ) ) ? " " . $row_l["Hausnummer"] :
833
            $pdf->cell( 150, 4, "Bearbeiter:", 0, 0, "R" );
-
 
834
            $pdf->cell( 0, 4, $b_name, 0, 1, "R" );
-
 
835
            $pdf->cell( 150, 4, "USt-IdNr.:", 0, 0, "R" );
-
 
836
            $pdf->cell( 0, 4, $haendler_ust_id, 0, 1, "R" );
-
 
837
 
-
 
838
    
-
 
839
            // Ausgabe Leistungsdatum
-
 
840
            if ( LEISTUNGS_DATUM == true )
-
 
841
            {
-
 
842
                if($_POST['leistungsdatum']) {
-
 
843
                    $pdf->cell( 150, 4, "Leistungsdatum:", 0, 0, "R" );
819
            "";
844
                    $pdf->cell( 0, 4, $_POST['leistungsdatum'], 0, 1, "R" );
820
        $iso_land = getIsoCode( $row_l['Land'], 2 );
Zeile 845... Zeile 821...
845
                }else{
821
        $firma = ( isset( $row_l["Name2"] ) ) ? $row_l["Name2"] : "";
846
                    $pdf->cell( 150, 4, "Leistungsdatum:", 0, 0, "R" );
822
        $mwst_befreiung = $row_l["mwst_befreiung"];
847
                    $pdf->cell( 0, 4, $dat["Datum"], 0, 1, "R" );
-
 
848
                }
-
 
849
            }  else
-
 
850
            {
-
 
851
                $pdf->cell( 150, 4, "Datum:", 0, 0, "R" );
-
 
852
                $pdf->cell( 0, 4, date("d.m.Y"), 0, 1, "R" );
-
 
853
            }
-
 
854
            
-
 
855
            // Ausgabe Rechnungsdatum
-
 
856
            if($_POST['rechnungsdatum']) {
-
 
857
                $pdf->cell( 150, 4, "Rechnungsdatum:", 0, 0, "R" );
-
 
858
                $pdf->cell( 0, 4, $_POST['rechnungsdatum'], 0, 1, "R" );
-
 
859
            }else{
-
 
860
                $pdf->cell( 150, 4, "Rechnungsdatum:", 0, 0, "R" );
-
 
861
                $pdf->cell( 0, 4, date("d.m.Y"), 0, 1, "R" );
-
 
862
            }
-
 
863
        }
-
 
864
 
-
 
865
        // Lieferadresse auf Rechnung ausdrucken?
-
 
866
        if ( (isset($web_rechte["Warenwirtschaft"]["bestellung"]["rechnung"]) and (isset
-
 
867
            ($web_rechte["Warenwirtschaft"]["bestellung"]["lieferadresse_auf_rechnung"]) and
-
 
868
            ($row_b['liefer_Strasse']))) )
-
 
869
        {
-
 
870
            $pdf->setY( 50 );
-
 
871
            $pdf->setX( 135 );
-
 
872
            $pdf->setFont( 'Arial', 'B', 8 );
-
 
873
            $pdf->cell( 145, 4, "Lieferadresse:", 0, 2, "L" );
823
        $ustid_nr = $row_l["ustid_nr"];
874
            $pdf->setFont( 'Arial', '', 8 );
824
 
875
            if ( $row_b['liefer_Firma'] )
825
        if ( !$b_id )
876
                $pdf->cell( 145, 4, $row_b['liefer_Firma'], 0, 2, "L" );
826
        {
877
            if ( $row_b['liefer_Name'] )
827
            if ( $_GET["b_id"] )
878
                $pdf->cell( 145, 4, $row_b['liefer_Name'], 0, 2, "L" );
828
            {
879
            if ( $row_b['liefer_Strasse'] )
829
                $b_id = ( int )$_GET["b_id"];
880
                $pdf->cell( 145, 4, $row_b['liefer_Strasse'] . " " . $row_b['liefer_Str_Nr'],
830
            }
881
                    0, 2, "L" );
831
            elseif ( $_POST["b_id"] )
882
            if ( $row_b['liefer_Ort'] )
-
 
Zeile 883... Zeile 832...
883
                $pdf->cell( 145, 4, $row_b['liefer_PLZ'] . " " . $row_b['liefer_Ort'], 0, 2,
832
            {
884
                    "L" );
833
                $b_id = ( int )$_POST["b_id"];
-
 
834
            }
885
            if ( $row_b['liefer_Land'] )
835
            else
886
                $pdf->cell( 145, 4, $row_b['liefer_Land'], 0, 2, "L" );
836
            {
887
        }
837
                die( "Keine Bestellung angegeben!" );
-
 
838
            }
888
 
839
        }
-
 
840
 
889
        $pdf->ln( 10 );
841
        // Standard-Zahlungsziel? START
890
        $pdf->SetFont( 'Arial', 'B', 14 );
842
        if ( isset( $web_rechte["logins"]["admin"]["zahlungsziel"] ) )
891
        
843
        {
-
 
844
            // alle Zahlungsziele holen
892
        if ( !$Rechungsueberschrift )
845
            $sql = "select 
893
        {
846
                        *
-
 
847
                    from
894
            $pdf->cell( 0, 4, $REName, 0, 1, "C" );
848
                        zahlungsziele 
-
 
849
                    order by 
895
        }
850
                        name
896
        else
851
                    ";
897
        {
852
 
-
 
853
 
898
            $fill = "cell( 0, 4, \'Rechnung\' , 0, 1, \'L\' )";
854
            if ( $q = mysql_query( $sql ) )
899
            $pdf->$fill;
855
            {
-
 
856
                while ( $r = mysql_fetch_assoc( $q ) )
-
 
857
                {
-
 
858
                    $zieltage = date( 'd.m.Y', strtotime( '+' . $r['zieltage'] .
900
        }
859
                        ' days' ) );
901
        $pdf->ln( 5 );
860
 
902
        $pdf->SetFont( 'Arial', 'B', 9 );
861
                    $skonto1 = $r['skonto1'];
903
 
862
                    $zieltageskonto1 = date( 'd.m.Y', strtotime( '+' . $r['zieltageskonto1'] .
904
 
863
                        ' days' ) );
-
 
864
                    if ( $skonto1 > 0 )
-
 
865
                    {
905
        $sql = "SELECT
866
                        $skontobetrag1 = money_format( $summe_b['total'] - ( $summe_b['total'] *
906
                ab.*
867
                            ( $skonto1 / 100 ) ), 2 );
907
            FROM
868
                    }
-
 
869
 
908
                artikel_to_Bestellung ab 
870
                    $skonto2 = $r['skonto2'];
909
            LEFT OUTER JOIN
-
 
910
                artikel a
871
                    $zieltageskonto2 = date( 'd.m.Y', strtotime( '+' . $r['zieltageskonto2'] .
911
            ON
872
                        ' days' ) );
912
                a.ID=ab.artikel 
873
                    if ( $skonto2 > 0 )
913
            WHERE
874
                    {
914
                Bestellung=$b_id
875
                        $skontobetrag2 = money_format( $summe_b['total'] - ( $summe_b['total'] *
915
            AND
876
                            ( $skonto2 / 100 ) ), 2 );
916
                ab. `status` != 'storniert'
877
                    }
-
 
878
 
-
 
879
 
-
 
880
                    @eval( "\$rechnungsbaustein_int=\"" . addslashes( $r["rechnungsbaustein"] ) .
-
 
881
                        "\";" );
-
 
882
                    $r["rechnungsbaustein_int"] = $rechnungsbaustein_int;
-
 
883
                    $zziele[] = $r;
-
 
884
                }
-
 
885
            }
-
 
886
            $GLOBALS["ui"]->assign( "zziele", $zziele );
-
 
887
 
-
 
888
            // gibt es für den User ein Zahlungsziel?
917
        ";
889
            $sql = "select
Zeile 918... Zeile 890...
918
        if ( $Status )
890
                        l.zahlungsziele_id
-
 
891
                        
Zeile 919... Zeile -...
919
        {
-
 
920
            $sql .= " AND rechnungStatus = 'schreiben'";
-
 
921
        }
-
 
922
        //$sql .= " ORDER BY Rang, Bezeichnung ";
-
 
923
        if ( isset($web_rechte["Warenwirtschaft"]["bestellung"]["artikel_sortieren"]) )
-
 
924
        {
-
 
925
            $sql .= "
-
 
Zeile -... Zeile 892...
-
 
892
                    from
-
 
893
                        Bestellung b,
-
 
894
                        Logins l
-
 
895
                    where 
-
 
896
                        b.Login = l.ID
Zeile 926... Zeile -...
926
                ORDER BY
-
 
927
                    ab.Rang,
897
                    and
928
                    Father desc,
898
                        b.ID = " . $b_id . "
-
 
899
            ";
-
 
900
 
929
                    a.kennung
901
            if ( $q = mysql_query( $sql ) )
-
 
902
            {
-
 
903
                if ( $r = mysql_fetch_assoc( $q ) )
-
 
904
                {
930
            ";
905
                    $GLOBALS["ui"]->assign( "zID", $r['zahlungsziele_id'] );
931
        }
906
                }
932
        else
907
            }
-
 
908
 
-
 
909
            $GLOBALS["ui"]->assign( "zahlungsziel", "true" );
-
 
910
            $show_prepage++;
-
 
911
        }
Zeile 933... Zeile 912...
933
        {
912
 
934
            $sql .= "
913
        // Standard-Zahlungsziel? ENDE
935
                ORDER BY
914
 
936
                    Father desc,
915
 
937
                    a.kennung
916
 
-
 
917
 
-
 
918
        // ggf. wird die Vorschaltseite ausgegeben
-
 
919
        if ( $show_prepage > 0 and !$_POST['action'] )
-
 
920
        {
-
 
921
            $GLOBALS["ui"]->display( "rechnung_prepage.tpl" );
-
 
922
        }
-
 
923
 
-
 
924
        if ( ( $show_prepage == 0 ) or ( $_POST['action'] == "genPDF" ) )
-
 
925
        {
-
 
926
 
-
 
927
            //Instanciation of inherited class
-
 
928
            $showLieferadresse = 0;
-
 
929
            $pdf = new PDF();
-
 
930
 
-
 
931
            if ( isset( $web_rechte["Warenwirtschaft"]["bestellung"]["rechnung"] ) )
-
 
932
            {
-
 
933
                $Status = false;
-
 
934
                $Nummernkreis = false;
-
 
935
                $Speichern = false;
-
 
936
 
-
 
937
                $daten = explode( ";", $web_rechte["Warenwirtschaft"]["bestellung"]["rechnung"] );
-
 
938
 
-
 
939
 
-
 
940
                $id = array_search( "Status", $daten );
Zeile -... Zeile 941...
-
 
941
                if ( $id !== false )
938
            ";
942
                {
-
 
943
                    $Status = true;
-
 
944
                }
939
        }
945
                $id = array_search( "Nummernkreis", $daten );
-
 
946
                if ( $id !== false )
-
 
947
                {
-
 
948
                    $Nummernkreis = true;
940
 
949
                    if ( !isset( $anz_stellen ) )
941
        $res = mysql_query_logged( $sql );
950
                    {
942
 
951
                        $anz_stellen = 5;
-
 
952
                    }
-
 
953
                    $r_nr = sprintf( "%0" . $anz_stellen . "d", $pdf->
-
 
954
                        generate_LN( $b_id, "R", true ) );
943
 
955
                    if ( isset( $web_rechte["Warenwirtschaft"]["rechnungsbuch"]["rechnungsnrtrennung"] ) )
944
        $summe_n = array();
956
                    {
-
 
957
                        $sql = "SELECT
945
        $summe_b = array();
958
                                re_short
946
        $preis_n = 0;
959
                            FROM
-
 
960
                                shops
947
        $g_preis = 0;
961
                            WHERE
-
 
962
                                id=$shops_ID
948
        $g_preis_n = 0;
963
                        ";
949
        $pos = 1;
964
                        $res = mysql_query( $sql );
-
 
965
                        $row = mysql_fetch_assoc( $res );
950
        $mwst_arr = array( 0 => 19, 1 => 7, null => 19 );
966
                        $r_nr = $row["re_short"] . $r_nr;
951
 
967
                    }
952
 
968
                    $r_nr = date( "y" ) . $r_nr;
953
        // Lieferadresse ausgeben
-
 
954
        if ( $Lieferadresse == "on" )
-
 
Zeile -... Zeile 969...
-
 
969
 
-
 
970
                    $fName = "R" . $r_nr . ".pdf";
-
 
971
                    if ( $gutschrift == 1 )
-
 
972
                    {
955
        {
973
                        $fName = "G" . $r_nr . ".pdf";
956
            if ( $row_b['liefer_Strasse'] )
974
                    }
-
 
975
                }
-
 
976
                else
-
 
977
                {
-
 
978
                    $date = date( "Y-m-d" );
957
            {
979
                    $ln = $pdf->generate_LN( $b_id, "L", false );
-
 
980
                    if ( !isset( $anz_stellen ) )
-
 
981
                    {
-
 
982
                        $anz_stellen = 5;
-
 
983
                    }
958
                $x_tmp = $pdf->GetX();
984
                    $r_nr = sprintf( "%0" . $anz_stellen . "d", $ln );
959
                $y_tmp = $pdf->GetY();
985
                    $fName = "R_" . $b_id . "_" . $date . "_" . $r_nr . ".pdf";
-
 
986
                    if ( $gutschrift == 1 )
960
 
987
                    {
-
 
988
                        $fName = "G_" . $b_id . "_" . $date . "_" . $r_nr .
961
                $lanr = "";
989
                            ".pdf";
962
                if ( $row_b['liefer_Anrede'] )
990
                    }
963
                {
991
                }
964
                    $lanr = $row_b['liefer_Anrede'] . " ";
992
                $id = array_search( "Speichern", $daten );
-
 
993
                if ( $id !== false )
965
                }
994
                {
-
 
995
                    $Speichern = true;
966
 
996
                }
967
                $pdf->SetFont( 'Arial', '', 9 );
997
            }
968
                $pdf->SetY( 10 );
998
 
969
                $pdf->SetX( $Einzug + 5 );
999
            $pdf->setSubject( "Rechnung" );
970
                $pdf->cell( 0, 3, 'Lieferanschrift:', 0, 2, 'L' );
-
 
971
                $pdf->Cell( 0, 3, $row_b['liefer_Firma'], 0, 2, 'L' );
1000
 
972
                $pdf->cell( 0, 3, $lanr . $row_b['liefer_Name'], 0, 2, 'L' );
1001
            $pdf->setAuthor( $haendler_name );
973
                $pdf->cell( 0, 3, $row_b['liefer_Strasse'] . " " . $row_b['liefer_Str_Nr'],
1002
            $pdf->setCreator( "fpdf PHP Library" );
974
                    0, 2, 'L' );
1003
            $pdf->AliasNbPages();
-
 
1004
            $pdf->AddPage();
-
 
1005
            $pdf->setY( 45 );
-
 
1006
            $pdf->setFont( 'Arial', '', 8 );
-
 
1007
            $pdf->SetX( $Einzug );
-
 
1008
            $pdf->cell( 80, 4, $umschlag, "B", 1, "L" );
-
 
1009
            $pdf->setFont( 'Arial', '', 10 );
-
 
1010
            $pdf->ln( 5 );
-
 
1011
            $pdf->setX( 20 );
-
 
1012
            $pdf->SetX( $Einzug );
-
 
1013
            if ( !$firma )
-
 
1014
            {
975
                $pdf->cell( 0, 3, $row_b['liefer_PLZ'] . " " . $row_b['liefer_Ort'], 0, 2,
1015
                $pdf->setX( 20 );
-
 
1016
                $pdf->cell( 80, 4, $anrede, 0, 1, "L" );
-
 
1017
                $pdf->setX( 20 );
-
 
1018
                $pdf->cell( 80, 4, $name, 0, 1, "L" );
-
 
1019
            }
-
 
1020
            else
-
 
1021
            {
-
 
1022
                $pdf->setX( 20 );
-
 
1023
                $pdf->cell( 80, 4, $firma, 0, 1, "L" );
-
 
1024
                $pdf->setX( 20 );
-
 
1025
                $pdf->cell( 80, 4, $anrede . " " . $name, 0, 1, "L" );
-
 
1026
            }
-
 
1027
            $pdf->setX( 20 );
-
 
1028
            $pdf->cell( 80, 4, $str, 0, 1, "L" );
976
                    'L' );
1029
            $pdf->setX( 20 );
-
 
1030
            if ( $iso_land == "DE" or $iso_land == "DEU" )
977
                $pdf->cell( 0, 3, $row_b['liefer_Land'], 0, 2, 'L' );
1031
            {
-
 
1032
                $pdf->cell( 80, 4, "$plz $ort", 0, 1, "L" );
-
 
1033
            }
-
 
1034
            else
-
 
1035
            {
-
 
1036
                if ( strlen( $iso_land ) > 0 )
-
 
1037
                {
978
                $pdf->SetFont( 'Arial', '', 10 );
1038
                    $pdf->cell( 80, 4, "$iso_land - $plz $ort", 0, 1, "L" );
-
 
1039
                }
-
 
1040
                else
-
 
1041
                {
-
 
1042
                    $pdf->cell( 80, 4, "$plz $ort", 0, 1, "L" );
-
 
1043
                }
-
 
1044
            }
-
 
1045
 
-
 
1046
            if ( $Infozeile != 'on' )
-
 
1047
            {
-
 
1048
                $pdf->setY( 80 );
-
 
1049
                if ( $bestellnummer_drucken === true )
-
 
1050
                {
-
 
1051
                    $nr_text = "Best.Nr.";
-
 
1052
                    $nr = $row_b["ID"];
-
 
1053
                }
-
 
1054
                else
-
 
1055
                {
-
 
1056
                    $nr_text = "Kunden Nr.:";
-
 
1057
                    $nr = $row_l["ID"];
-
 
1058
                }
-
 
1059
                $pdf->cell( 150, 4, $nr_text, 0, 0, "R" );
-
 
1060
                $pdf->cell( 0, 4, $nr, 0, 1, "R" );
-
 
1061
                $pdf->cell( 150, 4, "Bearbeiter:", 0, 0, "R" );
-
 
1062
                $pdf->cell( 0, 4, $b_name, 0, 1, "R" );
-
 
1063
                $pdf->cell( 150, 4, "USt-IdNr.:", 0, 0, "R" );
-
 
1064
                $pdf->cell( 0, 4, $haendler_ust_id, 0, 1, "R" );
-
 
1065
 
-
 
1066
 
-
 
1067
                // Ausgabe Leistungsdatum
-
 
1068
                if ( LEISTUNGS_DATUM == true )
-
 
1069
                {
-
 
1070
                    if ( $_POST['leistungsdatum'] )
-
 
1071
                    {
-
 
1072
                        $pdf->cell( 150, 4, "Leistungsdatum:", 0, 0, "R" );
-
 
1073
                        $pdf->cell( 0, 4, $_POST['leistungsdatum'], 0, 1, "R" );
-
 
1074
                    }
-
 
1075
                    else
-
 
1076
                    {
-
 
1077
                        $pdf->cell( 150, 4, "Leistungsdatum:", 0, 0, "R" );
-
 
1078
                        $pdf->cell( 0, 4, $dat["Datum"], 0, 1, "R" );
-
 
1079
                    }
-
 
1080
                }
-
 
1081
                else
-
 
1082
                {
-
 
1083
                    $pdf->cell( 150, 4, "Datum:", 0, 0, "R" );
-
 
1084
                    $pdf->cell( 0, 4, date( "d.m.Y" ), 0, 1, "R" );
-
 
1085
                }
-
 
1086
 
-
 
1087
                // Ausgabe Rechnungsdatum
-
 
1088
                if ( $_POST['rechnungsdatum'] )
-
 
1089
                {
-
 
1090
                    $pdf->cell( 150, 4, "Rechnungsdatum:", 0, 0, "R" );
-
 
1091
                    $pdf->cell( 0, 4, $_POST['rechnungsdatum'], 0, 1, "R" );
-
 
1092
                }
-
 
1093
                else
-
 
1094
                {
-
 
1095
                    $pdf->cell( 150, 4, "Rechnungsdatum:", 0, 0, "R" );
-
 
1096
                    $pdf->cell( 0, 4, date( "d.m.Y" ), 0, 1, "R" );
-
 
1097
                }
979
                $pdf->SetX( $x_tmp );
1098
            }
980
                $pdf->SetY( $y_tmp );
1099
 
981
            }
1100
            // Lieferadresse auf Rechnung ausdrucken?
982
        }
1101
            if ( ( isset( $web_rechte["Warenwirtschaft"]["bestellung"]["rechnung"] ) and
983
        //Zusatzkopf
1102
                ( isset( $web_rechte["Warenwirtschaft"]["bestellung"]["lieferadresse_auf_rechnung"] ) and
984
 
1103
                ( $row_b['liefer_Strasse'] ) ) ) )
-
 
1104
            {
985
        if ( $Infozeile == 'on' )
1105
                $pdf->setY( 50 );
-
 
1106
                $pdf->setX( 135 );
986
        {
1107
                $pdf->setFont( 'Arial', 'B', 8 );
Zeile -... Zeile 1108...
-
 
1108
                $pdf->cell( 145, 4, "Lieferadresse:", 0, 2, "L" );
-
 
1109
                $pdf->setFont( 'Arial', '', 8 );
-
 
1110
                if ( $row_b['liefer_Firma'] )
-
 
1111
                    $pdf->cell( 145, 4, $row_b['liefer_Firma'], 0, 2, "L" );
987
            if ( $bestellnummer_drucken === true )
1112
                if ( $row_b['liefer_Name'] )
-
 
1113
                    $pdf->cell( 145, 4, $row_b['liefer_Name'], 0, 2, "L" );
988
            {
1114
                if ( $row_b['liefer_Strasse'] )
-
 
1115
                    $pdf->cell( 145, 4, $row_b['liefer_Strasse'] . " " . $row_b['liefer_Str_Nr'],
989
                $nr_text = "Best.Nr.";
1116
                        0, 2, "L" );
-
 
1117
                if ( $row_b['liefer_Ort'] )
990
                $nr = $row_b["ID"];
1118
                    $pdf->cell( 145, 4, $row_b['liefer_PLZ'] . " " . $row_b['liefer_Ort'],
-
 
1119
                        0, 2, "L" );
991
            }
1120
                if ( $row_b['liefer_Land'] )
-
 
1121
                    $pdf->cell( 145, 4, $row_b['liefer_Land'], 0, 2, "L" );
992
            else
1122
            }
993
            {
1123
 
994
                $nr_text = "Kunden Nr.:";
1124
            $pdf->ln( 10 );
-
 
1125
            $pdf->SetFont( 'Arial', 'B', 14 );
-
 
1126
 
-
 
1127
            if ( !$Rechungsueberschrift )
-
 
1128
            {
-
 
1129
                $pdf->cell( 0, 4, $REName, 0, 1, "C" );
-
 
1130
            }
-
 
1131
            else
-
 
1132
            {
-
 
1133
                $fill = "cell( 0, 4, \'Rechnung\' , 0, 1, \'L\' )";
-
 
1134
                $pdf->$fill;
995
                $nr = $row_l["ID"];
1135
            }
996
            }
1136
            $pdf->ln( 5 );
997
            $pdf->Ln( 15 );
1137
            $pdf->SetFont( 'Arial', 'B', 9 );
-
 
1138
 
-
 
1139
 
998
            $pdf->SetX( $Einzug );
1140
            $sql = "SELECT
-
 
1141
                    ab.*
-
 
1142
                FROM
999
            $pdf->setFillColor( 204 );
1143
                    artikel_to_Bestellung ab 
1000
            if($gutschrift==1) {
-
 
1001
                $pdf->cell( 25, 4, "Gutschrift Nr.", "LTR", 0, "C", 1 );    
-
 
1002
            }else{
-
 
1003
                $pdf->cell( 25, 4, "Rechnungs Nr.", "LTR", 0, "C", 1 );
-
 
1004
            }
-
 
1005
            
-
 
1006
            $pdf->cell( 20, 4, $nr_text, "LTR", 0, "C", 1 );
-
 
1007
            $pdf->cell( 65, 4, "Bearbeiter", "LTR", 0, "C", 1 );
-
 
1008
            if ( LEISTUNGS_DATUM == true )
-
 
1009
            {
-
 
1010
                $pdf->cell( 35, 4, "Leistungsdatum", "LTR", 0, "C", 1 );
-
 
1011
            }
-
 
1012
            else
-
 
1013
            {
-
 
1014
                $pdf->cell( 35, 4, "Datum", "LTR", 0, "C", 1 );
-
 
1015
            }
-
 
1016
            $pdf->cell( 0, 4, "Seite", "LTR", 1, "C", 1 );
-
 
1017
 
-
 
Zeile 1018... Zeile 1144...
1018
            $pdf->setFillColor( 255 );
1144
                LEFT OUTER JOIN
Zeile -... Zeile 1145...
-
 
1145
                    artikel a
1019
            $pdf->SetX( $Einzug );
1146
                ON
1020
            $pdf->cell( 25, 4, "$r_nr", "LBR", 0, "C", 1 );
1147
                    a.ID=ab.artikel 
1021
            $pdf->cell( 20, 4, $nr, "LBR", 0, "C", 1 );
1148
                WHERE
1022
            $pdf->cell( 65, 4, "$b_name", "LBR", 0, "C", 1 );
1149
                    Bestellung=$b_id
-
 
1150
                AND
1023
            if ( LEISTUNGS_DATUM == true )
1151
                    ab. `status` != 'storniert'
-
 
1152
            ";
-
 
1153
            if ( $Status )
1024
            {
1154
            {
-
 
1155
                $sql .= " AND rechnungStatus = 'schreiben'";
-
 
1156
            }
1025
                $pdf->cell( 35, 4, $dat["Datum"], "LBR", 0, "C", 1 );
1157
            //$sql .= " ORDER BY Rang, Bezeichnung ";
1026
            }
1158
            if ( isset( $web_rechte["Warenwirtschaft"]["bestellung"]["artikel_sortieren"] ) )
1027
            else
1159
            {
-
 
1160
                $sql .= "
-
 
1161
                    ORDER BY
-
 
1162
                        ab.Rang,
-
 
1163
                        Father desc,
Zeile 1028... Zeile -...
1028
            {
-
 
1029
                $pdf->cell( 35, 4, date('d.m.Y'), "LBR", 0, "C", 1 );
1164
                        a.kennung
1030
            }
-
 
1031
            $pdf->cell( 0, 4, $pdf->PageNo(), "LBR", 1, "C", 1 );
1165
                ";
1032
        }
1166
            }
1033
        $pdf->setFillColor( 204 );
1167
            else
1034
        $pdf->SetX( $Einzug );
1168
            {
Zeile 1035... Zeile 1169...
1035
        $pdf->cell( 10, 4, "$Pos_text", "LTR", 0, "C", 1 );
1169
                $sql .= "
1036
        $pdf->cell( 15, 4, "$Menge_text", "LTR", 0, "C", 1 );
1170
                    ORDER BY
1037
        $pdf->cell( 20, 4, "$Kennung_text", "LTR", 0, "C", 1 );
1171
                        Father desc,
-
 
1172
                        a.kennung
-
 
1173
                ";
-
 
1174
            }
-
 
1175
 
1038
        $pdf->cell( 100, 4, "$Text_text", "LTR", 0, "C", 1 );
1176
            $res = mysql_query_logged( $sql );
1039
        $pdf->cell( 20, 4, "$Einzelpreis_text", "LTR", 0, "C", 1 );
1177
 
1040
        $pdf->cell( 0, 4, "$Gesamtpreis_text", "LTR", 1, "C", 1 );
1178
 
1041
        $pdf->SetX( $Einzug );
1179
            $summe_n = array();
1042
        $pdf->cell( 10, 4, "", "LBR", 0, "C", 1 );
1180
            $summe_b = array();
1043
        $pdf->cell( 15, 4, "", "LBR", 0, "C", 1 );
1181
            $preis_n = 0;
1044
        $pdf->cell( 20, 4, "", "LBR", 0, "C", 1 );
1182
            $g_preis = 0;
-
 
1183
            $g_preis_n = 0;
-
 
1184
            $pos = 1;
-
 
1185
            $mwst_arr = array(
1045
        $pdf->cell( 100, 4, "", "LBR", 0, "C", 1 );
1186
                0 => 19,
1046
        $pdf->cell( 20, 4, "€", "LBR", 0, "C", 1 );
1187
                1 => 7,
1047
        $pdf->cell( 0, 4, "€", "LBR", 1, "C", 1 );
-
 
1048
        $pdf->setFillColor( 255 );
1188
                null => 19 );
1049
 
1189
 
1050
        $pdf->SetFont( 'Arial', '', 9 );
1190
 
-
 
1191
            // Lieferadresse ausgeben
1051
 
1192
            if ( $Lieferadresse == "on" )
-
 
1193
            {
-
 
1194
                if ( $row_b['liefer_Strasse'] )
-
 
1195
                {
-
 
1196
                    $x_tmp = $pdf->GetX();
-
 
1197
                    $y_tmp = $pdf->GetY();
-
 
1198
 
-
 
1199
                    $lanr = "";
-
 
1200
                    if ( $row_b['liefer_Anrede'] )
-
 
1201
                    {
-
 
1202
                        $lanr = $row_b['liefer_Anrede'] . " ";
-
 
1203
                    }
-
 
1204
 
-
 
1205
                    $pdf->SetFont( 'Arial', '', 9 );
-
 
1206
                    $pdf->SetY( 10 );
-
 
1207
                    $pdf->SetX( $Einzug + 5 );
-
 
1208
                    $pdf->cell( 0, 3, 'Lieferanschrift:', 0, 2, 'L' );
1052
 
1209
                    $pdf->Cell( 0, 3, $row_b['liefer_Firma'], 0, 2, 'L' );
Zeile -... Zeile 1210...
-
 
1210
                    $pdf->cell( 0, 3, $lanr . $row_b['liefer_Name'], 0, 2, 'L' );
-
 
1211
                    $pdf->cell( 0, 3, $row_b['liefer_Strasse'] . " " . $row_b['liefer_Str_Nr'],
1053
        while ( $row = mysql_fetch_assoc($res) )
1212
                        0, 2, 'L' );
-
 
1213
                    $pdf->cell( 0, 3, $row_b['liefer_PLZ'] . " " . $row_b['liefer_Ort'],
-
 
1214
                        0, 2, 'L' );
-
 
1215
                    $pdf->cell( 0, 3, $row_b['liefer_Land'], 0, 2, 'L' );
-
 
1216
                    $pdf->SetFont( 'Arial', '', 10 );
1054
        {
1217
                    $pdf->SetX( $x_tmp );
1055
            $pdf->SetX( $Einzug );
1218
                    $pdf->SetY( $y_tmp );
1056
            $menge = $row["Menge"];
1219
                }
-
 
1220
            }
Zeile -... Zeile 1221...
-
 
1221
            //Zusatzkopf
-
 
1222
 
-
 
1223
            if ( $Infozeile == 'on' )
-
 
1224
            {
-
 
1225
                if ( $bestellnummer_drucken === true )
1057
            $zahlart = $row['zahlart'];
1226
                {
1058
            $e_preis = $row["Preis_pro_Stueck"];
1227
                    $nr_text = "Best.Nr.";
1059
            $a_name = $row["Bezeichnung"];
-
 
1060
            if ( $row["artikel"] != "0" )
1228
                    $nr = $row_b["ID"];
1061
            {
-
 
1062
 
-
 
1063
                $sql_a = "SELECT 
-
 
1064
                        * 
-
 
1065
                    FROM 
1229
                }
1066
                        " . artikelDatabase( $row_b["shops_ID"] ) . " 
1230
                else
1067
                    WHERE 
1231
                {
1068
                        ID=" . $row["artikel"] . "
1232
                    $nr_text = "Kunden Nr.:";
1069
                ";
1233
                    $nr = $row_l["ID"];
-
 
1234
                }
-
 
1235
                $pdf->Ln( 15 );
-
 
1236
                $pdf->SetX( $Einzug );
-
 
1237
                $pdf->setFillColor( 204 );
-
 
1238
                if ( $gutschrift == 1 )
-
 
1239
                {
-
 
1240
                    $pdf->cell( 25, 4, "Gutschrift Nr.", "LTR", 0, "C", 1 );
-
 
1241
                }
1070
 
1242
                else
1071
                $res_a = mysql_query( $sql_a );
1243
                {
-
 
1244
                    $pdf->cell( 25, 4, "Rechnungs Nr.", "LTR", 0, "C", 1 );
-
 
1245
                }
-
 
1246
 
-
 
1247
                $pdf->cell( 20, 4, $nr_text, "LTR", 0, "C", 1 );
-
 
1248
                $pdf->cell( 65, 4, "Bearbeiter", "LTR", 0, "C", 1 );
-
 
1249
                if ( LEISTUNGS_DATUM == true )
-
 
1250
                {
-
 
1251
                    $pdf->cell( 35, 4, "Leistungsdatum", "LTR", 0, "C", 1 );
-
 
1252
                }
-
 
1253
                else
-
 
1254
                {
-
 
1255
                    $pdf->cell( 35, 4, "Datum", "LTR", 0, "C", 1 );
-
 
1256
                }
-
 
1257
                $pdf->cell( 0, 4, "Seite", "LTR", 1, "C", 1 );
-
 
1258
 
-
 
1259
                $pdf->setFillColor( 255 );
-
 
1260
                $pdf->SetX( $Einzug );
-
 
1261
                $pdf->cell( 25, 4, "$r_nr", "LBR", 0, "C", 1 );
-
 
1262
                $pdf->cell( 20, 4, $nr, "LBR", 0, "C", 1 );
-
 
1263
                $pdf->cell( 65, 4, "$b_name", "LBR", 0, "C", 1 );
1072
                $row_a = mysql_fetch_assoc( $res_a );
1264
                if ( LEISTUNGS_DATUM == true )
-
 
1265
                {
-
 
1266
                    $pdf->cell( 35, 4, $dat["Datum"], "LBR", 0, "C", 1 );
1073
                if ( !$a_name )
1267
                }
-
 
1268
                else
1074
                {
1269
                {
-
 
1270
                    $pdf->cell( 35, 4, date( 'd.m.Y' ), "LBR", 0, "C", 1 );
1075
                    $a_name = html_entity_decode( $row_a["kurzbezeichnung"] );
1271
                }
-
 
1272
                $pdf->cell( 0, 4, $pdf->PageNo(), "LBR", 1, "C", 1 );
-
 
1273
            }
1076
                }
1274
            $pdf->setFillColor( 204 );
1077
                $kennung = $row_a["kennung"];
1275
            $pdf->SetX( $Einzug );
1078
                $mwst = ( $row["mwst"] != "0.00" && !empty($row["mwst"]) ) ? $row["mwst"] :
1276
            $pdf->cell( 10, 4, "$Pos_text", "LTR", 0, "C", 1 );
1079
                    $mwst_arr[$row_a["tax1"]];
1277
            $pdf->cell( 15, 4, "$Menge_text", "LTR", 0, "C", 1 );
-
 
1278
            $pdf->cell( 20, 4, "$Kennung_text", "LTR", 0, "C", 1 );
1080
                $preis_n = $e_preis - ( $e_preis * $mwst / (100 + $mwst) );
1279
            $pdf->cell( 100, 4, "$Text_text", "LTR", 0, "C", 1 );
1081
 
-
 
1082
                // ME: Wenn in der Bestellung ein Rang angegeben ist,
1280
            $pdf->cell( 20, 4, "$Einzelpreis_text", "LTR", 0, "C", 1 );
1083
                // wird dieser statt der laufenden Nummer als Pos ausgegeben
1281
            $pdf->cell( 0, 4, "$Gesamtpreis_text", "LTR", 1, "C", 1 );
1084
                /*
1282
            $pdf->SetX( $Einzug );
1085
                if ( $row['Rang'] > 0 )
1283
            $pdf->cell( 10, 4, "", "LBR", 0, "C", 1 );
-
 
1284
            $pdf->cell( 15, 4, "", "LBR", 0, "C", 1 );
1086
                {
1285
            $pdf->cell( 20, 4, "", "LBR", 0, "C", 1 );
-
 
1286
            $pdf->cell( 100, 4, "", "LBR", 0, "C", 1 );
1087
                    $pos = $row['Rang'];
1287
            $pdf->cell( 20, 4, "€", "LBR", 0, "C", 1 );
1088
                }*/
1288
            $pdf->cell( 0, 4, "€", "LBR", 1, "C", 1 );
1089
 
-
 
1090
                if ( $showBruttoPreis == 1 )
-
 
1091
                {
1289
            $pdf->setFillColor( 255 );
-
 
1290
 
1092
                    $preis_n = $e_preis;
1291
            $pdf->SetFont( 'Arial', '', 9 );
Zeile 1093... Zeile -...
1093
                }
-
 
1094
 
1292
 
1095
                if ( $row_a["Father"] == -3 )
1293
 
-
 
1294
            while ( $row = mysql_fetch_assoc( $res ) )
-
 
1295
            {
Zeile -... Zeile 1296...
-
 
1296
                $pdf->SetX( $Einzug );
-
 
1297
                $menge = $row["Menge"];
-
 
1298
                $zahlart = $row['zahlart'];
-
 
1299
                $e_preis = $row["Preis_pro_Stueck"];
-
 
1300
                $a_name = $row["Bezeichnung"];
-
 
1301
                if ( $row["artikel"] != "0" )
-
 
1302
                {
-
 
1303
 
-
 
1304
                    $sql_a = "SELECT 
-
 
1305
                            * 
-
 
1306
                        FROM 
-
 
1307
                            " . artikelDatabase( $row_b["shops_ID"] ) . " 
-
 
1308
                        WHERE 
-
 
1309
                            ID=" . $row["artikel"] . "
-
 
1310
                    ";
-
 
1311
 
-
 
1312
                    $res_a = mysql_query( $sql_a );
-
 
1313
                    $row_a = mysql_fetch_assoc( $res_a );
-
 
1314
                    if ( !$a_name )
-
 
1315
                    {
-
 
1316
                        $a_name = html_entity_decode( $row_a["kurzbezeichnung"] );
-
 
1317
                    }
-
 
1318
                    $kennung = $row_a["kennung"];
-
 
1319
                    $mwst = ( $row["mwst"] != "0.00" && !empty( $row["mwst"] ) ) ?
-
 
1320
                        $row["mwst"] : $mwst_arr[$row_a["tax1"]];
-
 
1321
                    $preis_n = $e_preis - ( $e_preis * $mwst / ( 100 + $mwst ) );
-
 
1322
 
Zeile -... Zeile 1323...
-
 
1323
                    // ME: Wenn in der Bestellung ein Rang angegeben ist,
-
 
1324
                    // wird dieser statt der laufenden Nummer als Pos ausgegeben
-
 
1325
                    /*
1096
                {
1326
                    if ( $row['Rang'] > 0 )
-
 
1327
                    {
-
 
1328
                    $pos = $row['Rang'];
-
 
1329
                    }*/
-
 
1330
 
-
 
1331
                    if ( $showBruttoPreis == 1 )
-
 
1332
                    {
-
 
1333
                        $preis_n = $e_preis;
-
 
1334
                    }
-
 
1335
 
-
 
1336
                    if ( $row_a["Father"] == -3 )
1097
                    continue;
1337
                    {
1098
                    /*    $versandname = $row["Bezeichnung"];
-
 
Zeile 1099... Zeile 1338...
1099
                    $pos = "";
1338
                        continue;
1100
                    $menge = "";
1339
                        /*    $versandname = $row["Bezeichnung"];
-
 
1340
                        $pos = "";
-
 
1341
                        $menge = "";
-
 
1342
                        $g_preis = $e_preis;
1101
                    $g_preis = $e_preis;
1343
                        $g_preis_n = $preis_n;*/
1102
                    $g_preis_n = $preis_n;*/
1344
                    }
1103
                }
1345
                    else
1104
                else
-
 
1105
                {
1346
                    {
-
 
1347
                        // ME: Bestandsmehrung oder auch nicht bei Gutschriften
-
 
1348
                        if ( ( isset( $web_rechte["Warenwirtschaft"]["bestellung"]["gutschriftoption"] ) ) and
-
 
1349
                            ( isset( $user_rechte["Warenwirtschaft"]["bestellung"]["gutschriftoption"] ) ) )
1106
                    // ME: Bestandsmehrung oder auch nicht bei Gutschriften
1350
                        {
-
 
1351
                            if ( isset( $_POST['gutschrift'] ) )
1107
                    if (
1352
                            {
1108
                        (isset($web_rechte["Warenwirtschaft"]["bestellung"]["gutschriftoption"])) and
1353
                                if ( !isset( $_POST['keine_bestandsaenderung'] ) )
1109
                        (isset($user_rechte["Warenwirtschaft"]["bestellung"]["gutschriftoption"])) )
-
 
1110
                    {
1354
                                {
1111
                        if(isset( $_POST['gutschrift'])) {
1355
                                    $buchungstext =
-
 
1356
                                        'Buchung durchgeführt durch Gutschrift ' .
1112
                            if(!isset($_POST['keine_bestandsaenderung'])) {
1357
                                        $r_nr . ' am ' . date( 'd.m.Y', time() );
1113
                                $buchungstext = 'Buchung durchgeführt durch Gutschrift ' . $r_nr . ' am ' .
1358
                                    setBuchungFromBestellung( $_GET['b_id'], $buchungstext,
Zeile 1114... Zeile 1359...
1114
                                date( 'd.m.Y', time() );
1359
                                        $row_a['ID'], $menge );
1115
                                setBuchungFromBestellung( $_GET['b_id'], $buchungstext, $row_a['ID'], $menge );
1360
                                }
Zeile -... Zeile 1361...
-
 
1361
                            }
1116
                            }
1362
                        }
1117
                        }
1363
 
1118
                    }
1364
                        /**
-
 
1365
                         *  Bestandsminderung:
-
 
1366
                         *  
1119
                    
1367
                         *  Ist das Webrecht: $web_rechte['Warenwirtschaft']['lagerwirtschaft']['bestandsminderung'] gleich "Rechnung",
-
 
1368
                         *  so wird in der Rechnungserstellung (rechnung.php) die Bestandsminderung durchgeführt.
1120
                    /**
1369
                         * 
1121
                     *  Bestandsminderung:
-
 
1122
                     *  
-
 
Zeile -... Zeile 1370...
-
 
1370
                         *  Folgende Punkte werden hierfür durchgeführt:
-
 
1371
                         *         1. Eine neue Buchung wird in der Tabelle "buchungen" erzeugt.
-
 
1372
                         *        2. Die zur Buchung gehörenden Lagerbewegungen, werden in die Tabelle "lagerbewegungen" eingetragen.
-
 
1373
                         * 
-
 
1374
                         */
-
 
1375
 
-
 
1376
                        if ( ( $row_a['Father'] > 0 ) and ( $web_rechte['Warenwirtschaft']['lagerwirtschaft']['bestandsminderung'] ==
-
 
1377
                            'Rechnung' ) )
1123
                     *  Ist das Webrecht: $web_rechte['Warenwirtschaft']['lagerwirtschaft']['bestandsminderung'] gleich "Rechnung",
1378
                        {
1124
                     *  so wird in der Rechnungserstellung (rechnung.php) die Bestandsminderung durchgeführt.
1379
 
-
 
1380
 
-
 
1381
                            if ( ( isset( $web_rechte['Warenwirtschaft']['lagerwirtschaft']['minderungsunterdrueckung'] ) ) )
1125
                     * 
1382
                            {
1126
                     *  Folgende Punkte werden hierfür durchgeführt:
-
 
1127
                     *         1. Eine neue Buchung wird in der Tabelle "buchungen" erzeugt.
-
 
1128
                     *        2. Die zur Buchung gehörenden Lagerbewegungen, werden in die Tabelle "lagerbewegungen" eingetragen.
-
 
1129
                     * 
-
 
1130
                     */
-
 
1131
 
-
 
1132
                    if ( ($row_a['Father'] > 0) and ($web_rechte['Warenwirtschaft']['lagerwirtschaft']['bestandsminderung'] ==
-
 
1133
                        'Rechnung') )
-
 
1134
                    {
-
 
1135
 
-
 
1136
 
1383
                                $minderung = 1;
1137
                        if ( (isset($web_rechte['Warenwirtschaft']['lagerwirtschaft']['minderungsunterdrueckung'])) )
1384
 
1138
                        {
1385
 
1139
                            $minderung = 1;
1386
                                if ( is_array( $_POST["baustein"] ) )
1140
 
-
 
1141
 
-
 
1142
                            if ( is_array($_POST["baustein"]) )
-
 
Zeile -... Zeile 1387...
-
 
1387
                                {
-
 
1388
                                    foreach ( $_POST['baustein'] as $key => $val )
Zeile 1143... Zeile -...
1143
                            {
-
 
1144
                                foreach ( $_POST['baustein'] as $key => $val )
-
 
1145
                                {
-
 
1146
                                    if (    stristr($val, "keine Bestandsminderung")
-
 
Zeile -... Zeile 1389...
-
 
1389
                                    {
-
 
1390
                                        if ( stristr( $val,
-
 
1391
                                            "keine Bestandsminderung" ) )
-
 
1392
                                        {
Zeile 1147... Zeile -...
1147
                                        )
-
 
1148
                                    {
-
 
1149
                                        $minderung = 0;
-
 
1150
                                    }
-
 
1151
                                }
-
 
Zeile -... Zeile 1393...
-
 
1393
                                            $minderung = 0;
-
 
1394
                                        }
-
 
1395
                                    }
-
 
1396
                                }
-
 
1397
                                if ( isset( $_POST['keine_bestandsaenderung'] ) or
-
 
1398
                                    isset( $_POST['gutschrift'] ) )
Zeile 1152... Zeile -...
1152
                            }
-
 
1153
                            if( isset($_POST['keine_bestandsaenderung']) or
-
 
1154
                                isset($_POST['gutschrift'])){
-
 
1155
                                $minderung = 0;
-
 
Zeile 1156... Zeile 1399...
1156
                            }
1399
                                {
1157
 
1400
                                    $minderung = 0;
1158
                            if ( $minderung == 1 )
1401
                                }
1159
                            {
1402
 
Zeile -... Zeile 1403...
-
 
1403
                                if ( $minderung == 1 )
-
 
1404
                                {
-
 
1405
 
-
 
1406
                                    $buchungstext =
-
 
1407
                                        'Buchung durchgeführt durch Rechnung ' .
1160
 
1408
                                        $r_nr . ' am ' . date( 'd.m.Y', time() );
1161
                                $buchungstext = 'Buchung durchgeführt durch Rechnung ' . $r_nr . ' am ' .
1409
                                    setBuchungFromBestellung( $_GET['b_id'], $buchungstext,
1162
                                    date( 'd.m.Y', time() );
1410
                                        $row_a['ID'], $menge * -1 );
-
 
1411
                                }
1163
                                setBuchungFromBestellung( $_GET['b_id'], $buchungstext, $row_a['ID'], $menge*-1 );
1412
                            }
1164
                            }
1413
 
1165
                        }
1414
                        }
1166
                        
1415
 
-
 
1416
 
1167
                    }
1417
                        $g_preis = $e_preis * $menge;
Zeile 1168... Zeile 1418...
1168
 
1418
                        $g_preis_n = $preis_n * $menge;
Zeile 1169... Zeile 1419...
1169
 
1419
                    }
-
 
1420
                }
1170
                    $g_preis = $e_preis * $menge;
1421
                else
1171
                    $g_preis_n = $preis_n * $menge;
1422
                {
1172
                }
1423
                    $mwst = 19;
1173
            }
1424
                    $preis_n = $e_preis - ( $e_preis * $mwst / ( 100 + $mwst ) );
1174
            else
1425
                    $g_preis = $e_preis * $menge;
1175
            {
1426
                    $g_preis_n = $preis_n * $menge;
1176
                $mwst = 19;
1427
                    $kennung = "";
-
 
1428
                    $a_name = $row["Bezeichnung"];
-
 
1429
                }
-
 
1430
                $summe_b[$mwst] += $g_preis;
1177
                $preis_n = $e_preis - ( $e_preis * $mwst / (100 + $mwst) );
1431
                $summe_n[$mwst] += $g_preis_n;
1178
                $g_preis = $e_preis * $menge;
-
 
1179
                $g_preis_n = $preis_n * $menge;
-
 
1180
                $kennung = "";
1432
                $h = $pdf->NbLines( 100, $a_name );
1181
                $a_name = $row["Bezeichnung"];
1433
                $h = 5 * $h;
1182
            }
1434
 
1183
            $summe_b[$mwst] += $g_preis;
1435
                $x = $pdf->GetX();
1184
            $summe_n[$mwst] += $g_preis_n;
1436
                $y = $pdf->GetY();
1185
            $h = $pdf->NbLines( 100, $a_name );
-
 
1186
            $h = 5 * $h;
-
 
1187
            
-
 
1188
            $x = $pdf->GetX();
-
 
1189
            $y = $pdf->GetY();
-
 
1190
 
-
 
1191
 
-
 
1192
            $pdf->Multicell( 10, $h, $pos, 1, "C" );
-
 
1193
            $pdf->SetXY( $x + 10, $y );
-
 
1194
            $x = $pdf->GetX();
-
 
1195
            $y = $pdf->GetY();
-
 
1196
 
-
 
1197
 
-
 
1198
            $pdf->Multicell( 15, $h, (is_numeric($pos)) ? str_replace(",00", "",
-
 
1199
                number_format($menge, 2, ',', '.')) : "", 1, "R" );
-
 
1200
            $pdf->SetXY( $x + 15, $y );
-
 
1201
            $x = $pdf->GetX();
-
 
1202
            $y = $pdf->GetY();
-
 
1203
 
-
 
1204
 
-
 
1205
            $pdf->Multicell( 20, $h, $kennung, 1, "C" );
-
 
1206
            $pdf->SetXY( $x + 20, $y );
-
 
1207
            $x = $pdf->GetX();
-
 
1208
            $y = $pdf->GetY();
-
 
1209
 
-
 
1210
            $pdf->Multicell( 100, 5, $a_name, 1, "L" );
-
 
1211
            $pdf->SetXY( $x + 100, $y );
-
 
1212
            $x = $pdf->GetX();
-
 
1213
            $y = $pdf->GetY();
1437
 
1214
 
-
 
1215
            if ( $showBruttoPreis == 1 )
-
 
1216
            {
-
 
1217
                $pdf->Multicell( 20, $h, number_format($preis_n, 2, ',', '.'), 1, "R" );
1438
 
1218
            }
-
 
1219
            else
-
 
1220
            {
1439
                $pdf->Multicell( 10, $h, $pos . ".", 1, "C" );
1221
                $pdf->Multicell( 20, $h, number_format($preis_n, 3, ',', '.'), 1, "R" );
-
 
1222
            }
1440
                $pdf->SetXY( $x + 10, $y );
1223
 
1441
                $x = $pdf->GetX();
1224
 
1442
                $y = $pdf->GetY();
1225
            $pdf->SetXY( $x + 20, $y );
1443
 
1226
 
1444
 
Zeile -... Zeile 1445...
-
 
1445
                $pdf->Multicell( 15, $h, ( ( is_numeric( $pos ) ) ? str_replace
-
 
1446
                    ( ",00", "", number_format( $menge, 2, ',', '.' ) ) : "" ) .
-
 
1447
                    " x", 1, "C" );
-
 
1448
                $pdf->SetXY( $x + 15, $y );
-
 
1449
                $x = $pdf->GetX();
-
 
1450
                $y = $pdf->GetY();
-
 
1451
 
-
 
1452
 
-
 
1453
                $pdf->Multicell( 20, $h, $kennung, 1, "C" );
-
 
1454
                $pdf->SetXY( $x + 20, $y );
-
 
1455
                $x = $pdf->GetX();
-
 
1456
                $y = $pdf->GetY();
-
 
1457
 
-
 
1458
                $pdf->Multicell( 100, 5, $a_name, 1, "L" );
-
 
1459
                $pdf->SetXY( $x + 100, $y );
-
 
1460
                $x = $pdf->GetX();
-
 
1461
                $y = $pdf->GetY();
-
 
1462
 
-
 
1463
                if ( $showBruttoPreis == 1 )
-
 
1464
                {
-
 
1465
                    $pdf->Multicell( 20, $h, number_format( $preis_n, 2, ',',
-
 
1466
                        '.' ), 1, "R" );
-
 
1467
                }
-
 
1468
                else
-
 
1469
                {
-
 
1470
                    $pdf->Multicell( 20, $h, number_format( $preis_n, 3, ',',
-
 
1471
                        '.' ), 1, "R" );
-
 
1472
                }
-
 
1473
 
1227
 
1474
 
1228
            $pdf->Multicell( 0, $h, number_format($g_preis_n, 2, ',', '.'), 1, "R" );
1475
                $pdf->SetXY( $x + 20, $y );
1229
            //$pdf->ln( 4 );
1476
 
1230
            if ( $Status )
-
 
1231
            {
1477
 
1232
                $sql_s =
-
 
1233
                    "UPDATE artikel_to_Bestellung SET rechnungStatus='geschrieben' WHERE ID=" .
-
 
1234
                    $row["ID"];
1478
                $pdf->Multicell( 0, $h, number_format( $g_preis_n, 2, ',', '.' ),
1235
                mysql_query_logged( $sql_s ) or die( mysql_errno() . ": " . mysql_error() );
-
 
1236
            }
-
 
1237
            $pos++;
1479
                    1, "R" );
1238
        }
1480
                //$pdf->ln( 4 );
1239
        
1481
                if ( $Status )
1240
        // ME: Prüfen, ob die Tabelle zahlungsarten existiert
-
 
1241
        $select_z = "";
1482
                {
1242
        $from_z = "";
-
 
1243
        $where_z = "";
-
 
1244
        if(table_exists('zahlungsarten',$webs["datenbank"])=="true") {
-
 
1245
            $zahlungsarten = 1;
-
 
Zeile -... Zeile 1483...
-
 
1483
                    $sql_s =
-
 
1484
                        "UPDATE artikel_to_Bestellung SET rechnungStatus='geschrieben' WHERE ID=" .
-
 
1485
                        $row["ID"];
-
 
1486
                    mysql_query_logged( $sql_s ) or die( mysql_errno() . ": " .
-
 
1487
                        mysql_error() );
-
 
1488
                }
-
 
1489
                $pos++;
-
 
1490
            }
-
 
1491
 
-
 
1492
            // ME: Prüfen, ob die Tabelle zahlungsarten existiert
-
 
1493
            $select_z = "";
-
 
1494
            $from_z = "";
-
 
1495
            $where_z = "";
-
 
1496
            
-
 
1497
            if ( table_exists( 'zahlungsarten', $webs["datenbank"], $localhost_dbh ) == "true" )
-
 
1498
            {
-
 
1499
                $zahlungsarten = 1;
-
 
1500
                $select_z = ",z.id as zahlungsarten_id";
-
 
1501
                $from_z = ", zahlungsarten z";
-
 
1502
                $where_z = " and z.interner_name = a.short_line_1";
-
 
1503
            }
1246
            $select_z = ",z.id as zahlungsart_id";
1504
            
Zeile 1247... Zeile 1505...
1247
            $from_z = ", zahlungsarten z";
1505
            $sql = "
-
 
1506
                SELECT 
-
 
1507
                    ab.*,
-
 
1508
                    a.short_line_1 as zahlart
-
 
1509
                    " . $select_z . "
-
 
1510
                FROM 
-
 
1511
                    artikel_to_Bestellung ab,
-
 
1512
                    " . artikelDatabase( $row_b["shops_ID"] ) . " a
-
 
1513
                    " . $from_z . "
-
 
1514
                WHERE 
-
 
1515
                    Bestellung=$b_id 
-
 
1516
                AND 
-
 
1517
                    ab.status!='storniert'
-
 
1518
                AND
-
 
1519
                    a.ID=ab.artikel
-
 
1520
                AND
-
 
1521
                    a.Father=-3
-
 
1522
                " . $where_z . "
-
 
1523
                ORDER BY 
-
 
1524
                    Rang,
-
 
1525
                    ab.Bezeichnung 
1248
            $where_z = " and z.interner_name = a.short_line_1";
1526
                    
-
 
1527
            ";
-
 
1528
            
1249
        }
1529
            $res = mysql_query_logged( $sql ) or mail( "niewerth@weban.de",
-
 
1530
                "Fehler in createMailOrderText.php", mysql_errno() . ": " .
-
 
1531
                mysql_error() . "<hr>$query<hr>",
1250
        $sql = "
1532
                "from: cms_Warenwirtschaft_rechung.php select artikel_to_Bestellung" );
-
 
1533
 
-
 
1534
            if ( mysql_num_rows( $res ) )
-
 
1535
            {
-
 
1536
                $row = mysql_fetch_assoc( $res );
-
 
1537
                $menge = $row["Menge"];
-
 
1538
                $e_preis = $row["Preis_pro_Stueck"];
-
 
1539
                if ( $zahlungsarten == 1 )
-
 
1540
                {
-
 
1541
                    $zahlungsarten_id = $row['zahlungsarten_id'];
-
 
1542
                }
1251
            SELECT 
1543
 
1252
                ab.*,
1544
                if ( $row["artikel"] != 999999 )
1253
                a.short_line_1 as zahlart
1545
                {
1254
                ".$select_z."
1546
                    $sql_a = "SELECT 
1255
            FROM 
-
 
1256
                artikel_to_Bestellung ab,
-
 
1257
                " . artikelDatabase( $row_b["shops_ID"] ) . " a
-
 
1258
                ".$from_z."
1547
                            * 
1259
            WHERE 
1548
                        FROM 
1260
                Bestellung=$b_id 
1549
                            " . artikelDatabase( $row_b["shops_ID"] ) . " 
-
 
1550
                        WHERE 
-
 
1551
                            ID=" . $row["artikel"] . "
-
 
1552
                    ";
Zeile -... Zeile 1553...
-
 
1553
                    $res_a = mysql_query( $sql_a ) or die( mysql_errno() . ": " .
-
 
1554
                        mysql_error() );
-
 
1555
                    if ( !$res_a )
-
 
1556
                    {
-
 
1557
                        echo mysql_error() . "<br>$sql_a";
Zeile 1261... Zeile -...
1261
            AND 
-
 
1262
                ab.status!='storniert'
1558
                        var_dump( $row );
1263
            AND
1559
                    }
-
 
1560
                    $row_a = mysql_fetch_assoc( $res_a );
1264
                a.ID=ab.artikel
1561
                    $kennung = $row_a["kennung"];
1265
            AND
1562
                    $mwst = ( $row["mwst"] != "0.00" && !empty( $row["mwst"] ) ) ?
1266
                a.Father=-3
1563
                        $row["mwst"] : $mwst_arr[$row_a["tax1"]];
1267
            ".$where_z."
-
 
1268
            ORDER BY 
-
 
1269
                Rang, 
1564
 
1270
                Bezeichnung
-
 
1271
        ";
-
 
1272
        
1565
                    $preis_n = $e_preis - ( $e_preis * $mwst / ( 100 + $mwst ) );
1273
        $res = mysql_query_logged( $sql ) or mail( "niewerth@weban.de",
-
 
1274
            "Fehler in createMailOrderText.php", mysql_errno() . ": " . mysql_error() .
-
 
1275
            "<hr>$query<hr>",
-
 
1276
            "from: cms_Warenwirtschaft_rechung.php select artikel_to_Bestellung" );
-
 
1277
 
1566
 
1278
        if ( mysql_num_rows($res) )
-
 
1279
        {
-
 
1280
            $row = mysql_fetch_assoc( $res );
-
 
1281
            $menge = $row["Menge"];
-
 
1282
            $e_preis = $row["Preis_pro_Stueck"];
-
 
1283
            if($zahlungsarten==1) {
1567
                    if ( $showBruttoPreis == 1 )
1284
                $zahlungsart_id = $row['zahlungsart_id'];
1568
                    {
-
 
1569
                        $preis_n = $e_preis;
1285
            }
1570
                    }
-
 
1571
                    if ( $row_a["Father"] == -3 )
1286
            
1572
                    {
1287
            if ( $row["artikel"] != 999999 )
1573
                        $versandname = $row["Bezeichnung"];
1288
            {
1574
                        $pos = "";
-
 
1575
                        $menge = "";
1289
                $sql_a = "SELECT 
1576
                        $g_preis = $e_preis;
-
 
1577
                        $g_preis_n = $preis_n;
1290
                        * 
1578
                    }
Zeile 1291... Zeile -...
1291
                    FROM 
-
 
1292
                        " . artikelDatabase( $row_b["shops_ID"] ) . " 
-
 
1293
                    WHERE 
-
 
1294
                        ID=" . $row["artikel"] . "
-
 
1295
                ";
-
 
1296
                $res_a = mysql_query( $sql_a ) or die( mysql_errno() . ": " . mysql_error() );
-
 
1297
                if ( !$res_a )
-
 
1298
                {
-
 
1299
                    echo mysql_error() . "<br>$sql_a";
-
 
1300
                    var_dump( $row );
-
 
1301
                }
-
 
1302
                $row_a = mysql_fetch_assoc( $res_a );
-
 
1303
                $kennung = $row_a["kennung"];
-
 
1304
                $mwst = ( $row["mwst"] != "0.00" && !empty($row["mwst"]) ) ? $row["mwst"] :
1579
                    else
1305
                    $mwst_arr[$row_a["tax1"]];
-
 
1306
 
-
 
1307
                $preis_n = $e_preis - ( $e_preis * $mwst / (100 + $mwst) );
-
 
1308
 
-
 
1309
                if ( $showBruttoPreis == 1 )
-
 
1310
                {
-
 
1311
                    $preis_n = $e_preis;
-
 
1312
                }
-
 
1313
                if ( $row_a["Father"] == -3 )
-
 
1314
                {
-
 
1315
                    $versandname = $row["Bezeichnung"];
-
 
1316
                    $pos = "";
-
 
1317
                    $menge = "";
1580
                    {
1318
                    $g_preis = $e_preis;
1581
 
1319
                    $g_preis_n = $preis_n;
-
 
1320
                }
-
 
1321
                else
1582
 
1322
                {
1583
                        $g_preis = $e_preis * $menge;
1323
 
1584
                        $g_preis_n = $preis_n * $menge;
1324
 
1585
                    }
1325
                    $g_preis = $e_preis * $menge;
1586
                }
-
 
1587
                else
-
 
1588
                {
1326
                    $g_preis_n = $preis_n * $menge;
1589
                    $mwst = 19;
1327
                }
1590
                    $preis_n = $e_preis - ( $e_preis * $mwst / ( 100 + $mwst ) );
Zeile 1328... Zeile 1591...
1328
            }
1591
                    $g_preis = $e_preis * $menge;
1329
            else
1592
                    $g_preis_n = $preis_n * $menge;
1330
            {
1593
                    $kennung = "";
-
 
1594
                }
1331
                $mwst = 19;
1595
                $summe_b[$mwst] += $g_preis;
1332
                $preis_n = $e_preis - ( $e_preis * $mwst / (100 + $mwst) );
1596
                $summe_n[$mwst] += $g_preis_n;
Zeile 1333... Zeile 1597...
1333
                $g_preis = $e_preis * $menge;
1597
                $a_name = $row["Bezeichnung"];
1334
                $g_preis_n = $preis_n * $menge;
1598
 
Zeile 1335... Zeile 1599...
1335
                $kennung = "";
1599
                $pdf->SetX( $Einzug );
-
 
1600
                $pdf->cell( 10, 4, $pos, 1, 0, "C" );
1336
            }
1601
                $pdf->cell( 15, 4, ( is_numeric( $pos ) ) ? number_format( $menge,
1337
            $summe_b[$mwst] += $g_preis;
-
 
Zeile 1338... Zeile 1602...
1338
            $summe_n[$mwst] += $g_preis_n;
1602
                    2, ',', '.' ) : "", 1, 0, "R" );
1339
            $a_name = $row["Bezeichnung"];
1603
                $pdf->cell( 20, 4, $kennung, 1, 0, "C" );
1340
 
1604
                $pdf->cell( 100, 4, $a_name, 1, 0, "L", 0, "", 0, 0 );
Zeile 1341... Zeile 1605...
1341
            $pdf->SetX( $Einzug );
1605
                if ( $showBruttoPreis == 1 )
1342
            $pdf->cell( 10, 4, $pos, 1, 0, "C" );
1606
                {
1343
            $pdf->cell( 15, 4, (is_numeric($pos)) ? number_format($menge, 2, ',', '.') :
-
 
1344
                "", 1, 0, "R" );
-
 
1345
            $pdf->cell( 20, 4, $kennung, 1, 0, "C" );
1607
                    $pdf->cell( 20, 4, number_format( $preis_n, 2, ',', '.' ), 1,
1346
            $pdf->cell( 100, 4, $a_name, 1, 0, "L", 0, "", 0, 0 );
1608
                        0, "R" );
1347
            if ( $showBruttoPreis == 1 )
1609
                }
-
 
1610
                else
-
 
1611
                {
1348
            {
1612
                    $pdf->cell( 20, 4, number_format( $preis_n, 3, ',', '.' ), 1,
1349
                $pdf->cell( 20, 4, number_format($preis_n, 2, ',', '.'), 1, 0, "R" );
1613
                        0, "R" );
Zeile 1350... Zeile 1614...
1350
            }
1614
                }
-
 
1615
 
1351
            else
1616
                $pdf->cell( 0, 4, number_format( $g_preis_n, 2, ',', '.' ), 1, 0,
Zeile 1352... Zeile 1617...
1352
            {
1617
                    "R" );
1353
                $pdf->cell( 20, 4, number_format($preis_n, 3, ',', '.'), 1, 0, "R" );
1618
                $pdf->ln( 4 );
Zeile 1354... Zeile 1619...
1354
            }
1619
                $pos++;
-
 
1620
            }
1355
 
1621
 
1356
            $pdf->cell( 0, 4, number_format($g_preis_n, 2, ',', '.'), 1, 0, "R" );
1622
            foreach ( $summe_n as $mwst => $betrag )
1357
            $pdf->ln( 4 );
-
 
1358
            $pos++;
1623
            {
1359
        }
-
 
1360
 
-
 
1361
        foreach ( $summe_n as $mwst => $betrag )
-
 
1362
        {
-
 
1363
            $summe_n["total"] += $betrag;
-
 
1364
        }
-
 
1365
        foreach ( $summe_b as $mwst => $betrag )
-
 
1366
        {
-
 
1367
            $summe_b["total"] += $betrag;
-
 
1368
        }
-
 
1369
        $pdf->SetX( $Einzug );
-
 
1370
        if ( $showBruttoPreis == 1 )
-
 
1371
        {
-
 
1372
            $pdf->cell( 165, 4, "Gesamt Brutto", 1, 0, "L" );
-
 
1373
            $pdf->cell( 0, 4, number_format($summe_b["total"], 2, ',', '.'), 1, 1, "R" );
-
 
1374
        }
-
 
1375
        else
-
 
1376
        {
-
 
1377
            $pdf->cell( 165, 4, "Gesamt Netto", 1, 0, "L" );
-
 
1378
            $pdf->cell( 0, 4, number_format($summe_n["total"], 2, ',', '.'), 1, 1, "R" );
-
 
1379
        }
-
 
1380
 
-
 
1381
        $pdf->SetX( $Einzug );
-
 
1382
        // Mehrwertsteuer Ausgabe bei Bruttoberechnung
-
 
1383
        if ( $showBruttoPreis == 1 )
-
 
1384
        {
-
 
1385
            foreach ( $summe_b as $mwst => $betrag )
-
 
1386
            {
-
 
1387
                if ( $mwst != "total" )
-
 
1388
                {
-
 
1389
                    if ( $mwst_befreiung == 'on' )
-
 
1390
                    {
-
 
1391
                        $mwst = 0.00;
1624
                $summe_n["total"] += $betrag;
-
 
1625
            }
-
 
1626
            foreach ( $summe_b as $mwst => $betrag )
-
 
1627
            {
1392
                    }
1628
                $summe_b["total"] += $betrag;
-
 
1629
            }
-
 
1630
            $pdf->SetX( $Einzug );
-
 
1631
            if ( $showBruttoPreis == 1 )
1393
 
1632
            {
-
 
1633
                $pdf->cell( 165, 4, "Gesamt Brutto", 1, 0, "L" );
-
 
1634
                $pdf->cell( 0, 4, number_format( $summe_b["total"], 2, ',', '.' ),
-
 
1635
                    1, 1, "R" );
1394
                    if ( $showBruttoPreis == 1 )
1636
            }
-
 
1637
            else
-
 
1638
            {
1395
                    {
1639
                $pdf->cell( 165, 4, "Gesamt Netto", 1, 0, "L" );
-
 
1640
                $pdf->cell( 0, 4, number_format( $summe_n["total"], 2, ',', '.' ),
-
 
1641
                    1, 1, "R" );
-
 
1642
            }
-
 
1643
 
-
 
1644
            $pdf->SetX( $Einzug );
-
 
1645
            // Mehrwertsteuer Ausgabe bei Bruttoberechnung
-
 
1646
            if ( $showBruttoPreis == 1 )
-
 
1647
            {
1396
                        $pdf->cell( 165, 4, "inkl. $mwst % MwSt. in " . number_format($betrag, 2,
1648
                foreach ( $summe_b as $mwst => $betrag )
1397
                            ',', '.') . " €", "LBT", 0, "L" );
1649
                {
1398
                    }
1650
                    if ( $mwst != "total" )
1399
 
-
 
1400
 
-
 
1401
                    $pdf->cell( 0, 4, number_format($betrag * $mwst / (100 + $mwst), 2, ',', '.'),
-
 
1402
                        1, 1, "R" );
-
 
1403
 
-
 
1404
 
-
 
1405
                    define( 'MWST', $mwst );
-
 
Zeile 1406... Zeile -...
1406
                }
-
 
1407
            }
1651
                    {
1408
 
1652
                        if ( $mwst_befreiung == 'on' )
-
 
1653
                        {
-
 
1654
                            $mwst = 0.00;
-
 
1655
                        }
-
 
1656
 
-
 
1657
                        if ( $showBruttoPreis == 1 )
-
 
1658
                        {
-
 
1659
                            $pdf->cell( 165, 4, "inkl. $mwst % MwSt. auf " .
-
 
1660
                                number_format( $betrag / 1.19, 2, ',', '.' ) .
1409
        }
1661
                                " € ( = Nettorechnungsbetrag)", "LBT", 0, "L" );
-
 
1662
                        }
1410
        else
1663
 
-
 
1664
 
-
 
1665
                        $pdf->cell( 0, 4, number_format( $betrag * $mwst / ( 100 +
1411
        {
1666
                            $mwst ), 2, ',', '.' ), 1, 1, "R" );
-
 
1667
 
1412
 
1668
 
1413
 
1669
                        define( 'MWST', $mwst );
-
 
1670
                    }
1414
            // Mehrwertsteuer Ausgabe bei Nettoberechnung
1671
                }
1415
            foreach ( $summe_n as $mwst => $betrag )
1672
 
1416
            {
1673
            }
1417
                if ( $mwst != "total" )
1674
            else
1418
                {
-
 
1419
                    if ( $mwst_befreiung == 'on' )
-
 
1420
                    {
1675
            {
1421
                        $mwst = 0.00;
1676
 
1422
                    }
1677
 
-
 
1678
                // Mehrwertsteuer Ausgabe bei Nettoberechnung
-
 
1679
                foreach ( $summe_n as $mwst => $betrag )
-
 
1680
                {
-
 
1681
                    if ( $mwst != "total" )
-
 
1682
                    {
-
 
1683
                        if ( $mwst_befreiung == 'on' )
-
 
1684
                        {
-
 
1685
                            $mwst = 0.00;
-
 
1686
                        }
-
 
1687
 
1423
 
1688
                        $pdf->cell( 165, 4, "zzgl. $mwst % MwSt. auf " .
1424
                    $pdf->cell( 165, 4, "zzgl. $mwst % MwSt. auf " . number_format($betrag, 2,
1689
                            number_format( $betrag, 2, ',', '.' ) . " €", "LBT",
-
 
1690
                            0, "L" );
1425
                        ',', '.') . " €", "LBT", 0, "L" );
1691
 
1426
 
1692
                        $pdf->cell( 0, 4, number_format( $betrag * $mwst / 100,
1427
                    $pdf->cell( 0, 4, number_format($betrag * $mwst / 100, 2, ',', '.'), 1, 1,
-
 
Zeile 1428... Zeile 1693...
1428
                        "R" );
1693
                            2, ',', '.' ), 1, 1, "R" );
1429
 
1694
 
1430
                    define( 'MWST', $mwst );
1695
                        define( 'MWST', $mwst );
1431
                }
1696
                    }
1432
            }
1697
                }
1433
        }
-
 
1434
        $pdf->setFont( 'Arial', 'B', 12 );
-
 
1435
        $pdf->SetX( $Einzug );
1698
            }
1436
        // Ist Summe-Brutto kleiner als 0, wird der 'Gesamtbetrag' umbenannt in 'Gutschriftsbetrag'
1699
            $pdf->setFont( 'Arial', 'B', 12 );
1437
        if ( $summe_b["total"] < 0 )
-
 
1438
        {
1700
            $pdf->SetX( $Einzug );
1439
            $pdf->cell( 165, 8, "Gutschriftsbetrag", "LBR", 0, "L" );
-
 
1440
        }
-
 
1441
        else
1701
            // Ist Summe-Brutto kleiner als 0, wird der 'Gesamtbetrag' umbenannt in 'Gutschriftsbetrag'
1442
        {
1702
            if ( $summe_b["total"] < 0 )
1443
            $pdf->cell( 165, 8, "Gesamtbetrag", "LBR", 0, "L" );
1703
            {
-
 
1704
                $pdf->cell( 165, 8, "Gutschriftsbetrag", "LBR", 0, "L" );
1444
        }
1705
            }
Zeile 1445... Zeile -...
1445
 
-
 
1446
        // Wenn die MwSt-Befreiung gesetzt ist, gebe als Gesamtbetrag die Summe als Netto aus, ansonsten mit Brutto
1706
            else
1447
        $pdf->SetX( $Einzug );
-
 
1448
        if ( $mwst_befreiung == 'on' )
1707
            {
1449
        {
1708
                $pdf->cell( 165, 8, "Gesamtbetrag", "LBR", 0, "L" );
1450
            $pdf->cell( 0, 8, number_format($summe_n["total"], 2, ',', '.'), "LBR", 1,
1709
            }
1451
                "R" );
1710
 
Zeile -... Zeile 1711...
-
 
1711
            // Wenn die MwSt-Befreiung gesetzt ist, gebe als Gesamtbetrag die Summe als Netto aus, ansonsten mit Brutto
-
 
1712
            $pdf->SetX( $Einzug );
-
 
1713
            if ( $mwst_befreiung == 'on' )
1452
        }
1714
            {
1453
        else
1715
                $pdf->cell( 0, 8, number_format( $summe_n["total"], 2, ',', '.' ),
-
 
1716
                    "LBR", 1, "R" );
-
 
1717
            }
-
 
1718
            else
1454
        {
1719
            {
1455
            $pdf->cell( 0, 8, number_format($summe_b["total"], 2, ',', '.'), "LBR", 1,
1720
                $pdf->cell( 0, 8, number_format( $summe_b["total"], 2, ',', '.' ),
1456
                "R" );
1721
                    "LBR", 1, "R" );
1457
        }
1722
            }
-
 
1723
 
-
 
1724
            $pdf->SetX( $Einzug );
1458
 
1725
            $pdf->cell( 0, 8, "", "T", 1 );
1459
        $pdf->SetX( $Einzug );
1726
            $pdf->setFont( 'Arial', '', 9.5 );
-
 
1727
 
1460
        $pdf->cell( 0, 8, "", "T", 1 );
1728
            if ( $row_b["Bemerkung_extern"] && BEMERKUNG2_DRUCKEN )
1461
        $pdf->setFont( 'Arial', '', 9.5 );
1729
            {
1462
 
1730
 
1463
        if ( $row_b["Bemerkung_extern"] && BEMERKUNG2_DRUCKEN )
-
 
1464
        {
1731
                // externe Bemerkung
Zeile 1465... Zeile -...
1465
 
-
 
1466
            // externe Bemerkung
1732
                $pdf->SetX( $Einzug );
1467
            $pdf->SetX( $Einzug );
1733
                $pdf->multiCell( 35, 4, "", 0, 0, "L" );
1468
            $pdf->multiCell( 35, 4, "", 0, 0, "L" );
-
 
1469
            $pdf->setFont( 'Arial', 'B', 9.5 );
1734
                $pdf->setFont( 'Arial', 'B', 9.5 );
1470
            $pdf->SetX( $Einzug );
1735
                $pdf->SetX( $Einzug );
1471
            $pdf->multiCell( 0, 4, $row_b["Bemerkung_extern"], 0, 1, "L" );
1736
                $pdf->multiCell( 0, 4, $row_b["Bemerkung_extern"], 0, 1, "L" );
1472
            $pdf->SetX( $Einzug );
-
 
1473
            $pdf->multiCell( 0, 4, " ", 0, 1, "L" );
1737
                $pdf->SetX( $Einzug );
1474
            $pdf->setFont( 'Arial', '', 9.5 );
1738
                $pdf->multiCell( 0, 4, " ", 0, 1, "L" );
1475
        }
1739
                $pdf->setFont( 'Arial', '', 9.5 );
1476
 
1740
            }
1477
        // MwSt.-Befreiung Zusatztext
-
 
1478
        $pdf->SetX( $Einzug );
-
 
Zeile 1479... Zeile 1741...
1479
        if ( $mwst_befreiung == 'on' )
1741
 
1480
        {
1742
            // MwSt.-Befreiung Zusatztext
1481
            $pdf->setFont( 'Arial', 'B', 10 );
-
 
1482
 
-
 
1483
            // Wenn das Land 'Deutschland' oder Leer ist, dann gebe speziellen Text aus
-
 
1484
            if ( $row_l['Land'] == 'Deutschland' || empty($row_l['Land']) )
-
 
1485
            {
1743
            $pdf->SetX( $Einzug );
1486
                $pdf->multiCell( 0, 4, "Deutschland nach §4", "", 1 );
1744
            if ( $mwst_befreiung == 'on' )
1487
            }
1745
            {
1488
            else
1746
                $pdf->setFont( 'Arial', 'B', 10 );
1489
            {
1747
 
1490
                // Wenn UST.IdNr. gesetzt ist   => EU-Inland
1748
                // Wenn das Land 'Deutschland' oder Leer ist, dann gebe speziellen Text aus
Zeile -... Zeile 1749...
-
 
1749
                if ( $row_l['Land'] == 'Deutschland' || empty( $row_l['Land'] ) )
-
 
1750
                {
-
 
1751
                    $pdf->multiCell( 0, 4, "Deutschland nach §4", "", 1 );
-
 
1752
                }
-
 
1753
                else
-
 
1754
                {
-
 
1755
                    // Wenn UST.IdNr. gesetzt ist   => EU-Inland
-
 
1756
                    // Wenn nicht gesetzt ist       => EU-Ausland
-
 
1757
                    if ( $ustid_nr )
-
 
1758
                    {
-
 
1759
                        $pdf->multiCell( 0, 4,
-
 
1760
                            "Der Rechnungsempfänger ist Steuerschuldner gem. § 13b UStG.\nUSt. ID Nr. vom Leistungsempfänger ist: $ustid_nr\nUSt. ID Nr. vom Leistungserbringer ist: $haendler_ust_id",
-
 
1761
                            "", 1 );
-
 
1762
                    }
-
 
1763
                    else
-
 
1764
                    {
-
 
1765
                        $pdf->multiCell( 0, 4, "ACHTUNG:\n\nES HANDELT SICH UM EINE STEUERFREIE AUSLIEFERUNG IN EIN DRITTLAND GEM:.§4Nr. 1A USTG",
Zeile 1491... Zeile -...
1491
                // Wenn nicht gesetzt ist       => EU-Ausland
-
 
1492
                if ( $ustid_nr )
-
 
1493
                {
-
 
1494
                    $pdf->multiCell( 0, 4,
-
 
1495
                        "Der Rechnungsempfänger ist Steuerschuldner gem. § 13b UStG.\nUSt. ID Nr. vom Leistungsempfänger ist: $ustid_nr\nUSt. ID Nr. vom Leistungserbringer ist: $haendler_ust_id",
-
 
1496
                        "", 1 );
-
 
1497
                }
-
 
1498
                else
-
 
1499
                {
-
 
1500
                    $pdf->multiCell( 0, 4, "ACHTUNG:\n\nES HANDELT SICH UM EINE STEUERFREIE AUSLIEFERUNG IN EIN DRITTLAND GEM:.§4Nr. 1A USTG",
-
 
1501
                        "", 1 );
-
 
1502
                }
-
 
Zeile -... Zeile 1766...
-
 
1766
                            "", 1 );
-
 
1767
                    }
-
 
1768
                }
-
 
1769
            }
-
 
1770
 
-
 
1771
            $pdf->setFont( 'Arial', '', 9.5 );
-
 
1772
            $pdf->SetX( $Einzug );
-
 
1773
            if ( VERSAND_ANZEIGEN )
-
 
1774
            {
-
 
1775
                if ( $gutschrift == 1 )
-
 
1776
                {
-
 
1777
                    $pdf->multiCell( 0, 4, "\r\nGutschrift", 0, 1, "L" );
-
 
1778
                }
-
 
1779
                else
-
 
1780
                {
-
 
1781
                    $pdf->multiCell( 0, 4, "\r\nZahlung: $versandname\n$zahlungs_hinweis",
-
 
1782
                        0, 1, "L" );
Zeile 1503... Zeile -...
1503
            }
-
 
Zeile -... Zeile 1783...
-
 
1783
                }
-
 
1784
 
1504
        }
1785
            }
-
 
1786
            else
1505
 
1787
            {
1506
        $pdf->setFont( 'Arial', '', 9.5 );
1788
                $pdf->multiCell( 0, 4, "\r\n$zahlungs_hinweis", 0, 1, "L" );
1507
        $pdf->SetX( $Einzug );
1789
            }
-
 
1790
 
1508
        if ( VERSAND_ANZEIGEN )
1791
            // START die Anzeige der ausgewählten Rechnungsbausteine
1509
        {
1792
            $pdf->SetX( $Einzug );
1510
            if($gutschrift==1) {
1793
            if ( ( $web_rechte["Warenwirtschaft"]["bestellung"]["rechnungsbausteine"] ) and
1511
                $pdf->multiCell( 0, 4, "\r\nGutschrift", 0, 1,
1794
                ( $_POST['action'] == "genPDF" ) )
1512
                "L" );
-
 
1513
            }else{
1795
            {
1514
                $pdf->multiCell( 0, 4, "\r\nZahlung: $versandname\n$zahlungs_hinweis", 0, 1,
-
 
1515
                "L" );    
-
 
1516
            }
-
 
1517
            
-
 
1518
        }
-
 
1519
        else
-
 
1520
        {
-
 
1521
            $pdf->multiCell( 0, 4, "\r\n$zahlungs_hinweis", 0, 1, "L" );
-
 
1522
        }
-
 
Zeile 1523... Zeile -...
1523
 
-
 
1524
        // START die Anzeige der ausgewählten Rechnungsbausteine
-
 
1525
        $pdf->SetX( $Einzug );
1796
                //$pdf->multiCell( 0, 4, "Bemerkung:", 0, 1, "L" );
1526
        if ( ($web_rechte["Warenwirtschaft"]["bestellung"]["rechnungsbausteine"]) and
1797
                //$pdf->setFont( 'Arial', '', 9.5 );
1527
            ($_POST['action'] == "genPDF") )
-
 
1528
        {
1798
 
1529
            //$pdf->multiCell( 0, 4, "Bemerkung:", 0, 1, "L" );
1799
                if ( is_array( $_POST['baustein'] ) )
1530
            //$pdf->setFont( 'Arial', '', 9.5 );
1800
                {
1531
 
1801
                    foreach ( $_POST['baustein'] as $kk => $vv )
-
 
1802
                    {
Zeile 1532... Zeile -...
1532
            if ( is_array($_POST['baustein']) )
-
 
1533
            {
-
 
1534
                foreach ( $_POST['baustein'] as $kk => $vv )
-
 
1535
                {
-
 
1536
                    if ( $vv != "keine Bestandsminderung" )
-
 
1537
                    {
-
 
1538
                        $pdf->multiCell( 0, 4, $vv, 0, 1, "L" );
-
 
1539
                        $pdf->setFont( 'Arial', '', 9.5 );
-
 
1540
                    }
-
 
1541
                }
-
 
1542
            }
-
 
1543
        }
-
 
1544
        // ENDE die Anzeige der ausgewählten Rechnungsbausteine
-
 
1545
 
-
 
1546
 
-
 
1547
        
-
 
1548
        // ME: START Vorbereitung der Ausgabe des Zahlungsziels auf der Rechnung 
-
 
1549
        if ( isset($web_rechte["Warenwirtschaft"]["rechnungsbuch"]["zahlungsziel"]) ) {
-
 
1550
            if ( $_POST['action'] == "genPDF" )
-
 
1551
            {
-
 
1552
                if ( $_POST['zahlungsziel'] )
-
 
1553
                {
-
 
1554
                    $sql = "select * from zahlungsziele where id=" . $_POST['zahlungsziel'] . "";
-
 
1555
                    if ( $q = mysql_query($sql) )
-
 
1556
                    {
-
 
1557
                        if ( $r = mysql_fetch_assoc($q) )
-
 
1558
                        {
-
 
Zeile -... Zeile 1803...
-
 
1803
                        if ( $vv != "keine Bestandsminderung" )
-
 
1804
                        {
-
 
1805
                            $pdf->multiCell( 0, 4, $vv, 0, 1, "L" );
1559
                            $zieltage = date('d.m.Y', strtotime('+'.$r['zieltage'].' days'));
1806
                            $pdf->setFont( 'Arial', '', 9.5 );
1560
                            $serArr['ziel'] = strtotime('+'.$r['zieltage'].' days');
1807
                        }
1561
                            
1808
                    }
1562
                            // SKONTO 1                        
1809
                }
-
 
1810
            }
-
 
1811
            // ENDE die Anzeige der ausgewählten Rechnungsbausteine
Zeile 1563... Zeile 1812...
1563
                            if($r['skonto1']>0) {
1812
 
1564
                                $skonto1 = $r['skonto1'];
1813
 
Zeile 1565... Zeile 1814...
1565
                                $serArr['skonto1'] = $skonto1;
1814
            // ME: START Vorbereitung der Ausgabe des Zahlungsziels auf der Rechnung
-
 
1815
            if ( isset( $web_rechte["Warenwirtschaft"]["rechnungsbuch"]["zahlungsziel"] ) )
-
 
1816
            {
-
 
1817
                if ( $_POST['action'] == "genPDF" )
-
 
1818
                {
-
 
1819
                    if ( $_POST['zahlungsziel'] )
-
 
1820
                    {
-
 
1821
                        $sql = "select * from zahlungsziele where id=" . $_POST['zahlungsziel'] .
-
 
1822
                            "";
-
 
1823
                            
-
 
1824
                        if ( $q = mysql_query( $sql ) )
-
 
1825
                        {
-
 
1826
                            if ( $r = mysql_fetch_assoc( $q ) )
1566
                                $sk1 = $summe_b['total'] * ($skonto1 / 100);
1827
                            {
-
 
1828
                                $zieltage = date( 'd.m.Y', strtotime( '+' . $r['zieltage'] .
-
 
1829
                                    ' days' ) );
-
 
1830
                                $serArr['ziel'] = strtotime( '+' . $r['zieltage'] .
-
 
1831
                                    ' days' );
-
 
1832
 
-
 
1833
                                // SKONTO 1
-
 
1834
                                if ( $r['skonto1'] > 0 )
-
 
1835
                                {
-
 
1836
                                    $skonto1 = $r['skonto1'];
-
 
1837
                                    $serArr['skonto1'] = $skonto1;
-
 
1838
                                    $sk1 = $summe_b['total'] * ( $skonto1 / 100 );
-
 
1839
                                    $skontobetrag1 = number_format( $sk1, 2, ",",
Zeile -... Zeile 1840...
-
 
1840
                                        "." );
-
 
1841
                                    $serArr['skontobetrag1'] = $sk1;
1567
                                $skontobetrag1 = number_format( $sk1 ,2,",","." );
1842
                                }
1568
                                $serArr['skontobetrag1'] = $sk1;                            
1843
                                if ( $r['zieltageskonto1'] > 0 )
Zeile 1569... Zeile 1844...
1569
                            }
1844
                                {
1570
                            if($r['zieltageskonto1']>0) {
1845
                                    $zieltageskonto1 = date( 'd.m.Y', strtotime
Zeile 1571... Zeile 1846...
1571
                                $zieltageskonto1 = date('d.m.Y', strtotime('+'.$r['zieltageskonto1'].' days'));
1846
                                        ( '+' . $r['zieltageskonto1'] . ' days' ) );
1572
                                $serArr['zielskonto1'] = strtotime('+'.$r['zieltageskonto1'].' days');    
1847
                                    $serArr['zielskonto1'] = strtotime( '+' . $r['zieltageskonto1'] .
Zeile 1573... Zeile 1848...
1573
                            }
1848
                                        ' days' );
1574
 
1849
                                }
Zeile 1575... Zeile 1850...
1575
 
1850
 
1576
                            // SKONTO 2
1851
 
Zeile 1577... Zeile -...
1577
                            if($r['skonto2']>0) {
-
 
1578
                                $skonto2 = $r['skonto2'];
-
 
1579
                                $serArr['skonto2'] = $skonto2;
-
 
1580
                                $sk2 = $summe_b['total'] * ($skonto2 / 100);
1852
                                // SKONTO 2
1581
                                $skontobetrag2 = number_format( $sk2 ,2,",","." );
-
 
1582
                                $serArr['skontobetrag2'] = $sk2;                            
1853
                                if ( $r['skonto2'] > 0 )
1583
                            }
-
 
Zeile 1584... Zeile 1854...
1584
                            if($r['zieltageskonto2']>0) {
1854
                                {
1585
                                $zieltageskonto2 = date('d.m.Y', strtotime('+'.$r['zieltageskonto2'].' days'));
-
 
1586
                                $serArr['zielskonto2'] = strtotime('+'.$r['zieltageskonto2'].' days');    
1855
                                    $skonto2 = $r['skonto2'];
1587
                            }
-
 
Zeile 1588... Zeile 1856...
1588
 
1856
                                    $serArr['skonto2'] = $skonto2;
1589
 
-
 
1590
                            $serArr['bruttobetrag'] = $summe_b['total'];
1857
                                    $sk2 = $summe_b['total'] * ( $skonto2 / 100 );
1591
 
-
 
1592
                            @eval( "\$rechnungsbaustein_int=\"" . addslashes($r["rechnungsbaustein"]) . "\";" );
-
 
Zeile -... Zeile 1858...
-
 
1858
                                    $skontobetrag2 = number_format( $sk2, 2, ",",
-
 
1859
                                        "." );
1593
                            
1860
                                    $serArr['skontobetrag2'] = $sk2;
-
 
1861
                                }
1594
                            $zz_text = $rechnungsbaustein_int;
1862
                                if ( $r['zieltageskonto2'] > 0 )
-
 
1863
                                {
-
 
1864
                                    $zieltageskonto2 = date( 'd.m.Y', strtotime
Zeile 1595... Zeile 1865...
1595
                            
1865
                                        ( '+' . $r['zieltageskonto2'] . ' days' ) );
1596
                        }
1866
                                    $serArr['zielskonto2'] = strtotime( '+' . $r['zieltageskonto2'] .
1597
                    }
1867
                                        ' days' );
-
 
1868
                                }
Zeile 1598... Zeile -...
1598
                }
-
 
1599
            }
1869
 
1600
        }
1870
 
1601
        // ME: ENDE Vorbereitung der Ausgabe des Zahlungsziels auf der Rechnung
1871
                                $serArr['bruttobetrag'] = $summe_b['total'];
-
 
1872
 
1602
        
1873
                                @eval( "\$rechnungsbaustein_int=\"" . addslashes
-
 
1874
                                    ( $r["rechnungsbaustein"] ) . "\";" );
-
 
1875
 
-
 
1876
                                $zz_text = $rechnungsbaustein_int;
-
 
1877
 
-
 
1878
                            }
-
 
1879
                        }
-
 
1880
                    }
-
 
1881
                }
-
 
1882
            }
-
 
1883
            // ME: ENDE Vorbereitung der Ausgabe des Zahlungsziels auf der Rechnung
-
 
1884
 
-
 
1885
            // Start Anzeige des Zahlungsziels
-
 
1886
            if ( $zz_text )
-
 
1887
            {
-
 
1888
                $pdf->multiCell( 0, 6, $zz_text, 0, 1, "L" );
-
 
1889
                $pdf->setFont( 'Arial', '', 9.5 );
1603
        // Start Anzeige des Zahlungsziels
1890
            }
-
 
1891
            // Ende Anzeige des Zahlungsziels
1604
        if ( $zz_text )
1892
 
-
 
1893
 
1605
        {
1894
            if ( $Speichern )
1606
            $pdf->multiCell( 0, 6, $zz_text, 0, 1, "L" );
1895
            {
-
 
1896
                $add_flds = "";
1607
            $pdf->setFont( 'Arial', '', 9.5 );
1897
                $rechnung_key = "";
-
 
1898
                if ( isset( $web_rechte["Warenwirtschaft"]["bestellung"]["rechnungslink"] ) )
1608
        }
1899
                {
1609
        // Ende Anzeige des Zahlungsziels
1900
                    $add_flds = ", rechnung_key";
-
 
1901
                    $rechnung_key = uniqid( hash( "sha512", $fName, true ) );
1610
 
1902
                }
-
 
1903
 
-
 
1904
                $pdf->Output( $webs['verzeichnis'] . "/images/dokumente/" . $fName,
1611
 
1905
                    "F" );
1612
        if ( $Speichern )
-
 
1613
        {
-
 
Zeile 1614... Zeile -...
1614
            $add_flds = "";
-
 
1615
            $rechnung_key = "";
-
 
Zeile 1616... Zeile 1906...
1616
            if ( isset($web_rechte["Warenwirtschaft"]["bestellung"]["rechnungslink"]) )
1906
 
1617
            {
1907
                $sql = "
Zeile 1618... Zeile 1908...
1618
                $add_flds = ", rechnung_key";
1908
                        INSERT INTO 
1619
                $rechnung_key = uniqid( hash("sha512", $fName, true) );
1909
                            dokumente 
Zeile 1620... Zeile 1910...
1620
            }
1910
                        (
1621
 
1911
                            table_foreign, 
Zeile -... Zeile 1912...
-
 
1912
                            row_foreign, 
-
 
1913
                            data_foreign, 
-
 
1914
                            document, 
1622
            $pdf->Output( $webs['verzeichnis'] . "/images/dokumente/" . $fName, "F" );
1915
                            letzte_Aenderung_am,
1623
 
1916
                            letzte_Aenderung_von
1624
            $sql = "
1917
                        )
-
 
1918
                        VALUES
1625
                    INSERT INTO 
1919
                        (
-
 
1920
                            'Bestellung', 
1626
                        dokumente 
1921
                            'ID', 
-
 
1922
                            $b_id, 
1627
                    (
1923
                            '$fName', 
1628
                        table_foreign, 
-
 
1629
                        row_foreign, 
1924
                            NOW(),
1630
                        data_foreign, 
1925
                            '" . $_SERVER["PHP_AUTH_USER"] . "'
-
 
1926
                        )                    
1631
                        document, 
1927
                ";
-
 
1928
                mysql_query_logged( $sql ) or mail( "niewerth@weban.de",
1632
                        letzte_Aenderung_am,
1929
                    "Fehler in createMailOrderText.php", mysql_errno() . ": " .
-
 
1930
                    mysql_error() . "<hr>$query<hr>",
1633
                        letzte_Aenderung_von
1931
                    "from: cms_Warenwirtschaft_rechung.php into documente" );
1634
                    )
-
 
Zeile 1635... Zeile 1932...
1635
                    VALUES
1932
            }
-
 
1933
 
-
 
1934
            // Eintrag der Rechnung in das Rechnungsbuch
1636
                    (
1935
            if ( isset( $web_rechte['Warenwirtschaft']['rechnungsbuch']['rechnungsbuch'] ) )
1637
                        'Bestellung', 
1936
            {
1638
                        'ID', 
1937
                $rechnungsdaten = array();
1639
                        $b_id, 
1938
 
-
 
1939
                // Rechnungsnummer
1640
                        '$fName', 
1940
                $rechnungsdaten['rechnungsnummer'] = $r_nr;
-
 
1941
 
1641
                        NOW(),
1942
                // Bestellnummer
-
 
1943
                $rechnungsdaten['bestellung'] = $b_id;
-
 
1944
 
-
 
1945
                // shop
-
 
1946
                $rechnungsdaten['shop'] = $shops_ID;
-
 
1947
 
1642
                        '" . $_SERVER["PHP_AUTH_USER"] . "'
1948
                // kundennr
-
 
1949
                $rechnungsdaten['kundennr'] = $row_l["ID"];
-
 
1950
 
1643
                    )                    
1951
                // kunde
1644
            ";
1952
                $rechnungsdaten['kunde'] = $name;
1645
            mysql_query_logged( $sql ) or mail( "niewerth@weban.de",
-
 
1646
                "Fehler in createMailOrderText.php", mysql_errno() . ": " . mysql_error() .
1953
 
Zeile 1647... Zeile 1954...
1647
                "<hr>$query<hr>", "from: cms_Warenwirtschaft_rechung.php into documente" );
1954
                // kunde
1648
        }
1955
                $rechnungsdaten['firma'] = $firma;
1649
 
1956
 
-
 
1957
                // erstellt_von
1650
        // Eintrag der Rechnung in das Rechnungsbuch
1958
                $rechnungsdaten['erstellt_von'] = $_SERVER['PHP_AUTH_USER'];
-
 
1959
 
1651
        if ( isset($web_rechte['Warenwirtschaft']['rechnungsbuch']['rechnungsbuch']) )
1960
                //  mwst_19 und mwst_7
-
 
1961
                switch ( MWST )
1652
        {
1962
                {
-
 
1963
                    case '19.00':
1653
            $rechnungsdaten = array();
1964
                        $rechnungsdaten['mwst_19'] = $betrag * ( MWST / 100 );
1654
 
1965
                        $rechnungsdaten['mwst_7'] = 0.00;
-
 
1966
                        break;
-
 
1967
 
-
 
1968
                    case '7.00':
-
 
1969
                        $rechnungsdaten['mwst_7'] = $betrag * ( MWST / 100 );
-
 
1970
                        $rechnungsdaten['mwst_19'] = 0.00;
-
 
1971
                        break;
-
 
1972
 
1655
            // Rechnungsnummer
1973
                    case '0.00':
-
 
1974
                        $rechnungsdaten['mwst_7'] = 0.00;
-
 
1975
                        $rechnungsdaten['mwst_19'] = 0.00;
1656
            $rechnungsdaten['rechnungsnummer'] = $r_nr;
1976
                        break;
Zeile 1657... Zeile -...
1657
 
-
 
1658
            // Bestellnummer
-
 
Zeile -... Zeile 1977...
-
 
1977
                }
-
 
1978
 
-
 
1979
                // nettobetrag
Zeile 1659... Zeile 1980...
1659
            $rechnungsdaten['bestellung'] = $b_id;
1980
                $rechnungsdaten['nettobetrag'] = $summe_n["total"];
1660
 
1981