<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Join Table &amp; Dynamic Selection in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/join-table-dynamic-selection/m-p/2545202#M578833</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Gurus,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I need to do a performance tuning on a bad response time program.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Therefore i use inner join to improve the response time, it works. &lt;SPAN __jive_emoticon_name="happy"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;But my problem is the original program was using dynamic selection(with LDB), so i need to retain the same feature(i.e. dynamic selection) in new program.&lt;/P&gt;&lt;P&gt;I use FM 'FREE_SELECTIONS_INIT' &amp;amp; FM 'FREE_SELECTIONS_DIALOG' to let user entering dynamic selections.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;How can the SELECT with JOIN be done with dynamic selection?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in advance.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Hikaruno&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 09 Jul 2007 04:41:06 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-07-09T04:41:06Z</dc:date>
    <item>
      <title>Join Table &amp; Dynamic Selection</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/join-table-dynamic-selection/m-p/2545202#M578833</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Gurus,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I need to do a performance tuning on a bad response time program.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Therefore i use inner join to improve the response time, it works. &lt;SPAN __jive_emoticon_name="happy"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;But my problem is the original program was using dynamic selection(with LDB), so i need to retain the same feature(i.e. dynamic selection) in new program.&lt;/P&gt;&lt;P&gt;I use FM 'FREE_SELECTIONS_INIT' &amp;amp; FM 'FREE_SELECTIONS_DIALOG' to let user entering dynamic selections.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;How can the SELECT with JOIN be done with dynamic selection?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in advance.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Hikaruno&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 09 Jul 2007 04:41:06 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/join-table-dynamic-selection/m-p/2545202#M578833</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-07-09T04:41:06Z</dc:date>
    </item>
    <item>
      <title>Re: Join Table &amp; Dynamic Selection</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/join-table-dynamic-selection/m-p/2545203#M578834</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Examples of Dynamic conditions&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: COND(72) TYPE C,&lt;/P&gt;&lt;P&gt;      ITAB LIKE TABLE OF COND.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETERS: CITY1(10) TYPE C, CITY2(10) TYPE C.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA WA TYPE SPFLI-CITYFROM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONCATENATE 'CITYFROM = ''' CITY1 '''' INTO COND.&lt;/P&gt;&lt;P&gt;APPEND COND TO ITAB.&lt;/P&gt;&lt;P&gt;CONCATENATE 'OR CITYFROM = ''' CITY2 '''' INTO COND.&lt;/P&gt;&lt;P&gt;APPEND COND TO ITAB.&lt;/P&gt;&lt;P&gt;CONCATENATE 'OR CITYFROM = ''' 'BERLIN' '''' INTO COND.&lt;/P&gt;&lt;P&gt;APPEND COND TO ITAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT ITAB INTO COND.&lt;/P&gt;&lt;P&gt;  WRITE COND.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SKIP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT CITYFROM&lt;/P&gt;&lt;P&gt;INTO   WA&lt;/P&gt;&lt;P&gt;FROM   SPFLI&lt;/P&gt;&lt;P&gt;WHERE  (ITAB).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WRITE / WA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDSELECT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If this may be useful reward points are appreciated.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 10 Jul 2007 08:31:55 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/join-table-dynamic-selection/m-p/2545203#M578834</guid>
      <dc:creator>former_member239282</dc:creator>
      <dc:date>2007-07-10T08:31:55Z</dc:date>
    </item>
    <item>
      <title>Re: Join Table &amp; Dynamic Selection</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/join-table-dynamic-selection/m-p/2545204#M578835</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, &lt;/P&gt;&lt;P&gt;  the joins are doing well with dynamic condition too, but i guess the join condition you have to code. &lt;/P&gt;&lt;P&gt;  Just remeber that table names and field names in dynamic condition have to be all caps. e.g. you have to build something like &lt;/P&gt;&lt;P&gt;     str = 'A&lt;SUB&gt;MATNR = ABC AND B&lt;/SUB&gt;MATKL = Z1'.&lt;/P&gt;&lt;P&gt;and then WHERE (str).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  I have extended the field names with 'A&lt;SUB&gt;' and 'B&lt;/SUB&gt;' before calling FM from SAP and it worked well. dont rember exactly FM function name it was something like &lt;STRONG&gt;RANGE_TO_WHERE&lt;/STRONG&gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BR, Artem&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;remeber points&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;Best Regards, Artem&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 10 Jul 2007 10:04:43 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/join-table-dynamic-selection/m-p/2545204#M578835</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-07-10T10:04:43Z</dc:date>
    </item>
    <item>
      <title>Re: Join Table &amp; Dynamic Selection</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/join-table-dynamic-selection/m-p/2545205#M578836</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hai   ... here is the program for   using the dynamic  selection  FM  used .&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;REPORT zmodtab NO STANDARD PAGE HEADING.

