Screen exit deletion

Hi Experts,
I created a sub screen with number '1000', and i assigned it to the screen exit, for transaction 'EEDMIDESERVPROV01'  but in the screen exit for this the pai and and pbo modules not working, the include ZXSERVPROVZZZ not triggering with that transaction, because of screen '1000' its not working or else, i am unable understand.
if we want to delete this screen exit how can we delete. existing screen.
i have seen that when we assign a screen it will generate code in standard function group for that screen, if we delete exit project also the code will delete from the standard function group, how resolve this problem.
could any body please provide solution, how can i do the screen exit.
Regards,
Sivakumar.
Edited by: siva reddy on Jul 18, 2008 4:53 PM

Hi Siva Reddy,
For developing a screen exit you will be creating a project in CMOD or you will creating it through SPRO.
For every exit that you are implementing, it will definitely consists of function module exits. I mean if you are going for implementing screen exits then you will be provided some screen areas. So directly from the components tab you can find all these things. When you click on the necessary screen area then it will take into SE51 and there in the PBO and PAI you can implement the code.
In some cases when you dont find any screen areas then you will be going through SPRO configuration. You can implement through BAdi also. You can create your own subscreens as per your requirement.
You are saying you are not able to find the screen 1000 in your transaction. You once check whether it is activated or not first.
Still you find any more doubts there you go to SE51 and check whether the screen 1000 is activated or not, if so go to flow logic and activate all the modules. If you find inconsistency again then you delete the screen there itself in SE51.
Then you deactivate your project first and check and then check it once again.
Cheers,
Swamy Kunche

