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 :
Microsoft Dynamics AX (Archived)

Data is not there in Regular table in SSRS report

(0) ShareShare
ReportReport
Posted on by 30

Dear All,

Can you please let me know i have developed one SSRS report which is calling form multiple forms. The report output is same for all.

I took Table type  = Regular for SSRS report. So, i set table property

Table type : regular

Created by  = Yes

Create Transaction Id = Yes

And in DP class in processReport method : i add 

Table.setConnection(this.parmUserConnection());

Report is working fine.

But i surprised after executing report when i saw the table it's BLANK. why ???

Could you please let me know why data is not there after executing report ?

Please give me more shed on this.

Thanks!

*This post is locked for comments

I have the same question (0)
  • Verified answer
    Sukrut Parab Profile Picture
    71,710 Moderator on at

    You discussed similar thread before and good explanation was provided during that time

    Here is link

    community.dynamics.com/.../201914

  • @rp@n Profile Picture
    30 on at

    Dear All,

    One things to forgot , suppose the report ran by 5 users at a  time and i used "Regular table" then it will cause any data conflict?

    If yes, please let me know how to prevent from this.

    Please give me more shed on this.

    Thanks!

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

    Stop for a second and think about whether "it'll automatically deletes the records" doesn't mean that the records are deleted automatically (if you implement the RDP class correctly) and therefore you shouldn't do it by yourself. My sentence "But it doesn't mean that you should develop the logic again -  as mention before in this thread, the standard preprocessing logic already handles these things" might also suggest that you shouldn't develop it by yourself. Did it give you more shed on this? If it did, you could achieve the same result by reading all replies a few times, instead of asking others to repeat everything.

    Also, processReport() would be a completely wrong place, because it's called before printing and therefore you would delete the data before they could be used.

  • @rp@n Profile Picture
    30 on at

    Thanks Martin,

    Ohh!!! yes, before i thought to use delete_from statement. But i saw after report executing data is not there in Regular table.

    As Ada mentioned, "Once the report is being generated, it'll automatically deletes the records in regular table using the field CreatedTransactionId. Yes,"

    So, now again it's required to use "delete_from" statement to add in Processreport() ?

    Please give me more shed on this.

    Thanks!

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

    Not at all. Clear() merely remove fields values from ta buffer in application; it has no impact on database. What you would need is delete records from database (all the data you inserted there so you can use them in a report and they're just wasting database resources as soon as the report is generated). Data can be deleted from database by delete() method and the delete_from statement.

    But it doesn't mean that you should develop the logic again - as mention before in this thread, the standard preprocessing logic already handles these things. I was merely answering your question about benefits.

  • @rp@n Profile Picture
    30 on at

    Thanks Martin,

    Kindly let me know the logic for clean-up.

    Is it Table. Clear();

    Please give me more she'd on this

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

    If you use a temporary table, each report will gets its own separate table, therefore there is no risk of any conflicts, that you would have to carefully handle in case of a shared regular table. Also, when you're done, you'll simply stop using the temporary table. If you use a regular table, all data you've put there to generate a report is stored there unless you delete it, therefore you need a extra logic to do the cleanup.

    As you can see, using temporary tables is easier and less risky.

  • @rp@n Profile Picture
    30 on at

    Thanx Sukrut,

    Will try to find out the solution.

    But could you please let me know the exact reason for NOT to use REGULAR table. Why???

    If we used regular table then what will happened?

    What is the benefit of using Temp DB or In Memory table?

    Kindly elaborate me.

  • Verified answer
    Sukrut Parab Profile Picture
    71,710 Moderator on at

    I think  you should go ahead with temp table and figure out a way to overcome the stack trace error you posted earlier. There is definitely something wrong with your code which is causing stack trace error.

  • @rp@n Profile Picture
    30 on at

    Thanks Ada,

    Shall i go for Regular table ?

    Thanks!

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 > 🔒一 Microsoft Dynamics AX (Archived)

#1
TAHER Mehdi Profile Picture

TAHER Mehdi 3

#2
Martin Dráb Profile Picture

Martin Dráb 2 Most Valuable Professional

#2
Volodya Profile Picture

Volodya 2

Last 30 days Overall leaderboard

Featured topics

Product updates

Dynamics 365 release plans