Come fare riferimento a una tabella dell'origine dati del report utilizzando x ++
-
05-07-2019 - |
Domanda
Non riesco a trovare la sintassi corretta per fare riferimento alla tabella CustInvoiceTrans dell'origine dati del report SalesInvoice.
Ecco il contesto: ho creato un nuovo campo di classificazione nella tabella InventItemGroup e ho bisogno di ottenere i dati da questo campo per ciascun articolo della fattura, quindi riassumere questi dati nell'intestazione della fattura.
Soluzione
Guarda il metodo fetch () del rapporto SalesInvoice.
while (tradeLoopTrans.next())
{
custInvoiceTrans = tradeLoopTrans.get(tablenum(CustInvoiceTrans));
// ....
this.send(custInvoiceTrans);
custInvoiceTrans è una riga di ogni fattura che verrà stampata nel rapporto.
Prossimo sguardo a Design, gruppo di sezioni: CustInvoiceJour - > Gruppo di sezioni: CustInvoiceTrans. Ecco tutti i campi che verranno stampati
Quindi hai bisogno di:
-
Sulla tabella CustInvoiceTrans crea il metodo di visualizzazione:
display str getClassification() { InventTable table = InventTable::find(this.ItemId); InventItemGroup grp = InventItemGroup::find(teble.ItemGroupId); ; return grp.new_field }
Questo metodo restituisce la tua classificazione per ogni CustInvoiceTrans.
-
Nella progettazione del report, nella sezione Gruppo di sezioni: CustInvoiceTrans crea un nuovo campo.
DataSource = CustInvoiceTrans DataMethod = getClassification