Get Business Unit from Custinvoice Transactions

public LogisticsPostalAddress dimensionAddress(CustInvoiceJour        _custInvoiceJour)
{
    DimensionAttributeValueSet              DimensionAttributeValueSet;
    DimensionAttributeValueSetItem          DimensionAttributeValueSetItem;
    DimensionAttributeValue                 DimensionAttributeValue;
    DimensionAttribute                      DimensionAttribute;
    CustInvoiceJour                         custInvoiceJourLocal;
    OMOperatingUnit                         omOperatingUnit;
    RecId                                   OmRecid;
    LogisticsPostalAddress                  LogisticsPostalAddress;

    while select DefaultDimension from custInvoiceJourLocal
            where custInvoiceJourLocal.RecId == _custInvoicejour.RecId
    join RecId from DimensionAttributeValueSet
            where  DimensionAttributeValueSet.RecId == custInvoicejourlocal.DefaultDimension
    join RecId, DisplayValue from DimensionAttributeValueSetItem
            where DimensionAttributeValueSetItem.DimensionAttributeValueSet == DimensionAttributeValueSet.RecId
    join RecId from DimensionAttributeValue
            where DimensionAttributeValue.RecId == DimensionAttributeValueSetItem.DimensionAttributeValue
    join RecId, Name from DimensionAttribute
            where DimensionAttribute.RecId == DimensionAttributeValue.DimensionAttribute
    {
        if(DimensionAttribute.Name  ==  "BusinessUnit")
        {
            Businessunit = DimensionAttributeValueSetItem.DisplayValue;
            if(TUIReports && CustTable::find(_custInvoiceJour.InvoiceAccount).AccountNum == 'SSL-D0001')
            {
                BusinessUnit = "BG3";
            }

            select OMOperatingUnitNumber, Recid from OMOperatingUnit
                where OMOperatingUnit.OMOperatingUnitNumber == BusinessUnit;

            Omrecid = DirParty::primaryPostalAddress(omOperatingUnit.RecId).RecId;

            select LogisticsPostalAddress
                where LogisticsPostalAddress.RecId  == OmRecid;

        }
    }
    return LogisticsPostalAddress;
}


dimensionattributevalueset.recid       == custinvoicejour.dimensionvalue

dimensionattributevaluesetItem.dimensionattributevalueset == dimensionattributevalueset.recid 

businessunit =   dimensionattributevaluesetItem.displayvalue

Comments