filter Segmented Entry based on Account Type
- Create a form
- Override form Init and write below code
- Take data source as LedgerJournalTrans
public class FormRun extends ObjectRun
{
DimensionDynamicAccountController dimAccountController;
}
public void init()
{
super();
dimAccountController = DimensionDynamicAccountController::construct(ledgerJournalTrans_ds,
fieldStr(LedgerJournalTrans, LedgerDimension),
fieldStr(LedgerJournalTrans, AccountType));
}
3.Under design override two controls i.e ComboBox and Segmented Entry control
4.Under Segmented Entry control override below methods and set below code & properties
public void jumpRef()
{
dimAccountController.jumpRef();
}
public void loadAutoCompleteData(LoadAutoCompleteDataEventArgs _e)
{
super(_e);
dimAccountController.loadAutoCompleteData(_e);
}
public void loadSegments()
{
super();
dimAccountController.parmControl(this);
dimAccountController.loadSegments();
}
public void lookup()
{
switch (LedgerJournalTrans.AccountType)
{
case LedgerJournalACType::Bank:
BankAccountTable::lookupBankAccount(this);
break;
case LedgerJournalACType::Cust:
CustTable::lookupCustomer(this);
break;
case LedgerJournalACType::FixedAssets:
AssetTable::lookupAccountNum(this);
break;
case LedgerJournalACType::Ledger:
super();
break;
case LedgerJournalACType::Vend:
VendTable::lookupVendor(this);
break;
default:
super();
break;
}
}
public Common resolveReference()
{
Common ret;
ret = dimAccountController.resolveReference();
return ret;
}
public void segmentValueChanged(SegmentValueChangedEventArgs _e)
{
super(_e);
dimAccountController.segmentValueChanged(_e);
}
public boolean validate()
{
boolean isValid;
isValid = super();
isValid = dimAccountController.validate() && isValid;
return isValid;
}
No comments:
Post a Comment