Query Builder is one of the powerful administrative tools in Business Objects and it’s used to query your BO repository to get all kinds of information which is not even available in CMS. It is available only in BO XI R2 and adobe versions.
BO repository has set of tables to store BI information such as Universes, reports, Users, schedules, security that make up your deployment, etc. Repository tables are encrypted in such a way that it can’t query with conventional SQL tools. This is the place where Query Builder tool comes in and get those Repository Tables metadata information. Query Builder is a simple GUI tool which enables the user to run queries against the BO repository (also known as the CMS InfoStore).
The CMS repository stores metadata in the form of InfoObjects. All the contents of BO Enterprise system can be classified into two types: metadata and the actual file. For example, if there is a Crystal Report document in the BOE system, the metadata (including Report name, type, ID, CUID, path, etc.) is stored as an InfoObject in the CMS Repository. The Crystal Report document itself (i.e. the .rpt file) is stored as a file on the File Repository Server (FRS).
Note: To access your Query Builder, use the below URL link in the Web browser.
“https://<ServerName>/AdminTools/querybuilder/ie.jsp”
CMS Repository Structure
The CMS metadata is physically stored on a database, but we browse the InfoObjects from virtual tables. To give a clear picture, let’s begin with physical structure at the database level.
Physical Database Tables
There are 6 tables on the database level to store the metadata.
CMS_VersionInfo – Contains the current version of BO Enterprise.
CMS_InfoObjects – Important table in the repository and each row in this table stores a single InfoObject. The table contains the following columns:
ObjectID, ParentID, TypeID, OwnerID, Version, LastModifyTime, ScheduleStatus, NextRunTime, CRC, Properties, SI_GUID, SI_CUID, SIRUID, SI_INSTANCE_OBJECT, SI_PLUGIN_OBJECT, SI_TABLE, SI_HIDDEN_OBJECT, SI_NAMEDUSER, SI_RECURRING, SI_RUNNABLE_OBJECT, SI_PSS_SERVICE_ID, ObjName_TR, SI_KEYWORD, SI_KEYWORD_TR, LOV_KEY.
CMS_Aliases6 – This table maps the user alias to the corresponding user ID. A user has an alias for each security domain in which they are members. For example, a user may have both a Win AD alias and an LDAP alias. Regardless of the number of aliases a user may have, in the BI Platform each user has only one user ID. The map is stored in a separate table to enable fast logins.
CMS_IdNumbers6 – The CMS uses this table to generate unique Object IDs and Type IDs. It has only two rows: an Object ID row and a Type ID row. The CMSs in a cluster use this table when generating unique ID numbers. GUIDs, RUIDs and CUID are generated with an algorithm that does not use the database.
CMS_Relationships6 – Relationship tables are used to store the relations between InfoObjects. Each row in the table stores one edge in the relation. For example, the relation between a Web Intelligence document and a Universe would be stored in a row in the WebI – Universe Relation table. Each relationship table has these columns:
Parent Object ID,Child Object ID,Relationship InfoObject ID ( this Default InfoObject “DFO” describes the properties of the link between the two objects.), member, version, ordinal, data. Relationship tables are defined by default objects.
CMS_LOCKS6 – This is auxiliary table of CMS_RELATIONS6
Virtual Tables in BO Repository
The repository information is stored in the form of InfoObject and CMS can read repository tables from virtual tables. Which are described detailed manner as given below.
Reository Tables |
Description |
CI_SYSTEMOBJECTS |
Contains User, User Group, Server, Server Group ,Folder, Sub Folder, Connection, Calendar, Event information |
CI_INFOOBJECTS |
Contains Webi, Crystal Report, Full Client, PowerPoint, Pdf, Excel, Word, Rtf, Txt, Program, Shortcut information |
CI_APPOBJECTS |
Contains Universe information |
Note: When you log in to Query Builder, Log on as Administrator, so that you will get complete (full) access to the repository objects.
Query Builder Limitations:
Query Builder has limitations and below is the details.
- Need to write the query manually in the Query Builder or you can use the step-by-step wizard to build the query which is too simplistic.
- You should be aware the complete Repository table Names, objects and what kind of information it holds on.
- Need to write several queries to get the required result. For example, If you want the objects in the folder, first you have to write a query to get the Folder ID, then use that ID and get the object in that particular folder.
- Query Builder returns the result set by individual tables (Structure of the Result) and you have to copy past each & every tables and made your required format.
- Cannot execute / run multiple queries in parallel.
- The Default limit for returning objects would be 1000 objects. In order to get more than 1000 objects we need to use ‘Top N’ function before the column listing in the query. For ex. SELECT Top 2000 * FROM CI_INFOOBJECTS
- Query Builder won’t allow Sub queries.
- The order of columns selected in the SELECT clause has no impact in the result returned and in its own order and order cannot be changed.
Query Builder Login:
Note: Query Builder can be used to query the information only stored in the CMS not in the File repository files.
Most wanted / Beneficial Query Builder BO Query
To get BO Repository Information
SELECT * FROM CI_SYSTEMOBJECTS WHERE SI_ID=4
Sample Result Set for above Query
Find Cluster Unique Identifiers that uniquely identify an InfoObject (CUID) for a specified report and this CUID is useful for document linking. You can find the CUID information in the Properties of each report in CMC & Infoview.
SELECT SI_CUID FROM CI_INFOOBJECTS WHERE SI_NAME = ‘SALES REPORT’
Find the List of users fro a particular Group (ex – USA is the Group Name here)
SELECT SI_USERFULLNAME FROM CI_SYSTEMOBJECTS WHERE CHILDREN(“si_name = ‘usergroup-user'”, “si_name = ‘USA'”)
Find the report list for a particular Folder.
SELECT SI_NAME FROM CI_INFOOBJECTS WHERE SI_PARENT_FOLDER=’9565′
Find complete details about users.
SELECT SI_KIND, SI_NAME, SI_USERFULLNAME, SI_CREATION_TIME, SI_ALIASES, SI_LASTLOGONTIME FROM CI_SYSTEMOBJECTS WHERE SI_KIND = ‘User’
Find Repository server details.
SELECT * FROM CI_SYSTEMOBJECTS WHERE SI_KIND = ‘SERVER’ AND SI_NAME LIKE ‘%FILEREPOSITORY%’
Daily Scheduled / Recurring report Details
SELECT SI_ID, SI_NAME, SI_SCHEDULEINFO.SI_SCHEDULE_TYPE, SI_SCHEDULEINFO.SI_SCHEDULE_INTERVAL_NDAYS, SI_SCHEDULEINFO. SI_SCHEDULE_INTERVAL_NTHDAY, SI_SCHEDULEINFO. SI_SCHEDULE_INTERVAL_MONTHS FROM CI_INFOOBJECTS WHERE SI_SCHEDULE_STATUS !=8 AND SI_RECURRING = 1
Retrieve Public Folders other then System Folders
SELECT * FROM CI_INFOOBJECTS WHERE SI_PARENTID=23 AND SI_NAME!=’REPORT CONVERSION TOOL’ AND SI_NAME!= ‘ADMINISTRATION TOOLS’ AND SI_NAME!= ‘AUDITOR’
Get the List of Webi reports along report details.
SELECT SI_ID, SI_KIND, SI_NAME, SI_PROCESSINFO.SI_HAS_PROMPTS, SI_PROCESSINFO.SI_WEBI_PROMPTS, SI_PROCESSINFO.SI_FILES, SI_PROCESSINFO.SI_PROMPTS FROM CI_INFOOBJECTS WHERE SI_KIND = ‘WEBI’
Get Full Client (Deski reports) reports details.
SELECT SI_ID, SI_NAME,SI_PARENT_FOLDER,SI_FILES FROM CI_INFOOBJECTS
WHERE SI_KIND = ‘FULLCLIENT’
Get the Report list which are using more than one universes.
SELECT SI_ID, SI_KIND, SI_NAME FROM CI_INFOOBJECTS WHERE SI_UNIVERSE.SI_TOTAL>1
Get complete status of the Events (name, location and file information)
SELECT SI_ID, SI_NAME, SI_FEATURES FROM CI_SYSTEMOBJECTS WHERE SI_KIND= ‘Event’
Complete Details about the Scheduled report which are based on Events
SELECT SI_NAME, SI_SCHEDULEINFO FROM CI_INFOOBJECTS WHERE SI_RUNNABLE_OBJECT = 1 AND SI_SCHEDULEINFO.SI_DEPENDENCIES.SI_TOTAL > 0
To Get non scheduled Deski reports.
SELECT SI_NAME, SI_OWNER, SI_AUTHOR, SI_SCHEDULEINFO, SI_PARENT_FOLDER
FROM CI_INFOOBJECTS
WHERE SI_KIND = ‘FULLCLIENT’ AND SI_CHILDREN = 0 AND SI_SCHEDULEINFO.SI_SCHED_NOW = 0
Get complete details of the reports from a particular Universe
SELECT * FROM CI_INFOOBJECTS, CI_SYSTEMOBJECTS, CI_APPOBJECTS
WHERE PARENTS(“SI_NAME=’WEBI-UNIVERSE'”,”SI_NAME =’SALES'”)
Get particular report information
SELECT SI_DOC_SENDER, SI_NAME,SI_DESCRIPTION, SI_FULLCLIENT_PROMPTS, SI_TOTAL, SI_FULLCLIENTDATAPROVIDERS FROM CI_INFOOBJECTS WHERE SI_NAME=’Sales Report’
Complete User Groups information of your BO system.
Select SI_ID, SI_ALIASES, SI_DESCRIPTION, SI_NAME, SI_USERGROUPS, SI_GROUP_MEMBERS from CI_SYSTEMOBJECTS where si_kind = ‘UserGroup’
Get complete set of users, folders(including personal folder), Categories and Users inbox.
SELECT SI_PARENTID,SI_NAME,SI_KIND FROM CI_INFOOBJECTS
Users Inbox – SELECT * FROM CI_INFOOBJECTS WHERE SI_PARENTID=48
Categories – SELECT * FROM CI_INFOOBJECTS WHERE SI_PARENTID=45
User Inbox, Favorites and Personal Folder ID information.
SELECT SI_ID, SI_NAME, SI_INBOX, SI_FAVORITES_FOLDER, SI_PERSONALCATEGORY
FROM CI_SYSTEMOBJECTS WHERE SI_KIND=’USER’
Get the user login count for a particular day to the system
SELECT count (SI_NAME) FROM CI_SYSTEMOBJECTS
WHERE SI_LASTLOGONTIME> ’2013.02.14.00.00.01′ AND SI_KIND = ‘Connection’
Latest Accessed Documents and alerts for the user.
SELECT SI_ID, SI_NAME, SI_RECENT_DOCUMENTS, SI_RECEIVED_ALERTNOTIFICATIONS
FROM CI_SYSTEMOBJECTS WHERE SI_KIND=’USER’
Get Complete Calendar details.
SELECT * FROM CI_SYSTEMOBJECTS WHERE SI_KIND= ‘Calendar’
Complete status of each user
SELECT SI_ID, SI_NAME, SI_CREATION_TIME, SI_UPDATE_TS, SI_LASTLOGONTIME, SI_FAILEDLOGONCOUNT, SI_NAMEDUSER FROM CI_SYSTEMOBJECTS WHERE SI_KIND=’USER’
Get Scheduled report complete details (report name, Description, scheduled frequency and etc) for a particular user.
SELECT * FROM CI_INFOOBJECTS WHERE SI_OWNER = ‘BOUSER1’ AND SI_RECURRING = 1
For more details about the each & every Objects in the repository tables, please check the SAP SDK link.
http://help.sap.com/businessobject/product_guides/boexir31/en/boesdk_net_dg_12_en.zip
Nice Link, my query has been resolved. Thanks…. 🙂
Thanks! Welcome!
Nice Blog Overall. I have an other query, currently we are using BO 4.1 in that we need to see all the BO sers who ran/executed a particular BO report in recent past. Is there any way to get the list using query builder?
Hi Akash,
Query for the Input File Repository Server (iFRS).
SELECT TOP 1 SI_NAME, SI_SERVER_DESCRIPTOR, SI_SERVER_IS_ALIVE, SI_STATUS_CHECK_TS
FROM CI_SYSTEMOBJECTS
WHERE SI_PROGID=’CrystalEnterprise.Server’
AND SI_SERVER_KIND=’fileserver’
AND SI_SERVER_IS_ALIVE=1
AND SI_NAME LIKE ‘%Input%’
ORDER BY SI_SERVER_DESCRIPTOR
you can modify the query to SI_NAME LIKE ‘%Output%’ to examine the Output File Repository servers (oFRS) instead.
Also you can try the below to get server information.
SELECT * FROM CI_SYSTEMOBJECTS WHERE SI_ID=4
SELECT * FROM CI_SYSTEMOBJECTS
WHERE SI_KIND = ‘SERVER’ AND SI_NAME LIKE ‘%FILEREPOSITORY%’
Thanks & Regards
MadhesDWBI
Thank you Madhes for the response. I’ll let you know if it works.
Akash Jain
Hello MadhesDWBI,
Can you please let me know the query which will give me all the report name along with the folder path?? really appreciate your help
Thanks
Krish
Hi Krish,
To list Universe that doesn’t associated with any WebI reports
SELECT si_id,si_name,si_webi,si_cuid FROM CI_AppObjects
WHERE si_kind = ‘Universe’ and SI_WEBI.SI_TOTAL=0
To list Universes with more than one connections (multi source universe)
SELECT si_id,si_name,si_webi,si_cuid FROM CI_AppObjects
WHERE si_kind = ‘Universe’ and SI_DATACONNECTION.SI_TOTAL>1
To list WebI reports that doesn’t associated with any universe
SELECT TOP 50000 si_id,SI_NAME FROM CI_Infoobjects
WHERE si_kind = ‘WebI’ AND SI_INSTANCE=0 and SI_UNIVERSE.SI_TOTAL=0
To list reports and documents those are in public folders including Sub folders. (Excluding instances, personal documents and inbox documents)
SELECT * FROM CI_INFOOBJECTS WHERE SI_KIND IN (‘FullClient’, ‘Txt’, ‘Excel’, ‘Webi’, ‘Analysis’, ‘Pdf’, ‘Word’, ‘Rtf’, ‘CrystalReport’, ‘Agnostic’) AND SI_RUNNABLE_OBJECT = 0 AND SI_INSTANCE_OBJECT = 0 AND SI_ANCESTOR = 23
Find all the WebI reports that use a specific universe
SELECT SI_ID, SI_NAME, SI_WEBI, SI_OWNER FROM CI_INFOOBJECTS, CI_SYSTEMOBJECTS, CI_APPOBJECTS
Where PARENTS (“SI_NAME = ‘Webi-Universe'”, “SI_NAME = ‘Universe Name'”)
To List of all Groups with Subgroups
Select SI_ID, SI_ALIASES, SI_DESCRIPTION, SI_NAME, SI_USERGROUPS, SI_GROUP_MEMBERS from CI_SYSTEMOBJECTS where si_kind = ‘UserGroup’
To get a list of Full Client reports
SELECT SI_ID, SI_NAME, SI_KIND FROM CI_INFOOBJECTS WHERE SI_KIND = ‘FullClient’
To get a list of available Calendars
SELECT * FROM CI_SYSTEMOBJECTS WHERE SI_PARENTID=22
To get a list of Users along with their personal folder
SELECT * FROM CI_INFOOBJECTS WHERE SI_PARENTID=18
To get a list of Users along with their inbox
SELECT * FROM CI_INFOOBJECTS WHERE SI_PARENTID=48
To get a list of available categories
SELECT * FROM CI_INFOOBJECTS WHERE SI_PARENTID=45
To count total number of connection on a particular day (Today)
SELECT count (SI_CREATION_TIME) FROM CI_SYSTEMOBJECTS
WHERE SI_LASTLOGONTIME> ‘2013.02.14.00.00.01’ AND SI_KIND = ‘Connection’
To get total number of unique users logged in to the system on a particular day (Today)
SELECT count (SI_NAME) FROM CI_SYSTEMOBJECTS
WHERE SI_LASTLOGONTIME> ‘2013.02.14.00.00.01’ AND SI_KIND = ‘Connection’
Points to consider while querying
the default limit for returning objects would be 1000 objects normally. In order to get more than 1000 objects we need to use ‘Top N’ function before the column listing in the query. For ex. SELECT Top 2000 * FROM CI_INFOOBJECTS where Si_KIND=’WebI’
You are not allowed to use Sub queries.
The order of columns in the SELECT clause has no impact as the results will be rendered in its own order
Thanks & Regards
MadhesDWBI
Hello MadhesDWBI,
How to get a list of Webi report for all user Inbox & Personal folder.
Any idea please.
Thanks
Is there any way to get the SQL query out of a WEBI report using Query Builder
We cannot get WEBI report SQL using query builder because reports SQL generated on the runtime. You can try using Audit DB or SAP information Steward or try some BO SDK.
Hi Madesh,
Great information about the query builder. I was trying to schedule a monthly BO report which can take the output of query ran on Query Builder as a source, is there any way I can create output in a excel format automatically or in a scheduled way?
Thanks,
SG
Thanks!
You can get the Query Builder Result into Excel using third party tool (InfoStore Query Builder)
The purpose of the InfoStore Query Builder tool is to simplify building CMS metadata queries and provide possibly to export the result to Excel.
BO XI 3.1: Download
BO BI 4.0: Download
Thanks
MadhesDWBI
Hey Madhes
Another way they can save to excel is save the output page as txt from (Page Settings) Save as txt, then open in Excel.
We have scheduled reports running on daily/monthly basis. I need to develop a portal which will display the list of reports completed today. Could you please help
HI, You Can achieve your requirement using Query builder or some third party tools like Apos, Infoobjects, etc.,
You can try with below Query in Query builder To get the list of all reports scheduled and below are some samples and you have to tune to get your needs.
SELECT SI_ID, SI_NAME, SI_SCHEDULEINFO.SI_SCHEDULE_TYPE,
SI_SCHEDULEINFO.SI_SCHEDULE_INTERVAL_NDAYS, SI_SCHEDULEINFO. SI_SCHEDULE_INTERVAL_NTHDAY, SI_SCHEDULEINFO. SI_SCHEDULE_INTERVAL_MONTHS
FROM CI_INFOOBJECTS
WHERE SI_SCHEDULE_STATUS !=8 AND SI_RECURRING = 1
select SI_NAME, SI_SCHEDULEINFO.SI_SUBMITTER, SI_SCHEDULEINFO.SI_STARTTIME from CI_INFOOBJECTS where SI_SCHEDULEINFO.SI_STARTTIME>=’2015.07.10.20.00.00′ and SI_SCHEDULEINFO.SI_STARTTIME<'2015.07.11.13.00.00' order by SI_SCHEDULEINFO.SI_STARTTIME 00
Thanks
MadhesDWBI
Great blog entry.
I’ve just begun using Query Builder and am having some difficulty pulling some data. I’m looking to pull the report name, when it is scheduled to run (daily,weekly,etc.) and the email address the report is being mailed out to.
I found this query but it’s not pulling back the destination email addresses. Could you assist?
SELECT
SI_DESTINATIONS.SI_DEST_SCHEDULEOPTIONS.SI_MAIL_ADDRESSES,
SI_ID, SI_NAME, SI_SCHEDULEINFO.SI_SCHEDULE_TYPE,
SI_SCHEDULEINFO.SI_SCHEDULE_INTERVAL_NDAYS, SI_SCHEDULEINFO. SI_SCHEDULE_INTERVAL_NTHDAY, SI_SCHEDULEINFO. SI_SCHEDULE_INTERVAL_MONTHS
FROM CI_INFOOBJECTS
WHERE SI_SCHEDULE_STATUS !=8 AND SI_RECURRING = 1
Hi Mik,
Use the below query to get your destination email address.
SELECT SI_SCHEDULEINFO.SI_DESTINATION,
SI_SCHEDULEINFO.SI_MAIL_ADDRESSES,
SI_SCHEDULEINFO.SI_NAME
FROM CI_INFOOBJECTS WHERE SI_KIND = ‘your report details’
Thanks
MadhesDWBI
Hi, Could you please help me out with a query to identify the reports scheduled in a specific folder and all the schedule information, especially the email addresses to those the instances are sent. I tried your query above but i don’t get the fields SI_SCHEDULEINFO.SI_DESTINATION,
SI_SCHEDULEINFO.SI_MAIL_ADDRESSES,
SI_SCHEDULEINFO. delivered from query builder.
I would have to create an excel list of all Reports with recipient addresses and scheduling intervals.
Thanks in advance for you help!
I was wondering if it’s possible to see what non-scheduled Crystalreport is running and who’s running it. I mean the ones that are stared manualy. What I’m looking for is a way to detect what report might cause a high CPU usage. Hopefully figure out what the PID is from that report and kill it?
Hi RaymondR,
You canot get the requested details using Query builder and you can try get the use & CPU usage details with another utility for monitoring Webi/APS activity in real-time. Please check the below link.
http://scn.sap.com/thread/3642908
Thanks
MadhesDWBI
Hi Madhes,
How can i find the number of users accessing Crystal Reports…
Thank You !!!
Hi,
how to get reports using an olap connection?
Thanks
Zaki
Hi, please try with below query.
SELECT * FROM CI_APPOBJECTS WHERE SI_KIND = ‘your connection Name’
Thanks MadhesDWBI
thanks for reply, but the query is returning 0 records 😦
i’m on BO 4.1
Hi, you can try to use the connection name properly.. Check some how to use connection name or get the connection name through query.
Hi,
it works with the following statement:
SELECT SI_ID, SI_NAME, SI_DOCUMENT FROM CI_APPOBJECTS WHERE SI_KIND = ‘CommonConnection’ AND SI_ID = ‘SI_ID of my OLAP connection’
Hi,
Is it possible to count the number of reports for each WebI document in the Repository (1 WebI doc can have 1 or many reports inside) ?
How ?
Thanks !
Sreve
Hello !
No idea ?
hi
can you please help me to find the below query.
I want the query to find out what type of connection is associate with universe ?
thanks,
Sanju
HI,
Please try with below Query
select
SI_NAME,
SI_SPECIFIC_KIND,
SI_DATACONNECTION,
SI_SL_UNIVERSE_TO_CONNECTIONS
from ci_appobjects
where si_specific_kind=’Universe’ or SI_SPECIFIC_KIND=’DSL.Universe’
hi MadhesDWBI,
I didn’t get any output., it showing
Number of InfoObject(s) returned: 0
can you please help me .
thanks,
sanju
Hi Sanju,
Please use the below.
SELECT SI_DESCRIPTION,SI_NAME FROM CI_APPOBJECTS WHERE SI_KIND = ‘MetaData.DataConnection’
Hi Madhes,
This is very helpful,,,
we are on 4.1 SP7
kindly help me with how to find the
number of users who uses Cystal Report
number of users who uses Web i
Thank You !!!
Hi Roan,
Thanks!
User details are present in CI_SYSTEMOBJECTS table and webi, Crystal reports details are present in INFOOBJECTS TABLE And we have to combine both the tables and can get the result which you are requesting.
Hi Madhes,
How can i know the number of users using Crystal Reports
and how many users are using Web I.
Thank you !!!
Hi Roan, you can try with below but this will give you number of users logged in a particular day.
SELECT count(SI_NAME) FROM CI_SYSTEMOBJECTS WHERE SI_LASTLOGONTIME >’2016.03.16.00.00.01′ and SI_KIND=’Connection’
Hi Madhes,
Thank you for the response,
i am getting the output as “SI_AGGREGATE_COUNT SI_NAME 1”
can you please help me with these.
Hello Sir,
Good evening:)
I’ve one requirement how to findout BEx query name for Analysis for Office reports.
Kindly help me.
Hi Madness,
I would like your help. I want to find the query which can give me the list of all BO users but also everybody who can log in due to active directory and what data sources (universes) they can access.
Can you please help me?
Hi,
Please check the below query and update according to your requirement.
To list all the Users – SELECT * FROM CI_SYSTEMOBJECTS WHERE SI_KIND=’USER’
or Select SI_ID, SI_NAME From CI_SYSTEMOBJECTS Where SI_PROGID = ‘CrystalEnterprise.USER’ Order By SI_NAME or Select SI_NAME, SI_USERFULLNAME, SI_ID From CI_SYSTEMOBJECTS Where SI_KIND = ‘User’ And SI_NAME != ‘Administrator’ And SI_NAME != ‘Guest’ Order By SI_NAME
To list all the Universes – SELECT * FROM CI_APPOBJECTS WHERE SI_KIND=’UNIVERSE’
Thanks
Madhes DWBI
Hi Madhes ,
Thanks for sharing Query Builder Information . Could you please suggest me for the below scenario.
I would like to get the list of Folder Names and Rights information for the given user group name using query builder .
Example : For the example The UserGroup Name “Report Developers” having access for the different project folders.
I need to get list of Folder Names , Rights information for the above usergroup “Report Developers”.
And also the Query Builder out put is not excel friendly . Is there any approaches to get the out put as excel .
Thanks & Regards
To get all folders from the repository
Select SI_ID, SI_NAME From CI_INFOOBJECTS Where SI_PROGID=’CrystalEnterprise.Folder’
User rights
SELECT SI_NAME from CI_SYSTEMOBJECTS where SI_NAMEDUSER=0 AND SI_KIND=’User’
Hello Madhes,
is there a query to get users by their groups along with their principal for security purposes?
i need 2 reports for auditing.
users/user groups and prinicipal
folder/ user groups and their acces rights
Hi Madhes,
Thanks for sharing Query Builder Information . Could you please suggest me for the below scenario.
I would like to get the list of Folder Names and Rights information for the given user group name using query builder .
Example : For the example The UserGroup Name “Report Developers” having access for the different project folders.
I need to get list of Folder Names , Rights information for the above usergroup “Report Developers”.
And also the Query Builder out put is not excel friendly . Is there any approaches to get the out put as excel .
Thanks & Regards
It came to our notice that few of the BO reports( that were present in the specified folder previously) are missing from the Repository. Through Query builder is there a way to investigate what has happened those missing report ?
Hi Dinesh, I don’t think those missing reports information available in query builder tables unless until you have BO AUDIT repo setup in your system.
Thanks
MadhesDWBI
Hello Friends , i need query which retrieve all mail id information on which we send reports everyday , need to check successfully delivered and not delivered
Hi,
To find email Address for scheduled reports, you need to tweak the query little bit based on your requirement.
SELECT TOP 4500 SI_NAME,SI_USERFULLNAME,SI_EMAIL_ADDRESS,SI_USERGROUPS FROM CI_SYSTEMOBJECTS
WHERE SI_NAME IN (Sales,’Finance’)”)AND SI_KIND = ‘User’ORDER BY SI_NAME
Successful instances
select SI_NAME, SI_OWNER, SI_AUTHOR, SI_STATUSINFO, SI_SCHEDULEINFO,SI_EMAIL_ADDRESS from CI_INFOOBJECTS where
SI_SCHEDULEINFO.SI_OUTCOME=’2016.08.01′
Failed instances
select SI_NAME, SI_OWNER, SI_AUTHOR, SI_STATUSINFO from CI_INFOOBJECTS where SI_SCHEDULEINFO.SI_OUTCOME>=2 and SI_SCHEDULEINFO.SI_STARTTIME>=’2016.08.01′
Dear Madhes,
Thanks a lot for this wonderful article.
I need your help to know the query about finding the list of BO reports which have details about a specific company code. Can you please help?
Regards
Rishi
Hi, please use the below query
SELECT SI_ID, SI_NAME FROM CI_INFOOBJECTS WHERE SI_NAME=’Your required company description”
Hi Madhes,
Please provide a query to find all the report names built on particular universe (UNX).
I have tried the below query to acieve that, but no luck.
SELECT SI_ID, SI_NAME, SI_WEBI, SI_OWNER FROM CI_INFOOBJECTS, CI_SYSTEMOBJECTS, CI_APPOBJECTS
Where PARENTS (“SI_NAME = ‘Webi-Universe’”, “SI_NAME = ‘Universe Name’”)
Actually we use the below query to get the universe names of type .UNX, but I’m unable to get the names of the reports built on top of that.
select * from ci_appobjects where si_kind=’DSL.Universe’ and SI_NAME = ‘Universename.unx’
Thanks in advance.
Hi Sivasai, please use the below query to get the list of reports from UNX universe
Select si_name, si_sl_documnents from co_appobjects where si_kind=’DSL.MetaDataFile’
Thanks
MadhesDWBI
Hi,
Can any body tell me the query for list of webi reports which are having propmts from public folder.
Thanks,
Sankar
Here you go.. To find the list of Webi reports which are using prompts.
SELECT SI_ID, SI_KIND, SI_NAME, SI_PROCESSINFO.SI_HAS_PROMPTS,
SI_PROCESSINFO.SI_WEBI_PROMPTS, SI_PROCESSINFO.SI_FILES,
SI_PROCESSINFO.SI_PROMPTS FROM CI_INFOOBJECTS
WHERE SI_KIND = ‘WEBI’ and SI_INSTANCE = 0 and SI_PROCESSINFO.SI_HAS_PROMPTS=1
How do you export the results to something like a csv file? Or more importantly is there a way to query CI_ information externally?
There is no direct method to export the results into files. You try using custom SDK or other codes to export the result.
Hi Madhes,
i need to find when was the last time the report got refresh.. i had used the si_update_ts but that not correct,, can you give the query to find the last refresh date for the report.
Hi Madhes,
i want to know what is the query for the last refresh date for the report. i had try with si_update_ts but that is not correct.
SELECT SI_NAME, SI_UPDATE_TS,SI_CREATION_TIME, SI_LAST_RUN_TIME FROM CI_INFOOBJECTS where SI_NAME=Report name’ and SI_ID=17494907
Hi Mahesh,
1. How to get server details of BO 6.5 SP4?
2. How to query system tables – CI_SYSTEMOBJECTS and CI_INFOOBJECTS in BO 6.5 SP4?
3. Will Query Builder of SAP BO 3.1 work in BO 6.5 SP4?
Thanks and Regards,
Amit
Hi Amit,
First BO 6.5 and BO XI has different architecture and you cannot use same query builder in BO 6.5.
Below are the list BO 6.5 repository tables.
Security Domain tables 25
1. OBJ_M_ACTOR
2. OBJ_M_USRATTR
3. OBJ_M_DOCCST
4. OBJ_M_GENPAR
5. OBJ_M_MAGICID
6. OBJ_M_RESLINK
7. OBJ_M_UNIVCST
8. OBJ_M_UNIVSLC
9. OBJ_M_ACTORDOC
10. OBJ_M_DOCUMENTS
11. OBJ_M_UNIVERSES
12. OBJ_M_ACTORLINK
13. OBJ_M_TIMESTAMP
14.OBJ_M_UNIVDBCST
15.OBJ_M_CONNECTION
16.DS_USER_LIST
17.OBJ_M_REPOSITORY
18.OBJ_M_CATEG
19.OBJ_M_CONNECTDATA
20.OBJ_M_OBJSLICE
21.OBJ_M_RESERVATION
22.DS_PENDING_JOB
23.OBJ_M_DOCCATEG
24.OBJ_M_DOCAT
25.OBJ_M_DOCATVAR
Document Domain have 1 tables
1.OBJ_X_DOCUMENTS
Universe Domain have 31 tables
1. UNV_JOIN
2. UNV_AUDIT
3. UNV_CLASS
4. UNV_RELATIONS
5. UNV_DIM_OBJ
6. UNV_OBJECT
7. UNV_OBJ_TAB
8. UNV_TAB_OBJ
9. UNV_CONTEXT
10. UNV_CTX_JOIN
11. UNV_TAB_PROP
12. UNV_JOIN_DATA
13. UNV_PROP_DATA
14. UNV_PROPERTY
15. UNV_UNIVERSE
16. UNV_CLASS_DATA
17. UNV_DIMENSION
18. UNV_PROP_TAB
19. UNV_OBJECT_DATA
20. UNV_CONTEXT_DATA
21. UNV_JOINCONTENT
22. UNV_UNIVERSE_DATA
23. UNV_OBJCONTENT
24. UNV_TABLE
25. UNV_TABLE_DATA
26. UNV_OBJECT_KEY
27. UNV_JOIN_OBJECT
28. UNV_COLUMNS
29. UNV_COLUMN_DATA
30. UNV_OBJ_COLUMN
31. UNV_X_UNIVERSES
Dear,
Can you help me please. I tried to purge the reports from personal folder (User Folders) with the modification date greater then x days.
share-cleaner.xml
“O:\Program Files\BI4\SAP BusinessObjects Enterprise XI 4.0\win32_x86\jre\bin\java” -Xms64m -Xmx1024m -jar O:\BOXI4.0Config\MovePurge\BOXI_script_MovePurge\share-cleaner.jar -f O:\BOXI4.0Config\MovePurge\BOXI_script_MovePurge\share-cleaner.xml -p cleaner-user-folders
Can someone please shed some light on this issue.
System : SAP BusinessObjects BI Platform 4.1 Support Pack 5 Patch 8
Kind regards,
Fethi
Could you please help with Query to get Hana view name used by universe
HI Mades
can one query the cms_infooobject table with query builder ?
also can one use querybuilder to update cms db ?
Hi, you can qury all cms tables using query builder but you cannot update / modify anything in cms tables using query builder.
actually i get an invalid query error when i try to query the cms_infoobjects7 table
any other way to query the cms database ?
how could i update it ?
Share me the query which you were tried in query builder
this one for example
SELECT OBJECTID FROM CMS_INFOOBJECTS7
Hi Madhes
I need to know list of crystal reports that used specific field in the report. Is it possible to find in the query builder? or else to find list of crystal reports based on the connection.
Pingback: Query Builder in BO – Additional Queries | DWBI castle
Hi Madhes, how to get the information from sub fields. For e.g. I wanted to retrieve SI_LOGON_INFO.SI_LOGON1.SI_CUSTOM_USER information for a specific crystal report which is coming when I enter the query as below
SELECT * FROM CI_INFOOBJECTS WHERE SI_KIND = ‘CrystalReport’ AND SI_ID = 519765
However, i want to retrieve only SI_NAME and SI_CUSTOM_USER for above report. Whatever the combination I try, 1 row is retrieved but nothing is displayed. Can you help?
Hi,
I trying to query users of all groups in business objects.
SELECT *
FROM ci_systemobjects
WHERE descendants(“si_name=’Usergroup-User'”, “si_name=””)
The above query will return users of one group. But, I want users of all groups with group name in the below format.
User_id group_name
Thanks and Regards,
Diwakar G
Hi,
Could anyone help me on my request.
I need to know Webi report Count and its name(report name) that been refreshed from January 1st,2019 to till now.
Regards,
Suprith
Hi , Madhes .
Could you please help me how to get ” Number of reports in each user inbox level ” by using Query.
Hi Narendra,
Use below query to find Number of reports in each user inbox.
SELECT SI_OWNER,SI_CHILDREN FROM CI_INFOOBJECTS WHERE SI_PARENTID=48
Thanks
Madhes
Hi Madhes.
Can you tell me the query to get “The Folder path” by using BO query.
Hi All,
Could you please help me with the query for report name, report scheduled frequency, delivery method(email, ftp), delivery destination (email list, directory) for a particular folder.
Thanks
HI Puja,
Get Scheduled report complete details (report name, Description, scheduled frequency and etc) for a particular user.
SELECT * FROM CI_INFOOBJECTS WHERE SI_OWNER = ‘BOUSER1’ AND SI_RECURRING = 1
Also please go through my post, you will get answer for your question.
can you tell me the query for user list ,personnel folder reports list with size, I am trying with
SELECT TOP 10000 SI_ID,SI_NAME, SI_PATH,SI_AUTHOR,SI_SIZE,SI_FILES FROM CI_INFOOBJECTS WHERE SI_KIND = ‘Webi’ – group by SI_NAME is not working and also I need to export the results to excel, I am running on BO4.3SP2 patch9
Hi Madhes,
One question.. If we run some query in a query builder will that be executed in CMS database in backend or will it just fetch result from the InfoStore.
Hi Madhes,
You seem to be very open in helping here.
May I know how to query all user with their status:
si_name | Si_enabled
I tried below queries but seem to returning 0 result.
SELECT TOP 5000 SI_NAME, SI_LASTLOGONTIME FROM CI_SYSTEMOBJECTS
WHERE SI_NAME NOT IN (‘ADMINISTRATOR’,’GUEST’) AND SI_KIND=’USER’
AND SI_ALIASES.SI_ENABLED = ‘True’
SELECT SI_NAME, SI_ALIASES.SI_ENABLED FROM CI_SYSTEMOBJECTS
WHERE SI_NAME NOT IN (‘ADMINISTRATOR’,’GUEST’) AND SI_KIND=’USER’
Your kind help is much appreciated.
Hi,
I wanted to know how can i fetch the list of lumira files and documents from Query builder.
can you tell me the query for user list ,personnel folder reports list with size, I am trying with
SELECT TOP 10000 SI_ID,SI_NAME, SI_PATH,SI_AUTHOR,SI_SIZE,SI_FILES FROM CI_INFOOBJECTS WHERE SI_KIND = ‘Webi’ – group by SI_NAME is not working and also I need to export the results to excel, I am running on BO4.3SP2 patch9