fhiiqm/test/vertrag_list_csv.php
author Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
Mon, 07 May 2012 16:21:00 +0200
changeset 26 3c1e3ac7089f
permissions -rw-r--r--
+ csv-Dateien Laser, Vertrag, Raum + Erfassen GVP mehrere Verantwortliche autocomplete + Arbeitsplatz Gefahr Liste + edit + Arbeitsplatz Vorsorge Liste + edit + Report Arbeitssicherheit
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
26
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
     1
<?php
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
     2
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
     3
/**
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
     4
 * @author Bettina Schwarzer, Fritz-Haber-Institut
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
     5
 * @copyright 04/2012
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
     6
 * 
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
     7
 * Export Vertragsliste als csv-File
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
     8
 * 
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
     9
 */
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    10
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    11
    error_reporting(E_ALL ^ E_NOTICE);
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    12
    
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    13
    include_once($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/inc/dbconnect.inc.php");
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    14
    if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    15
    
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    16
	$sort   = $_GET["s"];   // Sortierung nach Spalte
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    17
    if (!$sort) $sort   = 2;
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    18
    $dir    = $_GET["d"];   // Sortierrichtung
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    19
    if (!$dir) $dir    = '';
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    20
    $fnum   = $_GET["f"];   // Spaltennummer, nach der aktuell gefiltert wird
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    21
    if (!$fnum) $fnum   = 1;
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    22
    $filter = $_GET["b"];   // Filterbegriff 
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    23
    if (!$filter) $filter = '';
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    24
    $start = $_GET["st"];   // Start-DS - 1
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    25
    if (!$start) $start  = 0;
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    26
    $zeil = $_GET["z"];     // Anzahl zu zeigender DS
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    27
    if (!$zeil) $zeil   = 9999;
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    28
    $listg  = $_GET["l"];   // Recht fuer ausgewaehlte Produktgruppen
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    29
    if (!$listg) $listg = '';
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    30
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    31
    $sql = "CALL fhiiqm.vertrag_flist2(" . $sort . ",'" . $dir . "', " . $fnum . ", '" . $filter . "', '" . $listg . "',$start,$zeil, @anz, @ganz)";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    32
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    33
    $result = $dbc ->queryObjectArray($sql);
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    34
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    35
    if ($result)
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    36
    {
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    37
        $crlf = array("\r\n","\n\r","\r","\n"); // Zeilenumbrueche
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    38
        $file ="Vertrag-ID;Bezeichnung;Beschreibung;Typ;zu Produkt;Partner;Bearbeiter;Beginn;Ende;Verlängerung;Künd.Frist(mon);Bemerkung;E-Mail?;Jahr;Kosten\r\n";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    39
        $cid=0;
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    40
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    41
        foreach ($result as $row)
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    42
        {
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    43
            $file .= $row->contract_ID . ";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    44
            if ($row->contract_ID != $cid)
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    45
            {   // Anzeigen der nur einmal relevanten Daten
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    46
                $file .= $row->cname . ";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    47
                $file .= str_replace($crlf,", ",$row->clong) . ";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    48
                $file .= $row->typ . ";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    49
                $file .= str_replace(";",":",$row->prod) . ";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    50
                $file .= $row->partfirma . ";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    51
                $file .= str_replace(";",":",$row->bearb) . ";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    52
                if ($row->cbegin)
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    53
                {
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    54
                    $cb = new DateTime($row->cbegin);    
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    55
                    $file .= $cb->format('d.m.Y').";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    56
                }
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    57
                else $file .= ";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    58
                if ($row->cend)
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    59
                {
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    60
                    $cb = new DateTime($row->cend);    
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    61
                    $file .= $cb->format('d.m.Y').";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    62
                }
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    63
                else $file .= ";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    64
                if ($row->cautoend) $file .= "automatisch;"; else $file .= ";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    65
                $file .= $row->kmon . ";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    66
                $file .= str_replace(";",":",str_replace($crlf,", ",$row->bem)) . ";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    67
                if ($row->email) $file .= "ja;"; else $file .= ";";   
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    68
            }
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    69
            if ($row->kosten)
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    70
            { 
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    71
                if ($cid == $row->contract_ID) $file .= ";;;;;;;;;;;;"; 
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    72
                $file .= $row->kyear .";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    73
                $file .= number_format($row->kosten,2,",",".") . ";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    74
            }    
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    75
            $file .= "\r\n";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    76
            $cid = $row->contract_ID;    
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    77
        }
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    78
        header( 'Content-Type: text/csv' );
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    79
        header('Content-Disposition: attachment; filename="vertrag.csv"');
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    80
        header("Content-Length: " . strlen($file));
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    81
        echo $file;
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    82
    }
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    83
    else echo "kein Ergebnis!";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    84
?>