When Background task raises exception that is not handeled

Hi,
I am using a background task that uses a method which does not handle exceptions raised by the function module it calls in turn. When such situation arises, i want to build some sort of exception handling mechanism in my workflow.
e.g, BG task uses method 1 that calls method 2. method 2 raises some exception which is not handled in method1 or method2 results into short dump. As a result of this situation Workflow bg task changes the status to ERROR and I want to handle such unplanned exceptions in Workflow.
Is there anyway for workflow to know (maybe some event) when one of it's BG task status changes to ERROR?
Thanks,
Saurabh

Hi,
Just use the exit_return macro in your method. See the following example.
BEGIN_METHOD 'Method_Name' CHANGING CONTAINER
**Data Declaration
**fetching data from container
CALL FUNCTION 'Function_module_name'
   EXPORTING
   IMPORTING
   TABLES
   EXCEPTIONS
     exception1 = 01
     OTHERS = 02.
   IF sy-subrc ne 0.
     EXIT_RETURN 9001 SPACE SPACE SPACE SPACE. 
                       "Define this event in the exceptions of the method.
   ENDIF.
Passing data to container
END_METHOD.
After doing these changes in your method, you will be able to see your exception in the outcomes tab of the activity. Just activate your exception there. You will get a new branch for this exception in your workflow. In this branch, you can determine how do u want to handle the exception.
Hope this will help you. Let me know if you have any doubt.
Thanks
Yogesh Sharma
Edited by: Yogesh Sharma on Jul 10, 2008 8:54 AM
Edited by: Yogesh Sharma on Jul 10, 2008 8:56 AM
Edited by: Yogesh Sharma on Jul 10, 2008 8:57 AM

