Use of transactional triggers in Forms 4.5.

Hi All,
Can any body help me in using transactional triggers?
It 'll be best if anybody send me a text version (.fmt) of
ttrig.fmb**, which is a demo provided by Oracle, with D2K
release 1.x. This form 'll solve my purpose, since it
demonstrates all the functionality of transactional
triggers.
Help 'll be greatly appreciated.
Regards,
Vimal Kaushik
null

Mr. Duncan Mills and other Oracle experts,
I am currently working on an upgrade of numerous SQL*Forms version 2.3 to 6i.
I have a few questions:
Is there a detailed checklist to follow for the migration from SQL*Forms 2.x to 6i?
Do you have any examples that show the proper syntax to follow for this conversion?
Some of our colleagues have stated that a migration from SQL*Forms version 2.3 to 3.0 is required?
Just to verify, if migrating from SQL*Forms v.2.3 to 6i - I need to first migrate the SQL*Forms v.2.3 .inp file to
version 4.5 using the F45GEN program of Developer 2000, this will generate a version 4.5 .fmb file which I then need to
migrate to 6i using the IF60CMP program of Developer6i
Please let me know if there are any additional undocumented steps that I need to follow.
Does anyone have an electronic copy of the Duncan Mills presentation 'Migrating Character Mode Applications
to the Web '? If so, Can you email me a copy?
Thank you, in advance, for your assistance.