TYPE-POOLS: rsds.

DATA: is_x030l  TYPE x030l,
      it_dfies  TYPE TABLE OF dfies,
      is_dfies  TYPE dfies,
      it_fdiff  TYPE TABLE OF field_dif,
      is_fdiff  TYPE field_dif.

DATA: w_selid   TYPE rsdynsel-selid,
      it_tables TYPE TABLE OF rsdstabs,
      is_tables TYPE rsdstabs,
      it_fields TYPE TABLE OF rsdsfields,
      it_expr   TYPE rsds_texpr,
      it_ranges TYPE rsds_trange,
      it_where  TYPE rsds_twhere,
      is_where  TYPE rsds_where,
      w_active  TYPE i.

DATA: it_content TYPE REF TO data,
      it_modif   TYPE REF TO data,
      it_fcat    TYPE lvc_t_fcat.

DATA: w_okcode   TYPE sy-ucomm.


FIELD-SYMBOLS: &amp;lt;itab&amp;gt; TYPE STANDARD TABLE,
               &amp;lt;ntab&amp;gt; TYPE STANDARD TABLE.


* Macros
DEFINE table_error.
  message e398(00) with 'Table' p_table &amp;amp;1.
END-OF-DEFINITION.

DEFINE fixed_val.
  is_fdiff-fieldname = is_dfies-fieldname.
  is_fdiff-fixed_val = &amp;amp;1.
  is_fdiff-no_input  = 'X'.
  append is_fdiff to it_fdiff.
END-OF-DEFINITION.


* Selection screen
SELECTION-SCREEN: BEGIN OF BLOCK b01 WITH FRAME.
PARAMETERS: p_table TYPE tabname OBLIGATORY                    "table
                                 MEMORY ID dtb
                                 MATCHCODE OBJECT dd_dbtb_16.
SELECTION-SCREEN: BEGIN OF LINE,
                  PUSHBUTTON 33(20) selopt USER-COMMAND sel,
                  COMMENT    55(15) selcnt,
                  END OF LINE.
SELECTION-SCREEN: SKIP.
PARAMETERS: p_rows  TYPE i.                                    "rows
SELECTION-SCREEN: END OF BLOCK b01,
                  SKIP,
                  BEGIN OF BLOCK b02 WITH FRAME.
PARAMETERS: p_displ TYPE c AS CHECKBOX.                        "display
SELECTION-SCREEN: END OF BLOCK b02.

* Initialization
INITIALIZATION.
  MOVE '@4G@ Filter records' TO selopt.

* PBO
AT SELECTION-SCREEN OUTPUT.
  IF w_active IS INITIAL.
    CLEAR: selcnt.
  ELSE.
    WRITE w_active TO selcnt LEFT-JUSTIFIED.
  ENDIF.

* PAI
AT SELECTION-SCREEN.
  IF p_table NE is_x030l-tabname.
    CALL FUNCTION 'DDIF_NAMETAB_GET'
         EXPORTING
              tabname   = p_table
         IMPORTING
              x030l_wa  = is_x030l
         TABLES
              dfies_tab = it_dfies
         EXCEPTIONS
              OTHERS    = 1.
    IF is_x030l IS INITIAL.
      table_error 'does not exist or is not active'.
    ELSEIF is_x030l-tabtype NE 'T'.
      table_error 'is not selectable'.
    ELSEIF is_x030l-align NE 0.
      table_error 'has alignment - cannot continue'.
    ENDIF.

*   Default values for system fields
    REFRESH: it_fdiff.
    is_fdiff-tabname = p_table.
    LOOP AT it_dfies INTO is_dfies.
      IF is_dfies-datatype = 'CLNT'.
        fixed_val sy-mandt.
      ELSEIF is_dfies-rollname = 'ERDAT'
          OR is_dfies-rollname = 'ERSDA'
          OR is_dfies-rollname = 'AEDAT'
          OR is_dfies-rollname = 'LAEDA'.
        fixed_val sy-datum.
      ELSEIF is_dfies-rollname = 'ERTIM'
          OR is_dfies-rollname = 'AETIM'.
        fixed_val sy-uzeit.
      ELSEIF is_dfies-rollname = 'ERNAM'
          OR is_dfies-rollname = 'AENAM'.
        fixed_val sy-uname.
      ENDIF.
    ENDLOOP.

