GRKL#35530 Verhuizen van objecten (geen werkplekken te selecteren)

svn path=/Website/trunk/; revision=28730
This commit is contained in:
Erik Groener
2016-04-01 11:37:15 +00:00
parent 919a719d03
commit 78c2304186
3 changed files with 128 additions and 88 deletions

View File

@@ -14,6 +14,7 @@
urole user role (fe, fo, bo, mi)
outputmode behave in an output mode, print to 0 = screen, 1 = printer, 2 = excel, etc.
showall show all objects which meets with the given requirements
showmode what to show
inspect Toon ook inspectie kolommen
inspClosed search for objects inspections wich are verwerkt
inspDone search for objects inspections wich are done
@@ -94,6 +95,7 @@ function ins_list (pautfunction, params)
var print = (outputmode == 1 || outputmode == 5);
var excel = (outputmode == 2 || outputmode == 6);
var showall = params.showall;
var showmode = params.showmode;
var reg_key = params.reg_key;
var dist_key = params.dist_key;
@@ -1673,103 +1675,132 @@ function ins_list (pautfunction, params)
* End callback functies ResultsetTable for FO en BO
**************************************************/
// TODO conditionele Add button
var rst = new ResultsetTable({ keyColumn: "ins_deel_key",
sql: sql,
ID: "instable",
rowData: fnrowData,
rowActionEnabler: fnrowActionEnabler,
rowClass: params.inspect? fnrowClass : null,
flexModule: "INS",
flexId: "ins_deel_key",
flexGroupId: "ins_srtdeel_key",
multiple: true,
filterParams: params,
outputmode: outputmode,
title: (parent_key? L("lcl_subobjects") : (koppel_key? L("lcl_ins_koppelobjects") : L("lcl_ins_objects"))),
showAll: showall,
buttons: buttons
});
// Kolommen
if (fronto)
if (showmode == 1)
{
rst.addColumn(new Column({caption: L("lcl_obj_sort"), content: "soort", hasActions: true}));
buttons = [{ icon: "page_refresh.png", title: L("lcl_refresh"), action: "FcltMgr.reload()" }];
var rst = new ResultsetTable({ keyColumn: "ins_deel_key",
sql: sql,
ID: "instable",
rowData: fnrowData,
// rowActionEnabler: fnrowActionEnabler,
rowClass: null,
flexModule: "INS",
flexId: "ins_deel_key",
flexGroupId: "ins_srtdeel_key",
multiple: true,
filterParams: params,
outputmode: outputmode,
title: L("lcl_ins_objects"),
showAll: showall,
noPrint: true,
noExcel: true,
buttons: buttons
});
// Kolommen
rst.addColumn(new Column({caption: L("lcl_obj_identification"), content: "ins_deel_omschrijving"}));
rst.addColumn(new Column({caption: L("lcl_ins_opmerking"), content: "ins_deel_opmerking"}));
rst.addColumn(new Column({caption: L("lcl_obj_position"), content: fnPlace}));
rst.addColumn(new Column({caption: L("lcl_obj_lent_out_to"), content: fnLentOutTo}));
rst.addColumn(new Column({caption: L("lcl_obj_sort"), content: "soort"}));
}
else
{
if (koppel_key && (L("lcl_obj_koppelaan") != L("lcl_obj_koppelvan")))
{
rst.addColumn(new Column({caption: L("lcl_obj_koppelaan"), content: fnKoppelaan}));
rst.addColumn(new Column({caption: L("lcl_obj_koppelvan"), content: fnKoppelvan}));
}
else // gewoon
{
if (params.inspect && controletype == -1)
rst.addColumn(new Column({caption: L("lcl_ins_srtcontrole_type"), content: fnSrtControleType}));
rst.addColumn(new Column({caption: L("lcl_obj_identification"), content: "ins_deel_omschrijving"}));
rst.addColumn(new Column({caption: L("lcl_ins_opmerking"), content: "ins_deel_opmerking"}));
}
// TODO conditionele Add button
var rst = new ResultsetTable({ keyColumn: "ins_deel_key",
sql: sql,
ID: "instable",
rowData: fnrowData,
rowActionEnabler: fnrowActionEnabler,
rowClass: params.inspect? fnrowClass : null,
flexModule: "INS",
flexId: "ins_deel_key",
flexGroupId: "ins_srtdeel_key",
multiple: true,
filterParams: params,
outputmode: outputmode,
title: (parent_key? L("lcl_subobjects") : (koppel_key? L("lcl_ins_koppelobjects") : L("lcl_ins_objects"))),
showAll: showall,
buttons: buttons
});
if (koppel_key)
rst.addColumn(new Column({caption: L("lcl_obj_koppeloms"), content: "ins_deelkoppeling_omschrijving"}));
if (params.inspect)
// Kolommen
if (fronto)
{
rst.addColumn(new Column({caption: (params.inspDone? L("lcl_ins_controle_datum") : L("lcl_ins_controle_next")), content: fnInspectie}));
rst.addColumn(new Column({caption: L("lcl_ins_controle_plandate"), content: fnPlandatum}));
rst.addColumn(new Column({caption: L("lcl_ins_controle_srt"), content: "ins_srtcontrole_omschrijving"}));
rst.addColumn(new Column({caption: L("lcl_ins_controle_groep"), content: "groepoms"}));
}
if (!parent_key) {
rst.addColumn(new Column({caption: L("lcl_obj_position"), content: "plaats"}));
if (!fgraph)
rst.addColumn(new Column({caption: L("lcl_obj_owner"), content: "eigenaar", combine: true}));
}
rst.addColumn(new Column({caption: L("lcl_obj_sort"), content: "soort"}));
if (!parent_key && !koppel_key && !params.inspect) {
if (!fgraph && !embedded &&hasDrawings)
rst.addColumn(new Column({caption: L("lcl_fg_gotofgheader"), content: fnPosition, align:"center"}));
if (!embedded && ErisReserveerbaar && !params.inspect)
rst.addColumn(new Column({caption: L("lcl_obj_reserveerbaar"), content: fnReserveerbaar, align:"center"}));
if (!embedded && ErisUitleenbaar && !params.inspect)
rst.addColumn(new Column({caption: L("lcl_obj_uitleensrtdeel"), content: fnUitleenbaar, align:"center"}));
}
}
// Acties
if (fronto && authparams.PRSwritelevel < 9) // Ik heb write rechten nodig voor deze acties
{
// 1 van de 2 mag zichtbaar zijn. Kijken naar query resultaat!!!
// PF: TODO: multi in/uit werkt niet goed
rst.addAction({ action: "insEdit", caption: L("lcl_details"), enabler: "eDetails", isDefault: true}); // Actie insEdit gaat toch eerst naar show mode.
// Inchecken of uitchecken is zichtbaar. Beiden kunnen als default aangeven worden.
// Nu alle regels aanklikbaar of inchecken of uitchecken
rst.addAction({ action: "insCheckOut", caption: L("lcl_obj_lend_out"), enabler: "eLendOut"});
rst.addAction({ action: "insCheckIn", caption: L("lcl_obj_receive"), enabler: "eReceive"});
rst.addAction({ action: "insAdapt", caption: L("lcl_ins_adapt"), enabler: "eAdapt"});
}
if (backo)
{
rst.addAction({ action: "insEdit", caption: L("lcl_change"), isDefault: true}); // isDefault, dus nooit multi, alleen door aanklikken regel. Multi via afgehandeld via functie insMultiEdit()
if (params.inspect)
{
rst.addAction({ action: "insEditInsp", caption: L("lcl_change"), enabler: "eEditInsp" });
rst.addAction({ action: "insPlan", caption: L("lcl_ins_schedule"), multi: !tiny, multiOnce: true, enabler: "ePlan" });
rst.addAction({ action: "insStart", caption: L("lcl_ins_start"), multi: !tiny, multiOnce: true, enabler: "eStart" });
rst.addAction({ action: "insClose", caption: L("lcl_ins_close") + "/" + L("lcl_ins_finish"), multi: !tiny, multiOnce: true, enabler: "eClose" });
rst.addAction({ action: "insFinish", caption: L("lcl_ins_finish"), multi: !tiny, multiOnce: true, enabler: "eFinish" });
rst.addColumn(new Column({caption: L("lcl_obj_sort"), content: "soort", hasActions: true}));
rst.addColumn(new Column({caption: L("lcl_obj_identification"), content: "ins_deel_omschrijving"}));
rst.addColumn(new Column({caption: L("lcl_ins_opmerking"), content: "ins_deel_opmerking"}));
rst.addColumn(new Column({caption: L("lcl_obj_position"), content: fnPlace}));
rst.addColumn(new Column({caption: L("lcl_obj_lent_out_to"), content: fnLentOutTo}));
}
else
{
rst.addAction({ action: "insDelete", caption: L("lcl_delete"), enabler: "eDelete", single: false, multi: !tiny, multiOnce: true});
if (hasWriteINSMAN) // Ik heb INSMAN rechten nodig om multi te kunnen editen. Met alleen INSUSE rechten mag ik dat vooralsnog niet.
rst.addAction({ action: "insMultiEdit", caption: L("lcl_ins_multi_edit"), enabler: "eEditMulti", multi: !tiny, single: false, multiOnce: true});
rst.addAction({ action: "insMultiMove", caption: L("lcl_ins_multi_move"), enabler: "NotExist", multi: !tiny, multiOnce: true});
if (koppel_key && (L("lcl_obj_koppelaan") != L("lcl_obj_koppelvan")))
{
rst.addColumn(new Column({caption: L("lcl_obj_koppelaan"), content: fnKoppelaan}));
rst.addColumn(new Column({caption: L("lcl_obj_koppelvan"), content: fnKoppelvan}));
}
else // gewoon
{
if (params.inspect && controletype == -1)
rst.addColumn(new Column({caption: L("lcl_ins_srtcontrole_type"), content: fnSrtControleType}));
rst.addColumn(new Column({caption: L("lcl_obj_identification"), content: "ins_deel_omschrijving"}));
rst.addColumn(new Column({caption: L("lcl_ins_opmerking"), content: "ins_deel_opmerking"}));
}
if (koppel_key)
rst.addColumn(new Column({caption: L("lcl_obj_koppeloms"), content: "ins_deelkoppeling_omschrijving"}));
if (params.inspect)
{
rst.addColumn(new Column({caption: (params.inspDone? L("lcl_ins_controle_datum") : L("lcl_ins_controle_next")), content: fnInspectie}));
rst.addColumn(new Column({caption: L("lcl_ins_controle_plandate"), content: fnPlandatum}));
rst.addColumn(new Column({caption: L("lcl_ins_controle_srt"), content: "ins_srtcontrole_omschrijving"}));
rst.addColumn(new Column({caption: L("lcl_ins_controle_groep"), content: "groepoms"}));
}
if (!parent_key) {
rst.addColumn(new Column({caption: L("lcl_obj_position"), content: "plaats"}));
if (!fgraph)
rst.addColumn(new Column({caption: L("lcl_obj_owner"), content: "eigenaar", combine: true}));
}
rst.addColumn(new Column({caption: L("lcl_obj_sort"), content: "soort"}));
if (!parent_key && !koppel_key && !params.inspect) {
if (!fgraph && !embedded &&hasDrawings)
rst.addColumn(new Column({caption: L("lcl_fg_gotofgheader"), content: fnPosition, align:"center"}));
if (!embedded && ErisReserveerbaar && !params.inspect)
rst.addColumn(new Column({caption: L("lcl_obj_reserveerbaar"), content: fnReserveerbaar, align:"center"}));
if (!embedded && ErisUitleenbaar && !params.inspect)
rst.addColumn(new Column({caption: L("lcl_obj_uitleensrtdeel"), content: fnUitleenbaar, align:"center"}));
}
}
// Acties
if (fronto && authparams.PRSwritelevel < 9) // Ik heb write rechten nodig voor deze acties
{
// 1 van de 2 mag zichtbaar zijn. Kijken naar query resultaat!!!
// PF: TODO: multi in/uit werkt niet goed
rst.addAction({ action: "insEdit", caption: L("lcl_details"), enabler: "eDetails", isDefault: true}); // Actie insEdit gaat toch eerst naar show mode.
// Inchecken of uitchecken is zichtbaar. Beiden kunnen als default aangeven worden.
// Nu alle regels aanklikbaar of inchecken of uitchecken
rst.addAction({ action: "insCheckOut", caption: L("lcl_obj_lend_out"), enabler: "eLendOut"});
rst.addAction({ action: "insCheckIn", caption: L("lcl_obj_receive"), enabler: "eReceive"});
rst.addAction({ action: "insAdapt", caption: L("lcl_ins_adapt"), enabler: "eAdapt"});
}
if (backo)
{
rst.addAction({ action: "insEdit", caption: L("lcl_change"), isDefault: true}); // isDefault, dus nooit multi, alleen door aanklikken regel. Multi via afgehandeld via functie insMultiEdit()
if (params.inspect)
{
rst.addAction({ action: "insEditInsp", caption: L("lcl_change"), enabler: "eEditInsp" });
rst.addAction({ action: "insPlan", caption: L("lcl_ins_schedule"), multi: !tiny, multiOnce: true, enabler: "ePlan" });
rst.addAction({ action: "insStart", caption: L("lcl_ins_start"), multi: !tiny, multiOnce: true, enabler: "eStart" });
rst.addAction({ action: "insClose", caption: L("lcl_ins_close") + "/" + L("lcl_ins_finish"), multi: !tiny, multiOnce: true, enabler: "eClose" });
rst.addAction({ action: "insFinish", caption: L("lcl_ins_finish"), multi: !tiny, multiOnce: true, enabler: "eFinish" });
}
else
{
rst.addAction({ action: "insDelete", caption: L("lcl_delete"), enabler: "eDelete", single: false, multi: !tiny, multiOnce: true});
if (hasWriteINSMAN) // Ik heb INSMAN rechten nodig om multi te kunnen editen. Met alleen INSUSE rechten mag ik dat vooralsnog niet.
rst.addAction({ action: "insMultiEdit", caption: L("lcl_ins_multi_edit"), enabler: "eEditMulti", multi: !tiny, single: false, multiOnce: true});
rst.addAction({ action: "insMultiMove", caption: L("lcl_ins_multi_move"), enabler: "NotExist", multi: !tiny, multiOnce: true});
}
}
}

