Hi @smarenich
That worked perfectly, thank you and I will look at the 2022R1 Beta now.
Thanks
Matt
Hi @mbrown30 You can do it without customization, using the Entities Mapping window.
Something like - ProductData | Type | Non Stock Item | =’physical’
In Acumatica 2022r1 we are making this enhancement to treat Non Stock Items that requires shipment as physical item.
Hi @mbrown30
Below is the code piece for your reference, you can try with to set Non-Stock Items as Physical on sync from Acumatica to BigCommerce:
public class KNBCNonStockItemProcessorExt : PXGraphExtension<BCNonStockItemProcessor>
{
public delegate void MapBucketExportDelegate(BCNonStockItemEntityBucket bucket, IMappedEntity existing);
PXOverride]
public void MapBucketExport(BCNonStockItemEntityBucket bucket, IMappedEntity existing, MapBucketExportDelegate baseMethod)
{
baseMethod(bucket, existing);
MappedNonStockItem obj = bucket.Product;
NonStockItem impl = obj.Local;
ProductData data = obj.Extern;
data.Type = ProductTypes.physical.ToEnumMemberAttrValue();
}
}
Thanks Vivek
It would be good if the standard product looked up the Require Shipment flag for non-stock items to identify the item as Digital or Physical.
I will look at doing the customisation.
Thanks again for your help.
Matt
Hi @mbrown30
The Non-stock items will be pushed to BigCommerce as a Digital items only, this is core connector behavior but we can do a customization to set this status from Digital to Physical.
We can override MapBucketExport() method and do this change there after Base method call.