Wednesday, May 12, 2010

Dissecting Auditor using VIEW

Topic Intro: Querying Business Objects Audit Database directly by creating a View.

Video Walkthrough: As I've mentioned in the previous video, we're gonna create a VIEW in the BO Audit Database using the following code that's available on Bob Forum and other places on the web. We will also run some test SQL queries to find some Audit information directly from the Audit database.

-------------------------BEGIN--------------------------

create view AUDITOR_View as
SELECT        server_process.application_type_id as [Application_Type_ID],
              cast(application_type.application_type_description as varchar(50)) as [Application_Type_Description],
              audit_detail.detail_id as [Detail_ID],
              audit_detail.detail_text as [Detail_Text],
              detail_type.detail_type_id as [Detail_Type_ID],
              cast(detail_type.detail_type_description as varchar(50)) as [Detail_Type_Description],
              audit_event.Duration as [Duration],
              audit_Event.Error_Code as [Error_Code],
              cast(audit_event.Event_ID as varchar(32)) as [Event_ID],
              audit_event.Event_Type_ID as [Event_Type_ID],
              cast(event_type.event_type_description as varchar(50)) as [Event_Type_Description],
              cast(audit_event.Object_CUID as varchar(32)) as [Object_CUID],
              audit_event.Start_Timestamp as [Start_Timestamp],
              cast(audit_event.User_Name as varchar(50)) as [User_Name],
              cast(audit_detail.server_cuid as varchar(32)) as [Server_CUID],
              cast(server_process.server_name as varchar(50)) as [Server_Name],
              cast(server_process.server_fullname as varchar(50)) as [Server_Fullname],
              cast(server_process.server_version as varchar(50)) as [Server_Version]
FROM APPLICATION_TYPE INNER JOIN
             (SERVER_PROCESS INNER JOIN (
                 (AUDIT_DETAIL INNER JOIN (
                      AUDIT_EVENT INNER JOIN
                          EVENT_TYPE ON
                              AUDIT_EVENT.Event_Type_ID =
                              EVENT_TYPE.Event_Type_ID) ON (
                                  AUDIT_EVENT.Server_CUID =
                                  AUDIT_DETAIL.Server_CUID) AND
                                     (AUDIT_DETAIL.Event_ID =
                                      AUDIT_EVENT.Event_ID)) INNER JOIN
                                          DETAIL_TYPE ON
                                              AUDIT_DETAIL.Detail_Type_ID =
                                              DETAIL_TYPE.Detail_Type_ID) ON
                                                  SERVER_PROCESS.Server_CUID =
                                                  AUDIT_DETAIL.Server_CUID) ON
                                                      APPLICATION_TYPE.Application_Type_ID =
                                                      SERVER_PROCESS.Application_Type_ID

-------------------------END--------------------------

No comments:

Post a Comment