Cómo hacer referencia a una tabla de fuente de datos de informe utilizando x ++
-
05-07-2019 - |
Pregunta
No puedo encontrar la sintaxis adecuada para hacer referencia a la tabla CustInvoiceTrans de la fuente de datos del informe SalesInvoice.
Aquí está el contexto: he creado un nuevo campo de clasificación en la tabla InventItemGroup y necesito obtener los datos de este campo para cada artículo en la factura, y luego resumir estos datos en el encabezado de la factura.
Solución
Mire el método fetch () del informe SalesInvoice.
while (tradeLoopTrans.next())
{
custInvoiceTrans = tradeLoopTrans.get(tablenum(CustInvoiceTrans));
// ....
this.send(custInvoiceTrans);
custInvoiceTrans es una línea de cada factura que se imprimirá en el informe.
Siguiente aspecto en Diseño, Sección Grupo: CustInvoiceJour - > Grupo de Sección: CustInvoiceTrans. Aquí están todos los campos, que serán impresos
Así que necesitas:
-
En la tabla CustInvoiceTrans cree el método de visualización:
display str getClassification() { InventTable table = InventTable::find(this.ItemId); InventItemGroup grp = InventItemGroup::find(teble.ItemGroupId); ; return grp.new_field }
Este método devuelve su clasificación para cada CustInvoiceTrans.
-
En el diseño del informe, en la sección Grupo de la sección: CustInvoiceTrans crea un nuevo campo.
DataSource = CustInvoiceTrans DataMethod = getClassification