Report with tcodes utilization on per user & per date basis - abap

We want to create a report with Select Criteria DATE & USER and we display the Transactions that run per user & per date.
I know the transaction ST03N but it does not extract the data as I want (DATE-USER-TCODES).
Does anyone know where to find these data, which tables?
Thanks in advance
Elias

Everything is in ST03N:
Select target system from the list in the very top menu
Expand the list of periods (day, month, total) and select the necessary leaf in the necessary node
After double-click (important!) on that leaf the window will appear in the bottom-left corner. In that window one can choose the necessary stats.
Here we need to select User and Settlement Statistics and User Profile below.
After double-click on the necessary stat, windows in the right will be filled with data.
Here we need to double-click again on the target user and all his tcodes on the selected date will be displayed in the popup.
P.S. If you miss User and Settlements Statistics node in your system, then some of the Performance Collectors are not set up properly on your system.

You won't be able to get this from one specific table; however, you can use the following function module to fetch the information:
SWNC_COLLECTOR_GET_AGGREGATES
You will have to pass the following parameters:
IMHOSTNAME "HOSTNAME"
IMDATUM "DATE"
IMPERITYPE "D/W/M"
Variable EX_DATA-APPLICATION_STAT will have all the info you need.

Do you mean, you want to display, what a specific user did in the system on a given day? If yes, have a look at transaction STAD.

The table that stores all data from ST03N is MONI, however it is encoded and cannot be read. You will have to write a custom program using SWNC_COLLECTOR_GET_AGGREGATES function module or check out ones already available online.

Related

Value only showing the first item in SSRS report

So my problem here is that I have a Part number which lives in two warehouses hence it has two bin locations. If I just use =Fields!PrimBin.Value it only ever returns the first location. I need to display the PrimBin if the location is from a specific warehouse. To get the warehouse I use =Fields!WarehouseCode.value
What I need to do is only show the PrimBin.Value of MAINWHSE and not CELLWHSE
Thanks in advance.
Ok so the database it quite vast. However, for the information required I am using two tables. Part and PimWhse.
Part shares the Product ID to PrimWhse. In PrimWhse each partID has two locations "MAINWHSE", "CELLWHSE "and 1 bin to pick in each warehouse giving to possible locations.
So WarehouseCode.Value will have the information for which warehouse the part is located. and PrimBin.Value will have the warehouse position ID stored in it.
This is all setup via report style within the Epicor system. When I create a query in business activity to look in MAINWHSE it shows the correct information.
However, in the report data builder I'm not able to set this query so I assume SSRS will be able to see of both theses possible values for PrimBin.Value!? If not I guess I need to work out how to add a query to report data builder, which at the moment does no seem possible?
Thanks again.

SSRS 2008 not passing multiple values to report run from button click

