Користувальницькі налаштування

Налаштування сайту


sql:get_repository_data

Це стара версія документу!


Get Siebel Ojects Repository Data

SQL запрос позволяющий получить подробную информацию из Siebel Repository (Workspace MAIN) по Applets и Business Components.

Информация доступна только для DR!

Установка Для работы SQL запросов необходимо предварительно создать все view.zip

Все View настроены на получение информации из репозитория Siebel Repository и Workspace MAIN

После создания всех технических view необходимо создать View al_get_info_bc.zip

Получение информации по Applet

Для получения информации по Applet необходимо использовать al_get_info_applet.zip

Для получения максимально корректной информации необходимо указывать название Applet и View (название View не обязательное)

WITH inp AS (SELECT
WITH inp AS (SELECT
                'Contact Form Applet' p_applet,  -- <== здесь должно быть название апплета
                'Contact All Communication View' p_view -- <== здесь может быть название вью, если не принципиально - можно не трогать (!!!! - но удалять или комментить строку нельзя)
            FROM dual) 
SELECT  1
,t.applet_name --название апплета
,t.buscomp_name --название бизнес-компонента
,t.field_name --название поля на БК
,t.control_name --название поля на апплете (технический момент)
,t.control_caplion --отображаемое значение на апплете
,bc.*
FROM
(
    SELECT 1
          ,a.NAME applet_name
 
          ,ac.name control_name
          ,wt.TYPE applet_mode
          ,nvl(ac.control_caplion,ssi.STRING_VALUE) control_caplion
          ,ac.field_name
          ,a.buscomp_name
          ,wi.expr
          ,wt.TYPE wt_type
          ,wt.NAME wt_name
          ,CASE WHEN ac.visible='Y' AND wi.mode_cd IS NULL 
                THEN 'Y' 
                ELSE 'N'
            END visible
          ,wi.mode_cd
--          ,CASE WHEN ac.visible='Y' AND wi.mode_cd IS NULL 
--                    THEN 0 
--                WHEN ac.visible='Y' AND wi.mode_cd IS NOT NULL
--                    THEN 1
--                WHEN ac.visible='N' AND wi.mode_cd IS NULL
--                    THEN 2
--                ELSE 3
--            END vis_sort
--          ,mod(wi.item_num,1000) sort1
--          ,trunc(wi.item_num/1000) sort2
    FROM
    (
        SELECT c.applet_id
              ,'Form' cont_type
              ,ci.CAPTION control_caplion 
              ,ci.lang_cd
              ,c.caption_ref
              ,c.COMMENTS,c.CONFLICT_ID,c.CONTENT_FIXUP_NAME,c.CREATED,c.CREATED_BY,c.DB_LAST_UPD,c.DB_LAST_UPD_SRC,c.DET_APPLET_NAME,c.FIELD_NAME,c.FIELD_RETRIEVAL_CD,c.HTML_ATTR,c.HTML_DISPLAY_MODE,c.HTML_HEIGHT,c.HTML_ICON_MAP,c.HTML_MAX_CHAR_DISP,c.HTML_ONLY_FLG,c.HTML_ROW_SEN_FLG,c.HTML_SEQUENCE,c.HTML_TYPE,c.HTML_WIDTH,c.INACTIVE_FLG,c.LABEL_TXT_ALGNMENT,c.LAST_UPD,c.LAST_UPD_BY,c.MODIFICATION_NUM,c.MODULE_NAME,c.MVG_APPLET_NAME,c.NAME,c.PICK_APPLET_NAME,c.PICK_VIS_TYPE,c.POPUP_EDIT_FLG,c.PROMPT_TEXT_REF,c.READONLY,c.REPOSITORY_ID,c.ROW_ID,c.RUNTIME_FLG,c.SEQUENCE,c.SHOW_POPUP_FLG,c.SSE_FLG,c.SST_FLG,c.SSV_FLG,c.TEXT_ALIGNMENT,c.TYPE,c.VISIBLE,c.WIDTH
            FROM siebel.pp_s_control c,siebel.pp_s_control_intl ci WHERE ci.control_id(+)=c.ws_src_id AND ci.caption(+) IS NOT NULL
         UNION ALL 
        SELECT l.applet_id
              ,'List' cont_type
              ,ci.display_name control_caplion 
              ,ci.lang_cd
              ,c.display_name_ref
              ,c.COMMENTS,c.CONFLICT_ID,c.CONTENT_FIXUP_NAME,c.CREATED,c.CREATED_BY,c.DB_LAST_UPD,c.DB_LAST_UPD_SRC,c.DET_APPLET_NAME,c.FIELD_NAME,c.FIELD_RETRIEVAL_CD,c.HTML_ATTR,c.HTML_DISPLAY_MODE,c.HTML_HEIGHT,c.HTML_ICON_MAP,c.HTML_MAX_CHAR_DISP,c.HTML_ONLY_FLG,c.HTML_ROW_SEN_FLG,c.HTML_SEQUENCE,c.HTML_TYPE,c.HTML_WIDTH,c.INACTIVE_FLG,c.LABEL_TXT_ALGNMENT,c.LAST_UPD,c.LAST_UPD_BY,c.MODIFICATION_NUM,c.MODULE_NAME,c.MVG_APPLET_NAME,c.NAME,c.PICK_APPLET_NAME,c.PICK_VIS_TYPE,c.POPUP_EDIT_FLG,c.PROMPT_TEXT_REF,c.READONLY,c.REPOSITORY_ID,c.ROW_ID,c.RUNTIME_FLG,c.SEQUENCE,c.SHOW_POPUP_FLG,c.SSE_FLG,c.SST_FLG,c.SSV_FLG,c.TEXT_ALIGNMENT,c.TYPE,c.VISIBLE,c.WIDTH
            FROM siebel.pp_s_list l,siebel.pp_s_list_column c,siebel.pp_s_list_col_intl ci WHERE c.list_id=l.ws_src_id AND ci.list_column_id(+)=c.ws_src_id AND ci.display_name(+) IS NOT NULL
    ) ac,
    siebel.pp_s_applet a,
    (SELECT ws_src_id,applet_id,TYPE,NAME 
        FROM 
        (SELECT ws_src_id,applet_id,TYPE,NAME,view_exist||sort2 keymn,MIN(view_exist||sort2) OVER(PARTITION BY applet_id) mn 
         FROM
            (SELECT ws_src_id,applet_id,TYPE,NAME,SEQUENCE
                ,decode(TYPE,'Edit List',1,'Edit',2,'Base',3,4)||SEQUENCE||ROW_ID sort2
                ,CASE WHEN EXISTS(SELECT 1 FROM siebel.pp_s_view v,siebel.pp_s_view_web_tmpl vw,siebel.pp_s_view_wtmpl_it wvi,siebel.pp_s_applet a,inp
                                            WHERE wvi.view_web_tmpl_id=vw.ws_src_id AND vw.view_id=v.ws_src_id AND a.name=wvi.applet_name
                                            AND V.NAME=inp.p_view AND wvi.applet_mode_cd=w.TYPE AND a.ws_src_id=w.applet_id
                                            )
                THEN 0
                ELSE 1 END view_exist
            FROM siebel.pp_s_appl_web_tmpl w,inp
            WHERE 1=1
            )
        )
    WHERE keymn = mn
    ) wt,
    siebel.pp_s_appl_wtmpl_it wi,
    siebel.pp_S_SYM_STR ss,
    siebel.pp_s_sym_str_intl ssi,
    inp
    WHERE 1=1
      AND a.ws_src_id=ac.applet_id
      AND a.ws_src_id=wt.applet_id
      AND wt.ws_src_id=wi.appl_web_tmpl_id
      AND wi.ctrl_name=ac.NAME
      AND decode(wi.repos_type,'Control',nvl(wi.grid_property,'FormattedHtml'),'FormattedHtml')='FormattedHtml'
      AND nvl(wi.expr,'Siebel Universal Agent') IN ('Siebel Universal Agent','Siebel Universal Agent OUI')
      AND ac.field_name IS NOT NULL
      AND nvl(ac.html_type,0)!='Hidden'
      AND nvl(ac.HTML_DISPLAY_MODE,0)!='DontEncodeData'
      AND nvl(ac.lang_cd,'RUS')='RUS'
      AND ss.name(+)=ac.caption_ref
      AND ss.ws_src_id=ssi.sym_str_id(+)
      AND ssi.lang_cd(+)='RUS'
) t, inp, AL_GET_INFO_BC bc
 
WHERE 1=1
AND t.applet_name = inp.p_applet
AND t.buscomp_name = bc.bc_name 
AND t.field_name   = bc.field_name
 
------------------------------
--ORDER BY vis_sort,sort1,sort2

Получение информации по Business Component

При необходимости можно получить информацию по Business Component. Например если понадобится получить информацию по Field из калькулируемого поля. (Пример BC=Contact, Field=AClub Manager Last Name)

SELECT *
FROM AL_GET_INFO_BC bc
WHERE bc.bc_name = 'Contact'
AND bc.field_name = 'AClub Manager Last Name';
sql/get_repository_data.1709286568.txt.gz · Востаннє змінено: 2024/03/01 11:49 повз wiki_admin