How to display Warning messages in BADI ME_PROCESS_REQ_CUST?

Hi,
I have implemented BADI ME_PROCESS_REQ_CUST and coded necessary logic according to my requirement in Method  PROCESS_ITEM.
On a certain condition , I need to display a Warning message.
I have written the code as follows:--
message w001(00) with 'XYZ'.
It didnt work.
Then, I included the message in message class ZPBS, and coded as follows.
message w012(zpbs).
But, still it didnt work..
Can u guys please guide me what I need to do?
Thanks,
Shivaa....

Hello Shiva
Have a look at method PO_READ of class CL_PO_HEADER_HANDLE_MM.
METHOD po_read.
  INCLUDE mm_messages_mac.
  DATA: l_po_number TYPE ekko-ebeln.
  IF im_po_number NE space.
    l_po_number = im_po_number.
  ELSE.
    l_po_number = po_number.
  ENDIF.
* authority check on transaction code disabled
* If called via CALL TRANSACTION, this check is already done by basis
* (see note 358122)
* restriction of T-code authority check to Enjoy only
  IF for_bapi IS INITIAL.
* tcode authorization
    IF NOT im_tcode IS INITIAL.
      CALL FUNCTION 'AUTHORITY_CHECK_TCODE'
        EXPORTING
          tcode  = im_tcode
        EXCEPTIONS
          ok     = 0
          not_ok = 1
          OTHERS = 2.
      IF sy-subrc NE 0.
        MESSAGE e172(00) WITH im_tcode INTO gl_dummy.
        mmpur_message_forced 'E' '00' '172' im_tcode '' '' ''.
        ex_result = mmpur_no.
        CALL METHOD set_state( im_state = c_available ).
        EXIT.
      ENDIF.
    ENDIF.
  ENDIF.
Add the include MM_MESSAGE_MAC to you method and set the message using macro MMPUR_MESSAGE_FORCED.
I am not sure whether the warning will indeed be displayed while changing an item but it should be displayed when checking the purchase requisition and presumably when saving it.
Regards
   Uwe

