Hello,
I Have two dropdown list fields. I need to change the second dropdown values dynamically based on first dropdown selected value.
Code below:-
#region Feature
[PXDBString(30, IsKey = true, IsUnicode = true, InputMask = "")]
[PXUIField(DisplayName = "Feature")]
[PXStringList(
new string[]
{
SSS.SSP.Helper.Constant.Agree,
SSS.SSP.Helper.Constant.Inspect
},
new string[]
{
SSS.SSP.Helper.Messages.Agree,
SSS.SSP.Helper.Messages.Inspect
})]
public virtual string Feature { get; set; }
public abstract class feature : PX.Data.BQL.BqlString.Field<feature> { }
#endregion
#region ValidFor
[PXDefault()]
[PXDBString(5, IsKey = true, IsUnicode = true, InputMask = "")]
[PXUIField(DisplayName = "Valid For")]
[PXDependsOnFields(typeof(SSPSetupActive.feature))]
[PXStringList(
new string[]
{
SSS.SSP.Helper.Constant.Opportunity,
SSS.SSP.Helper.Constant.ServiceOrder
},
new string[]
{
SSS.SSP.Helper.Messages.Opportunity,
SSS.SSP.Helper.Messages.ServiceOrder
})]
protected void SSPSetupActive_Feature_FieldUpdated(PXCache cache, PXFieldUpdatedEventArgs e, PXFieldUpdated del)
{
if (del != null)
del(cache, e);
var row = (SSPSetupActive)e.Row;
if (row == null) return;
//SSPSetupMaint rowExt = PXGraph.CreateInstance<SSPSetupMaint>();
if (row.Feature == "Agree")
PXStringListAttribute.SetList<SSPSetupActive.validFor>(cache, row, new string[] { SSS.SSP.Helper.Constant.Opportunity, SSS.SSP.Helper.Constant.ServiceOrder }, new string[] { SSS.SSP.Helper.Messages.Opportunity, SSS.SSP.Helper.Messages.ServiceOrder });
else
PXStringListAttribute.SetList<SSPSetupActive.validFor>(cache, row, new string[] { SSS.SSP.Helper.Constant.ServiceOrder }, new string[] { SSS.SSP.Helper.Messages.ServiceOrder });
}
I tried this scenario. but, it’s not working.
Help me in this…!
Thanks
Best answer by Naveen Boga
View original