I have a simple query that I am running within a report on SSRS 2008, this query simply takes a date from the user of the report and a user code which is a simple md5 hashed code based on their local user id.
and this filters down the report to a subset of data relative to the period and the user selected. This report takes the below parameters:
select * from
ops
where [Late Flag] = 'Late Start'
and [Planned Session Start Time] >= #start
and [Planned Session Start Time] < #end
and [Hashed Surgeon 1 Code] IN (#UserCode)
The problem starts to appear when this data-set is filtered down using these parameters and then the user wishes to see the charts, which again is a simple button click, the action of which runs another report showing the charts for the same period.
I am passing the session ID's of all of the sessions relating to the user as a parameter to the charts report. The charts report is only based on the below:
select * from
ops
where [Session ID] in (#SessionID)
I expect to see multiple sessions here if a user has more than one in the period. but the report is only displaying one of these even though I have allow multiple values checked and I am using an IN as can be seen above.
Question is, has anyone had this problem before if so what can I do about it, I need to see all sessions in the same period selected for that particular user. It is very frustrating I have thought of everything I can am I missing something?
After reviewing the suggested approaches kindly provided by #Lukasz Szozda I realised that the best approach for me in this situation would be to create a max and min of each session date that could be passed to the charts report.
This removed the need to parameterise the IN statement. Obviously not a solution for everyone where passing multi values to multi values is required but worked nicely for me.
I must also state that this will only work for passing a single userCode in my setup, if I wanted to see more than one UserCode activity for the same period then I would need to follow the suggested approach and commit to parameterising the IN statement.

Heat map visualization issue Microstrategy VI

I am creating a Dashboard using as a visualization a heat map. Everything was OK until I changed the parameters of my metric, the chart disappeared and I've got this message: 'Filter excludes all data'
The only modification that I've done is to set the Include Distinct Elements to true within the Count Parameter option of the metric.
What could be happening?. Do I need to set another parameter to get the count of distinct elements that I need?
Regards.
surely the metric is level with some attribute that is not inside the visualization, if the filter has date for example, include it in the visualization.
"Filter Excludes All data" is a default warning message that you will get in MicroStrategy when a reports/visuals/dashboards does not return any data.
https://community.microstrategy.com/s/article/KB47557-How-to-Properly-Suppress-the-Message-Filter-excludes-all?r=1&Component.reportDeprecationUsages=1&Headline.getInitData=1&ArticleView.getArticleHeaderDetail=1&Quarterback.validateRoute=1&RecordGvp.getRecord=1&ArticleRichContent.getArticleAuthor=1&ArticleTopicList.getTopics=1&ArticleRichContent.hasArticleAccess=1&ForceCommunityFeed.getModel=1&ArticleRichContent.getTopicsAssigned=1
There are n number of reasons for a report which cannot return data, please check the following steps to debug the issue,
As per your first image it shows a date range as filter, after you have changed to "Include only distinct" this date range might get affected so please put the objects in grid and apply the date filter and check whether it returns the correct data.
If it returns, check whether all the metrics returns a value.
Check whether candidateID, date and people attributes/metrics are properly related.
These steps will show, where the problem is, still if you could not figure it out export the dashboard and share it with MicroStrategy Tech Support team for debugging.
Hope it helps.

Qlikview line chart with multiple expressions over time period dimension

I am new to Qlikview and after several failed attempts I have to ask for some guidance regarding charts in Qlikview. I want to create Line chart which will have:
One dimension – time period of one month broke down by days in it
One expression – Number of created tasks per day
Second expression – Number of closed tasks per day
Third expression – Number of open tasks per day
This is very basic example and I couldn’t find solution for this, and to be honest I think I don’t understand how I should setup my time period dimension and expression. Each time when I try to introduce more then one expression things go south. Maybe its because I have multiple dates or my dimension is wrong.
Here is my simple data:
http://pastebin.com/Lv0CFQPm
I have been reading about helper tables like Master Callendar or “Date Island” but I couldn’t grasp it. I have tried to follow guide from here: https://community.qlik.com/docs/DOC-8642 but that only worked for one date (for me at least).
How should I setup dimension and expression on my chart, so I can count the ID field if Created Date matches one from dimension and Status is appropriate?
I have personal edition so I am unable to open qwv files from other authors.
Thank you in advance, kind regards!
My solution to this would be to change from a single line per Call with associated dates to a concatenated list of Call Events with a single date each. i.e. each Call will have a creation event and a resolution event. This is how I achieve that. (I turned your data into a spreadsheet but the concept is the same for any data source.)
Calls:
LOAD Type,
Id,
Priority,
'New' as Status,
date(floor(Created)) as [Date],
time(Created) as [Time]
FROM
[Calls.xlsx]
(ooxml, embedded labels, table is Sheet1) where Created>0;
LOAD Type,
Id,
Priority,
Status,
date(floor(Resolved)) as [Date],
time(Resolved) as [Time]
FROM
[Calls.xlsx]
(ooxml, embedded labels, table is Sheet1) where Resolved>0;
Key concepts here are allowing QlikView's auto-conatenate to do it's job by making the field-names of both load statements exactly the same, including capitalisation. The second is splitting the timestamp into a Date and a time. This allows you to have a dimension of Date only and group the events for the day. (In big data sets the resource saving is also significant.) The third is creating the dummy 'New' status for each event on the day of it's creation date.
With just this data and these expressions
Created = count(if(Status='New',Id))
Resolved = count(if(Status='Resolved',Id))
and then
Created-Resolved
all with full accumulation ticked for Open (to give you a running total rather than a daily total which might go negative and look odd) you could draw this graph.
For extra completeness you could add this to the code section to fill up your dates and create the Master Calendar you spoke of. There are many other ways of achieving this
MINMAX:
load floor(num(min([Date]))) as MINTRANS,
floor(num(max([Date]))) as MAXTRANS
Resident Calls;
let zDateMin=FieldValue('MINTRANS',1);
let zDateMax=FieldValue('MAXTRANS',1);
//complete calendar
Dates:
LOAD
Date($(zDateMin) + IterNo() - 1, '$(DateFormat)') as [Date]
AUTOGENERATE 1
WHILE $(zDateMin)+IterNo()-1<= $(zDateMax);
Then you could draw this chart. Don't forget to turn Suppress Zero Values on the Presentation tab off.
But my suggestion would be to use a combo rather than line chart so that the calls per day are shown as discrete buckets (Bars) but the running total of Open calls is a line

simple average calculation in Access XP report

i have a database used at work for evaluating calls, the database is somewhat dated and originally created on Access XP. Once evaluated these calls are given a score out of 5 which is entered along with other data (such as date, employee name, etc) on a form. I have the reports set up so they generate when you enter the employee name and then the start of a date period and the end of a date period, the report will then generate and show the entries made between those 2 dates. i am trying to include a section on the report which shows an average of the call score for the employee for the period chosen. I understand this may be pretty simple but i'm struggling! cheers, Kris
If you want to work out group calculations on reports, you can either put them in the group header/footer, or report header/footer (for calculations over the whole report).
In this case, placing a textbox with something like =AVG([CallScore]) as the control source in the Report Footer should work.
This page should explain more about using aggregate functions in reports: http://office.microsoft.com/en-gb/access-help/summing-in-reports-HA001122444.aspx