diff --git a/include/wawi_bestellung.class.php b/include/wawi_bestellung.class.php index 435ce1693..36a4bca92 100644 --- a/include/wawi_bestellung.class.php +++ b/include/wawi_bestellung.class.php @@ -922,50 +922,56 @@ class wawi_bestellung extends basis_db public function createBestellNr($kostenstelle_id) { // kostenstelle holen - $qry="select * from wawi.tbl_kostenstelle where kostenstelle_id=$kostenstelle_id;"; + $qry="SELECT + tbl_kostenstelle.kurzbz, tbl_organisationseinheit.kurzzeichen + FROM + wawi.tbl_kostenstelle + JOIN public.tbl_organisationseinheit USING(oe_kurzbz) + WHERE + kostenstelle_id='".addslashes($kostenstelle_id)."';"; - if($this->db_query($qry)) - { - if($row = $this->db_fetch_object()) + if($this->db_query($qry)) { - $kostenstelle_kz=$row->kurzbz; - $oe_kurzbz = $row->oe_kurzbz; + if($row = $this->db_fetch_object()) + { + $kostenstelle_kz=$row->kurzbz; + $kurzzeichen = $row->kurzzeichen; + } } - } - // wenn kurzbz länger ist -> abschneiden - if(mb_strlen($oe_kurzbz)>3) - { - $oe_kurzbz = mb_substr($oe_kurzbz, 0,3); - } - $oe_kurzbz = mb_strtoupper($oe_kurzbz); - $akt_timestamp=time(); - $akt_datum=getdate($akt_timestamp); - $akt_mon=$akt_datum['mon']; - $akt_year=$akt_datum['year']; - if ($akt_mon<9) - $akt_year--; - $akt_year=substr($akt_year,2,2); - - $kuerzel = $oe_kurzbz.$akt_year.$kostenstelle_kz.'___'; - $qry = "SELECT max(substr(bestell_nr,length(bestell_nr)-2)) FROM wawi.tbl_bestellung WHERE wawi.tbl_bestellung.bestell_nr LIKE '$kuerzel';"; - - if($this->db_query($qry)) - { - if($row = $this->db_fetch_object()) - { $bnum = $row->max + 1; - $bnum = sprintf("%03s",$bnum); + // wenn kurzbz länger ist -> abschneiden + if(mb_strlen($kurzzeichen)>3) + { + $kurzzeichen = mb_substr($kurzzeichen, 0,3); } - } - else - { - $this->errormsg ="Fehler bei der Datenbankabfrage aufgetreten"; - return false; - } + $kurzzeichen = mb_strtoupper($kurzzeichen); + $akt_timestamp=time(); + $akt_datum=getdate($akt_timestamp); + $akt_mon=$akt_datum['mon']; + $akt_year=$akt_datum['year']; + if ($akt_mon<9) + $akt_year--; + $akt_year=substr($akt_year,2,2); - $kostenstelle_kz = mb_strtoupper($kostenstelle_kz); - - $bnum=sprintf("%s%s%s%s",$oe_kurzbz,$akt_year,$kostenstelle_kz,$bnum); - return $bnum; + $kuerzel = $kurzzeichen.$akt_year.$kostenstelle_kz.'___'; + $qry = "SELECT max(substr(bestell_nr,length(bestell_nr)-2)) FROM wawi.tbl_bestellung WHERE wawi.tbl_bestellung.bestell_nr LIKE '$kuerzel';"; + + if($this->db_query($qry)) + { + if($row = $this->db_fetch_object()) + { $bnum = $row->max + 1; + $bnum = sprintf("%03s",$bnum); + } + } + else + { + $this->errormsg ="Fehler bei der Datenbankabfrage aufgetreten"; + return false; + } + + $kostenstelle_kz = mb_strtoupper($kostenstelle_kz); + + $bnum=sprintf("%s%s%s%s",$kurzzeichen,$akt_year,$kostenstelle_kz,$bnum); + return $bnum; } } \ No newline at end of file diff --git a/system/FH-Complete.txp b/system/FH-Complete.txp index ad2cbf622..c645753bd 100644 --- a/system/FH-Complete.txp +++ b/system/FH-Complete.txp @@ -23950,7 +23950,7 @@ 99 0 986 - 317 + 356 0 1 1 @@ -24784,36 +24784,36 @@ {02818E50-653A-4992-BBE2-4140B5EA18A4} - 2567 - 862 + 2675 + 911 1085 - 514 + 518 1116 - 514 + 518 1116 - 514 + 518 1116 - 822 + 861 592 - 822 + 861 592 - 822 + 861 592 - 791 + 830 @@ -24839,8 +24839,8 @@ {02818E50-653A-4992-BBE2-4140B5EA18A4} - 637 - 433 + 638 + 437 1574 @@ -24852,11 +24852,11 @@ 1116 - 553 + 563 1085 - 553 + 563 @@ -24883,15 +24883,15 @@ {2E5D944C-5C5D-4F01-9057-73779D9CDCAA} 1186 - 360 + 368 1085 - 593 + 608 1116 - 593 + 608 2876 @@ -24926,15 +24926,15 @@ {4C98A428-14DD-4587-B44B-5A31CAA42B19} 1528 - 836 + 870 1085 - 672 + 741 1116 - 672 + 741 1588 @@ -24969,15 +24969,15 @@ {A4C00C94-7737-4ABD-986D-C8F15946EA11} 1550 - 614 + 606 1085 - 712 + 696 1116 - 712 + 696 1400 @@ -27432,15 +27432,15 @@ {A35EA055-8283-4E52-8F55-92A001656642} 1328 - 1486 + 1504 1085 - 751 + 786 1116 - 751 + 786 1740 @@ -27518,15 +27518,15 @@ {44A8BE10-FDC9-483D-874D-0286C4EAB364} 2283 - 1567 + 1577 1085 - 632 + 652 1116 - 632 + 652 3651 @@ -27768,7 +27768,7 @@ 52 0 986 - 317 + 356 0 1 1 @@ -28309,36 +28309,36 @@ {5D7A050D-AB0F-44C8-8D36-A8DE1617BFC9} - 2596 - 1355 + 2763 + 1404 1038 - 1086 + 1105 1069 - 1086 + 1105 1069 - 1086 + 1105 1069 - 1275 + 1314 545 - 1275 + 1314 545 - 1275 + 1314 545 - 1244 + 1283 @@ -28365,15 +28365,15 @@ {8128BC5E-C8F2-4AC5-983A-DB6FC13AFA3D} 720 - 1264 + 1273 1038 - 1165 + 1194 1069 - 1165 + 1194 1196 @@ -28874,16 +28874,16 @@ {D328CB7A-43A5-4C04-8CD6-2C8960DC8C17} - 863 + 858 269 1038 - 1006 + 1016 1069 - 1006 + 1016 1196 @@ -36419,7 +36419,7 @@ 1227 0 986 - 317 + 356 0 1 1 @@ -37857,15 +37857,15 @@ {20F41636-8E77-4350-B677-A3F3B4033D9D} 2064 - 311 + 318 2213 - 2233 + 2246 2244 - 2233 + 2246 2432 @@ -38545,15 +38545,15 @@ {6419EE86-CB44-41FA-9E2B-1C2555508A93} 1004 - 2289 + 2295 1227 - 2233 + 2246 1196 - 2233 + 2246 1011 @@ -38630,16 +38630,16 @@ {5FEF0B42-3911-4B97-A654-2AD1A67125FC} - 1034 - 2616 + 1035 + 2629 1227 - 2338 + 2364 1196 - 2338 + 2364 1073 @@ -38803,15 +38803,15 @@ {D8AD2B3F-B9E4-412E-992F-3B4D116FDEE1} 2556 - 2085 + 2098 2213 - 2338 + 2364 2244 - 2338 + 2364 3069 @@ -39560,7 +39560,7 @@ Technikum Wien 2.0 2009-04-17T10:15:21.000+01:00 - 2011-01-27T14:55:48.546+01:00 + 2011-02-10T14:46:32.208+01:00 FH-Complete 2.0 @@ -111929,6 +111929,47 @@ Wenn FALSE haengt die Anzahl der Fragen pro Level von der Gesamtzahl pro Level a 0 + + {52D0F33C-A2CE-4F40-ABA6-5714D1A50E7C} + kurzzeichen + 0 + {80312637-A01F-4D9D-822D-903D36BF2254} + 0 + 0 + 0 + 0 + 1 + + + + Wird zur Generierung der Bestellnummer verwendet + 16 + + 0 + + 0 + 0 + kurzzeichen + 0 + + + + + + + + + + {ECB8F02F-B683-4252-8508-ED9D064C9AF3} + + + + + + + + 0 + diff --git a/system/checksystem.php b/system/checksystem.php index 31dc4aa0d..84f37052c 100644 --- a/system/checksystem.php +++ b/system/checksystem.php @@ -1917,6 +1917,19 @@ if(!@$db->db_query("SELECT oe_kurzbz FROM public.tbl_vorlagestudiengang LIMIT 1" else echo 'Tabelle public.tbl_vorlagestudiengang Spalte oe_kurzbz hinzugefuegt!
'; } + +// kurzzeichen zu tbl_organisationseinheit hinzugefuegt zur generierung der Bestellnummer +if(!@$db->db_query("SELECT kurzzeichen FROM public.tbl_organisationseinheit LIMIT 1")) +{ + $qry = " + ALTER TABLE public.tbl_organisationseinheit ADD COLUMN kurzzeichen varchar(16); + "; + + if(!$db->db_query($qry)) + echo 'public.tbl_organisationseinheit: '.$db->db_last_error().'
'; + else + echo 'Tabelle public.tbl_organisationseinheit Spalte kurzzeichen hinzugefuegt!
'; +} echo '
'; $tabellen=array( @@ -2032,7 +2045,7 @@ $tabellen=array( "public.tbl_mitarbeiter" => array("mitarbeiter_uid","personalnummer","telefonklappe","kurzbz","lektor","fixangestellt","bismelden","stundensatz","ausbildungcode","ort_kurzbz","standort_id","anmerkung","insertamum","insertvon","updateamum","updatevon","ext_id"), "public.tbl_ort" => array("ort_kurzbz","bezeichnung","planbezeichnung","max_person","lehre","reservieren","aktiv","lageplan","dislozierung","kosten","ausstattung","updateamum","updatevon","insertamum","insertvon","ext_id","stockwerk","standort_id","telefonklappe"), "public.tbl_ortraumtyp" => array("ort_kurzbz","hierarchie","raumtyp_kurzbz"), - "public.tbl_organisationseinheit" => array("oe_kurzbz", "oe_parent_kurzbz", "bezeichnung","organisationseinheittyp_kurzbz", "aktiv","mailverteiler","freigabegrenze"), + "public.tbl_organisationseinheit" => array("oe_kurzbz", "oe_parent_kurzbz", "bezeichnung","organisationseinheittyp_kurzbz", "aktiv","mailverteiler","freigabegrenze","kurzzeichen"), "public.tbl_organisationseinheittyp" => array("organisationseinheittyp_kurzbz", "bezeichnung", "beschreibung"), "public.tbl_person" => array("person_id","staatsbuergerschaft","geburtsnation","sprache","anrede","titelpost","titelpre","nachname","vorname","vornamen","gebdatum","gebort","gebzeit","foto","anmerkung","homepage","svnr","ersatzkennzeichen","familienstand","geschlecht","anzahlkinder","aktiv","insertamum","insertvon","updateamum","updatevon","ext_id","bundesland_code","kompetenzen","kurzbeschreibung"), "public.tbl_personfunktionstandort" => array("personfunktionstandort_id","funktion_kurzbz","person_id","standort_id","position","anrede"),