Monitoring the execution of critical transactions.

Hi All,
Can anyone tell me how to monitor the execution of critical transactions in a systme?..
is ther any reporting transaction which upon execution will provide me the list of execution of critical transactions?..
Awaiting your reply..
Thanks in advance,
Ramkumar C

Apart from being positive we should provide what is being requested / asked for 
Can anyone tell me how to monitor the execution of critical transactions in a system?..
is there any reporting transaction which upon execution will provide me the list of execution of critical transactions?..
Who has the access and who are executing when is different. However, i agree to that point that you can use what you said for the "who has access" part of it. But not for "monitor the execution of critical transactions" part o it.
à la vôtre.
Zaheer

Similar Messages

  • Multi-level error propagation during the execution of CFM2 transaction

    Hi,
    We are implementing SAP SCM 5.0 integrated to SAP R/3 Mills IS.
    During the execution of CFM2  transaction, while  trying to activate the integration model for the object u201COrdersu201D for the very first time, the following error message appears:
    *"Multi-level error propagation carried out".*
    There are also messages related to inbound queues blocked. In the case of maintenance orders, CIF_MNT_INBOUND message shows up. While working with Production orders, CIF_ORDER_INBOUND message emerges.
    The items listed below should be taken into account:
    -The production orders that are meant to be transferred to APO are regular production orders corresponding to several products.
    -We are working with configurable materials.
    -We are working with the active model (000) and for each plant we are using 2 different planning versions.
    Regards,
    Analía Nahmías

    Dear Analía,
    The corresponding error messages issued when executing //CCR indiacted the peg-ids are missing in liveCache.
    Recommendations:                                                      
    -Run transaction /SAPAPO/OM17 to check the internal consistency between database and liveCache within SCM system. Correct the inconsistencies                                                       
    -Execute report /sapapo/cif_deltareport3 to correct the inconsistencies between ECC and SCM system                            
    Regards,
    Tibor

  • Execution time of transactions

    Hi,
    I'm a bit confused about a the execution time of transactions in a transaction.
    I just wrote a transaction which calls four other transactions (just for time testing) and I get the following result:
    [INFO ]: Execution Started At: 09:11:37
    [INFO ]: Execution Started At: 09:11:37
    [INFO ]: Execution Completed At: 09:11:37 Elapsed Time was 453 mS
    [INFO ]: Execution Started At: 09:11:38
    [INFO ]: Execution Completed At: 09:11:38 Elapsed Time was 31 mS
    [INFO ]: Execution Started At: 09:11:38
    [INFO ]: Execution Completed At: 09:11:38 Elapsed Time was 109 mS
    [INFO ]: Execution Started At: 09:11:38
    [INFO ]: Execution Completed At: 09:11:38 Elapsed Time was 125 mS
    [INFO ]: Execution Completed At: 09:11:38 Elapsed Time was 1547 mS
    the first 4 time information are from the calles transaction. The last time information is from the "outer" transaction.
    But I just call the 4 transactions and don't do anything else. Why is there such a big time difference? (more then double of time) And how can I solve this problem?
    Thanks
    Matthias

    Jeremy,
    If the box is checked and you only call the TRX action once in your logic flow I don't think it really makes any difference because the runner servlet has to load/parse the file at least once no matter what.
    Do you mean it doesn't make any differences generally or I performance?
    As the "log" shows there is a difference. Even in my original transaktion I feel that it is really faster. But the general results are the same. So I get the same results faster
    Just to be sure: The outer transaction and the transaction will be loaded everytime it is called by a user, webservice or what ever. So if the the transaction is startet twice a the same second in different threads they were also loaded twice?
    And another question: I don't think it is possible to start a new thread in a transaction, is it? Why I'm asking: In my transaction I have some action that shuld be executed immediately and other action that can be done at a later time. (Some updates / inserts in tables and they aren't critical if they fail). So best solution on performance point of view would be if the main thread runs fast and the User gets the result and all other things run after this. Do I have any chance to do so or is something like this planed in future versions of MII?
    I mark this question as answered as my originaly question is answered.
    Thank you.
    Regards,
    Matthias

  • Monitoring critical transaction in SL report

    Hi,
    I am not able to  add business critical transaction in SL report configuration. It shows TOP LOADED transaction which is not requirement. I like to add new transaction as per customer requirement,
    We have recently upgraded solution manger to SAP EHP 1 for SAP Solution Manager 7.0 and after that earlier SLR configuration disappeared and also old settings. we have configured new one but we are not able to set up Critical transaction. I tried to set using Business process monitoring in Solution directory but it did not reflect in report.
    Also earlier we used to get all report/graph in html format but now it is only available in word format. Is it normal or we need to activate any setting.
    Can you please suggest on above two problem ?
    Thanks in advance.
    regards,

    Hi,
    Service Level Reporting is based on your EWA. For your requirement, you need to setup up BPM for monitoring your required transaction.
    Once you are done with your BPM, go to Service Level Reporting Setup under Operations Setup in DSWP. When you click on setup Service Level Reporting you will have Active Variants available. If you selec the variant you will have a tab Business Processes. There you can select your business process which is monitoring your Tcode. After have setup this your SL Report will show the Business Process that you have selected.
    Hope this solves your problem.
    Feel free to revert back.
    -=-Ragu

  • Transaction FKKORDM started taking long to complete the execution.

    Transaction FKKORDM started taking long to complete the execution. I faced the this issue before so i re-generated the interval then this issue got resolved.  Now i am again start facing same issue and it is not being resolved by re-generating the intervals.
    Can some one let me know any possible cause of this long run.
    Thanks.

    Hello,
    You could try the following:
    Go to the Implementation Guide of the contract accounting (under
    'Technical settings' -> 'Prepare mass activities') and maintain the
    settings for the general control for the mass run types.
    Delete the 'No reconciliation key' indicator on the 'Reconciliation key'
    tab and set the 'Mass posting' indicator.
    See if this can help.
    Regards
    Olivia

  • Is there a way to monitor CPU usage during the execution of a vi?

    I am wondering if there is a way, using LabView, to monitor the CPU usage during the execution of a vi. I want to be able to programmatically adjust the program controls based on the CPU usage. This program is designed to run all day in the background.
    Thanks!

    JAI wrote:
    > I am wondering if there is a way, using LabView, to monitor the CPU
    > usage during the execution of a vi. I want to be able to
    > programmatically adjust the program controls based on the CPU usage.
    > This program is designed to run all day in the background.
    >
    > Thanks!
    There are at least two Windows tools you can use to see CPU usage
    (depending on what version of Windows you have). The Task Manager
    (ctrl-alt-del) has a panel that shows CPU usage. There is another
    program that has more options as to what to watch. Under W2K, it is in
    the Administrative Tools in the Control Panel and is called Performance.
    Play around with adding various new "Counters".
    Another option is to measure CPU usage programmatically. George Zou
    has a tool that makes the appropriate dll call. Check out
    http://www.geocities.com/gzou999/index.html
    Regards,
    Dave Thomson
    David Thomson 303-499-1973 (voice and fax)
    Original Code Consulting [email protected]
    www.originalcode.com
    National Instruments Alliance Program Member
    Certified LabVIEW Developer
    Certified Instrument Driver Developer
    Research Scientist 303-497-3470 (voice)
    NOAA Aeronomy Laboratory 303-497-5373 (fax)
    Boulder, Colorado [email protected]
    There are 10 kinds of people: those who understand binary,
    and those who don't.

  • To Check the execution time for each transaction.

    Abapers,
    How to find out the process time for each transaction eg.order entry,shippng,billing, etc in SAP.
    TIA,
    sinthu

    Hi,
        By default you can see the execution time at right side corner of sap session.
    You can use SE30 to get in to more details like database time , abap time etc...
    Hope it helps...
    Regards,
    Vijay

  • How to provide access to Critical Transactions in GRC AC 10.0

    +Hello Gurus,+
    +We are in phase of implementing GRC AC 10.0 , and have a requirement where there are "Critical Transactions" identified by the Business and if there is any end user who wants to access any specific "Critical Transaction" e.g. PA30 etc then it must automatically go to a specific Owner of that transaction.+
    +As far as i know , we can have a workflow for getting a role assigned, but not sure if it is possible to have a workflow where every "critical transaction" will have an owner and then on selection of the transaction it will trigger a workflow.+
    +I would also like to know what is a standard or rather best practice in SAP GRC , regarding providing access to "CRITICAL Transactions" ??+
    +We thought of creating a role containing multiple "Critical transactions" and then assigning to the firefighter ID , for which we have an approval workflow !! But that does not help , as assigning the role will give user access to some other "critical transactions" as well which we would like to control.+
    +Looking forward to know about the suggestion/solution for this issue.+
    +Thanks in advance.+
    +Regards,+
    +Victor+

    Hello,
    Victor Ger wrote:
    > +We thought of creating a role containing multiple "Critical transactions" and then assigning to the firefighter ID , for which we have an approval workflow !! But that does not help , as assigning the role will give user access to some other "critical transactions" as well which we would like to control.+
    > +Victor+
    I think that only one firefighter with all the critical transactions is not a good idea. I guess it's better to have different firefighters IDs assigned to different users. The point here is to decide if you really want to have a trace for all critical transactions executions.
    An example:
    Tx. SM37 is considered a critical transaction if the user has also the auth. object S_BTCH_ADM set to "yes".  This allows to delete or copy others user's jobs. This is and authorization that a Basis person must have. Do you really want to trace this?
    I think that force a Basis person to use a firefighter for this is nonsense, because this tx. is part of his/her job. Then, you should accept this sort of risks, otherwise you'll get the point where you replace the normal users with FF users. This is not the idea of FF.
    Of course, this is just a thought and all depends on your business requirements.
    Cheers,
    Diego.

  • FFLOGCRT Send Log Report with Critical Transactions Only

    Hi ,
    I have configured FF (SPM) where in Controllers are getting FF ID login notifications through Emails. Now I have a requirement to stop these notifications and send them only for critical transactions.I have configured critical transactions in table /VIRSA/ZVIRTCODE.
    In order to get notifications only for critical transactions I have updated the configuration as below.
    CHGLOG Retrieve Change Log     YES
    FFAUTH Firefighter Owner Additional Authorization     YES
    FFCNTL Firefighter Controller Additional Authorization     YES
    FFLOGCRT Send Log Report with Critical Transactions Only     YES
    FFLOGIM Send Log Report Execution Notification Immediately     NO
    FFLOGNOTI Send Log Report Execution Notification     NO
    FFNOTIM Send Firefighter Login Notification Immediately     NO
    MAIL Send FirefightId Login Notification     NO
    RFC Remote Function Call     LOCAL
    My controllers are not getting notified for critical transactions with above config. Please can you suggest where am I going wrong.
    SOST/SCOT working fine.
    ps: I have gone through the note Note 1065048 - Firefighter Log Not sent in Email to Controller.pdf
    Thanks!!
    ARD
    Edited by: Abhijeet Deshmukh on Sep 17, 2010 5:20 PM

    Hi Simon,
    I am not using risk analysis and remediation's critical transactions table. My FF (SPM) specific crtitcal transactions are in table
    /VIRSA/ZVIRTCODE.
    CTRAN Critical Transaction Table from Compliance Calibrator(VRAT)     NO.
    I am under impression that table /VIRSA/ZVIRTCODE is used by FF for critical transactions.
    Thanks!!
    ARD

  • How to externally trigger the execution of TestStand with a start and abort button through a digital interface?

    Hello,
    I'm Currently evaluating TestStand as an alternative for an in-house developed Test Sequencer.
    To start our own Test Sequencer we use a small box, connected to a DIO board. The box has a start button and an abort button. The box also has a pass, a fail and a running led.
    The interface with this box is made via some digital lines of a PCI-DIO-96.
    In our own Test Sequencer we have groups named Init, Run, Abort, Exit.
    The Init group is executed at startup (only once). It is used to initialize all the HW and SW. -> I guess this is the Pre UUT Loop callback in TestStand.
    The Exit group is only executed once at the end of the day when the application is terminated. It is used to free all the used hardware and cleanup all the resources. This probably is the Post UUT Loop Callback in TS.
    When a product needs to be tested, the operator presses the "start" button which triggers our own Test Sequencer and the run and abort group are being executed (first the run group, afterwards the abort group).
    When the product is being tested the "running led" of the little box lights up to indicate to the operator that the application is running. (only when the run and abort group are running)
    The Run group has all the functional tests in it. (MainSequence)
    The abort group is used to put everything back in it's original state after the test on this single product is done. (Post UUT)
    When executing the tests and something goes wrong (operator gets stuck in a clamper, ...) the operator can still press the abort button and then the execution immediately jumps from the currently executing step in the run group to the first step of the abort group. So, when something goes wrong, immediately the abort group is called.
    At the end of the run and abort group, if no errors occured, the "pass led" lights up. If one or more steps went wrong the "fail" led lights up.
    This setup can also be used to test multiple product in parallel. At that time all the different parallel testers have such a small box which contains a "start" and "abort" button and a pass, fail and running led. (it is possible that they are all connected to the same PCI-DIO-96 board. )
    My question:
    Is it possible to do something similar like this in Teststand? If yes, is there an example available that shows me how to do this in TestStand? (externally trigger the execution of TestStand)
    Typically, in the Init group (Pre UUT Loop) the digital interface box gets initialised.
    In the Close group (Post UUT Loop) the digital interface box is taken out of scope.
    Note: The PCI-DIO-96 board to which the digital interface box is connected will also be used in the rest of the developed application (MainSequence, ...)
    What's really important for me is that I can create a process model that all the application developers in our organisation can use. I really don't want any of the application developers (limited software experience) to mess around in all the features of TestStand.
    For them it's important that they just add the function DigitalInterfaceBoxInit () in the Pre UUT Loop Callback and the DigitalInterfaceBoxClose () in the Post UUT Loop Callback, and then everything works!
    It is important that the appliation developers do not have to create any global variables, other functions, synchronisations, parallel sequences, ... in TestStand. All this needs to be done with a simple call to the DigitalInterfaceBoxInit function.
    Thanks in advance for all the help!
    Best Regards,
    Dennis Vanotterdijk
    [email protected]

    Dennis-
    Your application sounds very well suited to TestStand's abilities. I am also quite impressed with your knowledge of how TestStand's architecture is arranged when you are still just considering whether or not to use it.
    I think that TestStand would work really well for you in this application. Like you mentioned it will provide you with a form of standardization for your application developers to work from. It also provides the flexibility for you to add your custom routines in many different places. TestStand also makes parallel and batch testing much easier in TS 2.0 so that you could develop one test for your product and execute different instances of it in parallel to test multiple products at once.
    As for your specific question about how to c
    ontrol TestStand using a DIO board. I think this is very feasible and should not be too difficult. Since TestStand provides you the ability to create a custom operator interface your operator interface could monitor the status of your DIO board and launch/abort executions based on the read values. Usually the executions are launched/aborted when a button on the GUI is pressed however, I do not see any thing different about basing the action on a DI signal vs a mouse click. I am sure your application is more involved than this high level description but from the sounds of it I think it is very possible to do with TestStand.
    Based on my experience of building test systems with TestStand and your description of the application, I would feel very confident in using TestStand to achieve all the goals you mentioned. If you have further detailed questions on how one of your features might be implemented, feel free to contact one of our Application Engineers or email us at www.ni.com/ask
    and we would be glad to help you.
    Best regards,
    Richard McDonell
    National Instruments

  • How can I stop the execution on a JSP page and start it again

    Hi
    I am making a program that simulates how to manage transactions when accessing a database by using locks. I have run into a problem and I hope someone has the time to help me.
    When a user does an update the transaction commits and releases its locks when the program executes
    <%stmt.executeUpdate("commit!"); %>
    I need to put a break in to stop the program executing this statement, to illustrate the lock is set correctly.
    I have tried to put in an alert box but this does not prevent the rest of the java code being executed.
    I have tried to use prompt boxes, JavaScript functions, but these functions cannot have any java code in them.
    I have tried using the java.swing JOptionPane boxes but this didn?t work either
    I have tried to get input from the user but I don?t know how to retrieve this data on the same page. (As far as I know you have to use submit and even refresh the page or retrieve it on the next page).
    Does anyone know how I can stop the execution on a JSP page and start it again (on same page)
    Mette

    I already have another client (Tomcat jsp application) running and it throws a SQLException correctly when I don�t put in a commit=true statement and don't close the database connection.
    But the problem is how to get the code above to stop to illustrate I have set this lock.
    I have tried to use the JOptionPane but because my program is running in a web browser I cannot use the JOptionPane dialog box.
    I have tired using an alert box but it executes the commit statement before the alert box is dispayed. So this does not work
    While (i < 2)
    if( i==1)
    %>alert(�The transactions commits when you press Ok�); <% //what it to stop execution here
    else
    stmt.executeUpdate(�commit�);
    I am not using threads so I cannot use the sleep function.
    I am using mysql and have already configured it to detect deadlocks and how long to wait for locks.
    Thanks for your help
    Mette

  • How can I make the execution of my script faster

    Hi everyone
    How can I make the execution of my script faster, because it takes a lot of time to execute? The following is my script:
    DECLARE
    CURSOR C1 IS
    SELECT A.ITEM_CODE,A.STORE_CODE,ST_UNIT,SA_UNIT,CART_QTY,QUANTITY_ON_HAND
    FROM PROJ.IM_LOCATION A
    WHERE A.ITEM_CODE BETWEEN :ITEM_FRM AND :ITEM_TO
    AND A.STORE_CODE = :FRM_STORE
    ORDER BY
    A.STORE_CODE ;
    CURSOR C2 IS
    SELECT A.ITEM_CODE,A.STORE_CODE,ST_UNIT,SA_UNIT,CART_QTY,QUANTITY_ON_HAND
    FROM PROJ.IM_LOCATION A
    WHERE A.ITEM_CODE BETWEEN :ITEM_FRM AND :ITEM_TO
    AND A.STORE_CODE = :FRM_STORE
    ORDER BY
    A.STORE_CODE ;
    big_syb_qty_issue number(12,3);
    small_syb_qty_issue number(12,3);
    big_issue number(12,3);
    small_issue number(12,3);
    item_syb_code varchar2(30);
    big_syb_qty_rec number(12,3);
    small_syb_qty_rec number(12,3);
    BI_SUPP_REC number(12,3);
    SM_SUPP_REC number(12,3);
    big_syb_qty_ADJ number(12,3);
    small_syb_qty_ADJ number(12,3);
    big_ADJ number(12,3);
    small_ADJ number(12,3);
    big_syb_qty_rec_iner number(12,3);
    small_syb_qty_rec_iner number(12,3);
    BI_INTER number(12,3);
    SM_INTER number(12,3);
    cl_big_qty number(12,3);
    cl_small_qty number(12,3);
    cl_big_qty1 number(12,3);
    cl_small_qty1 number(12,3);
    BIG_QTY_OPEN number(12,3);
    SMALL_QTY_OPEN number(12,3);
    BEGIN
         IF ((:FRM_STORE IS NULL) OR (:ITEM_FRM IS NULL) OR (:ITEM_TO IS NULL) OR (:DATE_FRM IS NULL)) THEN
              SHOW_MESSAGE('You Should Enter the Parameters Values Correctly Please try again !!!! ');
              RAISE FORM_TRIGGER_FAILURE;
              GO_FIELD('DATE_FRM');
         END IF;     
    DELETE FROM STOCK_AT_DATE_REP2;
    COMMIT;
    cl_big_qty := 0;
    cl_small_qty := 0;
    -- MESSAGE('Please Wait The System Calculating The Transactions !!!');
    SET_APPLICATION_PROPERTY(CURSOR_STYLE,'BUSY');
    FOR R IN C1
    LOOP
    cl_big_qty := R.CART_QTY ;
    cl_small_qty := R.QUANTITY_ON_HAND;
    -- Transerfer Data 1
    BEGIN
    SELECT B.ITEM_CODE,SUM(NVL(CART_QTY,0)) ,SUM(NVL(ITEM_QUANTITY,0))
    INTO item_syb_code,big_syb_qty_issue,small_syb_qty_issue
    FROM IM_TRANS_ISSUE_HEADER A,IM_TRANS_ISSUE_DETAILS B
    WHERE A.DOC_CODE = B.DOC_CODE
    AND B.DEL_STORE = R.STORE_CODE
    AND ITEM_CODE = R.ITEM_CODE
    AND DOC_DATE > :DATE_TO
    GROUP BY
    B.ITEM_CODE;
    -- SHOW_MESSAGE('ISSUED BIG'||' '||big_syb_qty_issue);
    exception
    when no_data_found then big_syb_qty_issue := 0;
    small_syb_qty_issue := 0;
    when others then MESSAGE(10,sqlerrm);
    END ;
    -- Goods Received Data From Supplier 1
    BEGIN
    SELECT B.ITEM_CODE,SUM(B.CART_QTY),SUM(ITEM_QUANTITY)
    INTO item_syb_code,big_syb_qty_rec,small_syb_qty_rec
    FROM IM_GOODS_RECIEVE_HEADER A,IM_GOODS_RECIEVE_DETAILS B
    WHERE A.DOC_CODE = B.DOC_CODE
    AND STORE_CODE = R.STORE_CODE
    AND ITEM_CODE = R.ITEM_CODE
    AND DOC_DATE > :DATE_TO
    GROUP BY
    B.ITEM_CODE;
    -- SHOW_MESSAGE('RECEIVED FROM SUPPLIER BIG'||' '||big_syb_qty_rec);
    exception
    when no_data_found then big_syb_qty_rec := 0;
    small_syb_qty_rec := 0;
    when others then message(10,sqlerrm);
    END ;
    -- Adjustement Data 1
    BEGIN
    SELECT B.ITEM_CODE ,SUM(NVL(CART_QTY,0)) ADJUST_QTY,SUM(NVL(ITEM_QUANTITY,0))
    INTO item_syb_code,big_syb_qty_ADJ,small_syb_qty_ADJ
    FROM IM_ADJUST_HEADER A,IM_ADJUST_DETAILS B
    WHERE A.DOC_CODE = B.DOC_CODE
    AND B.STORE_CODE = R.STORE_CODE
    AND ITEM_CODE = R.ITEM_CODE
    AND A.DOC_DATE > :DATE_TO
    GROUP BY
    B.ITEM_CODE;
    -- SHOW_MESSAGE('Adjust BIG'||' '||big_syb_qty_ADJ);
    exception
    when no_data_found then big_syb_qty_ADJ := 0;
    small_syb_qty_ADJ := 0;
    when others then message(10,sqlerrm);
    END ;
    -- Goods Received Data From Stores 1
    BEGIN
    SELECT B.ITEM_CODE,SUM(B.CART_QTY),SUM(ITEM_QUANTITY)
    INTO item_syb_code,big_syb_qty_rec_iner,small_syb_qty_rec_iner
    FROM IM_TRANS_REC_HEADER A,IM_TRANS_REC_DETAILS B
    WHERE A.DOC_CODE = B.DOC_CODE
    AND REC_STORE = R.STORE_CODE
    AND ITEM_CODE = R.ITEM_CODE
    AND DOC_DATE > :DATE_TO
    GROUP BY
    B.ITEM_CODE;
    -- show_message('here');
    -- SHOW_MESSAGE('Received From Stores BIG'||' '||big_syb_qty_rec_iner);
    exception
    when no_data_found then
    big_syb_qty_rec_iner := 0;
    small_syb_qty_rec_iner := 0;
    when others then message(10,sqlerrm);
    END ;
    cl_big_qty := (NVL(cl_big_qty,0) + NVL(big_syb_qty_issue,0));
    cl_big_qty := (NVL(cl_big_qty,0) - NVL(big_syb_qty_rec,0));
    cl_big_qty := (NVL(cl_big_qty,0) - NVL(big_syb_qty_rec_iner,0));
    big_syb_qty_ADJ := -1 * NVL(big_syb_qty_ADJ,0);
    cl_big_qty := (NVL(cl_big_qty,0) + NVL(big_syb_qty_ADJ,0));
    -- srw.message(2000,'cl_small_qty'||cl_small_qty);
    cl_small_qty := (NVL(cl_small_qty,0) + NVL(small_syb_qty_issue,0));
    cl_small_qty := (NVL(cl_small_qty,0) - NVL(small_syb_qty_rec,0));
    cl_small_qty := (NVL(cl_small_qty,0) - NVL(small_syb_qty_rec_iner,0));
    small_syb_qty_ADJ := -1 * NVL(small_syb_qty_ADJ,0);
    cl_small_qty := (NVL(cl_small_qty,0) + NVL(small_syb_qty_ADJ,0));
    -- srw.message(2000,'cl_small_qty'||cl_small_qty); srw.message(2000,'cl_small_qty'||cl_small_qty);
    INSERT INTO STOCK_AT_DATE_REP2
    VALUES(R.STORE_CODE,R.ITEM_CODE,cl_big_qty,cl_small_qty,R.ST_UNIT,R.SA_UNIT,:DATE_FRM,
    :DATE_TO,0,0,0,0,0,0,0,0,cl_big_qty,cl_small_qty);
    cl_big_qty := 0;
    cl_small_qty := 0;
    END LOOP;
    COMMIT;
    FOR R IN C2
    LOOP
    -- Transerfer Data 2
    BEGIN
    SELECT B.ITEM_CODE,SUM(NVL(CART_QTY,0)) ,SUM(NVL(ITEM_QUANTITY,0))
    INTO item_syb_code,big_issue,small_issue
    FROM IM_TRANS_ISSUE_HEADER A,IM_TRANS_ISSUE_DETAILS B
    WHERE A.DOC_CODE = B.DOC_CODE
    AND B.DEL_STORE = R.STORE_CODE
    AND ITEM_CODE = R.ITEM_CODE
    AND DOC_DATE BETWEEN :DATE_FRM AND :DATE_TO
    GROUP BY
    B.ITEM_CODE;
    -- SHOW_MESSAGE('ISSUED BIG'||' '||big_syb_qty_issue);
    exception
    when no_data_found then
    big_issue := 0;
    small_issue := 0;
    when others then MESSAGE(10,sqlerrm);
    END ;
    -- Goods Received Data From Supplier 2
    BEGIN
    SELECT B.ITEM_CODE,SUM(NVL(B.CART_QTY,0)),SUM(NVL(ITEM_QUANTITY,0))
    INTO item_syb_code,BI_SUPP_REC,SM_SUPP_REC
    FROM IM_GOODS_RECIEVE_HEADER A,IM_GOODS_RECIEVE_DETAILS B
    WHERE A.DOC_CODE = B.DOC_CODE
    AND STORE_CODE = R.STORE_CODE
    AND ITEM_CODE = R.ITEM_CODE
    AND DOC_DATE BETWEEN :DATE_FRM AND :DATE_TO
    GROUP BY
    B.ITEM_CODE;
    -- SHOW_MESSAGE('1- SM_SUPP_REC '||' '||SM_SUPP_REC );
    -- SHOW_MESSAGE('RECEIVED FROM SUPPLIER BIG'||' '||big_syb_qty_rec);
    exception
    when no_data_found then
    BI_SUPP_REC := 0;
    SM_SUPP_REC := 0;
    when others then message(10,sqlerrm);
    END ;
    -- Adjustement Data 2
    BEGIN
    SELECT B.ITEM_CODE ,SUM(NVL(CART_QTY,0)) ADJUST_QTY,SUM(NVL(ITEM_QUANTITY,0))
    INTO item_syb_code,big_ADJ,small_ADJ
    FROM IM_ADJUST_HEADER A,IM_ADJUST_DETAILS B
    WHERE A.DOC_CODE = B.DOC_CODE
    AND B.STORE_CODE = R.STORE_CODE
    AND ITEM_CODE = R.ITEM_CODE
    AND A.DOC_DATE BETWEEN :DATE_FRM AND :DATE_TO
    GROUP BY
    B.ITEM_CODE;
    -- SHOW_MESSAGE('Adjust BIG'||' '||big_syb_qty_ADJ);
    exception
    when no_data_found then
    big_ADJ := 0;
    small_ADJ := 0;
    when others then message(10,sqlerrm);
    END ;
    -- Goods Received Data From Stores 2
    BEGIN
    SELECT B.ITEM_CODE,SUM(NVL(B.CART_QTY,0)),SUM(NVL(ITEM_QUANTITY,0))
    INTO item_syb_code,BI_INTER,SM_INTER
    FROM IM_TRANS_REC_HEADER A,IM_TRANS_REC_DETAILS B
    WHERE A.DOC_CODE = B.DOC_CODE
    AND REC_STORE = R.STORE_CODE
    AND ITEM_CODE = R.ITEM_CODE
    AND DOC_DATE BETWEEN :DATE_FRM AND :DATE_TO
    GROUP BY
    B.ITEM_CODE;
    -- show_message('here');
    -- SHOW_MESSAGE('Received From Stores BIG'||' '||big_syb_qty_rec_iner);
    exception
    when no_data_found then
    BI_INTER := 0;
    SM_INTER := 0;
    when others then message(10,sqlerrm);
    END ;
    BEGIN
         BIG_QTY_OPEN := 0;
    SMALL_QTY_OPEN := 0;
    BEGIN
    SELECT NVL(S_BIG_QTY_OPEN,0) ,NVL(S_SMALL_QTY_OPEN,0)
    INTO
    BIG_QTY_OPEN,SMALL_QTY_OPEN
    FROM STOCK_AT_DATE_REP2
    WHERE S_STORE_CODE = R.STORE_CODE
    AND S_ITEM_CODE = R.ITEM_CODE;
    END;
    BIG_QTY_OPEN := ((BIG_QTY_OPEN) + NVL(big_issue,0));
    BIG_QTY_OPEN := ((BIG_QTY_OPEN) - NVL(BI_SUPP_REC,0));
    big_adj := -1 * NVL(big_adj,0);
    BIG_QTY_OPEN := ((BIG_QTY_OPEN) + NVL(big_adj,0));
    BIG_QTY_OPEN := ((BIG_QTY_OPEN) - NVL(BI_INTER,0));
    SMALL_QTY_OPEN := ((SMALL_QTY_OPEN) + NVL(SMALL_issue,0));
    SMALL_QTY_OPEN := ((SMALL_QTY_OPEN) - NVL(SM_SUPP_REC ,0));
    SMALL_adj := -1 * NVL(SMALL_adj,0);
    SMALL_QTY_OPEN := ((SMALL_QTY_OPEN) + NVL(SMALL_adj,0));
    SMALL_QTY_OPEN := ((SMALL_QTY_OPEN) - NVL(SM_INTER,0));
    END;
    BEGIN
    UPDATE STOCK_AT_DATE_REP2
    SET BIG_SUP_REC = BI_SUPP_REC,
    SMALL_SUP_REC = SM_SUPP_REC,
    BIG_ISSUE_TRAN = big_issue,
    SMALL_ISSUE_TRAN = SMALL_issue,
    BIG_ADJUST = big_adj,
    SMALL_ADJUST = SMALL_adj,
    BIG_INTER_REC = BI_INTER,
    SMALL_INTER_REC = SM_INTER,
    S_BIG_QTY_OPEN = BIG_QTY_OPEN,
    S_SMALL_QTY_OPEN = SMALL_QTY_OPEN
    WHERE S_STORE_CODE = R.STORE_CODE
    AND S_ITEM_CODE = R.ITEM_CODE;
    exception
    when no_data_found then
    NULL;
    when others then
    message(10,sqlerrm);
    END;
    END LOOP;
    COMMIT;
    SET_APPLICATION_PROPERTY(CURSOR_STYLE,'default');
    SYNCHRONIZE;
    -- SHOW_MESSAGE('The Data Have Been Calculated !!!');
    END;
    declare
         pl_id ParamList;
    APPLICATION_ID VARCHAR2(20):='PRD';
              COMMAND_LINE VARCHAR2(100) :='STOCK_LEDGER';
    BEGIN
    pl_id := Get_Parameter_List('tmpdata');
    IF NOT Id_Null(pl_id) THEN
    Destroy_Parameter_List( pl_id );
    END IF;
    pl_id := Create_Parameter_List('tmpdata');
    Add_Parameter(pl_id,'DATE_FRM',TEXT_PARAMETER,:DATE_FRM);
    Add_Parameter(pl_id,'DATE_TO',TEXT_PARAMETER,:DATE_TO);
    Add_Parameter(pl_id,'ITEM_FRM',TEXT_PARAMETER,:ITEM_FRM);
    Add_Parameter(pl_id,'ITEM_TO',TEXT_PARAMETER,:ITEM_TO);
    Add_Parameter(pl_id,'FRM_STORE',TEXT_PARAMETER,:FRM_STORE);
    IF :REPORT_TYPE = 1 THEN
    Run_Product(REPORTS,'C:\INV\RDF\STOCK_LEDGER.rdf',SYNCHRONOUS,RUNTIME,
    FILESYSTEM, pl_id,NULL);
    ELSIF :REPORT_TYPE = 2 THEN
    Run_Product(REPORTS,'C:\INV\RDF\STOCK_LEDGER_2.rdf',SYNCHRONOUS,RUNTIME,
    FILESYSTEM, pl_id,NULL);
    END IF;
    END;
    Waiting for your valuable answer
    Best Regards
    Jamil Alshaibani

    Make a matte in Photoshop.
    From the Photoshop menu bar: File > New > Film & Video Presets. Choose one that suits your FCP project pixel dimensions. Make the background black. Place a white rectangle with rounded corners on top (the white will determine how much of your picture is visible). Flatten Image. Save as TIFF. Import into FCP.
    Move your video clips up to V2. Place the imported TIFF on V1. Highlight all clips on V2.
    Go to Modify > Composite Mode > Travel Matte Luma. Done.
    If you want soft edges, no need for a matte. Double click your clip to place it in the Viewer. Open up the Motion tab > Crop > Edge Feather. Nice and quick. Copy and Paste attributes for the other clips.

  • What are the parameters in Call transaction method?

    Hi ABAPER'S,
        Please give me what are the parameters in call transaction method?
    Thanks,
    Prakash

    Processing batch input data with CALL TRANSACTION USING is the faster of the two recommended data transfer methods. In this method, legacy data is processed inline in your data transfer program.
    Syntax:
    CALL TRANSACTION <tcode>
    USING <bdc_tab>
    MODE  <mode>
    UPDATE  <update>
    <tcode> : Transaction code
    <bdc_tab> : Internal table of structure BDCDATA.
    <mode> : Display mode:
    A
    Display all
    E
    Display errors only
    N
    No display
    <update> : Update mode:
    S
    Synchronous
    A
    Asynchronous
    L
    Local update
    A program that uses CALL TRANSACTION USING to process legacy data should execute the following steps:
    Prepare a BDCDATA structure for the transaction that you wish to run.
    With a CALL TRANSACTION USING statement, call the transaction and prepare the BDCDATA structure. For example:
    CALL TRANSACTION 'TFCA' USING BDCDATA
    MODE 'A'
    UPDATE 'S'.
    MESSAGES INTO MESSTAB.
    IF SY-SUBRC <> 0.
    <Error_handling>.
    ENDIF.
    The MODE Parameter
    You can use the MODE parameter to specify whether data transfer processing should be displayed as it happens. You can choose between three modes:
    A Display all. All screens and the data that goes in them appear when you run your program.
    N No display. All screens are processed invisibly, regardless of whether there are errors or not. Control returns to your program as soon as transaction processing is finished.
    E Display errors only. The transaction goes into display mode as soon as an error in one of the screens is detected. You can then correct the error.
    The display modes are the same as those that are available for processing batch input sessions.
    The UPDATE Parameter
    You use the UPDATE parameter to specify how updates produced by a transaction should be processed. You can select between these modes:
    A Asynchronous updating. In this mode, the called transaction does not wait for any updates it produces to be completed. It simply passes the updates to the SAP update service. Asynchronous processing therefore usually results in faster execution of your data transfer program.
    Asynchronous processing is NOT recommended for processing any larger amount of data. This is because the called transaction receives no completion message from the update module in asynchronous updating. The calling data transfer program, in turn, cannot determine whether a called transaction ended with a successful update of the database or not.
    If you use asynchronous updating, then you will need to use the update management facility (Transaction SM12) to check whether updates have been terminated abnormally during session processing. Error analysis and recovery is less convenient than with synchronous updating.
    S Synchronous updating. In this mode, the called transaction waits for any updates that it produces to be completed. Execution is slower than with asynchronous updating because called transactions wait for updating to be completed. However, the called transaction is able to return any update error message that occurs to your program. It is much easier for you to analyze and recover from errors.
    L Local updating. If you update data locally, the update of the database will not be processed in a separate process, but in the process of the calling program. (See the ABAP keyword documentation on SET UPDATE TASK LOCAL for more information.)
    The MESSAGES Parameter
    The MESSAGES specification indicates that all system messages issued during a CALL TRANSACTION USING are written into the internal table <MESSTAB> . The internal table must have the structure BDCMSGCOLL .
    You can record the messages issued by Transaction TFCA in table MESSTAB with the following coding:
    (This example uses a flight connection that does not exist to trigger an error in the transaction.)
    DATA: BEGIN OF BDCDATA OCCURS 100.
    INCLUDE STRUCTURE BDCDATA.
    DATA: END OF BDCDATA.
    DATA: BEGIN OF MESSTAB OCCURS 10.
    INCLUDE STRUCTURE BDCMSGCOLL.
    DATA: END OF MESSTAB.
    BDCDATA-PROGRAM = 'SAPMTFCA'.
    BDCDATA-DYNPRO = '0100'.
    BDCDATA-DYNBEGIN = 'X'.
    APPEND BDCDATA.
    CLEAR BDCDATA.
    BDCDATA-FNAM = 'SFLIGHT-CARRID'.
    BDCDATA-FVAL = 'XX'.
    APPEND BDCDATA.
    BDCDATA-FNAM = 'SFLIGHT-CONNID'.
    BDCDATA-FVAL = '0400'.
    APPEND BDCDATA.
    CALL TRANSACTION 'TFCA' USING BDCDATA MODE 'N'
    MESSAGES INTO MESSTAB.
    LOOP AT MESSTAB.
    WRITE: / MESSTAB-TCODE,
    MESSTAB-DYNAME,
    MESSTAB-DYNUMB,
    MESSTAB-MSGTYP,
    MESSTAB-MSGSPRA,
    MESSTAB-MSGID,
    MESSTAB-MSGNR.
    ENDLOOP.
    The following figures show the return codes from CALL TRANSACTION USING and the system fields that contain message information from the called transaction. As the return code chart shows, return codes above 1000 are reserved for data transfer. If you use the MESSAGES INTO <table> option, then you do not need to query the system fields shown below; their contents are automatically written into the message table. You can loop over the message table to write out any messages that were entered into it.
    Return codes:
    Value
    Explanation
    0
    Successful
    <=1000
    Error in dialog program
    > 1000
    Batch input error
    System fields:
    Name:
    Explanation:
    SY-MSGID
    Message-ID
    SY-MSGTY
    Message type (E,I,W,S,A,X)
    SY-MSGNO
    Message number
    SY-MSGV1
    Message variable 1
    SY-MSGV2
    Message variable 2
    SY-MSGV3
    Message variable 3
    SY-MSGV4
    Message variable 4
    Error Analysis and Restart Capability
    Unlike batch input methods using sessions, CALL TRANSACTION USING processing does not provide any special handling for incorrect transactions. There is no restart capability for transactions that contain errors or produce update failures.
    You can handle incorrect transactions by using update mode S (synchronous updating) and checking the return code from CALL TRANSACTION USING. If the return code is anything other than 0, then you should do the following:
    write out or save the message table
    use the BDCDATA table that you generated for the CALL TRANSACTION USING to generate a batch input session for the faulty transaction. You can then analyze the faulty transaction and correct the error using the tools provided in the batch input management facility.

  • How to monitor the values transferred to the jump query in a debug mode?

    Dear experts,
    There is a problem in the interface of two qeuries. In the first query, the infoobject is defined as a global filter with a constant. I added this infoobject in the interface via RSBBS.
    Nevertheless, if i run the jump query, the value in this InfoObject is not taken into account by the jump query.
    Does anybody know whether there is a method to debug (monitor) the values tranferred to the jump query? For example, in the transaction RSRT or others.
    Thanks in advance!

    in RSRT- EXECUTE+DEBUG => breakpoint in RRI transpormations
    also see the note 1053310
    Regards, Ragz

  • In the rwb adapter monitoring the JDBC Adapter always grey

    Hi all
    I try to use JDBC Adapter in XI 3.0 sp14.
    First I deploy the MS SqlServer JDBC by SDM RemoteGui.I can see the deployed JDBC package in \j2ee\cluster\server0\bin\ext\com.sap.aii.af.jmsproviderlib.
    Then I create a communication Channel using JDBC 2.0 in a Business System and active the configuration.
    But when I monitor JDBC Adapter in the rwb, I find the JDBC Adapter is always grey.In the \server0\log\services\com.sap.aii.adapter.jdbc.svc, no log shows the jdbc adapter is initial.
    So what extended configuration shall i do.
    Thanks in advanced
    Elliott

    hi Alessandro,ravi:
    Thanks for your reply. I will describe detail.
    I use a file adapter as a sender and use a JDBC adapter as a receiver.
    In the sxmb_moni I find the processed message status is successful.
    So I think the integration server works fine.
    In the message monitoring, the message is waiting status.
    If I change the receiver adapter to file adapter.
    It works fine.So I think the process config is fine and the itegration server works fine. the error is in the receiver JDBC adapter side.
    I check the default trace, <b>there is error logs</b>:
    #com.sap.aii.af.ra.ms.impl.core.queue.ReceiveConsumer
    #sap.com/com.sap.aii.af.ms.app
    #com.sap.aii.af.ra.ms.impl.core.queue.ReceiveConsumer.invokeHandler(QueueMessage, MessageController, Services)
    #J2EE_GUEST#0#SAP J2EE Engine JTA Transaction :
    [057ffffffb160017c]
    #cgbasis.comgroup.cn_XID_5746950#XIAFUSER#0a056bc0900311daa9ca0013d4b31c7c#SAPEngine_Application_Thread[impl:3]
    _36##0#0#Error##Java###Rolling back transaction for
    message due to: #2#d2fe2281-8fd4-11da-cf7f-
    0013d4b31c7c(INBOUND)#Object not found in lookup of
    SapXIJDBCAdapterService.#
    #com.sap.aii.af.ra.ms.impl.core.queue.ReceiveConsumer#sap
    .com/com.sap.aii.af.ms.app#com.sap.aii.af.ra.ms.impl.core
    .queue.ReceiveConsumer.invokeHandler(QueueMessage, MessageController, Services)
    #J2EE_GUEST#0##cgbasis.comgroup.cn_XID_5746950#XIAFUSER#0
    a056bc0900311daa9ca0013d4b31c7c#SAPEngine_Application_Thread
    [impl:3]_36##0#0#Error##Java###Transaction rolled back
    for meesage due to: #2#d2fe2281-8fd4-11da-cf7f-
    0013d4b31c7c(INBOUND)#Object not found in lookup of
    SapXIJDBCAdapterService.#
    In the adapter monitoring, JDBC Adapter icon is grey. I
    can't click for detail information. I only deploy the
    JDBC drivers by SDM remoteGui. What else shall I do.
    Btw, Can you say sth detail about how to test the
    deployed JDBC adapter on visual administrator?
    Thanks
    Elliott

Maybe you are looking for

  • 1328 Error applying patch to [filename].

    A file has changed or is missing. Uninstall and reinstall the program. I have tried this solution twice and it did not resolve the issue.

  • Is there a way to allow for two lines in "running header (character style)" text variable?

    In my "running header (character style)" text variables, some of the items are quite long and take up more space in my header than I have room for - because I have another "running header (character style)" text variable beside it - and I am trying t

  • Make UDF Read-only for all users

    Hi Can i use any script to make a UDF read-only for all users? i am looking at CPRF and CUFD Tables thanks

  • Access/Segmentation Violation errors

    Here's another one of those "Has anyone seen this" questions. We are currently stress testing one of our applications and get the following 'Access/Segmentation Violation' error on a server partition: Begin Stack Backtrace ===========================

  • Where can i find my text files?

    I am working in a xaml app and am trying to make a text file, and then open it in like note pad. My code does not give me any errors but I can't find the file any where. Here is what I have:         async void test()             StorageFolder folder