InventDim tablosuyla esnek joinler yapmak için fazla kasmanıza gerek bırakmayan bir makro var:
InventDimParm dimParm;
InventDim dimValues,dimJoin;
;
...
//Join where ile kullanacağımız alanları dolduruyoruz
dimvalues.wMSLocationId = inventdim.wMSLocationId;
if (inventdim.InventSiteId)
dimvalues.InventSiteId = inventdim.InventSiteId;
if (inventdim.configId)
dimvalues.configId = inventdim.configId;
//InventDimParm bu alanlara göre ayarlanacak
dimparm.initFromInventDim(dimValues);
while select lclInventSum
where lclInventSum.ItemId == itemId && leftQty > 0
#InventDimExistsJoin(lclInventSum.InventDimId,dimJoin,dimValues,dimParm)
İlk parametre join yapılan tablonun ilgili InventDimId alanı, ikinci parametre InventDim tablosunun tanımlanan adı, Üçüncü paremetre ile değerler gidiyor. Dördüncü paremetre de parametre tablosu. Bu tablonun değişik kullanımları da mevcut.