Це стара версія документу!
Зміст
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 'AL Contact Form Applet' p_applet, -- <== здесь должно быть название апплета 'Alpha 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';
