|
1 <?php |
|
2 |
|
3 /** |
|
4 * @author Bettina Schwarzer, Fritz-Haber-Institut |
|
5 * @copyright 06/2011 |
|
6 * |
|
7 * INSERT Vertragsdaten in n:m-Tabellen fuer INSERT und UPDATE Vertragsdaten |
|
8 */ |
|
9 |
|
10 // Loeschen der alten Bearbeiter, Hinzufuegen der neuen |
|
11 $retb = true; |
|
12 $sql = "DELETE FROM Vertrag_Bearbeiter WHERE contract_ID = $cid"; |
|
13 $retd = $dbc -> execute($sql); |
|
14 if ($retd) |
|
15 { |
|
16 if (is_array($vtr['cpers'])) |
|
17 { |
|
18 foreach ($vtr['cpers'] as $pers) |
|
19 { |
|
20 if ($pers != -1) |
|
21 { |
|
22 $sql = "INSERT INTO Vertrag_Bearbeiter VALUES($cid, $pers)"; |
|
23 // echo "INSERT Bearbeiter: $sql<br><br>\n"; |
|
24 $retb = $dbc -> execute($sql); |
|
25 } |
|
26 } |
|
27 } |
|
28 |
|
29 } |
|
30 |
|
31 // Partner |
|
32 $retp = true; |
|
33 if ($vtr['partid'] != -1) |
|
34 { |
|
35 // Loeschen alter Partner, INSERT neuer |
|
36 $sql = "DELETE FROM Vertrag_Partner WHERE contract_ID = $cid"; |
|
37 $retdp = $dbc -> execute($sql); |
|
38 if ($retdp) |
|
39 { |
|
40 $sql = "INSERT INTO Vertrag_Partner VALUES($cid," . $vtr['partid'] .")"; |
|
41 $retp = $dbc -> execute($sql); |
|
42 if (!$retp) echo "error INSERT Vertrag_Partner: " . $dbc -> error . " <br />\n"; |
|
43 } |
|
44 $pid = $vtr['partid']; |
|
45 } |
|
46 if ($vtr['partner']) |
|
47 { |
|
48 // Test, ob Eintrag schon vorhanden |
|
49 $sql = "SELECT part_ID, part_firma FROM Partner WHERE part_firma = '" . ltrim($vtr['partner']) . "'"; |
|
50 if ($res = $dbc -> queryObjectArray($sql)) |
|
51 { |
|
52 foreach ($res as $row) |
|
53 $pid = $row->part_ID; |
|
54 } |
|
55 else |
|
56 { |
|
57 // INSERT in Partner, ID INSERT in Vertrag_Partner |
|
58 $sql = "INSERT INTO Partner (part_firma) VALUES (LEFT(TRIM('" . $vtr['partner'] . "'),50))"; |
|
59 $retp = $dbc -> execute($sql); |
|
60 // echo "Partner INSERT: $sql<br />\n"; |
|
61 if ($retp) $pid = $dbc -> insertId(); |
|
62 } |
|
63 if ($pid) |
|
64 { |
|
65 // Loeschen alter Partner, INSERT neuer |
|
66 $sql = "DELETE FROM Vertrag_Partner WHERE contract_ID = $cid"; |
|
67 $retdp = $dbc -> execute($sql); |
|
68 if ($retdp) |
|
69 { |
|
70 $sql = "INSERT INTO Vertrag_Partner VALUES($cid,$pid)"; |
|
71 $retp = $dbc -> execute($sql); |
|
72 if (!$retp) echo "error INSERT Vertrag_Partner: " . $dbc -> error . " <br />\n"; |
|
73 } |
|
74 } |
|
75 } |
|
76 |
|
77 // Produkt |
|
78 $retd = true; |
|
79 if ($vtr['prodid'] > 0 || $vtr['prodid'] = -1) // nur Produkte, keine Gruppen, Bereiche |
|
80 { |
|
81 // Loeschen altes Produkt, INSERT neues |
|
82 $sql = "DELETE FROM Produkt_Vertrag WHERE contract_ID = $cid"; |
|
83 $retdd = $dbc -> execute($sql); |
|
84 if ($retdd && $vtr['prodid'] > 0) |
|
85 { |
|
86 //INSERT in Produkt_Vertrag |
|
87 $sql = "INSERT INTO Produkt_Vertrag VALUES(".$vtr['prodid'].",$cid)"; |
|
88 $retd = $dbc -> execute($sql); |
|
89 if (!$retd) echo "error INSERT Produkt_Vertrag: " . $dbc -> error . " <br />\n"; |
|
90 } |
|
91 |
|
92 } |
|
93 |
|
94 // Kosten |
|
95 $retk = true; |
|
96 if ($vtr['kost'] && $vtr['bjahr']) // Kosten fuer mindestens Startjahr |
|
97 { |
|
98 // alle bisherigen Angaben loeschen |
|
99 $sql = "DELETE FROM Vertrag_Kosten WHERE contract_ID = $cid"; |
|
100 $retdk = $dbc -> execute($sql); |
|
101 if ($retdk) |
|
102 { |
|
103 $j=0; |
|
104 if ($vtr['ejahr']) // Endjahr angegeben |
|
105 { |
|
106 for ($i=(int)$vtr['bjahr']; $i< (int)$vtr['ejahr'] +1; $i++) |
|
107 { |
|
108 if ($vtr['kost'][$j]) |
|
109 { |
|
110 $kost = str_replace(',','.',$vtr['kost'][$j]); |
|
111 $sql = "INSERT INTO Vertrag_Kosten (contract_ID,k_year,kosten) VALUES($cid,$i,$kost)"; |
|
112 $retk = $dbc -> execute($sql); |
|
113 } |
|
114 $j++; |
|
115 } |
|
116 } |
|
117 else // nur fuer Startjahr |
|
118 { |
|
119 if ($vtr['kost'][0]) |
|
120 { |
|
121 $kost = str_replace(',','.',$vtr['kost'][0]); |
|
122 $sql = "INSERT INTO Vertrag_Kosten (contract_ID,k_year,kosten) VALUES($cid,".(int)$vtr['bjahr'].",$kost)"; |
|
123 $retk = $dbc -> execute($sql); |
|
124 } |
|
125 } |
|
126 if (!$retk) echo "error INSERT Vertrag_Kosten: " . $dbc -> error . "<br />$sql<br />\n"; |
|
127 } |
|
128 } |
|
129 |
|
130 |
|
131 ?> |