Tuesday, 2 December 2014

Get Barcode based on Dimension in AX 2012

public BarCodeString encodeBarcode(CustPackingSlipTrans _custPackingSlipTrans)
{
    BarcodeSetupId                      barcodeSetupId;
    BarcodeSetup                        barcodeSetup;
    Barcode                             barcode;
    ItemBarCode                         itemBarCode;

    barcodeSetupId  = InventParameters::find().BarcodeSetupIdPick;
    barcodeSetup    = BarcodeSetup::find(barcodeSetupId);
    barcode         = barcodeSetup.barcode();

    itemBarCode  =InventItemBarcode::findByProductDimensions(_custPackingSlipTrans.ItemId,
                            InventDim::find(_custPackingSlipTrans.InventDimId),
                                false,false,barcodeSetupId,false).itemBarCode;

    if (barcodeSetup.validateBarcode(itemBarCode))
    {
        barcode.string(true, itemBarCode);
        barcode.encode();
    }
    else
    {
        throw(error(strfmt("@SYS41409", barcode.barcodeType(), itemBarCode)));
    }

    return barcode.barcodeStr();
}

No comments:

Post a Comment

Best Practices for Troubleshooting Application Issues in D365 and Power Platform

When facing application issues, it’s important to systematically troubleshoot before reaching out for support.  Follow these steps to ensure...