--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/fhiiqm/report/info_allg_report.php Thu Aug 23 10:17:50 2012 +0200
@@ -0,0 +1,308 @@
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 07/2012
+ *
+ * Report Info nach Produkt
+ *
+ */
+ error_reporting(E_ALL ^ E_NOTICE);
+
+ session_start();
+ if (! isset($_SESSION["userid"]))
+ {
+ include_once ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
+ login($_SERVER["PHP_SELF"]);
+ exit;
+ }
+
+ if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("ir",$_SESSION["recht"]) && !in_array("ie",$_SESSION["recht"])))
+ {
+ header("Location: start.php");
+ exit;
+ }
+
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
+ <link href="/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/>
+ <link href="/fhiiqm/css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/>
+
+ <title>Report Info</title>
+</head>
+
+<body >
+
+<?php
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ include_once ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
+
+ $dbc = new dbconnection();
+
+ $search = $_POST["search"];
+ if (!$search) $search = $_GET["s"];
+ $inf = $_POST["inf"];
+
+ $zeil = $inf["z"];
+ if (!$zeil) $zeil = $_GET["z"];
+ if (!$zeil) $zeil = 9999; // Anzahl der gezeigten Zeilen
+ $start = $_GET["st"]; // Start bei DS $start+1
+ if (!$start) $start=0;
+
+ if (!is_array($inf))
+ {
+ $inf['prodb'] = $_GET['b'];
+ $inf['prodg'] = $_GET['g'];
+ $inf['ityp'] = $_GET['t'];
+ $inf['adr'] = $_GET['a'];
+ $inf['stat'] = $_GET['s'];
+ $inf['bind'] = $_GET['d'];
+ $inf["sort1"] = $_GET["s1"];
+ $inf["sort2"] = $_GET["s2"];
+ $inf["sort3"] = $_GET["s3"];
+ }
+ if (count($_GET) == 0)
+ { // fuer weitere Seiten
+ $_GET['b'] = $inf['prodb'];
+ $_GET['g'] = $inf['prodg'];
+ $_GET['t'] = $inf['ityp'];
+ $_GET['a'] = $inf['adr'];
+ $_GET['s'] = $inf['stat'];
+ $_GET['d'] = $inf['bind'];
+ $_GET["s1"] = $inf['sort1'];
+ $_GET["s2"] = $inf['sort2'];
+ $_GET["s3"] = $inf['sort3'];
+ $_GET['z'] = $zeil;
+ }
+ echo " ";
+ echo "<div class=\"float-br smaller sc\" valign='top'>";
+ echo " user: " . $_SESSION["userid"];
+ echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
+ echo "<div class=\"float-r sc\"><img src=\"/fhiiqm/img/document_image_ver.png\" border=\"0\" alt=\"Infodaten\" title=\"Infodaten\"/></div>\n";
+
+ if ($search && $_GET['s'] != 2)
+ {
+ echo "<span class='sc'>";
+ echo "<br /> <a href=\"/fhiiqm/info_report.php\" target=\"_self\" title=\"Berichte\" class='sc'>« zur Berichtsübersicht</a>";
+ echo " | <a href=\"" . $_SERVER["PHP_SELF"] . "\" target=\"_self\" title=\"RAG GMV\" class=\"sc\">neuer Bericht Info</a>\n";
+ echo "</span>";
+ }
+ echo "<div align=\"center\">";
+ echo "<h3>Bericht Informationen</h3></div>\n";
+ if (!isset($search) || !$search)
+ { // Form Kriterien
+ echo "<div align=\"center\">";
+
+ echo "<p>Bitte die Kriterien für den Bericht wählen</p>\n";
+
+ include ($_SERVER['DOCUMENT_ROOT']."/fhiiqm/form/info_allg_search_form.inc.php");
+ echo "</div>\n";
+ }
+ else
+ {
+ echo "<div align='center'>\n";
+
+ // Kriterien
+ if ($inf["prodb"] && $inf["prodb"] != '-1')
+ {
+ $prodb = "'".$inf["prodb"]."'";
+ $sql = "SELECT prod_ber_name FROM Produkt_Bereich WHERE prod_ber_ID = REPLACE(REPLACE('" .$inf["prodb"] ."','|',''),'-','')";
+ $prodbb = $dbc -> querySingleItem($sql);
+ }
+ else $prodb = "''";
+ if ($inf["prodg"] && $inf["prodg"] != '-1')
+ {
+ $prodg = "'".$inf["prodg"]."'";
+ $sql = "SELECT prod_group_name FROM Produkt_Gruppe WHERE prod_group_ID = REPLACE('" .$inf["prodg"] ."','-','')";
+ $prodgb = $dbc -> querySingleItem($sql);
+ }
+ else $prodg = "''";
+ if ($inf['ityp'] > -1)
+ {
+ $ityp = $inf['ityp'];
+ $sql = "SELECT infotyp_bez FROM Info_Typ WHERE infotyp_ID = $ityp";
+ $itypb = $dbc -> querySingleItem($sql);
+ }
+ else $ityp = "''";
+ if ($inf['adr'] > -1)
+ {
+ $adr = "'".$inf['adr']."'";
+ $sql = "SELECT info_adr_name AS bez FROM Adressat
+ WHERE CAST(info_adr_ID AS CHAR) = $adr
+ UNION
+ SELECT fkt_bez AS bez FROM Funktion
+ WHERE fkt_ID = $adr";
+ $adrb = $dbc -> querySingleItem($sql);
+ }
+ else $adr = "''";
+ if ($inf['stat'] > -1)
+ {
+ $stat = $inf['stat'];
+ $sql = "SELECT info_freigabe_bez FROM Info_Freigabe WHERE info_freigabe_ID = $stat";
+ $statb = $dbc -> querySingleItem($sql);
+ }
+ else $stat = "''";
+ $bind = $inf['bind'];
+
+ $sort = "'".($inf['sort1']>-1 ? $inf['sort1'] : '');
+// echo "$sort<br />";
+ if ($inf['sort1']>-1 && $inf['sort2']>-1) $sort .= ",".$inf['sort2'];
+ elseif ($inf['sort2']>-1) $sort .= "'".$inf['sort2'];
+// echo "$sort<br />";
+ if (($inf['sort1']>-1 || $inf['sort2']>-1) && $inf['sort3']>-1)
+ $sort .= ",".$inf['sort3'];
+ elseif ($inf['sort1'] == -1 && $inf['sort2'] == -1 && $inf['sort3']>-1)
+ $sort = "'".($inf['sort3']>-1 ? $inf['sort3'] : '');
+ $sort .= "'";
+// echo "$sort<br />";
+// $sql = "CALL info_flist(1,'',0,'',0,999,@anz)";
+/* $sql = "SELECT i.info_ID,info_sort,info_name_s,info_name_l,info_date,info_valid_from,info_valid_to,infotyp_ID,lang,info_file,info_rel_ID,raum_ID,
+ i.persknr AS persknra,CONCAT(m.nachname,', ', m.vorname) AS autor,
+ IF(infotyp_ID=7,ff.fkt_ID,CAST(ia.info_adr_ID AS CHAR)) AS adr_ID,
+ IF(infotyp_ID=7,fkt_bez,info_adr_name) AS adressat,
+ iv.persknr AS persknrv, CONCAT(mv.nachname,', ', mv.vorname) AS verantw,
+ ip.produkt_ID,prod_name,p.prod_group_ID,prod_ber_ID
+ FROM fhiiqm.Info i LEFT OUTER JOIN Mitarbeiter m ON i.persknr=m.persknr
+ LEFT OUTER JOIN Info_Adressat ia ON i.info_ID=ia.info_ID
+ LEFT OUTER JOIN Adressat a ON ia.info_adr_ID = a.info_adr_ID
+ LEFT OUTER JOIN Info_Funktion ff ON i.info_ID = ff.info_ID
+ LEFT OUTER JOIN Funktion f ON ff.fkt_ID=f.fkt_ID
+ LEFT OUTER JOIN Info_Verantwortlich iv ON i.info_ID=iv.info_ID
+ LEFT OUTER JOIN Mitarbeiter mv ON iv.persknr=mv.persknr
+ LEFT OUTER JOIN Info_Produkt ip ON i.info_ID=ip.info_ID
+ LEFT OUTER JOIN Produkt p ON ip.produkt_ID = p.produkt_ID
+ LEFT OUTER JOIN Produkt_Gruppe pg ON p.prod_group_ID=pg.prod_group_ID";
+*/
+ $sql = "CALL info_allg_report($prodb,$prodg,$ityp,$adr,$stat,'$bind',$sort,$start,$zeil,@anz)";
+// echo "$sql<br />";
+ $result = $dbc -> queryObjectArray($sql);
+
+ if ($prodbb > '') $krit = "[Produktbereich = $prodbb]";
+ if ($prodgb > '')
+ {
+ if ($krit) $bd = " ".$bind; else $bd = "";
+ $krit .= $bd . " [Produktgruppe = $prodgb]";
+ }
+ if ($itypb > '')
+ {
+ if ($krit) $bd = " ".$bind; else $bd = "";
+ $krit .= $bd . " [Infotyp = $itypb]";
+ }
+ if ($adrb > '')
+ {
+ if ($krit) $bd = " ".$bind; else $bd = "";
+ $krit .= $bd . " [Adressat = $adrb]";
+ }
+ if ($statb > '')
+ {
+ if ($krit) $bd = " ".$bind; else $bd = "";
+ $krit .= $bd . " [Status = $statb]";
+ }
+ if ($krit )echo "Filter: $krit\n"; else echo "Filter: []\n";
+
+ if ($result)
+ {
+
+ $ianz = $dbc -> querySingleItem("SELECT @anz");
+ printf ("<p>Anzahl gefundener Informationen: %s</p>", $ianz);
+
+ $bg1 = "#F8F8F8";
+ $bg2 = "#DEDFE1";
+ $bg = "#FFFFFF";
+ echo "<table border='1' cellspacing='0' cellpadding='2' width='99%'>\n";
+ // Listenkopf
+ echo "<tr bgcolor='#68ACBF'>";
+ echo "<th>Kennzeichen</th>";
+ echo "<th>Infotitel</th>";
+ echo "<th>zu Info</th>";
+ echo "<th>Kurzinfo</th>";
+ if ($ityp == "''") echo "<th>Infotyp</th>";
+ echo "<th>Produkt</th>";
+ if (substr($ityp,0,1) != 8) echo "<th>Adressat</th>";
+ if ($ityp == 7 || substr($ityp,0,1) == 8) echo "<th>Haus, Raum</th>";
+ if ($stat == "''") echo "<th>Status</th>";
+ echo "<th>Dokument</th>";
+ echo "</tr>";
+
+ foreach ($result as $row)
+ {
+ if ($bg == $bg1) $bg = $bg2; else $bg = $bg1;
+ echo "<tr bgcolor='" . $bg . "'>";
+ echo "<td>$row->infsort</td>";
+ echo "<td>$row->info_ID: $row->iname</td>";
+ echo "<td>$row->infrel</td>";
+ if ($row->ityp_ID == 81) $anl = " <b>→ '" . $row->al_bez . "'</b>"; else $anl="";
+ echo "<td>" . nl2br($row->ilong) . "$anl</td>";
+ if ($ityp == "''") echo "<td>$row->ityp</td>";
+ $prod = explode("; ",$row->prod);
+ $prods = "";
+ foreach ($prod as $val)
+ $prods .= "; " . substr($val,0,strpos($val,"|")-1);
+ $prods = substr($prods,2);
+ echo "<td>" . str_replace(";",";<br />",$prods) . "</td>";
+ if (substr($ityp,0,1) != 8)
+ {
+ $adr = explode("; ",$row->adressat);
+ $adrs = "";
+ foreach ($adr as $val)
+ $adrs .= "; " . substr($val,0,strpos($val,"|")-1);
+ $adrs = substr($adrs,2);
+ echo "<td>" . str_replace(";",";<br />",$adrs) . "</td>";
+ }
+ if ($ityp == 7 || substr($ityp,0,1) == 8) // 7 = Betriebsstörung, 8 = Betriebsanweisung
+ { if ($row->raum_ID)
+ {
+ $sql = "SELECT geb_ID, raum_nr FROM Raum WHERE raum_ID = $row->raum_ID";
+ $res = $dbc -> queryObjectArray($sql);
+ foreach ($res as $ro)
+ echo "<td>$ro->geb_ID, $ro->raum_nr</td>";
+ }
+ elseif ($row->geb_ID && !$row->raum_ID)
+ echo "<td>$row->geb_ID</td>";
+ else echo "<td> </td>";
+ }
+ if ($stat == "''") echo "<td>$row->freigabe</td>";
+ echo "<td><a href='/fhiiqm/infos/$row->doc'>".substr($row->doc,strpos($row->doc,"_")+1)."</a></td>";
+ echo "</tr>\n";
+
+ }
+ echo "</table>\n";
+ echo "<p></p><table width=80%><tr><td class='right'><a href=\"javascript:window.print()\" class='sc'>
+ <img src=\"/fhiiqm/img/printer.png\" alt=\"Bericht drucken\" border=\"0\" align=\"right\" title=\"Bericht drucken\"></a></td></tr></table>";
+ echo "</div>\n";
+
+ echo "<br /> ";
+ if ($search != 2) // Aufruf aus fhiiqm
+ {
+ // Parameter aus $_GET fuer weitere Seiten
+ $_GET["s"] = 1; // bewirkt weitere Suche
+ foreach ($_GET as $key=>$val)
+ {
+ if ($key != "st") $liste .= "&" . $key ."=".$val;
+ }
+ // Links auf andere Seiten generieren
+ liste_links($start,$zeil,$ianz,$liste);
+ }
+ }
+ else
+ {
+ echo "<p class='red'> Leider gibt es kein Ergebnis für die von Ihnen gewählten Kriterien!</p>";
+ echo "</div>\n";
+ echo "<br /> ";
+ }
+ if ($search != 2)
+ {
+ echo "<span class='sc'>";
+ echo "<br /><br /> <a href=\"/fhiiqm/info_report.php\" target=\"_self\" title=\"Berichte\" class='sc'>« zur Berichtsübersicht</a>";
+ echo " | <a href=\"" . $_SERVER["PHP_SELF"] . "\" target=\"_self\" title=\"RAG GMV\" class=\"sc\">neuer Bericht Info</a>\n";
+ echo "</span>";
+ }
+
+ }
+?>
+</body>
+</html>
\ No newline at end of file