*   Prepare free selection on table
    REFRESH it_tables.
    is_tables-prim_tab = p_table.
    APPEND is_tables TO it_tables.

    CLEAR: w_selid.
  ENDIF.

  IF sy-ucomm = 'SEL'.
    IF w_selid IS INITIAL.
*     Init free selection dialog
      CALL FUNCTION 'FREE_SELECTIONS_INIT'
           EXPORTING
                expressions  = it_expr
           IMPORTING
                selection_id = w_selid
                expressions  = it_expr
           TABLES
                tables_tab   = it_tables
           EXCEPTIONS
                OTHERS       = 1.
    ENDIF.

*   Display free selection dialog
    CALL FUNCTION 'FREE_SELECTIONS_DIALOG'
         EXPORTING
              selection_id            = w_selid
              title                   = 'Selection'
              status                  = 1
              as_window               = 'X'
         IMPORTING
              expressions             = it_expr
              field_ranges            = it_ranges
              number_of_active_fields = w_active
         TABLES
              fields_tab              = it_fields
         EXCEPTIONS
              OTHERS                  = 1.
  ENDIF.


* Start of processing
START-OF-SELECTION.

  PERFORM f_create_table USING p_table.

  PERFORM f_select_table.

  PERFORM f_display_table.


*---------------------------------------------------------------------*
*       FORM f_create_table                                           *
*---------------------------------------------------------------------*
FORM f_create_table USING in_tabname.

  FIELD-SYMBOLS: &amp;lt;fcat&amp;gt; TYPE lvc_s_fcat.

  CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'
       EXPORTING
            i_structure_name = in_tabname
       CHANGING
            ct_fieldcat      = it_fcat
       EXCEPTIONS
            OTHERS           = 1.
  IF sy-subrc = 0.
*   Complete field catalog
    LOOP AT it_fcat ASSIGNING &amp;lt;fcat&amp;gt;.
      &amp;lt;fcat&amp;gt;-tabname = in_tabname.
    ENDLOOP.
    CALL FUNCTION 'LVC_FIELDCAT_COMPLETE'
         CHANGING
              ct_fieldcat = it_fcat
         EXCEPTIONS
              OTHERS      = 1.
  ELSE.
    WRITE: 'Error building field catalog'.
    STOP.
  ENDIF.

* Create dynamic table for data
  CALL METHOD cl_alv_table_create=&amp;gt;create_dynamic_table
    EXPORTING
      it_fieldcatalog = it_fcat
    IMPORTING
      ep_table        = it_content.
  IF sy-subrc = 0.
    ASSIGN it_content-&amp;gt;* TO &amp;lt;itab&amp;gt;.
  ELSE.
    WRITE: 'Error creating internal table'.
    STOP.
  ENDIF.

* Create dynamic table for modif
  CALL METHOD cl_alv_table_create=&amp;gt;create_dynamic_table
    EXPORTING
      it_fieldcatalog = it_fcat
    IMPORTING
      ep_table        = it_modif.
  IF sy-subrc = 0.
    ASSIGN it_modif-&amp;gt;* TO &amp;lt;ntab&amp;gt;.
  ELSE.
    WRITE: 'Error creating internal table'.
    STOP.
  ENDIF.

ENDFORM.


*---------------------------------------------------------------------*
*       FORM f_select_table                                           *
*---------------------------------------------------------------------*
FORM f_select_table.

  IF w_active = 0.
    SELECT * FROM (p_table)
             INTO CORRESPONDING FIELDS OF TABLE &amp;lt;itab&amp;gt;
            UP TO p_rows ROWS.
  ELSE.
*   Selection with parameters
    CALL FUNCTION 'FREE_SELECTIONS_RANGE_2_WHERE'
         EXPORTING
              field_ranges  = it_ranges
         IMPORTING
              where_clauses = it_where.
    READ TABLE it_where INTO is_where WITH KEY tablename = p_table.

    SELECT * FROM (p_table)
             INTO CORRESPONDING FIELDS OF TABLE &amp;lt;itab&amp;gt;
            UP TO p_rows ROWS
            WHERE (is_where-where_tab).
  ENDIF.

  IF sy-dbcnt = 0.
    WRITE: 'No record selected'.
    STOP.
  ENDIF.
ENDFORM.


