BDOCs in status E01 - Technical Error

We are using CRM 7.0 with service order.
We have BDOCs that created automatically after creation of service order or changing in BP details and got stuck in the system and were not processed  (SMW03) .
The BDOCs types:
BUPA_MAIN
BUS_TRANS_MSG
These BDOCs entered into queues in SMQ2 in status ready.
In order these BDOCs will be read automatically, we registered the queues which started with CSA* in SMQR.
Unfortunately, the BDOCs still not processed and now in status E01 u2013 Technical Error (incomplete).
The messages are for each type (BUPA_MAIN and BUS_TRANS_MSG respectively) are:
u201CCould not determine module name: BUPA_MAIN GENKEY: REP_GET_RECIPIENTu201D
u201CService that caused the error: SMOH_REPLICATION_WRAPPER_MSGu201D
Could not determine module name: BUS_TRANSACTION_MESSAGE GENKEY: REP_GET_RECIPIENTu201D
u201CService that caused the error: SMOH_REPLICATION_ERAPPER_MSGu201D
It is important to mention that these BDOCs were not deleted in order not damage data that suppose to be uploaded to the BI.
Due to security issues, we cannot provide connection to the system.
Please advice
Best regards,
Hanoch Aharoni

Hi Hanosh
Please see bleow, this is an extract from very helpful  document attached to note 768503  for the E01 bdocs status:
Description
Technical error. If any of the flow services fail a technical error is raised. Possible reasons
for that error are:
- Data inconsistencies (e.g. between CRM and CDB)
- Implementation and programming errors
- Missing functionality (implementation problems)
Inbound
s-flow
(SI1)
Detection:
Select BDoc message, click button u2018Errorsu2019 and u2018Classical Datau2019
Possibly the inbound s-flow definition (transaction SMO8FD) is not correct
(services do not exist or have syntax error) or the rejection handling in case
of validation errors is not correct.
Solution:
- If no validation errors and no receiver errors exist, retry to process the
message. Otherwise (if no retry possible) correct the error, send the changes
from the sender site (usually Mobile Client) again if possible or request the
data from the leading system to the different receivers and mark the original
failed BDoc message to u201Cdeletedu201D.
Inbound
m-flow
(MI0)
Detection:
Select BDoc message, click button u2018Errorsu2019:
- No validation function defined for BDoc type
- Technical error occurred: Service (usually validation service), BDoc type <>,
BDoc <>
Solution:
Check in table SMW3BDOCIF if the validation module is entered for the
BDoc type. If no retry is possible correct the error, request the message from
the sender system and set the original failed BDoc to u201Cdeletedu201D.
If the error occurs during the call of the validation module, start the
debugging mode, restart the BDoc processing and put a breakpoint at the
validation module. This requires knowledge in the implementation of the
validation module (and application logic). Look for notes related to that
function module, if this is a SAP standard function.
E01
Outbound
m-flow
(MO1)
Detection:
Select BDoc message, click button u2018Errorsu2019:
- Technical error occurred: Service <>, BDoc type <>, Message <>
- Service that caused the error: <>
Solution:
Find a solution to the errors that occurred, for example through SAPNet Note
search or opening a SAPNet problem message on the corresponding
application component. The right application component can be found in the
corresponding properties of the package where the service is implemented
(use transaction SE37 to display the attributes of that function module).
Possibly there is something wrong inside the Mobile Bridge or in the following
services of the s-flow (like CDB update).
Re-process the message (this is allowed for testing purposes; be careful in
the case of a production system, especially if the data in the BDoc message
is not current) or request the data from the sender or from the original system
(this is usually possible for master data but not always for transactional data).
==================================================================
Best regards
Christophe

