# Printing UserID on SSRS reports

**URL:** <https://www.epiusers.help/t/printing-userid-on-ssrs-reports/64539>\
**Category:** Epicor ERP 10\
**Tags:** ssrs\
**Created:** [February 14, 2020, 2:02pm UTC](https://www.epiusers.help/t/printing-userid-on-ssrs-reports/64539 "2020-02-14T14:02:24Z")\
**Posts on this page:** 15\
**Page:** 1

<div class="post-metadata">

**Author:** ![fkatsumi](https://www.epiusers.help/letter_avatar_proxy/v4/letter/f/a87d85/32.png) [@fkatsumi](https://www.epiusers.help/u/fkatsumi)\
**Post date:** [February 14, 2020, 2:02pm UTC](https://www.epiusers.help/t/printing-userid-on-ssrs-reports/64539/1 "2020-02-14T14:02:24Z")

</div>

I’m trying to find a way to pass the current user ID to be printed on a canned SSRS report (not BAQ Reports). It can be Sales Order Acknowledgement. I looked at RDD, report parameters and various tables E10 creates but nothing seems to hold the UserID that submitted the report. Any ideas?

Thanks

---

<div class="post-metadata">

**Author:** ![Asz0ka](https://www.epiusers.help/letter_avatar_proxy/v4/letter/a/a698b9/32.png) [@Asz0ka](https://www.epiusers.help/u/Asz0ka)\
**Post date:** [February 14, 2020, 3:57pm UTC](https://www.epiusers.help/t/printing-userid-on-ssrs-reports/64539/2 "2020-02-14T15:57:06Z")

</div>

This post outlines a way to do it:

> [@How can I get the current user site or plant](https://www.epiusers.help/t/how-can-i-get-the-current-user-site-or-plant/60953):
>
> I would like to add the current users plant to an RDD for reporting. Does anyone know where the current user site (or plant) field is kept? I do not see it in userfile. DaveO

The userID is another field on the CallContextClientData temp table that gets generated when the report is run. “CurrentUserId”

---

<div class="post-metadata">

**Author:** ![fkatsumi](https://www.epiusers.help/letter_avatar_proxy/v4/letter/f/a87d85/32.png) [@fkatsumi](https://www.epiusers.help/u/fkatsumi)\
**Post date:** [February 15, 2020, 12:29pm UTC](https://www.epiusers.help/t/printing-userid-on-ssrs-reports/64539/3 "2020-02-15T12:29:37Z")

</div>

Hi Adam, thank you for the reply. It’s exactly what I was looking for, except that when I tried to bring the CallContextClientData table into the report I get an error. I do not see that temp table in the database either. Is this a feature beginning with certain version? I’m on 10.0.700.4.

Program Ice.Services.Lib.RunTask raised an unexpected exception with the following message: RunTask: An error has occurred during report processing. —\> Microsoft.ReportingServices.ReportProcessing.ProcessingAbortedException: An error has occurred during report processing. —\> Microsoft.ReportingServices.ReportProcessing.ReportProcessingException: Query execution failed for dataset ‘DataSet1’. —\> System.Data.SqlClient.SqlException: Invalid object name ‘CallContextClientData\_51af3b26248c4fc7915d22c164517242’.  
at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)  
at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)  
at Ice.Core.SsrsReportService.ReportExecutionService.Render(String Format, String DeviceInfo, String& Extension, String& MimeType, String& Encoding, Warning[]& Warnings, String[]& StreamIds)

---

<div class="post-metadata">

**Author:** ![bordway](https://www.epiusers.help/user_avatar/www.epiusers.help/bordway/32/30753_2.png) [@bordway](https://www.epiusers.help/u/bordway)\
**Post date:** [February 15, 2020, 4:46pm UTC](https://www.epiusers.help/t/printing-userid-on-ssrs-reports/64539/4 "2020-02-15T16:46:27Z")

</div>

> [@fkatsumi](#):
>
> I’m on 10.0.700.4.

Wondering what did your modified expression end up looking like?  
The values below worked on version 10.1.6 - note I joined on T2.Company.

T5.CurrentUserId

LEFT OUTER JOIN CallContextClientData\_" + Parameters!TableGuid.Value + " T5  
ON T2.Company = T5.CurrentCompany"

---

<div class="post-metadata">

**Author:** ![fkatsumi](https://www.epiusers.help/letter_avatar_proxy/v4/letter/f/a87d85/32.png) [@fkatsumi](https://www.epiusers.help/u/fkatsumi)\
**Post date:** [February 15, 2020, 5:09pm UTC](https://www.epiusers.help/t/printing-userid-on-ssrs-reports/64539/5 "2020-02-15T17:09:07Z")

</div>

Really? I just created a new DataSet and set the query as this to test to see if a data will come into the report.

=“SELECT T1.CurrentPlant FROM CallContextClientData\_” + Parameters!TableGuid.Value + " T1"

In the Epicor10Reports database I have never seen a table named “CallContextClientData\_…” created.

Fred

---

<div class="post-metadata">

**Author:** ![bordway](https://www.epiusers.help/user_avatar/www.epiusers.help/bordway/32/30753_2.png) [@bordway](https://www.epiusers.help/u/bordway)\
**Post date:** [February 17, 2020, 3:08pm UTC](https://www.epiusers.help/t/printing-userid-on-ssrs-reports/64539/6 "2020-02-17T15:08:34Z")

</div>

> [@fkatsumi](#):
>
> In the Epicor10Reports database I have never seen a table named “CallContextClientData\_

Yeah one of those things. Not displayed - you just have to know.  
I just happened to see a couple threads, referenced here:

> [@Add Supervisor Filter to SSRS Labor Edit Report](https://www.epiusers.help/t/add-supervisor-filter-to-ssrs-labor-edit-report/64348/6):
>
> FWIW… Not sure it will help in your case but… using the example in the previously mentioned thread. I was finally able to pass some CallContextBpmData to a report

- never noticed any mention in the standard documentation but… could be in there?

CallContextClientData\_ and CallContextBpmData\_

e.g.  
LEFT OUTER JOIN CallContextClientData\_" + Parameters!TableGuid.Value + " T2  
ON T1.Company = T2.CurrentCompany"

Or  
LEFT OUTER JOIN CallContextBpmData\_” + Parameters!TableGuid.Value + " T3 ON T1.whatever = T3.whatever"

---

<div class="post-metadata">

**Author:** ![Asz0ka](https://www.epiusers.help/letter_avatar_proxy/v4/letter/a/a698b9/32.png) [@Asz0ka](https://www.epiusers.help/u/Asz0ka)\
**Post date:** [February 17, 2020, 3:16pm UTC](https://www.epiusers.help/t/printing-userid-on-ssrs-reports/64539/7 "2020-02-17T15:16:15Z")

</div>

When you run the report, have you tried setting the Archive Period to anything but 0 days? That should leave the temp table visible in the _AppServerName_Reports database. But it very well may be a later version feature… Just to confirm, did you change the datasource to the one the report uses on your new dataset?

---

<div class="post-metadata">

**Author:** ![fkatsumi](https://www.epiusers.help/letter_avatar_proxy/v4/letter/f/a87d85/32.png) [@fkatsumi](https://www.epiusers.help/u/fkatsumi)\
**Post date:** [February 18, 2020, 4:06pm UTC](https://www.epiusers.help/t/printing-userid-on-ssrs-reports/64539/8 "2020-02-18T16:06:26Z")

</div>

I concluded this feature is not available in my version. I tested with 10.2.300 and verified that both CallContextBpmData and CallContextClientData tables are created.

Thanks

---

<div class="post-metadata">

**Author:** ![Rick\_Bird](https://www.epiusers.help/user_avatar/www.epiusers.help/rick_bird/32/77664_2.png) [@Rick\_Bird](https://www.epiusers.help/u/Rick_Bird)\
**Post date:** [August 28, 2020, 9:18pm UTC](https://www.epiusers.help/t/printing-userid-on-ssrs-reports/64539/9 "2020-08-28T21:18:21Z")

</div>

@Asz0ka  
I need to print data from CallContextClientData\_ as well so I was hopeful this would work, but it doesn’t in 10.2.600 (Cloud).  
What is interesting is the CallContextClientData\_ tables are valid in the DataSource but it does not appear to have any data. I created the CallContextClientData DataSet and entered a query that should return the values and setup the fields. But when I put them on the report I no values are returned.  
If the tables did not exist in the DataSource I should have rec’d an error about a DataSet failing, but I didn’t, so the tables are there but they do not contain any data.  
I wonder if this is a bug or something Epicor is no longer supporting.

---

<div class="post-metadata">

**Author:** ![Rich](https://www.epiusers.help/letter_avatar_proxy/v4/letter/r/35a633/32.png) [@Rich](https://www.epiusers.help/u/Rich)\
**Post date:** [August 29, 2020, 10:22pm UTC](https://www.epiusers.help/t/printing-userid-on-ssrs-reports/64539/10 "2020-08-29T22:22:24Z")

</div>

It is still supported but not all the CallContext fields are being set when the Kinetic version of the submission Form is used. The issue has been submitted to Dev under story ERPS-144817 and will be accepted for resolution.

---

<div class="post-metadata">

**Author:** ![frontierits](https://www.epiusers.help/letter_avatar_proxy/v4/letter/f/96bed5/32.png) [@frontierits](https://www.epiusers.help/u/frontierits)\
**Post date:** [August 29, 2020, 11:25pm UTC](https://www.epiusers.help/t/printing-userid-on-ssrs-reports/64539/11 "2020-08-29T23:25:51Z")

</div>

If you want the Windows User ID you can include a text field with this expression =mid(User!UserID , InStr(User!UserID,"")+1)

---

<div class="post-metadata">

**Author:** ![ckrusen](https://www.epiusers.help/user_avatar/www.epiusers.help/ckrusen/32/50584_2.png) [@ckrusen](https://www.epiusers.help/u/ckrusen)\
**Post date:** [August 30, 2020, 1:25pm UTC](https://www.epiusers.help/t/printing-userid-on-ssrs-reports/64539/12 "2020-08-30T13:25:54Z")

</div>

Would that print the user that rendered the report, and not the user that generated it?

Like if user A generated the report and archived it, then user B printed that archived report, it would say user B. No?

---

<div class="post-metadata">

**Author:** ![Rich](https://www.epiusers.help/letter_avatar_proxy/v4/letter/r/35a633/32.png) [@Rich](https://www.epiusers.help/u/Rich)\
**Post date:** [August 31, 2020, 4:15pm UTC](https://www.epiusers.help/t/printing-userid-on-ssrs-reports/64539/13 "2020-08-31T16:15:41Z")

</div>

The ERP SSRS are generated and then stored on the Server as a completed document. The Epicor User ID that submitted the report is in play during the generation but the Windows User during the actual report gen will be the User Assigned to the AppServer Service. If you want the Windows User ID (and you are using the Smart Client Submission UI) you can pass that information in one of the BPMData fields.

There is no logic executed when a report is printed so the user doing the printing would not be included on the report output.

---

<div class="post-metadata">

**Author:** ![ckrusen](https://www.epiusers.help/user_avatar/www.epiusers.help/ckrusen/32/50584_2.png) [@ckrusen](https://www.epiusers.help/u/ckrusen)\
**Post date:** [August 31, 2020, 4:21pm UTC](https://www.epiusers.help/t/printing-userid-on-ssrs-reports/64539/14 "2020-08-31T16:21:28Z")

</div>

> [@Rich](#):
>
> The ERP SSRS are generated and then stored on the Server as a completed document.

Really?

Where? As a file on the server, or as a record in the DB?

---

<div class="post-metadata">

**Author:** ![Mark\_Wonsil](https://www.epiusers.help/user_avatar/www.epiusers.help/mark_wonsil/32/51594_2.png) [@Mark\_Wonsil](https://www.epiusers.help/u/Mark_Wonsil)\
**Post date:** [August 31, 2020, 5:48pm UTC](https://www.epiusers.help/t/printing-userid-on-ssrs-reports/64539/15 "2020-08-31T17:48:29Z")

</div>

There was a post about it last week if I recall:

> [@REST API - Generate Report](https://www.epiusers.help/t/rest-api-generate-report/70247/2):
>
> Yes you can do this. Running the report is fairly straightforward by calling RunDirect method on ARInvoiceSvc. The tricky thing is locating the rendered report and then decoding the file. I wrote a BAQ to get the report (looking for unique values from TaskNote and TaskDescription but you may want something more robust). BAQ Retrieval Example: select top (1) [SysTask].[SysTaskNum] as [SysTask\_SysTaskNum], [SysRptLst].[RptData] as [SysRptLst\_RptData] from Ice.SysTask as SysTask inner join…
