Files
Facilitor/APPL/ALG/alg_edit_gebouw_save.asp

182 lines
9.6 KiB
Plaintext

<%@language = "javascript" %>
<% /*
$Revision$
$Id$
SUBMIT-form
*/ %>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/save2db.inc" -->
<!-- #include file="../Shared/kenmerk_common.inc"-->
<!-- #include file="alg.inc" -->
<% FCLTHeader.Requires({ plugins:["jQuery"],
js: []
}) %>
<%
var bld_key = getQParamInt("bld_key");
var loc_key = getFParamInt("locatiekey", -1);
var isNew = (bld_key < 0);
var beginuur = getFParamFloat("bld_beginuur", -2);
if (beginuur == -1)
beginuur = "";
var einduur = getFParamFloat("bld_einduur", -2);
if (einduur == -1)
einduur = "";
var onrgoedlvl = "G";
var this_alg = alg.func_enabled(bld_key, onrgoedlvl);
user.auth_required_or_abort(this_alg.writeman || (bld_key > 0 && this_alg.writeuse));
var fields = [ /* { dbs: "alg_gebouw_getekend", typ: "date", frm: "bld_teken" },
{ dbs: "alg_gebouw_dwgx", typ: "float", frm: "bld_dwgx" },
{ dbs: "alg_gebouw_dwgy", typ: "float", frm: "bld_dwgy" }, Deze 3 velden worden nergens meegegeven? */
];
if (user.checkAutorisation("WEB_BEZMGT", true))
{
fields.push({ dbs: "alg_gebouw_toon_telefoon", typ: "number", frm: "toon_telefoon", track: L("lcl_estate_gebouw_toon_telefoon") },
{ dbs: "alg_gebouw_toon_email", typ: "number", frm: "toon_email", track: L("lcl_estate_gebouw_toon_email") },
{ dbs: "alg_gebouw_toon_kenteken", typ: "number", frm: "toon_kenteken", track: L("lcl_estate_gebouw_toon_kenteken") });
}
if (this_alg.writeman)
{
fields.push({ dbs: "alg_gebouw_omschrijving", typ: "varchar", frm: "bld_descr", track: L("lcl_estate_gebouw_man_descr") },
{ dbs: "alg_gebouw_naam", typ: "varchar", frm: "bld_naam", track: L("lcl_estate_gebouw_man_name") },
{ dbs: "alg_gebouw_code", typ: "varchar", frm: "bld_code", track: L("lcl_estate_gebouw_man_code") },
{ dbs: "alg_gebouw_adres", typ: "varchar", frm: "bld_adres", track: L("lcl_estate_gebouw_man_adres") },
{ dbs: "alg_gebouw_postcode", typ: "varchar", frm: "bld_postcode", track: L("lcl_estate_gebouw_man_postcode") },
{ dbs: "alg_srtgebouw_key", typ: "key", frm: "bld_srtkey", track: L("alg_srtgebouw"), foreign: {tbl: "alg_srtgebouw", key: "alg_srtgebouw_key", desc: "alg_srtgebouw_omschrijving"} },
{ dbs: "alg_gebouw_opmerking", typ: "varchar", frm: "bld_opmerk", track: L("lcl_estate_gebouw_man_opmerk") },
{ dbs: "alg_gebouw_groep", typ: "varchar", frm: "bld_groep", track: L("lcl_estate_gebouw_groepkenmerk") },
{ dbs: "alg_gebouw_bruto_vloeropp", typ: "float", frm: "bld_opp", track: L("lcl_estate_gebouw_man_bruto_vloeropp") },
{ dbs: "alg_gebouw_omtrek", typ: "float", frm: "bld_omtrek", track: L("lcl_estate_gebouw_man_omtrek") },
{ dbs: "alg_gebouw_inhoud", typ: "float", frm: "bld_inhoud", track: L("lcl_estate_gebouw_man_inhoud") },
{ dbs: "alg_gebouw_x", typ: "float", frm: "bld_x", track: L("lcl_geoxcoord") },
{ dbs: "alg_gebouw_y", typ: "float", frm: "bld_y", track: L("lcl_geoycoord") },
{ dbs: "alg_gebouw_ordernr", typ: "varchar", frm: "bld_ordrnr", track: L("lcl_estate_gebouw_ordernr") },
{ dbs: "alg_gebouw_email", typ: "varchar", frm: "bld_email", track: L("lcl_alg_gebouw_email") },
{ dbs: "alg_gebouw_image", typ: "varchar", frm: "bld_image", track: L("lcl_alg_gebouw_image") },
{ dbs: "mld_adres_key", typ: "key", frm: "mld_adres", track: L("lcl_delivery_address"), foreign: "mld_v_factuuradres" },
{ dbs: "prs_kostenplaats_key", typ: "key", frm: "prs_kstpl", track: L("lcl_prs_dept_kosten"), foreign: "prs_kostenplaats" },
{ dbs: "mld_dienstniveau_key", typ: "key", frm: "dienstniveau", track: L("lcl_mld_dienst_niveau"), foreign: "mld_dienstniveau" },
{ dbs: "alg_gebouw_bez", typ: "check", frm: "bld_bez", track: L("lcl_estate_gebouw_bez") },
{ dbs: "alg_gebouw_mld", typ: "check", frm: "bld_mld", track: L("lcl_estate_gebouw_mld") },
{ dbs: "alg_gebouw_werkdagen", typ: "check0", frm: "bld_werkdagen", track: L("lcl_estate_gebouw_werkdagen") },
{ dbs: "alg_gebouw_vervaldatum", typ: "date", frm: "vervaldatum", track: L("lcl_alg_vervaldatum") },
{ dbs: "bez_actie_groep_key", typ: "key", frm: "group", track: L("bez_actie_groep"), foreign: "bez_actie_groep" },
{ dbs: "mld_vrije_dagen_id", typ: "varchar", frm: "cal_id", track: L("lcl_calendar")},
// De gebouwverantwoordelijke(n) moeten eigenlijk nog een PRS-scope test ondergaan alvorens opgeslagen te worden, maar dat is voor nu teveel eer
{ dbs: "prs_perslid_key_verantw", typ: "key", frm: "verantw", track: L("lcl_alg_verantw"), foreign: "prs_perslid" },
{ dbs: "prs_perslid_key_verantw2", typ: "key", frm: "verantw2", track: L("lcl_alg_verantw2"), foreign: "prs_perslid" });
if (beginuur != -2)
fields.push({ dbs: "alg_gebouw_beginuur", typ: "float", val: beginuur, track: L("lcl_estate_gebouw_beginuur") });
if (einduur != -2)
fields.push({ dbs: "alg_gebouw_einduur", typ: "float", val: einduur, track: L("lcl_estate_gebouw_einduur") });
if (bld_key == -1 && alg.canWriteLocatie(loc_key, this_alg.authparams("WEB_ALGMAN").ALGwritelevel))
fields.push({ dbs: "alg_locatie_key", typ: "key", val: loc_key });
}
var warning = "";
if (bld_key > 0)
{
var algUpd = buildTrackingUpdate("alg_gebouw", " alg_gebouw_key = " + bld_key, fields);
var err = Oracle.Execute(algUpd.sql, true);
if (err.friendlyMsg)
warning = err.friendlyMsg;
}
else
{
fields.push({ dbs: "alg_gebouw_key", typ: "key", seq: "alg_s_alg_onroerendgoed_keys" });
var regIns = buildInsert("alg_gebouw", fields);
var bld_key = regIns.sequences["alg_gebouw_key"];
sql = regIns.sql;
var err = Oracle.Execute(sql, true);
if (err.friendlyMsg)
warning = err.friendlyMsg;
}
var flextrack = [];
if (!warning)
{
currentKenmerkenSQL = "SELECT k.alg_kenmerk_key"
+ " , ok.alg_onrgoedkenmerk_waarde"
+ " , k.alg_kenmerk_toonbaar"
+ " , k.fac_functie_key"
+ " FROM alg_onrgoedkenmerk ok"
+ " , alg_kenmerk k"
+ " WHERE k.alg_kenmerk_key = ok.alg_kenmerk_key"
+ " AND alg_onrgoedkenmerk_verwijder IS NULL"
+ " AND alg_onrgoed_niveau = 'G'"
+ " AND alg_onrgoed_key = " + bld_key;
allKenmerkenSQL = "SELECT " + lcl.xsql('k.alg_kenmerk_omschrijving', 'k.alg_kenmerk_key') + " kenmerk_omschrijving"
+ " , k.alg_kenmerk_kenmerktype kenmerk_kenmerktype"
+ " , k.alg_kenmerk_systeem kenmerk_systeem"
+ " , k.alg_kenmerk_toonbaar kenmerk_readonly"
+ " , k.alg_kenmerk_uniek kenmerk_uniek"
+ " , fac_kenmerkdomein_key"
+ " FROM alg_kenmerk k"
+ " WHERE k.alg_kenmerk_key = "; /* wordt in saveFlexkenmerken uitgebreid */
flextrack = saveFlexKenmerken(bld_key,
{ kenmerkTable: "alg_onrgoedkenmerk",
kenmerkParentKey : "alg_onrgoed_key",
kenmerkWaarde: "alg_onrgoedkenmerk_waarde",
kenmerkKey: "alg_kenmerk_key",
kenmerkToonbaar: "alg_kenmerk_toonbaar",
currentKenmerkenSQL: currentKenmerkenSQL,
allKenmerkenSQL: allKenmerkenSQL,
requestQF: Request.Form,
flexPath: "ALG/G",
module: "ALG",
tracking: true,
moduleName: "alg_onrgoed_niveau",
moduleVal: "G",
isNew: isNew
});
if (!isNew)
{
if (flextrack && flextrack.length)
{
if (algUpd && algUpd.trackarray.length)
algUpd.trackarray = algUpd.trackarray.concat(flextrack);
else
algUpd.trackarray = flextrack;
}
if (algUpd && algUpd.trackarray.length)
shared.trackaction("ALGGUP", bld_key, algUpd.trackarray.join("\n"));
}
else
shared.trackaction("ALGGNE", bld_key);
}
%>
<html>
<head>
<% FCLTHeader.Generate() %>
<script>
$(function ()
{
FcltMgr.closeDetail(window, { bld_key: <%=bld_key%>,
warning: "<%=safe.jsstring(warning)%>",
keepForm: <%=warning?"true":"false"%>
});
});
</script>
</head>
<body>
</body>
</html>
<% ASPPAGE_END(); %>