Similar Messages

  • E01(technical error) bdocs with error "message is empty "

    Hi all,
    While monitoring bdocs using SMW02, we found some bdocs are in error state E01(Technical Error).Details are
    Bdoc type : MKTPROF_MSG
    state         :  E01 (Technical error (incomplete) )
    Error text :   message is empty & Service that caused the  error                        CRM_MKTPROF_MSG_MSA
    Could anyone tell me how to clear these bdocs.
    Regards,
    PV.

    Hi PV,
    Its looks that your mobile bridge is active. If you are not using mobile clients or If marketing objects are not required on the mobile clients, you may deactivate the Mobile Bridge for these objects.
    To deactivate the MOBILE BRIDGE for marketing objects, proceed as follows.
    Use Transaction SE16 to call table SMW3FDCUST.
    Remove the 'ACTIV' flag for the following BDoc types:
    CHARVAL_MSG
    CHAR_MSG
    MKTPROF_MSG
    PFTPL_MSG
    And then reprocess your BDocs. This should solve the problem.
    <b>Reward points if it helps!!</b>
    Best regards,
    Vikash.

  • "A technical error during invocation : Could not invoke service reference" Error message while calling a service from BPM

    Hi Experts,
    We are facing a issue while calling a Automated activity from BPM process, the process gets suspended and the BPM logs says "Process XYZ suspended, A technical error during invocation: Could not invoke service reference name fdhueoegghejietyhsjk6886 Component name ABC " We have already checked the mapped service reference and provider system. Gone through the below link, but no help.
    http://http://wiki.scn.sap.com/wiki/display/TechTSG/Sending+a+message+from+SAP+NetWeaver+BPM+process+to+PI+fails+via+automated+activity?original_fqdn=wiki.sdn.sap.com
    Any pointers or suggestions to fix up this issue will be highly appreciated. Thanks in advance.
    Regards,
    Mohit Jaju

    The details/ID in NWDS Service Reference must exactly match the SOA configuration. Sometimes it's possible you have changed the reference or the group itself and something changed to become mismatched.
    It's possible they don't match - but the SG itself will show green in NWA since the service exists and responds on the target system. Does the ID listed in the error match what is shown in the NWDS project?
    regards, Nick

  • Technical Error when uploading a file using java 1.6.0_17

    When I'm uploading a mp3 file size 84.01 Mb i get the following message:
    Warning-Security
    Name:MyFTPUploader
    Publisher:JavaAtWork
    From:http://mixes.djfez.com
    A box is ticked if you always trust the content from this publisher and then there is the option to run or cancel.
    The Message then states that The digital signature was generated with a trusted certificate but has expired.
    I then choose to run the application.
    I then choose the file from my hard drive to upload(a mp3 file 84.01 Mb), select upload and then the file gets to about 5-7% uploaded and then a message appears Technical Error with an x in a 8 sided pink 2D figure.
    Here is what is shown on the Jarva Console:
    Java Plug-in 1.6.0_17
    Using JRE version 1.6.0_17-b04 Java HotSpot(TM) Client VM
    User home directory = C:\Users\Owner\Downloads
    c: clear console window
    f: finalize objects on finalization queue
    g: garbage collect
    h: display this help message
    l: dump classloader list
    m: print memory usage
    o: trigger logging
    q: hide console
    r: reload policy configuration
    s: dump system and deployment properties
    t: dump thread list
    v: dump thread stack
    x: clear classloader cache
    0-5: set trace level to <n>
    Reading certificates from 10215 http://mixes.djfez.com/admin/myftpuploader-standard-signed-v131.jar | C:\Users\Owner\AppData\LocalLow\Sun\Java\Deployment\cache\6.0\61\66a2727d-46f2f117.idx
    MyFTPUploader Standard Edition version 1.3.1
    © Copyright JavaAtWork 2005-2008. All rights reserved.
    Reading certificates from 11 http://mixes.djfez.com/admin/labels.jar | C:\Users\Owner\AppData\LocalLow\Sun\Java\Deployment\cache\6.0\27\7b49829b-46cb6a8e.idx
    220 ProFTPD 1.3.0 Server (DreamHost FTP) [66.33.200.61]
    331 Password required for mixes.
    230 User mixes logged in.
    200 Type set to I
    550 uploads/2707/: No such file or directory
    550 uploads/2707/: No such file or directory
    250 CWD command successful
    257 "/uploads/2707" - Directory successfully created
    250 CWD command successful
    257 "/uploads/2707" is current directory.
    227 Entering Passive Mode (66,33,200,61,148,196).
    150 Opening BINARY mode data connection for LittleJohn_Happier_Beats_Vol_1.mp3
    Dec 7, 2009 9:40:45 PM - FTPUploadTask - upload() - java.net.SocketException: Connection reset by peer: socket write error
    Dec 7, 2009 9:40:45 PM - FTPUploadTask - logout() - java.net.SocketException: Connection reset by peer: socket write error
    Operating System is Windows Vista Home
    If anyone could help me overcome this error it would greatly be appreciated.

    If anyone could help me overcome this error it would greatly be appreciated. Java questions here concern programming, not product support.
    Connection reset by peer: socket write errorThat says that the server, where the file comes from, closed the connection.
    The most likely possibilities
    1. The client software is not correctly communicating with the server. Solution: fix the client
    2. The server is not correctly handling this request. Solution: fix the server
    3. The server doesn't want to talk the the client. Solution: fix both the server and the client.
    From the above unless you are in a position to fix something then you do not have an option.
    If you yourself cannot fix either of those then this is a vendor problem and you must contact the vendor (creator) of the software client and/or server. You would do that somewhere besides this site.

  • Error in XI: Technical Error

    Hi,
    We have one ECC 6 and one PI 7.0 in our landsacpe, recently we have configured SLD throught SLDAPICUST.
    RFC is also working fine.
    But when ever users are entering in VA01, they are getting a pop-up asking for login detials for the PI system, but the users in ECC don't have login in PI.
    When they click on cancel, we are getting "Error in XI: Technical Error".
    Message no. UKM_PI008.
    Anyone has any idea about this error and how to solve it.
    Thank you,
    Siv

    HI
    There is no relationship betweenSLD config and error you are receiving.
    As mentioned you might be interfacing with XI/PI for pushng/pulling some information , in that case it is necessary to provide username and password.
    May be you want to concerns the responsible person who has configured the interfacing scenario
    Regards,

  • Idoc- can we sent already sended idoc if status is showing error message

    hi
    Idoc- can we sent already sended idoc if status is showing error message
    without making any changes.
    Thanks in advance.

    Hi raja,
    IN BD87.
    give the idoc number,its status,messagetype and partner system and resend it.
    Regards,
    nagaraj

  • Status message shows  " Error in Process" in SRM

    Hi,
    At the time of Confirmation, status message shows  " Error in Process " in SRM.
    So please suggest the solution & the possible cause for the Error.
    Thanks,
    Neha

    Pl goto RZ20, SAP Enterprise Buyer monitor--confirmation and open the alerts.
    All error logs have to be there. How will you analyse otherwise as to what went wrong?
    Have you done the partner profile settings for confirmation? Defined ports in SRM? Are you on classic/extended classic?
    Nikhil

  • PO status displayed in error

    Hi,
    We have implemented SRM extended classic scenario.
    1) Shopping carts after approval, are getting converted to Purchase Orders (PO's), but in the web the PO status (for some only) is being displayed as "In Error".
    The PO is successfully replicated in R/3. These are old PO's. We cannot manually go and change the status in table CRM_JEST as we are in the production environment. why are we getting this error
    2) What are the function modules used to update the status (PO In error).
    Thanks and Regards,
    Jack

    Executed the FM BBP_PD_PO_STATUS_CHANGE by entering the PO GUID and with the status as I1180 (The PO status in the web is "PO In Error" and in TCode BBP_PD it is dispaying as I1180). But the status is not getting changed, the FM module is not returning any values (messages)
    Also executed FM BBP_PD_PO_STATUS_CHANGE_DIRECT, by entering the PO GUID, Item GUID, activity as " RELP"and Save DB as "X"
    1) Are the values for FM BBP_PD_PO_STATUS_CHANGE_DIRECT, "RELP" for activity and "X" for save DB correct. If not what should be the correct values, as the status is not getting changed
    2) Is there anything else that I need to do to change the status of the PO from "In error" in the web?

  • Error sending DAV request. HTTP code 500, status 'Internal Server Error'

    Hi All,
    I am getting the error On SCCM R2 Environment .. on the client machine we are getting the below issue and software center 
    is not showing any information..
    While checking on the client's DatatransferService.log.. i am getting the below issues..
    Successfully sent location services HTTP failure message.
    Error sending DAV request. HTTP code 500, status 'Internal Server Error'
    GetDirectoryList_HTTP('http://MachineName:80/SMS_DP_SMSPKG$/7ea0b105-5592-48cd-8b8e-81777537c34f') failed with code 0x87d0027e.
    i realize it because of Isapi filter issues.. can any one guide me to resolve the issues..
    KJSUBBU

    Hi,
    In addition, I recommend you check whether you have additional Authentication methods (like ASP.NET Impersonation) enabled. 
    Disable the authentication method and try again.
    Also, please review the link below, here is a article about troubleshoot ISAPI filter issue.
    Error message when you visit a Web site that is hosted on IIS 7.0: "HTTP Error 500.0 – Internal Server Error"
    http://support.microsoft.com/kb/942031
    We
    are trying to better understand customer views on social support experience, so your participation in this
    interview project would be greatly appreciated if you have time.
    Thanks for helping make community forums a great place.

  • OOPS A TECHNICAL ERROR OCCURRED

    Why must it be so very difficult with all those installations of softwares? Some clever technicians should look at this. Ok it is certainly so that we customers are doing something wrong. But let us know that when we do an installation. And tell us exactly what to do instead of OOPS A TECHNICAL ERROR OCCURRED.
    I try to install Flash Player on my new mac book pro that has OS X 10.9 installed. The whole setup works perfectly. But when I try to play music on for example Google Play nothing happen. You get this stupid message OOPS A TECHNICAL ERROR OCCURRED Yes, I understand that too. BUT WHAT EXACTLY IS  WRONG! I do the same setup in my iMac with OS X 10.8. The installation is carried out in the same unproblematic way. Additionally, Flash Player works perfectly in Google Play music.
    My question is: What am I doing wrong with my attempt to install the Flash Player in OS X 10.9.
    Unfortunately, it's often the case that when these eternal updates such as OS X is done, not all programs or devices connected to the computer compatible with the new software. My large format printer stops almost always operate at an update of a new operating system. Because the new operating system is not compatible with my printer and you had to wait for a new update for your printer.
    I look forward to an "one click" installation.
    Mr Lerin

    The details/ID in NWDS Service Reference must exactly match the SOA configuration. Sometimes it's possible you have changed the reference or the group itself and something changed to become mismatched.
    It's possible they don't match - but the SG itself will show green in NWA since the service exists and responds on the target system. Does the ID listed in the error match what is shown in the NWDS project?
    regards, Nick

  • Getting technical error

    Getting oops technical error while making skype recharge. I m getting this error after clicking buy credit button.
    Please note: I have already put $8.99 recharge on 28th november 2014, I want to put the same again. Kindly do the needful.

    Satish,
    Just so you know, this BADI "links" SD module to FSCM credit management. If you use the right code in this BADI, it copies over credit information on to the sales order such as Credit Account, Risk Class and Credit representative code.  (Later this risk class, order's credit control area and credit group is used to look up the appropriate line in OVA8 settings)
    Now you could be getting this error for any of the issues:
    1. If the business partner is not created for the customer for which you're trying create a sales order (The credit account (sales order header) should have a relevant BP already) Check if the BP is correctly created.
    2. Next if the credit data has been maintained for the BP in credit management.
    3. XI/PI connectivity issues etc
    Check if all this is maintained and you should be good. Cheers

  • Regarading IDOC status 26 ,syntax error

    Hi All,
    we have some problem to create IDOC type ORDERS05 for Purchase Order.
    *ERROR STATUS 26:*
    (SYNTAX ERROR IN IDOC (SEGMENT CANT B IDENTIFIED))
    msg number E0078:
    The segment E1EDK14 does not occur at the current level of the basic type ORDERS05 (extension ) AND
       e1edk14 segment missed.instead of 5 ,it shows only 4.
    *ERROR STATUS 26:*
    (SYNTAX ERROR IN IDOC (MANDATORY DATA MISSING))
    msg E0072:The segment E1EDK01 has the attribute 'Mandatory' in the syntax description of the basic type ORDERS05 (customer enhancement ).
    header data was totally different.
    it contains street fields,n country ,,like dat,instead of document number
    However, the segment is missing in the IDoc. The segment number logged in the status record identifies the item before which the segment is missing.
    This happens for order create (ORDERS) and for order change (ORDCHG)
    Do you have any idea to solve the problem? I'm using a standard IDOC.

    hi
    Usually posting program contains your logic which exists in process code this process code contain function module nothing but posting program
    and also
    check whether u r using
    1) sap standard program
    2) user defined program
    3) enhancing sap program using user exits
    if it is standard program check all ur ALE settings once again
    if ur using user defined check ur program logic and compare it with idoc structure
    if ur enhancing sap standard program check partner profiles using correct message & idoc type
    check your user exit logic
    reward if u find helpful
    Thanks&Regards
    Nagesh.Paruchuri

  • Error Logging in B2B Business Message Status Reports and Error Reports.

    Hi,
    Could someone please let us know as to how the error messages are being shown up in the b2b frontend in the Business Message Details Report and Error Reports.
    In some of the cases the error message logging is not happening properly and even against the valid transaction block the entire iAudit Report or the B2B Analyzer report is getting posted .
    In some cases the error message is logged as AIP-51505: General Validation Error (for the transaction block which is valid and having no errors)
    Is there any way from the b2b backend these error messages and business messages could be traced or is there any other way wherein the proper and relevant error messages could be tracked from B2B.
    Thanks
    Sachin.

    Hello,
    Business message status reports identify business message instance details.These details include the sending and receiving trading partners, exchange protocol,document protocol, business action and its state, message date, and message details.
    Error status reports identify error message details. These details include the error code, error text, business message identification, message date, and message details.
    Please fix up a telecon to 918041086150 for further discussion on the same.
    Rgds,Ramesh

  • Documents remain in GenWWW status and conversion error message says success

    Hi,
    I have instaled UCM 11.1.1.4 and the situation is that documents remains in GenWWW status, the
    conversion error message says success . In Ibr logs says everything went perfect, in UCM logs isn't recorded any error.
    Anyone have a clue to solve this problem?
    Update:
    When runnig IdcAnalyse appears the following error:
    ./IdcAnalyze -filesystem
    FileSystemFileStore:1.0.0.0 started.
    Content Management System Server. Version 11gR1-11.1.1.4.0-idcprod1-101229T001824
    Copyright (C) 1996-2011, Oracle and/or its affiliates. All rights reserved.
    Analyzing filesystem...
    .....................Error checking filesystem: Unable to locate extension for rendition flag 'L'.
    Is this error related with the documents remain in GenWWW?
    Thanks
    Edited by: carlos.pereira on Jul 26, 2011 4:58 PM
    Edited by: carlos.pereira on Jul 26, 2011 5:00 PM

    Usually this issue is seen when the IBR's cannot keep up with the load and after a defined amount of time, the refineryjobs entries are cleared while the IBR's might still hold this content item.
    If you do what Srinath proposes the refinery jobs is cleared as well as the queues on the IBR. This will not fix the issue with the documents in GenWWW, but it will make the way clear for (new) documents to be (Re-)submitted for conversion. IdcAnalyze should then be able to create a IdcCommand file with resubmit_for_conversion calls for all the documents in GenWWW state. Running this IdcCommand file should then convert all the documents that were "stuck" in GenWWW.

  • No session found with status "New" or "Error"

    Hi,
    I put the statement after the CLOSE GROUP to process the BDC automatically:
      SUBMIT RSBDCSUB AND RETURN
             EXPORTING LIST TO MEMORY
             WITH MAPPE = SESSION.
             WITH VON = SY-DATUM
             WITH BIS = L_NEXT_DAY
             WITH Z_VERARB = 'X'
             WITH FEHLER = ' '.
    And when I ran it I got an error that says
    <i>No session found with status "New" or "Error"</i>
    When I go to SM35, I see the session in the 'New' tab.  How can I get this to process completely without manual intervention or first thing first no error from running the program?
    Thanks,
    Will

    Hi Rob,
    I will try the COMMIT. I think because I processing mutltiple GS01 transaction in one program.
    Hi Sudheer,
    I am actually usinng the INCLUDE that was given to me when I did the recording.  Here is the complete code from the include.
    ***INCLUDE BDCRECX1.
    for programs doing a data transfer by creating a batch-input session
    and
    for programs doing a data transfer by CALL TRANSACTION USING
    SELECTION-SCREEN BEGIN OF LINE.
      PARAMETERS SESSION RADIOBUTTON GROUP CTU.  "create session
      SELECTION-SCREEN COMMENT 3(20) TEXT-S07 FOR FIELD SESSION.
      selection-screen position 45.
      PARAMETERS CTU RADIOBUTTON GROUP  CTU.     "call transaction
      SELECTION-SCREEN COMMENT 48(20) TEXT-S08 FOR FIELD CTU.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
      SELECTION-SCREEN COMMENT 3(20) TEXT-S01 FOR FIELD GROUP.
      selection-screen position 25.
      PARAMETERS GROUP(12).                      "group name of session
      SELECTION-SCREEN COMMENT 48(20) TEXT-S05 FOR FIELD CTUMODE.
      selection-screen position 70.
      PARAMETERS CTUMODE LIKE CTU_PARAMS-DISMODE DEFAULT 'N'.
                                          "A: show all dynpros
                                          "E: show dynpro on error only
                                          "N: do not display dynpro
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
      SELECTION-SCREEN COMMENT 3(20) TEXT-S02 FOR FIELD USER.
      selection-screen position 25.
      PARAMETERS: USER(12) DEFAULT SY-UNAME.     "user for session in batch
      SELECTION-SCREEN COMMENT 48(20) TEXT-S06 FOR FIELD CUPDATE.
      selection-screen position 70.
      PARAMETERS CUPDATE LIKE CTU_PARAMS-UPDMODE DEFAULT 'L'.
                                          "S: synchronously
                                          "A: asynchronously
                                          "L: local
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
      SELECTION-SCREEN COMMENT 3(20) TEXT-S03 FOR FIELD KEEP.
      selection-screen position 25.
      PARAMETERS: KEEP AS CHECKBOX.       "' ' = delete session if finished
                                          "'X' = keep   session if finished
      SELECTION-SCREEN COMMENT 48(20) TEXT-S09 FOR FIELD E_GROUP.
      selection-screen position 70.
      parameters E_GROUP(12).             "group name of error-session
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
      SELECTION-SCREEN COMMENT 3(20) TEXT-S04 FOR FIELD HOLDDATE.
      selection-screen position 25.
      PARAMETERS: HOLDDATE LIKE SY-DATUM.
      SELECTION-SCREEN COMMENT 51(17) TEXT-S02 FOR FIELD E_USER.
      selection-screen position 70.
      PARAMETERS: E_USER(12) DEFAULT SY-UNAME.    "user for error-session
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
      SELECTION-SCREEN COMMENT 51(17) TEXT-S03 FOR FIELD E_KEEP.
      selection-screen position 70.
      PARAMETERS: E_KEEP AS CHECKBOX.     "' ' = delete session if finished
                                          "'X' = keep   session if finished
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
      SELECTION-SCREEN COMMENT 51(17) TEXT-S04 FOR FIELD E_HDATE.
      selection-screen position 70.
      PARAMETERS: E_HDATE LIKE SY-DATUM.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN SKIP.
    SELECTION-SCREEN BEGIN OF LINE.
      SELECTION-SCREEN COMMENT 1(33) TEXT-S10 FOR FIELD NODATA.
      PARAMETERS: NODATA DEFAULT '/' LOWER CASE.          "nodata
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
      SELECTION-SCREEN COMMENT 1(33) FOR FIELD SMALLLOG.
      PARAMETERS: SMALLLOG as checkbox.  "' ' = log all transactions
                                         "'X' = no transaction logging
    SELECTION-SCREEN END OF LINE.
      data definition
          Batchinputdata of single transaction
    DATA:   BDCDATA LIKE BDCDATA    OCCURS 0 WITH HEADER LINE.
          messages of call transaction
    DATA:   MESSTAB LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.
          error session opened (' ' or 'X')
    DATA:   E_GROUP_OPENED.
          message texts
    TABLES: T100.
      at selection screen                                                *
    AT SELECTION-SCREEN.
    group and user must be filled for create session
      IF SESSION = 'X' AND
         GROUP = SPACE OR USER = SPACE.
        MESSAGE E613(MS).
      ENDIF.
      open dataset                                                       *
    FORM OPEN_DATASET USING P_DATASET.
      OPEN DATASET P_DATASET
                   FOR INPUT IN TEXT MODE
                   ENCODING DEFAULT.
      IF SY-SUBRC <> 0.
        WRITE: / TEXT-E00, SY-SUBRC.
        STOP.
      ENDIF.
    ENDFORM.
      close dataset                                                      *
    FORM CLOSE_DATASET USING P_DATASET.
      CLOSE DATASET P_DATASET.
    ENDFORM.
      create batchinput session                                          *
      (not for call transaction using...)                                *
    FORM OPEN_GROUP.
      IF SESSION = 'X'.
        SKIP.
        WRITE: /(20) 'Create group'(I01), GROUP.
        SKIP.
      open batchinput group
        CALL FUNCTION 'BDC_OPEN_GROUP'
             EXPORTING  CLIENT   = SY-MANDT
                        GROUP    = GROUP
                        USER     = USER
                        KEEP     = KEEP
                        HOLDDATE = HOLDDATE.
        WRITE: /(30) 'BDC_OPEN_GROUP'(I02),
                (12) 'returncode:'(I05),
                     SY-SUBRC.
      ENDIF.
    ENDFORM.
      end batchinput session                                             *
      (call transaction using...: error session)                         *
    FORM CLOSE_GROUP.
      IF SESSION = 'X'.
      close batchinput group
        CALL FUNCTION 'BDC_CLOSE_GROUP'.
        WRITE: /(30) 'BDC_CLOSE_GROUP'(I04),
                (12) 'returncode:'(I05),
                     SY-SUBRC.
      ELSE.
        IF E_GROUP_OPENED = 'X'.
          CALL FUNCTION 'BDC_CLOSE_GROUP'.
          WRITE: /.
          WRITE: /(30) 'Fehlermappe wurde erzeugt'(I06).
          E_GROUP_OPENED = ' '.
        ENDIF.
      ENDIF.
    ENDFORM.
           Start new transaction according to parameters                 *
    FORM BDC_TRANSACTION USING TCODE.
      DATA: L_MSTRING(480).
      DATA: L_SUBRC LIKE SY-SUBRC.
    batch input session
      IF SESSION = 'X'.
        CALL FUNCTION 'BDC_INSERT'
             EXPORTING TCODE     = TCODE
             TABLES    DYNPROTAB = BDCDATA.
        IF SMALLLOG <> 'X'.
          WRITE: / 'BDC_INSERT'(I03),
                   TCODE,
                   'returncode:'(I05),
                   SY-SUBRC,
                   'RECORD:',
                   SY-INDEX.
        ENDIF.
    call transaction using
      ELSE.
        REFRESH MESSTAB.
        CALL TRANSACTION TCODE USING BDCDATA
                         MODE   CTUMODE
                         UPDATE CUPDATE
                         MESSAGES INTO MESSTAB.
        L_SUBRC = SY-SUBRC.
        IF SMALLLOG <> 'X'.
          WRITE: / 'CALL_TRANSACTION',
                   TCODE,
                   'returncode:'(I05),
                   L_SUBRC,
                   'RECORD:',
                   SY-INDEX.
          LOOP AT MESSTAB.
            SELECT SINGLE * FROM T100 WHERE SPRSL = MESSTAB-MSGSPRA
                                      AND   ARBGB = MESSTAB-MSGID
                                      AND   MSGNR = MESSTAB-MSGNR.
            IF SY-SUBRC = 0.
              L_MSTRING = T100-TEXT.
              IF L_MSTRING CS '&1'.
                REPLACE '&1' WITH MESSTAB-MSGV1 INTO L_MSTRING.
                REPLACE '&2' WITH MESSTAB-MSGV2 INTO L_MSTRING.
                REPLACE '&3' WITH MESSTAB-MSGV3 INTO L_MSTRING.
                REPLACE '&4' WITH MESSTAB-MSGV4 INTO L_MSTRING.
              ELSE.
                REPLACE '&' WITH MESSTAB-MSGV1 INTO L_MSTRING.
                REPLACE '&' WITH MESSTAB-MSGV2 INTO L_MSTRING.
                REPLACE '&' WITH MESSTAB-MSGV3 INTO L_MSTRING.
                REPLACE '&' WITH MESSTAB-MSGV4 INTO L_MSTRING.
              ENDIF.
              CONDENSE L_MSTRING.
              WRITE: / MESSTAB-MSGTYP, L_MSTRING(250).
            ELSE.
              WRITE: / MESSTAB.
            ENDIF.
          ENDLOOP.
          SKIP.
        ENDIF.
    Erzeugen fehlermappe ************************************************
        IF L_SUBRC <> 0 AND E_GROUP <> SPACE.
          IF E_GROUP_OPENED = ' '.
            CALL FUNCTION 'BDC_OPEN_GROUP'
                 EXPORTING  CLIENT   = SY-MANDT
                            GROUP    = E_GROUP
                            USER     = E_USER
                            KEEP     = E_KEEP
                            HOLDDATE = E_HDATE.
             E_GROUP_OPENED = 'X'.
          ENDIF.
          CALL FUNCTION 'BDC_INSERT'
               EXPORTING TCODE     = TCODE
               TABLES    DYNPROTAB = BDCDATA.
        ENDIF.
      ENDIF.
      REFRESH BDCDATA.
    ENDFORM.
           Start new screen                                              *
    FORM BDC_DYNPRO USING PROGRAM DYNPRO.
      CLEAR BDCDATA.
      BDCDATA-PROGRAM  = PROGRAM.
      BDCDATA-DYNPRO   = DYNPRO.
      BDCDATA-DYNBEGIN = 'X'.
      APPEND BDCDATA.
    ENDFORM.
           Insert field                                                  *
    FORM BDC_FIELD USING FNAM FVAL.
      IF FVAL <> NODATA.
        CLEAR BDCDATA.
        BDCDATA-FNAM = FNAM.
        BDCDATA-FVAL = FVAL.
        APPEND BDCDATA.
      ENDIF.
    ENDFORM.
    Thanks
    Will
    I awarded points to everyone. Thanks so much.
    Message was edited by:
            Will Ferrell

Maybe you are looking for