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.
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
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();
}
}
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 @smarenich
That worked perfectly, thank you and I will look at the 2022R1 Beta now.
Thanks
Matt