View File

@@ -59,6 +59,7 @@ var inspsoonto = getQParamDate("inspsoon_to", null); // Perdiode tot
var donedatefrom = getQParamDate("donedate_from", null); // Periode van
var donedateto = getQParamDate("donedate_to", null); // Perdiode tot
var beh_key = getQParamInt("sBeh_key", -1); // Beheerder key
var showmode = getQParamInt("showmode", null); //beknopte lijst
var insObjIncl = getQParamInt("insObjIncl", 0) == 1; // Ook onderdelen
var expObjIncl = getQParamInt("expObjIncl", 0) == 1; // Ook vervallen objecten
@@ -103,6 +104,7 @@ ins_list ( autfunction,
{ urole : urole,
outputmode: outputmode,
showall: showall,
showmode: showmode,
reg_key: (reg_key != -1 ? reg_key : null),
dist_key: (dist_key != -1 ? dist_key : null),
loc_key: (loc_key != -1 ? loc_key : null),

View File

@@ -75,7 +75,7 @@ FCLTHeader.Requires({plugins:["jQuery"], js: []})
if (pwp_key > 0)
{ // Wijzigen van persoon en/of plaats alleen met ALG write rechten.
var canAdd = (authparams.ALGwritelevel < 9); // TODO: fijner, ik denk 3. Ik moet voor deze locatie, dit district of deze regio schrijfrechten hebben.
readonly = !canAdd || from_wproom;
readonly = !canAdd;
sql = "SELECT prs_perslid_key, "
+ " prs_perslidwerkplek_bezetting, "
@@ -168,6 +168,13 @@ CreateButtons([{ title: L("lcl_submit"), action: "alg_submit()"},
{ title: L("lcl_cancel"), action: "alg_cancel()"}]);
IFACE.FORM_END();
%>
</form>
<div id="result">
<iframe width="100%" height="100%"
src="../ins/ins_search_list.asp?urole=bo&showmode=1&sName_key=<%=prs_key%>"
name="workFrame" id="workFrame"
onload="FcltMgr.iframeLoaded(this)"
frameborder="0" scrolling="no">
<iframe>
</div>
</body>
</html>