ECATT: Bad Message Handling in VL02N (Line Deletion)

Hello All,
I'm having a big headache with the following automation scenario on VL02N transaction:
- open a DN number
- use position button to trigger screen where u can select a line
- enter a line (script parameter)
- validate the line
- use the delete button to delete selected line
- confirm the deletion message
- save and exit
I recorded the whole good case in one step of SAPGUI.
Problem is:
A)without catching any message, if line does not exist (ex line is 20 and 20 is already deleted),
the script raise no error BUT erases the first line in the screen (ie the lowest remaining one)
B) the proper error msg ("Line does not exists") is only triggered when i enter the next interface of the screen but this interface do the deletion of the lowest line!!
so either:
- i don't put the deletion interface in the MSG block and the message is not raised
- i put the deleting interface in the MSG block , the message is raised but too late.
Do i handle the message badly?
Is there a way to split the deletion interface to have separately the error detection and the deletion?
See code below
VL02N_111_STEP_1 = choice of line to position on
VL02N_1000_STEP_2 = deletion of selected line
MESSAGE ( VERIF_LINE_EXISTS ).
    SAPGUI ( VL02N_111_STEP_1 ).  <= this is the dialog where i select the line and get the error msg in record time
ENDMESSAGE ( E_VERIF_LINE_EXISTS ).
DO &TFILL.
    IF ( VERIF_LINE_EXISTS[&LPC]-MSGID = 'VL' ).
        IF ( VERIF_LINE_EXISTS[&LPC]-MSGNR = 341 ).
            LOG ( VERIF_LINE_EXISTS[&LPC]-MSGV1 ).
            LOG ( VERIF_LINE_EXISTS[&LPC]-MSGV2 ).
            SAPGUI ( VL02N_10_1).  <= exiting without deleting anything
            SAPGUI ( VL02N_1000_1 ).
            SAPGUI ( VL02N_4004_1 ).
        ENDIF.
    ELSE.
        LOG ( "LINE EXISTS" ).
        SAPGUI ( VL02N_1000_STEP_2 ). <= deleting the line
    ENDIF.
ENDDO.
===below is saving and existing the transaction

Hi Woody,
Position button would retrive/result in the desired result only when the value is present, else it would select those elements/lines which are possibly the next or the previous.
Like, suppose you are searching for 21 out of 20, 22, 23.. The search result would select 20 in some cases or 21 in some other cases. Its basically done on the alphabetical/numeric order in decending manner... 
That might be one reason that you are not able to get a message saying wrong selection. To overcome such situation, I would have taken a list of database entries for the respective DN number and would have compared with the result.
One thumb rule which I follow is, when ever I am going to use position button, I would also use a gettab to retrive values from the table, which has helped me almost 95% of the times.
If that is a structure and/or there are multiple tables that are associated with the grid values, its always suggested to use SQL queries in INLINE ABAP.
Also, you could substitute a single IF instead of nested IF in your statements..
    IF ( VERIF_LINE_EXISTS[&LPC]-MSGID = 'VL'  AND VERIF_LINE_EXISTS[&LPC]-MSGNR = 341 ).
            LOG ( VERIF_LINE_EXISTS[&LPC]-MSGV1 ).
            LOG ( VERIF_LINE_EXISTS[&LPC]-MSGV2 ).
            SAPGUI ( VL02N_10_1).  <= exiting without deleting anything
            SAPGUI ( VL02N_1000_1 ).
            SAPGUI ( VL02N_4004_1 ).
    ELSE.
        LOG ( "LINE EXISTS" ).
        SAPGUI ( VL02N_1000_STEP_2 ). <= deleting the line
    ENDIF.
Also, see if the deletion is taken place basing on the row & col id of the line. If it is always deleting the line item 0,0 then you should make sure that you have to take the id of that line which is to be deleted.
Hope this info helps.
Best regards,
Harsha
PS: Reward points accordingly for all responding.

