oracle - Getting Repository dependencies -


i'm using informatica oracle rdbms. lately i've been struggling bit.

i got assignment query dependencies between each model/workflow , desired result this:

grand_model | grand_workflow | wait_4_model | wait_4_workflow  dwh_model1     wf_workflow1    dwh_model3      wf_workflow3_1  dwh_model1     wf_workflow1    dwh_model4      wf_workflow4_1  dwh_model2     wf_workflow2_1  dwh_model1      wf_workflow1 

which means, wf_workflow1 in model dwh_model1 waits workflow wf_workflow3_1 in model dwh_model3 etc....

we have 3 types of workflows , delta (will contains word delta) dwh (same here) , calc(same here). workflow waits uses event contain both of models names, , workflow flags contain cmd contain grand_model name.

so far we've come this:

select distinct oa.subj_name grand_model,                 ol.subj_name wait_4_model_name,                 rep.workflow_name wait_4_workflow_name,                 a.flag_name,                 case                   when instr(upper(a.flag_name), 'dwh') > 0                    'dwh'                   when instr(upper(rep.workflow_name), 'delta') > 0                    'delta'                   else                    'calc'                 end connection_name   opb_subject@to_informatica_admin ol,        opb_subject@to_informatica_admin oa,        opb_task@to_informatica_admin t,        opb_task@to_informatica_admin tl,        opb_task_inst@to_informatica_admin ti,        rep_session_instances@to_informatica_admin rep,        (select t.task_id,                substr(t.attr_value,                       length(t.attr_value) + 2 -                       instr(reverse(t.attr_value), '/')) flag_name           opb_task_attr@to_informatica_admin t          t.task_type = 60            , instr(reverse(t.attr_value), '/') > 0) a,        (select t.task_id,                t.subject_id,                substr(t.pm_value,                       length(t.pm_value) + 2 -                       instr(reverse(t.pm_value), '/')) flag_name           opb_task_val_list@to_informatica_admin t          instr(reverse(t.pm_value), '/') > 0) l  ol.subj_id = l.subject_id    , a.task_id = t.task_id    , t.subject_id = oa.subj_id    , a.flag_name = l.flag_name    , ol.subj_name <> oa.subj_name    , l.task_id = tl.task_id    , tl.task_id = ti.task_id    , ti.workflow_id = rep.workflow_id 

this query works! problem is, i'm getting worklets workflows well, of times last joins fails. don't know how avoid it..


Comments

Popular posts from this blog

Sass watch command compiles .scss files before full sftp upload -

filehandler - java open files not cleaned, even when the process is killed -

gridview - Yii2 DataPorivider $totalSum for a column -