Quantcast
Channel: SCN: Message List
Viewing all articles
Browse latest Browse all 3585

Re: UJD_TEST_PACKAGE_LINK - Link Answer Prompt (XML)

$
0
0

Yes you are right. I got it working. Here is the code just in case if somebody needs it.

 

Here is the code incase if somebody needs it:

 

 

    lobj_context = cl_uj_context=>get_cur_context( ).

     ds_user = lobj_context->ds_user.

 

     CREATE DATA ls_value LIKE lt_configuration.

     CREATE DATA ln_value LIKE LINE OF lt_configuration.

     LOOP AT it_cv INTO lt_cv.

       IF lt_cv-user_specified = 'X'.

         LOOP AT lt_cv-member INTO wa_range.

           add_selection ls_ly_range lt_ly_range lt_cv-dimension wa_range space.

         ENDLOOP.

       ENDIF.

     ENDLOOP.

     CREATE OBJECT do_package_link TYPE cl_ujd_package_link.

     CALL METHOD do_package_link->get_plink_prompt

       EXPORTING

         i_link_id      = c_link                                

         i_appset_id    = i_appset_id                           

         i_appl_id      = i_appl_id                              

         is_user        = ds_user

       IMPORTING

         et_link_prompt = lt_link_prompt_act

         e_link_detail  = l_link_detail_act.

     LOOP AT lt_link_prompt_act INTO ln_link_prompt_act.

       CLEAR:ln_configuration.

       CONCATENATE ln_link_prompt_act-task_name lc_property_delimiter lc_property

                   lc_prevalue_delimiter lc_answerprompt lc_postvalue_delimiter

                   INTO ln_configuration-path.

       SPLIT ln_link_prompt_act-prompt AT '"' INTO v_temp ln_link_prompt_act-prompt.

       REPLACE ALL OCCURRENCES OF '"' IN ln_link_prompt_act-prompt WITH ''.

       SPLIT ln_link_prompt_act-prompt AT `,` INTO TABLE lt_prompt.

       IF lt_prompt IS INITIAL.

         CONTINUE.

       ENDIF.

       CLEAR: ls_prompt_line.

       ls_prompt_line-value = '/Environment/CONSOLIDATION/PRIVATEPUBLICATIONS/DDESAI/TempFiles/FROM.TMP@@@SAVE@@@@@@EXPAND@@@'.

       SORT lt_prompt ASCENDING.

       LOOP AT lt_prompt ASSIGNING <ls_column_data>.

         CONDENSE <ls_column_data>.

         CONCATENATE ls_prompt_line-value '|DIMENSION:' <ls_column_data> '|' INTO ls_prompt_line-value.

         ls_prompt_line-name  = '%SELECTION%'.

         IF <ls_column_data> = c_dim_time.

           CONCATENATE ls_prompt_line-value v_time_dummy INTO ls_prompt_line-value.

         ENDIF.

         LOOP AT lt_ly_range INTO ls_ly_range WHERE dimension = <ls_column_data>.

           IF sy-tabix <> 1.

             CONCATENATE ls_prompt_line-value ls_ly_range-low INTO ls_prompt_line-value SEPARATED BY ','.

           ELSE.

             CONCATENATE ls_prompt_line-value ls_ly_range-low INTO ls_prompt_line-value.

           ENDIF.

         ENDLOOP.

       ENDLOOP.

       APPEND ls_prompt_line TO ln_configuration-value.

       APPEND ln_configuration TO lt_configuration.

     ENDLOOP.

 

     CREATE OBJECT lo_package_link.

     CALL METHOD me->bpc_read_base_member

       EXPORTING

         i_enviroment_id    = i_appset_id

         i_dimension_id     = c_dim_time

         i_dimension_member = '2016.TOTAL'

       IMPORTING

         e_base_members     = lt_time_mbr.

     LOOP AT lt_time_mbr INTO lv_member.

       LOOP AT lt_configuration ASSIGNING <ls_configuration>.

         LOOP AT <ls_configuration>-value ASSIGNING <ls_variable>.

           IF <ls_variable>-name = '%SELECTION%'.

             REPLACE ALL OCCURRENCES OF v_time_dummy IN <ls_variable>-value WITH lv_member.

           ENDIF.

         ENDLOOP.

       ENDLOOP.

       v_time_dummy = lv_member.

       lo_package_link->run_package_link( EXPORTING i_appset_id     = i_appset_id

                                                 i_appl_id          = i_appl_id

                                                 is_user            = ds_user

                                                 i_link_id          = c_link                          

                                                 it_configuration   = lt_configuration

                                                 if_schedule        = abap_false

                                                 if_debug           = abap_true ).

     ENDLOOP.


Viewing all articles
Browse latest Browse all 3585

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>