Similar Messages

  • Procedure for connecting print programme and form using Nace transaction?

    Hello Folks and Forms Guru's,
    Can u please tell me the entire procedure step by step for connecting a print programme to a form using Nace Transaction .
    Its a urgent requirement and points will be awarded.
    Om sai ram,
    Raghu

    goto NACE
    ...Select the Application
      ->click on output  types icon on application tool bar.
      -> Select the output type
      -> dbl click on processing routine from the tree
    it will display the form name & program name.
    click on change mode-> replace the program/form name.

  • No Data Found Error in Transaction Source Types Form

    Hi All,
    We are using 11.5.10.2 version of Oracle Apps.
    When i navigate to INV responsibility, Setup -> Transactions -> Source Types, upon the opening of the Transaction Source Types form, i get a series of "No Data Found" error pop up messages. I searched in metalink too but couldn't find any resolution for the same.
    Does anyone know as to how to resolve this issue? Is there any patch that needs to applied? Kindly help.
    Regards,
    Hemanth

    Hi Julie,
    On the "Process Row of..." process, make sure that it is unconditional and that the Delete opertion checkbox is ticked. Deletions from the main table should only be triggered by a DELETE request which should be issued by the "Delete" button.
    On the "Apply MRD" process, make sure that the condition is "Request is Contained within Expression 1" and Expression 1 is: APPLY_CHANGES_MRD,SAVE
    This process should be triggered by the "Delete Checked" button, which should have a URL target of:
    javascript:confirmDelete(htmldb_delete_message,'APPLY_CHANGES_MRD');This triggers the confirmation popup and submits the page with APPLY_CHANGES_MRD as the REQUEST value which should be picked up by the "Apply MRD" process only.
    Andy

  • Transactional triggers and commit processing

    I have only been an active member of this thread for a couple of weeks and have tried to contribute to a few postings. But I have also noticed lots of postings relating to the use of DML statements inside what I would call non commit time triggers.
    What I mean here is, for example, a WHEN-BUTTON-PRESSED trigger that does inserts, updates, deletes, followed by the COMMIT_FORM procedure.
    I thought it might be useful to draw attention to the possible pitfalls of this approach. I'm not saying that this approach is wrong - far from it, but sometimes it means that people aren't leveraging the functionality that you get "for free" from Forms.
    By coding some DML followed by a Commit_Form, you are not getting any rollback functionality from Forms. For example:
    INSERT INTO A
    INSERT INTO B
    COMMIT_FORM;
    Let's imagine that the insert into A worked but the insert into B failed for some reason. The user gets an unhandled exception. Now imagine that the cause of the error is cleared up, and the user presses the button (or whatever the invokation action was) again, and the commit works. You will have 2 records in A and 1 in B. You may not have expected that, and without coding your own rollback/savepoint that's what you would get.
    You also (1) don't get a Working... message without coding it yourself, and (2) get the "No changes to commit" message; removing this is the subject of many threads on this site.
    If you have a block which is based over a table which you need to update, then all of the DML statements ought to be coded inside PRE/POST/ON INSERT/UDPATE/DELETE statements, or other Forms transactional triggers (pre-database-commit etc..). If you need to change other tables then put the DML for them inside those triggers. Then you don’t have to worry about which records the user changed – if the user didn’t touch them then Forms won’t fire the triggers. And when you call the COMMIT_FORM procedure, Forms will fire the triggers for you and if any of them fail, it will rollback back to where the COMMIT_FORM started.
    An example in 1 thread I saw this morning, was a Delete button, which was to delete the current record in a multi-record block. This button performed the “DELETE FROM <table> WHERE <key=:block.key>” followed by a Commit. Then of course the block needed to be re-queried to reflect the fact that the record had gone. Using the power of Forms to simply call the DELETE_RECORD procedure would have achieved the same result without needing to requery the block. And Forms would do the delete by ROWID, the fastest way of doing it.
    If you don’t have a block based over a table, then you can consider creating a dummy block which uses Transactional Triggers. Code an ON-INSERT on that block which includes the DML you want to execute. Then in the trigger initiating the commit processing you would do something like:
    :DUMMY_BLOCK.ITEM1 := ‘X’;
    COMMIT_FORM;
    IF (NOT FORM_SUCCESS) OR :SYSTEM.FORM_STATUS != ‘QUERY’ THEN
    -- the commit failed
    END IF;
    Then you’ll get a nice Working.. message and full rollback control.
    I think the moral of what I’m trying to get across is to use the power of Forms in the way it handles the transactions. Whilst we moan about it, it is actually quite good at that!
    I hope this posting is taken in a positive light, I am certainly not trying to teach anyone to “suck eggs”.
    PS. I find it ironic that you were prevented from coding DML statements outside of commit time triggers, in Forms 2.3!

    Thank you, Kevin. Very informative.

  • Transactional Triggers

    Hi,
    I'm new in oracle forms. I've been reading different documents/online help etc. But i'm confuse with the Transactional Triggers like On-Insert, On-Update, On-Delete. I mean when we should use On-Insert/On-Update/On-Delete? We can use regular insert/update procedure to achieve the task. So can someone please explain the differnece? Can someone please give me a sample example of how to create a block based on a transactional triggers and another one based on procedure.
    Thanks
    timt
    Message was edited by:
    timt

    Hello,
    Create a block base on a table and create a On-Insert trigger on that block. Put null in the On-Insert trigger. Run the form and enter some data into the item and commit it.
    Do the same thing without the On-Insert trigger.
    You are able to get the difference.
    Cheers
    SUN

  • Key triggers in forms

    How at add key triggers in Forms.For example : When users click function key "F2" then it should save the record.
    Thanks
    Saritha

    hi,
    there are two ways to do it,
    one is to re-map function keys using oracle terminal,
    other is to use triggers that are already associated to the operations that
    are performed by pressing these keys e.g.
    F1 ---> Help
    F9 ---> List of values
    F4 ---> Duplicate record
    you can use these triggers to redefine the function/operation of keys
    by their associated triggers, like if you want 'F4' to save the data,
    you will write 'COMMIT_FORM' or any code you want, on trigger
    KEY-DUPLICATE-RECORD which is fired while 'F4' key is pressed,
    since this trigger is associated with 'Duplicate record' event.
    once you write the code on this trigger at form level, it will perform
    the required operation on activation.
    regards,
    aamir.

  • BDC using call transaction

    Hi ,
    This is vijay...
    can anyone help me plz
    Hi,
    Iam uploading data using call transaction.Tcode is ff67.In this TCode we have the begining balance(ssald) and ending balance(esald).The new record we are uploading will take the begining balance as the previous record ending balance, if we give the begining balance wrong then the record does not saved it will show error(the begining balance does not match with the prior ending balance).
    while uploading the data using MODE A iam able to get the desired output but by using the MODE N iam not able to get the desired output i,e if there is any error in the begining balance also the record is being saved iam not getting the error message.
    Iam attaching the code below..please help me
    report Z_BRS_BDC no standard page heading line-size 255.
            INTERNAL TABLES DECLARATIONS
    DATA : BEGIN OF bdcdata OCCURS 0.
            INCLUDE STRUCTURE bdcdata.
    DATA : END OF bdcdata.
    DATA:  LV_OUT TYPE STRING.
    DATA : iopt LIKE ctu_params.
    DATA : wa_rec_err   TYPE i.
    DATA : wa_rec_wri TYPE i.
    DATA : wa_tot_rec TYPE i.
    DATA : amt(16) type c.
    DATA : BEGIN OF gu_upload OCCURS 0,
           hbkid LIKE febmka-hbkid,
           hktid LIKE febmka-hktid,
           aznum LIKE febmka-aznum,
           azdat LIKE febmka-azdat,
           ssald LIKE amt,
           esald LIKE amt,
           budtm LIKE febmka-budtm,
           mnam1 LIKE febmka-mnam1,
           jname LIKE febmka-jname,
           vgman LIKE febmka-vgman,
           valut LIKE febep-valut,
           kwbtr(13) TYPE c,
           chect_kf LIKE febmkk-chect_kf,
          END OF gu_upload.
    DATA:GU_DOWNLOAD LIKE GU_UPLOAD OCCURS 0 WITH HEADER LINE.
    kishi*********************************
    DATA: BEGIN OF itab OCCURS 0,
         vgman LIKE febmka-vgman,
         valut LIKE febep-valut,
         kwbtr(13) TYPE c,
         chect_kf LIKE febmkk-chect_kf,
         END OF itab.
    kishi)(_()00-8-09
    DATA: BEGIN OF  messtab OCCURS 0.
            INCLUDE STRUCTURE bdcmsgcoll.
    DATA: END OF messtab.
    DATA: BEGIN OF messtab1 OCCURS 0.
            INCLUDE STRUCTURE messtab.
    DATA: END OF messtab1.
    DATA : BEGIN OF int_count OCCURS 0.
            INCLUDE STRUCTURE alsmex_tabline.
    DATA : END OF int_count.
    DATA: c_tcode      LIKE sy-tcode              VALUE 'FF67',
          c_upd        LIKE ctu_params-updmode    VALUE 'S',
          c_def_size   LIKE ctu_params-defsize    VALUE 'X'.
    *VALUES FOR STARTING COLUMNS AND ROWS IN THE EXCEL SHEET
    DATA : c_begcol     TYPE i                     VALUE '1',
          c_begrow     TYPE i                     VALUE '1',
    *DATA IS ENDED AT THE 13TH COLUMN IN THE EXCELSHEET
          c_endcol     TYPE i                     VALUE '13',
    *LAST ROW IN THE EXCEL SHEET
          c_endrow     TYPE i                     VALUE '65536',
          c_path(3)    TYPE c                     VALUE 'C:\'.
    *Field Symbols
    FIELD-SYMBOLS: <fs>.
         SELECTION SCREEN PARAMETERS
    SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
    PARAMETERS : p_file LIKE rlgrap-filename DEFAULT
    'C:\ ',
    *This is the path for downloading file
    P_FNAME2 LIKE RLGRAP-FILENAME ,
    c_mode LIKE ctu_params-dismode  DEFAULT 'N'.
    SELECTION-SCREEN END OF BLOCK b1.
    AT SELECTION-SCREEN.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
    *F4 HELP FOR FILE SELECTION
      PERFORM validate_input_file.
    START-OF-SELECTION.
      CLEAR gu_upload.
      REFRESH gu_upload.
         UPLOAD THE DATA FROM FLAT FILE TO INTERNAL TABLE
      PERFORM file_upload.
      iopt-dismode = c_mode.
      iopt-updmode = c_upd.
      iopt-defsize = c_def_size.
         POPULATE THE DATA THROUGHSCREENS
      PERFORM bdc_upload.
    END-OF-SELECTION.
    *DISPLY THE ERROR RECORDS
    PERFORM DISPLAY-DATA.
          FORM file_upload                                              *
    FORM file_upload.
      CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'
           EXPORTING
                filename                = p_file
                i_begin_col             = c_begcol
                i_begin_row             = c_begrow
                i_end_col               = c_endcol
                i_end_row               = c_endrow
           TABLES
                intern                  = int_count
           EXCEPTIONS
                inconsistent_parameters = 1
                upload_ole              = 2
                OTHERS                  = 3.
      LOOP AT int_count.
        ASSIGN COMPONENT int_count-col OF STRUCTURE gu_upload TO <fs>.
        IF sy-subrc NE 0.
          EXIT.
        ENDIF.
        <fs> = int_count-value.
        AT END OF row.
          APPEND gu_upload.
          CLEAR gu_upload.
        ENDAT.
      ENDLOOP.
    *kishhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
      LOOP AT gu_upload.
        itab-vgman = gu_upload-vgman.
        itab-valut =  gu_upload-valut.
        itab-kwbtr = gu_upload-kwbtr.
        itab-chect_kf = gu_upload-chect_kf.
        APPEND itab.
      ENDLOOP.
    *kishiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
    ENDFORM.                    "file_upload
    *&      Form  BDC_UPLOAD
    FORM bdc_upload.
      LOOP AT gu_upload.
        CLEAR bdcdata.
        REFRESH bdcdata.
    *&      POPULATE THE DATA FOR FIRST SCREEN
    perform bdc_dynpro      using 'SAPMF40K' '0101'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'FEBMKA-JNAME'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'FEBMKA-BUKRS'
                                  'IN14'.
    perform bdc_field       using 'FEBMKA-HBKID'
                                  gu_upload-hbkid.
    perform bdc_field       using 'FEBMKA-HKTID'
                                  gu_upload-hktid.
    perform bdc_field       using 'FEBMKA-AZNUM'
                                  gu_upload-aznum.
    perform bdc_field       using 'FEBMKA-AZDAT'
                                  gu_upload-azdat.
    perform bdc_field       using 'FEBMKA-SSALD'
                                  gu_upload-ssald.
    perform bdc_field       using 'FEBMKA-ESALD'
                                  gu_upload-esald.
    perform bdc_field       using 'FEBMKA-BUDTM'
                                  gu_upload-budtm.
    perform bdc_field       using 'FEBMKA-MNAM1'
                                  gu_upload-mnam1.
    perform bdc_field       using 'FEBMKA-JNAME'
                                  gu_upload-jname.
    *&      POPULATE THE DATA FOR SECOND SCREEN
        DATA : fnam(20) TYPE c,
              idx      TYPE c.
        MOVE 1 TO idx.
        LOOP AT itab.
          PERFORM bdc_dynpro      USING 'SAPMF40K' '8000'.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'FEBMKK-CHECT_KF(03)'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '/00'.
          CONCATENATE 'FEBMKA-VGMAN(' idx ')' INTO fnam.
          PERFORM bdc_field       USING fnam
                                        itab-vgman.
          CONCATENATE 'FEBEP-VALUT(' idx ')' INTO fnam.
          PERFORM bdc_field       USING fnam itab-valut.
          CONCATENATE 'FEBMKA-KWBTR(' idx ')' INTO fnam.
          PERFORM bdc_field       USING fnam itab-kwbtr.
          CONCATENATE 'FEBMKK-CHECT_KF(' idx ')' INTO fnam.
          PERFORM bdc_field USING fnam itab-chect_kf.
          idx = idx + 1.
        ENDLOOP.
    *perform bdc_dynpro      using 'SAPMF40K' '8000'.
    *perform bdc_field       using 'BDC_CURSOR'
                                 'FEBMKK-CHECT_KF(01)'.
    *perform bdc_field       using 'BDC_OKCODE'
                                 '/00'.
    *perform bdc_field       using 'FEBMKA-VGMAN(01)'
                                 'z001'.
    *perform bdc_field       using 'FEBEP-VALUT(01)'
                                 '2007/04/26'.
    *perform bdc_field       using 'FEBMKA-KWBTR(01)'
                                 '          5000-'.
    *perform bdc_field       using 'FEBMKK-CHECT_KF(01)'
                                 '1122'.
    perform bdc_dynpro      using 'SAPMF40K' '8000'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'FEBMKK-CHECT_KF(01)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=SICH'.
    *&      POPULATE THE DATA FOR FOURTH SCREEN
    perform bdc_dynpro      using 'SAPMF40K' '0101'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'FEBMKA-BUKRS'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=BUCH'.
    perform bdc_field       using 'FEBMKA-BUKRS'
                                  'IN14'.
    perform bdc_field       using 'FEBMKA-HBKID'
                                  gu_upload-hbkid.
    perform bdc_field       using 'FEBMKA-HKTID'
                                  gu_upload-hktid.
    perform bdc_field       using 'FEBMKA-AZNUM'
                                  gu_upload-aznum.
    perform bdc_field       using 'FEBMKA-AZDAT'
                                  gu_upload-azdat.
    perform bdc_field       using 'FEBMKA-SSALD'
                                  gu_upload-ssald.
    perform bdc_field       using 'FEBMKA-ESALD'
                                  gu_upload-esald.
    perform bdc_field       using 'FEBMKA-BUDTM'
                                  gu_upload-budtm.
    perform bdc_field       using 'FEBMKA-MNAM1'
                                  gu_upload-mnam1.
    perform bdc_field       using 'FEBMKA-JNAME'
                                  gu_upload-jname.
    *perform bdc_dynpro      using 'SAPMF40K' '0101'.
    *perform bdc_field       using 'BDC_OKCODE'
                                 '/EENDE'.
    *perform bdc_field       using 'BDC_CURSOR'
                                 'FEBMKA-BUKRS'.
    perform bdc_dynpro      using 'SAPMF40K' '0101'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/EABBR'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'FEBMKA-BUKRS'.
    *&      USING THE CALL TRANSACTION
        PERFORM call_transaction.
       CLEAR BDCDATA.                      "<--- Add here
       REFRESH BDCDATA.                 "<--- Add here
      ENDLOOP.
    ENDFORM.                    " BDC_UPLOAD
    *&      Form  VALIDATE_INPUT_FILE
    FORM validate_input_file.
      CALL FUNCTION 'WS_FILENAME_GET'
           EXPORTING
                def_path         = ' c:\ '
                mask             = ',.txt,.*.'
                mode             = 'O'
                title            = 'Upload '
           IMPORTING
                filename         = p_file
           EXCEPTIONS
                inv_winsys       = 1
                no_batch         = 2
                selection_cancel = 3
                selection_error  = 4
                OTHERS           = 5.
    IF sy-subrc <> 0.
    IF sy-subrc <> 0 AND sy-subrc <> 3.
       MESSAGE e100(zm) WITH text-007.
    ENDIF.
    ENDFORM.                    " VALIDATE_INPUT_FILE
           Start new screen                                              *
    FORM bdc_dynpro USING program dynpro.
      CLEAR bdcdata.
      bdcdata-program  = program.
      bdcdata-dynpro   = dynpro.
      bdcdata-dynbegin = 'X'.
      APPEND bdcdata.
    ENDFORM.                    "bdc_dynpro
           Insert field                                                  *
    FORM bdc_field USING fnam fval.
      CLEAR bdcdata.
      bdcdata-fnam = fnam.
      bdcdata-fval = fval.
      APPEND bdcdata.
    ENDFORM.                    "bdc_field
    *&      Form  CALL_TRANSACTION
    FORM call_transaction.
      DATA: l_index LIKE sy-tabix.
      CALL TRANSACTION  c_tcode USING bdcdata
                                MODE c_mode
                                MESSAGES INTO messtab.
    *POPULATE THE ERROR RECORDS INTO INTERNAL TABLE
      IF SY-SUBRC NE 0.
        GU_DOWNLOAD-HBKID = GU_UPLOAD-HBKID.
       GU_DOWNLOAD-HBKID = GU_UPLOAD-HBKID.
        GU_DOWNLOAD-HKTID = GU_UPLOAD-HKTID.
        GU_DOWNLOAD-AZNUM = GU_UPLOAD-AZNUM.
        GU_DOWNLOAD-AZDAT = GU_UPLOAD-AZDAT.
        GU_DOWNLOAD-ESALD = GU_UPLOAD-ESALD.
        GU_DOWNLOAD-SSALD = GU_UPLOAD-SSALD.
        GU_DOWNLOAD-BUDTM = GU_UPLOAD-BUDTM.
        GU_DOWNLOAD-MNAM1 = GU_UPLOAD-MNAM1.
        GU_DOWNLOAD-JNAME = GU_UPLOAD-JNAME.
        GU_DOWNLOAD-VGMAN = GU_UPLOAD-VGMAN.
        GU_DOWNLOAD-VALUT = GU_UPLOAD-VALUT.
        GU_DOWNLOAD-KWBTR = GU_UPLOAD-KWBTR.
        GU_DOWNLOAD-CHECT_KF = GU_UPLOAD-CHECT_KF.
        APPEND GU_DOWNLOAD.
    *DISPLAY THE PROGRESS OF PROCESS
    CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
    EXPORTING
       PERCENTAGE       = 0
       TEXT             = 'Downloading is in process'.
    *DOWNLOADING THE ERROR RECORD
        LV_OUT = P_FNAME2.
        CALL FUNCTION 'GUI_DOWNLOAD'
          EXPORTING
            FILENAME               =  LV_OUT
            WRITE_FIELD_SEPARATOR  =      'X'
          TABLES
            DATA_TAB                =  GU_DOWNLOAD.
    ENDIF.
      IF NOT messtab[] IS INITIAL.
        PERFORM format_message.
      ENDIF.
    ENDFORM.                    " CALL_TRANSACTION
    *&      Form  DISPLAY-DATA
    FORM display-data.
      SKIP.
      WRITE: 'SY-SUBRC' , sy-subrc.
    ENDFORM.                    " DISPLAY-DATA
          FORM FORMAT_MESSAGE                                           *
    FORM format_message.
      DATA: l_msg(100),
       l_index LIKE sy-tabix.
      LOOP AT messtab.
        READ TABLE gu_upload INDEX l_index.
        CALL FUNCTION 'FORMAT_MESSAGE'
             EXPORTING
                  id        = messtab-msgid
                  lang      = sy-langu
                  no        = messtab-msgnr
                  v1        = messtab-msgv1
                  v2        = messtab-msgv2
                  v3        = messtab-msgv3
                  v4        = messtab-msgv4
             IMPORTING
                  msg       = l_msg
             EXCEPTIONS
                  not_found = 1
                  OTHERS    = 2.
        IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
        ENDIF.
       WRITE:/ l_msg.
      ENDLOOP.
      WRITE:/ l_msg.
    ENDFORM.
    Message was edited by:
            vijayd duvvada

    Hi,
      First , keep the mode "E" and check the debugger , you can exactly see where the error is and let me know, what error and where it is stoping.
    By your coding, i suppose to think that, its proble in the amount (currency). When ever you are try to pass the value, and value is not there in upload file or data is mismatch, the call transaction will fail in mode 'A' and succesful in mode 'N'.
    In that situation use this before the currecny field.
    IF NOT FEBMKA-SSALD IS INTIAL.
       perform bdc_field using 'FEBMKA-ESALD'
                                      gu_upload-esald.
    ENDIF.
    tHANKS
    Manju

  • How to use Call Transaction in AVL ........ for va02

    Hi Experts,
    I am using CALL TRANSACTION in ALV for VA02, but I want to go on item number. The following form i have used and it is working but I want to go on perticular item number in va02. pl. guide me.
    FORM user_command USING r_ucomm LIKE sy-ucomm
                      rs_selfield TYPE slis_selfield.
      CASE r_ucomm.
        WHEN '&IC1'.
        IF rs_selfield-fieldname = 'VBELN'.
          READ TABLE it_out INTO wa_itab INDEX rs_selfield-tabindex.
          SET PARAMETER ID : 'AUN' FIELD wa_itab-vbeln .
                           'APO' FIELD wa_itab-posnr.
          CALL TRANSACTION 'VA02' AND SKIP FIRST SCREEN.
        ENDIF.
      ENDCASE.
    ENDFORM.
    *=====================================
    Yusuf

    Hi,
    use BDC for that....
    check out the BDC part of coding for it.
    REFRESH  itab_bdcdata.
      CLEAR    itab_bdcdata.
    *initial screen
      PERFORM bdc_dynpro      USING 'SAPMV45A'
                                    '0102'.
      PERFORM bdc_field       USING 'BDC_CURSOR'
                                    'VBAK-VBELN'.
      PERFORM bdc_field       USING 'BDC_OKCODE'
                                    '/00'.
      PERFORM bdc_field       USING 'VBAK-VBELN'
                          <b>          g_t_atpma4-vbeln.</b>
    *item overview screen
      PERFORM bdc_dynpro      USING 'SAPMV45A'
                                    '4001'.
      PERFORM bdc_field       USING 'BDC_OKCODE'
                                    '=POPO'.
      PERFORM bdc_field       USING 'BDC_CURSOR'
                                    'RV45A-MABNR(04)'.
    *popup screen (move item to top)
      PERFORM bdc_dynpro      USING 'SAPMV45A'
                                    '0251'.
      PERFORM bdc_field       USING 'BDC_CURSOR'
                                    'RV45A-POSNR'.
      PERFORM bdc_field       USING 'BDC_OKCODE'
                                    '=POSI'.
      PERFORM bdc_field       USING 'RV45A-POSNR'
                                    <b>g_t_atpma4-posnr.</b>
    *item overview screen
      PERFORM bdc_dynpro      USING 'SAPMV45A'
                                    '4001'.
      PERFORM bdc_field       USING 'BDC_OKCODE'
                                    '/00'.
      PERFORM bdc_field       USING 'BDC_CURSOR'
                                    'VBAP-POSNR(01)'.
      PERFORM bdc_field       USING 'RV45A-VBAP_SELKZ(01)'
                                    'X'.
    *Call transaction VA02
      CALL TRANSACTION 'VA02'  USING itab_bdcdata
                               MODE 'E'
                               UPDATE 'A'
                               MESSAGES INTO itab_bdcmsg.
    Patil

  • Print 3rd Party  Check using F110 Transaction

    Hi Folks
    I am working on US Payroll.
    I am executing the following programs.
    1)RPCALCU0 to calculate payroll
    2)Posting to Accounting
    3)Third Party Posting
    Everything is working fine.
    Now i want to transaction code F110(Print 3rd Party check) to do check printing for Garnishment.
    Here only i am not getting the correct out put for one employee for check printing.
    The correct format is like this.
    We have check in the upper column
    and in below column we have
    Garnishment Information:
    Employee Number:
    Employee Name:
    Social Security:
    Case Number:
    Error message we are getting is:                                                                               
    B!015                    The OPEN_DI of BTE 00002060 could not determine any function modules                                           
    F0286                    Payroll: Pmnt advice section missing for check C001 CMB09 DIS01 001331                                         
    Appreciate if any one can help me to solve the issue and to print the 3rd party check for garnishment.                                                                               
    Regards,
    Rajendra.

    When the SAPscript form is called, it uses the formname which is setup in configuration.  The following is the path in configuration (t-code SPRO) where the formname is entered:
    SAP Customizing Implementation Guide>Financial Accounting>Accounts Receivable and Accounts Payable>Business Transactions>Outgoing Payments>Payment Media>Make Settings for Classic Payment Medium Programs-->Assign Payment Forms for Payment Method in Company Code
    This path (in SPRO) will allow you to setup payment methods and the corresponding form names for a particular company code.  Once you select a specific company code and click on the "Allocate forms to payment method in company code" folder in the left-hand window area, it looks like you have the option to specify a SAPscript formname or a "PDF-based Payment Medium Form"
    I am unsure of the actual logic used to call the Adobe form.

  • How to use call transaction 'XD03' in abap.

    Hi Experts,
    I am  use call transaction xd03 in programme but when i click on any customer number the transaction xd03 is called and it show only one customer details. i.e 1 st  in row . other customer details not show. so please write code to solved my problems

    Hi
    It's not clear where you set the USER_COMMAND routine and where you set the OK_CODE for doubleclick.
    I suppose you set the routine in the importing parameter I_CALLBACK_USER_COMMAND (?) becasue you aren't use the parameter for the event, but for OK_CODE?
    Remember the OK_CODE should be upper case:
    FORM USER_COMMAND USING R_UCOMM LIKE SY-UCOMM
    RS_SELFIELD TYPE SLIS_SELFIELD.
    CASE R_UCOMM.
    "WHEN 'kunnr'.   <--------------- UPPER CASE
      WHEN 'KUNNR'.
    See my sample:
    TYPE-POOLS SLIS.
    DATA: BEGIN OF GT_FINAL OCCURS 0,
            KUNNR LIKE KNA1-KUNNR,
            NAME1 LIKE KNA1-NAME1,
          END OF GT_FINAL.
    * ALV
    DATA: GT_FIELDCAT   TYPE SLIS_T_FIELDCAT_ALV,
          GT_LAYOUT     TYPE SLIS_LAYOUT_ALV,
          GT_REPID    LIKE SY-REPID.
    START-OF-SELECTION.
      SELECT KUNNR NAME1 INTO TABLE GT_FINAL
         UP TO 20 ROWS
           FROM KNA1.
      GT_REPID = SY-REPID.
      CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
        EXPORTING
          I_PROGRAM_NAME     = GT_REPID
          I_INTERNAL_TABNAME = 'GT_FINAL'
          I_INCLNAME         = GT_REPID
        CHANGING
          CT_FIELDCAT        = GT_FIELDCAT[].
      GT_LAYOUT-F2CODE = 'KUNNR'.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
        EXPORTING
          I_CALLBACK_PROGRAM      = GT_REPID
          I_CALLBACK_USER_COMMAND = 'USER_COMMAND'
          IS_LAYOUT               = GT_LAYOUT
          IT_FIELDCAT             = GT_FIELDCAT
        TABLES
          T_OUTTAB                = GT_FINAL.
    FORM USER_COMMAND USING R_UCOMM LIKE SY-UCOMM
                            RS_SELFIELD TYPE SLIS_SELFIELD.
      DATA: GWA_FINAL LIKE GT_FINAL.
      CASE R_UCOMM.
        WHEN 'KUNNR'.
          READ TABLE GT_FINAL INTO GWA_FINAL INDEX RS_SELFIELD-TABINDEX.
          IF SY-SUBRC = 0.
            SET PARAMETER ID 'KUN' FIELD GWA_FINAL-KUNNR.
            CALL TRANSACTION 'XD03' AND SKIP FIRST SCREEN.
          ENDIF.
      ENDCASE.
    ENDFORM.TYPE-POOLS SLIS.
    DATA: BEGIN OF GT_FINAL OCCURS 0,
            KUNNR LIKE KNA1-KUNNR,
            NAME1 LIKE KNA1-NAME1,
          END OF GT_FINAL.
    * ALV
    DATA: GT_FIELDCAT   TYPE SLIS_T_FIELDCAT_ALV,
          GT_LAYOUT     TYPE SLIS_LAYOUT_ALV,
          GT_REPID    LIKE SY-REPID.
    DATA: FL_INPUT_OFF.
    START-OF-SELECTION.
      SELECT KUNNR NAME1 INTO TABLE GT_FINAL
         UP TO 20 ROWS
           FROM KNA1.
      GT_REPID = SY-REPID.
      CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
        EXPORTING
          I_PROGRAM_NAME     = GT_REPID
          I_INTERNAL_TABNAME = 'GT_FINAL'
          I_INCLNAME         = GT_REPID
        CHANGING
          CT_FIELDCAT        = GT_FIELDCAT[].
      GT_LAYOUT-F2CODE = 'KUNNR'.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
        EXPORTING
          I_CALLBACK_PROGRAM      = GT_REPID
          I_CALLBACK_USER_COMMAND = 'USER_COMMAND'
          IS_LAYOUT               = GT_LAYOUT
          IT_FIELDCAT             = GT_FIELDCAT
        TABLES
          T_OUTTAB                = GT_FINAL.
    FORM USER_COMMAND USING R_UCOMM LIKE SY-UCOMM
                            RS_SELFIELD TYPE SLIS_SELFIELD.
      DATA: GWA_FINAL LIKE GT_FINAL.
      CASE R_UCOMM.
        WHEN 'KUNNR'.
          READ TABLE GT_FINAL INTO GWA_FINAL INDEX RS_SELFIELD-TABINDEX.
          IF SY-SUBRC = 0.
            SET PARAMETER ID 'KUN' FIELD GWA_FINAL-KUNNR.
            CALL TRANSACTION 'XD03' AND SKIP FIRST SCREEN.
          ENDIF.
      ENDCASE.
    ENDFORM.  TYPE-POOLS SLIS.
    DATA: BEGIN OF GT_FINAL OCCURS 0,
            KUNNR LIKE KNA1-KUNNR,
            NAME1 LIKE KNA1-NAME1,
          END OF GT_FINAL.
    * ALV
    DATA: GT_FIELDCAT   TYPE SLIS_T_FIELDCAT_ALV,
          GT_LAYOUT     TYPE SLIS_LAYOUT_ALV,
          GT_REPID    LIKE SY-REPID.
    DATA: FL_INPUT_OFF.
    START-OF-SELECTION.
      SELECT KUNNR NAME1 INTO TABLE GT_FINAL
         UP TO 20 ROWS
           FROM KNA1.
      GT_REPID = SY-REPID.
      CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
        EXPORTING
          I_PROGRAM_NAME     = GT_REPID
          I_INTERNAL_TABNAME = 'GT_FINAL'
          I_INCLNAME         = GT_REPID
        CHANGING
          CT_FIELDCAT        = GT_FIELDCAT[].
      GT_LAYOUT-F2CODE = 'KUNNR'.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
        EXPORTING
          I_CALLBACK_PROGRAM      = GT_REPID
          I_CALLBACK_USER_COMMAND = 'USER_COMMAND'
          IS_LAYOUT               = GT_LAYOUT
          IT_FIELDCAT             = GT_FIELDCAT
        TABLES
          T_OUTTAB                = GT_FINAL.
    FORM USER_COMMAND USING R_UCOMM LIKE SY-UCOMM
                            RS_SELFIELD TYPE SLIS_SELFIELD.
      DATA: GWA_FINAL LIKE GT_FINAL.
      CASE R_UCOMM.
        WHEN 'KUNNR'.
          READ TABLE GT_FINAL INTO GWA_FINAL INDEX RS_SELFIELD-TABINDEX.
          IF SY-SUBRC = 0.
            SET PARAMETER ID 'KUN' FIELD GWA_FINAL-KUNNR.
            CALL TRANSACTION 'XD03' AND SKIP FIRST SCREEN.
          ENDIF.
      ENDCASE.
    ENDFORM.
    Max

  • Need user exit when deleting an invoice using MIR6 transaction

    Hi all,
    I m trying to delete an Invoice using MIR6 transaction. And I need a user exit to be triggered  on deletion of an Invoice.
    Can anybody help me and let me know if any user exit is available there?
    Points will be rewarded.
    thanks
    Ashish

    Hi
    Business Add-Ins
    Business Add-Ins 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 (SMOD/CMOD [Page 40]), 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-system infrastructure (SAP and customers), but instead allow for multiple levels of software development (by SAP, partners, and customers, and 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.
    SAP guarantees the upward compatibility of all Business Add-In interfaces. Release upgrades do not affect enhancement calls from within the standard software nor do they affect the validity of call interfaces. You do not have to register Business Add-Ins in SSCR.
    The Business Add-In enhancement technique differentiates between enhancements that can only be implemented once and enhancements that can be used actively by any number of customers at the same time.
    In addition, Business Add-Ins can be defined according to filter values. This allows you to control add-in implementation and make it dependent on specific criteria (on a specific Country value, for example). All ABAP sources, screens, GUIs, and table interfaces created using this enhancement technique are defined in a manner that allows customers to include their own enhancements in the standard.
    A single Business Add-In contains all of the interfaces necessary to implement a specific task. In Release 4.6A, program and menu enhancements can be made with Business Add-Ins. The actual program code is enhanced using ABAP Objects. In order to better understand the programming techniques behind the Business Add-In enhancement concept, SAP recommends reading the section on ABAP Objects
    DEFINING THE BADI
    1) execute Tcode SE18.
    2) Specify a definition Name : ZBADI_SPFLI
    3) Press create
    4) Choose the attribute tab. Specify short desc for badi.. and specify the type :
    multiple use.
    5) Choose the interface tab
    6) Specify interface name: ZIF_EX_BADI_SPFLI and save.
    7) Dbl clk on interface name to start class builder . specify a method name (name,
    level, desc).
    Method level desc
    Linese;ection instance methos some desc
    8) place the cursor on the method name desc its parameters to define the interface.
    Parameter type refe field desc
    I_carrid import spfli-carrid some
    I_connid import spefi-connid some
    9) save , check and activate…adapter class proposed by system is
    ZCL_IM_IM_LINESEL is genereated.
    IMPLEMENTATION OF BADI DEFINITION
    1) EXECUTE tcode se18.choose menuitem create from the implementation menubar.
    2) Specify aname for implementation ZIM_LINESEL
    3) Specify short desc.
    4) Choose interface tab. System proposes a name fo the implementation class.
    ZCL_IM_IMLINESEL which is already generarted.
    5) Specify short desc for method
    6) Dbl clk on method to insert code..(check the code in “AAA”).
    7) Save , check and activate the code.
    Some useful URL
    http://www.esnips.com/doc/e06e4171-29df-462f-b857-54fac19a9d8e/ppt-on-badis.ppt
    http://www.esnips.com/doc/10016c34-55a7-4b13-8f5f-bf720422d265/BADIs.pdf
    http://www.esnips.com/doc/43a58f51-5d92-4213-913a-de05e9faac0d/Business-Addin.doc
    http://www.esnips.com/doc/1e10392e-64d8-4181-b2a5-5f04d8f87839/badi.doc
    www.sapgenie.com/publications/saptips/022006%20-%20Zaidi%20BADI.pdf
    http://www.sapdevelopment.co.uk/enhance/enhance_badi.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/04/f3683c05ea4464e10000000a114084/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/e6/d54d3c596f0b26e10000000a11402f/content.htm
    http://help.sap.com/saphelp_nw2004s/helpdata/en/c2/eab541c5b63031e10000000a155106/frameset.htm
    Now write a sample program to use this badi method..
    Look for “BBB” sample program.
    “AAA”
    data : wa_flights type sflight,
    it_flights type table of sflight.
    format color col_heading.
    write:/ 'Flight info of:', i_carrid, i_connid.
    format color col_normal.
    select * from sflight
    into corresponding fields of table it_flights
    where carrid = i_carrid
    and connid = i_connid.
    loop at it_flights into wa_flights.
    write:/ wa_flights-fldate,
    wa_flights-planetype,
    wa_flights-price currency wa_flights-currency,
    wa_flights-seatsmax,
    wa_flights-seatsocc.
    endloop.
    “BBB”
    *& Report ZBADI_TEST *
    REPORT ZBADI_TEST .
    tables: spfli.
    data: wa_spfli type spfli,
    it_spfli type table of spfli with key carrid connid.
    *Initialise the object of the interface.
    data: exit_ref type ref to ZCL_IM_IM_LINESEL,
    exit_ref1 type ref to ZIF_EX_BADISPFLI1.
    selection-screen begin of block b1.
    select-options: s_carr for spfli-carrid.
    selection-screen end of block b1.
    start-of-selection.
    select * from spfli into corresponding fields of table it_spfli
    where carrid in s_carr.
    end-of-selection.
    loop at it_spfli into wa_spfli.
    write:/ wa_spfli-carrid,
    wa_spfli-connid,
    wa_spfli-cityfrom,
    wa_spfli-deptime,
    wa_spfli-arrtime.
    hide: wa_spfli-carrid, wa_spfli-connid.
    endloop.
    at line-selection.
    check not wa_spfli-carrid is initial.
    create object exit_ref.
    exit_ref1 = exit_ref.
    call method exit_ref1->lineselection
    EXPORTING
    i_carrid = wa_spfli-carrid
    i_connid = wa_spfli-connid.
    clear wa_spfli.
    check the following user exits for MIR6
                                                                                    LMR1M001            User exits in Logistics Invoice Verification                     
    LMR1M002            Account grouping for GR/IR account maintenance                   
    LMR1M003            Number assignment in Logistics Invoice Verification              
    LMR1M004            Logistics Invoice Verification: item text for follow-on docs     
    LMR1M005            Logistics Inv. Verification: Release Parked Doc. for Posting     
    LMR1M006            Logistics Invoice Verification: Process XML Invoice              
    MRMH0001            Logistics Invoice Verification: ERS procedure                    
    MRMH0002            Logistics Invoice Verification: EDI inbound                      
    MRMH0003            Logistics Invoice Verification: Revaluation/RAP                  
    MRMN0001            Message output and creation: Logistics Invoice Verification      
    Regards
    Anji
    Message was edited by:
            Anji Reddy Vangala

  • Can u use autonomus transaction in trigger

    hi friends,
    Can you use autonomous in a trigger?
    if yes ...then can you pass commit ...statement inside the autonomous transaction ?
    if yes then what are the limitations of this scenario.
    regards
    raj

    yes, you can use autonomous transaction in triggers.
    I don't understand your 2nd question, but maybe this article from Tom Kyte can clarify things
    http://asktom.oracle.com/~tkyte/autonomous/index.html
    If not, just come back and explain a little bit more what you are trying to achieve

  • Lost Transaction across web forms

    I start a transaction using JTA on one web form. When I move to another form and check the transaction status, it is no longer active. Why is that? Please help.
    Thanks.

    If one EJB calls the other directly (i.e. not through SOAP), then yes,
    2PC applies. But not if you are going through SOAP. The transaction
    context is not propogated with the call.
    karthikeyan wrote:
    If I implement two web services as EJBs on weblogic servers, is it possible to
    call one from the other within its own transaction context? Will the 2PC be valid
    still?

  • Can we make use of Transaction code FKMT  for vendor line items

    Hi
    Please advise me whether we can make use of Transaction code FKMT (Account assignment model) for vendor line items as follows:
    For Example:
    Expenditure Account      Dr.       Rs.1000
             To Vendor A                                      Rs.100
             To Vendor B                                      Rs.100
             To Vendor C                                      Rs.100
              To Vendor D                                      Rs.700
    Also please advise me what to give parameters
    Thanks and Best Regards
    Shekhar
    Edited by: Shekhar Yecham on Sep 19, 2008 7:05 AM
    Edited by: Shekhar Yecham on Sep 19, 2008 7:10 AM

    Dear Kulakarni,
    I found few of my fields in 0FI_AP_4.I did n't find few fields can i enhance the Datasourse.
    What is the respective Cube for that  Datasourse.
    I check  0AP_30,but in Business Content that cube is not available.
    Could you please give me guidance.
    Thanks in Advance,
    Srinivasan.

  • How to execute a report using a transaction code?

    Hi team,
    I am new in ABAP and I want to do a very simple report and then call this report using a transaction code.
    Steps:
    1) create the report (SE38)
       the report is: Z_DEMO
    2) generate a transaction code for this report (SE93)
       note: the transaction code is ZDEMO
    3) call the transaction generated on step 2
    When I execute the report using SE38, everythig is ok and the records are inserted in my table zdemo2.
    But when I call my transaction ZDEMO there is no insertion. Why?
    The report ask for parameters and then fowards me to SAP's main menu.
    Thanks,
    Walter.
    The report is:
    REPORT  Z_DEMO.
    tables: zdemo2.
    parameters:
            nombre like zdemo2-nombre,
            edad like zdemo2-edad.
    data:
          begin of tabla occurs 0,
            nombre like zdemo2-nombre,
            edad like zdemo2-edad,
          end of tabla.
    zdemo2-nombre = nombre.
    zdemo2-edad = edad.
    insert zdemo2.

    Hi,
    While creating the transaction for your program
    1>Make sure u give the program name and screen number
    2>Important thing is a option "GUI SUPPORT"
    Check all the checkboxes or atleast SAPGUI for Windows to ensure that the Code runs in SAP GUI.
    Thank you.

