<?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 Re: Parameter Transaction in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/parameter-transaction/m-p/885946#M52501</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;You may "customize" your table maintenance function group to your specific needs.  But, in doing this,  realize that if you need to re-generate it, your changes will be over written.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You could also build your own table maintenance program&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Rich Heilman&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 23 Feb 2005 13:50:47 GMT</pubDate>
    <dc:creator>RichHeilman</dc:creator>
    <dc:date>2005-02-23T13:50:47Z</dc:date>
    <item>
      <title>Parameter Transaction</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/parameter-transaction/m-p/885945#M52500</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;I have created a Parameter transaction for SM30 by which I am able to maintain entries in my user-defined table. But, I would like to restrict the entries displayed (not using the conditions in SM30) by creating the selection screen where only the few fields of the user-defined table are presented for selection and based on that I get output. I want the full functionality of the parameter transaction(creation , deletion of the entries) though.&lt;/P&gt;&lt;P&gt;if some one has any ideas kindly let me know.&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Manish&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 23 Feb 2005 13:44:44 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/parameter-transaction/m-p/885945#M52500</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-02-23T13:44:44Z</dc:date>
    </item>
    <item>
      <title>Re: Parameter Transaction</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/parameter-transaction/m-p/885946#M52501</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;You may "customize" your table maintenance function group to your specific needs.  But, in doing this,  realize that if you need to re-generate it, your changes will be over written.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You could also build your own table maintenance program&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Rich Heilman&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 23 Feb 2005 13:50:47 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/parameter-transaction/m-p/885946#M52501</guid>
      <dc:creator>RichHeilman</dc:creator>
      <dc:date>2005-02-23T13:50:47Z</dc:date>
    </item>
    <item>
      <title>Re: Parameter Transaction</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/parameter-transaction/m-p/885947#M52502</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Have you tried maintenance type: 2 step so that you can get a selection type screen?  If so, what do you not like about it?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 23 Feb 2005 14:45:46 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/parameter-transaction/m-p/885947#M52502</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-02-23T14:45:46Z</dc:date>
    </item>
    <item>
      <title>Re: Parameter Transaction</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/parameter-transaction/m-p/885948#M52503</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Manish,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I don't know if a two-step maintenance is good for you as suggested in one reply here, but if your requirement is to give user a SM30 feature but have a selection screen of your own, then here is an example of how you can achieve that with a custom program. I don't think you can achieve that with just parametric transaction and without using conditions and without modifying the maintenance screens.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Let me know if you have any questions regarding this code. This program is for a Z table mainetnance which has two fields, a code and a description. Users are given a choice of entering their criteria for either the code or the description or both. This criteria is internally converted to a format that the table maintenance function module understands. The result is that users get to see and maintain only the records that they wanted.&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
REPORT test.

*----------------------------------------------------------------------*
*                       DB TABLES AND STRUCTURES                       *
*----------------------------------------------------------------------*
TABLES: sscrfields,
        z_group.

*----------------------------------------------------------------------*
*                          INTERNAL TABLES                             *
*----------------------------------------------------------------------*

*-- Internal table for seltab
DATA : i_seltab LIKE vimsellist OCCURS 0 WITH HEADER LINE.

DATA: BEGIN OF i_excl_tab OCCURS 0,
       pfkey LIKE sy-pfkey.
DATA: END OF i_excl_tab.

*----------------------------------------------------------------------*
*                             VARIABLES                                *
*----------------------------------------------------------------------*

*----------------------------------------------------------------------*
*                             CONSTANTS                                *
*----------------------------------------------------------------------*
*------------------------ Selection Screen ---------------------------*
*-- Maintain EOQ Tables: Initial Screen
SELECTION-SCREEN BEGIN OF BLOCK selscr WITH FRAME TITLE text-000.
SELECTION-SCREEN SKIP 1.
*-- Select the table you want to maintain
SELECTION-SCREEN BEGIN OF BLOCK program WITH FRAME TITLE text-001.
PARAMETERS : p_table LIKE dd02l-tabname DEFAULT 'Z_GROUP'.
SELECTION-SCREEN END OF BLOCK program.
SELECTION-SCREEN BEGIN OF BLOCK fursel WITH FRAME TITLE text-002.
*-- Selections for EOQ groups
SELECT-OPTIONS: s_group FOR z_group-group,
                s_descr FOR z_group-descr NO-EXTENSION
                                          NO INTERVALS.
SELECTION-SCREEN END OF BLOCK fursel.
*-- display or maintain options
SELECTION-SCREEN PUSHBUTTON: /10(20) update  USER-COMMAND upda
                                                 MODIF ID ind,
                              35(20) display USER-COMMAND disp
                                                 MODIF ID ind.
SELECTION-SCREEN END OF BLOCK selscr.

*--------------
INITIALIZATION.
*--------------
  PERFORM initialize_variables.

*--------------------------
AT SELECTION-SCREEN OUTPUT.
*--------------------------

*-- set the PF Status for the selection screen
  PERFORM set_sel_screen_pf_status.
  LOOP AT SCREEN.
    CHECK screen-name = 'P_TABLE'.
    screen-input = 0.
    MODIFY SCREEN.
  ENDLOOP.

*-------------------
AT SELECTION-SCREEN.
*-------------------
  CHECK NOT p_table IS INITIAL.
  PERFORM call_maintenance USING sscrfields-ucomm.