Similar Messages

  • An exception that could not be caught occurred.

    While creating shopping cart at the very first step I am getting following error message.
    Error when processing your request
    Note
    The following error text was processed in the system: An exception that could not be caught occurred.
    The error occurred on the application server and in the work process 1.
    The termination type was: RABAX_STATE
    The ABAP call stack was:
    Function: BBP_PD_ABORT of program SAPLBBP_PDH
    Form: ABORT of program SAPLBBP_PDORG
    Form: CHECK_PROC_ORG_AND_GROUP of program SAPLBBP_PDORG
    Form: ORG_CHECK_SINGLE of program SAPLBBP_PDORG
    Form: ORG_MAINTAIN_SINGLE of program SAPLBBP_PDORG
    Function: BBP_PDORG_CREATE of program SAPLBBP_PDORG
    Form: ITEM_F_CREATE_FROM_WTAB of program SAPLBBP_PDIAD
    Form: ITEMLIST_F_UPDATE of program SAPLBBP_PDIAD
    Function: BBP_ITEMLIST_UPDATE of program SAPLBBP_PDIAD
    Form: PROCDOC_UPDATE of program SAPLBBP_PD
    What can I do?
    If the termination type was RABAX_STATE, then you can find more information on the cause of the termination in the system DSR in transaction ST22.
    If the termination type was ABORT_MESSAGE_STATE, then you can find more information on the cause of the termination on the application server in transaction SM21.
    If the termination type was ERROR_MESSAGE_STATE, then you can search for more information in the trace file for the work process 1 in transaction ST11 on the application server. In some situations, you may also need to analyze the trace files of other work processes.
    If you do not yet have a user ID, contact your system administrator.
    Error code: ICF-IE-http-c -l:E-s: -i: -w:1-d:20080606-t:104953-v: RABAX_STATE-e: UNCAUGHT_EXCEPTION
    HTTP 500 - Internal Server Error
    Your SAP Internet Communication Framework Team
    I have checked In ST22 (ABAP Dump Analysis) it says,
    Runtime Errors         UNCAUGHT_EXCEPTION
    Exceptn                    CX_BBP_PD_ABORT
    ShrtText
        An exception that could not be caught occurred.
      The exception 'CX_BBP_PD_ABORT' was raised but was not caught at any stage in the call hierarchy.
      Since exceptions represent error situations, and since the system could not react adequately to this error, the current program, 'SAPLBBP_PDH', had to be terminated.
    I also checked the note no. 673372
    SAP Note     673372              Version  9     
    Implementation Status           Cannot be implemented          
    Processing Status   New        Processor                  
    As per the note I checked BBP_CND_CUSTOMIZING_CHECK, it through an error of IPC not running, As if this is a classic scenario I guess IPC is not used. 
    Please guide me to solve this issue.
    Regards,
    Vivek B.

    Hi Vivek,
    Having a look a would say that the problem is in the determination of  purchasing organization. I would advice to review the attributes in PPOMA, mainly the responsability of the organizational unit that you has defined as purchasing group and purchasing unit.
    I hope this help
    BR

  • Common Language Runtime Debugging Services Application has generated an exception that could not be handled

    Our custom got an error when startup our .NET windows form application.
    XXXXX.exe - Common Language Runtime Debugging Services
    Application has generated an exception that could not be handled
    Process id=0x654(1620), Thread id = 0x5b0 (1456)
    Click OK to terminate the application
    Click CANCEL to debug the application
    If they click on "CANCEL" then following error message appears:
    Registered JIT debugger is not available. An attempt to launch a JIT
    debugger with the following command resulted in an error code of 0x2(2)
    Please check the computer settings
    cordbg.exe !a0x654
    Click on Retry to have the process wait while attaching a debugger
    manually.
    Click on Cancel to abort the JIT debug request
    We can not duplicate this problem in our development environment and test environment. So, we ask them to uninstall application, .NET Framework 1.1 and resinstall .NET Framework 1.1 and application. They still got same error. We further ask them to install .NET Framework SDK 1.1. They got some detail error message.
    [thread 0x840] Thread created.
    Unable to determine existence of prolog, if any
    [thread 0x188] Thread created.
    [thread 0xba8] Thread created.
    [thread 0x840] Unhandled exception generated: <0x00c0344c> <System.IO.FileNotFoundException>
     _fileName=<null>
     _fusionLog=<null>
     _className=<null>
     _exceptionMethod=<null>
     _exceptionMethodString=<null>
     _message=<0x00c04cc8> "The specified module could not be found."
     _innserException=<null>
     _helpURL=<null>
     _stackTrace=<0x00c04d2c> array with dims=[156]
     _stackTraceString=<null>
     _remoteStackTraceString=<null>
     _remoteStackIndex=0x00000000
     _HResult=0x8007007e
     _source=<null>
     _xptrs=0x00000000
     _xcode=0xe0434fd
    Thread 0x840 R 0x00000000: <unknown>
    <cordbg>
    Looks like the problem is casued by missing component. But we don't know which component missing and how to find it. Is there anybody can give us some clue what we need to check next and what tool we can use to detect missing component.
    Thanks!!!!

    I tried Dependency Walker in our development environment, looks like it's useless for .NE T Window Form application, the result I got is like bellow,
    XXXXX.EXE
        MSCOREE.DLL
            KERNEL32.DLL
            USER32.DLL
            ADVAPI32.DLL
            SHLWAPI.DLL
            URLMON.DLL
            VERSION.DLL
    I know we used some other DLL like Mirosoft Office Object Library, but MSCOREE.DLL (.NET Runtime Engine) covered them. Any other idea? Thanks!!!!

  • An exception that could not be caught occurred -- SYSFAIL in QUEUE

    hi.
    my server shutdown for electricity problems. when i was traying to reactive queues one of then was SYSFAIL.
    the details of SYSFAIL was:  An exception that could not be caught occurred.
    i cant reactive this queue??
    any suggestion??
    thanks ans regards

    Hi,
    When you go to Queue transcation SMQ1 or SMQ2 for that particular messgae please look into the description of the error message double click on the item and you will get more info. Please post that, it might say something like a Function module does not exist or something like that.
    Do check and let us know.
    Also check in SMICM-->Services check if HTTP port are fine.
    Thanks,
    Prakash

  • Exchange Personal Archive - When Replying To A Message That Is Not In the Inbox, Save The Reply In The Same Folder

    -Settings
    Exchange 2010 enterprise on-premise
    Outlook 2013 std
    Exchange Personal Archive
    Feature : Option/Email/When Replying To A Message That Is Not In the Inbox, Save The Reply In The Same Folder
    Hi,
    the feature works fine in the mailbox of the user but not from within the exchange personal archive.
    Instead the reply is saved in the send items folder of the mailbox.
    Any suggestions how to make this work?
    Best Regards,
    zrvb

    AFAIK, that is how it is intended to work. The archive is considered as "old-emails" so the newly created reply doesn't fall within that category.
    Contact Microsoft Support by phone to submit it as a bug when it is "unexpected behavior" from your point of view or otherwise as a feature request/design change.
    Robert Sparnaaij
    [MVP-Outlook]
    Outlook guides and more: HowTo-Outlook.com
    Outlook Quick Tips: MSOutlook.info

  • Application has generated an exception that could not be handled

    my add on works fine on some PC's but on one particular one keeps crushing giving
    Application has generated an exception that could not be handled
    Process id =0x147c(5244), thread id=0x1478 (5240)
    or
    "Incorrect Connection string for Add on"  messages
    After browsing net I found solution to my problem therefore I have decided to post it here, so those who will hit it could find the answer.
    If you get this error, you will need to adjust the .NET security with 'Microsoft .NET Framework Wizards' . As simple as that.
    enjoy
    P.S. I wasted 5 days re-installing software

    Hey Dleksiy,
    Could you tell me how did you(i am expecting steps followed) adjust the .NET security using .net framework wizard my customer is facing the same error message "incorrect connection string for add-on"..
    Thanks in advance
    Regards...

  • I'm trying to burn a CD but when I go to "File" that is not one of my options.

    I'm trying to burn a playlist to a blank CD but when I go to "File" that is not one of my options.

    In the left-hand pane, right-click the playlist name, and select "Burn Playlist to Disc."  By the way, make sure it is a playlist (either regular or smart) and not a "playlist folder."

  • Using ExtendedLogFormat, server log refers to Exception that does not exist

    I created a custom logging class, using ExtendedLogFormat, according to the doc here:
    [http://edocs.bea.com/wls/docs100/config_wls/web_server.html#elf]
    However, when I do this, and modify the startup classpath to point to my jar containing the class, and modify the log format to include this class, I see in the logs:
    bq. *     Attempting to initialize ExtendedLogFormat application specific header: x-com.on24.weblogic.logging.POSTDataLogField. However, failed due to exception.*
    (POSTDataLogField is the name of my log field class).
    This is very frustrating, because nowhere in ANY log (and I've set the log level as verbose as possible in all places) is any Exception shown.
    Does anyone know how I can find out what this mystery exception is, in a case like this? I've looked at all the logging options, and didn't find anything I could change to be any more verbose than I already am.
    - Tim

    Hi. I'm using version 2.1.11 of the NDK for CSharp. I'm getting this
    same error message:
    Code:
    Connection.freeWriteSemaphore(-2): semaphore not owned by any thread
    at Novell.Directory.Ldap.Connection.freeWriteSemaphor e(Int32 msgId)
    at Novell.Directory.Ldap.Connection.connect(String host, Int32 port, Int32 semaphoreId)
    at Novell.Directory.Ldap.LdapConnection.Connect(Strin g host, Int32 port)
    at TestLDAP.Program.Main(String[] args) in D:\Documents and Settings\tjbuege\my documents\visual studio 2010\Projects\TestLDAP\TestLDAP\Program.cs:line 20
    This occurs when I try to bind to a server that does not exist. Here
    is my sample source code that generates that error:
    Code:
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using Novell.Directory.Ldap;
    namespace TestLDAP
    class Program
    static void Main(string[] args)
    LdapConnection conn = null;
    string host = "server.does.not.exist.com";
    int port = 389;
    try
    conn = new LdapConnection();
    conn.Connect(host, port);
    catch (Exception ex)
    Console.WriteLine(ex.Message);
    Console.WriteLine(ex.StackTrace);
    if (conn != null)
    conn.Disconnect();
    Is there a fix for this? It makes this library useless for me.
    Thanks,
    Tim
    tjbuege
    tjbuege's Profile: http://forums.novell.com/member.php?userid=108957
    View this thread: http://forums.novell.com/showthread.php?t=365082

  • C# error when connecting to ldap server that does not exist

    When using Novell.Directory.Ldap.dll and making a connect to an ldap
    server which does not exists i'm getting the following error:
    Connection.freeWriteSemaphore(-2): semaphore not owned by any thread
    Im using this to connect: conn.Connect(ldapHost, ldapPort);
    This error is not catched by LdapException. Can anyone tell me if this is
    a bug or do I have to do something different.

    Hi. I'm using version 2.1.11 of the NDK for CSharp. I'm getting this
    same error message:
    Code:
    Connection.freeWriteSemaphore(-2): semaphore not owned by any thread
    at Novell.Directory.Ldap.Connection.freeWriteSemaphor e(Int32 msgId)
    at Novell.Directory.Ldap.Connection.connect(String host, Int32 port, Int32 semaphoreId)
    at Novell.Directory.Ldap.LdapConnection.Connect(Strin g host, Int32 port)
    at TestLDAP.Program.Main(String[] args) in D:\Documents and Settings\tjbuege\my documents\visual studio 2010\Projects\TestLDAP\TestLDAP\Program.cs:line 20
    This occurs when I try to bind to a server that does not exist. Here
    is my sample source code that generates that error:
    Code:
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using Novell.Directory.Ldap;
    namespace TestLDAP
    class Program
    static void Main(string[] args)
    LdapConnection conn = null;
    string host = "server.does.not.exist.com";
    int port = 389;
    try
    conn = new LdapConnection();
    conn.Connect(host, port);
    catch (Exception ex)
    Console.WriteLine(ex.Message);
    Console.WriteLine(ex.StackTrace);
    if (conn != null)
    conn.Disconnect();
    Is there a fix for this? It makes this library useless for me.
    Thanks,
    Tim
    tjbuege
    tjbuege's Profile: http://forums.novell.com/member.php?userid=108957
    View this thread: http://forums.novell.com/showthread.php?t=365082

  • Itunes says that 5 computers are already authorized to be used with my account when trying to play music that will not sync to my Ipod, but when I go to deathorize all in the store, it says only one is authorized. If I deathorize in the store and Itunes

    10 GB of the 30 GB of music on my computer will not sync to my Ipod. This started after I got a new PC w/ windows 7 on it. All of the music, that will not sync, is music I bought and paid for through Itunes. When I go to the Itunes store it says I have only 1 computer authorized (the one I am on). When I try to play the music that is not getting synced, it says that 5 computers are already authorized. I have tried deathorizing the computers from Itunes and Itunes store. I have also tried deauthorizing the account. I am getting the same result. I have tried DRM stripping software but all seem to need Itunes or WMP to play the music in order to be re recorded without the DRM. In my mind there must be some simple way to really get the computers deauthorized from my account and be able to play the music that I paid apple for. Does anyone have any suggestions or is this common for apple,s products to do?

    In order to get those to work you will have to upgrade to Snow Leopard 10.6.8.
    Start by checking if you can run Snow Leopard:
    Requirements for OS X 10.6 'Snow Leopard'
    http://support.apple.com/kb/SP575
    The OS 10.6 Snow Leopard install DVD is available for $19.99 from the Apple Store:
    http://store.apple.com/us/product/MC573/mac-os-x-106-snow-leopard
    and in the UK:
    http://store.apple.com/uk/product/MC573/mac-os-x-106-snow-leopard
    but nobody knows for how long it will be available.
    When you have installed it, run Software Update to download and install the latest updates for Snow Leopard, preferably the full 10.6.8 combo updater.

  • Xjc throwing exception that "document not well formed"

    I have the following DTD file given in the sample code saved as item.dtd
    <?xml version='1.0' encoding='utf-8'?>
    <!-- Simple DTD -->
    <!ELEMENT item_list (item_info*)>
    <!ELEMENT item_info (name, price)>
    <!ELEMENT name (#PCDATA)>
    <!ELEMENT price (#PCDATA)>
    and the following xjs file as given in the sample code
    saved as item.xjs
    <xml-java-binding-schema>
    <element name="item_list" type="class" root="true"/>
    <element name="item_info" type="class"/>
    </xml-java-binding-schema>
    now from command prompt when I run the following command, it throws the following error.
    c:\Some-folder\ xjc item.dtd item.xjs
    the EXCEPTION thrown is :
    The markup in the document preceding the root element must be well-formed. line 4 of item.dtd
    The FULL TRACE is(if anybody is interested to see).. PLEASE HELP ME OUT.
    Thanks
    Gagan
    TRACE STARTS HERE:
    parsing a schema...
    The markup in the document preceding the root element must be well-formed.
    line 4 of item.dtd
    Exception in thread "main" ::file:///C:/RBML/xml-java/item.dtd:file:///C:/RBML/x
    ml-java/item.dtd:file:///C:/RBML/xml-java/item.dtd:4:3:The markup in the document preceding the root element must be well-formed.

    NO i dont think so..
    as you could see the code pasted in the first instance. the only diffrence is that you are using double quotes.(I tried that as well)
    I hope you are referring to item.dtd file not item.xjs file
    Thanks
    Gagan

  • Stop/ abort execution in case when the task inside while loop can not be completed

    I am using Count digital events example from LabVew. This VI is using DAQmx Read vi. If I press Stop button before this DAQ gets required amount of samples VI does not stop. I tried to change amount of samples on a fly with stop button but it did not work either.
    Please help.

    This is directly related to the way LV handle the data. Your question is similar to "How can I stop a For-Next loop before completion ?". The answer is : No way, except changing the loop for a while loop (ie: change the algorithm) or stop the whole vi.
    Attached is an example of stopping an infinite running loop. It uses a parallel loop, with a Stop node (see how to handle the stop button in order to reset it to false at the next vi run).
    If you only want to stop the DAQ, whithout halting everything else, the solution is trickier : you will have to run your DAQ loop in a dynamically loaded vi, then use the vi server functions to halt the vi if the run period is excessive. But that is worth another discussion...
    Give some feedback !..
    CC
    Chilly Charly    (aka CC)
             E-List Master - Kudos glutton - Press the yellow button on the left...        
    Attachments:
    Stop_infinite_loop.vi.zip ‏9 KB

  • How to throw an exception that is not treated as error

    Hi,
    I have a repository manager displayed as /root/myrepository. Now when someone who's not authorized clicked it, I wish an error message will display on top in red, but not throw an exception as System Error.
    Now my implementation is to throw an ResourceException in getChildren() of the node. But when the user clicked on /root/repository, a System Error screen appeared, but what I want is just an error message.
    Any help is much appreciated~
    I don't know how to attach the screenshots. My MSN is [email protected]
    Thanks,
    Ray

    If you want to disallow getChildren altogether, throw an AccessDeniedException. If you want to hide specific children, just don't put them into the result list.
    Best regards, Julian

  • I want to know when the Firefox 27.0 that's not beta version will releases on Windows.

    I know the Firefix beta has been released for Windows on last week.
    So in the futere, the Firefox beta version will be just Firefox. Do you understand about my saying? I'm sorry for my poor skill making grammer. But I would like to know the date that the Firefox 27.0 is officially released. Thank you for listen to me. I will wait for your answer.

    Is the current version of Firefox 27.0.1 a "regular version" or is it still the beta version? I had a new operating system installed on February 13th, and the version downloaded was version 27. Only having one problem, and that is blocking one cookie. I have never used a beta version and only want the regular version.
    Need to know if the version as of Feb. 13th is the regular version. I have no way of finding out which version it is. Thank you for any help with this question.

  • Catching errors in Web Dynpro for Java when thrown from RFC Raise Exception

    Hello Developers,
    I'm looking for information that explains how a Web Dynpro for Java application responds and processes errors that are thrown from a Raise Exception event within an RFC.
    The Exceptions do not appear to be part of the Model and I can't identify how they get processed.
    When rfc HRXSS_CAT_WD_RECORD raises exception PERNR_NOT_LOCKED this exception is passed back to the calling webdynpro CAT DC that displays the exception on the web page along with the log. 
    I would like to display a friendlier message and without the log.  Any information on how to customize the handling of this error would be greatly appreciated.
    Thank you,
    Terry

    [see here|https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.highlightedcontent?documenturi=%2flibrary%2fuser-interface-technology%2fwdJava%2FHowtoHandleExceptionsEffectivelyWhileWorkingwithWebDynproJava%28WDJ%29.pdf]

Maybe you are looking for

  • HP Laserjet 4600 - Print Quality on Photos

    Ever since I got this printer, it has ALWAYS printed it's demo page (fishing gear) perfectly, but almost never prints a photo very well. I'm not very knowledgable about making the adjustments necessary. Is this a common problem? I'm trying to print o

  • Capture Problems with Vista

    While this problem is not specific to PE4, I am hoping someone will be able to help me. I recently purchaed a Dell XPS desktop for video editing. I am unable to capture from my SONY HDRHC7 camcorder. The new computer runs on Vista Home Premium; my ol

  • How/Where to store current page details in ADF?

    Hi All, What is the best way to populate the managedBean while loading the page? In my application, I have an page fragment which display the user details from Webservice DataControl. I drag and drop the webservice data control in to the pageFragment

  • Hi i don't have face time in my iphone4 why

    hi i am using iphone 4 and i don't have face time i don't know why

  • Determination Idoc Control data - Outbound

    Hi Guru's I would like to know how to get the idoc control data, like receiver port and receiver partner. For example: I have an ABAP program which collects the IDOC data at the end I want to send out the IDOC, but what is the best way to determine t