2009-11-25 9 views
0

Je ne parviens pas à trouver la syntaxe appropriée pour référencer la table CustInvoiceTrans de la source de données de rapport SalesInvoice.Comment référencer une table de source de données de rapport à l'aide de x ++

Voici le contexte: J'ai créé un nouveau champ de classification dans la table InventItemGroup et dois obtenir les données de ce champ pour chaque élément de la facture, puis résumer ces données dans l'en-tête de la facture.

Répondre

0

Regardez la méthode fetch() du rapport SalesInvoice.

while (tradeLoopTrans.next()) 

{ 

    custInvoiceTrans = tradeLoopTrans.get(tablenum(CustInvoiceTrans)); 

    // .... 

    this.send(custInvoiceTrans); 

custInvoiceTrans est une ligne de facturation qui sera imprimée dans le rapport.

Coup d'oeil sur Design, Section Groupe: CustInvoiceJour -> Groupe de sections: CustInvoiceTrans. Cliquez ici pour voir tous les champs, qui seront imprimés

Vous devez donc:

  • Sur la table CustInvoiceTrans créer la méthode d'affichage:

    display str getClassification() 
    { 
        InventTable  table = InventTable::find(this.ItemId); 
        InventItemGroup grp = InventItemGroup::find(teble.ItemGroupId); 
        ; 
        return grp.new_field 
    } 
    

    Cette méthode retourne votre classement pour chaque CustInvoiceTrans.

  • Lors de la conception du rapport, dans la section Groupe de sections: CustInvoiceTrans créez un nouveau champ.
    DataSource = CustInvoiceTrans DataMethod = getClassification

+0

Merci, Demas, cette solution a fonctionné. – Don