Similar Messages

  • Screen exit deletion problem

    Hi gurus,
    i implemented a screen exit, and tranported to QAS.
    then requirement changed so i deleted the screen exit in DEV and transported to QAS.
    in DEV the transaction is working fine and in QAS it goes DUMP and says DYNPRO_NOT_FOUND.
    i check all objects in QAS, structure, screen, include , CMOD project everything deleted.
    any ideas will be really appreciated.
    Thanks
    Giri

    Hi Siva Reddy,
    For developing a screen exit you will be creating a project in CMOD or you will creating it through SPRO.
    For every exit that you are implementing, it will definitely consists of function module exits. I mean if you are going for implementing screen exits then you will be provided some screen areas. So directly from the components tab you can find all these things. When you click on the necessary screen area then it will take into SE51 and there in the PBO and PAI you can implement the code.
    In some cases when you dont find any screen areas then you will be going through SPRO configuration. You can implement through BAdi also. You can create your own subscreens as per your requirement.
    You are saying you are not able to find the screen 1000 in your transaction. You once check whether it is activated or not first.
    Still you find any more doubts there you go to SE51 and check whether the screen 1000 is activated or not, if so go to flow logic and activate all the modules. If you find inconsistency again then you delete the screen there itself in SE51.
    Then you deactivate your project first and check and then check it once again.
    Cheers,
    Swamy Kunche

  • Screen Exit to disable Delete option in VL02N

    Does anyone know how to disable DELETE menu option in second screen of VL02N  <b> when the delivery are not PGID</b>??? Is there any screen exit or any way using which we can disable it.I guess transaction variant is one option other than screen but how to go about it ??? Can anyone pls help me out....

    Transaction Code - VL02N                    Change Outbound Delivery
    Exit Name           Description
    V02V0001            Sales area determination for stock transport order
    V02V0002            User exit for storage location determination
    V02V0003            User exit for gate + matl staging area determination (headr)
    V02V0004            User Exit for Staging Area Determination (Item)
    V50PSTAT            Delivery: Item Status Calculation
    V50Q0001            Delivery Monitor: User Exits for Filling Display Fields
    V50R0001            Collective processing for delivery creation
    V50R0002            Collective processing for delivery creation
    V50R0004            Calculation of Stock for POs for Shipping Due Date List
    V50S0001            User Exits for Delivery Processing
    V53C0001            Rough workload calculation in time per item
    V53C0002            W&S: RWE enhancement - shipping material type/time slot
    V53W0001            User exits for creating picking waves
    VMDE0001            Shipping Interface: Error Handling - Inbound IDoc
    VMDE0002            Shipping Interface: Message PICKSD (Picking, Outbound)
    VMDE0003            Shipping Interface: Message SDPICK (Picking, Inbound)
    VMDE0004            Shipping Interface: Message SDPACK (Packing, Inbound)
    No of Exits:         17
    Rewards if useful.................
    Minal

  • Problem activating a project with screen-exit

    Hi!
    Could somebody guide me to activate a project that has the enhancement MM06E005, with many screen-exits?
    In this enhancement, has many screen exits and I only implemented the 0101 screen (it's appears in me23n).
    When I activated the project, the CMOD activated all the screen-exits and put a flag means that all screen exits is implemented, and I only implemented the 0101 screen.
    And the problem is, I send the request with this activated project to production and the transaction ME41 generated a dump cause the screen 0301 not is created (this 0301 screen is in MM06E005 and I'm not use, I'm not implemented, but the CMOD activated).
    I was clear with my problem?
    Thanks in advanced!!!

    Hi,
    That is because it checks whether that exit has been implemented or not.
    In case it finds no screen it doesn't go and look for it.
    My concern is that in Dev if you go and check against that screen which is giving error it should say something like 'there is no screen existing ' or something to that effect but if by mistake when you click it shows a screen then there is an issue.
    Also, for the solution, what you can do is deactivate this enhancement project in production and then in Dev also deactivate it. Delete this project and assign it to a new project and then sent it to Production.
    I am sure this will solve your issue.
    I have also checked in my system and when you activate an enhancement project it put's a 'tick' mark against each screen exit meaning it's implemented even for those which have not been created and we are not experiencing any issue currently in this regard
    Hope this helps
    Regards
    Nishant

  • To add screen exits to a existing transaction ( Purchase order) - ME33k

    Hi,
    Can anyone tell me whether how to add screen exits to a particular transaction
    Transaction - ME33k.
    I need to add a screen to the existing transaction, so how do i do that
    can any one suggest me the way
    i know the BADI which can be used for the same
    ME_PROCESS_PO
    ME_PROCESS_PO_CUST
    GOS_SRV_SELECT
    but can anyone suggest me a better so as to how to implement them !
    thanks,

    Hi
    Screen exits are exits that allow you to use a reserved part of the screen (A subscreen) to display or input data. It is determined be SAP where the sub screen will be displayed. The syntax is: CALL CUSTOMER-SUBSCREEN The screen exit is not processed untill the corresponding subscreen has been created in an enhancement project, and the project has been activated. Note: Function codes are only processed in the main screens flow logic You are not allowed to enter a name for the subscreens command field You are not allowed to define GUI stauses You are not allowed to enter a value for Next screen The global data of the program is not available for the subscreen. Data for the subscreen is provided by function modules. These function modules belongs to the same function group as the subscreen Subscreens are edited with transaction CMOD. When you activate a project containg subscreens, the calling screen is regenerated and the subscreen is displayed next time you display the calling screen The developer must create the subscreen and the corresponding PBO and PAI modules How to identify screen exits Look after CALL CUSTOMER-SUBSCREEN in the screenprogram of the screen you want to modify. Use transaction CMOD menu Utillities -> SAP enhancements to search for screen exits MENU EXITS Menu exits allow you to add your own functionallity to menus. Menu exits are implemented by SAP, and are reserved menu entries in the GUI interface. The developer can add his/her own text and logic for the menu. Function codes for menu exits all start with "+" Example We want to create a new menu item in the Office menu. The text for the menu should be "Run ZTEST", and the menu will run report ZTEST. Goto transaction SE43 Area Menu Maintenance In Area Menu Paramenter type 'S000' (S triple Zero) Select Change and ignore all the warning screens Expand the office menu. In the buttom of the office tree you will find a menu named "Customer function" Double click on the text. In the pop-up screen change the text to "Run ZTEST". Note that the trsnaction code is +C01 Goto transaction SE93 and create transaction +C01 that calls report ZTEST. Now you will se the menu displayed in the office tree. If you delete transaction +C01 again, the new menu will dissapear. USER EXITS User exits (Function module exits) are exits developed by SAP. The exit is implementerd as a call to a functionmodule. The code for the function module is writeen by the developer. You are not writing the code directly in the function module, but in the include that is implemented in the function module. The naming standard of function modules for functionmodule exits is: EXIT_<3 digit suffix> The call to a functionmodule exit is implemented as: CALL CUSTOMER.-FUNCTION <3 digit suffix> Example: The program for transaction VA01 Create salesorder is SAPMV45A If you search for CALL CUSTOMER-FUNCTION i program SAPMV45A you will find ( Among other user exits): CALL CUSTOMER-FUNCTION '003' exporting xvbak = vbak xvbuk = vbuk xkomk = tkomk importing lvf_subrc = lvf_subrc tables xvbfa = xvbfa xvbap = xvbap xvbup = xvbup. The exit calls function module EXIT_SAPMV45A_003 2. How to find user exits Display the program where you are searching for and exit and search for CALL CUSTOMER-EXIT If you know the Exit name, go to transaction CMOD. Choose menu Utillities->SAP Enhancements. Enter the exit name and press enter. You will now come to a screen that shows the function module exits for the exit. 3. Using Project management of SAP Enhancements We want to create a project to enahance trasnaction VA01 Go to transaction CMOD Create a project called ZVA01 Choose the Enhancement assign radio button and press the Change button In the first column enter V45A0002 Predefine sold-to party in sales document . Note that an enhancement can only be used i 1 project. If the enhancement is allready in use, and error message will be displayed Press Save Press Components. You can now see that enhancement uses user exit EXIT_SAPMV45A_002. Double click on the exit. Now the function module is displayed. Double click on include ZXVVAU04 in the function module Insert the following code into the include: E_KUNNR = '2155'. Activate the include program. Go back to CMOD and activate the project. Goto transaction VA01 and craete a salesorder. Note that Sold-to-party now automatically is "2155" Please check if the thread given below would be of any help. http://sap.ittoolbox.com/groups/technical-functional/sap-r3-dev/menu-exits-72696# http://wiki.ittoolbox.com/index.php/HOWTO:Implement_a_screen_exit_to_a_standard_SAP_transaction

  • Screen exit for RF screen LM61

    Hi all,
       I have created a screen exit SAPLXLHU 1765 for the dummy RF screen SAPLLMOB 1765.
      The new screen has to be part of the XLHU function group, as the screen to be modified is for packing by delivery through the RF transaction LM61.
      I have saved this new screen as a local object. and now I am unable to change it or move it into a workbench request by changing the dev class. Even if I delete the screen and create it again it directly saves it as a local object without promting for the development class.
    Is there any other way to assign this to the request.
    Thanks in advance
    Sheetal.

    Hi Sheetal,
    Very interesting, I to am working on a similar enhancement for an RF screen in SAPLXLRF (not SAPLXLHU but the concept is the same). I also saved the enhancement screen as a local object to allow testing but can no longer add it to a development package or transport. Even if I delete and recreate the screen, it still ends up as local.
    I do not need to transport the enhancement screen as yet but will in future. I was thinking of raising a customer message with SAP to see if they could help.
    Let me know if you manage to find a solution.
    Regards
    Che

  • Screen Exit in Transaction LM50

    Hi Experts,
    I created a screen exit for transaction LM50 (Count Inventory By System Guided). I created the subscreen SAPLXLRF 7152 because i need to add a field, this screen replace screen 2152.
    In transaction CMOD i created and activated a new project for enhancement MWMRF152, this enhancement contains the function exits EXIT_SAPLLMOB_110 for PAI data, and EXIT_SAPLLMOB_420 for PBO.
    Everything seems to be fine, but when i execute transaction LM50, the subscreen SAPLXLRF 7152 does not dilsplay the data.
    Somebody knows how could i display the data in subscreen SAPLXLRF 7152?
    Best regards,
    Alejandro López

    Hi Alejandro,
    I have similar kind of requirement. But i am not getting any information on how to activate these kind of user exits.
    I need to add verification for field door of tcode LM05. I am using user exit MWMRF302.
    I have created 9302 screen in program SAPLXLRF and deleted ok_code from it, changed it to sub-screen.
    Then i have created a new entry in the spro (screen management) with screen variant 1.
    I ahve created a project for the enhancement and activated it.
    Even i have assigned the variant 01 to the user in LM00 tcode.
    But I am unable to see my screen in LM05 tcode. It is still displaying the old logical screen 0302.
    Can you please help me with this issue?
    Thanks,
    Archana

  • Menu Exit  & Screen Exit Implementation Step by Step Implementation Needed:

    Hi Experts,
    I am in need of how to implement Menu Exit and Screen Exit using a simple
    example.If any step by step implementation through snapshots were it will be
    helpful instead just some links that doesn't work after some steps due to version
    changes or not proper steply explanations.Points will be rewarded accordingly.
    Thanks for your help in Advance.

    Hi Sudha,
    Screen exits are exits that allow you to use a reserved part of the screen (A subscreen) to display or input data.
    It is determined be SAP where the sub screen will be displayed.
    The syntax is: CALL CUSTOMER-SUBSCREEN
    The screen exit is not processed untill the corresponding subscreen has been created in an enhancement project, and the project has been activated.
    Note:
    Function codes are only processed in the main screens flow logic
    You are not allowed to enter a name for the subscreens command field
    You are not allowed to define GUI stauses
    You are not allowed to enter a value for Next screen
    The global data of the program is not available for the subscreen. Data for the subscreen is provided by function modules. These function modules belongs to the same function group as the subscreen
    Subscreens are edited with transaction CMOD. When you activate a project containg subscreens, the calling screen is regenerated and the subscreen is displayed next time you display the calling screen
    The developer must create the subscreen and the corresponding PBO and PAI modules
    How to identify screen exits
    Look after CALL CUSTOMER-SUBSCREEN in the screenprogram of the screen you want to modify.
    Use transaction CMOD menu Utillities -> SAP enhancements to search for screen exits
    MENU EXITS
    Menu exits allow you to add your own functionallity to menus. Menu exits are implemented by SAP, and are reserved menu entries in the GUI interface. The developer can add his/her own text and logic for the menu.
    Function codes for menu exits all start with "+"
    Example
    We want to create a new menu item in the Office menu. The text for the menu should be "Run ZTEST", and the menu will
    run report ZTEST.
    Goto transaction SE43 Area Menu Maintenance
    In Area Menu Paramenter type 'S000' (S triple Zero)
    Select Change and ignore all the warning screens
    Expand the office menu. In the buttom of the office tree you will find a menu named "Customer function"
    Double click on the text. In the pop-up screen change the text to "Run ZTEST". Note that the trsnaction code is +C01
    Goto transaction SE93 and create transaction +C01 that calls report ZTEST.
    Now you will se the menu displayed in the office tree. If you delete transaction +C01 again, the new menu will dissapear.
    USER EXITS
    User exits (Function module exits) are exits developed by SAP. The exit is implementerd as a call to a functionmodule. The code for the function module is writeen by the developer. You are not writing the code directly in the function module, but in the include that is implemented in the function module.
    The naming standard of function modules for functionmodule exits is: EXIT_<program name><3 digit suffix>
    The call to a functionmodule exit is implemented as: CALL CUSTOMER.-FUNCTION <3 digit suffix>
    Example:
    The program for transaction VA01 Create salesorder is SAPMV45A
    If you search for CALL CUSTOMER-FUNCTION i program SAPMV45A you will find ( Among other user exits):
    CALL CUSTOMER-FUNCTION '003'
    exporting
    xvbak = vbak
    xvbuk = vbuk
    xkomk = tkomk
    importing
    lvf_subrc = lvf_subrc
    tables
    xvbfa = xvbfa
    xvbap = xvbap
    xvbup = xvbup.
    The exit calls function module EXIT_SAPMV45A_003
    2. How to find user exits
    Display the program where you are searching for and exit and search for CALL CUSTOMER-EXIT
    If you know the Exit name, go to transaction CMOD. Choose menu Utillities->SAP Enhancements. Enter the exit name and press enter.
    You will now come to a screen that shows the function module exits for the exit.
    3. Using Project management of SAP Enhancements
    We want to create a project to enahance trasnaction VA01
    Go to transaction CMOD
    Create a project called ZVA01
    Choose the Enhancement assign radio button and press the Change button
    In the first column enter V45A0002 Predefine sold-to party in sales document . Note that an enhancement can only be used i 1 project. If the enhancement is allready in use, and error message will be displayed
    Press Save
    Press Components. You can now see that enhancement uses user exit EXIT_SAPMV45A_002. Double click on the exit.
    Now the function module is displayed. Double click on include ZXVVAU04 in the function module
    Insert the following code into the include: E_KUNNR = '2155'.
    Activate the include program. Go back to CMOD and activate the project.
    Goto transaction VA01 and craete a salesorder. Note that Sold-to-party now automatically is "2155"
    Please check if the thread given below would be of any help.
    http://sap.ittoolbox.com/groups/technical-functional/sap-r3-dev/menu-exits-72696#
    http://wiki.ittoolbox.com/index.php/HOWTO:Implement_a_screen_exit_to_a_standard_SAP_transaction
    Regards
    KK

  • Screen Exit for transaction IE02

    Hi All,
    I have a requirement for making the Equipment description field mandatory in IE02 transaction as it can be deleted.
    Could any one tell me if there is any screen exit or any other procedure to achieve the above requirement.
    Thank you.
    Regards,
    Venkata Narendra

    chk these user exits
    IEQM0001            Add. checks for equip. installation at functional locations       
    IEQM0002            Additional checks for definition of equipment hierarchies         
    IEQM0003            Additional checks before equipment update                         
    IEQM0004            Object is allowed for contract partner (Order->MaintCont.)        
    IEQM0005            Object allowed for SD contract (MaintContract->MaintCont.)        
    IEQM0006            Object allowed for SD contract (Maintain maintenance cont.)       
    IEQM0007            Check/change manufacturer field in equipment master   
    or u can also try using a field exit for the field..     
    i think u can give a check in ur field exit for the field to be filled or pop up a message if its not. this may work out for u   
    Regards,
    Bikash
    Message was edited by: Bikash  Agarwal

  • Screen exit-user exit- menu exit.

    What are these and what is the difference?They look so similar.
    Help me to differentiate please.
    Points guaranteed man.
    Nik

    Hi Nikhil,
    I am giving you a part of a document.
    Hope it helps.
    <b>Screen exits</b> are exits that allow you to use a reserved part of the screen (A subscreen) to display or input data.
    It is determined be SAP where the sub screen will be displayed.
    The syntax is: CALL CUSTOMER-SUBSCREEN
    The screen exit is not processed untill the corresponding subscreen has been created in an enhancement project, and the project has been activated.
    Note:
    Function codes are only processed in the main screens flow logic
         You are not allowed to enter a name for the subscreens command field
         You are not allowed to define GUI stauses
         You are not allowed to enter a value for Next screen
         The global data of the program is not available for the subscreen. Data for the subscreen is provided by function modules. These function modules belongs to the same function group as the subscreen
         Subscreens are edited with transaction CMOD. When you activate a project containg subscreens, the calling screen is regenerated and the subscreen is displayed next time you display the calling screen
         The developer must create the subscreen and the corresponding PBO and PAI modules
    How to identify screen exits
    Look after CALL CUSTOMER-SUBSCREEN in the screenprogram of the screen you want to modify.
         Use transaction CMOD menu Utillities -> SAP enhancements to search for screen exits
    <b>MENU EXITS</b>
    Menu exits allow you to add your own functionallity to menus. Menu exits are implemented by SAP, and are reserved menu entries in the GUI interface. The developer can add his/her own text and logic for the menu.
    Function codes for menu exits all start with "+"
    Example
    We want to create a new menu item in the Office menu. The text for the menu should be "Run ZTEST", and the menu will
    run report ZTEST.
    Goto transaction SE43 Area Menu Maintenance
    In Area Menu Paramenter type 'S000' (S triple Zero)
    Select Change and ignore all the warning screens
    Expand the office menu. In the buttom of the office tree you will find a menu named "Customer function"
    Double click on the text. In the pop-up screen change the text to "Run ZTEST".  Note that the trsnaction code is +C01
    Goto transaction SE93 and create transaction +C01 that calls report ZTEST.
    Now you will se the menu displayed in the office tree. If you delete transaction +C01 again, the new menu will dissapear.
    <b>USER EXITS</b>
    User exits (Function module exits) are exits developed by SAP. The exit is implementerd as a call to a functionmodule. The code for the function module is writeen by the developer. You are not writing the code directly in the function module, but in the include that is implemented in the function module.
    The naming standard of function modules for functionmodule exits is:  EXIT_<program name><3 digit suffix>
    The call to a functionmodule exit is implemented as: CALL CUSTOMER.-FUNCTION <3 digit suffix>
    Example:
    The program for transaction VA01 Create salesorder is SAPMV45A
    If you search for CALL CUSTOMER-FUNCTION i program SAPMV45A you will find ( Among other user exits):
    CALL CUSTOMER-FUNCTION '003'
      exporting
        xvbak   = vbak
        xvbuk   = vbuk
        xkomk   = tkomk
      importing
        lvf_subrc = lvf_subrc
      tables
        xvbfa = xvbfa
        xvbap = xvbap
        xvbup = xvbup.
    The exit calls function module EXIT_SAPMV45A_003
    2. How to find user exits
    Display the program where you are searching for and exit and search for CALL CUSTOMER-EXIT
    If you know the Exit name, go to transaction CMOD. Choose menu Utillities->SAP Enhancements. Enter the exit name and press enter.
    You will now come to a screen that shows the function module exits for the exit.
    3. Using Project management of SAP Enhancements
    We want to create a project to enahance trasnaction VA01
    Go to transaction CMOD
         Create a project called ZVA01
         Choose the Enhancement assign radio button and press the Change button
         In the first column enter V45A0002 Predefine sold-to party in sales document . Note that an enhancement can only be used i 1 project. If the enhancement is allready in use, and error message will be displayed
         Press Save
         Press Components. You can now see that enhancement uses user exit EXIT_SAPMV45A_002. Double click on the exit.
         Now the function module is displayed. Double click on include ZXVVAU04 in the function module
         Insert the following code into the include: E_KUNNR = '2155'.
    Activate the include program. Go back to CMOD and activate the project.
         Goto transaction VA01 and craete a salesorder. Note that Sold-to-party now automatically is "2155"
    Regards,
    Suruchi

  • User and screen exit for BP transaction

    Hi,
    We need to add a few z-fields to BP (Business Partner) address tab and save data into database. Please let me know if any user or screen exits are available.
    Thank you.

    hi
    use this program to get all the relevant enhancement and based on that ....use the relevant one and write ur piece of code..
    & Report  ZPJA_PM002 (V2)                                            &
    & Text Elements:                                                     &
    & P_DEVC Show user-exits from development class                      &
    & P_LIMIT Limit submit program selection                             &
    & P_FUNC Show function modules                                       &
    & P_SUBM Show submit programs                                        &
    & S01    Selection data (TCode takes precedence  over program name)  &
    report  zpja_pm002
      no standard page heading
      line-size 158.
    *tables: enlfdir.     "Additional Attributes for Function Modules
    data: tabix      like sy-tabix,
          w_linnum   type i,
          w_off      type i,
          w_index    like sy-tabix,
          w_include  like trdir-name,
          w_prog     like trdir-name,
          w_incl     like trdir-name,
          w_area     like rs38l-area,
          w_level,
          w_str(50)  type c,
          w_funcname like tfdir-funcname.
    constants: c_fmod(40) type c value 'Function modules selected: ',
               c_subm(40) type c value 'Submit programs selected: ',
               c_col1(12) type c value 'Enhanmt Type',
               c_col2(40) type c value 'Enhancement',
               c_col3(30) type c value 'Program/Include',
               c_col4(20) type c value 'Enhancement Name',
               c_col5(40) type c value 'Enhancement Description'.
    Work Areas: ABAP Workbench
    data: begin of wa_d010inc.
    data: master type d010inc-master.
    data: end of wa_d010inc.
    data: begin of wa_tfdir.
    data: funcname type tfdir-funcname,
          pname    type tfdir-pname,
          include  type tfdir-include.
    data: end of wa_tfdir.
    data: begin of wa_tadir.
    data: devclass type tadir-devclass.
    data: end of wa_tadir.
    data: begin of wa_tstc.
    data: pgmna type tstc-pgmna.
    data: end of wa_tstc.
    data: begin of wa_tstcp.
    data: param type tstcp-param.
    data: end of wa_tstcp.
    data: begin of wa_enlfdir.
    data: area type enlfdir-area.
    data: end of wa_enlfdir.
    Work Areas: BADIs
    data: begin of wa_sxs_attr.
    data: exit_name type sxs_attr-exit_name.
    data: end of wa_sxs_attr.
    data: begin of wa_sxs_attrt.
    data: text type sxs_attrt-text.
    data: end of wa_sxs_attrt.
    Work Areas: Enhancements
    data: begin of wa_modsap.
    data: member type modsap-member.
    data: end of wa_modsap.
    data: begin of wa_modsapa.
    data: name type modsapa-name.
    data: end of wa_modsapa.
    data: begin of wa_modsapt.
    data: modtext type modsapt-modtext.
    data: end of wa_modsapt.
    Work Areas: Business Transaction Events
    data: begin of wa_tbe01t.
    data: text1 type tbe01t-text1.
    data: end of wa_tbe01t.
    data: begin of wa_tps01t.
    data: text1 type tps01t-text1.
    data: end of wa_tps01t.
    user-exits
    types: begin of t_userexit,
          type(12) type c,
          pname    like trdir-name,
          txt(300),
          level    type c,
          modname(30) type c,
          modtext(40) type c,
    end of t_userexit.
    data: i_userexit type standard table of t_userexit with header line.
    Function module developmnet classes
    types: begin of t_devclass,
          clas   like trdir-clas,
    end of t_devclass.
    data: i_devclass type standard table of t_devclass with header line.
    Submit programs
    types: begin of t_submit,
          pname     like trdir-name,
          level,
          done,
    end of t_submit.
    data: i_submit type standard table of t_submit with header line.
    Source code
    types: begin of t_sourcetab,                        "#EC * (SLIN lügt!)
            line(200),                                  "#EC * (SLIN lügt!)
          end of t_sourcetab.                           "#EC * (SLIN lügt!)
    data: sourcetab type standard table of t_sourcetab with header line.
    data c_overflow(30000) type c.
    Description of an ABAP/4 source analysis token
    data: i_stoken type standard table of stokex with header line.
    data wa_stoken like i_stoken.
    Description of an ABAP/4 source analysis statement
    data: i_sstmnt type standard table of sstmnt with header line."#EC
    keywords for searching ABAP code
    types: begin of t_keywords,
          word(30),
    end of t_keywords.
    data: keywords type standard table of t_keywords with header line.
    function modules within program
    types: begin of t_fmodule,
          name   like rs38l-name,
          pname  like trdir-name,
          pname2 like trdir-name,
          level,
          bapi,
          done,
    end of t_fmodule.
    data: i_fmodule type standard table of t_fmodule with header line.
    & Selection Options                                                  &
    selection-screen begin of block selscr1 with frame title text-s01.
    parameter: p_pname like trdir-name memory id rid,
               p_tcode like syst-tcode,
               p_limit(4) type n default 100,
               p_devc  like rihea-dy_ofn default ' ',
               p_func  like rihea-dy_ofn default ' ',
               p_subm  like rihea-dy_ofn default ' '.
    selection-screen end of block selscr1.
    & START-OF-SELECTION                                                 &
    start-of-selection.
      if p_pname is initial and p_tcode is initial.
        message e008(hrfpm).  "Make entry on the selection screen
        stop.
      endif.
    ensure P_LIMIT is not zero.
      if p_limit = 0.
        p_limit = 1.
      endif.
      perform data_select.
      perform get_submit_data.
      perform get_fm_data.
      perform get_additional_data.
      perform data_display.
    & Form DATA_SELECT                                                   &
    form data_select.
    data selection message to sap gui
      call function 'SAPGUI_PROGRESS_INDICATOR'
        destination 'SAPGUI'
        keeping logical unit of work
        exporting
          text                  = 'Get programs/includes'       "#EC NOTEXT
        exceptions
          system_failure
          communication_failure
        .                                                       "#EC *
    determine search words
      keywords-word = 'CALL'.
      append keywords.
      keywords-word = 'FORM'.
      append keywords.
      keywords-word = 'PERFORM'.
      append keywords.
      keywords-word = 'SUBMIT'.
      append keywords.
      keywords-word = 'INCLUDE'.
      append keywords.
      if not p_tcode is initial.
    get program name from TCode
        select single pgmna from tstc into wa_tstc-pgmna
                     where tcode eq p_tcode.
        if not wa_tstc-pgmna is initial.
          p_pname = wa_tstc-pgmna.
    TCode does not include program name, but does have refereve TCode
        else.
          select single param from tstcp into wa_tstcp-param
                       where tcode eq p_tcode.
          if sy-subrc = 0.
            check wa_tstcp-param(1)   = '/'.
            check wa_tstcp-param+1(1) = '*'.
            if wa_tstcp-param ca ' '.
            endif.
            w_off = sy-fdpos + 1.
            subtract 2 from sy-fdpos.
            if sy-fdpos gt 0.
              p_tcode = wa_tstcp-param+2(sy-fdpos).
            endif.
            select single pgmna from tstc into wa_tstc-pgmna
                   where tcode eq p_tcode.
            p_pname = wa_tstc-pgmna.
            if sy-subrc <> 0.
              message e110(/saptrx/asc) with 'No program found for: '
    p_tcode."#EC NOTEXT
              stop.
            endif.
          else.
            message e110(/saptrx/asc) with 'No program found for: ' p_tcode.
    "#EC NOTEXT
            stop.
          endif.
        endif.
      endif.
    Call customer-function aus Program coding
      read report p_pname into sourcetab.
      if sy-subrc > 0.
        message e017(enhancement) with p_pname raising no_program."#EC *
      endif.
      scan abap-source sourcetab tokens     into i_stoken
                                 statements into i_sstmnt
                                 keywords   from keywords
                                 overflow into c_overflow
                                 with includes.
                                 WITH ANALYSIS.
      if sy-subrc > 0. "keine/syntakt. falsche Ablauflog./Fehler im Skanner
        message e130(enhancement) raising syntax_error.         "#EC *
      endif.
    check I_STOKEN for entries
      clear w_linnum.
      describe table i_stoken lines w_linnum.
      if w_linnum gt 0.
        w_level = '0'.
        w_prog = ''.
        w_incl = ''.
        perform data_search tables i_stoken using w_level w_prog w_incl.
      endif.
    endform.                        "DATA_SELECT
    & Form GET_FM_DATA                                                   &
    form get_fm_data.
    data selection message to sap gui
      call function 'SAPGUI_PROGRESS_INDICATOR'
        destination 'SAPGUI'
        keeping logical unit of work
        exporting
          text                  = 'Get function module data'    "#EC NOTEXT
        exceptions
          system_failure
          communication_failure
        .                                                       "#EC *
    Function module data
      sort i_fmodule by name.
      delete adjacent duplicates from i_fmodule comparing name.
      loop at i_fmodule where done  ne 'X'.
        clear:   i_stoken, i_sstmnt, sourcetab, wa_tfdir, w_include .
        refresh: i_stoken, i_sstmnt, sourcetab.
        clear wa_tfdir.
        select single funcname pname include from tfdir into wa_tfdir
                                where funcname = i_fmodule-name.
        check sy-subrc = 0.
        call function 'FUNCTION_INCLUDE_SPLIT'
          exporting
            program = wa_tfdir-pname
          importing
            group   = w_area.
        concatenate 'L' w_area 'U' wa_tfdir-include into w_include.
        i_fmodule-pname  = w_include.
        i_fmodule-pname2 = wa_tfdir-pname.
        modify i_fmodule.
        read report i_fmodule-pname into sourcetab.
        if sy-subrc = 0.
          scan abap-source sourcetab tokens     into i_stoken
                                     statements into i_sstmnt
                                     keywords   from keywords
                                     with includes.
          if sy-subrc > 0.
            message e130(enhancement) raising syntax_error.
          endif.
    check i_stoken for entries
          clear w_linnum.
          describe table i_stoken lines w_linnum.
          if w_linnum gt 0.
            w_level = '1'.
            w_prog  = i_fmodule-pname2.
            w_incl =  i_fmodule-pname.
            perform data_search tables i_stoken using w_level w_prog w_incl.
          endif.
        endif.
      endloop.
      if p_devc = 'X'.
        loop at i_fmodule.
          clear: wa_tadir, wa_enlfdir.
          select single area from enlfdir into wa_enlfdir-area
                                where funcname = i_fmodule-name.
          check not wa_enlfdir-area is initial.
          select single devclass into wa_tadir-devclass
                          from tadir where pgmid    = 'R3TR'
                                       and object   = 'FUGR'
                                       and obj_name = wa_enlfdir-area.
          check not wa_tadir-devclass is initial.
          move wa_tadir-devclass to i_devclass-clas.
          append i_devclass.
          i_fmodule-done = 'X'.
          modify i_fmodule.
        endloop.
        sort i_devclass.
        delete adjacent duplicates from i_devclass.
      endif.
    endform.                        "GET_FM_DATA
    & Form GET_SUBMIT_DATA                                               &
    form get_submit_data.
    data selection message to sap gui
      call function 'SAPGUI_PROGRESS_INDICATOR'
        destination 'SAPGUI'
        keeping logical unit of work
        exporting
          text                  = 'Get submit data'             "#EC NOTEXT
        exceptions
          system_failure
          communication_failure
        .                                                       "#EC *
      sort i_submit.
      delete adjacent duplicates from i_submit comparing pname.
      w_level = '0'.
      loop at i_submit where done ne 'X'.
        clear:   i_stoken, i_sstmnt, sourcetab.
        refresh: i_stoken, i_sstmnt, sourcetab.
        read report i_submit-pname into sourcetab.
        if sy-subrc = 0.
          scan abap-source sourcetab tokens     into i_stoken
                                     statements into i_sstmnt
                                     keywords   from keywords
                                     with includes.
          if sy-subrc > 0.
           message e130(enhancement) raising syntax_error.
            continue.
          endif.
    check i_stoken for entries
          clear w_linnum.
          describe table i_stoken lines w_linnum.
          if w_linnum gt 0.
            w_prog  = i_submit-pname.
            w_incl = ''.
            perform data_search tables i_stoken using w_level w_prog w_incl.
          endif.
        endif.
    restrict number of submit program selected for processing
        describe table i_submit lines w_linnum.
        if w_linnum ge p_limit.
          w_level = '1'.
        endif.
        i_submit-done = 'X'.
        modify i_submit.
      endloop.
    endform.                       "GET_SUBMIT_DATA
    & Form DATA_SEARCH                                                   &
    form data_search tables p_stoken structure stoken
                            using p_level p_prog p_incl.
      loop at p_stoken.
        clear i_userexit.
        tabix = sy-tabix + 1.
        i_userexit-level = p_level.
        if i_userexit-level = '0'.
          if p_incl is initial.
            i_userexit-pname = p_pname.
          else.
            concatenate  p_pname '/' p_incl into i_userexit-pname.
          endif.
        else.
          if p_incl is initial.
            i_userexit-pname = p_prog.
          else.
            concatenate  p_prog '/' p_incl into i_userexit-pname.
          endif.
        endif.
    Include
        if p_stoken-str eq 'INCLUDE'.
          check p_level eq '0'.    " do not perform for function modules
    *(2nd pass)
          w_index = sy-tabix + 1.
          read table p_stoken index w_index into wa_stoken.
          check not wa_stoken-str cs 'STRUCTURE'.
          check not wa_stoken-str cs 'SYMBOL'.
          read table i_submit with key pname = wa_stoken-str.
          if sy-subrc <> 0.
            i_submit-pname = wa_stoken-str.
            i_submit-level = p_level.
            append i_submit.
          endif.
        endif.
    Enhancements
        if p_stoken-str eq 'CUSTOMER-FUNCTION'.
          clear w_funcname.
          read table p_stoken index tabix.
          translate p_stoken-str using ''' '.
          condense p_stoken-str.
          if p_prog is initial.
            concatenate 'EXIT' p_pname p_stoken-str into w_funcname
                         separated by '_'.
          else.
            concatenate 'EXIT' p_prog p_stoken-str into w_funcname
                   separated by '_'.
          endif.
          select single member from modsap into wa_modsap-member
                where member = w_funcname.
          if sy-subrc = 0.   " check for valid enhancement
            i_userexit-type = 'Enhancement'.
            i_userexit-txt  = w_funcname.
            append i_userexit.
          else.
            clear wa_d010inc.
            select single master into wa_d010inc-master
                  from d010inc
                     where include = p_prog.
            concatenate 'EXIT' wa_d010inc-master p_stoken-str into
    w_funcname
                   separated by '_'.
            i_userexit-type = 'Enhancement'.
            i_userexit-txt  = w_funcname.
          endif.
        endif.
    BADIs
        if p_stoken-str cs 'cl_exithandler='.
          w_index = sy-tabix + 4.
          read table p_stoken index w_index into wa_stoken.
          i_userexit-txt = wa_stoken-str.
          replace all occurrences of '''' in i_userexit-txt with space.
          i_userexit-type = 'BADI'.
          append i_userexit.
        endif.
    Business transaction events
        if p_stoken-str cs 'OPEN_FI_PERFORM'.
          i_userexit-type = 'BusTrEvent'.
          i_userexit-txt = p_stoken-str.
          replace all occurrences of '''' in i_userexit-txt with space.
          i_userexit-modname =  i_userexit-txt+16(8).
          case i_userexit-txt+25(1).
            when 'E'.
              clear wa_tbe01t.
              select single text1 into wa_tbe01t-text1 from tbe01t
                               where event = i_userexit-txt+16(8)
                                 and spras = sy-langu.
              if wa_tbe01t-text1 is initial.
                i_userexit-modtext = ''.            "#EC NOTEXT
              else.
                i_userexit-modtext = wa_tbe01t-text1.
              endif.
              i_userexit-modname+8 = '/P&S'.                    "#EC NOTEXT
            when 'P'.
              clear wa_tps01t.
              select single text1 into wa_tps01t-text1 from tps01t
                               where procs = i_userexit-txt+16(8)
                                 and spras = sy-langu.
              i_userexit-modtext = wa_tps01t-text1.
              i_userexit-modname+8 = '/Process'.
          endcase.
          append i_userexit.
        endif.
    Program exits
        if p_stoken-str cs 'USEREXIT_'.
          i_userexit-type = 'Program Exit'.
          i_userexit-txt = p_stoken-str.
          replace all occurrences of '''' in i_userexit-txt with space.
          append i_userexit.
        endif.
    Submit programs
        if p_stoken-str cs 'SUBMIT'.
          check p_level eq '0'.    " do not perform for function modules
    *(2nd pass)
          check not p_stoken-str cs '_'.   " ensure not SUBMIT_XXX
          w_index = sy-tabix + 1.
          read table p_stoken index w_index into wa_stoken.
          check not wa_stoken-str cs '_'.   " ensure not SUBMIT_XXX
          replace all occurrences of '''' in wa_stoken-str with space.
          read table i_submit with key pname = wa_stoken-str.
          if sy-subrc <> 0.
            i_submit-pname = wa_stoken-str.
            i_submit-level = p_level.
            append i_submit.
          endif.
        endif.
    Perform routines (which reference external programs)
        if p_stoken-str cs 'PERFORM'.
          check p_level eq '0'.    " do not perform for function modules
    *(2nd pass)
          w_index = sy-tabix + 1.
          read table p_stoken index w_index into wa_stoken.
          if not wa_stoken-ovfl is initial.
            w_off = wa_stoken-off1 + 10.
            w_str = c_overflow+w_off(30).
            find ')' in w_str match offset w_off.
            w_off = w_off + 1.
            wa_stoken-str = w_str(w_off).
          endif.
          check wa_stoken-str cs '('.
          w_off = 0.
          while sy-subrc  = 0.
            if wa_stoken-str+w_off(1) eq '('.
              replace section offset w_off length 1 of wa_stoken-str with ''
              replace all occurrences of ')' in wa_stoken-str with space.
              read table i_submit with key pname = wa_stoken-str.
              if sy-subrc <> 0.
                i_submit-pname = wa_stoken-str.
                append i_submit.
              endif.
              exit.
            else.
              replace section offset w_off length 1 of wa_stoken-str with ''
              shift wa_stoken-str left deleting leading space.
            endif.
          endwhile.
        endif.
    Function modules
        if p_stoken-str cs 'FUNCTION'.
          clear i_fmodule.
          check p_level eq '0'.    " do not perform for function modules
    *(2nd pass)
          w_index = sy-tabix + 1.
          read table p_stoken index w_index into wa_stoken.
         if wa_stoken-str cs 'WF_'.
         if wa_stoken-str cs 'IF_'.
           break-point.
         endif.
          if wa_stoken-str cs 'BAPI'.
            i_fmodule-bapi = 'X'.
          endif.
          replace first occurrence of '''' in wa_stoken-str with space.
          replace first occurrence of '''' in wa_stoken-str with space.
          if sy-subrc = 4.   " didn't find 2nd quote (ie name truncated)
            clear wa_tfdir.
            concatenate wa_stoken-str '%' into wa_stoken-str.
            select single funcname into wa_tfdir-funcname from tfdir
                         where funcname like wa_stoken-str.
            if sy-subrc = 0.
              i_fmodule-name = wa_tfdir-funcname.
            else.
              continue.
            endif.
          else.
            i_fmodule-name = wa_stoken-str.
          endif.
          i_fmodule-level = p_level.
          append i_fmodule.
        endif.
      endloop.
    endform.                        "DATA_SEARCH
    & Form GET_ADDITIONAL_DATA                                           &
    form get_additional_data.
    data selection message to sap gui
      call function 'SAPGUI_PROGRESS_INDICATOR'
        destination 'SAPGUI'
        keeping logical unit of work
        exporting
          text                  = 'Get additional data'         "#EC NOTEXT
        exceptions
          system_failure
          communication_failure
        .                                                       "#EC *
      loop at i_userexit.
    Enhancement data
        if  i_userexit-type cs 'Enh'.
          clear: wa_modsapa.
          select single name into wa_modsapa-name from modsap
                            where member = i_userexit-txt.
          check sy-subrc = 0.
          i_userexit-modname = wa_modsapa-name.
          clear wa_modsapt.
          select single modtext into wa_modsapt-modtext from modsapt
                            where name = wa_modsapa-name
                                         and sprsl = sy-langu.
          i_userexit-modtext = wa_modsapt-modtext.
        endif.
    BADI data
        if  i_userexit-type eq 'BADI'.
          clear wa_sxs_attr.
          select single exit_name into wa_sxs_attr-exit_name from sxs_attr
                                        where exit_name = i_userexit-txt.
          if sy-subrc = 0.
            i_userexit-modname = i_userexit-txt.
          else.
            i_userexit-modname = 'Dynamic call'.                "#EC NOTEXT
          endif.
          clear wa_sxs_attrt.
          select single text into wa_sxs_attrt-text from sxs_attrt
                                         where exit_name =
    wa_sxs_attr-exit_name
                                           and sprsl = sy-langu.
          i_userexit-modtext = wa_sxs_attrt-text.
        endif.
        modify i_userexit.
      endloop.
    get enhancements via program package
      clear wa_tadir.
      select single devclass into wa_tadir-devclass from tadir
                                 where pgmid    = 'R3TR'
                                   and object   = 'PROG'
                                   and obj_name = p_pname.
      if sy-subrc = 0.
        clear: wa_modsapa, wa_modsapt.
        select name from modsapa into wa_modsapa-name
                              where devclass = wa_tadir-devclass.
          select single modtext from modsapt into wa_modsapt-modtext
                              where name = wa_modsapa-name
                                and sprsl = sy-langu.
          read table i_userexit with key modname = wa_modsapa-name.
          if sy-subrc <> 0.
            i_userexit-modtext = wa_modsapt-modtext.
            i_userexit-type = 'Enhancement'.                    "#EC NOTEXT
            i_userexit-modname  = wa_modsapa-name.
            i_userexit-txt = 'Determined from program DevClass'."#EC NOTEXT
            i_userexit-pname = 'Unknown'.                       "#EC NOTEXT
            append i_userexit.
          endif.
        endselect.
      endif.
    endform.                        "GET_ADDITIONAL_DATA
    & Form DATA_DISPLAY                                                  &
    form data_display.
    data selection message to sap gui
      call function 'SAPGUI_PROGRESS_INDICATOR'
        destination 'SAPGUI'
        keeping logical unit of work
        exporting
          text                  = 'Prepare screen for display'  "#EC NOTEXT
        exceptions
          system_failure
          communication_failure
        .                                                       "#EC *
      sort i_userexit by type txt modname.
      delete adjacent duplicates from i_userexit comparing txt modname.
    format headings
      write: 'Enhancements from main program'.                  "#EC NOTEXT
      write: /.
      uline.
      format color col_heading.
      write: /    sy-vline,
             (12) c_col1,                    "Enhanmt Type
                  sy-vline,
             (40) c_col2,                    "Enhancement
                  sy-vline,
             (30) c_col3,                    "Program/Include
                  sy-vline,
             (20) c_col4,                    "Enhancement name
                  sy-vline,
             (40) c_col5,                    "Enhancement description
                  sy-vline.
      format reset.
      uline.
    format lines
      loop at i_userexit.
    set line colour
        case i_userexit-type.
          when 'Enhancement'.
            format color 3 intensified off.
          when 'BADI'.
            format color 4 intensified off.
          when 'BusTrEvent'.
            format color 5 intensified off.
          when 'Program Exit'.
            format color 6 intensified off.
          when others.
            format reset.
        endcase.
        write: / sy-vline,
                 i_userexit-type,
                 sy-vline,
                 i_userexit-txt(40),
                 sy-vline,
                 i_userexit-pname(30),
                 sy-vline,
                 i_userexit-modname(20),
                 sy-vline,
                 i_userexit-modtext(40),
                 sy-vline.
      endloop.
      format reset.
      uline.
    user-exits from development class of function modules
      if p_devc = 'X'.
        write: /.
        write: / 'User-exits from function module development class'."#EC
    *NOTEXT
        write: 157''.
        uline (90).
        write: 157''.
        loop at i_devclass.
          clear wa_modsapa.
          select name from modsapa into wa_modsapa
                       where devclass = i_devclass-clas.
         select single name modtext into corresponding fields of wa_modsapt
                                       from modsapt
                                         where name  = wa_modsapa-name
                                           and sprsl = sy-langu.
            format color 3 intensified off.
            write: / sy-vline,
                     (12) 'Enhancement',
                     sy-vline,
                    wa_modsapa-name,
                    sy-vline,
                    wa_modsapt-modtext,
                    sy-vline.
          endselect.
        endloop.
        uline (90).
        format reset.
      endif.
      describe table i_fmodule lines w_linnum.
      write: / c_fmod , at 35 w_linnum.                         "#EC NOTEXT
      write: 157''.
      if p_func = 'X'.
    display fuction modules used in program
        uline (38).
        write: 157''.
        loop at i_fmodule.
          write: sy-vline,
                 i_fmodule-name,
                 sy-vline,
                 i_fmodule-bapi,
                 sy-vline.
          write: 157''.
        endloop.
        uline (38).
      endif.
      describe table i_submit lines w_linnum.
      write: / c_subm , at 35 w_linnum.                         "#EC NOTEXT
      write: 157''.
      if p_subm = 'X'.
    display submit programs used in program
        uline (44).
        write: 157''.
        loop at i_submit.
          write: sy-vline,
                 i_submit-pname,
                 sy-vline.
          write: 157''.
        endloop.
        uline (44).
      endif.
    issue message with number of user-exits displayed
      describe table i_userexit lines w_linnum.
      message s697(56) with w_linnum.
    endform.                        "DATA_DISPLAY
    reward points if it helps
    gunjan

  • COR1/2/3 process header screen exit

    Hi,
    The task is to add an additional tab strip with additional data in process order header - COR1, COR2, COR3
    Is there a way to do that without modifying standard screen? Some screen exits? I wasnt able to find any
    regards,
    Jurijs

    hi Jurijs Tolokoncevs  ,
    Please check the following exits
    Transaction Code - COR1                     Create Process Order
    Exit Name
    Description
    CCOWB001
    Customer exit for modifying menu entries
    COIB0001
    Customer Exit for As-Built Assignment Tool
    COZF0001
    Change purchase req. for externally processed operation
    COZF0002
    Change purchase req. for externally procured component
    PPCO0001
    Application development: PP orders
    PPCO0002
    Check exit for setting delete mark / deletion indicator
    PPCO0003
    Check exit for order changes from sales order
    PPCO0004
    Sort and processing exit: Mass processing orders
    PPCO0005
    Storage location/backflushing when order is created
    PPCO0006
    Enhancement to specify defaults for fields in order header
    PPCO0007
    Exit when saving production order
    PPCO0008
    Enhancement in the adding and changing of components
    PPCO0009
    Enhancement in goods movements for prod. process order
    PPCO0010
    Enhancement in make-to-order production - Unit of measure
    PPCO0012
    Production Order: Display/Change Order Header Data
    PPCO0013
    Change priorities of selection crit. for batch determination
    PPCO0015
    Additional check for document links from BOMs
    PPCO0016
    Additional check for document links from master data
    PPCO0017
    Additional check for online processing of document links
    PPCO0018
    Check for changes to production order header
    PPCO0019
    Checks for changes to order operations
    PPCO0021
    Release Control for Automatic Batch Determination
    PPCO0022
    Determination of Production Memo
    PPCO0023
    Checks Changes to Order Components
    STATTEXT
    Modification exit for formatting status text lines
    Transaction Code - COR2                     Change Process Order
    Exit Name
    Description
    CCOWB001
    Customer exit for modifying menu entries
    COIB0001
    Customer Exit for As-Built Assignment Tool
    COZF0001
    Change purchase req. for externally processed operation
    COZF0002
    Change purchase req. for externally procured component
    PPCO0001
    Application development: PP orders
    PPCO0002
    Check exit for setting delete mark / deletion indicator
    PPCO0003
    Check exit for order changes from sales order
    PPCO0004
    Sort and processing exit: Mass processing orders
    PPCO0005
    Storage location/backflushing when order is created
    PPCO0006
    Enhancement to specify defaults for fields in order header
    PPCO0007
    Exit when saving production order
    PPCO0008
    Enhancement in the adding and changing of components
    PPCO0009
    Enhancement in goods movements for prod. process order
    PPCO0010
    Enhancement in make-to-order production - Unit of measure
    PPCO0012
    Production Order: Display/Change Order Header Data
    PPCO0013
    Change priorities of selection crit. for batch determination
    PPCO0015
    Additional check for document links from BOMs
    PPCO0016
    Additional check for document links from master data
    PPCO0017
    Additional check for online processing of document links
    PPCO0018
    Check for changes to production order header
    PPCO0019
    Checks for changes to order operations
    PPCO0021
    Release Control for Automatic Batch Determination
    PPCO0022
    Determination of Production Memo
    PPCO0023
    Checks Changes to Order Components
    STATTEXT
    Modification exit for formatting status text lines
    Transaction Code - COR3                     Display Process Order
    Exit Name
    Description
    CCOWB001
    Customer exit for modifying menu entries
    COIB0001
    Customer Exit for As-Built Assignment Tool
    COZF0001
    Change purchase req. for externally processed operation
    COZF0002
    Change purchase req. for externally procured component
    PPCO0001
    Application development: PP orders
    PPCO0002
    Check exit for setting delete mark / deletion indicator
    PPCO0003
    Check exit for order changes from sales order
    PPCO0004
    Sort and processing exit: Mass processing orders
    PPCO0005
    Storage location/backflushing when order is created
    PPCO0006
    Enhancement to specify defaults for fields in order header
    PPCO0007
    Exit when saving production order
    PPCO0008
    Enhancement in the adding and changing of components
    PPCO0009
    Enhancement in goods movements for prod. process order
    PPCO0010
    Enhancement in make-to-order production - Unit of measure
    PPCO0012
    Production Order: Display/Change Order Header Data
    PPCO0013
    Change priorities of selection crit. for batch determination
    PPCO0015
    Additional check for document links from BOMs
    PPCO0016
    Additional check for document links from master data
    PPCO0017
    Additional check for online processing of document links
    PPCO0018
    Check for changes to production order header
    PPCO0019
    Checks for changes to order operations
    PPCO0021
    Release Control for Automatic Batch Determination
    PPCO0022
    Determination of Production Memo
    PPCO0023
    Checks Changes to Order Components
    STATTEXT
    Modification exit for formatting status text lines

  • Menu Exit and Screen Exit

    Hi PPL,
    Can anybody help me out in explaining me how to find a menu exit or the
    Screen exit in a program...I have an requirement where i need to use both of them..
    I have already posted this query , but people responded with links which had the
    information on these two , but not the way to locate these...
    I ll be very grateful for ur advice.
    Regards,
    Kevin Nick.

    hi kevin
    <b>Screen exits</b> are exits that allow you to use a reserved part of the screen (A subscreen) to display or input data.
    It is determined be SAP where the sub screen will be displayed.
    The syntax is: CALL CUSTOMER-SUBSCREEN
    The screen exit is not processed untill the corresponding subscreen has been created in an enhancement project, and the project has been activated.
    Note:
    Function codes are only processed in the main screens flow logic
    You are not allowed to enter a name for the subscreens command field
    You are not allowed to define GUI stauses
    You are not allowed to enter a value for Next screen
    The global data of the program is not available for the subscreen. Data for the subscreen is provided by function modules. These function modules belongs to the same function group as the subscreen
    Subscreens are edited with transaction CMOD. When you activate a project containg subscreens, the calling screen is regenerated and the subscreen is displayed next time you display the calling screen
    The developer must create the subscreen and the corresponding PBO and PAI modules
    How to identify screen exits
    Look after CALL CUSTOMER-SUBSCREEN in the screenprogram of the screen you want to modify.
    Use transaction CMOD menu Utillities -> SAP enhancements to search for screen exits
    <b>MENU EXITS</b>
    Menu exits allow you to add your own functionallity to menus. Menu exits are implemented by SAP, and are reserved menu entries in the GUI interface. The developer can add his/her own text and logic for the menu.
    Function codes for menu exits all start with "+"
    Example
    We want to create a new menu item in the Office menu. The text for the menu should be "Run ZTEST", and the menu will
    run report ZTEST.
    Goto transaction SE43 Area Menu Maintenance
    In Area Menu Paramenter type 'S000' (S triple Zero)
    Select Change and ignore all the warning screens
    Expand the office menu. In the buttom of the office tree you will find a menu named "Customer function"
    Double click on the text. In the pop-up screen change the text to "Run ZTEST". Note that the trsnaction code is +C01
    Goto transaction SE93 and create transaction +C01 that calls report ZTEST.
    Now you will se the menu displayed in the office tree. If you delete transaction +C01 again, the new menu will dissapear.
    USER EXITS
    User exits (Function module exits) are exits developed by SAP. The exit is implementerd as a call to a functionmodule. The code for the function module is writeen by the developer. You are not writing the code directly in the function module, but in the include that is implemented in the function module.
    The naming standard of function modules for functionmodule exits is: EXIT_<program name><3 digit suffix>
    The call to a functionmodule exit is implemented as: CALL CUSTOMER.-FUNCTION <3 digit suffix>
    Example:
    The program for transaction VA01 Create salesorder is SAPMV45A
    If you search for CALL CUSTOMER-FUNCTION i program SAPMV45A you will find ( Among other user exits):
    CALL CUSTOMER-FUNCTION '003'
    exporting
    xvbak = vbak
    xvbuk = vbuk
    xkomk = tkomk
    importing
    lvf_subrc = lvf_subrc
    tables
    xvbfa = xvbfa
    xvbap = xvbap
    xvbup = xvbup.
    The exit calls function module EXIT_SAPMV45A_003
    2. How to find user exits
    Display the program where you are searching for and exit and search for CALL CUSTOMER-EXIT
    If you know the Exit name, go to transaction CMOD. Choose menu Utillities->SAP Enhancements. Enter the exit name and press enter.
    You will now come to a screen that shows the function module exits for the exit.
    3. Using Project management of SAP Enhancements
    We want to create a project to enahance trasnaction VA01
    Go to transaction CMOD
    Create a project called ZVA01
    Choose the Enhancement assign radio button and press the Change button
    In the first column enter V45A0002 Predefine sold-to party in sales document . Note that an enhancement can only be used i 1 project. If the enhancement is allready in use, and error message will be displayed
    Press Save
    Press Components. You can now see that enhancement uses user exit EXIT_SAPMV45A_002. Double click on the exit.
    Now the function module is displayed. Double click on include ZXVVAU04 in the function module
    Insert the following code into the include: E_KUNNR = '2155'.
    Activate the include program. Go back to CMOD and activate the project.
    Goto transaction VA01 and craete a salesorder. Note that Sold-to-party now automatically is "2155"
    regards
    ravish
    plz reward <b>points</b> if helpful

  • Enhancement - Screen exit

    Hi All,
    Requirement is to add couple of fields in Standard transaction.
    Please let me know the steps of finding the Exit and development steps.
    Thanks in advance.
    Ravi

    Hai Ravi
    User Exits
    Screen exits are exits that allow you to use a reserved part of the screen (A subscreen) to display or input data.
    It is determined be SAP where the sub screen will be displayed.
    The syntax is: CALL CUSTOMER-SUBSCREEN
    The screen exit is not processed untill the corresponding subscreen has been created in an enhancement project,
    and the project has been activated.
    Note:
    Function codes are only processed in the main screens flow logic
    You are not allowed to enter a name for the subscreens command field
    You are not allowed to define GUI stauses
    You are not allowed to enter a value for Next screen
    The global data of the program is not available for the subscreen. Data for the subscreen is provided by function modules.
    These function modules belongs to the same function group as the subscreen Subscreens are edited with transaction CMOD.
    When you activate a project containg subscreens, the calling screen is regenerated and the subscreen is displayed next
    time you display the calling screen
    The developer must create the subscreen and the corresponding PBO and PAI modules
    How to identify screen exits
    Look after CALL CUSTOMER-SUBSCREEN in the screenprogram of the screen you want to modify.
    Use transaction CMOD menu Utillities -> SAP enhancements to search for screen exits
    MENU EXITS
    Menu exits allow you to add your own functionallity to menus. Menu exits are implemented by SAP, and are reserved menu
    entries in the GUI interface. The developer can add his/her own text and logic for the menu.
    Function codes for menu exits all start with "+"
    Example
    We want to create a new menu item in the Office menu. The text for the menu should be "Run ZTEST", and the menu will
    run report ZTEST.
    Goto transaction SE43 Area Menu Maintenance
    In Area Menu Paramenter type 'S000' (S triple Zero)
    Select Change and ignore all the warning screens
    Expand the office menu. In the buttom of the office tree you will find a menu named "Customer function"
    Double click on the text. In the pop-up screen change the text to "Run ZTEST". Note that the trsnaction code is +C01
    Goto transaction SE93 and create transaction +C01 that calls report ZTEST.
    Now you will se the menu displayed in the office tree. If you delete transaction +C01 again, the new menu will dissapear.
    USER EXITS
    User exits (Function module exits) are exits developed by SAP. The exit is implementerd as a call to a functionmodule.
    The code for the function module is writeen by the developer. You are not writing the code directly in the function module,
    but in the include that is implemented in the function module.
    The naming standard of function modules for functionmodule exits is: EXIT_<program name><3 digit suffix>
    The call to a functionmodule exit is implemented as: CALL CUSTOMER.-FUNCTION <3 digit suffix>
    Example:
    The program for transaction VA01 Create salesorder is SAPMV45A
    If you search for CALL CUSTOMER-FUNCTION i program SAPMV45A you will find ( Among other user exits):
    CALL CUSTOMER-FUNCTION '003'
    exporting
    xvbak = vbak
    xvbuk = vbuk
    xkomk = tkomk
    importing
    lvf_subrc = lvf_subrc
    tables
    xvbfa = xvbfa
    xvbap = xvbap
    xvbup = xvbup.
    The exit calls function module EXIT_SAPMV45A_003
    2. How to find user exits
    Display the program where you are searching for and exit and search for CALL CUSTOMER-EXIT
    If you know the Exit name, go to transaction CMOD. Choose menu Utillities->SAP Enhancements.
    Enter the exit name and press enter.
    You will now come to a screen that shows the function module exits for the exit.
    3. Using Project management of SAP Enhancements
    We want to create a project to enahance trasnaction VA01
    Go to transaction CMOD
    Create a project called ZVA01
    Choose the Enhancement assign radio button and press the Change button
    In the first column enter V45A0002 Predefine sold-to party in sales document . Note that an enhancement can only
    be used i 1 project. If the enhancement is allready in use, and error message will be displayed
    Press Save
    Press Components. You can now see that enhancement uses user exit EXIT_SAPMV45A_002. Double click on the exit.
    Now the function module is displayed. Double click on include ZXVVAU04 in the function module
    Insert the following code into the include: E_KUNNR = '2155'.
    Activate the include program. Go back to CMOD and activate the project.
    Goto transaction VA01 and craete a salesorder. Note that Sold-to-party now automatically is "2155"
    Have look at this links
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCCIOFFI/BCCIOFFI.pdf
    http://www.sapgenie.com/abap/ole.htm
    http://help.sap.com/saphelp_46c/helpdata/en/59/ae3f2e488f11d189490000e829fbbd/frameset.htm
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCCIOFFI/BCCIOFFI.pdf
    User Exist Finding
    Go to se93 and give the tcode to find the main program associated to it.
    Go to se38 and give the main program.
    Find the package associated to it.Go to->Object Directory Entry.
    Go to smod transaction.
    Press f4.
    Press Information System Button.
    Give the Project(Dev Class).
    Press enter.
    Find the enhancements associated
    User Exist System Tables
    1. MODSAP & MODSAPT is the table.
    2. Where we can give the enhancement name.
    3. Component type will be E
    for getting the FMs.
    E Function exit
    S Screens
    T Tables
    C GUI code
    Field Exist Creation
    Step by step procedure for creating Field Exits
    There are eight steps to creating a field exit:
    Step 1: Determine Data Element
    Step 2: Go To Field Exit Transaction
    Step 3: Create Field Exit
    Step 4: Create Function Module
    Step 5: Code Function Module
    Step 6: Activate Function Module
    Step 7: Assign Program/Screen
    Step 8: Activate Field Exit
    Step 1: Determine Data Element
    - Before you can begin adding the functionality for a field exit, you must know the corresponding data element.
    - An easy way to determine the data element associated to a particular screen field is to:
    Go the appropriate screen.
    Position the cursor in the appropriate field.
    Press ‘F1’ for field-level help.
    Click on the ‘Technical info’ pushbutton (or press ‘F9’) on the help dialog box.
    On this Technical Information dialog box, the data element will be specified if the field is 'painted' from the ABAP/4 Dictionary.
    Step 2: Go To Field Exit Transaction
    - The transaction to create field exits is CMOD.
    - You can use the menu path Tools -> ABAP/4 Workbench -> Utilities -> Enhancements -> Project management.
    - From the initial screen of transaction CMOD, choose the Text enhancements -> Field exits menu path.
    - After choosing this menu path, you will be taken to the field exits screen. From here, you can create a field exit.
    NOTE : Even though you use transaction CMOD to maintain field exits, you do not need to create a project to activate field exits.
    Step 3: Create Field Exit
    - From the field exit screen of transaction CMOD, choose the Field exit -> Create menu path.
    - After choosing this menu path, a dialog box will prompt you for the appropriate data element .
    - Enter the data element name and click the ‘Continue’ pushbutton.
    - Now, you will be able to create the function module associated to the data element’s field exit.
    Step 4: Create Function Module
    - You will automatically be taken to the Function Library (SE37) after entering a data element name and clicking the ‘Continue’ pushbutton.
    - In the ‘Function module’ field, a function module name will be defaulted by the system based on the data element specified. This name will have the following convention:
    FIELD_EXIT_<data element>
    - You can add an identifier (an underscore followed by a single character ).
    - The first function module for a data element’s field exit must be created without an identifier.
    - To create the function module, click on the ‘Create’ pushbutton, choose menu path Function module -> Create, or press ‘F5’.
    - After choosing to create the function module, you will get the warning: "Function module name is reserved for SAP". This message is just a warning so a developer does not accidentally create a function module in the field exit name range. By pressing ‘Enter’, you will be able to go ahead and create the function module.
    - Before coding the function module, you will have to specify the function modules attributes -- function group, application, and short text.
    Step 5: Code Function Module
    - From the function module’s attributes screen, click on the ‘Source code’ pushbutton or choose the Goto -> Function module menu path to the code of the function module.
    - Here you will add your desired functionality for the field exit.
    - Remember that field exit’s function module will have two parameters -- one importing parameter called "INPUT" and one exporting parameter called "OUTPUT". These parameters will be set up automatically by the system.
    - You must remember to assign a value to the OUTPUT field. Even if the value does not change, it must be moved from the INPUT field to the OUTPUT field.
    Step 6: Activate Function Module
    - After coding the function module, you must remember to activate it.
    - Use the Function module -> Activate menu path to activate the function module.
    - At this point, you can return to the field exit transaction.
    - You should be able to 'green arrow' back to this transaction.
    - When you return to the field exit transaction, you will see an entry for the newly created field exit.
    - At this point, the field exit is global. That is, it applies to all screens that use a particular data element. On any screen that uses the data element, the corresponding field exit function module will be triggered, once it is active.
    - Also, the field exit will not be triggered yet because it is inactive.
    Step 7: Assign Program/Screen
    - This step is only needed if you want to make a field exit local.
    - To make a field exit local, select the field exit and click on the ‘Assign prog./screen’ pushbutton.
    - In the dialog box , indicate the appropriate program name and screen number.
    This information indicates that the field exit is local to the specified screen in the specified program.
    - In the dialog box, you determine which function module gets executed for the field exit by specifying the identifier in the ‘Fld. Exit’ field.
    - If this field is left blank, the function module triggered will be 'FIELD_EXIT_<data element>'.
    - If a single-character identifier is entered into the field, the function module triggered will be 'FIELD_EXIT_<data element>_<identifier>'.
    Step 8: Activate Field Exit
    - The field exit must be active for it to be triggered by the system.
    - Activate the field exit by choosing the Field exit -> Activate menu path.
    - After assigning the field exit to a change request, its status will change to ‘Active’ and it will be triggered automatically on the appropriate screen(s).
    NOTE : In order to activate the field exit the profile parameter abap/fieldexit = YES must be set on all application servers
    Thanks & regards
    Sreenivasulu P

  • Deactivatng a screen exit

    Hi folks,
             We have created some Function module exits and screen exits under single project.
    Now our users want to remove the screen exit from that project.
    How can i just remove my screen exit from from that PROJECT without affecting to other exits.
    If i am trying to deactivate that exit, entire project is getting deactivated.
    Could any one help me regarding this.
    Thanks in advance,
    Shyam.

    Hi,
    go to cmod transaction . open project now go to component now click on the screen exit green button -- it will direct you on screen flow logic
    nowclick on layout and delete the screen element and activate ..
    Deepanker

Maybe you are looking for