I have an attribute field called "klantnaam". In another field called "adressen" I have a JSON array with several objects. In the object I have the following fields: adressoort, bedrijfsnaam and persoonsnaam. First I want to check if the object has the adressoort 2. If so then check if bedrijfsnaam is filled. If so show that. Is it empty check if persoonsnaam is filled. If so show that. If both bedrijfsnaam and persoonsnaam is empty then show the attribute klantnaam. I have the follow code but it is only showing the attribute field klantnaam even when for example bedrijfsnaam is filled. What do I miss.
<script runat="server">
Platform.Load("Core","1");
var adressenJSON = Attribute.GetValue("adressen"); // Veronderstel dat je de JSON-waarde ophaalt uit een attribuut
var getJsonFieldValue = Platform.Function.ParseJSON(adressenJSON);
var adressoort = getJsonFieldValue.adressoort;
var bedrijfsnaam = getJsonFieldValue.bedrijfsnaam;
var persoonsnaam = getJsonFieldValue.persoonsnaam;
var klantnaam = Attribute.GetValue("klantnaam");
var titelklant = "";
if (adressoort == 2) {
if (!bedrijfsnaam && !persoonsnaam) {
titelklant = klantnaam;
} else if (bedrijfsnaam) {
titelklant = bedrijfsnaam;
} else {
titelklant = persoonsnaam;
}
} else {
titelklant = klantnaam;
}
Variable.SetValue("@titelklant", titelklant);
</script>
%%=v(@titelklant)=%%