Acumatica 处理字段样式时出错:';附近的语法不正确)';
我想要实现的,是在InSiteStatus表中获取特定inventoryID的QTY 我为InventoryID创建了一个DAC,并将其标记为“Style”,为QtyOnHand创建了另一个DAC 我使用了FieldUpdated事件处理程序,因此每次用户选择一个新的inventoryID时,它都会更新QtyOnHand字段 这是我的工作 发援会: 事件处理程序:Acumatica 处理字段样式时出错:';附近的语法不正确)';,acumatica,Acumatica,我想要实现的,是在InSiteStatus表中获取特定inventoryID的QTY 我为InventoryID创建了一个DAC,并将其标记为“Style”,为QtyOnHand创建了另一个DAC 我使用了FieldUpdated事件处理程序,因此每次用户选择一个新的inventoryID时,它都会更新QtyOnHand字段 这是我的工作 发援会: 事件处理程序: protected void AllocationFilter_Style_FieldUpdated(PXCache sen
protected void AllocationFilter_Style_FieldUpdated(PXCache sender, PXFieldUpdatedEventArgs e)
{
// Obtain the new data record that contains the updated
// values of all data fields
AllocationFilter filterAlloc = (AllocationFilter)e.Row;
if (filterAlloc == null)
return;
// This is where the error triggers...
PXResultset<INSiteStatus> insitestatus = PXSelect<INSiteStatus,
Where<INSiteStatus.inventoryID,
Equal<AllocationFilter.style>>>.Select(this);
foreach (INSiteStatus sitestatus in insitestatus)
{
filterAlloc.OnHand = sitestatus.QtyOnHand;
}
}
protectedvoid AllocationFilter\u Style\u FieldUpdated(PXCache发送器,PXFieldUpdatedEventArgs e)
{
//获取包含更新数据的新数据记录
//所有数据字段的值
AllocationFilter filterAlloc=(AllocationFilter)e.Row;
if(filteraloc==null)
返回;
//这就是错误触发的地方。。。
PXResultset insitestus=PXSelect.Select(此);
foreach(INSiteStatus站点在INSiteStatus中的状态)
{
filterAlloc.OnHand=sitestatus.QtyOnHand;
}
}
我想我的PXResultSet有问题,你们能帮我吗?我在这里看到了两个选项 第一,创建一个视图
public PXSelect<INSiteStatus,Where<INSiteStatus.inventoryID,Equal<Current<AllocationFilter.style>>> StyleStatus;
或者两个,就像你拥有的一样
PXResultset<INSiteStatus> insitestatus = PXSelect<INSiteStatus,
Where<INSiteStatus.inventoryID,
Equal<Required<INSiteStatus.inventoryID>>>.Select(this,filterAlloc.Style);
PXResultset insitestus=pxselects我认为您的PXSelect上缺少当前的或必需的。Jeff的答案已经具有正确语法的视图。只需确保将样式字段包装成这样的当前样式。。。current我使用了您的第二个选项,并将其更改为,它可以正常工作。谢谢你,这对我很有帮助。
foreach (INSiteStatus sitestatus in StyleStatus.Select())
{......}
PXResultset<INSiteStatus> insitestatus = PXSelect<INSiteStatus,
Where<INSiteStatus.inventoryID,
Equal<Required<INSiteStatus.inventoryID>>>.Select(this,filterAlloc.Style);