Axapta 创建调拨订单时,参考字段中未出现“转到主表表单”菜单

Axapta 创建调拨订单时,参考字段中未出现“转到主表表单”菜单,axapta,microsoft-dynamics,Axapta,Microsoft Dynamics,我从销售订单行创建了一个数量为5的采购订单。在我的salesline表单的“其他”选项卡下,我有“参考号”字段。当我右键单击该字段时,它将显示类似“转到主表窗体”的菜单 但是当我从销售订单行创建一个数量为5的调拨订单时。在我的salesline表单的“其他”选项卡下,我有“参考号”字段。当我右键单击该字段时,它不会显示类似“转到主表窗体”的菜单 如何在调拨订单中显示“转到主表表单”“该菜单。当参考类型为销售订单、采购订单或生产订单时,转到主表表单将仅显示参考编号。如果引用类型为空或其他内容,则转

我从销售订单行创建了一个数量为5的采购订单。在我的salesline表单的“其他”选项卡下,我有“参考号”字段。当我右键单击该字段时,它将显示类似“转到主表窗体”的菜单

但是当我从销售订单行创建一个数量为5的调拨订单时。在我的salesline表单的“其他”选项卡下,我有“参考号”字段。当我右键单击该字段时,它不会显示类似“转到主表窗体”的菜单


如何在调拨订单中显示“转到主表表单”“该菜单。

当参考类型为销售订单、采购订单或生产订单时,转到主表表单将仅显示参考编号。如果引用类型为空或其他内容,则转到主表窗体将不会显示

如果您创建方法
\Forms\SalesTable\Data Sources\SalesLine\Fields\InventRefId\Methods\jumpRef
,我认为您应该能够为调拨订单“转到主表表单”,类似于:

public void jumpRef()
{
    Args        args;
    FormRun     fr;
    ;

    if (salesLine.InventRefType == InventRefType::InventTransfer)
    {
        args = new Args(formstr(InventJournalTable));
        args.lookupField(fieldNum(InventJournalTable, JournalId));
        args.lookupValue(salesLine.InventRefId);

        fr = ClassFactory.FormRunClass(args);
        fr.init();
        fr.run();
        fr.detach();
    }
    else
    {
        super();
    }
}
我还没有检查它是否有效,您可能需要修改
InventJournalTable
表单,因为默认情况下它只显示打开的日记账,但我希望此示例代码有助于理解如何创建自定义的“转到主表表单”行为

注意,为了更好地控制用户权限,使用
menuffunction
及其方法而不是提供的代码可能是有意义的,尽管它在您的场景中可能并不重要