Oct 22, 2018

Select ledger dimension by Account type using segmented entry control in X++

Table



Form method

public class FormRun extends ObjectRun
{
    DimensionDynamicAccountController   _DimensionDynamicAccountController;
}

public void init()
{
    super();

     _DimensionDynamicAccountController = DimensionDynamicAccountController::construct(CreateJournalTmp_ds,
                                          fieldStr(CreateJournalTmp, LedgerDimension),
                                          fieldStr(CreateJournalTmp, AccountType));
 
}

Segmented entry control method


public void loadSegments()
{
    super();
    _DimensionDynamicAccountController.parmControl(this);
    _DimensionDynamicAccountController.loadSegments();

}

public void lookup()
{
    switch (HST_CreateJournalTmp.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 boolean validate()
{
    boolean isValid;

    isValid = super();
    isValid = _DimensionDynamicAccountController.validate() && isValid;

    return isValid;
}

public void segmentValueChanged(SegmentValueChangedEventArgs _e)
{
    super(_e);

    _DimensionDynamicAccountController.segmentValueChanged(_e);
}

public Common resolveReference()
{
    Common ret;

    ret = _DimensionDynamicAccountController.resolveReference();

    return ret;
}

public void jumpRef()
{
    _DimensionDynamicAccountController.jumpRef();
}

public void loadAutoCompleteData(LoadAutoCompleteDataEventArgs _e)
{
    super(_e);
    _DimensionDynamicAccountController.loadAutoCompleteData(_e);
}

No comments:

Post a Comment