fhiiqm/vertrag_list12_csv.php
author Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
Mon, 07 May 2012 16:21:00 +0200
changeset 26 3c1e3ac7089f
child 29 72f79dab938e
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_flist12(" . $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
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    40
        foreach ($result as $row)
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    41
        {
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    42
            $file .= $row->contract_ID . ";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    43
            $file .= $row->cname . ";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    44
            $file .= str_replace($crlf,", ",$row->clong) . ";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    45
            $file .= $row->typ . ";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    46
            $file .= str_replace(";",":",$row->prod) . ";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    47
            $file .= $row->partfirma . ";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    48
            $file .= str_replace(";",":",$row->bearb) . ";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    49
            if ($row->cbegin)
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    50
            {
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    51
                $cb = new DateTime($row->cbegin);    
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    52
                $file .= $cb->format('d.m.Y').";";
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
            else $file .= ";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    55
            if ($row->cend)
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
                $cb = new DateTime($row->cend);    
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    58
                $file .= $cb->format('d.m.Y').";";
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
            else $file .= ";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    61
            if ($row->cautoend) $file .= "automatisch;"; else $file .= ";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    62
            $file .= $row->kmon . ";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    63
            $file .= str_replace(";",":",str_replace($crlf,", ",$row->bem)) . ";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    64
            if ($row->email) $file .= "ja;"; else $file .= ";";   
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    65
            
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    66
            if ($row->yearkosten)
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    67
            {   // Form: yyyy:nnn.nn|yyyy:nnnnn|yyyy:nn.n usw. 
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    68
                $yka = explode('|',$row->yearkosten);
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    69
                $first = true;
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    70
                foreach ($yka as $yk)
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    71
                {
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    72
                    if (!$first) $file .= "\r\n$row->contract_ID;;;;;;;;;;;;;"; 
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    73
                    list($year,$kost) = explode(':',$yk);
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    74
                    $file .= $year .";" .number_format($kost,2,",",".") . ";";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    75
                    $first = false; 
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    76
                }
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
            else $file .= ";;";    
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    79
            $file .= "\r\n";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    80
        }
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    81
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    82
        header( 'Content-Type: text/csv' );
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    83
        header('Content-Disposition: attachment; filename="vertrag.csv"');
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    84
        header("Content-Length: " . strlen($file));
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    85
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    86
        echo $file;
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    87
    }
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    88
    else echo "kein Ergebnis!";
3c1e3ac7089f + csv-Dateien Laser, Vertrag, Raum
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
    89
?>