Acumatica 处理字段样式时出错:';附近的语法不正确)';

Acumatica 处理字段样式时出错:';附近的语法不正确)';,acumatica,Acumatica,我想要实现的,是在InSiteStatus表中获取特定inventoryID的QTY 我为InventoryID创建了一个DAC,并将其标记为“Style”,为QtyOnHand创建了另一个DAC 我使用了FieldUpdated事件处理程序,因此每次用户选择一个新的inventoryID时,它都会更新QtyOnHand字段 这是我的工作 发援会: 事件处理程序: protected void AllocationFilter_Style_FieldUpdated(PXCache sen

我想要实现的,是在InSiteStatus表中获取特定inventoryID的QTY

我为InventoryID创建了一个DAC,并将其标记为“Style”,为QtyOnHand创建了另一个DAC

我使用了FieldUpdated事件处理程序,因此每次用户选择一个新的inventoryID时,它都会更新QtyOnHand字段

这是我的工作

发援会:

事件处理程序:

    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);