Stop XI channels externally if mapping failure happens

Hi Experts,
I have a requirement in which a Job/Program starts the sender XI Channel (JDBC) externally via HTTP URL and writes the content to a file using File Receiver Adapter. Now, the requirement is to stop the sender channel once the file is received at the receiver location. But one scenario where I am stuck is that what if there is some failure during mapping or any other step in XI and the file is not written to the destination location, how will the program come to know about the failure in XI and then stop the channel immediately. Sending alerts would mean some adiministrator has to receive the alert and then stop the channel and this won't be the option for making this an automated process.
So basically I was trying to find out if there is a way/user exit in which we can write custom code to stop the channel and/or do any further processing if there is a failure during mapping and or any other execution step in SAP XI. One option is to set a time out at the program level and after the timeout it can automatically stop the channel but would like to take this as the last option as the same program is used for multiple interfaces with varying payload sizes.
Best Regards,
Pratik

May you have to use BPM for this by catching any system error and taking the necessary action in exception handling

Similar Messages

  • Start/Stop Channels Externally

    Hi,
    I have been looking at the blog /people/william.li/blog/2006/04/18/dynamic-configuration-of-some-communication-channel-parameters-using-message-mapping to see how this is done. I can see from the blog that a PI interface has been developed.
    I have ran the URL in a browser and get a 'Website cannot be displayed' error. I do not know what the cause of this is, whether the browser cannot parse the response, or the webservice is not called correctly. Could this problem be occuring if I do not have the relevant auth.
    Is it possible to execute the URL directly from ABAP. Has anyone been able to do it. I presume this webservice does not have to be calledd via PI.
    Is there a blog or anything other document which describes how this interface (with dynamic URL recevier) is configured in PI. I have searched and cannot find anything.
    Any help is greatly appreciated.

    Hi,
    If your requirement is to Start/ Stop XI channels externally, do the following:
    1. Select the specific channel in communication channel monitoring.
    2. Select External Control On for this channel.
    3. Use the following URL for accessing the channel based on what operation you need to perform:
        a) START: http://<host>:<port>/AdapterFramework/ChannelAdminServlet?party=<Party Name>&service=<Service Name>&channel=<Channel Name>&action=start
       b) STOP: http://<host>:<port>/AdapterFramework/ChannelAdminServlet?party=<Party Name>&service=<Service Name>&channel=<Channel Name>&action=stop
      c) STATUS: http://<host>:<port>/AdapterFramework/ChannelAdminServlet?party=<Party Name>&service=<Service Name>&channel=<Channel Name>&action=status
    (Keep Party Name blank if there is no party involved in the scenario).
    If you have a different requirement, I would request you to explain what you are looking for in more detail.
    Best Regards,
    Pratik

  • Start and stop the Communication channel from Java Mapping

    How to start and stop the Communication channel from Java Mapping in XI 3.0
    Scenario  PI - > MQ -> Third Party web application 
    Web application is down and then Communication channels are stop manually .  
    We need to automate this process,
    MQ Solution - Trigger will be set in MQ which will be called when web application is stopped
    Trigger will send u201CSTOP u201C message to PI
    How to configure PI scenario to stop different com channels when this message received ?

    check this link: http://help.sap.com/saphelp_nw04/helpdata/EN/45/0c86aab4d14dece10000000a11466f/frameset.htm
    make sure that MQ send http request to PI. i dont think a configuration scenario is required in PI. Only roles should be enabled with proper user provided to MQ team.
    However, for security reasons, you can configure a scenario if you dont want to expose PI infrastructure directly to 3rd parties.

  • Word couldn't send mail because of MAPI failure, Unspecified error.

    This issue is crossposted in Microsoft Answers Word and OUTLOOK.  I am posting here in hopes that someone at Mircrosoft may have a solution or at least elevate the issue to someone who does.
    http://answers.microsoft.com/en-us/office/forum/officeversion_other-word/word-could-not-send-mail-because-of-mapi-failure/f62678fe-ef1d-42b5-8cfe-1e43d6a1d609
    http://answers.microsoft.com/en-us/office/forum/office_2013_release-outlook/word-couldnt-send-mail-due-to-mapi-failure/1f03cf74-9258-411b-9e2b-e41cb5006d71
    I dabble with VBA and write and maintain several amateur Word Add-Ins.  Accordingly, I have Word 2003, 2007, 2010 and 2013 installed on my PC.  They get along fine.  However, I am unable to "Share" or "Send" an open Word
    document as an E-mail attachment in any version!  In each case Word returns an error mesage "Word couldn't send mail because of a MAPI failure, Unspecified error (the same issue occurs with Excel and Powerpoint except the error dialog is a bit different.)
    Using Word 2003, I (CAN) "Send to (Mail recipient for review)" in which case OUTLOOK is opened with the document as an attachment.  I can also "Send to Mail Recipient" from Windows Explorer, in which case the Word file is attached to
    an OUTLOOK message, and I can create an instance of OUTLOOK and send mail from Word using VBA.
    I have repaired all Office versions.  I have removed the registry keys for all office versions and repaired all versions again.  I have run "fixmapi" until I am blue in the face. I have renamed the MAPI32.DLL files and ran sfc \scannow
    to ensure that the MAPI32.DLL file is not corrupt.  In view of these actions and in view of what I can do, something tells me that the MAPI files are fine.
    So what is this "Unspecified error?"  This problem is rife on the internet and most of the "canned" solutions have been marked "Answered" by some MS support engineer.  These "canned" solutions might have
    fixed the issue at one point, but they don't work now.  At least not for me.
    Thanks.
    Greg Maxey Please visit my website at: http://gregmaxey.mvps.org/word_tips.htm

    Hello Greg,
    I noted that there are 2 knowledge articles that describe scenarios where you may encounter this error.
    KB 291152 You receive a "Word couldn't send mail because of MAPI failure" error message when you try to send a Word document as an e-mail attachment in Word 2002
    http://support.microsoft.com/kb/291152/EN-US
    KB 929362 You cannot send a file by clicking Send in a different program when Outlook 2007 is running as administrator
    http://support.microsoft.com/kb/929362/EN-US
    Please let me know the following:
    1. What version of Outlook are you using?
    2. Do you have Outlook open when you attempt the File > Share > Email as attachment from Word? If not, does the error occur if you open Outlook, open Word and then try to send the email?
    3. If you close/reopen Word and then try the send again, do you get the same error?
    4. Are you running either Outlook or Word in an elevated mode?
    5. What happens if you start both Outlook and Word as "Run As Administrator". You may have to right-click each applications' .exe file to be able to choose the "Run As Administrator" option.
    6. Do you get the same error when using File > Share > Email as attachment using Excel?
    7. In Internet Explorer, open the Internet Options. On the General tab within the browsing history, delete your temporary Internet files and website files
    8. Does the issue occur in selective startup mode?
    Steps to setup selective startup mode:
    Click on the Windows Start button, in the Search box type msconfig and then hit enter. This should open up the System Configuration Utility. Make the following adjustments within each tab.
    Services Tab:
      - Check the option 'Hide All Microsoft Services'
     - Click on button 'Disable All'
    Startup Tab:
     - Click the button 'Disable All'
     - Go back through the list and enable any Microsoft items
    Click Ok. It will say “You must restart your computer for some of the changes
    made by System Configuration to take effect”. Hit the ‘Restart’ button.
    When the PC reboots try to run your test again.
    To return back to a normal boot launch msconfig again and choose 'normal startup' on the general tab, click Ok and then reboot the PC.
    Regards,
    Dennis

  • External context mapping problem

    Hi,
    I am trying to create a sample application for external context mapping
    1. I created a webdynpro project.
    2. In that project i created  2 web dynpro components PrComp and ChComp. 
    3. In the ChComp Interface controller context created a node MappedNode with attribute text.The node property isInputElement is set to true and also the carinality to 0..1
    4. Added the ChComp as Used Component for PrComp.
    5. Mapped the context of the ChComp Interface controller to ChComp Component controller and PrComp component Controller.
    6. In the ChComp Component controller, i initialize the node atribute text with some value.
    public void wdDoInit()
        //@@begin wdDoInit()
         wdContext.currentMappednodeElement().setMappedText("Mapped Attribute");
        //@@end
    7. In the PrComp component controller i create the ChComp and try to retrieve the value of the node attribute text.
           public void wdDoInit()
        //@@begin wdDoInit()
         wdThis.wdGetChildCompComponentUsage().createComponent();
         String text = wdContext.currentMappednodeElement().getMappedText();
         wdComponentAPI.getMessageManager().reportSuccess("mapped value "+text);
        //@@end
    When i deploy and run the application i get the following error
    java.lang.NullPointerException
        at com.sap.tc.ram.sample.external.context.mapping.ChComp.wdDoInit(ChComp.java:98)
    I am creating this app as a sample for external context mapping.please tell me if i am doing the rigth thing.

    Shiram,
    Your code will not work until you remove any node access from wdDoInit in ChComp (step 6).
    Think about the actual execution sequence:
    1. PrComp creates usage of child (ChComp) via createComponent
    2. ChComp get initialized internally by WD framework, as part of process ChComp.wdDoInit is invoked
    3. Context mapping is applied parent(source) <->child(target)
    So step [2] happens always before [3], you didn't alter this behavior via cardinality as suggested by other readers.
    What you can to do?
    1. Do not use wdDoInit of ChComp to populate / access data. Populate data from PrComp instead.
    2. Do you really need isInputElement? Think about it. If you remove isInputElement setting in child, then create mapped node in parent, then node in child will be source of data and you may safely populate it ChComp.wdDoInit.
    And, as other pointed out, cardinality still can cause error -- you are using 0..* but not creating element manually. Either set cardinality to 1..* or create element in wdDoInit of "source" controller (PrComp for [1], ChComp for [2])
    Valery Silaev
    SaM Solutions
    http://www.sam-solutions.net

  • Stop communication channel after data delivery

    Hi all,
    I have a communication channel of type JDBC.
    The channel should be started and stopped via external control.
    The problem is that I don't know when the data transfer is completed in order to stop the channel.
    Or is there a functionality that a communication channel is stopped automatically after running.
    regards

    My understanding is that you want to switch off the channel only after all the inserts have been done in DB, am I right?
    There is a solution but an ugly one You have to send a response back from the DB claiming that the inserts are completed, this response message can be linked with your external control program which will end up in stopping the channel.
    If you or anyone else come up with a better solution, please share with the forum.

  • External Context Mapping & Normal Mapping in same IF Controller?

    I have a Parent DC that embeds a Child DC.
    The Parent uses data from the Child DC obtained through the Child's Interface Controller, which works fine.
    But there is also some data (value node) that I need to pass to the Child DC through the Interface Controller as External Context Mapping, from the Parent DC.
    I know how to make these work separately but am not sure how to make both Ext. Mapping and Normal mapping in the same Interface Controller (the parent IF controller) and am not sure if it is even possible.
    Is it possible to both pass data (external context mapping) and get data (normal mapping) from the same Interface Controller?
    I guess I am a little confused in how the arrows should point in  the Data Modeler and how to approach this.
    Really appreciate your help,
    SK

    Thanks Satya, Vishal
    My issue is not about navigation but how to transfer data back and forth to the same embedded child component. Here's some clarification.
    1. Parent has declared Usage of Child
    2. Child is available in Data Modeler
    3. Child has data coming from its Interface Controller, which is mapped to the Parent's Comp Controller, which is working fine.
    4. Now there is a different node that exists in both Parent and Child.
    5. The data origin for this node is the Parent and so the Child needs to get it from the Parent using External Context Mapping to its Interface Controller so that it is available inside the Child.
    My question is, is this data transfer scenario possible? If yes, what steps should be taken to make this happen?
    Thanks again,
    SK

  • How to stop vdbench from external applications? What are the impacts?

    I am using vdbench to test following scenario:
    1) Start vdbench - do read/write (I use poweshell start-process to start vdbench which returns me the process object )
    2) Poll for particualr system event(my test condtion). When the event happens stop read/write ASAP(To stop the process I use powershell Stop-process and pass process object as the argument. This actually stops IO as seen task manger)
    3) Continue testing
    I want to understand
    1) Are the steps followed correct?
    2) What is the correct method to stop vdbench from external application?
    Regards
    Jugari

    An other thought, that maybe is of interest to you, coming in the next version of Vdbench.
    A conversation with one of my internal users:
    It does not make sense to look at current Vdbench output trying to figure out what is happening when.
    This locks us in to tricks and guessing and prevents me from make changes to the output.
    Monday I will create a new file in Vdbench: status.html
    This file will only be there for any kind of wrappers to see what is going on.
    I'll make sure that the file contents are flushed to the file system as soon as a line of text has been written.
    * Vdbench status
    * The objective of this file is to contain easily parseable information about the current state of Vdbench.
    * This then can serve as an 'official' interface for any software monitoring Vdbench.
    * Each line of output will be immediately flushed to the file system, making its content accessible by any monitoring program.
    * The values below are all tab-delimited.
    03/25/2015-13:42:44-MDT Starting slaves
    03/25/2015-13:42:44-MDT Slaves connected
    03/25/2015-13:42:44-MDT Query host configuration started
    03/25/2015-13:42:44-MDT Query host configuration completed
    03/25/2015-13:42:46-MDT Starting rd=rd1 For loops: None
    03/25/2015-13:42:48-MDT Warmup done rd=rd1 For loops: None
    03/25/2015-13:42:51-MDT Workload done rd=rd1 For loops: None
    03/25/2015-13:42:51-MDT Slaves done rd=rd1 For loops: None
    03/25/2015-13:42:51-MDT Shutting down slaves
    03/25/2015-13:42:51-MDT Vdbench complete
    Henk.

  • I have a late 2008 white macbook.  I have a mini dvi to hdmi adapter, and a hdmi cord.  My cannot get my MB to detect an external monitor.  Nothing happens when plugged in.  Also, my display settings does not have an option for mirroring or arrangment tab

    I have a late 2008 white macbook.  I have a mini dvi to hdmi adapter, and a hdmi cord.  My cannot get my MB to detect an external monitor.  Nothing happens when plugged in.  Also, my display settings does not have an option for mirroring or arrangment tab

    Yeah, I'm having the same exact problem - It seems that the thunderbolt minidisplay port is only able to output the analog VGA signal, not the digital signal to support DVI and HDMI. This is a bug that came up after installing 10.7.1. I bought my macbook air with 10.7 on it, upgraded it to 10.7.1 as soon as I got it, so I have never been able to use hdmi or dvi with my macbook air. This is an extremely frustrating problem for me, I used HDMI on a daily basis with my PC. I have spent many hours at the genius bar running diagnostic tests so Apple can get as much information as possible to create a fix for this problem. I have been emailing tech support for 3 or so weeks now, they keep saying that they are working on a fix and it should be out soon, but 10.7.2 has come and gone and I still have no HDMI functionality with my MacBook Air!

  • Often, Firefox app will close, but the underlying Windows process will not and cannot be stopped via Task Manager. When this happens, Firefox can no longer be used...the system must be rebooted.

    Hello,
    Often, the Firefox app will close, but the underlying Windows process will not and cannot be stopped via Task Manager. When this happens, Firefox can no longer be used...the system must be rebooted. This happens especially when many apps are running but even though there are plenty of memory resources available.
    I have tried to find if something is using Firefox in the background, but have no way to know what that would be.
    Their are no apparent viruses detected.
    Firefox is version v5.0 and occurred in earlier release.
    System is Windows 7 (64bit).

    well, it's not the same hardware and it's a bit different.
    I managed to pass that stage somehow but I still have a problem
    I don't use the built-in creator tool that comes with Spyrus as it doesn't know how to append a pre-staged media that was created by SCCM that should apply the Windows file system to a second partition and the WinPE to the first partition.
    I managed to do everything. my only problem is that the WTGCreator that comes with SCCM 2012 R2 creates the 350MB partition with FAT32 file system.
    when I boot from the device I get the WinPE, I can choose a task sequence and then it fails when trying to apply the wim file. the error tells me that the 350MB partition is FAT32 which is not supported (even though it chooses the second partition, which
    is all the rest of the disk space)
    what I did was adding another task that converts the 32 Fat partition to an NTFS partition and then the process continues and finishes successfully! but that's a workaround.
    I'm trying to make this process as smooth as possible without having additional steps
    Tamir Levy

  • Error in external context mapping

    Hi
    I want to send some data to a used web dynpro DC from the embedding DC. I tried using external context mapping by performing the below steps.
    created a value node and attribute at interface controller of the used DC
    set isInitial property to true for the value node in interface controller
    created context node and attribute with same name inside component controller of the embedding DC
    defined mapping between the nodes and attributes; which looks like
    UsedComponentInterface----
    >EmbeddingComponentController
    At run time I can't find any value inside the node in used DC. The used DC interface controller node is not getting populated with data from the embedding DC component controller node value.
    Can any one let me know the exact appraoch for this and where I did mistake in the above steps?
    Thanks in advance
    Cheers
    Sudip

    Hi Sudip,
        First make sure in your used DC interface controller context for the nodes that you need to populate data the inputElement property is set to true. The inputElement property for a node and attribute means that the data for those nodes are going to come from and external source. Nodes where the inputElement is set to true will not be initialized even if the cardianaliy is 1:1 or 1:n. The data instance has to come from an external source.
    Make sure that you create a public part for your used DC and add the component to the public part.
       If the input element property is set correctly in the interface controller of the used DC make sure that the data mapping between the interface controller of the used DC and you component/custom controller is correct. The data mapping arrow should point from your used DC interface to your component/custom controller. You can see this in your data modeler. Once you create the data link the mapping window will clearly say that this is an external mapping and only inputElements can be dragged.
    Once all the above are done if you add data instances to the external mapped node in your controller it will be available in your used DC context also.
    Hope this helps,
    Sanyev

  • My 2011 MacBook Pro 13 stopped seeing my external monitor

    My 2011 MacBook Pro 13 stopped seeing my external monitor. It is an Acer led monitor connected via hdmi cable
    Running mountain lion

    Kimapurado
    Have you tried resetting the PRAM? shutdown the machine, hit the power button then hold down the option and command keys with your left hand, while holding them down with your right hand use your pinky to hold the 'P' key and index finger to hold down the 'R' key. hold them down until you hear the 'bong' sound twice then release the keys and let the machine bootup.
    Also try resetting the SMC. Shut the machine down. Hold down the 'shiftctrloption' keys with your left hand, right hand hold down the power button for 10 seconds then release all. Power up the machine as normal.
    Hope this helps. Pls update us and let us know if that helps!
    Jaco

  • Accessing receiver communication channel parameters in mapping

    Hi,
    I have an XI sender to HTTP receiver scenario with mapping to set the value of the target URL, which is set as an Adapter Specific Message Attribute (TargetURL).
    The mapping is responsible for adding hashed authentication credentials to the end of the URL string.
    Ideally I'd like to be able to read the values of the host, port and path from the receiver communication channel configuration than hardcode these in the mapping class.
    Does anyone know whether it is possible to read receiver communication channel values within mapping?
    I could store the full URL string in the communication channel but this would not be secure hence the preference for doing this in mapping.
    Thanks,
    Alan

    try using Dynamic confiuration
    please check HTTP rec doc: http://help.sap.com/saphelp_nw2004s/helpdata/en/43/64dbb0af9f30b4e10000000a11466f/content.htm
    ○       URL: TargetURL
    ○       HTTP Destination: HTTPDest

  • Problems with external context mapping

    Hi ,
    I am having the following problems with external context mapping from one WD component to another.
    Problem description:
    In the <i>Component Interfaces</i> I have defined a WD interface "InfA".
    In the <i>interface controller</i> of this compoenent,I have ContextA and attributeA(cardinality 1..1).The contextA is marked as an "Input Element".
    Now my webdynpro componentB adds InfA as used component.In componentB I decalre a contextB with attributeB and map it to contextA to set up the external context mapping.
    Now I expect that if any webdynpro component implements this WD interface InfA ,he has access to contextA with the data getting filled from contextB.
    After i have created the component for the used component I try to fill values in the source node contextB thru this code:
    wdContext.currentContextB.setB(value);
    But in the runtime I keep getting error nullPointerException for nodeContextB,suggesting that the mapping has not been completed.
    Can anyone suggest due to what the error can come ,and, if its a webdynpro bug ,is there a workaround??
    Thanks in advance for your help.
    Best regards
    Sourav

    HI,
    Valery : I personally checked  by doing the example, if the names of value attribute are different in the child's interface and parents component controller then it throws the exception.
    Sourav: NullPointer Exception is thrown when something is not properly initialised, if in the main component the cardinality of mapped origin is 1.1 then you need to access it element directly like:
    wdContext.currentParentNodeElement().setFname("Abhijeet");
        wdContext.currentParentNodeElement().setLname("M");
    i will suggest just check out if you are declaring some element of value node and without initialising taking its use or what?
    if this doesnt solve your problem, please post the expanded exception.
    hope it helps
    let me know if you face nay problem
    regards

  • External ldap mapping & portal 6.2

    Hello
    To my knowledge external ldap mapping is not supported in portal 6.0 & portal 6.1, my question is it implemented in portal 6.2 ?! , If not is there any workaround that can solve this issue and considered as a professtional solution !

    Yes, you can do authentication against your existing
    external LDAP and dynamicaly create user profiles
    in your local LDAP(which can be physically on a different box)
    The "professtional name" for this configuration is:
    LDAP "profile server" with "external authentication" LDAP.
    Cheers,
    Alex :-)
    PS: After "Sun Forum Accounts Update" I couldn't login to this forum and at SUN
    no one cares - they just ignore my mails. "Thanks a lot" for supporting free comunity!
    (Check my old profile at http://swforum.sun.com/jive/profile.jspa?userID=3455)
    OK. I have now a new account and I will try to help you out here...
    -------------------------------------------------------------------------

Maybe you are looking for

  • CoreDuo Mini not going to sleep

    Sorry for the cross-post - still in the process of getting familiar with posting here and the message below got posted under displays... After installing the latest firmware 1.01 on my Intel CoreDuo Mini it no longer goes to sleep although the screen

  • Script to parse last 24 hours from TaskScheduler Log Cannot figure out how to prase a single task.

    All, I've been tasked with parsing a single task from a server scheduled task and email that to a couple individuals and a distribution list. I had the email portion working, and am now getting... ‘You cannot call a method on a null-valued expression

  • Help creating apple script to create folder and set access levels

    I'm trying to create folders in FileMaker Pro using apple script and need some help in setting the access level for the folders.  I want to set both Staff and everyone to Read and Write access.   Secondly I would like to have a function key set on th

  • MBA For Sale in Apple stores...but

    The Raleigh store in NC recieved their MBAs yesterday and already sold out. Not sure when they're getting more. However, I did ask on behalf of myself and those of us that would like the 1.8ghz processor with the 80gb hard drive, if that package set

  • How do I get 3.6 back after cancelling hated 4.0 Foxfire?

    Downloaded new Foxfire 4.0 at your request. Hate it. Don't want to "customize" or spend lots of time "selecting". Want my old 3.6 back! How to get it????? Do I understand correctly? Will you be discontinuing 3.6. If so, I will find another and cancel