Hi , I have a multiple dropdown inside a grid layout , so choice values for that dropdown previously static one coming from database , but now we have changed it as cascading one based on condition the dropdown choice value will change. Now the existing request are all throwing error. I thought of based on the request created date to change the choice values to be selected but i am not sure where that condition can applied inside the dropdown choice or before , because for new request also for choice values i have applied some if condition . Its not working properly. Can anyone help me to identify the option which is efficient?
a!localVariables( local!fundlookup: { a!map(lookupId: 1, value: "Comment A"), a!map(lookupId: 2, value: "Comment B"), a!map(lookupId: 3, value: "Comment C"), a!map(lookupId: 4, value: "Comment D"), a!map(lookupId: 5, value: "Comment E"), a!map(lookupId: 6, value: "Comment F"), a!map(lookupId: 7, value: "Comment G"), a!map(lookupId: 8, value: "Comment H") }, local!Requestmaster: a!map(createdOn: todatetime("2025-09-10")), local!commonFund: if( local!Requestmaster.createdOn < todatetime("2025-09-18"), remove(local!fundlookup, { 7, 8 }), index(local!fundlookup, {1, 7}, {}) ), local!mutualFund: if( local!Requestmaster.createdOn < todatetime("2025-09-17"), remove(local!fundlookup, { 7, 8 }), index(local!fundlookup, {1, 5}, {}) ), local!citFund: index(local!fundlookup, {2, 3}, {}), local!productCommentIds: {}, a!multipleDropdownField( label: "Select Comments", choiceLabels: if( ri!fundType = 100, /* Dummy CIT fund type ID */ index(local!citFund, "value", {}), if( ri!fundType = 200, /* Dummy Mutual fund type ID */ index(local!mutualFund, "value", {}), index(local!commonFund, "value", {}) ) ), choiceValues: if( ri!fundType = 100, index(local!citFund, "lookupId", {}), if( ri!fundType = 200, index(local!mutualFund, "lookupId", {}), index(local!commonFund, "lookupId", {}) ) ), placeholder: "---Select Comment---", value: local!productCommentIds, saveInto: local!productCommentIds ) )
Discussion posts and replies are publicly visible
If I'm understanding your use case correctly, based upon your description and your code:
If that's not the case, then please ignore this.
If that IS the case - this is a pretty common type of request from the business, and also a pretty common problem to handle (in my experience). Stuff like invalidated values in a dropdown drives me crazy all of the time. On my wish list is for Appian to handle this by showing a null value and a validation error on the component rather than a pink box on the entire screen.
However, even that wouldn't solve a core problem you have - you'll need to figure out how you're going to update your existing data to the new hierarchy. Suggested routes:
a!save(fv!item[productCommentIds], {})
Hi Jesse, thanks for the detailed explanation! Could you give an example of how you would structure the database script to update existing dropdown values without breaking the current records? Specifically, how would you handle mapping old productCommentIds to the correct ones for the new fund type hierarchy? Geometry Dash
productCommentIds