Similar Messages

  • How to display warning message box with yes and no buttons

    Hi,
    I am writing the code to delete emp details from database.
    I want to display warning message with yes and no buttons after clicking the delete button in the same page, if yes is clicked, i want to invoke delete() method in AM.
    Is it possible, if yes pls suggest me how to do it.
    Thanks
    Message was edited by:
    user536125

    This is being discussed in
    warning message(dialog page) to be displayed in the same page
    Thanks
    Tapash

  • How to issue warning message in BADI ME_PROCESS_PO_CUST

    Hi Guys,
    I have already checked the forum regarding this. There are lots of threads. Unfortunately none of them helped me. I must be missing some thing in my code.
    I tried issuing warning message in BADI ME_PROCESS_PO_CUST and method PROCESS_ITEM.
    First i tried with normal message statement
    MESSAGE w001(00) WITH text-001 text-002.
    Didn't worked.
    Next tried calling standard macros
      DATA:mmmfd_cust_01 TYPE mmpur_metafield VALUE 90000000.
      call method cl_contextfield_mm=>set_current_field
                                      exporting im_field = mmmfd_cust_01.
      mmpur_metafield mmmfd_cust_01.
    mmpur_message_config 'W' 'X' ' '.      "Tried all permutations here
    mmpur_message_forced 'W' '00' '001' text-001 text-002 '' ''.
    Still no solution
    Tried with macro mmpur_message also
    Can some one helpme out to solve this issue.
    Thanks,
    Vinod.

    Hi all,
    Thanks for the responce.
    Not sure whether you have looked into BADI documentation or not. Please check below.
    "Further notes
    The above-mentioned macros are defined in the program MM_MESSAGES_MAC. Please include this program in your own application.
    Never issue messages in BAdI ME_GUI_PO_CUST! This is the task of the business logic and must therefore be done via the BAdI ME_PROCESS_PO_CUST.
    "Never use the ABAP statement MESSAGE in the BAdI ME_PROCESS_PO_CUST. Please use the macro mmpur_message_forced only. This macro only writes a message in the message collector.
    If you wish to mark the business object as invalid in order to prevent posting, you must additionally use the INVALIDATE ( ) method of the relevant interface. In this connection, see also the code example in the PROCESS_ITEM method of the BAdI ME_PROCESS_PO_CUST.
    I have tried almost all macros including mmpur_message_forced 'E' 'ME' '083' l_text ' '  ' '  ' '.
    Not sure where i am missing:(
    If i give error using MESSAGE statement it is working perfectly i.e. give error and save the PO. Only wanted to know if there are any implications.
    Thanks,
    Vinod

  • How to display warning message in PL/SQL?

    Hi,
    I would like to know how to display a warning message in PL/SQL?
    Thanks and Regards,
    SC

    PL/SQL is not an interactive programming language, so there is generally no place to print any sort of message, no place to prompt the user for input, etc.
    A SQL*Plus script can use the SQL*Plus client as a very basic way of interacting with users using the PROMPT command to accept input and using DBMS_OUTPUT to print messages to the console (assuming the script does a SET SERVEROUTPUT ON to enable printing the results). Other applications may have similar sorts of scripting possibilities, generally based on a subset of the commands SQL*Plus supports.
    Justin

  • How to display warning message ?

    Dear all,
    I would like to display a warning message, when the user doesn't key in a profit center (with Tcode: FB50).
    I have entered the option "Optionnal entry" for profit center for the field status group, but the system doesn't display any warning.
    Could you help me ?
    Thanks and best regards

    HI,
    Please try to use a Validation which will be easy to achive this. If you dont know how to create a validation please check the WIKI, you will find a documentation which can help you.
    Regards
    Ravinagh Boni

  • How to display warning message before deleting a record?

    Hi all
    I want to display a warning popup message( "Do you realy want to delete the record? Yes - No" ) before user delete a record. My page fragment contains simple <af:table> which display the employees data and operations buttons "commit - delete - rollback"
    I use Jdeveloper release 11.1.4
    Database : oracle 10g
    Thanks in advance

    Thank you so much for replaying
    I have another question related to creating popup
    I have page template and only one jspx page based on the template named"UIShell.jspx"
    I make a lot of page fragments , I have - untill now- about 15 page fragments.
    all these fragments are shown as dynamic regions within UIShell.jspx"
    My question is
    Should I create popup dialog window in each page fragment in order to display the messages?
    If the answer is "YES" this will not be a good approach - I think.
    Is there a way to create just one popup dialog and use it an any page fragments.
    Regards
    Edited by: ta**** on Apr 17, 2011 8:44 AM

  • How to display Error messages through BADI HRPAD00INFTY in ESS ?

    Hi,
    In ESS, I want to perform custom validation on IT1067 ( Health Plan ) and allow only specific combinations of health plans to be selected.   We are on ECC6.0 EhP4 .  This infotype is "NOT PERMITTED" in the new decoupled framework and hence I cannot use NEW BADI's for validation and I am stuck with Classical BADI - HRPAD00INFTY.
    In my classical badi HRPAD00INFTY, after validation, I want to display an error message if "Invalid Combination" is selected by the user.  
    I tried using the following code to display the error message :
              DATA badi_message_handler   TYPE REF TO cl_hrpa_message_list.
              DATA message_handler        TYPE REF TO if_hrpa_message_handler. 
              DATA msg                    TYPE symsg.
              DATA is_ok                  TYPE boole_d.
              CREATE OBJECT badi_message_handler.
              message_handler = badi_message_handler.
              msg-msgid = 'YHBN'.
              msg-msgty = 'E'.
              msg-msgno = '006'.
              msg-msgv1 = c_none_plans. "'Invalid Plan'(z09).
              CALL METHOD message_handler->add_message
                EXPORTING
                  message = msg
                  cause   = message_handler->unknown.
                  is_ok = space.
              badi_message_handler->add_messages( message_handler ).
              RAISE error_with_message.
    The message is displayed in ESS but after that the Java Trace Exception is displayed.   I  want to display the error message in a user friendly way and provide an option to correct the plans.
    Please let me know if anyone has done similar thing or have any suggestions.
    Thanks

    Hi,
    DATA badi_message_handler   TYPE REF TO cl_hrpa_message_list.
              DATA message_handler        TYPE REF TO if_hrpa_message_handler. 
              DATA msg                    TYPE symsg.
              DATA is_ok                  TYPE boole_d.
              CREATE OBJECT badi_message_handler.
              message_handler = badi_message_handler.
              msg-msgid = 'YHBN'.
              msg-msgty = 'E'.
              msg-msgno = '006'.
              msg-msgv1 = c_none_plans. "'Invalid Plan'(z09).
              CALL METHOD message_handler->add_message
                EXPORTING
                  message = msg
                  cause   = message_handler->unknown.
                  is_ok = space.
              badi_message_handler->add_messages( message_handler ).
         *-- Add following--
        Exit.
              RAISE error_with_message.

  • How can i display warning messages in user exit EXIT_SAPLMGMU_001 (MM02)

    Hi all,
    while modifying the material master using MM02, i have added new conditions to display messages in user exit EXIT_SPALMGMU_001.
    But using this user exit i am not able to display warning messages.
    Can you please help me with this?
    Sample code which i have included in exit :
    SELECT SINGLE mstav FROM mara
    INTO w_mstav
    WHERE matnr = wmara-matnr.
    IF wmara-mstav NE w_mstav.
    IF wmara-mstdv NE sy-datum.
    wmara-mstdv = sy-datum.
    MESSAGE w177(z03_mm) WITH text-s04 text-s21.
    ENDIF.
    ENDIF.
    Thank you all in advance.

    As written in the SAP documentation of the Enhancement , you can only raise error message using a
    MESSAGE .. RAISING APPLICATION_ERROR.
    You could manage the "warning" yourself, sending an error first time and keeping a trace of the check in some STATICS variable, and not raising the error again if data input remains unchanged between two call of the include.
    <i>----
    EXIT_SAPLMGMU_001
    Where Is the Customer Exit - EXIT_SAPLMGMU_001 called?
    The customer exit is in function module MATERIAL_UPDATE_ALL. The
    function module checks the data for errors (logical relationships,
    foreign keys, fixed domain values, and so on) when the material master
    is updated.
    Use
    o New fields
    You can make checks possible for new fields of your own. These
    checks must be identical to the checks that you carry out for your
    new fields in online maintenance.
    o Existing fields
    For existing fields, you can extend and intensify the checks.
    You can also change data for descriptions and general material data
    (MARA). For example, the descriptions can be generated from attributes
    of the material.
    Limitations
    You cannot bypass existing checks.
    Interface to Application
    The respective data of the current logical transaction is contained in
    the structures, for example, in structure WMARA for MARA. Nonrelevant
    structures are transferred with their initial values.
    General material data that can be changed (CMARA) has the structure
    MARU. This MARA view contains fewer internal fields than MARA itself. If
    WMARA is filled, CMARA is also filled when accessed.
    The customer exit contains the exception APPLICATION_ERROR for your
    self-defined error situations.
    Using the language element MESSAGE .. RAISING APPLICATION_ERROR, you can
    terminate the current (logical) transaction and display your message in
    the log. </i>
    Regards

  • How to display error message in Shopping Cart?

    How to display error message in Shopping Cart and stop the shopping cart for further processing? I try MESSAGE w001(zshop) or MESSAGE e001(zshop). But it is causing run-time error.

    Hi Paul,
    In the DOC_CHECK or DOC_SAVE BADI, you have a global internal table named et_messages. The structure of this table is 'bbp_smessages_badi'. You can append your error message here by inputting the message type, ID and number. The message type is either 'E' for error or 'W' for warning and the number would depend on your message class(ID). You will be able to see the error message on top of the screen, can be a red or yellow highlight depending on your appended message. I don't think creating the error message via the MESSAGE syntax will be successful, maybe this is why you are getting a runtime error.
    Regards,
    Noel

  • How to display error message in abap

    How to dispaly error message in report?
    i have to check the range bewteen two days and if it is not in range have to display error message only once.
    next time if i press the execute button report will get executed without showing the warning message.
    i am calculating the days between two dates, i am displaying the error message but if i press the execute button i will not allow me to execute the report.it again shows me the error message.i have to skip this in 2nd time.
    can any one  suggest what to do with this?

    hello suman,
    i am using select-option in my report. And i have to check the difference between two dates in select option input box( low-value and high-value). if it is greater then suppose 10 then i have to display warning message at once and then if click on execute button , the report should get executed without showing any warning messages in report.
    here i am attaching my source code.please take a close look and tell me where should i have to make change.
    SELECT-OPTIONS :s_bedat FOR ekko-bedat.
    AT SELECTION-SCREEN ON s_bedat.
      IF NOT s_bedat IS INITIAL.
        PERFORM bedat_validate.                       " Perform for Purchasing Document Date Validation
      ENDIF.
    FORM bedat_validate .                        " Form for Purchasing Document Date Validation
      DATA  : diffr TYPE i.
      CALL FUNCTION 'DAYS_BETWEEN_TWO_DATES'
        EXPORTING
          i_datum_bis                   = s_bedat-high
          i_datum_von                   = s_bedat-low
      I_KZ_EXCL_VON                 = '0'
      I_KZ_INCL_BIS                 = '0'
      I_KZ_ULT_BIS                  = ' '
      I_KZ_ULT_VON                  = ' '
      I_STGMETH                     = '0'
      I_SZBMETH                     = '1'
       IMPORTING
         e_tage                        =  diffr
    EXCEPTIONS
      DAYS_METHOD_NOT_DEFINED       = 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.
      ELSE.
        IF diffr GT 31.
          MESSAGE s009(zerrormsg) WITH text-000 DISPLAY LIKE 'W'.
          LEAVE TO LIST-PROCESSING.
        ENDIF.
      ENDIF.
    ENDFORM.                    " BEDAT_VALIDATE

  • How to display the Message Pool Messages in CE 7.2

    Hi Experts,
    Please let me know how to display the Message Pool Messages in CE 7.2.
    I have tried with reportContextAttributeMessage, but it is deprecated in CE 7.2.
    Please do the needful.Its Urgent.
    Thanks & Regards,
    SatheshKumar R

    Hi Sathesh,
    Do the following steps:
    1.) After creating a component, under it you will see Message Pools. Double click and open it.
    2).Click "Add Message" and add a new message. (Give a message key, type of message (either warning, error etc ) and message text).
    3). Save the metadata.
    4). Raise this message where all you want by using following code(For example, on click of a button) :
          IWDMessageManager msgnr = wdThis.wdGetAPI().getComponent().getMessageManager();
          msgnr.reportMessage(IMessage<component name>.<message>,null,true);
    For example, I have a component name TestAppComp and under message pool I have message called message1, then use lik this:
            IWDMessageManager msgnr = wdThis.wdGetAPI().getComponent().getMessageManager();
            msgnr.reportMessage(IMessageTestAppComp.MESSAGE1,null,true);
    Reply me if you any doubt.
    Regards,
    Jithin

  • Display warning message

    Hi guys,
    I need some help with the "displaying warning message" in labview 2010 SP1 base development system. My requirement is, I would like to display a warning message (text alert) when the RPM of the pump falls below 10000 rpm. In this case I am measuring the current, voltage and rpm of a pump. Please let me know how I can get this done. I have attached the main vi and the 2 sub-vi for reference. Also let me know how I can set sound alerts in addition to text alerts when the pump RPM falls below 10000 rpm. Thanks for your help.
    Raj
    Attachments:
    Current_Voltage_RPM-_continuous_sampling_count iterations.vi ‏116 KB
    Current_Voltage_RPM-_sub_VI-1.vi ‏18 KB
    Current_Voltage_RPM-_sub_VI-2.vi ‏17 KB

    Hi Rajesh,
      If you want to display a warning text alert ,then you can just create a text on front panel and using VI properties ,can make it as a text alert.For sound alert use sound functions .Please have a look at the attached vi.Run this vi and  click visible button ,you can find an alert text with some sound.Modify your logic accordingly.
    Regards,
    SrikrishnaNF
    Attachments:
    CheckThisVi.vi ‏18 KB

  • Display Warnning message before delete row

    i have a table and i added a column and but in it a button that perform delete action
    when i press the button a row is deleted but i want to display warning message before deleting for example
    "are you sure you want to delete this row ?" Yes or No
    If press yes the row will be deleted else no action is taken
    how can i do this ?

    You can use clientListener to do this.
    <af:commandImageLink text="Submit" id="cil1" partialSubmit="true" >
    <af:clientListener type="action" method="customConfirm"/>
    </af:commandImageLink>
    <af:resource type="javascript">
    customConfirm = function(event) {
    var answer = confirm('Are you sure you want to delete this row?');
    try
    if (!answer) {
    var component = AdfPage.PAGE.findComponentByAbsoluteId("cil1");
    ..... your action here.....
    catch(e) {
    alert(e)
    </af:resource>
    But if there is a event or event listener on the commandimagelink then it will always be called. To avoid that you could remove the actionlistener and add serverlistener and call it through the javascript function. See the "Web User Interface Developer's Guide for Oracle Application
    Development Framework" for more info.

  • How to show warning message in am

    How to show warning message in am but not Stop , it still can go ahead.
    Thank you very much.

    jamras ,
    If i got you correct you wanna show user a list fo warnings after that have occured in some method in AM, and show them to user collectively, and the processing of the page should not stop in the above. What you need to do for it, is instead of throwing warning message in AM, collect all warnings in a arraylist or vector. when you navigate back to CO, iterate through this arraylist/vector and for each use pagecontext.putDialogmessage(oaexception).In this way you will be able to show all warning messages on page and your processing will not stop!
    --Mukul                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • How to display a message in an audit report?

    hello all,
    i would like to ask how do display a message in an audit report.  here is my code...
    CALL TRANSACTION tcode USING i_bdcdata
                            MODE c_n
                            MESSAGES INTO i_error2.
    IF sy-subrc EQ 0.
    ENDIF.
    CLEAR i_error2.
    LOOP AT i_error2.
      IF i_error2-msgtyp EQ c_e.
        MOVE v_pernr TO i_bdcerror2-pernr.
        MOVE c_infotype TO i_bdcerror2-infty.
        MOVE 'Error' TO i_bdcerror2-msgtype.
    <b>    SELECT SINGLE text
          INTO v_msgtxt
          FROM t100
          WHERE sprsl = i_error2-msgspra
          AND arbgb = i_error2-msgid
          AND msgnr = i_error2-msgnr.
        MOVE v_msgtxt TO i_bdcerror2-msgtxt.</b>
        APPEND i_bdcerror2.
      ENDIF.
    ENDLOOP.
    DESCRIBE TABLE i_bdcerror LINES v_bdcerrors.
    IF v_bdcerrors <> 0.
      SKIP 1.
      WRITE: 'BDC Error Report'.
      SKIP 1.
      WRITE: 'PERNR',
             'INFOTYPE',
             'MESSAGE TYPE',
             'MESSAGE TEXT'.
      ULINE.
      LOOP AT i_bdcerror.
        WRITE: / i_bdcerror-pernr,
               13 i_bdcerror-infty,
               22 i_bdcerror-msgtype,
               35 <b>i_bdcerror-msgtxt</b>.
      ENDLOOP.
    ENDIF.
    the message text that i was getting contains &1, &2 and so on.  how would i be able to replace it with the original value?
    thanks!
    -ann

    After calling the transaction, this is what I do.
    a) Call the function module, <b>MESSAGE_TEXT_BUILD</b> and pass the following values from <b>BDCMSGCOLL</b> or the internal table where you collect the messages.
       i) MSGID
      ii) MSGNR
    iii) MSGV1
      iv) MSGV2
       v) MSGV3
      vi) MSGV4
    There is no need to fetch data using select from table t100.
    It builds the message and returns in MESSAGE_TEXT_OUTPUT which can be then displayed to user.
    Regards,
    Subramanian V.

Maybe you are looking for

  • Backing up w/Time Machine to external hard drive

    I have 3 users on my Mac Book. When backing up my system with time machine to an external hard drive ... do I need to back up each user seprataly?

  • Mac Mail Smart Folders triplicate messages (Gmail-based mail server)

    I can't get Mail Smart Folders to work well with my Virginmedia mail server, which seems to use a Gmail type of system. (I'm using IMAP). It is easy to set up an instruction to select mail e.g. from defined individuals only, or any other qualifier. H

  • Best way for for update

    Hi all i'm new for store procedure.I have to make a procedure like this begin if(condition) select for update update else insert My problem is how to make select for update.If i'm not in fault i think in a procedure i have to make a select into curso

  • Reading rtf files

    With my Macbook Pro I cannot read rtf files, neither with text edit nor open Office. How can I convert a rtf file into a pdf or doc file ? Is it the only way ?

  • IPhoto hangs on Keepsakes

    My iPhoto keeps hanging when trying to open anything to do with the Keepsake functions. I cannot create a new book, open a previously created book etc. The application just hangs and I have to force quit. Other functions work fine. Anybody any ideas?