Similar Messages

  • Message handling with multiple lines to display

    We have a requirement to issue an error message during dialog processing (PAI) and I'd like to use standard message handling if possible.  The syntax
    MESSAGE W008(ZTM) DISPLAY LIKE 'I'.
    gives me a dialog box but handles the message as an error hence processing stops and the user returns to the screen.  I want this functionality but with the ability to display several lines in the message pop up box.  I've looked at the function modules POPUP_DISPLAY_MESSAGE but this displays only 1 line and POPUP_TO_CONFIRM which handles multiple lines but doesn't stop processing (unless further code is added to handle the response).  Can someone suggest a standard of way of achieving this requirement or how to handle a response as an error in the subsequent processing after a call to function module POPUP_TO_CONFIRM.

    hi,
    you can handle like this.
    call function 'POPUP_TO_CONFIRM'
            exporting
              titlebar                    = text-000
      DIAGNOSE_OBJECT             = ' '
              text_question               = v_text
              text_button_1               = 'YES'
      ICON_BUTTON_1               = ' '
              text_button_2               = 'NO'
      ICON_BUTTON_2               = ' '
              default_button              = '1'
              display_cancel_button       = 'X'
      USERDEFINED_F1_HELP         = ' '
             start_column                 = 25
             start_row                    = 6
      POPUP_TYPE                  =
      IV_QUICKINFO_BUTTON_1       = ' '
      IV_QUICKINFO_BUTTON_2       = ' '
           importing
             answer                      = v_ans
    TABLES
      PARAMETER                   =
           exceptions
             text_not_found              = 1
             others                      = 2
          if sy-subrc <> 0.
            message id sy-msgid type sy-msgty number sy-msgno
                    with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
          endif.
          case v_ans.
            when '1'.
              leave program.
            when '2'.
              call screen 100.
            when others.
              call screen 100.
          endcase.
      endcase.
    Here : 1 means yes,
              2 means no.
    Regards
    Sandeep Reddy

  • MESSAGE HANDLER OF CLASS  if_hrpa_message_handler IS NOT WORKING

    WE HAVE WRITTEN THIS CODE AS BELOWS INSIDE BL BADI....THE ERROR MESSAGE IS GETTTING POPULATED IN THE MESSAGE_LIST BUT DOESN'T GET DISPLAYED WHILE CHECKING AND SENDING THE FORM FROM THE FRONT END.
    THE BELOW CODE IS JUST A SAMPLE CODE IN OUT BADI METHOD THERE ARE SEVERAL VALIDATIONS ON THE FAILURE OF EACH OF THEM A ERROR MESSAGE SHOULD GET TRIGERRED FROM THE FRONT END.MESSAGE_HANDLER IS ALREADY AVAILABLE INSIDE INITIAL COMPUTATIONS SO THERE IS NO REASON TO CREATE OBJECT BADI MESSAGE HANDLER
    [[ IF sy-uname = 'PGOSH' OR SY-UNAME EQ 'CGHOSH'.
       DATA badi_message_handler   TYPE REF TO cl_hrpa_message_list.
         DATA message_handler        TYPE REF TO if_hrpa_message_handler.
         DATA is_ok   TYPE boole_d.
        CREATE OBJECT badi_message_handler.
          message_handler = badi_message_handler.
            message-msgid = 'ZHPA'.
            message-msgty = 'E'.
           message-msgno = '010'.
           message-msgv1 = c_none_plans. "'Invalid Plan'(z09).
             CALL METHOD message_handler->add_message
                EXPORTING
                  message = message
                  cause   = space . "message_handler->ERROR . "infotype_specific . "unknown.
                  is_ok = 'X' ."space.
             badi_message_handler->add_messages( message_handler ).
             RAISE error_with_message.
      ENDIF.]]
    PLS PROVIDE YOUR INPUTS REGATRDING THE REASION WHY THE CODE IS NOT GETTING TRIGERRED.
    Edited by: PRIYANKUSH GHOSH on Jun 18, 2010 4:01 PM

    Moderator message - Welcome to SCN.
    Please do not use all caos in your posts. It makes it hard to read..
    Also, Please read Please read "The Forum Rules of Engagement" before posting!  HOT NEWS!! and How to post code in SCN, and some things NOT to do... and [Asking Good Questions in the Forums to get Good Answers|/people/rob.burbank/blog/2010/05/12/asking-good-questions-in-the-forums-to-get-good-answers] before posting again.
    Rob

  • Deleting message from Message Handler

    Hello,
    I want to delete some message that are getting displayed on ECM UI from SAP in the BADI HRECM00_CONSISTENCY.
    There are several methods available for adding and getting messages from message handler in class CL_HRPA_MESSAGE_LIST
    but there is no method for deleting message from message handler.
    Please let me know if any one of you have any idea,how to delete messages from message handler.
    Message handler has reference to CLASS CL_HRPA_MESSAGE_LIST in the BADI.
    Thank you
    Arvind

    Hello
    In the BADI the messages are not coming in internal table but are in class instance (message_handler).I have got the messages in internal tabe now.But after deleting it this needs to be again added in message handler in such a way that old one are removed and new one are added only.
    This is required as message handler will be carrying the message to ECM user interface where it will be displayed.
    Currently all the message are going to UI,my requirement is to send only my message to UI.
    Thank you
    Arvind

  • Message log is not getting deleted in WEBUI (BADI ORDER_SAVE)

    Hi,
    I am displaying an error message based on certain conditions in BADI: ORDER_SAVE (CHECK_BEFORE_SAVE). On getting error, I am correcting that error.
    Using CRM_MESSAGE_DELETE, I am deleting error message before displaying new error message. However, my error log is not going away. It is still displaying in the log in WEBUI.
    Could you please help me out, how can I delete error message, and error log from WEBUI.
    Thanks,
    Sandeep

    I  have the same question as you .
       I  have use folleing code to display message in web ui:
          if (conditions).
          CV_OWN_MESSAGE = 'X'.
          MESSAGE '商机描述已经存在,请修改后再保存!' type 'E' RAISING DO_NOT_SAVE .
        endif.
    but when i have edit the description , the Message log is not getting deleted in WEBUI .
    who can tell me , thanks for all your help !

  • Ios7 messages how do you only delete one line not whole message

    IOs7 messages how do you only delete only one line not whole message

    Open your message conversation.
    Tap and hold on one of the message bubbles until you see "Copy...More".
    Tap on More and you should see a circle to the left of each message in your conversation with a checkmark next to the one that you originally tapped on.
    Check each message bubble that you want to delete; then tap the Trash can in the bottom left corner of your screen.

  • How to Resolve "Bad File Handle" Problem

    I am using Adobe Acrobat 9.0 and inadvertently have deleted Distiller from my computer. When trying to save an edited PDF, I get a message "Cannot save file.  Bad File Handle".
    What shall I do to resolve my problem?  Is this a result of deleting Distiller?  Thank you.

    Hi festuss,
    Can you please let us know how you removed Adobe Distiller from your computer. Also, please let us know the Operating System and the exact version of Adobe Acrobat 9.
    This issue can be related to removing Distiller. You can try repair or uninstalling and re-installing Adobe Acrobat.

  • ORA-28500: connection from ORACLE to a non-Oracle system returned this message: ORA-02063: preceding line from OWB_75

    ORA-28500: connection from ORACLE to a non-Oracle system returned this message: ORA-02063: preceding line from OWB_75
    Scenario:
    I am having difficulty getting ODBC connection between Oracle OWB app with an 11gR2 DB (running on a VirtualBox Linux) and SQL Server 2008 running directly on the host. (Windows 8)
    I am trying to take a SQL Server 2008 feed into Oracle Ware house Builder, and think(!) I have read everything and configured it in accordance (but I presume not given 3 days of failed attempts to fix it). I have also read several blogs, hence there might be a few more settings in the configuration files than the formal documentation says, but these have come from blogs that have “Solved” problems for other similar situations.
    The environments:
    HOST:
    Name: RESOLVEIT-PC
    IP: 192.168.1.80
    Windows 8 (64bit) , with system DSN ODBC connection ACME_POS created with 32 bit ODBC set up (This setting still shows up fine in the 64 bit ODBC).
    GUEST VM:
    Name: OraDBSvr.com
    GUES fixed IP Address: 192.1.200
    Oracle VirtualBox (4.2.16)
    Oracle Redhat Linux 6 (x86)
    Oracle 11gR2 Enterprise Edition (11.2.0.1.0)
    ODBC: Freetds driver
    Configuration files:
    initacmepos.ora
    HS_FDS_CONNECT_INFO = 192.168.1.80/SQLEXPRESS/ACME_POS
    HS_FDS_TRACE_LEVEL = 0
    HS_FDS_SUPPORT_STATISTICS=FALSE
    HS_RPC_FETCH_REBLOCKING= OFF
    HS_FDS_FETCH_ROWS = 1
    HS_FDS_SHAREABLE_NAME = /usr/local/lib/libtdsodbc.so
    set ODBCINI=/opt/odbc/odbc.ini
    # set <envvar>=<value>
    odbc.ini
    [ACME_POS]
    Driver     = FreeTDS
    Description = ODBC Connection via FreeTDS
    Trace       = 1
    Servername  = 192.168.1.80
    Database    = dbo
    odbcinst.ini
    [PostgreSQL]
    Description                        = ODBC for PostgreSQL
    Driver                   = /usr/lib/psqlodbc.so
    Setup                    = /usr/lib/libodbcpsqlS.so
    Driver64                              = /usr/lib64/psqlodbc.so
    Setup64                              = /usr/lib64/libodbcpsqlS.so
    FileUsage                           = 1
    [MySQL]
    Description                        = ODBC for MySQL
    Driver                   = /usr/lib/libmyodbc5.so
    Setup                    = /usr/lib/libodbcmyS.so
    Driver64                              = /usr/lib64/libmyodbc5.so
    Setup64                              = /usr/lib64/libodbcmyS.so
    FileUsage                           = 1
    [FreeTDS]
    Discription             = TDS driver (Sybase / MS SQL)
    Driver                           = /usr/local/lib/libtdsodbc.so
    # Setup                         = /usr/local/lib/libtdsS.so
    FileUsage                           = 1
    CPTimeout               =
    CPReuse                 =
    [oracle@oraDBsvr etc]$
    freetds.conf
    #   $Id: freetds.conf,v 1.12 2007-12-25 06:02:36 jklowden Exp $
    # This file is installed by FreeTDS if no file by the same
    # name is found in the installation directory. 
    # For information about the layout of this file and its settings,
    # see the freetds.conf manpage "man freetds.conf". 
    # Global settings are overridden by those in a database
    # server specific section
    [global]
            # TDS protocol version
    ;              tds version = 4.2
                   # Whether to write a TDSDUMP file for diagnostic purposes
                   # (setting this to /tmp is insecure on a multi-user system)
    ;              dump file = /tmp/freetds.log
    ;              debug flags = 0xffff
                   # Command and connection timeouts
    ;              timeout = 10
    ;              connect timeout = 10
                   # If you get out-of-memory errors, it may mean that your client
                   # is trying to allocate a huge buffer for a TEXT field.
                   # Try setting 'text size' to a more reasonable limit
                   text size = 64512
    # A typical Sybase server
    [egServer50]
                   host = symachine.domain.com
                   port = 5000
                   tds version = 5.0
    # A typical Microsoft server
    [ACME_POS]
      host = 192.168.1.80
      port = 60801                                # also tried 1433
      instance = SQLEXPRESS
      tds version = 8.0
      client charset = UTF-8
    tsql -LH 192.168.1.80
         ServerName RESOLVEIT-PC
       InstanceName SQLEXPRESS
        IsClustered No
            Version 10.50.4000.0
                tcp 60801
                 np \\RESOLVEIT-PC\pipe\MSSQL$SQLEXPRESS\sql\query
                via RESOLVEIT-PC,0:1433
    Oracle listener:
    [oracle@oraDBsvr log]$ cat /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
    # listener.ora Network Configuration File: /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
    # Generated by Oracle configuration tools.
    SID_LIST_LISTENER =
    (SID_LIST =
    (SID_DESC =
    (SID_NAME = acmepos)
    (ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1)
    (PROGRAM = dg4odbc)
    (HS = OK)
    LISTENER =
    (DESCRIPTION_LIST =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = oraDBsvr)(PORT = 1521))
    ADR_BASE_LISTENER = /u01/app/oracle
    [oracle@oraDBsvr log]$ lsnrctl status
    LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 16-SEP-2013 13:57:41
    Copyright (c) 1991, 2009, Oracle.  All rights reserved.
    Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oraDBsvr)(PORT=1521)))
    STATUS of the LISTENER
    Alias                     LISTENER
    Version                   TNSLSNR for Linux: Version 11.2.0.1.0 - Production
    Start Date                16-SEP-2013 13:50:34
    Uptime                    0 days 0 hr. 7 min. 7 sec
    Trace Level               off
    Security                  ON: Local OS Authentication
    SNMP                      OFF
    Listener Parameter File /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
    Listener Log File /u01/app/oracle/diag/tnslsnr/oraDBsvr/listener/alert/log.xml
    Listening Endpoints Summary...
    (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oraDBsvr)(PORT=1521)))
    Services Summary...
    Service "acmepos" has 1 instance(s).
    Instance "acmepos", status UNKNOWN, has 1 handler(s) for this service...
    Service "dw" has 1 instance(s).
    Instance "dw", status READY, has 1 handler(s) for this service...
    Service "dwXDB" has 1 instance(s).
    Instance "dw", status READY, has 1 handler(s) for this service...
    The command completed successfully
    Oracle tnsnames.ora
    [oracle@oraDBsvr admin]$ cat tnsnames.ora
    # tnsnames.ora Network Configuration File: /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora
    # Generated by Oracle configuration tools.
    dw =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = dw)
    acmepos  =
    (DESCRIPTION=
    (ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))
    (CONNECT_DATA=(SID=acmepos)
    (HS=OK)
    Oracle sqlnet.ora
    [oracle@oraDBsvr admin]$ cat sqlnet.ora
    # sqlnet.ora Network Configuration File: /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/sqlnet.ora
    # Generated by Oracle configuration tools.
    NAMES.DIRECTORY_PATH= (EZCONNECT, TNSNAMES)
    ADR_BASE = /u01/app/oracle
    I can connect from the linux server to SQL Server, and query the database:
    [oracle@oraDBsvr etc]$ tsql -S acme_pos -U acme_dw_user -P acme1234
    locale is "en_US.utf8"
    locale charset is "UTF-8"
    using default charset "UTF-8"
    1> select last_name from dbo.employees;
    2> go
    last_name
    Davolio
    Fuller
    Leverling
    Peacock
    Buchanan
    Suyama
    King
    Callahan
    Dodsworth
    (9 rows affected)
    1>
    However, I can’t get a response through Oracle OWB , and I get:
    ORA-28500: connection from ORACLE to a non-Oracle system returned this message: ORA-02063: preceding line from OWB_75
    In the hs log file I get:
    [oracle@oraDBsvr log]$ cat acmepos_agt_3821.trc
    Oracle Corporation --- MONDAY    SEP 16 2013 13:51:22.170
    Heterogeneous Agent Release
    11.2.0.1.0
    HS Gateway:  NULL connection context at exit
    [oracle@oraDBsvr log]$
    I am really stuck now and going round in circles and can’t see the wood for trees! Can anyone please help?!!
    Many Thanks.
    Rafe.

    Let us rewrite your ODBC DSN a little bit... Your current odbc.ini looks like:
    [ACME_POS]
    Driver     = FreeTDS
    Description = ODBC Connection via FreeTDS
    Trace       = 1
    Servername  = 192.168.1.80
    Database    = dbo
    Let us change it a little bit so that we only need one config file - no odbcinst.ini nor freetds.conf file anymore:
    [ACME_POS]
    Driver =/usr/local/lib/libtdsodbc.so
    Server = 192.168.1.80
    Database
    = dbo     ####  I have some doubts that you have a SQL Server database called dbo - one database that always exists is master - so as a test use master here or get the real database name of the SQL Server database you want to connect
    Port = 60801 ## make sure it really is the correct port - best would be to check on the SQL server and then try telnet <ip> <port> if you can connect to the SQL server
    TDS_Version = 8.0
    QuotedId=YES
    Especially the last 2 parameters are mandatory. TDS_Version specifies the TDS Version you have to use to connect to the SQL Server and QuotedID is required for DG4ODBC as it surrounds objevt names by double quotes.
    What happens now when you try to connect with for example isql - the ODBC test utility shipped with the ODBC Driver manager?
    In addition, could you please do me another favour and check the word size of DG4ODBC and the ODBC Driver Manager as well as the ODBC Driver - just execute:
    file /u01/app/oracle/product/11.2.0/dbhome_1/bin/dg4odbc
    file /usr/local/lib/libtdsodbc.so
    file < the patch to your libodbc.so library>/libodbc.so
    and post the output.

  • Empty-Message Handling is not working in receievr File Adapter

    Hi All,
    I have selected "Empty-Message Handling" = 'Ignore'in Receiver File adapter, but still empty files are creating in target directory.
    Message mapping generates output based on the conditon, if the condition is 'false' mapping will generate empty file (no data is being mapped).
    Why Receiver file adapter is processing empty fiels even i set 'ignore' empty fiels in configuration (ID)?
    Hoe can i manage not to place empty fiels in target directory?
    File type is '.txt'
    Your help would be appreiciated greatly.
    Thanks,
    Rajesh

    Not sure why is it not working. Make sure the channel is activated and cache is refreshed properly. But as a workaround you may use OS script checking for size of message and deleting it or configure a BPM to avoid the file creation. Or else an adapter module as shown
    /people/gowtham.kuchipudi2/blog/2006/01/13/stop-creation-of-an-empty-file-from-file-adapter-using-module
    Regards,
    Prateek

  • *** ERROR = BAD REQUEST - Reason: DpRqCheck failed (line 5195): [dpxxdisp.

    Hello All,
    In our development system,  we are able to perform all the transactions normally(SAP level) and there is no performance issues..
    We have checked from OS level in work directory file dev_disp..
    We are getting below error.
    Can you please suggest us on this..............
    =========================================================
    ERROR => DpRqCheck: T72 in stat TM_SLOT_FREE [dpxxdisp.c   5805]
    ***LOG Q0G=> DpRqBadHandle, bad_req ( DIA) [dpxxdisp.c   4621]
    ERROR => BAD REQUEST - Reason: DpRqCheck failed (line 5195): [dpxxdisp.c   4623]
    -IN-- sender_id DISPATCHER        tid  72    wp_ca_blk   -1      wp_id -1
    -IN-- action    SEND_TO_WP        uid  8012   appc_ca_blk -1      type  DIA
    -IN-- new_stat  NO_CHANGE         mode 0     len         -1      rq_id 53650
    -IN-- req_info  MS_ERROR
    ERROR => DpRqCheck: T73 in stat TM_SLOT_FREE [dpxxdisp.c   5805]
    ***LOG Q0G=> DpRqBadHandle, bad_req ( DIA) [dpxxdisp.c   4621]
    ERROR => BAD REQUEST - Reason: DpRqCheck failed (line 5195): [dpxxdisp.c   4623]
    -IN-- sender_id DISPATCHER        tid  73    wp_ca_blk   -1      wp_id -1
    -IN-- action    SEND_TO_WP        uid  8013   appc_ca_blk -1      type  DIA
    -IN-- new_stat  NO_CHANGE         mode 0     len         -1      rq_id 53651
    -IN-- req_info  MS_ERROR
    ERROR => DpRqCheck: T74 in stat TM_SLOT_FREE [dpxxdisp.c   5805]
    ***LOG Q0G=> DpRqBadHandle, bad_req ( DIA) [dpxxdisp.c   4621]
    ERROR => BAD REQUEST - Reason: DpRqCheck failed (line 5195): [dpxxdisp.c   4623]
    -IN-- sender_id DISPATCHER        tid  74    wp_ca_blk   -1      wp_id -1
    -IN-- action    SEND_TO_WP        uid  8014   appc_ca_blk -1      type  DIA
    -IN-- new_stat  NO_CHANGE         mode 0     len         -1      rq_id 53652
    -IN-- req_info  MS_ERROR
    ERROR => DpRqCheck: T77 in stat TM_SLOT_FREE [dpxxdisp.c   5805]
    ***LOG Q0G=> DpRqBadHandle, bad_req ( DIA) [dpxxdisp.c   4621]
    ERROR => BAD REQUEST - Reason: DpRqCheck failed (line 5195): [dpxxdisp.c   4623]
    -IN-- sender_id DISPATCHER        tid  77    wp_ca_blk   -1      wp_id -1
    -IN-- action    SEND_TO_WP        uid  8019   appc_ca_blk -1      type  DIA
    -IN-- new_stat  NO_CHANGE         mode 0     len         -1      rq_id 53653
    -IN-- req_info  MS_ERROR
    Wed Apr  7 08:55:32 2010
    ***LOG Q0K=> DpMsAttach, mscon ( ussapdir00) [dpxxdisp.c   10127]
    Wed Apr  7 08:55:33 2010
    use SAPLOCALHOST=<ussapdir00> as internal hostname
    NiPAccept: accept failed (socket=7;errno=72)
    ***LOG Q0I=> NiPRead: recv (73: Connection reset by peer) [niuxi.c 928]
    SoftCancel request for T45 U8133 M0 received from REMOTE_TERMINAL
    Network error of client T46, NiBufReceive (-6: NIECONN_BROKEN), dp_tm_status=3
    Client address of T46 is 10.228.250.65(10.228.250.65)
    ***LOG Q04=> DpRTmPrep, NiBufReceive (8135 MKK27890 46 BREWL07D4359) [dpxxdisp.c   9830]
    RM-T46, U8135, 620     MKK27890, BREWL07D43598, 08:43:19, M0, W4,     , 2/0
    Network error of client T45, NiBufReceive (-6: NIECONN_BROKEN), dp_tm_status=3
    Client address of T45 is 10.228.250.65(10.228.250.65)
    ***LOG Q04=> DpRTmPrep, NiBufReceive (8133 RR606033 45 BREWL07D4359) [dpxxdisp.c   9830]
    RM-T45, U8133, 600     RR606033, BREWL07D43598, 08:38:22, M0, W0, SPRO, 2/3
    Release check o.K.
    MBUF state PREPARED
    MBUF component UP
    DpMBufHwIdSet: set Hardware-ID
    ***LOG Q1C=> DpMBufHwIdSet [dpxxmbuf.c   1025]
    MBUF state ACTIVE
    Wed Apr  7 08:55:39 2010
    ERROR => DpRqCheck: T45 in stat TM_SLOT_FREE [dpxxdisp.c   5805]
    ***LOG Q0G=> DpRqBadHandle, bad_req ( DIA) [dpxxdisp.c   4621]
    ERROR => BAD REQUEST - Reason: DpRqCheck failed (line 5195): [dpxxdisp.c   4623]
    -IN-- sender_id DISPATCHER        tid  45    wp_ca_blk   -1      wp_id -1
    -IN-- action    SEND_TO_WP        uid  8133   appc_ca_blk -1      type  DIA
    -IN-- new_stat  NO_CHANGE         mode 0     len         -1      rq_id 53678
    -IN-- req_info  LOGOFF CANCELMODE
    Wed Apr  7 08:55:44 2010
    ERROR => DpRqCheck: T46 in stat TM_SLOT_FREE [dpxxdisp.c   5805]
    ***LOG Q0G=> DpRqBadHandle, bad_req ( DIA) [dpxxdisp.c   4621]
    ERROR => BAD REQUEST - Reason: DpRqCheck failed (line 5195): [dpxxdisp.c   4623]
    -IN-- sender_id DISPATCHER        tid  46    wp_ca_blk   -1      wp_id -1
    -IN-- action    SEND_TO_WP        uid  8135   appc_ca_blk -1      type  DIA
    -IN-- new_stat  NO_CHANGE         mode 0     len         -1      rq_id 53676
    -IN-- req_info  LOGOFF CANCELMODE
    ======================================================================
    Thanks in advance..
    Best Regards,
    Kiran

    Hi Kiran,
    It's not a problem or error, it's just a message and hence can be ignored. However you can check out SAP note 1111154 once, it will fix the issue probably if it's happening due to HTTP problem. Else you can very well ignore it.
    Regards
    Sourabh Majumdar

  • IDOC Message type 'ORDCHG' - Sales Order Delete funcanility

    Dear Guru's,
    I have a requirement for a client where client is sending a EDI message to change & Delete a Sales order. I have mapped change option with IDOC message type 'ORDCHG' and basic message type 'ORDERS05'. Change option for the sales order is working fine.
    Can any one tell me with message type 'ORDCHG'. how to delete a Sales Order. In EDI, client is passing only Header segments with Summary details.
    Your reply will of greate help to me.
    With Best Regards,
    M. Rajendran.

    Hi Ram,
    Thanks a lot for sharing the link, but this dint solve my purpose. I have a different case all to geather.
    My client is passing only Header segment and summary segment in the EDI. Thru ORDCHG i need to cancle/Delete entire sales order.
    But i found that in standard IDOC Message type 'ORDCHG' only line item deletion/Cancle is availble but i wanted to delete/cancle entire sales document.
    Any possibilites available in ORDCHG. Your reply will be much appreciated.
    Thanks in Advance.
    With Best Regards,
    M. Rajendran.

  • PRICE LIST LINE을 DELETE 하는 SAMPLE API

    제품 : MFG_QP
    작성날짜 : 2006-05-23
    PRICE LIST LINE을 DELETE 하는 SAMPLE API
    ========================================
    PURPOSE
    Price List Lines을 delete 할 수 있는 API가 있는지 알아보고 그 사용방법
    을 이해한다.
    Explanation
    아래 설명하는 script는 Price List Lines 만을 delete 하는 sample API
    script 이므로 고객사의 business needs에 맞게 고객사에서 script를 수정하
    여 사용하여야 한다.
    Oracle은 QP_LIST_LINES table에 있는 created_by, creation_date 등을 이용
    하여 관련된 records를 읽을 수 있는 cursor를 생성하영 사용할 것을 권장한
    다.
    QP_LIST_LINES table의 list_line_id를 읽어 delete를 위해
    qpr_price_list_line_tbl에 전달한다.
    참고로 각 1000이 반복될때 마다 commit 하는것을 권한다.
    /*$Header: QPPLXMP3.sql 115.3 2001/11/19 18:15:32 pkm ship $*/
    Sample script which deletes an existing Price List line and the product
    information for the line (Product Information is stored in pricing
    attributes table in product attribute columns).
    This sample price list does not have any qualifiers or price breaks or
    non product-information type of pricing attributes.
    This script must be modified by the user such that the
    qpr_pricing_attr_tbl(J).product_attr_value column is populated with a valid
    inventory_item_id from the instance where this script is run. Also, other user variables are noted within arrows, <>.
    Please read the Oracle Pricing User guide (Appendix A & B) to understand
    the flexfields and seed data.
    -- set environment variables
    set serveroutput on size 1000000
    set verify off
    set feedback off
    set echo off
    set autoprint off
    set arraysize 4
    set pagesize 58
    set term on
    set underline =
    set linesize 100
    declare
    gpr_return_status varchar2(1) := NULL;
    gpr_msg_count number := 0;
    gpr_msg_data varchar2(2000);
    gpr_price_list_rec QP_PRICE_LIST_PUB.Price_List_Rec_Type;
    gpr_price_list_val_rec QP_PRICE_LIST_PUB.Price_List_Val_Rec_Type;
    gpr_price_list_line_tbl QP_PRICE_LIST_PUB.Price_List_Line_Tbl_Type;
    gpr_price_list_line_val_tbl QP_PRICE_LIST_PUB.Price_List_Line_Val_Tbl_Type;
    gpr_qualifiers_tbl QP_Qualifier_Rules_Pub.Qualifiers_Tbl_Type;
    gpr_qualifiers_val_tbl QP_Qualifier_Rules_Pub.Qualifiers_Val_Tbl_Type;
    gpr_pricing_attr_tbl QP_PRICE_LIST_PUB.Pricing_Attr_Tbl_Type;
    gpr_pricing_attr_val_tbl QP_PRICE_LIST_PUB.Pricing_Attr_Val_Tbl_Type;
    ppr_price_list_rec QP_PRICE_LIST_PUB.Price_List_Rec_Type;
    ppr_price_list_val_rec QP_PRICE_LIST_PUB.Price_List_Val_Rec_Type;
    ppr_price_list_line_tbl QP_PRICE_LIST_PUB.Price_List_Line_Tbl_Type;
    ppr_price_list_line_val_tbl QP_PRICE_LIST_PUB.Price_List_Line_Val_Tbl_Type;
    ppr_qualifiers_tbl QP_Qualifier_Rules_Pub.Qualifiers_Tbl_Type;
    ppr_qualifiers_val_tbl QP_Qualifier_Rules_Pub.Qualifiers_Val_Tbl_Type;
    ppr_pricing_attr_tbl QP_PRICE_LIST_PUB.Pricing_Attr_Tbl_Type;
    ppr_pricing_attr_val_tbl QP_PRICE_LIST_PUB.Pricing_Attr_Val_Tbl_Type;
    K number := 1;
    j number := 1;
    begin
    oe_debug_pub.initialize;
    oe_debug_pub.setdebuglevel(5);
    Oe_Msg_Pub.initialize;
    DBMS_OUTPUT.PUT_LINE('Debug File = ' || OE_DEBUG_PUB.G_DIR||'/'||
    OE_DEBUG_PUB.G_FILE);
    --dbms_output.put_line('after get price list ');
    /* setup the list_header rec for update */
    gpr_price_list_rec.list_header_id := <price_list_header_id>;
    gpr_price_list_rec.name := <price_list_name>;
    gpr_price_list_rec.list_type_code := 'PRL';
    gpr_price_list_rec.description := '<price_list_description>;
    gpr_price_list_rec.operation := QP_GLOBALS.G_OPR_UPDATE;
    -- delete the price list line rec
    gpr_price_list_line_tbl(K).list_header_id := <price_list_header_id>;
    gpr_price_list_line_tbl(K).list_line_id := <price_list_line_id>;
    gpr_price_list_line_tbl(K).list_line_type_code := 'PLL';
    gpr_price_list_line_tbl(K).operation := QP_GLOBALS.G_OPR_DELETE;
    --dbms_output.put_line('before process price list ');
    QP_PRICE_LIST_PUB.Process_Price_List
    ( p_api_version_number => 1
    , p_init_msg_list => FND_API.G_FALSE
    , p_return_values => FND_API.G_FALSE
    , p_commit => FND_API.G_FALSE
    , x_return_status => gpr_return_status
    , x_msg_count => gpr_msg_count
    , x_msg_data => gpr_msg_data
    , p_PRICE_LIST_rec => gpr_price_list_rec
    , p_PRICE_LIST_LINE_tbl => gpr_price_list_line_tbl
    , p_PRICING_ATTR_tbl => gpr_pricing_attr_tbl
    , x_PRICE_LIST_rec => ppr_price_list_rec
    , x_PRICE_LIST_val_rec => ppr_price_list_val_rec
    , x_PRICE_LIST_LINE_tbl => ppr_price_list_line_tbl
    , x_PRICE_LIST_LINE_val_tbl => ppr_price_list_line_val_tbl
    , x_QUALIFIERS_tbl => ppr_qualifiers_tbl
    , x_QUALIFIERS_val_tbl => ppr_qualifiers_val_tbl
    , x_PRICING_ATTR_tbl => ppr_pricing_attr_tbl
    , x_PRICING_ATTR_val_tbl => ppr_pricing_attr_val_tbl
    IF ppr_price_list_line_tbl.count > 0 THEN
    FOR k in 1 .. ppr_price_list_line_tbl.count LOOP
    dbms_output.put_line('Record = '|| k ||
    'Return Status = '|| ppr_price_list_line_tbl(k).
    return_status);
    END LOOP;
    END IF;
    IF gpr_return_status <> FND_API.G_RET_STS_SUCCESS THEN
    RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
    END IF;
    dbms_output.put_line('after process price list ');
    for k in 1 .. gpr_msg_count loop
    gpr_msg_data := oe_msg_pub.get( p_msg_index => k,
    p_encoded => 'F');
    dbms_output.put_line('err msg ' || k ||' is: ' || gpr_msg_data);
    null;
    end loop;
    EXCEPTION
    WHEN FND_API.G_EXC_ERROR THEN
    gpr_return_status := FND_API.G_RET_STS_ERROR;
    -- Get message count and data
    --dbms_output.put_line('err msg 1 is : ' || gpr_msg_data);
    WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
    gpr_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
    --dbms_output.put_line(' msg count 2 is : ' || gpr_msg_count);
    for k in 1 .. gpr_msg_count loop
    gpr_msg_data := oe_msg_pub.get( p_msg_index => k,
    p_encoded => 'F');
    -- Get message count and data
    dbms_output.put_line('err msg ' || k ||' is: ' || gpr_msg_data)
    null;
    end loop;
    WHEN OTHERS THEN
    gpr_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
    -- Get message count and data
    --dbms_output.put_line('err msg 3 is : ' || gpr_msg_data);
    end;
    commit;
    --- exit;
    Reference Documents
    Note 362667.1

    Name: Chris Mentch
    Region: US/Americas
    Contact E-mail: chris.mentch at mentchconsulting.com
    Website: http://www.mentchconsulting.com
    Time working with BC: 1.5+ years
    Programming Languages: PHP, JSP, Javascript, Ruby/RoR, Jquery, .Net (if I have to), SOAP API
    Custom BC Client Applications: Integrating custom external applications with Business Catalyst through eCommerce and CRM APIs.
    Name: cindy radford
    Region: Americas Canada
    Contact E-mail: [email protected]
    Website: http://.com
    Logo: Link to your logo image (no larger than BC standard partner image, I will place this at the top of your listing)
    Time working with BC: new
    Programming Languages: Cobol and mainframe, starting web development
    Third Party API Experience: Cobol
    Custom BC Client Applications: None as of yet
    Name: eBridgeConnections
    Region: Americas, APAC, Europe, Africa
    Contact E-mail: [email protected]
    Website: http://www.ebridgeconnections.com
    Logo: http://www.ebridgeconnections.com/images/ebhome/logo.png
    Time working with BC: 1.5 years
    Programming Languages: n/a - Back-office integration with 40+ accounting/ERP systems
    Third Party API Experience: 20+ eCommerce platforms, CRM (SalesForce)
    Custom BC Client Applications: B.C. API integration
    Name: OneSaas (www.OneSaas.com) - Cloud Integrations Made Easy
    Contact E-mail: [email protected]
    Website: http://www.onesaas.com
    Time working with BC: 2 yeras
    Third Party API Experience: We integrate over 35 cloud platforms with BC. We know every API from almost every system.

  • Sales order line delete fails for treetype=S line items

    SBO v8.8 PL17
    In a Windows Console DI application, I need to delete lines that have TreeType=S from a Sales Order.
    I get an error message that the Delete Line Failed and no other details for the error.
    I have no trouble deleting the line in the SBO client sales order screen.
    Often, the Sales Bill of Materials (SBOM) for the item on the SO line has changed after the line was created. 
    Could the DI be validating the child item rows (treetype=I) for the father item against the current lines in the SBOM and blocking the deletion because they no longer match? 
    In any case, how can I get around it or at least find out the actual reason the the line deletion fails?

    Is the error description the same when you use old-school error checking?
                         If FixSO.GetByKey(DocEntry) Then
                             FixSO.Lines.SetCurrentLine(LineNum)
                             Try
                                 FixSO.Lines.Delete()
                                 tst = FixSO.Update
                                 If tst &lt;&gt; 0 Then
                                     Dim errCode As Integer = 0
                                     Dim errMsg As String = String.Empty
                                     oCompany.GetLastError(errCode, errMsg)
                                     Console.WriteLine(errCode & " " & errMsg)
                                 End If                   
                             Catch ex As Exception
                                 Status = ex.Message & vbCrLf & oCompany.GetLastErrorDescription
                                 Console.WriteLine(Status)
                             End Try
                         End If

  • XI Bulk Message Handling

    Hi Expert,
    I need to send around 200,000 records as one message from R3 side to 3rd party through PI. I am using proxy to FTP scenario and use SOAP adapter type, XI 3.0 message protocol (use AAE) for proxy. Since the message size is too big, I got an error when I send out "HTTP response contains status code 400 with the description Bad Request". Can anybody tell me how to handle this situation? I see Soap adapter has an option "XI Bulk Message Handling - split XI Bulk Messages". Can anybody tell me if this can solve my problem? And how to use it?
    Thanks a lot!
    Charles

    >Can anybody tell me how to handle this situation? I see Soap adapter has an option "XI Bulk Message Handling - split XI Bulk >Messages". Can anybody tell me if this can solve my problem? And how to use it?
    You might want to use Message Packaging. This might be helpful for perfromance improvement and throughput will be considerably increased.
    Have you seen this [link|http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/10b54994-f569-2a10-ad8f-cf5c68a9447c?QuickLink=index&overridelayout=true] ?

  • Quantity conversion check failed for one item; all qty lines deleted

    Hi IS Oil Experts,
    Iam using the BAPI "BAPI_GOODSMVT_CREATE_OIL" for posting goods movement. I filled the additional quantities and unit of measures also in the BAPI table, But when tried to execute, Iam getting the error, "Quantity conversion check failed for one item; all qty lines deleted"
    Please anybody tell me what is the error from end for resulting this message.
    Thanks in advance
    Prathib

    Dear you!
    I also get the issue that you meet. Can you help me to process it, Please/
    Best regards, Huy.

Maybe you are looking for

  • Empty space in first page if data flows to the next page

    Hello All, i have some windows after the main window and before the footer, like signature and two more. suppose the data in the main window flows to the second page, there is lot of blank space left in the first page as i am printing the signature w

  • Text Styles out of order in IE

    My h4, h3, and p styles are ridiculously large in IE. THis only happens in my left column. The styles look fine in every other browser on both platforms. #left_column { float: left; width: 540px; margin-top: 0px; margin-right: 5px; padding-right: 30p

  • Horizontal scrolling with mouse wheel?

    I have built a website for a client that scrolls only horizontally. Is it possible to scroll with the mouse wheel horizontally? Is there certain HTML I need to add? Thank you

  • ORA-00932: inconsistent datatypes: expected - got - In 11g, WORKS in 9i!

    Hello, Involved in migration of a 9i database to 11g, R2. One of our procedures works in 9i but in 11g gives us "ORA-00932: inconsistent datatypes: expected - got - " We tracked down the error in a statement where oracle does a fetch into a sys_refcu

  • Magic Mouse not working, frozen, how to fix?

    Recently my Magic Mouse cursor became frozen. I can still scroll up and down and zoom in on webpages, I just can't move the cursor. I've tried new batteries, restarting the Imac, rebooting and nothing is working. Any other ways I can get this thing w