*------------------
START-OF-SELECTION.
*------------------

*----------------
END-OF-SELECTION.
*----------------

*--------------------- Routines used in the program -------------------*


*---------------------------------------------------------------------*
*       FORM initialize_variables                                     *
*---------------------------------------------------------------------*
*       ........                                                      *
*---------------------------------------------------------------------*
FORM initialize_variables.

  MOVE: 'Update'(006)  TO update,
        'Display'(007) TO display.

ENDFORM.                  " initialize_variables

*---------------------------------------------------------------------*
*       FORM SET_SEL_SCREEN_PF_STATUS                                 *
*---------------------------------------------------------------------*
*       ........                                                      *
*---------------------------------------------------------------------*
FORM set_sel_screen_pf_status.

  MOVE 'ONLI' TO i_excl_tab-pfkey.
  APPEND i_excl_tab.
  CLEAR i_excl_tab.

  MOVE 'SJOB' TO i_excl_tab-pfkey.
  APPEND i_excl_tab.
  CLEAR i_excl_tab.

  MOVE 'PRIN' TO i_excl_tab-pfkey.
  APPEND i_excl_tab.
  CLEAR i_excl_tab.

  MOVE 'DYNS' TO i_excl_tab-pfkey.
  APPEND i_excl_tab.
  CLEAR i_excl_tab.

  CALL FUNCTION 'RS_SET_SELSCREEN_STATUS'
       EXPORTING
            p_status  = '%_00'
            p_program = 'RSSYSTDB'
       TABLES
            p_exclude = i_excl_tab.

ENDFORM.                      " SET_SEL_SCREEN_PF_STATUS

*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  call_maintenance
*&amp;amp;---------------------------------------------------------------------*
*       To display the maintenance of the table entered.
*----------------------------------------------------------------------*
FORM call_maintenance USING action LIKE sy-ucomm.

  DATA: l_view_action.

  IF action = 'UPDA'.
    l_view_action = 'U'.
  ELSEIF action = 'DISP'.
    l_view_action = 'S'.
  ELSE.
    EXIT.
  ENDIF.

*-- prepare the select statement for the call
  PERFORM prepare_sel_statement.

  CALL FUNCTION 'VIEW_MAINTENANCE_CALL'
    EXPORTING
      action                               = l_view_action
*   CORR_NUMBER                          = '          '
*   GENERATE_MAINT_TOOL_IF_MISSING       = ' '
*   SHOW_SELECTION_POPUP                 = ' '
      view_name                            = p_table
*   NO_WARNING_FOR_CLIENTINDEP           = ' '
*   RFC_DESTINATION_FOR_UPGRADE          = ' '
*   CLIENT_FOR_UPGRADE                   = ' '
*   VARIANT_FOR_SELECTION                = ' '
*   COMPLEX_SELCONDS_USED                = ' '
   TABLES
     dba_sellist                          = i_seltab
*   EXCL_CUA_FUNCT                       =
 EXCEPTIONS
   client_reference                     = 1
   foreign_lock                         = 2
   invalid_action                       = 3
   no_clientindependent_auth            = 4
   no_database_function                 = 5
   no_editor_function                   = 6
   no_show_auth                         = 7
   no_tvdir_entry                       = 8
   no_upd_auth                          = 9
   only_show_allowed                    = 10
   system_failure                       = 11
   unknown_field_in_dba_sellist         = 12
   view_not_found                       = 13
   OTHERS                               = 14
            .
  IF sy-subrc &amp;lt;&amp;gt; 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
            WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.

ENDFORM.                    " call_maintenance

*---------------------------------------------------------------------*
*       FORM prepare_sel_statement                                    *
*---------------------------------------------------------------------*
*       ........                                                      *
*---------------------------------------------------------------------*
FORM prepare_sel_statement.

  CLEAR: i_seltab, i_seltab[].

  PERFORM prepare_seltab_for_grp.

ENDFORM.                       " PREPARE_SEL_STATEMENT

*---------------------------------------------------------------------*
*       FORM PREPARE_SELTAB_FOR_GRP                                   *
*---------------------------------------------------------------------*
*       ........                                                      *
*---------------------------------------------------------------------*
FORM prepare_seltab_for_grp.

  IF NOT s_group[] IS INITIAL.
*-- if any criteria is entered for the GROUP field
    CALL FUNCTION 'VIEW_RANGETAB_TO_SELLIST'
      EXPORTING
        fieldname                = 'GROUP'
*       APPEND_CONJUNCTION       = ' '
      TABLES
        sellist                  = i_seltab
        rangetab                 = s_group.
  ENDIF.
  IF NOT s_descr[] IS INITIAL.
*-- if any criteria is entered for the GROUP DESCRIPTION field
    CALL FUNCTION 'VIEW_RANGETAB_TO_SELLIST'
         EXPORTING
              fieldname          = 'DESCR'
              append_conjunction = 'AND'
         TABLES
              sellist            = i_seltab
              rangetab           = s_descr.
  ENDIF.

ENDFORM.                       " PREPARE_SELTAB_FOR_GRP
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this helps.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Srinivas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 23 Feb 2005 16:06:36 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/parameter-transaction/m-p/885948#M52503</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-02-23T16:06:36Z</dc:date>
    </item>
  </channel>
</rss>

