No data from BW-Query in BO-tools
Hello all
On a newly installed BO XI 3.1 with the SAP integration kit I cannot get data from my existing BW queries.
For example, if I start Xcelsius and add my BW-system as connection I can get the structure of the query (headings) but no data is displayed, neither in the connection's preview tab nor in the web preview.
The same happens if I create a QaaWS on this BW-query - I see the query headings, but not the actual data.
The query shows data if I open it directly in my web browser and it's a really simple one: no variables, no extras, only a few columns and rows.
I use SAP BW 7.01 SP6, XI 3.1 12.3.3 and XCelsius 2008 5.3.4
In SAP BW my user has SAP_ALL as well as BOE Admin & Content producer roles.
I'm relatively new to BO products so I have no idea where to start looking for the cause. Please help!
BR
Kanan
Hi
After I found the document "Using Xcelsius 2008 with SAP NetWeaver BW" (http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/10ad2489-8956-2d10-f8ab-ed4cce2766da?quicklink=index&overridelayout=true) and followed the steps it works.
It seems as if the error was not in the system but in front of it - a typical case of RTFM, although the manuals are not always easy to find.
sorry & thanks.
BR
Kanan
Similar Messages
-
Is there any way to export IT Resource data from OIM using the export tool?
Hello,
we are trying to migrate an OIM development environment to a preproduction environment and we need to migrate more than 400 IT Resources. We have exported some IT Resources and when we imported them in the preproduction environment their data was not migrated. Is there any way to export IT Resource data from OIM using the export tool? Or is there any other way to do this without doing it by hand?
Thank you for your help
Kind RegardsWell , OIM doesnot provide any such facility to export ITResource data along with ITResource .
Directly updating the DB could be an option ..
Thanks -
Transfer Data from a Query to DSO
Hello,
I have an APD to transfer data from a query to a 'Direct update DSO'. The execution of this APD times out since the volume of query data is very high.
Is there an alternate way of transfering data from a query to DSO?
Please suggest.
Thanks!One way would be to extract the data from the existing cube using a function module that would mimic the query level filters and restrictions. That data can be populated into the new cube.
I wud suggest u take the data from a non-aggregated layer (say a DSO below the cube).
Also, check for the possibility of running the APD in multiple runs by using some kind of selection that would sum up to give u the whole data required.
Can u confirm if ur query itself is getting timed out?
-PA1 -
Access data from a third party warehousing tools in BEx WAD
Hi,
I would like to know whether it's possible to access data from a third party warehousing tools ( For eg: Cognos) in BEx Web Application designer. Any help would be appreciated.
ThanksHi,
BEx Web Application designer is only integrated to BIW server. So We can not access data of other tools unless the data is stored in the BIW server as the data in any data target.
With rgds,
Anil Kumar Sharma .P -
Bapi to get data from BW query
Hi,
Does anyone familiar with bapi function to get data from BW query .???
I'm trying to use RS_VC_GET_QUERY_VIEW_DATA_FLAT but i get only the SUM rows of the query
and not the details rows (drill down).
i want to export the data of BW query to table and i need all the query data.
if someone have an example or documention its will be great.
Thanks.Hi,
Does anyone familiar with bapi function to get data from BW query .???
I'm trying to use RS_VC_GET_QUERY_VIEW_DATA_FLAT but i get only the SUM rows of the query
and not the details rows (drill down).
i want to export the data of BW query to table and i need all the query data.
if someone have an example or documention its will be great.
Thanks. -
Need to return data from a query in different ways - Please help
We are using 10g R2
I have a proc as follows that has a query with over 100 values in the select clause:
proc one( input param1, input_param2,.... output_cursor )
as
begin
open cursor for
select ...about 100 values with most of them being calculated
from table1, view 1, table2, table 3, view 2 ...
where ....
and table1.col1 = input param1
and table1.col2 = input param 2
and view1.col5 = input param5...
end;
I need to return the data that comes from the above query in different formats, columns for a report would be different from columns for screen A and different for screen B. I need only certain columns for a report and different set of columns for another screen. I have wrapper procs that get different input params. From the wrapper procs I intend to call the above proc but would like only selected values.
How can I accomplish this? Since my main goal is to select different columns for each wrapper I was thinking of insert the data from the above proc into global temp table and selecting whatever columns and order I want from the wrappers.
What do you think? Any other solutions?
Thanks
Edited by: user565033 on Jan 21, 2013 7:50 PMYou need to clearly separate roles and responsibilities. The PL/SQL code that creates and supplies a cursor handle is server code tasked to supply data. The code that makes the call for server data, is responsible for formatting and rendering that data.
Thus moving data formatting into the server code needs to be question. Simple example. Cursor does not return invoice date as a date - but formats it into a string using TO_CHAR().
This works for client1 - as that is the date format expected. However, client2 has different International settings and specifies a different date format. Invoice date, formatted into a string by the server, now renders in the wrong format on client2.
Server code should not be concerned with rendering and formatting of data send to a client.
As for the idea to use a global temp table is ..., well to put it nicely, it smells. Badly.
The single most expensive operation on a database platform is I/O. And now you want to read server data and write it to temporary storage, and the read data from temporary storage to return to the client? What on earth for!? Why purposefully increase the size of the I/O workload? Why decrease performance and undermine scalability?
Provide a proper abstraction interface to the client. Enable it to specify (as simplistically as possible) what it wants ito data. There are a number of ways to design and implement this in PL/SQL. Simplistic example:
SQL> create or replace package Employees as
2
3 EMP_FULL_DETAILS constant integer := 1;
4 EMP_BASIC_DETAILS constant integer := 2;
5
6 procedure GetEmpByID(
7 cur out sys_refcursor,
8 empID in emp.empno%type,
9 template in integer default EMP_BASIC_DETAILS
10 );
11
12 procedure GetEmpByName(
13 cur out sys_refcursor,
14 empName in emp.ename%type,
15 template in integer default EMP_BASIC_DETAILS
16 );
17 end;
18 /
Package created.
SQL>
SQL> create or replace package body Employees as
2
3 type TArray is table of varchar2(32767);
4
5 TemplateList constant TArray :=
6 new TArray(
7 'EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO ',
8 'EMPNO, ENAME, JOB '
9 );
10
11 procedure GetEmpByID(
12 cur out sys_refcursor,
13 empID in emp.empno%type,
14 template in integer default EMP_BASIC_DETAILS
15 ) is
16 sqlSelect varchar2(32767);
17 begin
18 sqlSelect :=
19 'select '||TemplateList(template)||
20 'from emp where empno = :empID';
21
22 open cur for sqlSelect using empID;
23 end;
24
25 procedure GetEmpByName(
26 cur out sys_refcursor,
27 empName in emp.ename%type,
28 template in integer default EMP_BASIC_DETAILS
29 ) is
30 sqlSelect varchar2(32767);
31 begin
32 sqlSelect :=
33 'select '||TemplateList(template)||
34 'from emp where ename like :empName';
35 open cur for sqlSelect using empName;
36 end;
37
38
39 end;
40 /
Package body created.
SQL>
SQL> var c refcursor
SQL>
SQL> exec Employees.GetEmpByID( :c, 7499 );
PL/SQL procedure successfully completed.
SQL> print c
EMPNO ENAME JOB
7499 ALLEN SALESMAN
SQL>
SQL> exec Employees.GetEmpByName( :c, 'A%', Employees.EMP_FULL_DETAILS );
PL/SQL procedure successfully completed.
SQL> print c
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
7499 ALLEN SALESMAN 7698 1981/02/20 00:00:00 1600 300 30
7876 ADAMS CLERK 7788 1987/05/23 00:00:00 1100 20
SQL> -
Facing prolem in Dashboard 4.1, while fetching data from Bex Query
Hi Exports,
I am facing an error message " Failed to (de-)serialise data. (Xsl 000004)" while fetching data in Dashboard from Bex Query.
The query is getting connect. while drag n drop some dimensions and measures then going for Refesh or Run Query, geting this error.
The same query is working fine with other comp like webi n crystal.
Anybody having solution for this please let me know. I am stuck somewhere.
Thank YouHi,
Check the data in the infoProvider.Reduce the Bex query Characteristics & Key figure fields.Try to identify due to which characteristsic adding in Bex Query ,are you facing the issue.Check that characteristic data in the infoProvider.
Regards,
Venkat -
Building a table with data from a query
Hello group,
Is it possible to build a table with the output from a query. We would like to build queries on precalculated data, and want to use other queries for the precalculation.
Regards, Léon HoeneveldHi Léon,
use transaction RSANWB.
It should be available from 3.0.
regards
Siggi
Message was edited by: Siegfried Szameitat -
Get data from bw query to r/3
Hi,
There is a query defined in BW with some variables. The current process is user is executing the query with necessary variables and the query result output is saving as csv file and this file is used in r3 to update the data in r3.
Now we have to make this process automate. We have to get the query result data from BW to R3.
We have a constraint of not using the Open hub method in BW.
Is there any function module or any standard program to get the query result data from BW to r3.
Any help is highly appreicated.able to resolve the issue..
creating trusting RFC connection solved the problem -
I'm looking for a link to sample code to fetch a record from BW query by passing PO NUMBER as parameter and then putting results into ADO Dataset. I'm trying to avoid using MDX Queries. Maybe someone else has asked this question?
Regards,
jhcIIIDear
there are many factors that can play in this, starting from proper Sizing, proper tuning of APS and WPS servers to configuration of Java app server used, network between BI servers and data sources and even report design.
This sort of question have been asked before in this forums, there are also SAP KB articles on sizing, performance and other areas that are part of this question.
I'd start here :
https://service.sap.com/sap/support/notes/0001570271
https://service.sap.com/sap/support/notes/0001694041
https://service.sap.com/sap/support/notes/0001522418
http://scn.sap.com/community/coil/blog/2012/06/12/best-practices-for-running-bi-4-in-virtualized-environment--guidances-from-coil-projects
http://scn.sap.com/docs/DOC-6191
http://scn.sap.com/people/james.rapp/blog/2012/07/03/bi4-pattern-books-are-now-live
Regards -
Error while fetching the data from BO XI Web Intelligence Tool
I am using .Net Web Service SDK to get the the data from Business Object Report. When I request the report I am getting an error saying "getDocumentInformation exception (WRE 99999)". I am on BO XI R2 and the underlying database to generate the report is Oracle 10G.
The report that I am trying to generate is a prompt report.
Please let me know if anybody has faced a similar problem before or if anybody knows how to fix this.
ThanksHi Bhishm
I am sorry but the resolution suggested by you did not work.
In fact I created a new form with just one connection to the web service and carefully followed all the settings as laid down in my question. There is no other connection on the form, still I get the same error.
Thanks. -
Hoping there is a SQL guru out there that can help me with this
I have two tables that I want to pull data from and display a report, based on a particular date range, for this example let's say 08/01/2011 to 08/31/2011
In one table there would be an affiliate ID - AFF_UID and also the date and a counter for that date, IMP_COUNTER , now there may only be a few records not every day might be covered, say
TABLE IMP
date,aff_uid,imp_counter
08/01/2011,999,2000
08/02/2011,999,2050
08/20/2011,999,2030
etc
I then have another date, similar set up only there are multiple records in here for a single day, again not all days covered, I would need to total up each row for each day to get a count. So it might be:
TABLE LEAD
date,aff_uid
08/01/2011,999
08/01/2011,999
08/01/2011,999
08/01/2011,999
08/12/2011,999
So we have different dates covered, sometimes the same date, I need the counter from the first table, and from the second table I need to add them up for a total, and then display any date that has a value and put both counter and lead count together
Result from above
date,imp total,lead total
08/01/2011,2000,4
08/02/2011,2050,0
08/12,2011,0,1
08/20/2011,2030,0
I am sure there must be a SQL command that can gel all of this together with some grouping? Last thing I need is a ton of SQL statements in a loop!
My alternative is to add a counter to the IMP table for each lead, so every time I update the lead table with a record, I will also update the counter, but that's unncessary storage of data I already have an an extra update statement that I might be able to do without, but maybe it would make generating reports faster, just pulling to counters with no 'addition' required.
Appreciate any feedback
Thanks
MarkWell I thought that I had this one up and running, but once it went into production I found that it didn't give the desired results.
I have an account that has 3 'tracking'/aff accounts, so what it's doing is giving out 3 lines for each date rather than join them together into one. The values are also incorrect, I'm still trying to figure out just where it's even getting those numbers, I manually added up the numbers in the dbase and it didn't match
Here's the command
<CFQUERY name="GetStats" DATASOURCE="#datasource#">
SELECT
COALESCE(IMP.imp_date, LEAD.lead_date) AS report_date
, COALESCE(IMP.imp_counter,0) AS imp_counter
, COALESCE(LEAD.lead_count,0) AS lead_count
, COALESCE(LEAD.lead_aff_payment,0) AS lead_aff_payment
FROM
SELECT
imp_date
, imp_counter
FROM impressions
WHERE imp_date BETWEEN #createODBCdate(form_from)# AND #createODBCdate(form_to)#
<CFIF #val(ListGetAt(form_aff_UID,1))# IS "3">
AND imp_aff_uid IN (SELECT aff_uid FROM aff WHERE aff_master_uid = #session.aff_uid#)
<CFELSEIF #val(ListGetAt(form_aff_UID,1))# IS "2">
AND imp_aff_uid = #val(ListGetAt(form_aff_UID,2))#
<CFELSE>
AND imp_aff_uid IN (SELECT aff_uid FROM aff WHERE aff_sub_uid = #val(ListGetAt(form_aff_uid,2))# AND aff_master_uid = #session.aff_uid#)
</CFIF>
) AS IMP
FULL OUTER JOIN
SELECT
lead_date, COUNT(*) AS lead_count, SUM(lead_aff_payment) AS lead_aff_payment
FROM leads
WHERE lead_date BETWEEN #createODBCdate(form_from)# AND #createODBCdate(form_to)#
AND lead_data_status = 1
<CFIF #val(ListGetAt(form_aff_UID,1))# IS "3">
AND lead_aff_uid IN (SELECT aff_uid FROM aff WHERE aff_master_uid = #session.aff_uid#)
<CFELSEIF #ListGetAt(form_aff_UID,1)# IS "2">
AND lead_aff_uid = #val(ListGetAt(form_aff_uid,2))#
<CFELSE>
AND lead_aff_uid IN (SELECT aff_uid FROM aff WHERE aff_sub_uid = #val(ListGetAt(form_aff_uid,2))# AND aff_master_uid = #session.aff_uid#)
</CFIF>
GROUP BY lead_date
) AS LEAD
ON ( IMP.imp_date = LEAD.lead_date )
ORDER BY report_date;
</CFQUERY>
and here are the results
TRAFFIC REPORT: 01/01/2012 - 01/21/2012
All Accounts
Date
Offers
Served
Total
Leads
Revenue
01/19/2012
249
1
$0.38
01/19/2012
11
1
$0.38
01/19/2012
30
1
$0.38
01/20/2012
1,006
7
$2.66
01/20/2012
40
7
$2.66
01/20/2012
1,090
7
$2.66
01/21/2012
582
6
$2.28
01/21/2012
33
6
$2.28
01/21/2012
515
6
$2.28
Total
3,556
42
Sub-Total
$15.96
Referral Revenue
$0.00
Total
$15.96
$15.96 is NOT correct, I need to find out whats going on there, but the other issue is look how it's duplicating the dates, it's one line for each account by the look of it
Can anybody help! This SQL command already got a little beyond me
Thanks
Mark -
How to refresh report data from bex query (BW) with parameters
Hello,
i hope someone can help me with my problem. I developed an desktop application, which loads (actual state) a report from the local file system. After setting the parameters, the report should be saved as a pdf file. Loading the report into the ReportDocument object and exporting the report to a pdf works fine. Setting parameters (without) a data source too. But now i can't refresh the data in the reports given by a parameter (e.g. time).
I know there are two methods to do this. Push and pull. I want to use the pull method, cause my program should exports different reports and i think it should be easier to handle this with this method.
On my development environment is installed:
Crystal Reports SP 4
MS Visual Studio 2010 (coding with C# .NET)
.NET Framework 4
SAP Integration Kit
Crystal Reports for Visual Studio 2010 SP1 - SDK libraries
Crystal Reports for Visual Studio 2010 SP1 - Runtime 32 bit
SAP GUI 7.20 (Compilation 3)
The bex query is enabled for external use from ole db for olap. Do i have forget something else?
Here is a part of my code:
public ReportDocument doPullMethod(ReportDocument crReportDocument)
TableLogOnInfo crTableLogOnInfo = crReportDocument.Database.Tables[0].LogOnInfo;
ConnectionInfo crConnectionInfo = crTableLogOnInfo.ConnectionInfo;
crConnectionInfo.Password = "*******";
crReportDocument.SetDatabaseLogon(crConnectionInfo.UserID, crConnectionInfo.Password, crConnectionInfo.ServerName, crConnectionInfo.DatabaseName);
MessageBox.Show(crConnectionInfo.UserID + " _ " + crConnectionInfo.Password + " _ " + crConnectionInfo.ServerName + " _ " + crConnectionInfo.DatabaseName);
for (int i = 0; i < crReportDocument.Database.Tables.Count; i++)
// crReportDocument.Database.Tables<i>.ApplyLogOnInfo(crTableLogOnInfo);
MessageBox.Show("TestConnectivity: " + crReportDocument.Database.Tables<i>.TestConnectivity());
return crReportDocument;
Cause i'm using only one bex query, i know that the SetDatabaseLogon()-method should bring me the same result as the ApplyLogOnInfo()-method SAP Crystal Reports .NET API Guide
Exists an order which i have to follow? First setting parameter and then set the login informations or backwards? Cause i also get the "Failed to load database information" exception, when i set a parameter and TestConnectivity() returns false.
Do i have to activate the data refresh manually or will be the data refreshed automatically on export?
I searched in this forum (.NET - SAP Crystal Reports) and found only this thread which according to my problem:
[Re: Crystal report connects to BW RFC by .NET;
The question is assumed answered.Hi Robin,
There is a SAP Integration Kit you need to allow CR to connect to SAP data sources. There isn't one for CR for VS 2010 and I don't believe there are the various extra options available in the SDK, no SDK access to the DB driver.
Possibly, Check the other post, download and run the app Ludek suggested, it will get the connection info for your report using RAS and then plug the output code into your code and see if that works. It should show the crdb_olap dll is the database driver, assuming that is the connection method you used when designing the report.
Pay attention to the database dll in the output from that app and verify it is on your PC in: C:\Program Files (x86)\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\SAP BusinessObjects Enterprise XI 4.0\win32_x86
If that doesn't work then.....
The problem is, CR for VS 2010 ( version 13 ) is the runtime for BOE 4.0 ( version 14 ) which includes the Integration kit drivers on install. There is no standalone install of the database drivers. They are installed with CR 2011, which doesn't have a SDK included, CR for VS 2010 is also the Developer version for CR 2011.
Because of the "custom" connection requirements there is no SDK or access to the BW datasource extra options....
Also note that CR 2008 is not supported in VS 2010, it should work though as long as you stick to 2.0 -> 3.5 framework, no 4.0 Framework support in CR 2008 or BOE 4.0
You may want to try the SAP Integration Kit forum to see if anyone has been able to make this work or contact your account manager to verify if there are any plans to do what you are doing....
Don -
hii everyone
i have a query which i use in a stored procedure
query:='select distinct (to_date(substr(f_file_name, 5, 8), ''yyyymmdd'')) fdate
from IUC_DAT_MSC'|| vmscid ||'_RAFP where F_FILE_NAME
like ''%RCPA'|| temps||'%'' and to_date(substr(f_file_name, 5, 8), ''yyyymmdd'') between
to_date(''' || start_date || ''') and to_date(''' || end_date || ''')
order BY to_date(substr(f_file_name, 5, 8), ''yyyymmdd'')';the problem is if i give the start and end date as a range(for ex 10 jan 2012,20 jan 2012) i am able to check if
there are any records present for those date..but if i specify the start and end date as same(for ex 10 jan 2012,10 jan 2012),i am unable to check..is there any way in
which we can frame the logic for this..
thanksHi User,
to_date(''' || start_date || ''') and to_date(''' || end_date || ''') Here the '10 jan 2012' start_date and end_date you have specified are in character format.
You cannot compare date with character format. It is that you should not compare character date formats
as it gives undesired results.
Always, compare date converting the Character Format to DATE using TO_DATE function.
For Ex:
SELECT *
FROM EMP
WHERE TRUNC (HIREDATE) = TO_DATE ('10 jan 2012', 'DD mon YYYY');Will output records where hiredate date equal to Jan 1 2012.
Here, the HIREDATE is the date field. and TRUNC(HIREDATE) will remove the time from date.
Thanks,
Shankar -
Hi ,
I'm stuck on an Abap program
I have to execute a Bex Query then store the retreived data, the old logic uses classe cl_RSR_Query_variables, this doesn't exist any more.
I want to keep my logic and substitute only the type of my query variable
here it is the part of logic to modify
DATA: wf_query_var TYPE REF TO cl_rsr_query_variables .
DATA: r_request TYPE REF TO cl_rsr_request.
DATA: r_dataset TYPE REF TO cl_rsr_data_set.
MOVE: query_name TO cube_name .
Convert the query name to technical id
CLEAR p_genuniid .
CALL FUNCTION 'CONVERSION_EXIT_GENID_INPUT'
EXPORTING
input = query_name
IMPORTING
output = p_genuniid.
IF p_genuniid IS INITIAL .
RAISE query_not_found .
ENDIF.
Create instance of cl_rsr_request
CREATE OBJECT r_request
EXPORTING i_genuniid = p_genuniid .
Create instance of cl_rsr_variables
i_var[] = query_variables[] .
CREATE OBJECT wf_query_var
EXPORTING
i_r_request = r_request
i_t_nvar = i_var
EXCEPTIONS
user_not_authorized = 1
no_processing = 2
bad_value_combination = 3
x_message = 4
OTHERS = 5.
IF sy-subrc <> 0.
CASE sy-subrc .
WHEN 1 .
RAISE user_not_authorized .
WHEN 3 .
RAISE bad_value_combination .
WHEN OTHERS .
RAISE unknown_error .
ENDCASE .
ENDIF.
Set the variable and execute the query
TRY.
r_request->variables_set( i_t_var = i_var ).
r_request->variables_start( ).
r_request->read_data( ).
r_dataset = cl_rsr_data_set=>get( i_r_request = r_request ).
Thanks for any suggestionYou Might (I say Might) possibly have better luck if you can use the BI accelerator. On 640 of course the old BW methods and classes are still in the system.
I haven't actually used the BI accelerator but I'm told by people who have that it's an excellent tool for almost limitless queries. I'm sure some "Googling" or browsing the BI Forum might also help you.
Often when a new release is installed people try and "replicate" old stuff. In general (although I know it's not always true in SAP's case) if stuff has been removed in a new release it's either because the old method is "deprecated" or there's a hugely better method available.
I'm sorry I can't be more helpful than that but if you MUST have this query class you can always I suppose try and get it "Retrofitted" to your system. I'd advise against that approach however.
Cheers
Jimbo
Maybe you are looking for
-
How to create a specific audio track in arrange
There's gotta be something simple I'm missing. In Logic 7 you could create an audio track in the arrange and then click to open a drop-down menu to select any audio track number you wanted to assign it to. I don't see how to do that in 8. All I'm try
-
After update ,itunes cant play video
hi ,every body! , i ve got a problem & deffinitely need help with. The problem: After i install update , itune crashes when i click play video does anyone have the sa
-
Web service authentication/session management using Axis2
I'm creating a web service using Axis2 where the client will need to login to the service and maintain a session. I'm trying to figure out a good way to do this. I've read the article on the following link: http://www.developer.com/services/article.p
-
i am trying desperately to set up php and can't get there without some serious help on one issue. ive gotten php, phpmyadmin, mysql, and apache running. BUT i can't figure out how to get rid of the following warning that appears on the phpmyadmin hom
-
Limiting hard drive access?
The capacity for iMovie 08 to automatically find new content across multiple hard drives is impressive. However, here is a situation I have: a consulting client has a Mac Pro with three internal drives and a multiple-drive external backup system, and