FSN#33999: Realisatie TMJ module voor TobiasAX obv Inspectiemodule.
svn path=/Website/trunk/; revision=30411
This commit is contained in:
@@ -36,8 +36,16 @@ model_ctr_disc_params =
|
||||
},
|
||||
"inspection_type": {
|
||||
"dbs": "ctr_disc_params_controle_type",
|
||||
"label": buildSrtcontroletypeList(),
|
||||
"typ": "check0"
|
||||
"label": L("ctr_inspection_type"),
|
||||
"typ": "key",
|
||||
"LOV": buildSrtcontroletypeList(),
|
||||
"required": true
|
||||
},
|
||||
"ismjob": {
|
||||
"dbs": "ctr_disc_params_ismjob",
|
||||
"label": L("ctr_ismjob"),
|
||||
"typ": "check0",
|
||||
"required": true
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -68,7 +68,7 @@ function _model_ctr_discipline()
|
||||
"required": true
|
||||
}
|
||||
};
|
||||
/* Velden van RES_DISC_PARAMS komen er dynamisch bij */
|
||||
/* Velden van CTR_DISC_PARAMS komen er dynamisch bij */
|
||||
this.disc_params = {
|
||||
model: model_ctr_disc_params,
|
||||
joinfield: "ctr_ins_discipline_key"
|
||||
|
||||
@@ -92,7 +92,8 @@ function model_ins_srtcontrole()
|
||||
"dbs": "ctr_discipline_key",
|
||||
"label": L("ctr_discipline"),
|
||||
"typ": "key",
|
||||
"foreign": "ctr_discipline"
|
||||
"foreign": "ctr_discipline",
|
||||
"required": true
|
||||
},
|
||||
"inspection_mode": {
|
||||
"dbs": "ins_srtcontrole_mode",
|
||||
@@ -133,21 +134,64 @@ function model_ins_srtcontrole()
|
||||
"typ": "button",
|
||||
"defaultvalue": L("lcl_select")
|
||||
},
|
||||
"costs": {
|
||||
"dbs": "ins_srtcontrole_kosten",
|
||||
"label": L("ins_srtcontrole_kosten"),
|
||||
"typ": "float"
|
||||
},
|
||||
"costs2": {
|
||||
"dbs": "ins_srtcontrole_kosten2",
|
||||
"label": L("ins_srtcontrole_kosten2"),
|
||||
"typ": "float"
|
||||
},
|
||||
"costs3": {
|
||||
"dbs": "ins_srtcontrole_kosten3",
|
||||
"label": L("ins_srtcontrole_kosten3"),
|
||||
"typ": "float"
|
||||
},
|
||||
"material": {
|
||||
"dbs": "ins_srtcontrole_materiaal",
|
||||
"label": L("ins_srtcontrole_materiaal"),
|
||||
"typ": "float"
|
||||
},
|
||||
"hours": {
|
||||
"dbs": "ins_srtcontrole_uren",
|
||||
"label": L("ins_srtcontrole_uren"),
|
||||
"typ": "float"
|
||||
},
|
||||
"end_date": {
|
||||
"dbs": "ins_srtcontrole_eind",
|
||||
"label": L("ins_srtcontrole_eind"),
|
||||
"typ": "date"
|
||||
},
|
||||
"afbouw_time": {
|
||||
"dbs": "ins_srtcontrole_afbouwtijd",
|
||||
"label": L("ins_srtcontrole_afbouwtijd"),
|
||||
"typ": "number"
|
||||
},
|
||||
"inspection_group": {
|
||||
"dbs": "ins_srtcontrole_groep",
|
||||
"label": L("ins_srtcontrole_groep"),
|
||||
"typ": "varchar"
|
||||
},
|
||||
"costs": {
|
||||
"dbs": "ins_srtcontrole_kosten",
|
||||
"label": L("ins_srtcontrole_kosten"),
|
||||
"percentage": {
|
||||
"dbs": "ins_srtcontrole_percentage",
|
||||
"label": L("ins_srtcontrole_percentage"),
|
||||
"typ": "float"
|
||||
},
|
||||
"btw": {
|
||||
"dbs": "fin_btwtabelwaarde_key",
|
||||
"label": L("ins_srtcontrole_btw"),
|
||||
"typ": "key",
|
||||
"foreign": { "tbl": "fin_btwtabelwaarde",
|
||||
"key": "fin_btwtabelwaarde_key",
|
||||
"desc": "fin_btwtabelwaarde_oms",
|
||||
"where": "fin_btwtabel_key = (SELECT fin_btwtabel_key"
|
||||
+ " FROM fin_btwtabelwaarde"
|
||||
+ " WHERE fin_btwtabelwaarde_key = " + S("fin_btw_default")
|
||||
+ ")"
|
||||
}
|
||||
},
|
||||
"remark": {
|
||||
"dbs": "ins_srtcontrole_opmerking",
|
||||
"label": L("ins_srtcontrole_opmerking"),
|
||||
|
||||
@@ -634,7 +634,7 @@ ins = {checkAutLevel:
|
||||
|
||||
iresult.invoerAfterNext = invoerAfterNext;
|
||||
|
||||
// Voor CTR alleen discipline autorisatie met 3D ja/nee autorisatie (fac_functie_min_level = 0)
|
||||
// Voor CTR alleen discipline autorisatie met 3D ja/nee en read/write autorisatie (fac_functie_min_level = 3)
|
||||
ctrresult = user.func_enabled("CTR",
|
||||
ctr_discipline_key,
|
||||
null, // alg_key is nvt
|
||||
@@ -642,31 +642,84 @@ ins = {checkAutLevel:
|
||||
false, // pessimist (checkOptimistic)
|
||||
true); // nog even optional (isOptional)
|
||||
|
||||
var hasCTRRights = ctrresult.canWrite("WEB_CTRUSE"); // Heb ik rechten om periodieke taken uit te voeren (Ja/Nee autorisatie (canRead = canWrite))?
|
||||
iresult.hasCTRRead = ctrresult.canRead("WEB_CTRUSE"); // Heb ik lees rechten om periodieke taken te zien?
|
||||
iresult.hasCTRWrite = ctrresult.canWrite("WEB_CTRUSE"); // Heb ik schrijf rechten om periodieke taken uit te voeren?
|
||||
|
||||
iresult.canShowXcp = iresult.hasCTRRead && iresult.canRead("WEB_INSMAN"); // Exceptions (xcp) waarden inspecties/taken bekijken (waarden in ins_srtcontroledl_xcp tabel).
|
||||
iresult.canChangeXcp = iresult.hasCTRWrite && iresult.canWrite("WEB_INSMAN"); // Exceptions (xcp) waarden inspecties/taken wijzigen (waarden in ins_srtcontroledl_xcp tabel).
|
||||
|
||||
// Als de inspectie vervallen is moet je alleen nog de lopende inspecties (ingepland of later) kunnen gereedmelden en/of afronden,
|
||||
// zodat deze inspectie afgerond kan worden. Nieuwe inspectie kunnen nooit meer beginnen.
|
||||
// Eerste inspectie of verwerkte inspectie kan niet gewijzigd worden.
|
||||
iresult.canMsuEdit = iresult.writemsu && ins_deelsrtcontrole_status == 6;
|
||||
iresult.canInspEdit = ((iresult.canInspect && ins_deelsrtcontrole_status != -1 && ins_deelsrtcontrole_status != 6) ||
|
||||
iresult.canInspEdit = ((iresult.readuse && ins_deelsrtcontrole_status != -1 && ins_deelsrtcontrole_status != 6) ||
|
||||
iresult.canMsuEdit) &&
|
||||
!vervallen && actief && hasCTRRights;
|
||||
iresult.canInspShow = iresult.readuse && !vervallen && (ins_deelsrtcontrole_status >= 0) && hasCTRRights;
|
||||
!vervallen && actief && iresult.hasCTRWrite;
|
||||
iresult.canInspShow = iresult.readuse && !vervallen && (ins_deelsrtcontrole_status >= 0) && iresult.hasCTRRead;
|
||||
// Bij eerste inspectie of verwerkte inspectie kan er gepland worden.
|
||||
iresult.canInspPlan = iresult.canInspect && !vervallen && (ins_deelsrtcontrole_status == -1 || ins_deelsrtcontrole_status == 6) && actief && hasCTRRights;
|
||||
iresult.canInspPlan = iresult.readuse && !vervallen && (ins_deelsrtcontrole_status == -1 || ins_deelsrtcontrole_status == 6) && actief && iresult.hasCTRWrite;
|
||||
// Bij eerste inspectie, geplande inspectie of verwerkte inspectie kan er gestart worden.
|
||||
iresult.canInspStart = iresult.canInspect && invoerAfterNext && !vervallen &&
|
||||
(ins_deelsrtcontrole_status <= 0 || ins_deelsrtcontrole_status == 6) && actief && hasCTRRights;
|
||||
iresult.canInspStart = iresult.readuse && invoerAfterNext && !vervallen &&
|
||||
(ins_deelsrtcontrole_status <= 0 || ins_deelsrtcontrole_status == 6) && actief && iresult.hasCTRWrite;
|
||||
// Bij eerste inspectie, geplande inspectie, gestarte inspectie of verwerkte inspectie kan er gereedgemeld/afgerond worden.
|
||||
iresult.canInspClose = iresult.canInspect && invoerAfterNext &&
|
||||
iresult.canInspClose = iresult.readuse && invoerAfterNext &&
|
||||
((!vervallen && (ins_deelsrtcontrole_status < 5 || ins_deelsrtcontrole_status == 6)) ||
|
||||
(ins_deelsrtcontrole_status == 0 || ins_deelsrtcontrole_status == 2)) &&
|
||||
actief && hasCTRRights;
|
||||
actief && iresult.hasCTRWrite;
|
||||
// Alleen als de inspectie gereedgemeld is kan afgerond worden.
|
||||
iresult.canInspFinish = iresult.canInspect && invoerAfterNext && ins_deelsrtcontrole_status == 5 && actief && hasCTRRights;
|
||||
iresult.canInspFinish = iresult.readuse && invoerAfterNext && ins_deelsrtcontrole_status == 5 && actief && iresult.hasCTRWrite;
|
||||
}
|
||||
else
|
||||
{
|
||||
iresult.invoerAfterNext = true;
|
||||
|
||||
// Zijn er soort controles waar de user lees of schrijf rechten op heeft?
|
||||
// Eerst lezen.
|
||||
var bsql = "SELECT COUNT(*) aantal"
|
||||
+ " FROM (SELECT di.ins_srtcontrole_key"
|
||||
+ " FROM ins_v_defined_inspect di"
|
||||
+ " , ins_srtcontroledl_xcp xcp"
|
||||
+ " WHERE di.ins_srtcontrole_key = xcp.ins_srtcontrole_key(+)"
|
||||
+ " AND di.ins_deel_key = xcp.ins_deel_key(+)"
|
||||
+ " AND di.ins_deel_key = " + pins_deel_key
|
||||
+ " AND di.ctr_discipline_key IN (SELECT w.ins_discipline_key" // Alleen van de disciplines waar ik schrijf rechten op heb meetellen.
|
||||
+ " FROM fac_v_webgebruiker w"
|
||||
+ " , fac_functie f"
|
||||
+ " WHERE w.fac_functie_key = f.fac_functie_key "
|
||||
+ " AND f.fac_functie_code = 'WEB_CTRUSE'"
|
||||
+ " AND w.fac_gebruiker_prs_level_read < 9"
|
||||
+ " AND w.fac_gebruiker_alg_level_read < 9"
|
||||
+ " AND w.prs_perslid_key = " + user_key + ")"
|
||||
+ " GROUP BY di.ins_srtcontrole_key"
|
||||
+ " , di.ins_deel_key)";
|
||||
var boRs = Oracle.Execute(bsql);
|
||||
var add = boRs("aantal").Value > 0;
|
||||
iresult.hasAnyReadXcp = boRs("aantal").Value > 0 && iresult.canRead("WEB_INSMAN"); // Enige rechten om exceptions (xcp) waarden te lezen.
|
||||
|
||||
// Nu schrijven.
|
||||
var bsql = "SELECT COUNT(*) aantal"
|
||||
+ " FROM (SELECT di.ins_srtcontrole_key"
|
||||
+ " FROM ins_v_defined_inspect di"
|
||||
+ " , ins_srtcontroledl_xcp xcp"
|
||||
+ " WHERE di.ins_srtcontrole_key = xcp.ins_srtcontrole_key(+)"
|
||||
+ " AND di.ins_deel_key = xcp.ins_deel_key(+)"
|
||||
+ " AND di.ins_deel_key = " + pins_deel_key
|
||||
+ " AND di.ctr_discipline_key IN (SELECT w.ins_discipline_key" // Alleen van de disciplines waar ik schrijf rechten op heb meetellen.
|
||||
+ " FROM fac_v_webgebruiker w"
|
||||
+ " , fac_functie f"
|
||||
+ " WHERE w.fac_functie_key = f.fac_functie_key "
|
||||
+ " AND f.fac_functie_code = 'WEB_CTRUSE'"
|
||||
+ " AND w.fac_gebruiker_prs_level_write < 9"
|
||||
+ " AND w.fac_gebruiker_alg_level_write < 9"
|
||||
+ " AND w.prs_perslid_key = " + user_key + ")"
|
||||
+ " GROUP BY di.ins_srtcontrole_key"
|
||||
+ " , di.ins_deel_key)";
|
||||
var boRs = Oracle.Execute(bsql);
|
||||
var add = boRs("aantal").Value > 0;
|
||||
iresult.hasAnyWriteXcp = boRs("aantal").Value > 0 && iresult.canWrite("WEB_INSMAN"); // Enige rechten om exceptions (xcp) waarden te schrijven.
|
||||
iresult.canDoAnyInspect = boRs("aantal").Value > 0 && iresult.canRead("WEB_INSMAN"); // Enige rechten om inspecties te doen.
|
||||
boRs.close();
|
||||
}
|
||||
}
|
||||
ioRs.Close();
|
||||
|
||||
@@ -758,12 +811,10 @@ ins = {checkAutLevel:
|
||||
iresult.canChangeAlg = iresult.canWrite("WEB_INSMAN"); // Wijzigen algemene gegevens.
|
||||
iresult.canCopy = iresult.canWrite("WEB_INSMAN"); // Kopi<70>ren.
|
||||
}
|
||||
iresult.canInspect = iresult.canWrite("WEB_INSUSE"); // Kopi<70>ren.
|
||||
// Let op: WEB_INSMSU is niet discipline gebonden en zit dus niet in iresult
|
||||
var autparamsINSMSU = user.checkAutorisation("WEB_INSMSU", true);
|
||||
iresult.writemsu = autparamsINSMSU && autparamsINSMSU.PRSwritelevel < 9 && autparamsINSMSU.ALGwritelevel < 9; // Wijzigen Afgeronde gegevens.
|
||||
iresult.readuse = iresult.canRead("WEB_INSUSE"); // Inzien.
|
||||
iresult.canChangeXcp = iresult.canWrite("WEB_INSMAN"); // Interval kenmerken/parameters wijzigen (waarden in ins_srtcontroledl_xcp tabel).
|
||||
return iresult;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -106,6 +106,7 @@ var srtcode = "";
|
||||
var tekenbaar = false;
|
||||
var uitvoertijd;
|
||||
var uitvoertijd_eenheid;
|
||||
var ins_deel_aantal = 1;
|
||||
|
||||
%>
|
||||
<html>
|
||||
@@ -170,6 +171,7 @@ var uitvoertijd_eenheid;
|
||||
sql = "SELECT d.ins_deel_omschrijving"
|
||||
+ " , d.ins_deel_parent_key"
|
||||
+ " , d.ins_alg_ruimte_type"
|
||||
+ " , d.ins_deel_aantal"
|
||||
+ " , d.ins_alg_ruimte_key"
|
||||
+ " , d.ins_alg_locatie_key"
|
||||
+ " , d.ins_srtdeel_key"
|
||||
@@ -210,6 +212,7 @@ var uitvoertijd_eenheid;
|
||||
sql = "SELECT '' ins_deel_omschrijving"
|
||||
+ " , d.ins_deel_parent_key"
|
||||
+ " , d.ins_alg_ruimte_type"
|
||||
+ " , 1 ins_deel_aantal"
|
||||
+ " , d.ins_alg_ruimte_key"
|
||||
+ " , d.ins_alg_locatie_key"
|
||||
+ " , d.ins_srtdeel_key"
|
||||
@@ -245,6 +248,7 @@ var uitvoertijd_eenheid;
|
||||
{ // Het gaat om een Nieuw hoofdobject, defaults bepalen
|
||||
sql = "SELECT '' ins_deel_omschrijving"
|
||||
+ " , 'P' ins_alg_ruimte_type"
|
||||
+ " , 1 ins_deel_aantal"
|
||||
+ " , -1 ins_alg_ruimte_key"
|
||||
+ " , -1 ins_alg_locatie_key"
|
||||
+ " , s.ins_srtdeel_key"
|
||||
@@ -315,6 +319,7 @@ var uitvoertijd_eenheid;
|
||||
org_bind_key = oRs('ins_alg_ruimte_key_org').Value;
|
||||
isLendOut = (oRs('ins_alg_ruimte_key_org').Value != null && !copy); // Bij kopie<69>ren is het object nog niet uitgeleend.
|
||||
alg_ruimte_type = oRs('ins_alg_ruimte_type').Value;
|
||||
ins_deel_aantal = oRs('ins_deel_aantal').Value;
|
||||
autonum = oRs('ins_disc_params_autonum').Value;
|
||||
oRs.close();
|
||||
|
||||
@@ -674,10 +679,8 @@ var uitvoertijd_eenheid;
|
||||
required: true,
|
||||
readonly: !this_ins.canChangeAlg || !(autonum & 2)
|
||||
});
|
||||
if(ins_key < 0 || isNext > 0 )
|
||||
{
|
||||
RWFIELDTR("count", "fldshort", L("lcl_count"), 1, {datatype: "number", readonly: !this_ins.canChangeAlg});
|
||||
}
|
||||
if (S("ins_explode_objects") == 0)
|
||||
RWFIELDTR("count", "fldshort", L("lcl_count"), ins_deel_aantal, {datatype: "number", readonly: !this_ins.canChangeAlg, required: true});
|
||||
RWFIELDTR("opmerk", "fld", L("lcl_ins_opmerking"), opmerk, {maxlength: 320, readonly: !this_ins.canChangeAlg}); %>
|
||||
</table>
|
||||
</td>
|
||||
|
||||
@@ -77,6 +77,7 @@ if(wp_key > 0)
|
||||
}
|
||||
|
||||
var warning = "";
|
||||
var ins_explode_objects = S("ins_explode_objects");
|
||||
if (obj_key > 0)
|
||||
{ // Let op als je hier nieuwe velden toevoegt: nieuwe objecten hebben eigen fields-object (MGE: Dan ook maar binnen if statement declareren)
|
||||
var fields = [ { dbs: "ins_deel_x", typ: "float", frm: "xcoord", track: L("lcl_obj_geoxcoord") },
|
||||
@@ -88,6 +89,8 @@ if (obj_key > 0)
|
||||
{ dbs: "ins_deel_opmerking", typ: "varchar", frm: "opmerk"},
|
||||
{ dbs: "ins_deel_actief", typ: "check0", frm: "ins_actief", track: L("lcl_ins_active") } ];
|
||||
|
||||
if (ins_explode_objects == 0)
|
||||
fields.push({ dbs: "ins_deel_aantal", typ: "number", frm: "count", track: L("lcl_count") });
|
||||
// Checken of het eenheden selectveld met dagen/uren bij "Uitvoertijd" niet readonly was en wel is meegegeven.
|
||||
// Als dit eenheden selectieveld readonly was dan is er geen waarde voor uitvoertijd ingevuld en moeten beide waarden null worden.
|
||||
fields = shared.add_time_field(fields, "ins_deel_t_uitvoertijd", "uitvoertijd", "dayshours", {tracktijdsduur: L("lcl_ins_uitvoertijd"), trackeenheid: L("lcl_ins_uitvoertijd_eenheid")});
|
||||
@@ -149,7 +152,8 @@ if (obj_key > 0)
|
||||
}
|
||||
}
|
||||
else
|
||||
{ // nieuw
|
||||
{ // Nieuw.
|
||||
// Voor nieuwe objecten worden het aantal objecten per stuk aangemaakt.
|
||||
var i_count = getFParamInt("count", -1);
|
||||
var sort = getFParamInt("srtdeel");
|
||||
|
||||
@@ -179,79 +183,82 @@ else
|
||||
abort_with_warning(L("lcl_obj_notallowed")); // combinatie niet toegestaan
|
||||
}
|
||||
|
||||
if( isNaN(i_count) || i_count < 1 )
|
||||
if (ins_explode_objects == 0 || isNaN(i_count) || i_count < 1)
|
||||
i_count = 1;
|
||||
|
||||
for( c = 0; c < i_count; c++ )
|
||||
for( c = 0; c < i_count; c++ )
|
||||
{
|
||||
var fields = [];
|
||||
var fields = [ { dbs: "ins_deel_x", typ: "float", frm: "xcoord" },
|
||||
{ dbs: "ins_deel_y", typ: "float", frm: "ycoord" },
|
||||
{ dbs: "ins_alg_locatie_key", typ: "key", frm: "locatiekey" },
|
||||
{ dbs: "ins_deel_vervaldatum", typ: "date", frm: "vervaldatum" },
|
||||
{ dbs: "ins_deel_aanmaak", typ: "date", frm: "aanmaakdatum" },
|
||||
{ dbs: "prs_perslid_key_beh", typ: "key", frm: "ins_manager", foreign: "prs_perslid" },
|
||||
{ dbs: "ins_deel_opmerking", typ: "varchar", frm: "opmerk"},
|
||||
{ dbs: "ins_alg_ruimte_key", typ: "key", val: bind_key },
|
||||
{ dbs: "ins_alg_ruimte_type", typ: "varchar", val: bind } ];
|
||||
|
||||
if (ins_explode_objects == 0)
|
||||
fields.push({ dbs: "ins_deel_aantal", typ: "number", frm: "count" });
|
||||
|
||||
// Checken of het eenheden selectveld met dagen/uren bij "Uitvoertijd" niet readonly was en wel is meegegeven.
|
||||
// Als dit eenheden selectieveld readonly was dan wordt deze niet opgeslagen en dan moet de tijdsduur ook niet opgeslagen worden.
|
||||
fields = shared.add_time_field(fields, "ins_deel_t_uitvoertijd", "uitvoertijd", "dayshours");
|
||||
|
||||
if (c == 0)
|
||||
{
|
||||
var fields = [];
|
||||
var fields = [ { dbs: "ins_deel_x", typ: "float", frm: "xcoord" },
|
||||
{ dbs: "ins_deel_y", typ: "float", frm: "ycoord" },
|
||||
{ dbs: "ins_alg_locatie_key", typ: "key", frm: "locatiekey" },
|
||||
{ dbs: "ins_deel_vervaldatum", typ: "date", frm: "vervaldatum" },
|
||||
{ dbs: "ins_deel_aanmaak", typ: "date", frm: "aanmaakdatum" },
|
||||
{ dbs: "prs_perslid_key_beh", typ: "key", frm: "ins_manager", foreign: "prs_perslid" },
|
||||
{ dbs: "ins_deel_opmerking", typ: "varchar", frm: "opmerk"},
|
||||
{ dbs: "ins_alg_ruimte_key", typ: "key", val: bind_key },
|
||||
{ dbs: "ins_alg_ruimte_type", typ: "varchar", val: bind } ];
|
||||
|
||||
// Checken of het eenheden selectveld met dagen/uren bij "Uitvoertijd" niet readonly was en wel is meegegeven.
|
||||
// Als dit eenheden selectieveld readonly was dan wordt deze niet opgeslagen en dan moet de tijdsduur ook niet opgeslagen worden.
|
||||
fields = shared.add_time_field(fields, "ins_deel_t_uitvoertijd", "uitvoertijd", "dayshours");
|
||||
|
||||
if (c == 0)
|
||||
fields.push({ dbs: "ins_deel_omschrijving", typ: "varchar", val: desc})
|
||||
}
|
||||
else
|
||||
{ // Get default description for object for sequence of inserts
|
||||
// Als een nummer is gegeven als default code voor een onderdeel dan nummeren we stug door.
|
||||
// Als voor de discipline is aangegeven dat niet automatische genummerd dient te worden zal dat voor multi objecten toch altijd moeten blijven.
|
||||
if (parent_key > 0 && !isNaN(parseInt(desc, 10)))
|
||||
{
|
||||
fields.push({ dbs: "ins_deel_omschrijving", typ: "varchar", val: desc})
|
||||
__Log("Stug doornummeren van onderdelen. Na " + desc + " komt ...")
|
||||
desc = '' + (1 + parseInt(desc,10))
|
||||
|
||||
fields.push({ dbs: "ins_deel_omschrijving", typ: "varchar", val: desc})
|
||||
}
|
||||
else
|
||||
{ // Get default description for object for sequence of inserts
|
||||
// Als een nummer is gegeven als default code voor een onderdeel dan nummeren we stug door.
|
||||
// Als voor de discipline is aangegeven dat niet automatische genummerd dient te worden zal dat voor multi objecten toch altijd moeten blijven.
|
||||
if (parent_key > 0 && !isNaN(parseInt(desc, 10)))
|
||||
{
|
||||
sql = "SELECT ins.get_description(" + safe.quoted_sql(parent_key < 0 ? "LPN_INS_DEEL" : "LPN_INS_ONDERDEEL")
|
||||
+ " ," + (parent_key < 0 ? loc : parent_key) // scope for uniqueness could be location (unused) or parent
|
||||
+ " , ins_srtdeel_code_upper)"
|
||||
+ " FROM ins_srtdeel"
|
||||
+ " WHERE ins_srtdeel_key = " + sort;
|
||||
oRs = Oracle.Execute(sql);
|
||||
if (!oRs.eof)
|
||||
{
|
||||
__Log("Stug doornummeren van onderdelen. Na " + desc + " komt ...")
|
||||
desc = '' + (1 + parseInt(desc,10))
|
||||
|
||||
desc = oRs(0).Value;
|
||||
fields.push({ dbs: "ins_deel_omschrijving", typ: "varchar", val: desc})
|
||||
}
|
||||
else
|
||||
{
|
||||
sql = "SELECT ins.get_description(" + safe.quoted_sql(parent_key < 0 ? "LPN_INS_DEEL" : "LPN_INS_ONDERDEEL")
|
||||
+ " ," + (parent_key < 0 ? loc : parent_key) // scope for uniqueness could be location (unused) or parent
|
||||
+ " , ins_srtdeel_code_upper)"
|
||||
+ " FROM ins_srtdeel"
|
||||
+ " WHERE ins_srtdeel_key = " + sort;
|
||||
oRs = Oracle.Execute(sql);
|
||||
if (!oRs.eof)
|
||||
{
|
||||
desc = oRs(0).Value;
|
||||
fields.push({ dbs: "ins_deel_omschrijving", typ: "varchar", val: desc})
|
||||
}
|
||||
oRs.Close();
|
||||
}
|
||||
oRs.Close();
|
||||
}
|
||||
fields.push({ dbs: "ins_deel_key", typ: "key", seq: "ins_s_ins_inst_keys" });
|
||||
fields.push({ dbs: "ins_srtdeel_key", typ: "key", val: sort });
|
||||
}
|
||||
fields.push({ dbs: "ins_deel_key", typ: "key", seq: "ins_s_ins_inst_keys" });
|
||||
fields.push({ dbs: "ins_srtdeel_key", typ: "key", val: sort });
|
||||
|
||||
if (parent_key > 0)
|
||||
fields.push({ dbs: "ins_deel_parent_key", typ: "key", val: parent_key });
|
||||
if (parent_key > 0)
|
||||
fields.push({ dbs: "ins_deel_parent_key", typ: "key", val: parent_key });
|
||||
|
||||
var regIns = buildInsert("ins_deel", fields);
|
||||
var obj_key = regIns.sequences["ins_deel_key"];
|
||||
sql = regIns.sql;
|
||||
var err = Oracle.Execute(sql, true);
|
||||
var regIns = buildInsert("ins_deel", fields);
|
||||
var obj_key = regIns.sequences["ins_deel_key"];
|
||||
sql = regIns.sql;
|
||||
var err = Oracle.Execute(sql, true);
|
||||
|
||||
if (err.friendlyMsg)
|
||||
warning = err.friendlyMsg;
|
||||
if (err.friendlyMsg)
|
||||
warning = err.friendlyMsg;
|
||||
|
||||
if (!warning)
|
||||
{
|
||||
// Kenmerken opslaan.
|
||||
flextrackarray = ins.updateKenmerkdeel (obj_key, {isnew: true});
|
||||
// Flextrackarray wordt niet gebruikt voor tracking bij nieuw object. Alle velden zijn nieuw
|
||||
shared.trackaction("INSNEW", obj_key);
|
||||
}
|
||||
} // for i_count
|
||||
if (!warning)
|
||||
{
|
||||
// Kenmerken opslaan.
|
||||
flextrackarray = ins.updateKenmerkdeel (obj_key, {isnew: true});
|
||||
// Flextrackarray wordt niet gebruikt voor tracking bij nieuw object. Alle velden zijn nieuw
|
||||
shared.trackaction("INSNEW", obj_key);
|
||||
}
|
||||
} // for i_count
|
||||
}
|
||||
%>
|
||||
<html>
|
||||
|
||||
@@ -295,6 +295,7 @@ var authparams = user.checkAutorisation("WEB_INSUSE");
|
||||
+ " AND idsc.prs_perslid_key = p.prs_perslid_key(+)"
|
||||
+ " AND idsc.ins_controlemode_key = cm.ins_controlemode_key(+)"
|
||||
+ " AND di.ins_deel_key = " + ins_key
|
||||
+ " AND di.ins_srtcontrole_periode > 0" // Als de periode 0 is dan de inspecties die gaan komen niet meer tonen.
|
||||
+ " AND di.ctr_discipline_key IN (SELECT w.ins_discipline_key"
|
||||
+ " FROM fac_v_webgebruiker w"
|
||||
+ " , fac_functie f"
|
||||
|
||||
@@ -45,6 +45,7 @@ sql = "SELECT d.ins_deel_omschrijving" // identificatie
|
||||
+ " , d.ins_alg_ruimte_type"
|
||||
+ " , d.ins_alg_ruimte_key"
|
||||
+ " , d.ins_alg_locatie_key"
|
||||
+ " , d.ins_deel_aantal"
|
||||
+ " , d.ins_deel_aanmaak"
|
||||
+ " , d.ins_srtdeel_key"
|
||||
+ " , g.ins_srtgroep_key"
|
||||
@@ -84,6 +85,7 @@ var parent_key = oRs("ins_deel_parent_key").Value;
|
||||
var bind = oRs("ins_alg_ruimte_type").Value;
|
||||
var bind_key = oRs("ins_alg_ruimte_key").Value;
|
||||
var o_loc = parseInt(oRs("ins_alg_locatie_key").Value);
|
||||
var aantal = oRs("ins_deel_aantal").Value;
|
||||
var aanmaak = new Date(oRs("ins_deel_aanmaak").Value);
|
||||
var vervaldatum = oRs('ins_deel_vervaldatum').Value;
|
||||
var actief = oRs('ins_deel_actief').Value == 1;
|
||||
@@ -330,6 +332,8 @@ oRs.Close();
|
||||
ROFIELDTR("fld", L("lcl_obj_group"), group);
|
||||
ROFIELDTR("fld", L("lcl_obj_sort"), sort + " (" + srtcode + ")");
|
||||
ROFIELDTR("fld", binding_text, binding_item, {infoPointer:{Url : moreinfo, Title: ""}});
|
||||
if (S("ins_explode_objects") == 0)
|
||||
ROFIELDTR("fld", L("lcl_count"), aantal);
|
||||
ROFIELDTR("fld", L("lcl_ins_opmerking"), opmerk, {suppressEmpty: true});
|
||||
if (false) { // later
|
||||
// als het object technisch getekend zou kunnen zijn, geven we hier de status aan.
|
||||
|
||||
@@ -217,7 +217,7 @@ function showActions(event) // event op de mouseover van resultsettable
|
||||
{
|
||||
if (bits.substr(i,1) == 1 && this.getAttribute("isdefault") == 1)
|
||||
$(window.activerow).css("cursor", "pointer");
|
||||
var show = bits.substr(i,1) == 1 && this.getAttribute("isdefault") != 1;
|
||||
var show = bits.substr(i,1) == 1 && (this.getAttribute("isdefault") != 1 && this.getAttribute("onlymulti") != 1);
|
||||
$(this).toggle(show)
|
||||
if (show)
|
||||
{
|
||||
|
||||
@@ -11,6 +11,7 @@ function init_srtcontrole()
|
||||
$("#inspection_mode").change(function() {change_mode(); });
|
||||
$("#unit").change(function() {change_unit(); });
|
||||
$("#_moment").click(function() {SelectBits(); });
|
||||
$("#ctr_discipline").change(function() {change_ctr_discipline(); });
|
||||
|
||||
var controlemode = $("#inspection_mode").val() == 0;
|
||||
if (!controlemode)
|
||||
@@ -34,6 +35,31 @@ function change_unit()
|
||||
changed_mode = 1;
|
||||
}
|
||||
|
||||
function callback_ctr_info(data, textStatus)
|
||||
{
|
||||
if (textStatus == "success")
|
||||
{
|
||||
if (data.ismjob)
|
||||
{
|
||||
$("#unit").val(4); // Jaarlijks.
|
||||
$("#unit").attr('disabled', true);
|
||||
}
|
||||
else
|
||||
$("#unit").attr('disabled', false);
|
||||
}
|
||||
else
|
||||
alert("callback_ctr_info: " + textStatus);
|
||||
}
|
||||
|
||||
function change_ctr_discipline()
|
||||
{
|
||||
var ctr_disc = $("#ctr_discipline").val();
|
||||
$.getJSON("../Shared/get_ctr_info.asp",
|
||||
{ ctr_disc: ctr_disc },
|
||||
callback_ctr_info);
|
||||
|
||||
}
|
||||
|
||||
function SelectBits()
|
||||
{
|
||||
var proturl = "../ins/ins_bitsform.asp"
|
||||
|
||||
Reference in New Issue
Block a user