178 lines
11 KiB
Plaintext
178 lines
11 KiB
Plaintext
<%@language = "javascript" %>
|
|
<% /*
|
|
$Revision$
|
|
$Id$
|
|
|
|
File: prs_edit_bedrijf_save.asp
|
|
Description: SUBMIT-form
|
|
*/ %>
|
|
|
|
<!-- #include file="../Shared/common.inc" -->
|
|
<!-- #include file="../shared/save2db.inc" -->
|
|
<!-- #include file="../Shared/kenmerk_common.inc"-->
|
|
|
|
<%
|
|
FCLTHeader.Requires({ plugins:["jQuery"] });
|
|
|
|
var bedrijf_key = getQParamInt("bedrijf_key", -1);
|
|
var levnr = getFParam("bdr_levnr", -1);
|
|
|
|
var isNew = (bedrijf_key < 0);
|
|
|
|
if (S("prs_bedrijf_leveranciernr_unique") == 1)
|
|
{ // Controleer of het leveranciersnummer al wordt gebruikt bij een bedrijf
|
|
sql = "SELECT b.prs_bedrijf_key"
|
|
+ " FROM prs_v_aanwezigbedrijf b"
|
|
+ " WHERE UPPER(b.prs_leverancier_nr) = " + safe.quoted_sql_upper(levnr);
|
|
if (bedrijf_key > 0)
|
|
{
|
|
sql += " AND b.prs_bedrijf_key NOT IN (" + bedrijf_key + ")";
|
|
}
|
|
oRs = Oracle.Execute(sql);
|
|
|
|
if (!oRs.eof)
|
|
{ // Er is al een bedrijf met dezelfde leveranciersnummer aanwezig
|
|
abort_with_warning(L("lcl_prs_levnr_unique"));
|
|
}
|
|
oRs.close();
|
|
}
|
|
|
|
var intern = getFParamInt("bdr_intern", 0);
|
|
var fields = [ { dbs: "prs_bedrijf_naam", typ: "varchar", frm: "bdr_naam", track: L("lcl_prs_companies_name") },
|
|
{ dbs: "prs_bedrijf_post_adres", typ: "varchar", frm: "bdr_pstadr", track: L("lcl_prs_companies_post_adres") },
|
|
{ dbs: "prs_bedrijf_post_postcode", typ: "varchar", frm: "bdr_pstpstc", track: L("lcl_prs_companies_post_postcode") },
|
|
{ dbs: "prs_bedrijf_post_plaats", typ: "varchar", frm: "bdr_pstpl", track: L("lcl_prs_companies_post_plaats") },
|
|
{ dbs: "prs_bedrijf_post_land", typ: "varchar", frm: "bdr_pstland", track: L("lcl_prs_companies_post_land") },
|
|
{ dbs: "prs_bedrijf_bezoek_adres", typ: "varchar", frm: "bdr_bezadr", track: L("lcl_prs_companies_bezoek_adres") },
|
|
{ dbs: "prs_bedrijf_bezoek_postcode", typ: "varchar", frm: "bdr_bezpstc", track: L("lcl_prs_companies_bezoek_postcode") },
|
|
{ dbs: "prs_bedrijf_bezoek_plaats", typ: "varchar", frm: "bdr_bezpl", track: L("lcl_prs_companies_bezoek_plaats") },
|
|
{ dbs: "prs_bedrijf_bezoek_land", typ: "varchar", frm: "bdr_bezland", track: L("lcl_prs_companies_bezoek_land") },
|
|
{ dbs: "prs_bedrijf_telefoon", typ: "varchar", frm: "bdr_tel", track: L("lcl_prs_companies_telefoon") },
|
|
{ dbs: "prs_bedrijf_fax", typ: "varchar", frm: "bdr_fax", track: L("lcl_prs_companies_fax") },
|
|
{ dbs: "prs_bedrijf_url", typ: "varchar", frm: "bdr_url", track: L("lcl_prs_companies_url") },
|
|
{ dbs: "prs_bedrijf_telefoon2", typ: "varchar", frm: "bdr_tel2", track: L("lcl_prs_companies_telefoon2") },
|
|
{ dbs: "prs_bedrijf_contact_persoon", typ: "varchar", frm: "bdr_cntper", track: L("lcl_prs_companies_contact_person") },
|
|
{ dbs: "prs_bedrijf_contact_telefoon", typ: "varchar", frm: "bdr_cnttel", track: L("lcl_prs_companies_contact_telefoon") },
|
|
{ dbs: "prs_bedrijf_contact_fax", typ: "varchar", frm: "bdr_cntfax", track: L("lcl_prs_companies_contact_fax") },
|
|
{ dbs: "prs_bedrijf_opmerking", typ: "varchar", frm: "bdr_opm", track: L("lcl_prs_companies_opmerking") },
|
|
{ dbs: "prs_bedrijf_opmerking2", typ: "varchar", frm: "bdr_opm2", track: L("lcl_prs_companies_opmerking2") },
|
|
{ dbs: "prs_bedrijf_uurloon", typ: "float", frm: "bdr_uurln", track: L("lcl_prs_companies_uurloon") },
|
|
{ dbs: "prs_bedrijf_mld_limiet", typ: "float", frm: "bdr_mldlim", track: L("lcl_prs_companies_mld_limiet") },
|
|
{ dbs: "prs_leverancier_nr", typ: "varchar", frm: "bdr_levnr", track: L("lcl_prs_companies_leverancier_nr") },
|
|
{ dbs: "prs_overeenkomst_nr", typ: "varchar", frm: "bdr_ovknr", track: L("lcl_prs_companies_overeenkomst_nr") },
|
|
{ dbs: "prs_overeenkomst_datum", typ: "date", frm: "bdr_ovkdat", track: L("lcl_prs_companies_overeenkomst_datum") },
|
|
{ dbs: "prs_bedrijf_leverancier", typ: "check", frm: "bdr_lev", track: L("lcl_prs_companies_leverancier") },
|
|
{ dbs: "prs_bedrijf_uitvoerende", typ: "check", frm: "bdr_uitv", track: L("lcl_prs_companies_leverancier_nr") },
|
|
{ dbs: "prs_bedrijf_contract", typ: "check", frm: "bdr_cntr", track: L("lcl_prs_companies_contract") },
|
|
{ dbs: "prs_bedrijf_intern", typ: "number", val: (intern > 0 ? intern : null) }, // intern=0 opslaan als NULL
|
|
{ dbs: "prs_bedrijf_huurder", typ: "check", frm: "bdr_huur", track: L("lcl_prs_companies_huurder") },
|
|
{ dbs: "prs_bedrijf_email", typ: "varchar", frm: "bdr_email", track: L("lcl_prs_companies_email") },
|
|
{ dbs: "prs_bedrijf_image_loc", typ: "varchar", frm: "bdr_imgloc", track: L("lcl_prs_companies_image_loc") },
|
|
{ dbs: "prs_bedrijf_details_loc", typ: "varchar", frm: "bdr_detloc", track: L("lcl_prs_companies_details_loc") },
|
|
{ dbs: "mld_adres_key_lev", typ: "key", frm: "mld_adrlkey", track: L("lcl_prs_companies_adres_lev"), foreign: "mld_v_afleveradres" },
|
|
{ dbs: "mld_adres_key_fac", typ: "key", frm: "mld_adrfkey", track: L("lcl_prs_companies_adres_fac"), foreign: "mld_v_factuuradres" },
|
|
{ dbs: "prs_bedrijf_ingids", typ: "check", frm: "bdr_ingids", track: L("lcl_prs_companies_ingids") },
|
|
{ dbs: "prs_bedrijf_order_confirm", typ: "check", frm: "bdr_confirm", track: L("lcl_prs_companies_order_confirm") },
|
|
{ dbs: "prs_bedrijf_xmlcatalogus_loc", typ: "varchar", frm: "bdr_xmlcatl", track: L("lcl_prs_companies_xmlcatalogus_loc") },
|
|
{ dbs: "prs_bedrijf_bes_limiet", typ: "float", frm: "bdr_beslim", track: L("lcl_prs_companies_bes_limiet") },
|
|
{ dbs: "fin_btwtabel_key", typ: "key", frm: "finbtwtabelkey", track: L("fin_btwtabel"), foreign: "fin_btwtabel" },
|
|
{ dbs: "prs_bedrijf_bes_kosten", typ: "float", frm: "bdr_beskst", track: L("lcl_prs_companies_bes_kosten") },
|
|
{ dbs: "prs_relatietype_key", typ: "key", frm: "prs_reltype_key", track: L("lcl_prs_relatietype"), foreign: "prs_relatietype" },
|
|
{ dbs: "prs_bedrijf_x", typ: "float", frm: "xcoord", track: L("lcl_geoxcoord")},
|
|
{ dbs: "prs_bedrijf_y", typ: "float", frm: "ycoord", track: L("lcl_geoycoord")}
|
|
];
|
|
// 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, "prs_bedrijf_t_uitvoertijd", "bdr_uitvtijd", "dayshours");
|
|
|
|
var warning = "";
|
|
var prsUpd;
|
|
if (bedrijf_key > 0)
|
|
{
|
|
var prsUpd = buildTrackingUpdate("prs_bedrijf", " prs_bedrijf_key = " + bedrijf_key, fields);
|
|
var err = Oracle.Execute(prsUpd.sql, true);
|
|
if (err.friendlyMsg)
|
|
warning = err.friendlyMsg;
|
|
}
|
|
else
|
|
{
|
|
fields.push({ dbs: "prs_bedrijf_key", typ: "key", seq: "prs_s_prs_alluitvoerende_keys" });
|
|
var regIns = buildInsert("prs_bedrijf", fields);
|
|
var bedrijf_key = regIns.sequences["prs_bedrijf_key"];
|
|
sql = regIns.sql;
|
|
var err = Oracle.Execute(sql, true);
|
|
if (err.friendlyMsg)
|
|
warning = err.friendlyMsg;
|
|
// Geen trackaction voor nieuwe bedrijven.
|
|
}
|
|
|
|
var flextrack = [];
|
|
if (!warning)
|
|
{
|
|
currentKenmerkenSQL = "SELECT kl.prs_kenmerk_key"
|
|
+ " , kl.prs_kenmerklink_waarde"
|
|
+ " , k.prs_kenmerk_toonbaar"
|
|
+ " , k.fac_functie_key"
|
|
+ " FROM prs_kenmerklink kl"
|
|
+ " , prs_kenmerk k"
|
|
+ " WHERE k.prs_kenmerk_key = kl.prs_kenmerk_key"
|
|
+ " AND prs_kenmerklink_verwijder IS NULL"
|
|
+ " AND prs_link_key = " + bedrijf_key;
|
|
var allKenmerkenSQL = " SELECT " + lcl.xsql('k.prs_kenmerk_omschrijving', 'k.prs_kenmerk_key') + " kenmerk_omschrijving"
|
|
+ " , k.prs_kenmerk_kenmerktype kenmerk_kenmerktype"
|
|
+ " , k.prs_kenmerk_systeem kenmerk_systeem"
|
|
+ " , k.prs_kenmerk_toonbaar kenmerk_readonly"
|
|
+ " , k.prs_kenmerk_uniek kenmerk_uniek"
|
|
+ " , fac_kenmerkdomein_key"
|
|
+ " FROM prs_kenmerk k "
|
|
+ " WHERE k.prs_kenmerk_verwijder IS NULL"
|
|
+ " AND k.prs_kenmerk_key = "; /* wordt in saveFlexkenmerken uitgebreid */
|
|
|
|
flextrack =
|
|
saveFlexKenmerken(bedrijf_key, { kenmerkTable: "prs_kenmerklink",
|
|
kenmerkParentKey : "prs_link_key",
|
|
kenmerkWaarde: "prs_kenmerklink_waarde",
|
|
kenmerkKey: "prs_kenmerk_key",
|
|
kenmerkToonbaar: "prs_kenmerk_toonbaar",
|
|
currentKenmerkenSQL: currentKenmerkenSQL,
|
|
allKenmerkenSQL: allKenmerkenSQL,
|
|
requestQF: Request.Form,
|
|
module: "PRS",
|
|
moduleName: "prs_kenmerklink_niveau",
|
|
moduleVal: "B",
|
|
isNew: isNew,
|
|
tracking: true,
|
|
flexPath: "PRS/B"
|
|
});
|
|
if (!isNew)
|
|
{
|
|
if (flextrack.length)
|
|
{
|
|
if (prsUpd && prsUpd.trackarray)
|
|
prsUpd.trackarray = prsUpd.trackarray.concat(flextrack);
|
|
else
|
|
prsUpd.trackarray = flextrack;
|
|
}
|
|
if (prsUpd.trackarray.length)
|
|
shared.trackaction("PRSUPB", bedrijf_key, prsUpd.trackarray.join("\n") );
|
|
}
|
|
}
|
|
%>
|
|
<html>
|
|
<head>
|
|
<% FCLTHeader.Generate() %>
|
|
<script>
|
|
$(function ()
|
|
{
|
|
FcltMgr.closeDetail(window, { bedrijf_key: <%=bedrijf_key%>,
|
|
warning: "<%=safe.jsstring(warning)%>",
|
|
keepForm: <%=warning?"true":"false"%>
|
|
});
|
|
});
|
|
</script>
|
|
</head>
|
|
<body>
|
|
</body>
|
|
</html>
|
|
<% ASPPAGE_END(); %>
|