Customizing a query for a report according to login user name
Hi, I am new to the portal, so I have a urgent question:
In my company we have local departments who are supposed to use
the same report but only with their own data.
I have a table with all users and their parameters (e.g.
username + deptno) and might be able to create a function which
gets the username (found that in one of the standard packages)
and retrieves the parameter from the database via SELECT. The
function should then return the parameter to be used where ever
needed.
Big question: How can I use this function in a SELECT-Statement
for my report? I guess it must be something like
SELECT * FROM -table or view- WHERE deptno = -schema.function-
Right? Does the function have to be part of a package?
Thanks in advance for any help.
Yours
Reinhard Piper
Munich / Germany
the table or view is WWSEC_person this is where the users are..
Ruud
Similar Messages
-
Improving a query for a report in b1
Dear All,
We have a query for a report. this report display all invoices with it´s Dscription in the system just have 3 descriptions so i need the the report display the this description in column not in row and then have the sum by description. i dont know how can i put a picture for showing the example.
Some one knows how can i do? down the code.
Regards
NANCY
SELECT distinct T1.visorder as 'No. Linea',
T0.DocNum as 'No. Factura',
T0.DocDate as 'Fecha',
T0.CardName as 'Cliente',
T1.U_CANTIDAD as 'Tonelaje',
T0.U_OPERACION as 'No. Operación',
T0.DocCur as 'Moneda',
T0.GrosProfit as 'Ingreso total de factura',
T1.ItemCode as 'Código',
T1.Dscription,
T1.Quantity*T1.Price as 'Importe por Servicio',
T1.LineVat as 'IVA por servicio',
T0.VatSum as 'IVA por factura',
T2.PlngGroup as 'Cuenta SUN'
FROM OINV T0 LEFT JOIN INV1 T1 ON T0.DocEntry = T1.DocEntry
inner join OCRD T2 ON T0.CardCode = T2.CardCode
WHERE T0.Series = 49 and
T0.DocDate BETWEEN [%0] AND [%1]Hi Nancy,
I'm not sure that I understand your requirement 100% but assuming you only have 3 descriptions then the following would give you totals for your different descriptions...
Simply replace the text ' etc in the code below with the descriptions values.
SELECT distinct
T1.visorder as 'No. Linea',
T0.DocNum as 'No. Factura',
T0.DocDate as 'Fecha',
T0.CardName as 'Cliente',
T1.U_CANTIDAD as 'Tonelaje',
T0.U_OPERACION as 'No. Operación',
T0.DocCur as 'Moneda',
T0.GrosProfit as 'Ingreso total de factura',
T1.ItemCode as 'Código',
CASE
WHEN T1.Dscription = '<description1>'
THEN T1.Quantity*T1.Price
ELSE 0
END as '<description1>',
CASE
WHEN T1.Dscription = '<description2>'
THEN T1.Quantity*T1.Price
ELSE 0
END as '<description2>',
CASE
WHEN T1.Dscription = '<description3>'
THEN T1.Quantity*T1.Price
ELSE 0
END as '<description3>',
T1.LineVat as 'IVA por servicio',
T0.VatSum as 'IVA por factura',
T2.PlngGroup as 'Cuenta SUN'
FROM OINV T0 LEFT JOIN INV1 T1 ON T0.DocEntry = T1.DocEntry
inner join OCRD T2 ON T0.CardCode = T2.CardCode
WHERE T0.Series = 49 and
T0.DocDate BETWEEN [%0] AND [%1]
Hope this helps.
Regards,
Sean -
I've created the below crosstab query for a report.
Select Grouping_Condition,Warehouse,Max(Value) Over (Partition By Grouping_Condition,Warehouse) As Total,
Sum(Value) Over (Partition By Warehouse) As Total_Containers_Per_Warehouse,
Sum(Vat1Ue) Over () As Total_Containers,
(Max(Vat1Ue) Over (Partition By Grouping_Condition,Warehouse))
/(Sum(Vat1Ue) Over (Partition By Warehouse))*100 As Total_Pct
From
Seleect Grouping_Condition,Warehouse,Count(*) As Value
From
Set1Ect
T1.Warehouse,Shipped_Weight As Shipped_Tons,T1.Max_Weight As Maxtonnes,
Case When (Shipped_Weight)< (T1.Max_Weight*0.001)*0.95 Then 'containers_under_95'
When (Shipped_Weight*0.001) Between (T1.Max_Weight*0.001)*0.95 And (T1.Max_Weight*0.001) Then 'containers_95_100'
Et1Se 'containers_above_weight'
End Grouping_Condition
From
Tabt1E1 T1
,Tabt1E2 T2
,Tabt1E3 C
Where
T1.Co11 = T2.Col1
And T1.Col2=C.Col2
And More Conditions
Where Warehouse In ('W1','W2','W3','W4','W5')
Group By (Grouping_Condition,Warehouse)
The Above Query Gives Me Output Something Like Below:
Grouping_Condition Warehouse Total Total_Containers_Per_Warehouse Total_Containers Total_Pct
Containers_95_100 W1 5 10 60 50
Containers_Under_95 W1 5 10 60 50
Containers_95_100 W2 10 20 60 50
I've Got Report In The Below Format
W1 W2 W3 W4 W5 Total
Total_Containers 10 20 60
Containers_95_100 5 10 15
Containes_95_100_% 50 50 ????
I Need To Calculate The Total Percentage In The Above Table With ????
Any Help Is Much Appreciated..It appears as though you already have your groupings and counts per grouping, but require a ratio of each groupings count against all other counts. Is that correct ?
If so, try the new 11g analytic function, something like this:
select Grouping_Condition
,Warehouse
,ratio_to_report(Value) over () as Count_Ratio_over_Report
.. -
Need a query for monthly Report
Hello All,
I need a query for monthly report,
comp_code
emp_id
dept_id
work_day
100
A100
MECH
01/01/2013
100
A100
MECH
02/01/2013
100
A100
MECH
03/01/2013
100
A100
MECH
04/01/2013
100
A100
MECH
05/02/2013
100
A100
MECH
08/02/2013
100
A100
MECH
09/02/2013
100
A100
MECH
10/02/2013
100
A100
MECH
12/05/2013
100
A100
MECH
13/05/2013
100
A101
CIV
01/04/2013
100
A101
CIV
02/04/2013
100
A101
CIV
03/04/2013
100
A101
CIV
04/04/2013
100
A101
CIV
06/04/2013
100
A101
CIV
06/06/2013
100
A101
CIV
07/06/2013
100
A101
CIV
08/06/2013
100
A101
CIV
09/06/2013
100
A101
CIV
10/06/2013
100
A101
CIV
11/12/2013
100
A101
CIV
12/12/2013
100
A101
CIV
13/12/2013
100
A101
CIV
14/12/2013
Dear friends this the sample table of my report.In which table has contain list of employees with their working days(actual table has contain almost 5laks of records).
suppose user choose the date between 01/01/2013 and 31/12/2013 then the result should be like this.
comp_code
emp_id
dept_id
month
Total_work
100
A100
MECH
JANUARY
4
100
A100
MECH
FEBRUARY
2
100
A100
MECH
MARCH
0
100
A100
MECH
APRIL
0
100
A100
MECH
MAY
2
100
A100
MECH
JUNE
0
100
A100
MECH
JULY
0
100
A100
MECH
AUGUST
0
100
A100
MECH
SEPTEMBER
0
100
A100
MECH
OCTOBER
0
100
A100
MECH
NOVEMBER
0
100
A100
MECH
DECEMBER
0
100
A101
CIV
JANUARY
0
100
A101
CIV
FEBRUARY
0
100
A101
CIV
MARCH
0
100
A101
CIV
APRIL
5
100
A101
CIV
MAY
0
100
A101
CIV
JUNE
5
100
A101
CIV
JULY
0
100
A101
CIV
AUGUST
0
100
A101
CIV
SEPTEMBER
0
100
A101
CIV
OCTOBER
0
100
A101
CIV
NOVEMBER
0
100
A101
CIV
DECEMBER
4Hi,
If you want the output to include months where no work was done (with 0 in the total_work column) then you need to outer-join a "table" that has one row per month, and make it a partitioned outer join:
WITH got_end_points AS
SELECT TRUNC (MIN (work_day), 'MONTH') AS first_month
, TRUNC (MAX (work_day), 'MONTH') AS last_month
FROM table_x
, all_months AS
SELECT ADD_MONTHS (first_month, LEVEL - 1) AS a_month
, ADD_MONTHS (first_month, LEVEL) AS next_month
FROM got_end_points
CONNECT BY LEVEL <= 1 + MONTHS_BETWEEN (last_month, first_month)
SELECT t.comp_code
, t.emp_id
, t.dept_id
, m.a_month
, COUNT (t.work_day) AS total_work
FROM all_months m
LEFT OUTER JOIN table_x t PARTITION BY (t.comp_code, t.emp_id, t.ept_id)
ON t.work_day >= a.a_month
AND t.work_day < a.next_month
GROUP BY t.comp_code
, t.emp_id
, t.dept_id
, m.a_month
ORDER BY t.comp_code
, t.emp_id
, t.dept_id
, m.a_month
As posted, this include every month that is actually in the table. You can change the first sub-query if you want to enter first and last months.
I hope this answers your question.
If not, post a little sample data (CREATE TABLE and INSERT statements, relevant columns only) for all tables involved, and also post the results you want from that data.
Point out where the query above is giving the wrong results, and explain, using specific examples, how you get the correct results from the given data in those places. If you changed the query at all, post your code.
Always say which version of Oracle you're using (e.g., 11.2.0.2.0).
See the forum FAQ: https://forums.oracle.com/message/9362002 -
Hi! Anybody who has a sample sql query for aging report? basically this is the table structure and sample data
bill_no B1-01 B1-02 B1-03
bill_date 01-JAN 01-FEB 01-MAR
previous_balance 100 600 800
current_charges 500 200 400
total_due 600 800 1200
As of march 1, total due is 1200. how can i get the breakdown of 1200 as to the number of days it has been due. ex. 500 (60 days old 01-JAN to 01-MAR), 200 (30 days old), 400 (current)
please help. thanks!
nullSELECT CEIL((SELECT MAX(Bill_Date) FROM Bill)- Bill_Date) Days , Previous_Balance, Current_Charges FROM Bill ORDER BY Days ASC
Then create a matrix reprot. -
Using the login user name in the report
It will be appreciated if someone can help on the following:
How can I use the login user name in the report?
I mean that the report will be build on SQL statement look like :
Select a, b, c, d
For table
Where a = <the user name used to login to htmldb>
Thanksselect a,b,c,d
from table
where a= :APP_USER -
Capture current query for a report region
Apologies if this is answered elsewhere, but I could not find it.
I have a reporting application where several different reports that have a list of customers. I would like to develop a means to generate a mailing list for the customers that is generic and can be used on any report. I envision getting the list of customer by executing a query like:
select person_id from
( <report region query> );
Is there a way to get the current query (or query result) for a report region and process it in a PL/SQL procedure? This would need to work for regions that have an SQL query and a PL/SQL function returning a query.
Thanks,
Billsorry for the double post, browser trouble...
-
TDS Amount on Vendor Advance Shows positive value in *QUERY* for TDS Report
Hi Everybody,
I have made a query for List of TDS Report with Vendor informations as required by my client. In which the value of TDS on Vendor Advance Payment appears as positive value instaead of negative value. Please suggest how to rectify.
Thanks,
PaulDear,
If you have cleared the advance in F-54, then this will reverse the tax amount. That could be the reason for tax amount in debit. -
Hi,
I have to generate a report which contains a query with database link. This database link is not hard coded and would be picked up from another report which contans a link to this report. So this database link value for the query could be any. Can anyone guide me hot to write a dynamic select statement so that i could append database link value at run time.
Thanks
SalmanHi,
You can not directly use a PL/SQL query to create an Interactive Report - that is not yet available.
What you could do is create a collection from your query and then use that for the report. Have a look at: [http://download-uk.oracle.com/docs/cd/B32472_01/doc/appdev.300/b32471/advnc.htm#BABGHJFD].
In there, you will see APEX_COLLECTION.CREATE_COLLECTION_FROM_QUERY - this allows you to create a collection from a string. You could add a PL/SQL process to your page that runs "On Load: Before Header" that actually creates the collection. Something like:
BEGIN
IF APEX_COLLECTION.COLLECTION_EXISTS('MYCOLLECTIONNAME') THEN
APEX_COLLECTION.DELETE_COLLECTION('MYCOLLECTIONNAME');
END IF;
APEX_COLLECTION.CREATE_COLLECTION_FROM_QUERY('MYCOLLECTIONNAME','MY SQL QUERY STRING');
END;Your Interactive Report can then be based on:
SELECT SEQ_ID, C001, C002, C003, ...
FROM APEX_COLLECTIONS
WHERE COLLECTION_NAME = 'MYCOLLECTIONNAME'The tricky part is the headings as these would tend to be the SEQ_ID, C001, C002, C003, etc column names from the collection itself.
To get around this, make sure that the report's sql statement includes as many Cnnn columns as you will need for the widest of the reports. Before doing anything else, run the report once to make sure that all these columns are included in the output.
Then, through Shared Components, Application Items, create items that will hold heading names - for example, G_HEADING1, G_HEADING2 etc - one for each possibile column.
Now, update the process to:
BEGIN
IF APEX_COLLECTION.COLLECTION_EXISTS('MYCOLLECTIONNAME') THEN
APEX_COLLECTION.DELETE_COLLECTION('MYCOLLECTIONNAME');
END IF;
IF ..test1.. THEN
APEX_COLLECTION.CREATE_COLLECTION_FROM_QUERY('MYCOLLECTIONNAME','MY SQL QUERY STRING 1');
:G_HEADING1 := 'ColumnHeading1Value';
:G_HEADING2 := 'ColumnHeading2Value';
:G_HEADING3 := NULL; -- column not used for this query, so set it to null
ELSIF ..test2 .. THEN
APEX_COLLECTION.CREATE_COLLECTION_FROM_QUERY('MYCOLLECTIONNAME','MY SQL QUERY STRING 2');
:G_HEADING1 := 'ColumnHeading1Value';
:G_HEADING2 := 'ColumnHeading2Value';
:G_HEADING3 := 'ColumnHeading3Value';
ELSIF ...etc...
.. etc ...
END IF;
END;Finally, on the report itself, set the column headings to *&G_HEADING1.*, *&G_HEADING2.* etc. Then, on each column, set a Condition of "Value of Item in Expression 1 is NOT NULL" and in Expression 1, enter in the application item for that column - eg, G_HEADING1
I have done all that here: [http://apex.oracle.com/pls/otn/f?p=16338:5] - select either Departments or Employees from the list and the report will change.
Andy -
Retrieve underlying SQL query for deski report via java SDK in BOXIR2
Hi all,
I am trying to retrieve underlying SQL queries of a deski report in BOXIR2. However I find the error as
oDataProvider = oDocumentInstance.getDataProviders().getItem(i1);
System.out.print(oDataProvider.getName());
oSQLDataProvider = (SQLDataProvider) oDataProvider;
oSQLContainer_root = oSQLDataProvider.getSQLContainer();
But "This feature is not supported for desktop Intelligence " exception has occured.
I am running the same query for Webi, and I did not find any issue . After several time spending in google, it appears to me that this code is supported by webi only. But "This feature is not supported for desktop Intelligence " exception has occured.
Please help me to find out the solution in java SDK. If its not supported by Java SDK, then could you please provide me any workaround , e.g. any macro . Any help !!
Regards,
Nita
Edited by: Nita Prasad on Aug 11, 2009 11:20 AM
Edited by: Nita Prasad on Aug 11, 2009 11:25 AMHi Fritz,
I am not getting the way.. how to open the deski report programmatically. I am writing the code in this way:
Dim oInfoObjects1 As CrystalInfoStoreLib.InfoObjects
Set oInfoObjects1 = oInfoStore.Query("SELECT * FROM CI_INFOOBJECTS WHERE SI_NAME='" & oInfoObject.Title & "' AND SI_ID='" & oInfoObject.Id & "' order by SI_NAME")
Dim oInfoObject1 As CrystalInfoStoreLib.InfoObject
Dim UserCount1 As Integer
UserCount1 = oInfoObjects1.ResultCount
MsgBox "SELECT * FROM CI_INFOOBJECTS WHERE SI_NAME=' " & oInfoObject.Title & " ' AND SI_ID=' " & oInfoObject.Id & " ' order by SI_NAME"
MsgBox " Total number of Deski reports are : [" & UserCount1 & "]", vbOKOnly
Dim j As Integer
For j = 1 To UserCount1
Set oInfoObject1 = oInfoObjects1.Item(i)
sFile_ReportList = StrConv(oInfoObject1.Title, vbLowerCase) & ".rep"
sFile_Output = "D:\TraceWrite1\ " & StrConv(oInfoObject1.Id & "_" & oInfoObject1.Title, vbLowerCase) & ".txt"
sFile_ReportListTemp = StrConv(oInfoObject1.Files.Item(j), vbLowerCase)
MsgBox "[" & sFile_ReportList & "]", vbOKOnly
If Dir(sFile_ReportList) = "" Then
MsgBox "The text file [" & sFile_ReportList & "] for the DeskI documents does not exist!" & vbCrLf & "Aborting process."
Exit Sub
End If
I am getting the error on line ... If Dir(sFile_ReportList) = "" Then... The code is not able to locate the deski report path.
Is this the correct way to get a deski report information? Please let me know, If I am going in the right direction.
Edited by: Nita Prasad on Aug 18, 2009 3:47 PM -
Query for recurring reports using Query Builder in Business objects
1. How to count webi Recurring reports using query builder in business objects? (Need Query for this)
2. How to count Crystal Recurring reports using query builder in business objects? (Need Query for this)
I am able to get summerized recurring reports using Query Builder.
For Example we have 343 reports which are under recurring (This includes both Webi Reports and Crystal Reports).
we need to get individually how many webi reports are under Recurring and Crystal reports are under Recurring.1. How to count webi Recurring reports using query builder in business objects? (Need Query for this)
2. How to count Crystal Recurring reports using query builder in business objects? (Need Query for this)
I am able to get summerized recurring reports using Query Builder.
For Example we have 343 reports which are under recurring (This includes both Webi Reports and Crystal Reports).
we need to get individually how many webi reports are under Recurring and Crystal reports are under Recurring. -
Customizing Print Options for Webi Report
Scenario:
Environment: BO Xi R3.1
Webi report having around 10 tabs in a Single report and all report tabs are built on 1 query.
Requirement
1)Need to have print pop up box which will give the same functionality as Office tools to the end users.
i.e., need a way to bring the Java Report Panel (Edit mode) print dialog box to the DHTML (View Mode) so that End Users have more options for printing.
2)Need to have an option to print report tab selectively.
3)Need to have an option to print reports for multiple filter selections.
Any pointers, suggestions to the above requirement are of great help.
Appreciate, if the Specific SDK class details are also mentioned with any possible options.
Thanks in advance
Vijay BLawrence,
The form is where I concatenate the SQL that is the record source of both the report and the subsequent record updates. So the form is always open before the report is opened (that is where the code to open the report resides and is run), and it must remain
open while the report is open to maintain the value of the variables, including the WHERE clause of the SQL statement that will be used for the posting process when the user closes the report. That is, the SQL used to open the report MUST match the
SQL used when posting the records, or the user could change some selection parameter and post records not on the report.
And I open both the form and report modally to prevent a user from inadvertently running the report's Close event outside the context of the form, with its variables all set for the posting process.
I know I could pass all of this to public variables, but I am trying to keep it as clean and as close to the Form -> Report -> back to Form as I can. -
Dear All,
My A/P Invoice entry is as Follows.
A/P Invoice
1) Item code (Multiple Items Possible)
2) Quantity per item
3) Unit Price per item
4) Under frieght I entry 3 freight value
5) Tax Code is selected
The report required is
1) A/P Invoice No
2) A/P Post Date
3) A/P Documnet date
4) A/P Vendor Code
5) A/P Vendor Name
6) Vendor state ( From Vendor Master date Address)
7) Vendor Cst no / Vat no / Tin No ( These all are UDF)
8) A/P Doc total before Discount ( This does not contain frieght value) ( I am able to obtain this from the OPCH-- Max 1099 Amount Field)
9) A/P Doc total After discount
10) A/P Feieght Break up.
11) A/P DOc total + Excise details
12) A/P Tax Code
13) A/P Tax Amount
14) A/P Final Total Value
The main issue is till point number (8) I can get the query after that the query goes wrong.
I need a similar query for A/R Invoice also.
Please advice.hi aslam,
Try this query,
SELECT T0.DocNum as 'AP Invoice No.',
T0.DocDate as 'Posting Date',
T0.TaxDate as 'Doc. Date',
T0.CardCode as 'Vendor Code',
T0.CardName as 'Vendor Name',
T1.State1,
T2.TaxId1 as 'CST No.',
T2.TaxId11 as 'TIN No.',
T0.Max1099, T0.DocTotal,
T0.TotalExpns,
T0.VatSum
FROM [dbo].[OPCH] T0 INNER JOIN [dbo].[OCRD] T1 ON T0.CardCode = T1.CardCode
INNER JOIN [dbo].[PCH12] T2 ON T0.DocEntry = T2.DocEntry
WHERE T0.DocDate >= '[%0]' and T0.DocDate <= '[%1]'
Whether it solves ur requirement ?
Jeyakanthan -
Whether any Standard Bex query for MIS report of PP in BW
Dear All,
Please let me know , Whether any Standard Bex query is available for MIS report of PP in BW.
Thanks
Regards,
Sai.Dear All,
Please let me know , Whether any Standard Bex query is available for MIS report of PP in BW.
Thanks
Regards,
Sai. -
Output error in Query for Weekly report
Hello friens,
I want to create a report in which the user want the output of data as foloow
net amount----
week1 week2 week3............. and so on.
pack1
pack2
pack3
Now there are 52 weeks in a year, and in system the data is stored since 2003 till date.
So user will want to enter the range of weeks that they want to see for e.g.
010/2005 -- -12/2007
Time characteristics available are
calendar day, calendar year/month, calendar year/week, calendar year,fiscal year, fiscal year/period,posting period
What i did is in columns for NET AMOUNT , i restricted kf with Fiscal Week and, restricted Fiscal week with Interval variable.
Now user wants that they want to see the
Start date of a week for monday.
So they dont want to see
week1 week2 week3 week4...........
But they wanted to see
01/01/2006 01/08/2006 01/15/2006 and so on.......
So Please advise what needs to be done!Well i didnot able to do that.
If i restrict in Calday it gives me oppurtunity to restrict with Day not monday, but monday with date..
so for e.g. in single value restriction.
i can restrict for Monday 8th october to Friday 12th october.
So what can u suggest.
If i create Interval for calday than what user will input is date.
Plus i think what i mean to say previously is,
User want to see the Start date of particular weeks
Start date means date of Start Day , which is Monday.
So for e..g. Date of monday for week 1 is 01/01/2007 then for next week monday will be 01/08/2007..
So instead of displaying the Week as 01/2007 .to 050/2007,
The user want to see the start date of PArticular week.
so as follow
01/01/2007 01/08/2007 01/15/2007 01/22/2007 01/29/2007
I hope u understand.
So user want to see the aggregate sales of Week 1 and in description they want to see the Start date of that week.
They do not want to see date by date sales.
Please advise.
Maybe you are looking for
-
HTML to PDF
-
Very frequent BSODs on Windows Vista Ultimate
Hi everyone. I am a happy owner of an Aluminium MacBook, but, unfortunately, not when it comes to Windows. The system crashes pretty much every time I go on it. It happens upon various tasks - launching a game, watching IPTV (which is the main reason
-
IPad Deliverd on time in Canada
For any other Canadians out there who have seen their delivery info changed to May 31st, mine showed that too and then it just got delivered today (28th) as per the original schedule - so there is still hope! Now I have to leave early to play with it
-
Lightroom 4.3 suddenly hangs-up
Importing Canon RAW files, "copy as DNG", Lightroom 4.3 creates the DNG files (I can see them using Windows Explorer) but never adds the files to the Catalog, even after waiting over night. Also tried opening a new catalog. It also exhibits the sam
-
MBP 13-inch with Intel HD Graphics 3000 support Video Decode Acceleration?
Anyone know yet if the Intel HD Graphics 3000 chipset in the new MBP 13-inch supports the Apple Video Decode Acceleration Framework? I'm hoping so as Flash needs it for hardware acceleration--anything to make that dog work better. http://developer.ap