Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Passing database table values to drop down list list using "vrm_set_values"

Former Member
0 Kudos

DEar Experts,

How can we pass database travel to drop down list using vrm_set_value call function.

Looking forward for advise from you experts .

REgards

CHandan

1 ACCEPTED SOLUTION

Former Member
0 Kudos

Chandan,

Here's an example of how to populate the list.  You just need to populate ls_value-key and ls_value-text with the values from your 'database travel' table.

I hope this helps ...

REPORT  sy-repid MESSAGE-ID sy.

TYPE-POOLS vrm.

PARAMETERS:

  p_list AS LISTBOX VISIBLE LENGTH 20.

INITIALIZATION.

  PERFORM populate_list.

START-OF-SELECTION.

  WRITE: / 'You selected P_LIST value', p_list.

FORM populate_list.

  DATA:

    lt_value TYPE vrm_values,

    ls_value LIKE LINE OF lt_value.

  ls_value-key = 'A'.

  ls_value-text = 'Choice A'.

  APPEND ls_value TO lt_value.

  ls_value-key = 'B'.

  ls_value-text = 'Choice B'.

  APPEND ls_value TO lt_value.

  ls_value-key = 'C'.

  ls_value-text = 'Choice C'.

  APPEND ls_value TO lt_value.

  p_list = 'A'.  " Default Value

  CALL FUNCTION 'VRM_SET_VALUES'

    EXPORTING

      id              = 'P_LIST'

      values          = lt_value

    EXCEPTIONS

      id_illegal_name = 1

      OTHERS          = 2.

  IF sy-subrc <> 0.

    BREAK-POINT.

  ENDIF.

ENDFORM.                    "populate_list

=====

Duane

18 REPLIES 18

Former Member
0 Kudos

Chandan,

Here's an example of how to populate the list.  You just need to populate ls_value-key and ls_value-text with the values from your 'database travel' table.

I hope this helps ...

REPORT  sy-repid MESSAGE-ID sy.

TYPE-POOLS vrm.

PARAMETERS:

  p_list AS LISTBOX VISIBLE LENGTH 20.

INITIALIZATION.

  PERFORM populate_list.

START-OF-SELECTION.

  WRITE: / 'You selected P_LIST value', p_list.

FORM populate_list.

  DATA:

    lt_value TYPE vrm_values,

    ls_value LIKE LINE OF lt_value.

  ls_value-key = 'A'.

  ls_value-text = 'Choice A'.

  APPEND ls_value TO lt_value.

  ls_value-key = 'B'.

  ls_value-text = 'Choice B'.

  APPEND ls_value TO lt_value.

  ls_value-key = 'C'.

  ls_value-text = 'Choice C'.

  APPEND ls_value TO lt_value.

  p_list = 'A'.  " Default Value

  CALL FUNCTION 'VRM_SET_VALUES'

    EXPORTING

      id              = 'P_LIST'

      values          = lt_value

    EXCEPTIONS

      id_illegal_name = 1

      OTHERS          = 2.

  IF sy-subrc <> 0.

    BREAK-POINT.

  ENDIF.

ENDFORM.                    "populate_list

=====

Duane

0 Kudos

DEar Duane,

thanks a lot for your reply. I have one problem in the above code. For eg. I have a database table Zlt_mita with fields M1 and M2. M1 is the employees name and M2 is the corresponding Employee code. Every M1 has its corresponding value in M2.

Like:         M1                          M2

         Chandan Kumar        DAS0907

          Petra Sutor.               DAS0906    

          ---------                        ------------

ANd so on.....

If there are 1000's of employees (M1 & M2), then i would not like to write

1000 times different employee name and employee code in ls_value_text.

SO my question here is: Is it possible to pass the field M1 and M2 (Zlt_mita-M1 and

ZLt_mita-M2) in ls_value_text, i.e. ls_value_text ='Zlt_mita-M1' and

ls_value_text ='Zlt_mita-M2' instead of writing ls_value_text ='Chandan Kumar'

and ls_value_text ='DAS0907'.