*---------------------------------------------------------------------*
*       FORM f_display_table                                          *
*---------------------------------------------------------------------*
FORM f_display_table.
  DATA: l_answer TYPE c,
        l_eflag  TYPE c.

  CLEAR: w_okcode.
  REFRESH: &amp;lt;ntab&amp;gt;.
* Display table contents
  CALL FUNCTION 'STC1_FULLSCREEN_TABLE_CONTROL'
       EXPORTING
            header       = p_table
            tabname      = p_table
            display_only = p_displ
            endless      = 'X'
            no_button    = space
       IMPORTING
            okcode       = w_okcode
       TABLES
            nametab      = it_dfies
            table        = &amp;lt;itab&amp;gt;
            fielddif     = it_fdiff
            modif_table  = &amp;lt;ntab&amp;gt;
       EXCEPTIONS
            OTHERS       = 1.
  IF sy-subrc = 0.
    IF p_displ IS INITIAL AND w_okcode = 'SAVE'.
*     Confirm update
      CALL FUNCTION 'POPUP_TO_CONFIRM'
           EXPORTING
                titlebar              = p_table
                text_question         = 'Do you want to update table ?'
                default_button        = '2'
                display_cancel_button = ' '
           IMPORTING
                answer                = l_answer
           EXCEPTIONS
                OTHERS                = 1.
      IF l_answer = '1'.
*       Apply modifications
        IF NOT &amp;lt;ntab&amp;gt;[] IS INITIAL.
          PERFORM f_add_system USING space.
          MODIFY (p_table) FROM TABLE &amp;lt;ntab&amp;gt;.
          IF sy-subrc NE 0.
            l_eflag = 'X'.
          ENDIF.
        ENDIF.
*       Apply deletions
        IF l_eflag IS INITIAL.
          REFRESH: &amp;lt;ntab&amp;gt;.
          CALL FUNCTION 'STC1_GET_DATA'
               TABLES
                    deleted_data = &amp;lt;ntab&amp;gt;
               EXCEPTIONS
                    OTHERS       = 1.
          IF NOT &amp;lt;ntab&amp;gt;[] IS INITIAL.
            DELETE (p_table) FROM TABLE &amp;lt;ntab&amp;gt;.
            IF sy-subrc NE 0.
              ROLLBACK WORK.
              l_eflag = 'X'.
            ENDIF.
          ENDIF.
        ENDIF.
*       Apply creations
        IF l_eflag IS INITIAL.
          REFRESH: &amp;lt;ntab&amp;gt;.
          CALL FUNCTION 'STC1_GET_DATA'
               TABLES
                    new_data = &amp;lt;ntab&amp;gt;
               EXCEPTIONS
                    OTHERS   = 1.
          IF NOT &amp;lt;ntab&amp;gt;[] IS INITIAL.
            PERFORM f_add_system USING 'X'.
            INSERT (p_table) FROM TABLE &amp;lt;ntab&amp;gt;.
            IF sy-subrc NE 0.
              ROLLBACK WORK.
              l_eflag = 'X'.
            ENDIF.
          ENDIF.
        ENDIF.
        IF l_eflag IS INITIAL.
          COMMIT WORK.
          MESSAGE s261(53).
        ELSE.
          MESSAGE s075(3i).
          PERFORM f_select_table.
        ENDIF.
      ENDIF.
*     Display table again
      PERFORM f_display_table.
    ENDIF.
  ENDIF.

ENDFORM.


*---------------------------------------------------------------------*
*       FORM f_add_system                                             *
*---------------------------------------------------------------------*
FORM f_add_system USING new TYPE c.

  FIELD-SYMBOLS: &amp;lt;irec&amp;gt; TYPE ANY,
                 &amp;lt;upd&amp;gt;  TYPE ANY.

  LOOP AT it_fdiff INTO is_fdiff.
    READ TABLE it_dfies INTO is_dfies
                    WITH KEY fieldname = is_fdiff-fieldname.
    LOOP AT &amp;lt;ntab&amp;gt; ASSIGNING &amp;lt;irec&amp;gt;.
      ASSIGN COMPONENT is_fdiff-fieldname OF STRUCTURE &amp;lt;irec&amp;gt; TO &amp;lt;upd&amp;gt;.
      IF is_dfies-datatype = 'CLNT'.
        &amp;lt;upd&amp;gt; = sy-mandt.
      ELSE.
        CASE is_dfies-rollname.
          WHEN 'AENAM'.
            &amp;lt;upd&amp;gt; = sy-uname.
          WHEN 'AEDAT' OR 'LAEDA'.
            &amp;lt;upd&amp;gt; = sy-datum.
          WHEN 'AETIM'.
            &amp;lt;upd&amp;gt; = sy-uzeit.
          WHEN OTHERS.
        ENDCASE.
      ENDIF.
    ENDLOOP.
  ENDLOOP.

