要在扩展标准方法时对返回的 query 进行额外的 SQL 处理,可以使用 addRange() 方法来添加 where 条件。以下是一个示例代码:

public static Query buildPrintQuery(
    tableId                 _custVendConsInvoice,
    tableId                 _custVendInvoiceJour,
    tableId                 _custVendInvoiceTrans,
    CustVendConsRefRecId_JP _recId)
{
    Query query = next buildPrintQuery(_custVendConsInvoice, _custVendInvoiceJour, _custVendInvoiceTrans, _recId);
    
    // 添加where条件
    QueryBuildDataSource qbds = query.dataSourceTable(tableNum(CustVendInvoiceTrans));
    qbds.addRange(fieldNum(CustVendInvoiceTrans, InvoiceId)).value(queryValue('INV-001'));
    
    return query;
}

在上面的示例中,使用addRange()方法将一个 where 条件添加到查询的 CustVendInvoiceTrans 数据源的 InvoiceId 字段上。这个 where 条件将查询结果限制为 InvoiceId 为'INV-001'的记录。您可以根据自己的需求修改 where 条件的字段和值。

D365 X++ 扩展标准方法:在 buildPrintQuery() 返回的 Query 上添加 Where 条件

原文地址: https://www.cveoy.top/t/topic/m0k3 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录