web
You’re offline. This is a read only version of the page.
close
Skip to main content

Notifications

Announcements

Community site session details

Community site session details

Session Id :
Finance | Project Operations, Human Resources, ...
Answered

how CustQuotationJour is linked with SalesQuotationTable? in AX 2012 r3

(0) ShareShare
ReportReport
Posted on by 30

Hi all,

can you please let me know how CustQuotationJour is linked with SalesQuotationTable? I have not get proper matching in the QuotationID field in both tables.

Kindly let me know the exact relation between both tables,

Please give me more shed on this.

Thnaks!

I have the same question (0)
  • Suggested answer
    Sergei Minozhenko Profile Picture
    23,093 on at

    Hi @rp@n,

    You need to use CustQuotationSalesLink table to get a link between these tables.

    Check method CustQuotationJour.salesQuotationTable and how it's designed

  • @rp@n Profile Picture
    30 on at

    Sergei,

    i have created a report for Sales Quotation

    in Controller class --

    PreRunModifyContract() --

    public void prePromptModifyContract()

    {

       GDJ_JPN_SalesQuotationContract    contract;

       // Set contract based on caller

       contract = this.parmReportContract().parmRdpContract() as GDJ_JPN_SalesQuotationContract;

       custQuotationSalesLink = this.parmArgs().record() as CustQuotationSalesLink;

       contract.parmQuotationId(custQuotationSalesLink.quotationId);

       contract.parmCustAccount(custQuotationSalesLink.invoiceAccount);

    }

    DP -- process report method

    [SysEntryPointAttribute(false)]

    public void processReport()

    {

       GDJ_JPN_SalesQuotationContract    contract;

       contract = this.parmDataContract() as GDJ_JPN_SalesQuotationContract;

       quotationId = contract.parmQuotationId();

       custAccount = contract.parmCustAccount();

       info(quotationId);

    }

    Note - info is return BLANK

    Report 

    Q1.jpg

    Q2.jpg

    i want to get Quotation id = QT-0000002 in my query.

    Kindly suggest me what to do?

  • Martin Dráb Profile Picture
    238,286 Most Valuable Professional on at

    You're again forgetting about the debugger. Your first step should be checking what's going on in your, not immediately asking others, who can't do that. You're in a much better position to check the problem.

    I would place a breakpoint at the line with contract.parmQuotationId(custQuotationSalesLink.quotationId) (by the way, if you didn't forget to use "Insert code", I could have referred to the line number). I think it's likely that custQuotationSalesLink is empty.

  • @rp@n Profile Picture
    30 on at

    Martin

    i debugged that, and the quotationid is showing blank. So, i am asking what else i need to do?

    i saw, in custQuotationSalesLink table, there is present the QuotationId, whch i am looking for

  • udaY-ch Profile Picture
    5,139 on at

    Hi

    Does your dp class decorated with contract class attribute?

    I mean in the class declaration.

    Uday

  • @rp@n Profile Picture
    30 on at

    yes,

    [SRSReportParameterAttribute(classStr(GDJ_JPN_SalesQuotationContract))]

    class GDJ_JPN_SalesQuotationDP extends SrsReportDataProviderPreProcessTempDB

    {

    }

    processReport method

    [SysEntryPointAttribute(false)]

    public void processReport()

    {

       GDJ_JPN_SalesQuotationContract    contract;

       contract = this.parmDataContract() as GDJ_JPN_SalesQuotationContract;

       quotationId = contract.parmQuotationId();

       custAccount = contract.parmCustAccount();

       info(quotationId);

    }

  • Martin Dráb Profile Picture
    238,286 Most Valuable Professional on at

    Could you be a bit more precise, please? I'm confused, because you said you debugged that and then didn't gave me the answer.

    Do you mean that custQuotationSalesLink in prePromptModifyContract() doesn't contain any value in QuotationId field? If so, it's clear that we can ignore the rest of code, because the problem is already here.

    But it's not exactly what I suggested. Not only that the QuotationId is empty - I suspect that the whole record is empty. Either  this.parmArgs().record() returns no record at all, or its type is not CustQuotationSalesLink. Now please go to the debugger again and check what I said. And then try to think by yourself what could be wrong and how you can test it.

  • @rp@n Profile Picture
    30 on at

    No, its in my class

    GDJ_JPN_SalesQuotationController >>  prePromptModifyContract method

  • udaY-ch Profile Picture
    5,139 on at

    You should write your code in prerunmodifycontract and not in prepromptmodifycontract

  • @rp@n Profile Picture
    30 on at

    why prerunmodifycontract ??

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

News and Announcements

Season of Giving Solutions is Here!

Quick Links

Responsible AI policies

As AI tools become more common, we’re introducing a Responsible AI Use…

Neeraj Kumar – Community Spotlight

We are honored to recognize Neeraj Kumar as our Community Spotlight honoree for…

Leaderboard > Finance | Project Operations, Human Resources, AX, GP, SL

#1
Abhilash Warrier Profile Picture

Abhilash Warrier 843 Super User 2025 Season 2

#2
André Arnaud de Calavon Profile Picture

André Arnaud de Cal... 423 Super User 2025 Season 2

#3
Martin Dráb Profile Picture

Martin Dráb 342 Most Valuable Professional

Last 30 days Overall leaderboard

Product updates

Dynamics 365 release plans