Debugging mode only

I'm new in flash and am having a problem with an mpeg file. I
downloaded a music video from lth web and encoded it using Flash 8
video encoder. then loaded the file into flash 8. First, the video
plays with no sound. 2nd, if I debug the video I get both
vid and sound but because I have used embedded swf and play
in timeline option(because any of the other three options
do not work) 3rd, when I double click the flv file it does
not even play in flash. All I want to do is add some graphics to
the file
from another animation that I am doing in xsi. am I going
about this wrong,I wanted to do the video with special effects and
post
it to my web site.

You could do something like the attached modification.Note how I modified the connector pane for the subVI to use the conventional 4-2-2-4 pattern and notice where I connected the terminals.
NOTE: I am assuming the VI is supposed to run just once, and that you're not using the Run Continuously button in the toolbar. You're not, right?
Attachments:
NE-100_StairFlow_w_RUN00 MOD.vi ‏27 KB
NE-100_RAT_00_XX MOD.vi ‏18 KB

Similar Messages

  • Strange Error During Page Load in Debug Mode (only) - Please Help!

    Hi All,
    Data base version: oracle 11g
    Apex version: Apex 4.1.1
    Webserver: Apache
    Need help with how to troubleshoot a Critical problem. The following error only occurs during page load in "Debug" mode. And, only occurs on a specific page within the application. A web page is served-up containing the following message and the application is blocked from running the page. The browser's (IE 8.0) back button must be clicked to proceed outside of "Debug" mode.
    "Error occurred while painting error page: ORA-06502: PL/SQL: numeric or value error: character string buffer too small ORA-06502: PL/SQL: numeric or value error: character string buffer too small"
    Debug log follows:
    "S H O W: application="2006" page="6" workspace="" request="" session="500549669426301"
    Computation point: Before Header
    ...Perform computation of item: APP_SERVER, type=FUNCTION_BODY
    ...Performing function body computation
    ...Execute Statement: declare function x return varchar2 is begin return owa_util.get_cgi_env('SERVER_NAME'); return null; end; begin wwv_flow.g_computation_result_vc := x; end;
    ......Result = 156.9.122.214
    ...Session State: Save "APP_SERVER" - saving same value: "156.9.122.214"
    Processes - point: BEFORE_HEADER
    ...Process "GET_POSITION" - Type: PLSQL
    ...Execute Statement: begin wwv_flow.g_boolean := :F109_POSITION_ID IS NULL and :APP_PAGE_ID != 101; end;
    ......Result = FALSE
    ......Skip because condition or authorization evaluates to FALSE
    ...Process "Get JARS Sifter Log File Record Count" - Type: PLSQL
    ...Execute Statement: begin DECLARE vcnt NUMBER := 0; BEGIN d('Get JARS Sifter Log File Record Count'); Select count(*) into vcnt From JARS.JARS_SIFTER_LOG Where moveid = to_number(:P6_MOVEID) and sifter_status IN ('F','J'); :F1000_P6_SIFTER_LOG_COUNT := to_char(vcnt); END; end;
    Custom: Get JARS Sifter Log File Record Count
    ...Process "Set PTM Planned Trip Status" - Type: PLSQL
    ......Skip because condition or authorization evaluates to FALSE
    ...compatibility mode - do not set mime type
    ...compatibility mode - do not set additional http headers
    ...close http header
    ...metadata, fetch item type settings
    ...metadata, fetch items
    Show page template header
    Rendering form open tag and internal values
    Add error onto error stack
    ...Error data:
    ......message: Error processing request.
    ......additional_info: ORA-06502: PL/SQL: numeric or value error: character string buffer too small
    ......display_location: ON_ERROR_PAGE
    ......is_internal_error: true
    ......apex_error_code: APEX.UNHANDLED_ERROR
    ......ora_sqlcode: -6502
    ......ora_sqlerrm: ORA-06502: PL/SQL: numeric or value error: character string buffer too small
    ......error_backtrace: ORA-06512: at "APEX_040100.WWV_FLOW", line 3027 ORA-06512: at "APEX_040100.WWV_FLOW", line 7867
    ...Show Error on Error Page
    ......Performing rollback
    Rendering form open tag and internal values
    ...Unhandled Error while painting error page: ORA-06502: PL/SQL: numeric or value error: character string buffer too small ORA-06502: PL/SQL: numeric or value error: character string buffer too small
    ...Error Backtrace: ORA-06512: at "APEX_040100.WWV_FLOW", line 2707 ORA-06512: at "APEX_040100.WWV_FLOW_ERROR", line 185
    End Page Rendering"
    Thanks!
    Bernard

    All,
    It appears that the page Javascript maximum limit size was reached. The error stopped appearing after some of the page Javascript code was removed out to Application Static Files. I wonder if there exists any "direct" indicator by the system whenever the size limit has been reached?
    Again, the run error only occurred when the page was loaded in "Debug" mode.
    Bernard

  • Error C3561: tile barrier operation...occurring in debug mode only

    Hi, 
    I am new in C++ AMP, please, help me figure out why my code compile in Release mode, but C3561 occurring in debug mode.
    At first, short version to demonstrate compile errors
    parallel_for_each(D.extent.tile<TILE_SIZE>(), [=](concurrency::tiled_index<TILE_SIZE> t_idx) restrict(amp)
    float threshold = P[t_idx.global];
    tile_static float my_tile[TILE_SIZE];
    tile_static int calculatedCount;
    for (int stride=0; calculatedCount < TILE_SIZE; stride++)
    my_tile[t_idx.local[0]] = P[t_idx.global[0] + stride*TILE_SIZE];
    t_idx.barrier.wait();
    for (int i =0; i < TILE_SIZE; i++)
    if (my_tile[i] >= threshold)
    D[t_idx.global] = 0;
    calculatedCount++;
    Short version does not compile in debug and release mode. Occurring very strange "tile barrier error" C3561.
    However, full version shows more interesting results: compile errors only in debug mode, 
    parallel_for_each(D.extent.tile<TILE_SIZE>(), [=](concurrency::tiled_index<TILE_SIZE> t_idx) restrict(amp)
    float threshold = P[t_idx.global] + tp;
    float maxDrawdown = 0;
    float open = P[t_idx.global];
    tile_static float my_tile[TILE_SIZE];
    tile_static int calculatedCount;
    int stride = 0;
    bool calculated = false;
    calculatedCount = 0;
    t_idx.barrier.wait();
    for (; calculatedCount < TILE_SIZE; stride++)
    if (t_idx.global[0] + stride*TILE_SIZE < sz)
    my_tile[t_idx.local[0]] = P[t_idx.global + stride*TILE_SIZE];
    t_idx.barrier.wait();
    if (calculated)
    continue;
    for (int i = stride == 0 ? t_idx.local[0] : 0; i < TILE_SIZE; i++)
    if (maxDrawdown < open - my_tile[i])
    maxDrawdown = open - my_tile[i];
    if (my_tile[i] >= threshold)
    duration[t_idx.global] = stride*TILE_SIZE + i - t_idx.local[0];
    D[t_idx.global] = maxDrawdown;
    calculated = true;
    calculatedCount++;
    break;
    if (stride*TILE_SIZE + i >= sz)
    calculated = true;
    calculatedCount++;
    D[t_idx.global] = maxDrawdown;
    duration[t_idx.global] = 0;
    break;

    Hello, thank you for your inquiry. The issue here is that you have a race condition and control flow that is conditional on the variable that's subject to the race. To be precise, in the simplified example, the following:
    calculatedCount++;
    has the effect that every lane tries to increment calculatedCount. Since there are no guarantees about ordering or completion with the given code, the compiler (reasonably) fears that this might result in a case where some lanes break out of the loop while
    others do not (different calculatedCount values per lane). This is invalid due to the fact that the body of the loop contains a barrier (all lanes must see a barrier i.e. control flow must not diverge around it). Hence the odd error. The solution here
    could be to use an atomic increment on calculatedCount and add a barrier after the innermost loop, so that the outermost loop is tile-synchronous, like so:
    for (int stride=0; calculatedCount < TILE_SIZE; stride++) {
    my_tile[t_idx.local[0]] = P[t_idx.global[0] + stride*TILE_SIZE];
    t_idx.barrier.wait();
    for (int i =0; i < TILE_SIZE; i++) {
    if (my_tile[i] >= threshold) {
    D[t_idx.global] = 0;
    concurrency::atomic_fetch_inc(&calculatedCount);
    t_idx.barrier.wait();
    Also, as a curiosity, what is the intent of the innermost loop? My reading of it suggests that it is in error i.e. each value that you cache ends up being processed multiple times: all lanes process [0], then [1], then [2] etc. If [0] is above the threshold,
    this means that you end the loop after processing just that one datum. Since I presume you want to process the data in my_tile, the way to achieve that is to remove the for and leave the body modified like so:
    for (int stride=0; calculatedCount < TILE_SIZE; stride++) {
    my_tile[t_idx.local[0]] = P[t_idx.global[0] + stride*TILE_SIZE];
    t_idx.barrier.wait();
    if (my_tile[i] >= threshold) {
    D[t_idx.global] = 0;
    concurrency::atomic_fetch_inc(&calculatedCount);
    t_idx.barrier.wait();
    Hope this helps! Cheers!

  • How to fill internal table with no data in debugging mode

    Hi all,
             I modified one existing program.Now I want to test it.I am not given test data.So in the middle of my debugging, I found that one internal table with no data.My problem is how to fill that internal table with few records in that debugging mode just as we change contents in debugging mode.If I want to proceed further means that internal table must have some records.
    Please I dont know how to create test data so I am trying to create values temporarily in debugging mode only.
    Thanks,
    Balaji

    Hi,
    In the debugging do the following..
    Click the Table button..
    Double click on the internal table name..
    Then in the bottom of the screen you will get the buttons like CHANGE, INSERT, APPEND, DELETE..
    Use the APPEND button to insert records to the internal table..
    Thanks,
    Naren

  • Short dump in debug mode

    Hi All,
    We have recently upgraded our server from SAP R/3 4.6b to ECC 5.0. Whenever we are debugging any program(Both standard and Z-programs) getting short dump
    in the select and endselect statements. This is happening only when we are going on DEBUG MODE only Appreciate any lights on this issue.(All programs are Unicode enabled).
    Regards,
    Ameer.

    hi
    your problem will solve if you put the break point after <b>ENDSELECT</b> statement. let the cursor not go inside the select-endselect statement. it causes short-dump.
    thx
    murthy

  • Visual Studio 2015 strange failure in debug mode

    Hi,
    I installed the latest vs 2015 on windows 7 (vmware) to test it compiling and running a set of applications (desktop) I have.
    The compilation is ok but when I try to run one of those apps, I get this error (running the debug version):
    Please note that if I run in release mode, there is no error at all!?
    Following the call stack, it seems that it fails somewhere in the STL releasing a temporary string or something like that. Unfortunately, I cannot create just a small example showing the failure.
    Any ideas of why will this failure be in debug mode only? Note that the call stack shows that this code:
        ~_String_alloc() _NOEXCEPT
            {    // destroy the object
            _Free_proxy();
    is run from xstring and it fails calling "_Free_proxy();". Also note that this is called ONLY when _ITERATOR_DEBUG_LEVEL is defined. No such code is run in release mode.
    Thanks,
    G.

    Hi,
    I think I found the issue and here are some details, hopping that it will help others running in the same problem(s).
    First, I did not have just the issue starting this thread, there was another issue related.
    I have created a C++ DLL exporting common functions I used in various applications. Most of the time I used this DLL from console programs (servers). However I had two GUI programs where I also used this DLL, one based on MFC and the other on WTL.
    These two programs have the issues as follows:
       When the MFC program is run in debug mode under the IDE, at exist the IDE will show a memory leak. This happened with both vs 2013 and vs 2015. This is a debug mode only issue.
       When the WTL program was run in debug mode under the IDE, it showed no problems at all when using vs 2013 but had the issue described at the starting of this thread under vs 2015. This is also a debug mode only issue.
    It turned out that mfc issue was caused by a known bug in MFC where the termination code of the mfc app, is run BEFORE the termination of code of the DLL. This way the IDE give a false memory leak!! There were actually no memory leaks, just the false alarm!
    I am not sure exactly what is going on in the WTL but the issue seems somehow similar in the sense that something not loaded in time from the DLL caused the problem.
    The solution: For both projects in fact it was very easy to fix this issue by setting the option to delay load the DLL. That in turn will force the MFC to wait to first unload the DLL and then
    there is no false leakage info! This also as I said fixed the WTL issue but I am not sure why? Anyway the WTL is no longer maintained (too bad!!) so who know?!
    Bottom line: if you use DLLs from WTL or from MFC, delay load your DLLs! Otherwise you may get this nasty false flags in debug mode and the assert issue.
    G.

  • S_DEVELOP & Debug mode

    Hello,
      How do I' change the auth object ( S_develop) to a debug mode only?
    Thanks
    Osama

    You might Create 2 roles and assign to users on PRD on need basis.
    1 is with Debug with Replace
    Debug with Replace (Activity 02 and 03 )  Object type - Debug  is not generally given in PRD system.
    Activity     02, 03        
    Development class for Transpor *                                                                
    Object name          *                                                                          
    Object type         DEBUG                                                                      
    Authorization group ABAP/4     *                                                                    
    2 nd with just display access   - Debug Mode Only , the one you asked for.
    Debug (Activity 03 ) and and Object type - Debug
    Auth Object - s_develop
    Activity       03        
    Development class for Transpor *                                                                
    Object name          *                                                                          
    Object type         DEBUG                                                                      
    Authorization group ABAP/4     *

  • CRM_ORDER_MAINTAIN works only in debug mode

    Hi Experts,
    I am currently facing a strange issue. I am trying to add a line item to a service ticket, but the code works only in debug mode. Sample code is given below:
    lv_product_i-ref_handle = '0000000001'.
    lv_product_i-ref_guid = lv_header_guid.
    INSERT lv_product_i INTO TABLE lt_product_i.
    ls_orderadm_i-header = lv_header_guid.
    ls_orderadm_i-itm_type = 'ZSG5'.
    ls_orderadm_i-number_int = '0000000010'.
    ls_orderadm_i-ordered_prod = 'SERVICEITEM_SG5'.
    ls_orderadm_i-handle = '0000000001'.
    ls_orderadm_i-mode = 'A'.
    ls_orderadm_i-itm_proc_ident = 'SRVC'.
    INSERT ls_orderadm_i INTO TABLE lt_orderadm_i.
    ls_input_fields-ref_handle = '0000000001'.
    ls_input_fields-objectname = 'ORDERADM_I'.
    CLEAR ls_field_names.
    ls_field_names-fieldname = 'HANDLE'.
    APPEND ls_field_names TO ls_input_fields-field_names.
    ls_field_names-fieldname = 'HEADER'.
    APPEND ls_field_names TO ls_input_fields-field_names.
    ls_field_names-fieldname = 'ITM_PROC_IDENT'.
    APPEND ls_field_names TO ls_input_fields-field_names.
    ls_field_names-fieldname = 'ITM_TYPE'.
    APPEND ls_field_names TO ls_input_fields-field_names.
    ls_field_names-fieldname = 'MODE'.
    APPEND ls_field_names TO ls_input_fields-field_names.
    ls_field_names-fieldname = 'NUMBER_INT'.
    APPEND ls_field_names TO ls_input_fields-field_names.
    ls_field_names-fieldname = 'ORDERED_PROD'.
    APPEND ls_field_names TO ls_input_fields-field_names.
    INSERT ls_input_fields INTO TABLE lt_input_fields.
    CALL FUNCTION 'CRM_ORDER_MAINTAIN'
    EXPORTING
    it_product_i = lt_product_i
    CHANGING
    ct_orderadm_i = lt_orderadm_i
    ct_input_fields = lt_input_fields
    EXCEPTIONS
    error_occurred = 1
    document_locked = 2
    no_change_allowed = 3
    no_authority = 4
    OTHERS = 5.
    LOOP AT lt_orderadm_i INTO lv_tempvar.
    lv_item_guid = lv_tempvar-guid.
    ENDLOOP.
    The item guid is coming as initial and no item is being added.But if i put a breakpoint in CRM_ORDER_MAINTIAN, then the guid is being generated properly. Any pointers why the code is behaving like this or someone has faced a similar issue before?
    Thanks and Regards,
    Rohit

    Hi Rohit,
    The above said is also correct + U have to write
      CALL FUNCTION 'CRM_ORDER_SAVE'
        EXPORTING
          IT_OBJECTS_TO_SAVE = GT_OBJ_GUIDS
        IMPORTING
          ET_SAVED_OBJECTS   = GT_SAVED_OBJECTS
        EXCEPTIONS
          OTHERS             = 2.
      COMMIT WORK.

  • CRM_ORDER_MAINTIAN works only in debug mode!

    Hi Experts,
    I am currently facing a strange issue. I am trying to add a line item to a service ticket, but the code works only in debug mode. Sample code is given below:
    lv_product_i-ref_handle = '0000000001'.
    lv_product_i-ref_guid = lv_header_guid.
    INSERT lv_product_i INTO TABLE lt_product_i.
    ls_orderadm_i-header = lv_header_guid.
    ls_orderadm_i-itm_type = 'ZSG5'.
    ls_orderadm_i-number_int = '0000000010'.
    ls_orderadm_i-ordered_prod = 'SERVICEITEM_SG5'.
    ls_orderadm_i-handle = '0000000001'.
    ls_orderadm_i-mode = 'A'.
    ls_orderadm_i-itm_proc_ident = 'SRVC'.
    INSERT ls_orderadm_i INTO TABLE lt_orderadm_i.
    ls_input_fields-ref_handle = '0000000001'.
    ls_input_fields-objectname = 'ORDERADM_I'.
    CLEAR ls_field_names.
    ls_field_names-fieldname = 'HANDLE'.
    APPEND ls_field_names TO ls_input_fields-field_names.
    ls_field_names-fieldname = 'HEADER'.
    APPEND ls_field_names TO ls_input_fields-field_names.
    ls_field_names-fieldname = 'ITM_PROC_IDENT'.
    APPEND ls_field_names TO ls_input_fields-field_names.
    ls_field_names-fieldname = 'ITM_TYPE'.
    APPEND ls_field_names TO ls_input_fields-field_names.
    ls_field_names-fieldname = 'MODE'.
    APPEND ls_field_names TO ls_input_fields-field_names.
    ls_field_names-fieldname = 'NUMBER_INT'.
    APPEND ls_field_names TO ls_input_fields-field_names.
    ls_field_names-fieldname = 'ORDERED_PROD'.
    APPEND ls_field_names TO ls_input_fields-field_names.
    INSERT ls_input_fields INTO TABLE lt_input_fields.
    CALL FUNCTION 'CRM_ORDER_MAINTAIN'
    EXPORTING
    it_product_i = lt_product_i
    CHANGING
    ct_orderadm_i = lt_orderadm_i
    ct_input_fields = lt_input_fields
    EXCEPTIONS
    error_occurred = 1
    document_locked = 2
    no_change_allowed = 3
    no_authority = 4
    OTHERS = 5.
    LOOP AT lt_orderadm_i INTO lv_tempvar.
    lv_item_guid = lv_tempvar-guid.
    ENDLOOP.
    The item guid is coming as initial and no item is being added.But if i put a breakpoint in CRM_ORDER_MAINTIAN, then the guid is being generated properly. Any pointers why the code is behaving like this or someone has faced a similar issue before?
    Thanks and Regards,
    Rohit

    Well, during debugging an implicit COMMIT WORK is executed on a regular basis. This might cause the ITEM GUID to be created during debugging.
    However, normally, after CRM_ORDER_MAINTAIN, you should use the CRM_ORDER_SAVE as well. This will return a list of SAVED_OBJECTS. If all objects were saved correctly, do an explicit COMMIT WORK.
    Works fine for us.....

  • Processing happens only in debug mode.

    Hi,
    I am calling an RFC enabled FM BAPI_ALM_NOTIF_DATA_MODIFY and BAPI_ALM_NOTIF_SAVE to modify the data of a notification. These function modules are called within another FM which is also a RFC called in background as a separate task. The problem here is that, the data gets modified fine only when I am in the debugging mode and execute it. But if I execute without going to the debug mode, I cannot modify the notification data. Kindly suggest why this is happening and what the solution is. Thanks

    I am not using any destination. The code is as shown:
      WAIT UP TO 5 SECONDS.
      CALL FUNCTION 'BAPI_ALM_ORDER_GET_DETAIL'
        EXPORTING
          number                 = aufnr
       IMPORTING
         es_header              = gf_header
        TABLES
         et_olist               = it_ord_notif
          return                 = it_ret
    CALL FUNCTION 'BAPI_ALM_NOTIF_GET_DETAIL'
      EXPORTING
        number                   = gf_header-notif_no
    IMPORTING
       NOTIFHEADER_EXPORT       = gf_notif_exp
            CLEAR: gf_notif_no.
            DESCRIBE TABLE it_notif_no LINES g_line.
            READ TABLE it_notif_no into gf_notif_no INDEX g_line.
            IF gf_notif_no-short_text+0(3) = 'PRB'.
             clear: gf_notif_imp, gf_notif_imp_x.
                gf_notif_imp-desstdate = gf_notif_exp-desstdate.
                gf_notif_imp-desenddate = gf_notif_exp-desenddate.
                gf_notif_imp_x-desstdate = 'X'.
                gf_notif_imp_x-desenddate = 'X'.
                CALL FUNCTION 'BAPI_ALM_NOTIF_DATA_MODIFY'
                      EXPORTING
                        number                   = gf_notif_no-notif_no
                       NOTIFHEADER              = gf_notif_imp
                       NOTIFHEADER_X            = gf_notif_imp_x
                     IMPORTING
                       NOTIFHEADER_EXPORT       = gf_notif_result
                     TABLES
               CALL FUNCTION 'BAPI_ALM_NOTIF_SAVE'
      EXPORTING
        number            = gf_notif_no-notif_no
    IMPORTING
      NOTIFHEADER       = gf_qmnum_save
    TABLES
       RETURN            = it_ret2.
              endif.
                clear: gf_notif_no.
            LOOP AT it_notif_no INTO gf_notif_no.
              IF gf_notif_no-short_text+0(3) = 'PRB'.
                SELECT SINGLE objnr FROM viqmel
                                                      INTO g_objnr
                                                     WHERE qmnum = gf_notif_no-notif_no.
                SELECT SINGLE stsma INTO g_stsma FROM jsto WHERE objnr = g_objnr.
                SELECT SINGLE estat INTO g_stat FROM tj30t WHERE stsma = g_stsma AND
                  spras = 'EN'
                  AND txt04 = 'SFMR'.
                CALL FUNCTION 'STATUS_CHANGE_EXTERN'
                  EXPORTING
                    check_only          = ' '
                    client              = sy-mandt
                    objnr               = g_objnr
                    user_status         = g_stat
                    set_inact           = ' '
                    set_chgkz           = 'X'
                    no_check            = ' '
                  EXCEPTIONS
                    object_not_found    = 1
                    status_inconsistent = 2
                    status_not_allowed  = 3
                    OTHERS              = 4.
                IF sy-subrc = 0.
                ENDIF.
              ENDIF.
            ENDLOOP.
          ENDIF.
        ENDIF.
      ENDIF.

  • Updating Custom Table Only in Debug Mode

    Hi All!
    I have been encountering issues in updating a custom table. It would work successfully only in debug mode otherwise it won't update an entry in the table.
    This is the piece of code that would update an entry in the table specifically used in a user exit. The functionality of this code is to automatically remove a transportation block:
    SELECT SINGLE *
    INTO wa_zblock
    FROM zblock
    WHERE zzblknum EQ c_tr01
    AND vbeln EQ p_lvbeln
    AND zzprocessed EQ space.
    IF sy-subrc EQ 0.
    DO.
    CALL FUNCTION 'ENQUEUE_E_TABLES'
    EXPORTING
    MODE_RSTABLE = 'S'
    TABNAME = c_lzblock
    EXCEPTIONS
    FOREIGN_LOCK = 1
    SYSTEM_FAILURE = 2
    OTHERS = 3.
    IF sy-subrc EQ 0.
    wa_zblock-zzprocessed = c_x.
    wa_zblock-zzapproveby = sy-uname.
    wa_zblock-zzapproveon = sy-datum.
    MODIFY zblock FROM wa_zblock.
    if sy-subrc EQ 0.
    COMMIT WORK AND WAIT.
    endif.
    EXIT.
    ENDIF.
    ENDDO.
    CALL FUNCTION 'DEQUEUE_E_TABLES'
    EXPORTING
    MODE_RSTABLE = 'S'
    TABNAME = c_lzblock.
    ENDIF.
    How can I make this update the custom table successful in undebugged mode? Please let me know your thoughts on this.
    Thanks!

    I also suggest you to lock only the entry that will be updated (and not the whole table!) : you will have then far less problems of conflict with updating this table.
    For that, you have to create a lock object on your table (via SE11 - for example EZ_MY_TABLE). This will create 2 function modules named ENQUEUE_E<name of your lock object> (in my example ENQUEUE_EZ_MY_TABLE) and DEQUEUE_E<...>.
    You can then call those FM like this :
    CALL FUNCTION 'ENQUEUE_EZ_MY_TABLE'
      EXPORTING
        MODE_RSTABLE = 'S'
        KEYFIELD1 = ld_keyfield1  " Here are the key values for the entry that you have to update
        KEYFIELD2 = ld_keyfield2
      EXCEPTIONS
        FOREIGN_LOCK = 1
        SYSTEM_FAILURE = 2
        OTHERS = 3.
    Best regards,
    Samuel

  • Function Module working only in debug mode

    Hi all,
    The following Function Module works only in debug mode. The purpose of this FM is to create a notification and to put it in progress status. If I put a breakpoint before "CALL FUNCTION 'BAPI_ALM_NOTIF_PUTINPROGRESS'" it works. If I execute this FM without putting a breakpoint at that place it creates the notification but doesnt put it in progress status.
    In other words, the last BAPI call doesnot work if I dont put a breakpoint before.
    Can somebody help me to find out where is the problem?
    Thanks,
    Younes
    FUNCTION ZFM_CREATE_NOTIF_IN_PROCESS.
    ""Local interface:
    *"  IMPORTING
    *"     VALUE(NOTIFTYP) TYPE  CHAR2
    *"     VALUE(NOTIFHEADER) TYPE  BAPI2080_NOTHDRI
    *"  EXPORTING
    *"     VALUE(NOTIFNUMBER) TYPE  CHAR12
    *"     VALUE(NOTIFCURSTATUS) TYPE  CHAR40
    DATA: gs_bapi2080_nothdre TYPE bapi2080_nothdre,
          gt_return TYPE TABLE OF bapiret2.
    The notification is created with a temporary number
    CALL FUNCTION 'BAPI_ALM_NOTIF_CREATE'
      EXPORTING
        notif_type         = NOTIFTYP
        notifheader        = NOTIFHEADER
      IMPORTING
        notifheader_export = gs_bapi2080_nothdre
      TABLES
        return             = gt_return.
    READ TABLE gt_return TRANSPORTING NO FIELDS WITH KEY type = 'E'.
    CHECK sy-subrc IS NOT INITIAL.
    *The notication will be saved with a number which isnt temporary
    CALL FUNCTION 'BAPI_ALM_NOTIF_SAVE'
      EXPORTING
        number      = gs_bapi2080_nothdre-notif_no
      IMPORTING
        notifheader = gs_bapi2080_nothdre
      TABLES
        return      = gt_return.
    READ TABLE gt_return TRANSPORTING NO FIELDS WITH KEY type = 'E'.
    CHECK sy-subrc IS NOT INITIAL.
    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.
    The Notif is already created, it will be put in progress status
    NOTIFNUMBER = gs_bapi2080_nothdre-notif_no.
       CALL FUNCTION 'BAPI_ALM_NOTIF_PUTINPROGRESS'
            EXPORTING
              NUMBER             = NOTIFNUMBER
              LANGU              = SY-LANGU
           IMPORTING
             SYSTEMSTATUS       = NOTIFCURSTATUS
           TABLES
             RETURN             = gt_return.

    Hi Emmanuel,
    Now I get your problem: you want to wait to have the commit finished! The call to BAPI_TRANSACTION_COMMIT has an optional parameter 'WAIT' which is space by default which causes only a commit. When you set this parameter to 'X' it will do a commit work and wait.
    This should solve your problem!
    Regards,
    John.

  • My program works only in debugging mode

    Dear All,
    I am just starting to use LabVIEW and developing a instumental driver. 
    The program is rather sequentially designed because I am only used to work with text-based program. 
    The current program is working in debugging mode without any error message.
    To give an idea of how it is composed:
    1. Set up the serial port setting (machine address, baud rate, parity, etc)
    2. Send to the instument the name of a short program to be run. 
    3. Send mutiple string commands to the instruments.  Those string commands construct a short program to control the instrument.
    4. Send another string command to run the short program
    The issue is that it does not work in excution mode.  It looks to me that the communication between the instrument and computer seems to be too fast. 
    Since the program is designed in a sequential manner, it does not have any while-loop or for-loop so I cannot add any timing function. 
    Could anyone give me a hint or a right direction to fix this issue?  It would be really appreciated.  Thank you.
    Solved!
    Go to Solution.

    You could do something like the attached modification.Note how I modified the connector pane for the subVI to use the conventional 4-2-2-4 pattern and notice where I connected the terminals.
    NOTE: I am assuming the VI is supposed to run just once, and that you're not using the Run Continuously button in the toolbar. You're not, right?
    Attachments:
    NE-100_StairFlow_w_RUN00 MOD.vi ‏27 KB
    NE-100_RAT_00_XX MOD.vi ‏18 KB

  • WaitFor() works only when in debugging mode!

    Hi, im having a problem with making my function waits for a process to end while in run mode!
    The function always run and exists while the process is still running...
    I checked it in debugging mode and it worked just fine, but i cant seem to be able to make it work in the run mode!
    Any hints???
    Here is my code:
    public void executeBatch (){
    try{
    Runtime runtime = Runtime.getRuntime();
    Process batchProcess = runtime.exec(new String[] {"cmd.exe", "/c", "FetchFiles.bat"}, null, new File(BATCH_FILES_PATH));
    BufferedReader b = new BufferedReader(new InputStreamReader(batchProcess.getErrorStream()));
    if (b.ready()){
    String line=null;
    while ( (line = b.readLine()) != null) {
    System.out.println(line);
    line = b.readLine();
    int exitVal = batchProcess.waitFor();
    System.out.println("Exit Value = " + exitVal);
    } else {
    b = new BufferedReader(new InputStreamReader(batchProcess.getInputStream()));
    if (b.ready()){
    String line=null;
    while ( (line = b.readLine()) != null) {
    System.out.println(line);
    line = b.readLine();
    int exitVal = batchProcess.waitFor();
    System.out.println("Exit Value = " + exitVal);
    } catch ( Exception ex ){
    System.out.println("executeBatch : " + ex.getMessage());
    btw, the process is a batch that connects to a linux server and "mget" files from some directories in the server...

    what the ....???
    the "BadExecWinDir.java" bad approach is all about
    not using an executable command like "dir"... which
    im not using at all...More than that but secondary.
    >
    and for the "GoodWindowsExec.java" concept
    demonstrates that you should handle the standard
    error and standard input streams and emptying them
    both together, which what i exactly did. i USED the
    concept...
    My piece of code is the same as the
    "GoodWindowsExec.java" code except that i made the
    code of the StreamGobbler class comes inside the
    function directly, and that i didn't use a checkup on
    the operating system to decide wither it's a Windows
    NT or Windows 95 to decide the command prompt
    executable name...StreamGobbler runs as a thread so both streams are emptied in parallel. In your code
               String line=null;
                while ( (line = brError.readLine()) != null)
                    System.out.println(line);this will only terminate when the process terminates and closes stderr. This means that the following code
              while ( (line = brInput.readLine()) != null)
                    System.out.println(line);
                only starts to run once the process terminates.
    BUT, the stderr stream and stdout streams have a limited buffer and block when this buffer becomes full. So, if the stdout stream produces more than a buffer full then it blocks until more room is avaialable and the process cannot terminate so the error stream cannot be closed so the code to empty stdout cannot run to make room in the buffer to put more output. Phew!
    If you change the order of emptying the two streams then you have a simillar effect.
    The only way I know of dealing with this is to empty both streams at the same time so you need two threads. You can use the default thread for one but you MUST use another thread for the other. Since I use stdout, stderr and stdin I use 3 threads!
    >
    thats all...Please read the article again.

  • NWDS debug mode can only be supported by one client ?

    Hi all.
    We are 4 persons who are developing webdynpro application together.
    However, when we are using NWDS debug mode, we found that only one client debug is supported, when the second person want to debug, the first person have to exit debug mode.
    Can WAS support for more debug mode ?

    Hi Jianhong,
    Right now you have only one instance of your server,so only one debug port is available.Hence only one person at a time can debug.
    If you need to debug in development environment with more people then you have to create as many instance of server as you need.
    Recently i have seen some forum/webblog here about it.

Maybe you are looking for