LOoking forward for your reply.

BEst regards

Chandan Kumar

0 Kudos

Hello Chandan,

    Yes, you can do that way. Please declare an internal table of ZLT_MITA and another it_vrm TYPE vrm_values. Fetch all relevant records into that table of zlt_mita. Now loop at that internal table of zlt_mita and write like this:


DATA: it_zlt_mita TYPE STANDARD TABLE OF zlt_mita,

           wa_zlt_mita TYPE zlt_mita,

           it_vrm TYPE STANDARD TABLE OF vrm_values,

           wa_vrm TYPE vrm_values.

LOOP AT it_zlt_mita into wa_zlt_mita.

    wa_vrm-key = wa_zlt_mita-m2.

    wa_vrm-text = wa_zlt_mita-m1.

    APPEND wa_vrm TO it_vrm.

    CLEAR: wa_vrm, wa_zlt_mita.

ENDLOOP.

Now, it_vrm will have your desired records and you can use this in VRM_SET_VALUES. Hope this helps.

NOTE: please check the below code, it's same as I told above. Thought might help you to clear doubts.

Regards,

Anubhab

0 Kudos

Dear Anubhav,

Thanks for your reply. When I applied your code:

Type-pools: vrm.

DATA: it_zlt_mita      TYPE     STANDARD TABLE OF Zlt_mita,

          wa_zlt_mita    TYPE     zlt_mita,

          it_vrm             TYPE     STANDARD TABLE OF vrm_values with header line ,

          wa_vrm           TYPE     vrm_values.

LOOP at it_zlt_mita into wa_zlt_mita.

     wa_vrm-key   = wa_zlt_mita-m2.

     wa_vrm-text  = wa_zlt_mita-m1.

     APPEND wa_vrm to it_vrm.

     Clear: wa_vrm, wa_zlt_mita.

ENDLOOP.

Then the check says that : "When using "WITH HEADER KINE" the line type cannot be a table type."

So upon this I declared in DATA as:

DATA: it_zlt_mita      TYPE     STANDARD TABLE OF Zlt_mita,

          wa_zlt_mita    TYPE     zlt_mita,

          it_vrm             TYPE     TABLE OF vrm_values with header line ,

          wa_vrm           TYPE     vrm_values.

EVen in this case also I get the same error after check.

Please guide me where is my concept wrong.

regards

chandan

0 Kudos

Hello Chandan,

    Please declare as below:

DATA: it_zlt_mita TYPE STANDARD TABLE OF zlt_mita,

           wa_zlt_mita TYPE zlt_mita,

           it_vrm TYPE STANDARD TABLE OF vrm_values, (Don't put WITH HEADER LINE)

           wa_vrm TYPE vrm_values. (Work area for it_vrm, so WITH HEADER LINE not required)


And then you can use loop as:

LOOP AT it_zlt_mita into wa_zlt_mita.

    wa_vrm-key = wa_zlt_mita-m2.

    wa_vrm-text = wa_zlt_mita-m1.

    APPEND wa_vrm TO it_vrm.

    CLEAR: wa_vrm, wa_zlt_mita.

ENDLOOP.

The code snippet, I just gave, as it would provide an idea. Hope you got the point now.

Regards,

Anubhab

0 Kudos

Dear Anubhab,

Thanks for your quick reply.

Please refer the attachment to see what problem I am getting.

Looking forward for your reply.

Regards

chandan

0 Kudos

Hello Chandan,

    Declare it_vrm as below:

    DATA: it_zlt_mita TYPE STANDARD TABLE OF zlt_mita,

               wa_zlt_mita TYPE zlt_mita,

               it_vrm TYPE vrm_values WITH HEADER LINE.

               wa_vrm TYPE vrm_values.


No need to declare work area (wa_vrm).

LOOP AT it_zlt_mita into wa_zlt_mita.

    it_vrm-key = wa_zlt_mita-m2.

    it_vrm-text = wa_zlt_mita-m1.

    APPEND it_vrm.

    CLEAR: it_vrm, wa_zlt_mita.

ENDLOOP.

Now, when you call the FM, remember to pass it_vrm[] in the values parameter. This will solve the issue. Let me know.

Regards,

Anubhab

0 Kudos

Dear Anubhab,

thank you again for your reply.

Please see this code and guide if it is in correct order:

Type-pools: vrm.

DATA: it_zlt_mita TYPE STANDARD TABLE OF Zlt_mita,

      wa_zlt_mita TYPE zlt_mita,

      it_vrm      TYPE vrm_values with header line .

*      wa_vrm      TYPE vrm_values.

Selection-Screen: Begin of Block b1 With Frame Title text-001.

parameters:

  p_mitar             type zmitarbeitertabl-mitarbeiter as listbox visible length 20

                         user-command zcc01 obligatory,

  p_mitarn             type Zmitarbeitertabl-mitarbeiternr as listbox visible length 10

                         user-command zcc02.

Selection-Screen : End of Block b1.

AT SELECTION-SCREEN OUTPUT.

   Select * From ZLT_mita INTO CORRESPONDING FIELDS OF TABLE it_zlt_mita.

  LOOP at it_zlt_mita into wa_zlt_mita.

     it_vrm-key   = wa_zlt_mita-m2.

     it_vrm-text  = wa_zlt_mita-m1.

     APPEND it_vrm.

     Clear: it_vrm, wa_zlt_mita.

  ENDLOOP.

  CALL FUNCTION 'VRM_SET_VALUES'

    EXPORTING

      id                    = 'P'

      values                = it_vrm

*   EXCEPTIONS

*     ID_ILLEGAL_NAME       = 1

*     OTHERS                = 2

            .

  IF sy-subrc <> 0.

* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

  ENDIF.

Looking forward for your suggestion.

Regards

chandan

0 Kudos

Hello Chandan,

    Order is fine. Just one thing, when you are calling VRM_SET_VALUES, in the parameter ID, pass the field name (in all capital and within quote), for which you want to populate the drop down. (p_mitar or p_mitarn in this case I guess). As I can see, you didn't pass it_vrm[] in the FM, please do so.

And also please handle the exception in FM, it's a good practice.

Regards,

Anubhab

0 Kudos

Dear Anubhub,

Thanks again.

I have problem in identifying in call function.

  CALL FUNCTION 'VRM_SET_VALUES'

    EXPORTING

      id                    = 'P'

      values                = it_vrm

      EXCEPTIONS

      ID_ILLEGAL_NAME       = 1

      OTHERS                = 2

What should be the values in :

"id "  and  "values"

       

Looking forward fro your suggestion.

regards

chandan

0 Kudos

Hello Chandan,

    As I told in earlier post, if you want to populate p_mitar field with dropdown, pass 'P_MITAR' as id and it_vrm[] as values.

And if you want to populate p_mitarn with dropdown then pass 'P_MITARN' as id and it_vrm[] as values.

Please do this, run the program and check if it's working fine. In case of any issue, please let know.

Regards,

Anubhab

0 Kudos

Dear Anubhab,

So here is my final code.

It works but after execution only the p-Mitar appears in the dorpdown. How should I populate the corresponding p_mitarn i.e Zlt_mita-M2

also. I want the P_mitarn to be populated automatically as soon as a mitarbeiter name is selected in P_mita.

i.e. when I select: P_mita from dropdown as "Chandan Kumar" the its corresponding employee code "DAS0907" should be automatically populated in P_mitanr

Type-pools: vrm.

DATA: it_zlt_mita     TYPE STANDARD TABLE OF Zlt_mita,

           wa_zlt_mita  TYPE zlt_mita,

            it_vrm          TYPE vrm_values with header line .

Selection-Screen: Begin of Block b1 With Frame Title text-001.

parameters:

  p_mitar             type zmitarbeitertabl-mitarbeiter as listbox visible length 20

                         user-command zcc01 obligatory,

  p_mitarn           type Zmitarbeitertabl-mitarbeiternr as listbox visible length 10

                          user-command zcc02.

Selection-Screen : End of Block b1.

AT SELECTION-SCREEN OUTPUT.

Select * From ZLT_mita INTO CORRESPONDING FIELDS OF TABLE it_zlt_mita.

LOOP at it_zlt_mita into wa_zlt_mita.

     it_vrm-key   = wa_zlt_mita-m2.

     it_vrm-text  = wa_zlt_mita-m1.

   

     APPEND it_vrm.

     Clear: it_vrm, wa_zlt_mita.


ENDLOOP.

 

    CALL FUNCTION 'VRM_SET_VALUES'

    EXPORTING

      id                    = 'p_mitar'

      values                = it_vrm[]

   EXCEPTIONS

     ID_ILLEGAL_NAME       = 1

     OTHERS                = 2

            .

  IF sy-subrc <> 0.

* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

  ENDIF.

Looking forward for your suggestion.

Regards

chandan Kumar

0 Kudos

Hello Chandan,

    The id parameter in the FM should be the field name for which you want to populate the drop down. And i guess there is no field called P in your program. Instead you have p_mitar and p_mitarn. So please check my earlier post and put the desired field name of that field, which you want to populate. If you want to populate both, you need to call the FM two times, once with id = 'P_MITAR' and again with id = 'P_MITARN'. Hope you understood what I'm trying to say.

Please let know, in case of issues.

Regards,

Anubhab

0 Kudos

Hello Chandan,

    i.e. when I select: P_mita from dropdown as "Chandan Kumar" the its corresponding employee code "DAS0907" should be automatically populated in P_mitanr


In this case, why you need p_mitarn as listbox? You can define it as simple parameter. And in this case you need to use FM DYNP_VALUES_READ to read p_mitar values and select corresponding employee code from the internal table and again use FM DYNP_VALUES_UPDATE to update the value in p_mitarn.

As the same FM is being called two times with different field name, but same value table, so it's populating same values in both the fields. Hope it clears your question about this.

Regards,

Anubhab

0 Kudos

Dear Anubhab,

Thank you for patiently answering my question.

Here goes my code. I am going correct as per your suggestion but my problem and requirement is:

Problem: In both the dropdownlist: Same field ZLT_mita_m1 is being populated.

Requirement: 

How should I populate the corresponding p_mitarn i.e Zlt_mita-M2

also. I want the P_mitarn to be populated automatically as soon as a mitarbeiter name is selected in P_mita.

i.e. when I select: P_mita from dropdown as "Chandan Kumar" the its corresponding employee code "DAS0907" should be automatically populated in P_mitanr

My code:

Type-pools: vrm.

DATA: it_zlt_mita TYPE STANDARD TABLE OF Zlt_mita,

      wa_zlt_mita TYPE zlt_mita,

      it_vrm      TYPE vrm_values with header line .

Selection-Screen: Begin of Block b1 With Frame Title text-001.

parameters:

  p_mitar              type Zlt_mita-M1 as listbox visible length 20

                         user-command zcc01 obligatory,

  p_mitarn             type Zlt_mita-M2 as listbox visible length 10

                         user-command zcc02.

Selection-Screen : End of Block b1.

AT SELECTION-SCREEN OUTPUT.

   Select * From ZLT_mita INTO CORRESPONDING FIELDS OF TABLE it_zlt_mita.

  LOOP at it_zlt_mita into wa_zlt_mita.

     it_vrm-key   = wa_zlt_mita-m2.

     it_vrm-text  = wa_zlt_mita-m1.

     APPEND it_vrm.

     Clear: it_vrm, wa_zlt_mita.

  ENDLOOP.

 

                 CALL FUNCTION 'VRM_SET_VALUES'

                   EXPORTING

                     id                    = 'P_mitar'

                     values                =  it_vrm[]

*                  EXCEPTIONS

*                    ID_ILLEGAL_NAME       = 1

*                    OTHERS                = 2

                           .

                 IF sy-subrc <> 0.

* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

                 ENDIF.

  CALL FUNCTION 'VRM_SET_VALUES'

    EXPORTING

      id                    = 'P_mitarn'

      values                = it_vrm[]

*   EXCEPTIONS

*     ID_ILLEGAL_NAME       = 1

*     OTHERS                = 2

            .

  IF sy-subrc <> 0.

* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

  ENDIF.

0 Kudos

Dear Anubhub,

Thanks for your suggestion. I didn't knwew that.

If I try DYNP_VALUES_READ.

Then I go witzh my code as:

Ply suggest me the inputs and may be with little explanation(if possible):

DATA: it_zlt_mita TYPE TABLE OF ZLT_mita.

Selection-Screen: Begin of Block b1 With Frame Title text-001.

parameters:

  p_mitar              type Zlt_mita-M1,

 

  p_mitarn             type Zlt_mita-M2.

Selection-Screen : End of Block b1.

AT SELECTION-SCREEN OUTPUT.

CALL FUNCTION 'DYNP_VALUES_READ'

  EXPORTING

    dyname                               =

    dynumb                               =

*   TRANSLATE_TO_UPPER                   = ' '

*   REQUEST                              = ' '

*   PERFORM_CONVERSION_EXITS             = ' '

*   PERFORM_INPUT_CONVERSION             = ' '

*   DETERMINE_LOOP_INDEX                 = ' '

*   START_SEARCH_IN_CURRENT_SCREEN       = ' '

*   START_SEARCH_IN_MAIN_SCREEN          = ' '

*   START_SEARCH_IN_STACKED_SCREEN       = ' '

*   START_SEARCH_ON_SCR_STACKPOS         = ' '

*   SEARCH_OWN_SUBSCREENS_FIRST          = ' '

*   SEARCHPATH_OF_SUBSCREEN_AREAS        = ' '

  tables

    dynpfields                           =

* EXCEPTIONS

*   INVALID_ABAPWORKAREA                 = 1

*   INVALID_DYNPROFIELD                  = 2

*   INVALID_DYNPRONAME                   = 3

*   INVALID_DYNPRONUMMER                 = 4

*   INVALID_REQUEST                      = 5

*   NO_FIELDDESCRIPTION                  = 6

*   INVALID_PARAMETER                    = 7

*   UNDEFIND_ERROR                       = 8

*   DOUBLE_CONVERSION                    = 9

*   STEPL_NOT_FOUND                      = 10

*   OTHERS                               = 11

          .

IF sy-subrc <> 0.

* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

CALL FUNCTION 'DYNP_VALUES_UPDATE'

  EXPORTING

    dyname                     =

    dynumb                     =

  tables

    dynpfields                 =

* EXCEPTIONS

*   INVALID_ABAPWORKAREA       = 1

*   INVALID_DYNPROFIELD        = 2

*   INVALID_DYNPRONAME         = 3

*   INVALID_DYNPRONUMMER       = 4

*   INVALID_REQUEST            = 5

*   NO_FIELDDESCRIPTION        = 6

*   UNDEFIND_ERROR             = 7

*   OTHERS                     = 8

          .

IF sy-subrc <> 0.

* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

What sud be the inputs in both the FMS.

Looking forward for your reply.

Regards

Chandan

0 Kudos

Hello Chandan,

    I'll suggest you to make p_mitar as listbox and code for it as earlier, so that you'll get a drop down for it.

    Make p_mitarn as a normal parameter. Now, for this, you can user DYNP_VALUES_READ where

dyname = your program name

dynumb = your current screen number (if you are using normal report, it will be 1000)

dynpfields is a table. You need to populate this manually with name of the screen fields. Upon successful execution it will contain the values of the screen-fields. Now you can get the corresponding value of employee code against name. Update the table dynpfields with the desired value of fields.

Now again user DYNP_VLAUES_UPDATE with dynpfields, with the updated value for all screen fields/p_mitarn and it will automatically populate your p_mitarn field.

I found a program RPCSTAS0, check this once to understand the use of the FM.

Regards,

Anubhab

0 Kudos

Dear Anubhab,

Thanks for your suggestion,

Plz see my code:

Type-pools: vrm.

 

DATA: it_zlt_mita       TYPE STANDARD TABLE OF Zlt_mita,

           wa_zlt_mita    TYPE zlt_mita,

           it_vrm              TYPE vrm_values with header line .

Selection-Screen: Begin of Block b1 With Frame Title text-001.

  Parameters:

    p_mitar            Type Zlt_mita-M1 as listbox visible length 20 user-command zcc01 obligatory,

    p_mitarn          Type Zlt_mita-M2.

Selection-Screen : End of Block b1.

    

AT SELECTION-SCREEN OUTPUT.

 

   Select * From ZLT_mita INTO CORRESPONDING FIELDS OF TABLE it_zlt_mita.

 

  LOOP at it_zlt_mita into wa_zlt_mita.

     it_vrm-key   = wa_zlt_mita-m2.

     it_vrm-text  = wa_zlt_mita-m1.

     APPEND it_vrm.

     Clear: it_vrm, wa_zlt_mita.

  ENDLOOP.

   

                 CALL FUNCTION 'VRM_SET_VALUES'

                   EXPORTING

                     id                    = 'P_mitar'

                     values                =  it_vrm[]

*                  EXCEPTIONS

*                    ID_ILLEGAL_NAME       = 1

*                    OTHERS                = 2

                           .

                 IF sy-subrc <> 0.

* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

                 ENDIF.

Data: dynfields type table of dynpread with header line.

     dynfields-fieldname = 'p_mitar'.

      Append dynfields.

CALL FUNCTION 'DYNP_VALUES_READ'

  EXPORTING

    dyname                               = sy-cprog

    dynumb                               = 1000    " can I use sy-dynnr here

*   TRANSLATE_TO_UPPER                   = ' '

*   REQUEST                              = ' '

*   PERFORM_CONVERSION_EXITS             = ' '

*   PERFORM_INPUT_CONVERSION             = ' '

*   DETERMINE_LOOP_INDEX                 = ' '

*   START_SEARCH_IN_CURRENT_SCREEN       = ' '

*   START_SEARCH_IN_MAIN_SCREEN          = ' '

*   START_SEARCH_IN_STACKED_SCREEN       = ' '

*   START_SEARCH_ON_SCR_STACKPOS         = ' '

*   SEARCH_OWN_SUBSCREENS_FIRST          = ' '

*   SEARCHPATH_OF_SUBSCREEN_AREAS        = ' '

  tables

    dynpfields                           =  dynfields

* EXCEPTIONS

*   INVALID_ABAPWORKAREA                 = 1

*   INVALID_DYNPROFIELD                  = 2

*   INVALID_DYNPRONAME                   = 3

*   INVALID_DYNPRONUMMER                 = 4

*   INVALID_REQUEST                      = 5

*   NO_FIELDDESCRIPTION                  = 6

*   INVALID_PARAMETER                    = 7

*   UNDEFIND_ERROR                       = 8

*   DOUBLE_CONVERSION                    = 9

*   STEPL_NOT_FOUND                      = 10

*   OTHERS                               = 11

          .

IF sy-subrc <> 0.

* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

  

CALL FUNCTION 'DYNP_VALUES_UPDATE'

  EXPORTING

    dyname                     = sy-cprog

    dynumb                     = 1000

  tables

    dynpfields                 = dynfields

* EXCEPTIONS

*   INVALID_ABAPWORKAREA       = 1

*   INVALID_DYNPROFIELD        = 2

*   INVALID_DYNPRONAME         = 3

*   INVALID_DYNPRONUMMER       = 4

*   INVALID_REQUEST            = 5

*   NO_FIELDDESCRIPTION        = 6

*   UNDEFIND_ERROR             = 7

*   OTHERS                     = 8

          .

IF sy-subrc <> 0.

* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

 

PLZ SUGGEST ME IF ANYWHERE I WENT WRONG IN MY CONCEPT AS PER YOUR SUGGESTION.

Looking forward for your further guidance.

Regards

Chandan