ENDFORM.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;reward  points if it is usefull......&lt;/P&gt;&lt;P&gt;Girish&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 10 Jul 2007 14:17:30 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/join-table-dynamic-selection/m-p/2545205#M578836</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-07-10T14:17:30Z</dc:date>
    </item>
    <item>
      <title>Re: Join Table &amp; Dynamic Selection</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/join-table-dynamic-selection/m-p/2545206#M578837</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Here is the simple   logic of the   using  the  FM 'FREE_SELECTIONS_INIT' &amp;amp; FM 'FREE_SELECTIONS_DIALOG' &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;parameters p_db              type rsdgscsel-iobjnm. 
parameters: p_texpr          type rsds_texpr no-display. 

at selection-screen on p_db. 
  gt_texpr = p_texpr. 


  perform f1200_get_db_selections. 


form f1200_get_db_selections . 
 gt_tabs-prim_tab = g_db_name. 
  append gt_tabs. 
  gt_fields-tablename = g_db_name. 
  loop at gt_keys into  ga_keys. 
    gt_fields-fieldname = ga_keys-fieldname. 
    append gt_fields. 
  endloop. 

  gt_trange_int = gt_trange. 
  call function 'FREE_SELECTIONS_INIT' 
    exporting 
    expressions              = gt_texpr 
      kind                     = 'F' 
*    field_groups_key         = qcat 
*     field_ranges_int          = gt_trange_int 
    importing 
      selection_id             = g_selid 
      expressions              = gt_texpr 
      where_clauses            = gt_twhere 
      field_ranges             = gt_trange 
      number_of_active_fields  = g_actnum 
    tables 
      tables_tab               = gt_tabs 
      fields_tab               = gt_fields 
*    EXCEPTIONS 
*      fields_incomplete        = 01 
*      fields_no_join           = 02 
*      field_not_found          = 03 
*      no_tables                = 04 
*      table_not_found          = 05 
*      expression_not_supported = 06 
*      incorrect_expression     = 07 
*      illegal_kind             = 08 
*      area_not_found           = 09 
*      inconsistent_area        = 10 
*      kind_f_no_fields_left    = 11 
*      kind_f_no_fields         = 12 
*      too_many_fields          = 13 
. 


  clear g_title. 
  concatenate 'Compare Master Data for' g_db_name 
  into g_title separated by space. 

  if sy-subrc = 0. 
    call function 'FREE_SELECTIONS_DIALOG' 
      exporting 
        selection_id            = g_selid 
        title                   = g_title 
        frame_text              = g_frame_text 
        as_window               = 'X' 
        start_row               = '5' 
        start_col               = '5' 
        tree_visible            = ' ' 
        status                  = 1 
        importing 
        where_clauses           = gt_twhere 
        expressions             = gt_texpr 
        field_ranges            = gt_trange 
        number_of_active_fields = g_actnum 
      tables 
        fields_tab              = gt_fields 
      exceptions 
*        internal_error          = 01 
        no_action               = 02 
        no_fields_selected      = 03 
        no_tables_selected      = 04 
*        selid_not_found         = 05.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;reward  points if it is usefull.....&lt;/P&gt;&lt;P&gt;Girish&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 10 Jul 2007 14:20:52 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/join-table-dynamic-selection/m-p/2545206#M578837</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-07-10T14:20:52Z</dc:date>
    </item>
    <item>
      <title>Re: Join Table &amp; Dynamic Selection</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/join-table-dynamic-selection/m-p/2545207#M578838</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi all,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for your reply. My problem solved.&lt;/P&gt;&lt;P&gt;As per yr advice, I have extended the field names with 'A&lt;SUB&gt;' and 'B&lt;/SUB&gt;' before calling FM 'FREE_SELECTIONS_RANGE_2_WHERE' from SAP and it worked well. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks to Artem &amp;amp; Girish. Points Awarded. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BR,&lt;/P&gt;&lt;P&gt;Hikaruno&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 16 Jul 2007 10:01:44 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/join-table-dynamic-selection/m-p/2545207#M578838</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-07-16T10:01:44Z</dc:date>
    </item>
  </channel>
</rss>

