JTAPI AND Call Load?

Hello,
I have been getting mixed responses and would like to know what the actual experts say on JTAPI and the potential "load" it places on CUCM. What I am specifically referring to is FPC (1st party control) and TPC (3rd party control), but more specifically just adding a user then adding devices to be monitored for the lone purpose of getting device presence information. This means no CTI route points or CTI ports actually being used.
Since this means that an actual JTAPI session would need to be open (I am using a simple JTAPI listener to get OnHook/OffHook events), I understand that there will be *some* load, but I cannot see where this would cause a significant increase in resource use on CUCM.
Would someone please share their thoughts on this? Thank you.

You can get alot of information as to whats going on in the callcenter via the HDS database. You can also connect into the CTI interface on the CTIOS server. To get information via the ctitoolkit. Remember that JTAPI can way heavily on the CPU load on a server, and the agents add additional overhead to a standard CUCM box as well. You might run into a device weight issue if you get too carried away.

Similar Messages

  • JTAPI and call center

    Hi,
    does Cisco provide call center classes with their JTAPI? For instance, i would like to monitor Call center events with the JTAPI application, the same way i can monitor events on Call manager.
    Regards,
    Marko

    You can get alot of information as to whats going on in the callcenter via the HDS database. You can also connect into the CTI interface on the CTIOS server. To get information via the ctitoolkit. Remember that JTAPI can way heavily on the CPU load on a server, and the agents add additional overhead to a standard CUCM box as well. You might run into a device weight issue if you get too carried away.

  • I RECEIVED AN ERROR MESSAGE THAT I COULD NOT MAKE OR RECEIVE CALLS AND I HAD TO RESTORE VIA ITUNES.  I HAVE DONE SO AND LOST LOADS OF APPS ETC (MY FAULT FOR NOTBACKING UP) BUT STILL UNABLE TO MAKE OR RECEIVE CALLS.

    Phone is only a few months old and was working fine last night - it ran out of battery but on being charged up this morning it was effectively locked.  I received an error message that I could not make or receive calls and I had to restore via itunes.  I have done so and lost loads of apps etc (my fault for not backing up) but still unable to make or receive calls.  Anyone had anything similar and can advise who I should contact or what I can do.
    Thanks,

    try contacting your carrier and see whats going on.

  • Z3 Compact calls list and sms loading slowly

    Hi I have a Z3 compact D5803 that I have updated to 5.0.2.  Ever since then when i open the dialer (phone) it takes a few minutes to load all the recent call list and the dialer is unresponsive. The same happens when opening the sms messages.  I have done a reset and reinstall and waited 7 days and the delays still persist. Any ideas what I can do?

    Do you have a LOT of sms? or call logs?  Back up all your SMS, MMS and Call logs, perhaps sync them with google (check the link bellow) and then empty the messaging app > restart the phone   Alternatives on How to backup Xperias http://talk.sonymobile.com/thread/36355 

  • Help needed- Caller tone application using JTAPI and JMF

    Hi to All,
    I want to make a Caller Tone Application for Cisco IP phone.
    For that application I am using JTAPI and JMF.
    I am new to this two technologies.
    Can somebody help me for how to accomplish this?
    ---Ashish

    Hi Jerry,
    You can run analog input and counter tasks concurrently.  You can start them using software timing basically at the same time which may be fine for your needs and is the easiest to implement.  You also can use a hardware start trigger to start the tasks if you prefer.  It all depends on the level of synchronization you need. 
    You have not mentioned at what rate you will be acquiring data on your analog inputs.  The M Series PCI-6225 has 80 analog inputs and may suit your needs.  You will need to know what sampling rate you are trying to achieve.  Any M Series device will definitely give you the best value. 
    Hope this helps!
    Laura

  • Shell scripts to read data from a text file and to load it into a table

    Hi All,
    I have a text file consisting of rows and columns as follows,
    GEF001 000093625 MKL002510 000001 000000 000000 000000 000000 000000 000001
    GEF001 000093625 MKL003604 000001 000000 000000 000000 000000 000000 000001
    GEF001 000093625 MKL005675 000001 000000 000000 000000 000000 000000 000001 My requirement is that, i should read the first 3 columns of this file using a shell script and then i have to insert the data into a table consisting of 3 rows in oracle .
    the whole application is deployed in unix and that text file comes from mainframe. am working in the unix side of the application and i cant access the data directly from the mainframe. so am required to write a script which reads the data from text file which is placed in certain location and i have to load it to oracle database.
    so I can't use SQL * loader.
    Please help me something with this...
    Thanks in advance.

    1. Create a dictionary object in Oracle and assign it to the folder where your file resides
    2. Write a little procedure which opens the file in the newly created directory object using ULT_FILE and inside the FOR LOOP and do INSERTs to table you want
    3. Create a shell script and call that procedure
    You can use the post in my Blog for such issues
    [Using Oracle UTL_FILE, UTL_SMTP packages and Linux Shell Scripting and Cron utility together|http://kamranagayev.wordpress.com/2009/02/23/using-oracle-utl_file-utl_smtp-packages-and-linux-shell-scripting-and-cron-utility-together-2/]
    Kamran Agayev A. (10g OCP)
    http://kamranagayev.wordpress.com

  • SAP BPC 7.5: Master Data and Hierachiy Load from InfoObject

    Hallo Forum Participants,
    I am going to load Master Data from a "Clarity" Reporting Tool in BW to SAP BPC 7.5 via Process Chains (/CPMB/IMPORT_IOBJ_MASTER, /CPMB/IMPORT_IOBJ_HIER) delivered from SAP.
    These Process Chains load the Master Data and Hierarchies from an InfoObject. To find out more about Ticking of BPC I have performed a following test. So, on BPC Admin Interface I have duplicated the Dimension u201CAu201D and called it as Dimension u201CBu201D (in BW site InfoObject u201CAu201D and u201CBu201D). In the Member Sheet of Dimension u201CBu201D I have implemented the several changes und tried to load Master Data from BW namely from infoObject u201CBu201D into BPC Dimension u201CAu201D. Therefor I created a transformation file and mapped one for one IDu2019s. The data Manager started these chains, but resulted nothing (Status: red X).
    What are the features of BPC InfoObjects in Comparision with regular InfoObject?
    How can I load Hierarchies into InfoObject?
    What else I must take into account?
    Why does not work this simple test?
    Regards.
    Alisher
    Edited by: Alisher Babaev on Jan 6, 2012 1:59 PM

    Hallo pkrishna,
    so it is successed with master data load, but without hierachiies.
    My Master Data Properties on Dimension Sheet are:
    -ID
    -EVDESCRIPTION
    -PARENTH1
    -CURRENCY
    I have mapped as below:
    ID=ID
    CURRENCY=/CPMB/CURR
    /CPMB/CURR- my technical id in BW.
    In the Note you advised transformation file has been mapped like below:
    -NODENAME=NODENAME
    -HIER_NAME=HIER_NAME
    -PARENT=PARENT
    -ORDER=ORDER
    After executing of package i get whether rejected list or log file. No data can be retirieved from InfoObject.
    Have you any Idea?
    regards

  • SAP JPA and lazy loading

    Dear experts,
      I have a WD application with EJB model. I have faced strange JPA exception (I am using SAP JPA implementation).
      This is 2 Entities with relationship
    @Entity
    @Table( schema = "dbo", name = "class")
    public class ClassEntity {
      private Long id;
            @Id
         @Column(name="id")
         @GeneratedValue(strategy= GenerationType.IDENTITY)
        public Long getId() {
              return id;
         public void setId(Long id) {
              this.id = id;
    private Collection<ClassAttributeEntity> classAttributesById;
        @OneToMany(mappedBy = "classByClassId", fetch=FetchType.LAZY)
        public Collection<ClassAttributeEntity> getClassAttributesById() {
            return classAttributesById;
        public void setClassAttributesById(Collection<ClassAttributeEntity> classAttributesById) {
            this.classAttributesById = classAttributesById;
    @Entity
    @Table( schema = "dbo", name = "class_attribute")
    public class ClassAttributeEntity{
    private Long id;
            @Id
         @Column(name="id")
         @GeneratedValue(strategy= GenerationType.IDENTITY)
        public Long getId() {
              return id;
         public void setId(Long id) {
              this.id = id;
        private ClassEntity classByClassId;
        @ManyToOne
        @JoinColumn(name = "class_id", referencedColumnName = "id")
        public ClassEntity getClassByClassId() {
            return classByClassId;
        public void setClassByClassId(ClassEntity classByClassId) {
            this.classByClassId = classByClassId;
      I want to execute JPQL query
    "SELECT c FROM ClassEntity c"
    ; But I get this exception:
    javax.persistence.PersistenceException: The relationship >>classAttributesById<< of entity {test.ClassEntity(id=1686)}cannot be loaded because the entity is detached
      I can overcome it using EAGER loading -
    @OneToMany(mappedBy = "classByClassId", fetch=FetchType.EAGER)
    , but I really dont need ClassAttributes in this situation! I have many thousands of classes and eager loading provides extremly poor perfomance. What can I do with this problem?
      Thanks in advance for any advice.

    Hi Andrey,
    I assume you are getting the exception if you atempt to access "classAttributesById" ouside the transaction, in which you executed the query, i.e. after the persistence context, in which the query has been executed is closed.
    You have got to make sure that all entities you need to access are read as long as the persistence context executing the query is still open.
    How to address this depends a bit on whether you need to access all related entites or only some.
    If you need to access the relationship "classAttributesById" for only some instances of "ClassEntity", you could for example call size() on "classAttributesById" for these selected instances of "ClassEntity" (within the same transaction/persistence context".
    If you need to access all related entities, theoretically, fetchType = EAGER would be the right choice. However, as you have observed, SAP JPA can't handle this efficiently at the time beeing. Therefore,
    I'd rather suggest that you firstly load all related attributes with a query
    "SELECT ca FROM ClassAttributeEntity ca"
    and secondly load the "ClassEntity"s
    "SELECT c FROM ClassEntity c"
    this should execute efficiently.
    Sorry for the inconvenience.
    -Adrian

  • When i active my mac pro all i get is a white screen and  it loading .. and when it fully loaded it turns off and the same thing keep on happening again

    when i active my mac pro all i get is a white screen and  it loading and when it fully load its turn off , and it keep on doing the same thing for hours

    Hi Shahenaz,
    It's a little difficult to understand exactly what's going on with your mac based on the description you gave. Is there anything else you could add? Is it stuck in a reboot loop? Or is it just showing a white screen forever?
    I had pretty much the same problem a few days ago, and was worried my mac was screwed permanently, but I got it fixed up no problem!
    Follow these steps to try and troubleshoot/fix the problem.
    1. Boot into OSX Recovery Mode
    First, turn off your Mac. If it isn't responding, or is stuck in a reboot loop, just hold down the power button until it turns off, and you hear the fans stop. Then boot it while holding the Command and R keys. If it successfully boots into OSX Recovery Mode, continue with this step. If not, skip to step two. (My Mac couldn't successfully boot into the recovery mode, so I had to go to step 2)
    Select "Disk Utility" from the list of options, and find your built in hard drive from the list on the left. Usually there are two listings/names for your drive. The first should be something like "500GB longchainoflettersnumbers Media". Then the one below will be a little easier on the eyes, named Macintosh HD, if you haven't changed its name. That's the one you want, click it.
    Now go to the "First Aid" tab. Click on the "Verify Disk" button in the bottom right corner, and let it do its thing. Once that's done, hit repair disk, also in the bottom right corner. If your disk is corrupted, you may need to run the repair process several times, before it comes up completely clean.
    Once this is done, select Shut Down from the Apple menu and, once your Mac is completely off, turn it back on like normal. If it works, great. If not, proceed to step two.
    2. SafeBoot
    Sometimes, when a mac is acting up and doesn't want to start, all it takes is a safe boot, followed by a regular restart. Or maybe you recently installed a program that either has malicious or errored coding that's causing your troubles. This is where Safe Boot comes in.
    Turn off your mac, and reboot it while holding Shift. (If you want to see the process that's going on in the background, boot while holding Shift, Command, and V. This will enter something called Verbose Mode).
    If it boots successfully into Safe Mode, great. If you believe that there's a particular program that you recently downloaded that might be causing your trouble, now's the time to delete it. If not, just reboot normally and see if it works! If it doesn't, or if your Mac didn't even Safe Boot like mine, proceed to step 3.
    3. Fsck!
    For this step, you're going to be booting your mac into Single User Mode. I'm not going to go into details as to what this step does, but it works for some people. Here are the steps.
    Turn off your mac, and reboot it while holding Command and S. The screen should go black, and you'll see some white text run across the screen, wait a few seconds, until you see the command prompt. Now type
    fsck -fy
    and hit the Enter key. This will run a series of system checks, which could take a few minutes. Be patient on this part. Once it's done, it will show one of two messages:
    1. "The volume (your Mac) appears to be OK
    or
    2. "File System Was Modified"
    If you got message 1, type reboot and press Return. Hopefully your computer works after this - if not, proceed to step 4.
    If you got message 2, run the same command again until you get message 1. If it doesn't seem to be working, turn off your system and proceed to step 4.
    If you couldn't even boot into Single User Mode in the first place (like me), go to step 4 anyways.
    Step 4: Reset the NVRAM
    The NVRAM is another kind of RAM that stores data like the computer volume you had set before you turned it off, or the screen brightness, resolution etc. This memory is saved, unlike with regular RAM. Resetting it isn't harmful to your system, it will just put your screen brightness, volume, etc. to defaults.
    Turn off your Mac, and reboot while holding Command, Option, P, and R, and continue holding them down until you hear the computer restart again.
    I can't really explain why to do this step, I just know it works for some people, and seems to be what unbricked my MacBook Pro. If none of these steps, fixed your Mac, well the situation is looking pretty grim. Try setting up a meeting with a Mac Genius at your local Apple store. However, I know that many other people with these symptoms ended up having a logic board failure. Apple can swap out your logic board for a new one, but the price is pretty hefty, somewhere around $300 I believe.
    Well I wish you luck, I hope this helped you!

  • Include and call an .exe file inside my jar file

    Hi.
    I want to include an exe file and call it inside my jar file. this is the code.
    InputStream is = getClass().getResourceAsStream("/native/my.exe");
              int[] line = new int[is.available()];
              File myFile = File.createTempFile("my","exe");
              myFile.deleteOnExit();
              myFile.setExecutable(true);
              FileOutputStream out = new FileOutputStream(myFile.getAbsolutePath());
              int i = 0;
              int c;
              while((c=is.read()) != -1){
                   line=c;
                   i++;
              is.close();
              for(int j= 0;j<line.length;j++)
                   out.write(line[j]);
              out.close();
    So i store it in my temp folder. Than i run
    String myFileLocation = myFile.getAbsolutePath();
    p = rt.exec(myFileLocation);
    Everything goes fine, but the behaviour of the .exe file is not the same. I mean when i run the commands
    PrintWriter writer = new PrintWriter(p.getoutputStream());
    writer.println("command");
    the behaviour is not the same. What goes wrong.

    But to load the xml file I need to create a File objectIf this is true then you will not be able to load the XML file, since a jar entry is not a File object and cannot be represented as one.
    However if you get rid of whatever it is that loads your XML file and replace it by more standard JAXP processing, you should be able to parse an InputStream that reads from the jar entry. You know how to get that so it should not be a problem.

  • Could any one tell me what is the difference between swfloader and module loader?

    Hi  All,
                          Could any one tell me what is the difference between SWFLoader and Module Loader in Flex3 in detail?

    Hi,
    ModuleLoader is a kind of strange API that is really just intended to look like SwfLoader for modules that contain a single visual component, and hides most of the module loading infrastructure, which is all about class factories.
    What I mean by "only loaded once" is that if you have several places in the code that call the ModuleManager.getModule("url").load() call, it will only ever get loaded over the wire and interpreted once, subsequent "loads" will just re-dispatch pseudo-load events to the new client.  In other words, the class factory is a singleton for a given url. Unloading is a totally different story.  As you note, not everything is truly unloadable, because there may be lots of references to stuff in
    the module that will keep it alive and un-GC'ed.
    I suggest playing with the low-level API so that you understand the backing implementation, and this should help you understand the limits of ModuleLoader.
    The main difference between modules and applications is that modules have lower overhead, and they only ever get loaded once, no matter how many times you load them. If you're using the ModuleLoader API, keep in mind that you're losing about half the functionality of the module system.  I will assume that you are, because otherwise it would be obvious where to expose methods.  You might want to play around with the lower level ModuleManager API just to get a hang of what's going on - ModuleLoader is a pretty thin veneer over the lower API.                
                    Basically, what you want to do is to have your module implement an interface, say IModuleWhatever.
    Also try and refer to this link which was previously discussed in this forum..
    http://forums.adobe.com/message/74404
    Thanks,
    Bhasker

  • Just moved to ISP PLUSNET and now loading web pages is dead slow

    Just moved to ISP PLUSNET and now loading web pages is dead slow.
    Like loading google will sometimes take 30 seconds to 1 minute but it used to load in a fraction of a second on my previous ISP.
    Sometimes a new URL will take over a minute so I hit Stop Loading This Page and then try again and sometimes it might load instantly, or if not, it might continue to just drag on again.
    It's so frustrating it's like being back on dial-up connection - but worse.
    It feels like PLUSNET have put something on my Mac to slow it down.
    PLUSNET has a restriction on how much I can use per month, which my previous ISP did not have, but according to PLUSNET's usage checker I am nowhere near the max, ie, I am allowed 10GB per month but the checker is showing I have used less than 100 MB so far this month.
    I wonder if the PLUSNET usage checker is slowing down my usage coz it's really noticeable that it has only started to run slow since I moved to PLUSNET.
    When I run a broadband speed check it always shows the feed coming in at around 5500 kbps or so which should be OK.
    PLUSNET told me to go through their test page and I got to the part where it says install a Virus checker and an Adware checker but I'm not sure which ones to use coz I heard some of those checkers are themselves plants that infect you with a virus or keystroke logger.
    Also I have Block Pop UP Windows running on Safari but yesterday a window popped up so that blocker seems to have been compromised somehow.
    I have 17GB available on my HD of a total of 38GB.
    Can anyone help me with this problem please?

    (First, if yours is an Intel Mac, check that Safari is not running in Rosetta, which is enough to slow it to a crawl. If you are running Snow Leopard, run Safari in 32 bit not 64 bit.)
    Adding DNS codes to your Network Settings, should gives good results in terms of speed-up:
    Open System Preferences/Network. Double click on your connection type, or select it in the drop-down menu. Click on TCP/IP and in the box marked 'DNS Servers' enter the following two numbers:
    208.67.222.222
    208.67.220.220
    (An explanation of why that is both safe and a good idea can be read here: http://www.labnol.org/internet/tools/opendsn-what-is-opendns-why-required-2/2587 /
    Open DNS also provides an anti-phishing feature: http://www.opendns.com/solutions/homenetwork/anti-phishing/ )
    Wikipedia also has an interesting article about Open DNS:
    http://en.wikipedia.org/wiki/OpenDNS
    Whilst in System Preferences/Network you should also turn off 'IPv6' in your preference pane, as otherwise you may not get the full speed benefit (the DNS resolver will default to making SRV queries). If you want to know what IPv6 is:
    This is Apple's guidance on iPv6:
    http://docs.info.apple.com/article.html?path=Mac/10.5/en/8708.html
    Click on Apply Now and close the window.
    Restart Safari, and repair permissions.
    If that didn't do it, then try this as well:
    Empty Safari's cache (from the Safari menu), then close Safari.
    Go to Home/Library/Safari and delete the following files:
    form values
    download.plist
    Then go to Home/Library/Preferences and delete
    com.apple.Safari.plist
    Repair permissions (in Disk Utility).
    Start up Safari again, and things should have improved.
    More useful information here:
    http://guides.macrumors.com/SpeedupSafari
    Less likely, but possible, is that the slowness is caused by a Trojan such as the one called 'DNSChanger' or 'OSZ.RSPlug', which can alter the DNS settings of your network connection. This particular Trojan can be inadvertently installed if you have come across certain Quicktime movies where got a window stating that you have to download and install a particular codec in order to see the video.
    If you have agreed to that installation, your system can be infected and your DNS settings altered, which results in your system using the wrong DNS servers, which can slow web surfing to a crawl.
    This can be fixed by downloading and running a freeware utility called DNSChanger Removal Tool which you can download from here:
    http://www.versiontracker.com/dyn/moreinfo/macosx/33696
    Once you have run that utility you have to re-boot your Mac, then reset Safari, and re-enter your DNS settings in System Preferences/Network.

  • IBM OS ISSUE: SYSTEM HANG WITH JFS2 AND HEAVY LOAD

    제품 : ORACLE SERVER
    작성날짜 : 2004-11-24
    IBM OS ISSUE: SYSTEM HANG WITH JFS2 AND HEAVY LOAD
    ==================================================
    PURPOSE
    이 문서는 IBM AIX5L OS 상에서 Arch Process가 online redo log
    를 release하지 못하고 OS의 kill 명령으로 kill조차 되지 않을 경우
    조치 방법이다.
    Problem Description
    이 문서는 다음 OS 정보와 Oracle version인 경우에 해당한다.
    Oracle Server - Enterprise Edition - Version: 9.2.0.5.0
    Oracle Server - Enterprise Edition - Version: 8.1.7.4.0
    AIX5L Based Systems (64-bit) or (32-bit)
    문제 발생 당시의 증상은 다음과 같다.
    - arch-process doesn't release redolog files
    - arch-process doesn't die after database shutdown
    - arch-process can't be killed
    genclntsh 수행 시 hang 상태이다.
    (sleeping...)28590: kwaitpid(0x2FF22470, -1, 4, 0x00000000, 0x00000000)
    또는 이 문제로 인하여 ORA-600[2103] 에러가 발생하기도 한다.
    이 에러가 발생하는 원인은 IBM AIX5L 64bit, 32bit OS 이슈에 있다.
    IBM OS issue: SYSTEM HANG WITH JFS2 AND HEAVY LOAD.
    Workaround
    none
    Solution Description
    OS AIX5L ML4.0(5.2.0.40)의 bos.up / bos.mp / bos.mp64 fileset level을
    갖는 JFS2 file system을 갖는 경우에 해당한다.
    AIX 5.3 APAR IY59387은 IY58143에 포함되어 있다.
    JFS2 file system에 Heavy I/O activity가 발생하면 database process에
    HANG 문제를 야기시킬 수 있다. 이 때 database process가 kill -9
    명령으로 kill되지 않는다. 데이타베이스를 SHUTDOWN하여도 Process가
    계속 살아 있게 된다.
    Process에게 SIGKILL 함수가 issue되었지만 영향을 주지 않게 된다.
    Process를 제거하는 유일한 방법은 OS를 reboot하는 것이다.
    문제를 예방하는 방법은 IBM APAR-FIX IY59082 를 적용하는 것이다.
    이 APAR는 bos.64bit 5.2.0.42에 포함되어 있다.
    Fix :
    Need to install the IBM APAR-FIX IY59082, this APAR is included on
    bos.64bit 5.2.0.42.
    (주) IBM 엔지니어에게 확인 결과 이 Patch 안에 AIX5L 32bit 용과 64bit
    용이 모두 포함되어 있는 것으로 확인됨.
    Reference Documents
    <Note:285158.1>

    b,
    The install was from my original Dell XP Pro-SP1 'Reinstallation' CD along with the complete MS XP-SP2 download that I burned to another CD. I also had all the latest Dell drivers from their website burned to a CD. Install went as follows:
    - Format HD
    - Install XP Pro SP1
    - Install SP2
    - Install Dell Drivers
    - Obtain any MS patches from their site
    - Install Office
    - Update Office from the MS website
    - Install iTunes
    - Tweak MS settings
    - Install many software programs
    - Make an interim Image of system and store to ExHD
    - Install other software programs (mostly security programs)
    - Make another 'complete' Image to ExHD
    - Restore backup data and music
    After additional testing last night, I determined that it is not iTunes at all (or to blame). I get intermittent hangs/freezes/pauses in other media players (WMP, etc.).
    Seems that something is causing the 'System' process to periodically jump up in CPU %age (though not more than 30-50%). Even this relatively small amount is enough to pause the playback of music or video, hang the mouse movement for a brief moment, or delay a menu opening. All very subtle - you have to be looking for it to notice (except with real-time audio-video, which is quite noticeable whenever this happens).
    I had this problem a year ago, which is why I reimaged then and stayed with SP1 on the advice of Dell and Webroot. I'm stumped as to where to look for the culprit. Every time I go back to the original HD with SP1, everything runs smoothly. Some sort of system call is generating this complete pause....
    I'll be limited in my Internet ability for the next several days, so I may be out of touch until Friday. I'll keep testing and playing with the limited equipment I take along....
    Any thought you or others want to toss out, I'll attempt when possible.
    Thanks!

  • How bapi different from session and call transaction?

    how bapi different from session and call transaction?
    thanks in advance.

    For one, Batch Data Communication (BDC) is older. Business Application Programming Interface (BAPI) came later, about 10 years ago (you can see this already from the name, which contains marketese like "business" ).
    More important though, they are different technologies. With BDC you build the "batch input transaction" yourself, with an ABAP program which creates the "batch input session" ("Batch-Input-Mappe" in german). You then take that session, like an object, and "run" it on a system (most of the time, this is done on a local system by the administrators, after it has been tested for correctness).
    With BAPI, a system (local or remote) exposes its interface to you through some kind of Remote Function Call (RFC). Practically, it tells you: "What do you want to do? Insert that data into Materials Management? Here is the function and the the parameters you have to use for each record". You only work with the Interface - the exposed function. How this function works does not have to interest you. You don't have sessions to "run", you fire your function calls filled with data, one after another and you're done.
    BAPI can be run remotely. With BDC, you probably have to call the administrators of the remote system and send them the session you created for them to run. With BDC you go through the whole transaction in one BDC session, with BAPI you may need more than one "BAPI calls" to do this.
    With BAPI you don't fill obcure field names with values, you just fill the parameters. You can use a BAPI from inside your ABAP program to let a "business object" do some clearly defined work for you, then you can continue with your code doing other things. You don't do this with BDC. With BDC you write a dedicated program that creates the "session", which is then executed separately.
    Batch Data Communication (BDC) is the oldest batch interfacing technique that SAP provided since the early versions of R/3. BDC is not a
    typical integration tool, in the sense that, it can be only be used for uploading data into R/3 and so it is not bi-directional.
    BDC works on the principle of simulating user input for transactional screen, via an ABAP program. Typically the input comes in the form of a flat file. The ABAP program reads this file and formats the input data screen by screen into an internal table (BDCDATA). The transaction is then started using this internal table as the input and executed in the background.
    In Call Transaction, the transactions are triggered at the time of processing itself and so the ABAP program must do the error handling.
    It can also be used for real-time interfaces and custom error handling & logging features. Whereas in Batch Input Sessions, the ABAP
    program creates a session with all the transactional data, and this session can be viewed, scheduled and processed (using Transaction SM35) at a later time. The latter technique has a built-in error processing mechanism too.
    Batch Input (BI) programs still use the classical BDC approach but doesnt require an ABAP program to be written to format the
    BDCDATA. The user has to format the data using predefined structures and store it in a flat file. The BI program then reads this and
    invokes the transaction mentioned in the header record of the file.
    Direct Input (DI) programs work exactly similar to BI programs. But the only difference is, instead of processing screens they validate
    fields and directly load the data into tables using standard function modules. For this reason, DI programs are much faster (RMDATIND - Material Master DI program works at least 5 times faster) than the BDC counterpart and so ideally suited for loading large volume data. DI programs are
    not available for all application areas.
    Business Add-In (BADI) are a new SAP enhancement technique based on ABAP Objects.
    They can be inserted into the SAP System to accommodate user requirements too specific to be included in the standard delivery. Since specific industries often require special functions, SAP allows you to predefine these points in your software.
    As with customer exits two different views are available:
    In the definition view, an application programmer predefines exit points in a source that allow specific industry sectors, partners, and customers to attach additional software to standard SAP source code without having to modify the original object.
    In the implementation view, the users of Business Add-Ins can customize the logic they need or use a standard logic if one is available.
    In contrast to customer exits, Business Add-Ins no longer assume a two-level infrastructure (SAP and customer solutions), but instead allow for a multi-level system landscape (SAP, partner, and customer solutions, as well as country versions, industry solutions, and the like). Definitions and implementations of Business Add-Ins can be created at each level within such a system infrastructure.

  • EWA report highlights some Transcations by workload and DB load

    Hi All,
    I have a SAP system with 5 App servers
    I have a EWA report which highlights some Transactions by workload and DB load :
    By workload: MMBE, MB51, ME53N, MB11, ME21N
    By DB load : MB51, MMBE, ZINF, MB11, RSM13000, Y_STS_71000018
    I have analysed the transactions from ST03 . How otherwise also should i be analysing to get to know where the bottlenecks are. As per my analysis i can get hold of some tables which i may do rebuliding of indexes. Also what other approch should i take.
    How helpful is ST12 and ST05 and is there any impact to use them for analyis , i mean if i start some traces on will it start filling my os level file systems .
    Please let me know if there is some more better approach if i can take.
    Thanks & Regards,
    Ashish

    Hi,
    i think the EWA always alerts the 5 Transactions with the highest times.
    But this must not mean, that there is an problem.
    The difference is, the EWA reads the overall time a transaction used in you system.
    If the TA was called 1.000.000 times with an average runtime of 200ms, the Transaction maybe on
    first place in your EWA because it used a lot of time, but you do not have an problem.
    Look at the responsetimes for dialogtransactions.
    Kind regards
    Manuel

Maybe you are looking for

  • Error Message when Scheduling a report in Infoview

    I have created a report in Crystal Report using the Universe.  Report is saved to the Enterprise and set up to schedule in Infoview. When the report is scheduled for now or any other "when" time, I receive the error message: "Error in File C:\Program

  • Route Patter para 2 oficinas en la misma ciudad

    Tengo una pregunta para ver si me puedes ayudar, digamos que hay una oficina principal y una sede pequeña en la misma ciudad...y un solo callmanager en la oficina principal. La oficina principal tiene un e1 y la sede tiene una linea fxo. Resulta q l

  • Adobe Digital Editions v4.0 Error: Check Activation on Windows 8

    This isn't a question but a solution that I found to an issue that I hope will help others. I couldn't find a discussion board on this so I'm creating a new one. I started getting the error message, "Error: Check Activation" when I was trying to down

  • Part appraisal document for self and subordinates

    Hi All I have created a part appraisal document , for self and sub ordinates. When I logged in to portal , the subordinates are able to view the document whereas document created for self are unable to. For self as well as for subordinates , we have

  • Is it safe to install yosemite on a bootcamp partition

    So if anything goes wrong you can launch up osx mavericks again. My specifications: 2.2GHz Quad core Intel i7 4GB DDR3 RAM Dedicated Graphics: AMD Radeon HD