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], {})