Maybe you are looking for

  • How to connect a Windows computer to Base Station through Ethernet

    I use Road Runner to connect to the internet. My setup is like this. Roadrunner comes in to the cable modem. My cable runs from the modem to Airport Base Station. My MacBook Pro sees the base station fine and I'm accessing the internet wireless throu

  • Creating a Purchase Order using ORDERS05 Idoc

    Hi Experts, I need to create a purchase order using ORDERS05 Idoc, with the data I am using a sales order is gettig created but I need to create a PO insted of SO. Please let me know what is difference between a PO and SO while using ORDERS05. Also p

  • Free Text e-mail in Portal UWL

    HI All, I have a step in my workflow that allows a user to enter a free text message which can be sent to one or more other users. A decision task comes into the users inbox. If they click reject the next step of the workflow is the task which allows

  • When will Firefox increase their HTML5 support?

    Like, since Firefox 11 the HTML5 support hasn't gone up a bit. Like it supports 345 points. As when even Opera and Safari bulldozed Firefox with a 376 and 385 pointer. Then Chrome FLATTENED Firefox, with a 437 points. And even Internet Explorer is ch

  • Nik Software plug-ins don't work in Aperture 3.3

    I just updated yesterday to Aperture 3.3, and today, upon opening a photo to edit with my Nik software plug-ins, namely Dfine 2.0, Color Efex 3, and Output Sharpener, none of them worked, and which had worked just fine in aperture 3.2.4. (and which w