GUI zur Verwaltung der Verträge im FAS

This commit is contained in:
Andreas Österreicher
2014-10-31 05:56:56 +00:00
parent 6da3af7879
commit c245dd101b
17 changed files with 2046 additions and 135 deletions
+257
View File
@@ -35,6 +35,10 @@ require_once('../../include/bisfunktion.class.php');
require_once('../../include/entwicklungsteam.class.php');
require_once('../../include/resturlaub.class.php');
require_once('../../include/buchung.class.php');
require_once('../../include/pruefung.class.php');
require_once('../../include/projektbetreuer.class.php');
require_once('../../include/vertrag.class.php');
require_once('../../include/lehreinheitmitarbeiter.class.php');
$user = get_uid();
@@ -402,6 +406,259 @@ if(!$error)
}
}
}
elseif(isset($_POST['type']) && $_POST['type']=='vertraggenerate')
{
if(!$rechte->isBerechtigt('vertrag/mitarbeiter',null,'suid'))
{
$return = false;
$errormsg = 'Sie haben keine Berechtigung für diesen Vorgang';
}
else
{
$errormsg='';
$person_id = $_POST['person_id'];
$person = new person();
$person->load($person_id);
$vertrag = new vertrag();
$neu = false;
if($_POST['vertrag_id']!='')
{
// Bearbeiten eines Vertrags
$vertrag_id=$_POST['vertrag_id'];
if($vertrag->load($vertrag_id))
{
$vertrag->updatevon = $user;
$vertrag->updateamum = date('Y-m-d H:i:s');
}
else
{
$errormsg.=$vertrag->errormsg;
}
}
else
{
// Neuen Vertrag erstellen
$vertrag->person_id = $person_id;
$vertrag->inservon = $user;
$vertrag->insertamum = date('Y-m-d H:i:s');
$neu = true;
}
$vertrag->vertragstyp_kurzbz=$_POST['vertragstyp_kurzbz'];
$vertrag->betrag=str_replace(',','.',$_POST['betrag']);
$vertrag->bezeichnung = $_POST['bezeichnung'];
if($errormsg=='')
{
if($vertrag->save())
{
$vertrag_id = $vertrag->vertrag_id;
// Vertragselemente zuordnen
foreach($_POST as $key=>$value)
{
if(strstr($key, 'type_'))
{
$index = mb_substr($key,5);
$type = $_POST['type_'.$index];
$projektarbeit_id = $_POST['projektarbeit_id_'.$index];
$betreuerart_kurzbz = $_POST['betreuerart_kurzbz_'.$index];
$pruefung_id = $_POST['pruefung_id_'.$index];
$lehreinheit_id = $_POST['lehreinheit_id_'.$index];
$mitarbeiter_uid = $_POST['mitarbeiter_uid_'.$index];
$stsem = $_POST['stsem_'.$index];
switch($type)
{
case 'Lehrauftrag':
$lehreinheitmitarbeiter = new lehreinheitmitarbeiter();
if($lehreinheitmitarbeiter->load($lehreinheit_id, $mitarbeiter_uid))
{
$lehreinheitmitarbeiter->vertrag_id=$vertrag_id;
if(!$lehreinheitmitarbeiter->save())
$errormsg.=$lehreinheitmitarbeiter->errormsg;
}
else
$errormsg.=$lehreinheitmitarbeiter->errormsg;
break;
case 'Pruefung':
$pruefung = new pruefung();
if($pruefung->load($pruefung_id))
{
$pruefung->vertrag_id=$vertrag_id;
if(!$pruefung->save())
$errormsg.=$pruefung->errormsg;
}
else
$errormsg.=$pruefung->errormsg;
break;
case 'Betreuung':
$projektbetreuer = new projektbetreuer();
if($projektbetreuer->load($person_id, $projektarbeit_id, $betreuerart_kurzbz))
{
$projektbetreuer->vertrag_id=$vertrag_id;
if(!$projektbetreuer->save())
$errormsg.=$projektbetreuer->errormsg;
}
else
$errormsg.=$projektbetreuer->errormsg;
break;
default:
$errormsg.='Unknown type '.$type;
break;
}
}
}
if($errormsg=='' && $neu)
{
// Neu Status setzen
$vertrag = new vertrag();
$vertrag->vertrag_id = $vertrag_id;
$vertrag->vertragsstatus_kurzbz = 'neu';
$vertrag->datum = date('Y-m-d H:i:s');
$vertrag->uid = $user;
if(!$vertrag->saveVertragsstatus(true))
$errormsg.=$vertrag->erromsg;
}
if($errormsg=='')
$return=true;
else
$return=false;
}
else
{
$return = false;
$errormsg = $vertrag->errormsg;
}
}
else
{
$return = false;
}
}
}
elseif(isset($_POST['type']) && $_POST['type']=='vertragsstatusadd')
{
if(!$rechte->isBerechtigt('vertrag/mitarbeiter',null,'suid'))
{
$return = false;
$errormsg = 'Sie haben keine Berechtigung für diesen Vorgang';
}
else
{
$vertrag_id = $_POST['vertrag_id'];
$status = $_POST['status'];
$vertrag = new vertrag();
$vertrag->vertrag_id = $vertrag_id;
$vertrag->vertragsstatus_kurzbz = $status;
$vertrag->datum = date('Y-m-d H:i:s');
$vertrag->uid = $user;
if($vertrag->saveVertragsstatus(true))
{
$return=true;
}
else
{
$return = false;
$errormsg = $vertrag->errormsg;
}
}
}
elseif(isset($_POST['type']) && $_POST['type']=='vertragsdetaildelete')
{
if(!$rechte->isBerechtigt('vertrag/mitarbeiter',null,'suid'))
{
$return = false;
$errormsg = 'Sie haben keine Berechtigung für diesen Vorgang';
}
else
{
$errormsg='';
$vertragstype = $_POST['vertragstype'];
$projektarbeit_id = $_POST['projektarbeit_id'];
$betreuerart_kurzbz = $_POST['betreuerart_kurzbz'];
$pruefung_id = $_POST['pruefung_id'];
$lehreinheit_id = $_POST['lehreinheit_id'];
$mitarbeiter_uid = $_POST['mitarbeiter_uid'];
$stsem = $_POST['stsem'];
$vertrag_id = $_POST['vertrag_id'];
$betrag = $_POST['betrag'];
switch($vertragstype)
{
case 'Lehrauftrag':
$lehreinheitmitarbeiter = new lehreinheitmitarbeiter();
if($lehreinheitmitarbeiter->load($lehreinheit_id, $mitarbeiter_uid))
{
$lehreinheitmitarbeiter->vertrag_id='';
if(!$lehreinheitmitarbeiter->save())
$errormsg.=$lehreinheitmitarbeiter->errormsg;
}
else
$errormsg.=$lehreinheitmitarbeiter->errormsg;
break;
case 'Pruefung':
$pruefung = new pruefung();
if($pruefung->load($pruefung_id))
{
$pruefung->vertrag_id='';
if(!$pruefung->save())
$errormsg.=$pruefung->errormsg;
}
else
$errormsg.=$pruefung->errormsg;
break;
case 'Betreuung':
$projektbetreuer = new projektbetreuer();
if($projektbetreuer->load($person_id, $projektarbeit_id, $betreuerart_kurzbz))
{
$projektbetreuer->vertrag_id='';
if(!$projektbetreuer->save())
$errormsg.=$projektbetreuer->errormsg;
}
else
$errormsg.=$projektbetreuer->errormsg;
break;
default:
$errormsg.='Unknown type '.$vertragstype;
break;
}
if($errormsg=='')
{
$vertrag = new vertrag();
if($vertrag->load($vertrag_id))
{
$vertrag->betrag = $vertrag->betrag-$betrag;
if($vertrag->save(false))
{
$return =true;
}
else
{
$errormsg.=$vertrag->errormsg;
$return =false;
}
}
}
else
$return = false;
}
}
else
{
$return = false;
@@ -685,11 +685,14 @@ function MitarbeiterAuswahl()
url = '<?php echo APP_ROOT; ?>content/funktionen.xul.php?uid='+uid;
document.getElementById('mitarbeiter-funktionen').setAttribute('src',url);
}
// Buchungen laden falls vorhanden
if(document.getElementById('mitarbeiter-tab-buchung'))
{
MitarbeiterBuchungLoad(person_id)
}
// Vertraege laden falls vorhanden
if(document.getElementById('mitarbeiter-tab-vertrag'))
MitarbeiterVertragLoad(person_id)
// Selektierungsfunktion der Addons aufrufen
for(i in addon)
@@ -39,6 +39,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeiterdetailoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeiterfunktionoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeiterbuchungoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeitervertragoverlay.xul.php"?>';
?>
<!DOCTYPE overlay >
@@ -246,6 +247,9 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeiterbuchungover
<?php
if($rechte->isBerechtigt('buchung/mitarbeiter'))
echo '<tab id="mitarbeiter-tab-buchung" label="Buchungen" />';
if($rechte->isBerechtigt('vertrag/mitarbeiter'))
echo '<tab id="mitarbeiter-tab-vertrag" label="Verträge" />';
?>
</tabs>
<tabpanels id="mitarbeiter-tabpanels-main" flex="1">
@@ -257,6 +261,8 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeiterbuchungover
<?php
if($rechte->isBerechtigt('buchung/mitarbeiter'))
echo '<vbox id="mitarbeiter-buchung" style="margin-top:10px;" />';
if($rechte->isBerechtigt('vertrag/mitarbeiter'))
echo '<vbox id="mitarbeiter-vertrag" style="margin-top:10px;" />';
?>
</tabpanels>
</tabbox>
@@ -0,0 +1,328 @@
<?php
/* Copyright (C) 2014 fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
*/
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/functions.inc.php');
$user = get_uid();
?>
var MitarbeiterVertragLoadedPerson=null
// ****************** FUNKTIONEN ************************** //
function MitarbeiterVertragLoad(person_id)
{
if(person_id=='')
return;
MitarbeiterVertragLoadedPerson=person_id;
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
// *** Vertrag ***
var treevertrag = document.getElementById('mitarbeiter-vertrag-tree');
url='<?php echo APP_ROOT;?>rdf/vertrag.rdf.php?person_id='+person_id+"&"+gettimestamp();
//Alte DS entfernen
var oldDatasources = treevertrag.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
treevertrag.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
treevertrag.builder.rebuild();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
var myDatasource = rdfService.GetDataSourceBlocking(url);
treevertrag.database.AddDataSource(myDatasource);
treevertrag.builder.rebuild();
// Detail Tree leeren
vertragzugeordnettree = document.getElementById('mitarbeiter-vertrag-tree-zugeordnet');
//Alte DS entfernen
var oldDatasources = vertragzugeordnettree.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
vertragzugeordnettree.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
vertragzugeordnettree.builder.rebuild();
// Status Tree leeren
vertragsstatustree = document.getElementById('mitarbeiter-vertrag-tree-vertragsstatus');
//Alte DS entfernen
var oldDatasources = vertragsstatustree.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
vertragsstatustree.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
vertragsstatustree.builder.rebuild();
MitarbeiterVertragDisableFields(false);
}
function MitarbeiterVertragDisableFields(val)
{
}
function MitarbeiterVertragSelectVertrag()
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var tree=document.getElementById('mitarbeiter-vertrag-tree');
var col = tree.columns ? tree.columns["mitarbeiter-vertrag-tree-vertrag_id"] : "mitarbeiter-vertrag-tree-vertrag_id";
if(tree.currentIndex==-1)
return false;
var vertrag_id=tree.view.getCellText(tree.currentIndex,col);
// *** Zugeordnete Vertragselemente laden
vertragzugeordnettree = document.getElementById('mitarbeiter-vertrag-tree-zugeordnet');
url='<?php echo APP_ROOT;?>rdf/vertragdetails.rdf.php?vertrag_id='+vertrag_id+"&"+gettimestamp();
//Alte DS entfernen
var oldDatasources = vertragzugeordnettree.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
vertragzugeordnettree.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
vertragzugeordnettree.builder.rebuild();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
var datasource = rdfService.GetDataSource(url);
vertragzugeordnettree.database.AddDataSource(datasource);
// *** Status laden
vertragsstatustree = document.getElementById('mitarbeiter-vertrag-tree-vertragsstatus');
url='<?php echo APP_ROOT;?>rdf/vertragsstatus.rdf.php?vertrag_id='+vertrag_id+"&"+gettimestamp();
//Alte DS entfernen
var oldDatasources = vertragsstatustree.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
vertragsstatustree.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
vertragsstatustree.builder.rebuild();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
var datasource = rdfService.GetDataSource(url);
vertragsstatustree.database.AddDataSource(datasource);
}
/**
* Generiert einen Vertrag aus den markierten Elementen
*/
function MitarbeiterVertragGenerateVertrag(windowdocument)
{
var tree = windowdocument.getElementById('mitarbeiter-vertrag-tree-nichtzugeordnet');
var start = new Object();
var end = new Object();
var numRanges = tree.view.selection.getRangeCount();
var url = '<?php echo APP_ROOT ?>content/mitarbeiter/mitarbeiterDBDML.php';
var req = new phpRequest(url,'','');
req.add('type', 'vertraggenerate');
req.add('person_id',MitarbeiterVertragLoadedPerson);
var betrag = windowdocument.getElementById('mitarbeiter-vertrag-neu-textbox-betrag').value;
var vertragstyp_kurzbz = windowdocument.getElementById('mitarbeiter-vertrag-neu-menulist-vertragstyp').value;
var bezeichnung = windowdocument.getElementById('mitarbeiter-vertrag-neu-textbox-bezeichnung').value;
var vertrag_id = windowdocument.getElementById('mitarbeiter-vertrag-neu-textbox-vertrag_id').value;
if(betrag=='')
{
alert('Bitte geben Sie einen Betrag ein');
return false;
}
req.add('betrag',betrag);
req.add('vertragstyp_kurzbz',vertragstyp_kurzbz);
req.add('bezeichnung',bezeichnung);
req.add('vertrag_id',vertrag_id);
var anzahl=0;
for (var t = 0; t < numRanges; t++)
{
tree.view.selection.getRangeAt(t,start,end);
for (var v = start.value; v <= end.value; v++)
{
type = getTreeCellText(tree, "mitarbeiter-vertrag-tree-nichtzugeordnet-type", v);
stsem = getTreeCellText(tree, "mitarbeiter-vertrag-tree-nichtzugeordnet-studiensemester_kurzbz",v);
pruefung_id = getTreeCellText(tree, "mitarbeiter-vertrag-tree-nichtzugeordnet-pruefung_id",v);
projektarbeit_id = getTreeCellText(tree, "mitarbeiter-vertrag-tree-nichtzugeordnet-projektarbeit_id",v);
mitarbeiter_uid = getTreeCellText(tree, "mitarbeiter-vertrag-tree-nichtzugeordnet-mitarbeiter_uid",v);
lehreinheit_id = getTreeCellText(tree, "mitarbeiter-vertrag-tree-nichtzugeordnet-lehreinheit_id",v);
betreuerart_kurzbz = getTreeCellText(tree, "mitarbeiter-vertrag-tree-nichtzugeordnet-betreuerart_kurzbz",v);
req.add('type_'+anzahl, type);
req.add('stsem_'+anzahl, stsem);
req.add('pruefung_id_'+anzahl, pruefung_id);
req.add('projektarbeit_id_'+anzahl, projektarbeit_id);
req.add('mitarbeiter_uid_'+anzahl, mitarbeiter_uid);
req.add('lehreinheit_id_'+anzahl, lehreinheit_id);
req.add('betreuerart_kurzbz_'+anzahl, betreuerart_kurzbz);
anzahl++;
}
}
var response = req.executePOST();
var val = new ParseReturnValue(response)
if (!val.dbdml_return)
{
if(val.dbdml_errormsg=='')
alert(response)
else
alert(val.dbdml_errormsg)
}
else
{
MitarbeiterVertragLoad(MitarbeiterVertragLoadedPerson);
return true;
}
}
/**
* Oeffnet den Dialog zum Erstellen eines neuen Vertrags
*/
function MitarbeiterVertragAddVertrag()
{
window.open('<?php echo APP_ROOT?>content/mitarbeiter/mitarbeitervertragneudialog.xul.php?person_id='+MitarbeiterVertragLoadedPerson,"Vertrag","status=no, width=500, height=300, centerscreen, resizable");
}
/**
* Fuegt einen neuen Status zu einem Vertrag hinzu
*/
function MitarbeiterVertragStatusAdd(status)
{
var tree=document.getElementById('mitarbeiter-vertrag-tree');
var col = tree.columns ? tree.columns["mitarbeiter-vertrag-tree-vertrag_id"] : "mitarbeiter-vertrag-tree-vertrag_id";
if(tree.currentIndex==-1)
return false;
var vertrag_id=tree.view.getCellText(tree.currentIndex,col);
var url = '<?php echo APP_ROOT ?>content/mitarbeiter/mitarbeiterDBDML.php';
var req = new phpRequest(url,'','');
req.add('type', 'vertragsstatusadd');
req.add('vertrag_id',vertrag_id);
req.add('status',status);
var response = req.executePOST();
var val = new ParseReturnValue(response)
if (!val.dbdml_return)
{
if(val.dbdml_errormsg=='')
alert(response)
else
alert(val.dbdml_errormsg)
}
else
{
MitarbeiterVertragSelectVertrag();
return true;
}
}
/**
* Editieren eines Vertrags
*/
function MitarbeiterVertragEdit()
{
var tree=document.getElementById('mitarbeiter-vertrag-tree');
var col = tree.columns ? tree.columns["mitarbeiter-vertrag-tree-vertrag_id"] : "mitarbeiter-vertrag-tree-vertrag_id";
if(tree.currentIndex==-1)
return false;
var vertrag_id=tree.view.getCellText(tree.currentIndex,col);
window.open('<?php echo APP_ROOT?>content/mitarbeiter/mitarbeitervertragneudialog.xul.php?person_id='+MitarbeiterVertragLoadedPerson+'&vertrag_id='+vertrag_id,"Vertrag","status=no, width=500, height=300, centerscreen, resizable");
}
function MitarbeiterVertragDetailDelete()
{
var tree=document.getElementById('mitarbeiter-vertrag-tree');
var col = tree.columns ? tree.columns["mitarbeiter-vertrag-tree-vertrag_id"] : "mitarbeiter-vertrag-tree-vertrag_id";
if(tree.currentIndex==-1)
return false;
var vertrag_id=tree.view.getCellText(tree.currentIndex,col);
var url = '<?php echo APP_ROOT ?>content/mitarbeiter/mitarbeiterDBDML.php';
var req = new phpRequest(url,'','');
req.add('vertrag_id',vertrag_id);
var tree=document.getElementById('mitarbeiter-vertrag-tree-zugeordnet');
type = getTreeCellText(tree, "mitarbeiter-vertrag-tree-zugeordnet-type", tree.currentIndex);
stsem = getTreeCellText(tree, "mitarbeiter-vertrag-tree-zugeordnet-studiensemester_kurzbz",tree.currentIndex);
pruefung_id = getTreeCellText(tree, "mitarbeiter-vertrag-tree-zugeordnet-pruefung_id",tree.currentIndex);
projektarbeit_id = getTreeCellText(tree, "mitarbeiter-vertrag-tree-zugeordnet-projektarbeit_id",tree.currentIndex);
mitarbeiter_uid = getTreeCellText(tree, "mitarbeiter-vertrag-tree-zugeordnet-mitarbeiter_uid",tree.currentIndex);
lehreinheit_id = getTreeCellText(tree, "mitarbeiter-vertrag-tree-zugeordnet-lehreinheit_id",tree.currentIndex);
betreuerart_kurzbz = getTreeCellText(tree, "mitarbeiter-vertrag-tree-zugeordnet-betreuerart_kurzbz",tree.currentIndex);
betrag = getTreeCellText(tree, "mitarbeiter-vertrag-tree-zugeordnet-betrag",tree.currentIndex);
req.add('type', 'vertragsdetaildelete');
req.add('vertragstype', type);
req.add('stsem', stsem);
req.add('pruefung_id', pruefung_id);
req.add('projektarbeit_id', projektarbeit_id);
req.add('mitarbeiter_uid', mitarbeiter_uid);
req.add('lehreinheit_id', lehreinheit_id);
req.add('betreuerart_kurzbz', betreuerart_kurzbz);
req.add('betrag', betrag);
var response = req.executePOST();
var val = new ParseReturnValue(response)
if (!val.dbdml_return)
{
if(val.dbdml_errormsg=='')
alert(response)
else
alert(val.dbdml_errormsg)
}
else
{
MitarbeiterVertragLoad(MitarbeiterVertragLoadedPerson);
return true;
}
}
@@ -0,0 +1,130 @@
<?php
/* Copyright (C) 2014 fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
*/
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/functions.inc.php');
$user = get_uid();
?>
var MitarbeiterVertragNeuBetragOld=0;
function MitarbeiterVertragNeuInit(person_id, vertrag_id)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
// *** Nicht zugeordnete Vertragselemente laden
vertragoffentree = document.getElementById('mitarbeiter-vertrag-tree-nichtzugeordnet');
url='<?php echo APP_ROOT;?>rdf/vertragdetails.rdf.php?person_id='+person_id+"&"+gettimestamp();
//Alte DS entfernen
var oldDatasources = vertragoffentree.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
vertragoffentree.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
vertragoffentree.builder.rebuild();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
var datasource = rdfService.GetDataSource(url);
vertragoffentree.database.AddDataSource(datasource);
if(typeof(vertrag_id)=='undefined' || vertrag_id=='')
{
// Neuer Eintrag
// Aktuelles Datum holen
var now = new Date();
var jahr = now.getFullYear();
var monat = now.getMonth()+1;
var tag = now.getDate();
// Zweistellige Monats und Tagangaben
monat = ((monat<10)?"0":"")+monat;
tag = ((tag<10)?"0":"")+tag;
document.getElementById('mitarbeiter-vertrag-neu-textbox-bezeichnung').value=jahr+monat+tag+'';
}
else
{
// Bearbeiten eines bestehenden Eintrages
var url = '<?php echo APP_ROOT ?>rdf/vertrag.rdf.php?vertrag_id='+vertrag_id+'&'+gettimestamp();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].
getService(Components.interfaces.nsIRDFService);
var dsource = rdfService.GetDataSourceBlocking(url);
var subject = rdfService.GetResource("http://www.technikum-wien.at/vertrag/" + vertrag_id);
var predicateNS = "http://www.technikum-wien.at/vertrag/rdf";
//Daten holen
vertragstyp_kurzbz = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#vertragstyp_kurzbz" ));
betrag = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#betrag" ));
bezeichnung = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#bezeichnung" ));
MitarbeiterVertragNeuBetragOld = betrag;
document.getElementById('mitarbeiter-vertrag-neu-textbox-bezeichnung').value=bezeichnung;
document.getElementById('mitarbeiter-vertrag-neu-textbox-betrag').value=betrag;
MenulistSelectItemOnValue('mitarbeiter-vertrag-neu-menulist-vertragstyp', vertragstyp_kurzbz)
document.getElementById('mitarbeiter-vertrag-neu-textbox-vertrag_id').value=vertrag_id;
}
}
/**
* Generiert einen Vertrag aus den markierten Elementen
*/
function MitarbeiterVertragNeuGenerateVertrag()
{
if(window.opener.MitarbeiterVertragGenerateVertrag(document))
window.close();
}
/**
* Wenn im Baum Eintraege markiert werden, wird die Summe der markierten Eintraege berechnet
* und in das Betrag Feld geschrieben
*/
function MitarbeiterVertragNeuSelectEntry()
{
var tree = document.getElementById('mitarbeiter-vertrag-tree-nichtzugeordnet');
if (tree.currentIndex==-1)
return;
var start = new Object();
var end = new Object();
var numRanges = tree.view.selection.getRangeCount();
var betragssumme = MitarbeiterVertragNeuBetragOld;
for (var t = 0; t < numRanges; t++)
{
tree.view.selection.getRangeAt(t,start,end);
for (var v = start.value; v <= end.value; v++)
{
betrag = getTreeCellText(tree, "mitarbeiter-vertrag-tree-nichtzugeordnet-betrag", v);
betragssumme = (parseFloat(betragssumme)+parseFloat(betrag));
}
}
document.getElementById('mitarbeiter-vertrag-neu-textbox-betrag').value=betragssumme;
}
@@ -0,0 +1,172 @@
<?php
/* Copyright (C) 2014 fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
*/
header("Cache-Control: no-cache");
header("Cache-Control: post-check=0, pre-check=0",false);
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
header("Content-type: application/vnd.mozilla.xul+xml");
include('../../config/vilesci.config.inc.php');
echo '<?xml version="1.0" encoding="UTF-8"?>'."\n";
echo '<?xml-stylesheet href="'.APP_ROOT.'skin/tempus.css" type="text/css"?>';
echo '<?xml-stylesheet href="'.APP_ROOT.'content/bindings.css" type="text/css"?>';
echo '<?xml-stylesheet href="'.APP_ROOT.'content/datepicker/datepicker.css" type="text/css"?>';
if(isset($_GET['person_id']) && is_numeric($_GET['person_id']))
$person_id = $_GET['person_id'];
else
$person_id='';
if(isset($_GET['vertrag_id']) && is_numeric($_GET['vertrag_id']))
$vertrag_id = $_GET['vertrag_id'];
else
$vertrag_id='';
?>
<window id="mitarbeiter-vertrag-neu-dialog" title="Neu"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
onload="MitarbeiterVertragNeuInit(<?php echo "'".$person_id."','".$vertrag_id."'"; ?>)"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/mitarbeiter/mitarbeitervertragneudialog.js.php" />
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/functions.js.php" />
<vbox flex="1">
<hbox hidden="true">
<label value="VertragID" control="mitarbeiter-vertrag-neu-textbox-vertrag_id" />
<textbox id="mitarbeiter-vertrag-neu-textbox-vertrag_id" value=""/>
</hbox>
<description>Die folgenden Lehraufträge sind noch keinem Vertrag zugeordnet.
Markieren Sie die Lehraufträge um diese dem Vertrag zuzuordnen:</description>
<tree id="mitarbeiter-vertrag-tree-nichtzugeordnet" seltype="multi" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/vertragdetails"
enableColumnDrag="true"
context="mitarbeiter-vertrag-tree-popup"
flags="dont-build-content"
onselect="MitarbeiterVertragNeuSelectEntry()"
>
<treecols>
<treecol id="mitarbeiter-vertrag-tree-nichtzugeordnet-type" label="Typ" flex="2" hidden="false" primary="true"
class="sortDirectionIndicator"
sortActive="true"
sortDirection="descending"
sort="rdf:http://www.technikum-wien.at/vertragdetails/rdf#type"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-vertrag-tree-nichtzugeordnet-betrag" label="Betrag" flex="2" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/vertragdetails/rdf#betrag" />
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-vertrag-tree-nichtzugeordnet-bezeichnung" label="Bezeichnung" flex="2" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/vertragdetails/rdf#bezeichnung" />
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-vertrag-tree-nichtzugeordnet-studiensemester_kurzbz" label="Studiensemester" flex="2" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/vertragdetails/rdf#studiensemester_kurzbz" />
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-vertrag-tree-nichtzugeordnet-pruefung_id" label="PruefungID" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/vertragdetails/rdf#pruefung_id" />
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-vertrag-tree-nichtzugeordnet-mitarbeiter_uid" label="mitarbeiter_uid" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/vertragdetails/rdf#mitarbeiter_uid" />
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-vertrag-tree-nichtzugeordnet-projektarbeit_id" label="ProjektarbeitID" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/vertragdetails/rdf#projektarbeit_id" />
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-vertrag-tree-nichtzugeordnet-lehreinheit_id" label="LehreinheitID" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/vertragdetails/rdf#lehreinheit_id" />
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-vertrag-tree-nichtzugeordnet-betreuerart_kurzbz" label="BetreuerartKurzbz" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/vertragdetails/rdf#betreuerart_kurzbz" />
</treecols>
<template>
<treechildren flex="1" >
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/vertragdetails/rdf#type"/>
<treecell label="rdf:http://www.technikum-wien.at/vertragdetails/rdf#betrag"/>
<treecell label="rdf:http://www.technikum-wien.at/vertragdetails/rdf#bezeichnung"/>
<treecell label="rdf:http://www.technikum-wien.at/vertragdetails/rdf#studiensemester_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/vertragdetails/rdf#pruefung_id"/>
<treecell label="rdf:http://www.technikum-wien.at/vertragdetails/rdf#mitarbeiter_uid"/>
<treecell label="rdf:http://www.technikum-wien.at/vertragdetails/rdf#projektarbeit_id"/>
<treecell label="rdf:http://www.technikum-wien.at/vertragdetails/rdf#lehreinheit_id"/>
<treecell label="rdf:http://www.technikum-wien.at/vertragdetails/rdf#betreuerart_kurzbz"/>
</treerow>
</treeitem>
</treechildren>
</template>
</tree>
<hbox>
<grid id="mitarbeiter-buchung-grid-detail" style="margin:4px;" flex="1">
<columns >
<column flex="1"/>
<column flex="8"/>
</columns>
<rows>
<row>
<label value="Bezeichnung" control="mitarbeiter-vertrag-neu-textbox-bezeichnung" />
<hbox>
<textbox id="mitarbeiter-vertrag-neu-textbox-bezeichnung" value=""/>
<spacer />
</hbox>
</row>
<row>
<label value="Typ" control="mitarbeiter-vertrag-neu-menulist-vertragstyp"/>
<menulist id="mitarbeiter-vertrag-neu-menulist-vertragstyp" disabled="false"
datasources="<?php echo APP_ROOT ?>rdf/vertragstyp.rdf.php"
ref="http://www.technikum-wien.at/vertragstyp" >
<menupopup>
<menuitem value=""
label="-- Keine Auswahl --"
/>
</menupopup>
<template>
<rule>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/vertragstyp/rdf#vertragstyp_kurzbz"
label="rdf:http://www.technikum-wien.at/vertragstyp/rdf#vertragstyp_bezeichnung"
uri="rdf:*"/>
</menupopup>
</rule>
</template>
</menulist>
</row>
<row>
<label value="Betrag" control="mitarbeiter-vertrag-neu-textbox-betrag" />
<hbox>
<textbox id="mitarbeiter-vertrag-neu-textbox-betrag" value="" size="10" />
<spacer />
</hbox>
</row>
</rows>
</grid>
</hbox>
<button label="Vertrag erstellen" oncommand="MitarbeiterVertragNeuGenerateVertrag()" />
</vbox>
</window>
@@ -0,0 +1,232 @@
<?php
/* Copyright (C) 2014 fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
*/
header("Cache-Control: no-cache");
header("Cache-Control: post-check=0, pre-check=0",false);
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
header("Content-type: application/vnd.mozilla.xul+xml");
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/vertrag.class.php');
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
?>
<overlay id="Mitarbeitervertrag"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/mitarbeiter/mitarbeitervertrag.js.php" />
<vbox id="mitarbeiter-vertrag" style="overflow:auto;margin:0px;" flex="1">
<popupset>
<menupopup id="mitarbeiter-vertrag-tree-vertragsstatus-popup">
<?php
$vertrag = new vertrag();
$vertrag->loadVertragsstatus();
foreach($vertrag->result as $row)
{
echo '<menuitem label="'.$row->bezeichnung.'" oncommand="MitarbeiterVertragStatusAdd(\''.$row->vertragsstatus_kurzbz.'\');" hidden="false"/>';
}
?>
</menupopup>
<menupopup id="mitarbeiter-vertrag-tree-popup">
<menuitem label="Bearbeiten" oncommand="MitarbeiterVertragEdit()" />
</menupopup>
<menupopup id="mitabeiter-vertrag-tree-detail-popup">
<menuitem label="Entfernen" oncommand="MitarbeiterVertragDetailDelete()" />
</menupopup>
</popupset>
<vbox flex="1">
<vbox flex="1">
<hbox>
<description>Verträge</description>
<spacer flex="1" />
<button label="Neuen Vertrag erstellen" oncommand="MitarbeiterVertragAddVertrag()" />
</hbox>
<tree id="mitarbeiter-vertrag-tree" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/vertrag"
enableColumnDrag="true"
flags="dont-build-content"
context="mitarbeiter-vertrag-tree-popup"
onselect="MitarbeiterVertragSelectVertrag();"
ondblclick="MitarbeiterVertragEdit()"
>
<treecols>
<treecol id="mitarbeiter-vertrag-tree-bezeichnung" label="Bezeichnung" flex="2" hidden="false" primary="true"
class="sortDirectionIndicator"
sortActive="true"
sortDirection="descending"
sort="rdf:http://www.technikum-wien.at/vertrag/rdf#bezeichnung"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-vertrag-tree-betrag" label="Betrag" flex="2" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/vertrag/rdf#betrag" />
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-vertrag-tree-vertragstyp" label="Vertragstyp" flex="2" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/vertrag/rdf#vertragstyp_bezeichnung" />
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-vertrag-tree-vertragstyp_kurzbz" label="VertragstypKurzbz" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/vertrag/rdf#vertragstyp_kurzbz" />
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-vertrag-tree-vertrag_id" label="vertragID" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/vertrag/rdf#vertrag_id" />
<splitter class="tree-splitter"/>
</treecols>
<template>
<treechildren flex="1" >
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/vertrag/rdf#bezeichnung"/>
<treecell label="rdf:http://www.technikum-wien.at/vertrag/rdf#betrag"/>
<treecell label="rdf:http://www.technikum-wien.at/vertrag/rdf#vertragstyp_bezeichnung"/>
<treecell label="rdf:http://www.technikum-wien.at/vertrag/rdf#vertragstyp_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/vertrag/rdf#vertrag_id"/>
</treerow>
</treeitem>
</treechildren>
</template>
</tree>
</vbox>
</vbox>
<hbox flex="1" id="mitarbeiter-vertrag-vbox-vertragsdetails">
<vbox flex="1">
<description>Vertragsdetails</description>
<tree id="mitarbeiter-vertrag-tree-zugeordnet" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/vertragdetails"
enableColumnDrag="true"
context="mitabeiter-vertrag-tree-detail-popup"
flags="dont-build-content"
>
<treecols>
<treecol id="mitarbeiter-vertrag-tree-zugeordnet-type" label="Typ" flex="2" hidden="false" primary="true"
class="sortDirectionIndicator"
sortActive="true"
sortDirection="descending"
sort="rdf:http://www.technikum-wien.at/vertragdetails/rdf#type"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-vertrag-tree-zugeordnet-betrag" label="Betrag" flex="2" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/vertragdetails/rdf#betrag" />
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-vertrag-tree-zugeordnet-bezeichnung" label="Bezeichnung" flex="2" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/vertragdetails/rdf#bezeichnung" />
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-vertrag-tree-zugeordnet-studiensemester_kurzbz" label="Studiensemester" flex="2" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/vertragdetails/rdf#studiensemester_kurzbz" />
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-vertrag-tree-zugeordnet-pruefung_id" label="PruefungID" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/vertragdetails/rdf#pruefung_id" />
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-vertrag-tree-zugeordnet-mitarbeiter_uid" label="mitarbeiter_uid" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/vertragdetails/rdf#mitarbeiter_uid" />
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-vertrag-tree-zugeordnet-projektarbeit_id" label="ProjektarbeitID" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/vertragdetails/rdf#projektarbeit_id" />
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-vertrag-tree-zugeordnet-lehreinheit_id" label="LehreinheitID" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/vertragdetails/rdf#lehreinheit_id" />
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-vertrag-tree-zugeordnet-betreuerart_kurzbz" label="BetreuerartKurzbz" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/vertragdetails/rdf#betreuerart_kurzbz" />
</treecols>
<template>
<treechildren flex="1" >
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/vertragdetails/rdf#type"/>
<treecell label="rdf:http://www.technikum-wien.at/vertragdetails/rdf#betrag"/>
<treecell label="rdf:http://www.technikum-wien.at/vertragdetails/rdf#bezeichnung"/>
<treecell label="rdf:http://www.technikum-wien.at/vertragdetails/rdf#studiensemester_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/vertragdetails/rdf#pruefung_id"/>
<treecell label="rdf:http://www.technikum-wien.at/vertragdetails/rdf#mitarbeiter_uid"/>
<treecell label="rdf:http://www.technikum-wien.at/vertragdetails/rdf#projektarbeit_id"/>
<treecell label="rdf:http://www.technikum-wien.at/vertragdetails/rdf#lehreinheit_id"/>
<treecell label="rdf:http://www.technikum-wien.at/vertragdetails/rdf#betreuerart_kurzbz"/>
</treerow>
</treeitem>
</treechildren>
</template>
</tree>
</vbox>
<vbox flex="1">
<description>Vertragsstatus</description>
<tree id="mitarbeiter-vertrag-tree-vertragsstatus" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/vertragsstatus"
enableColumnDrag="true"
context="mitarbeiter-vertrag-tree-vertragsstatus-popup"
flags="dont-build-content"
>
<treecols>
<treecol id="mitarbeiter-vertrag-tree-vertragsstatus-vertragsstatus_bezeichnung" label="Status" flex="2" hidden="false" primary="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/vertragsstatus/rdf#vertragsstatus_bezeichnung"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-vertrag-tree-vertragsstatus-datum" label="Datum" flex="2" hidden="false"
class="sortDirectionIndicator"
sortActive="true"
sortDirection="descending"
sort="rdf:http://www.technikum-wien.at/vertragsstatus/rdf#datum" />
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-vertrag-tree-vertragsstatus-vertrag_id" label="VertragID" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/vertragsstatus/rdf#vertrag_id" />
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-vertrag-tree-vertragsstatus-uid" label="User" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/vertragsstatus/rdf#uid" />
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-vertrag-tree-vertragsstatus-vertragsstatus_kurzbz" label="VertragsstatusKurzbz" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/vertragsstatus/rdf#vertragsstatus_kurzbz" />
</treecols>
<template>
<treechildren flex="1" >
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/vertragsstatus/rdf#vertragsstatus_bezeichnung"/>
<treecell label="rdf:http://www.technikum-wien.at/vertragsstatus/rdf#datum"/>
<treecell label="rdf:http://www.technikum-wien.at/vertragsstatus/rdf#vertrag_id"/>
<treecell label="rdf:http://www.technikum-wien.at/vertragsstatus/rdf#uid"/>
<treecell label="rdf:http://www.technikum-wien.at/vertragsstatus/rdf#vertragsstatus_kurzbz"/>
</treerow>
</treeitem>
</treechildren>
</template>
</tree>
</vbox>
</hbox>
</vbox>
</overlay>