Delete dataset fname

Hi friends,
I am creating document in CV01N by using  BAPI_DOCUMENT_CREATE2 to create document and CVAPI_DOC_CHECKIN to checkin file. My ABAP program get's ececuted in background. My program takes multiple records (for example 10 records) to process and create & checkin document in SAP content server from SAP application server and after each document get's checkin , i delete the file from sap application server using DELETE DATASET p_fname.
Exapmle: The problem is if i am looping 10 records to create & checkin document & then deleting it from application server . The 1st record while successful checkin takes 45 seconds and while deleting  using DELETE DATASET p_fname it returns sy-subrc = 4 and does not delete the file BUT after that all other records 2nd , 3rd.......10th all gets successful checkin in 2 seconds each and it gets deleted  using DELETE DATASET  p_fname as it returns sy-subrc = 0.
Plz help why during backgrond processing of program and pickin the file from application server for checkin , the 1st record does not get deleted after checkin while rest all records of the loop get deleted from application server after checkin. The same statement  DELETE DATASET  p_fname returns sy-subrc = 4 1st time and then sy-subrc = 0 other times in the loop.
Thanks in advance.

Hey Joy,
I am not using open dataset, then why to do close dataset.  Even i capture the name of the file which does not get deleted and deleats it at the end of the program after rest of the file's in my loop get's deleated then also it does not deleats it .
I feel that the backgrond program function CVAPI_DOC_CHECKIN recognise the 1st document in the loops it checkin and never lets it delete it from application server as it holds it somewhere while it allows other records in the loop after creating and checkin the document in CV01N to deleats it from the application server.

Similar Messages

  • Error in Delete Dataset  dn

    Hai All
          I am trying to delete the file from the application  server using
    DELETE DATASET file name.( File name specifies the full path.). Once the control passes through the statement i am getting the sy-subrc value as 4.
    Can any one please reply and solve this problm. .
    I have used the Fm EPS_DELETE_FILE ,Still i am facing the same pblm..
    Points will be rewarded
    thankyou.

    Hi Ashnab,
    first try to OPEN the dataset - this makes sure you do not have a path names problem.
    The you may check with your BASIS people if you have enough rights to delete the server file.
    If you omit the quotes enclosing the filename, it must be a fieldname and this field must carry the full path file name.
    Regards,
    Clemens

  • Use of wildcharacter in DELETE DATASET dsn

    Hi All,
    I have a situation where I have to delete a file from application server at runtime while executing a report. But the problem is I don't know exact filename. But I know first few characters of file which will be always same. So my question is -
    Is it possible to use wild characters in 'DELETE DATASET dsn' or not?
    I tried DELETE DATASET 'delv*.txt'   -  but its doesn't work. Is there any other method to do this?
    thanks,
    Sanjay

    Hi,
    This is an abap question not a security question : wrong forum.
    Anyway the solution is to read the content of the directory with a wildcard 'delv*.txt' to find out the real filename and then use the filename to delete the file.
    Regards,
    Olivier

  • Delete Dataset File not working

    Hi All,
      I am trying to delete file from application server (AL11) directory after processing using DELETE DATASET FILE is not working , after processing also file still exists.
    My code is like this,
    *&      Form  backup_file
          The file has been processed.  Go ahead and copy it to the
          backup directory and delete it from the processing directory.
    FORM backup_file .
      DATA: lv_oldfile TYPE string,
            lv_backup TYPE string,
            l_rc TYPE i.
      IF p_appl = 'X'.  "Unix file
        lv_oldfile = wa_files-filename.
      Replace the directory name with the backup directory.
        REPLACE p_dir IN wa_files-filename WITH p_back.
      Tack date/time onto the end of the file name to avoid duplicate
      files
        CONCATENATE wa_files-filename
                    sy-datum
                    sy-uzeit
                  INTO wa_files-filename.
        OPEN DATASET wa_files-filename FOR OUTPUT
                                       IN TEXT MODE
                                       ENCODING DEFAULT.
        IF sy-subrc NE 0.
          f_backup_error = 'X'.
          EXIT.
        ELSE.
        Write the file contents to the new backup file.
          LOOP AT itab_input INTO wa_input.
            TRANSFER wa_input TO wa_files-filename.
          ENDLOOP.
        ENDIF.
      Close the backup file.
        CLOSE DATASET wa_files-filename.
      Delete the original file from the processing directory.
    if sy-subrc = 0.
        DELETE DATASET lv_oldfile.
    endif.
    endform.
    Thanks Everyone!

    HI,
    You have to check the value of Sy-subrc after the delete statement,
    and the value present in the variable lv_oldfile that if there is correct
    value in the variable populated or not.
    Moreover after assigning the value to variable lv_oldfile in the step 
    lv_oldfile = wa_files-filename.
    then you should use this variable lv_oldfile only for open dataset and close dataset also.
    Hope ir helps
    Regards
    Mansi

  • Delete data from application server

    Hi All.
    I have created file in application by using OPEN DATA SET, I need to delete from application server after some validation ,  how to delete?
    Please guide me.
    Thanks in Advance.

    Hi,
    DATA FNAME(60) VALUE 'file'.
    OPEN DATASET FNAME FOR OUTPUT.
    OPEN DATASET FNAME FOR INPUT.
    IF SY-SUBRC = 0.
      WRITE / 'File found'.
    ELSE.
      WRITE / 'File not found'.
    ENDIF.
    DELETE DATASET FNAME.
    OPEN DATASET FNAME FOR INPUT.
    IF SY-SUBRC = 0.
      WRITE / 'File found'.
    ELSE.
      WRITE / 'File not found'.
    ENDIF.
    The output appears as follows:
    File found
    File not found
    Use cane Also Use Function Modue: EPS_DELETE_FILE
    Regards,
    Gurpreet

  • Need to delete the file

    Hi Experts,
    I have one requirement, I am getting CODEPAGE error. To over come this i have a solution.
    but in that i am writing into the file and replacing the special characters with the space.
    But after writing into the file i want to delete the file, so that no conflict should be raised for two parallel user are accessing the same program simontenously.
    Kindly suggest how to delete the file after writing. and the time stamp of the file deleting in ddmmyyhhmmss format.
    Thanks in advance.
    Regards,
    Chirag

    Hi Chirag,
    A sample code snippet for you:-
    DATA FNAME(60) VALUE 'myfile'.
    OPEN DATASET FNAME FOR OUTPUT.
    OPEN DATASET FNAME FOR INPUT.
    IF SY-SUBRC = 0.
      WRITE / 'File found'.
    ELSE.
      WRITE / 'File not found'.
    ENDIF.
    DELETE DATASET FNAME.
    OPEN DATASET FNAME FOR INPUT.
    IF SY-SUBRC = 0.
      WRITE / 'File found'.
    ELSE.
      WRITE / 'File not found'.
    ENDIF.
    The output appears as follows:
    File found
    File not found
    Regards
    Abhii

  • File Open failed Error in Process Chain

    Hi,
    Our process chains are failing at the last step of event trigger.The file is not getting created in the directory as a result of which the BO reports are not getting triggered.Kindly help.
    Regards,
    Shalaka

    Pl find the below code:
    DATA mesg(80) VALUE 'BW load complete. Ready for BOBJ Refresh. File Created on : '.
    DATA fname(60).
    DATA pc_flag TYPE rspc_state.
    * Get the folder and file name from parameter
    PARAMETERS p_fname TYPE string LOWER CASE.
    AT SELECTION-SCREEN.
    START-OF-SELECTION.
       fname = p_fname.
    *Add the system date into the file.
       CONCATENATE mesg sy-datum INTO mesg.
       CALL FUNCTION 'AUTHORITY_CHECK_DATASET'
       EXPORTING
    * PROGRAM =
      activity = 'DELETE'
      filename = fname
      EXCEPTIONS no_authority = 1
             activity_unknown = 2
             OTHERS   = 3 .
       IF sy-subrc = 0.
    *Delete the file if it is already existing
         DELETE DATASET fname.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
       ELSE.
         MESSAGE i051(rsar) WITH 'No Authorizations to delete the file'.
       ENDIF.
       WAIT UP TO 65 SECONDS.
    *Set the flag for the process chain to read if file deletion fails.
       IF sy-subrc <> 0." The ABAP program failed
         pc_flag = zcl_abap_bobj_event_trg=>failed.
       ELSE. " The ABAP program was successful
         pc_flag = zcl_abap_bobj_event_trg=>success.
       ENDIF.
       CALL FUNCTION 'AUTHORITY_CHECK_DATASET'
         EXPORTING
           activity         = 'WRITE'
           filename         = fname
         EXCEPTIONS
           no_authority     = 1
           activity_unknown = 2.
       IF sy-subrc <> 0.
         MESSAGE i051(rsar) WITH 'No Authorizations to Write to file'.
       ELSE.
    *Create the file based on the input from variant including folder and file name.
         OPEN DATASET fname FOR OUTPUT IN TEXT MODE ENCODING DEFAULT.
    *Set the flag for the process chain to read if file creation fails.
         IF sy-subrc <> 0.
           MESSAGE i051(rsar) WITH 'File open failed.'.
           pc_flag = zcl_abap_bobj_event_trg=>failed.
         ELSE. " The ABAP program was successful
           TRANSFER mesg TO fname.
           pc_flag = zcl_abap_bobj_event_trg=>success.
         ENDIF.
         CLOSE DATASET fname.
       ENDIF.
       EXPORT e_state FROM pc_flag TO DATABASE indx(bo) ID
       zcl_abap_bobj_event_trg=>status_idx_id.

  • LOCATING A DELETED SSRS SHARED DATASET IN TFS

    I had a report when ever I ran it. It refuse to run indicating I had an issue with 1 of my shared dataset. In the designer mode it showed the lock sign for check in for that particular dataset while others were checked out. I did a compare with a previous
    version and try to roll back but it was still showing he same error. So I deleted the data set in an attempt to re-create it. Is there a way for me to recover the deleted dataset. I am working in the development environment though.
    Any quick response will be appreciated.

    Hi richmy,
    In Report Designer, when we right click a dataset which is a shared dataset to open the properties window in a report, it would said that “This shared dataset cannot be found” if the shared dataset is missing in the project. This can be caused by the shared
    dataset is removed or its name is changed in the project.
    In Report Builder, when we right click a dataset which is a shared dataset to open the properties window in a report, it would said that “The shared dataset cannot be loaded from the server” if the shared doesn’t use that URL. This can be caused by the shared
    dataset is removed or its name is changed or it is stored in other location on report server.
    In this scenario, we can check all the shared datasets to find it out in the corresponding location if the shared dataset is not deleted.
    Hope this helps.
    Thanks,
    Katherine Xiong
    Katherine Xiong
    TechNet Community Support

  • BAPI to change purchase order to put deletion flag

    Hello Guru's,
            We are about to archive data & for that we need that according to date range all open purchase order ,open purchase requsitions & open RFQ should be marked for deletion.
    Is there some BAPI to do so.Please guide.

    *DELETING FLAG *
    REPORT ZMMR_DELETEPO NO STANDARD PAGE HEADING MESSAGE-ID zisb.
    tables : zvtls_sap.
    *C-- Types Declarations
    TYPES : BEGIN OF tp_flatfile_vtls,
            ebeln(10),
            ebelp type ekpo-ebelp,
            END OF tp_flatfile_vtls.
    *=====================================================================
                      INTERNAL TABLES DECLARATION
    *=====================================================================
    DATA:  t_flatfile_vtls TYPE tp_flatfile_vtls OCCURS 0 WITH HEADER LINE.
    data : begin of t_sapdata occurs 0,
           po like zvtls_sap-posap,
           item like zvtls_sap-itemsap,
           end of t_sapdata.
    data : begin of t_flatfile_vtls1 occurs 0,
           po(10),
           item like zvtls_sap-itemsap,
           end of t_flatfile_vtls1.
    data : begin of t_update occurs 0,
           mandt like zvtls_sap-mandt,
           povtls like zvtls_sap-povtls,
           itemvtls like zvtls_sap-itemvtls,
           posap like zvtls_sap-posap,
           itemsap like zvtls_sap-itemsap,
           aedat like zvtls_sap-aedat,
           paedt like zvtls_sap-paedt,
           loekz like zvtls_sap-loekz,
           end of t_update.
    data : begin of t_poheader occurs 0,
           po like zvtls_sap-posap,
           end of t_poheader.
    data : begin of t_poitem occurs 0,
           po like zvtls_sap-posap,
           item like zvtls_sap-itemsap,
           end of t_poitem.
    DATA : BEGIN OF T_MESSAGE OCCURS 0,
           MSGTY,
           MSGID(2),
           MSGNO(3),
           MSGTX(100),
           PO like zvtls_sap-povtls,
           item like zvtls_sap-itemvtls,
           END OF T_MESSAGE.
    DATA : BEGIN OF t_bapi_poheader OCCURS 0.
            INCLUDE STRUCTURE bapimepoheader.
    DATA : END OF t_bapi_poheader.
    DATA : BEGIN OF t_bapi_poheaderx OCCURS 0.
            INCLUDE STRUCTURE bapimepoheaderx.
    DATA : END OF t_bapi_poheaderx.
    DATA : BEGIN OF t_bapi_poitem OCCURS 0.
            INCLUDE STRUCTURE bapimepoitem.
    DATA : END OF t_bapi_poitem.
    DATA : BEGIN OF t_bapi_poitemx OCCURS 0.
            INCLUDE STRUCTURE bapimepoitemx.
    DATA : END OF t_bapi_poitemx.
    DATA : BEGIN OF t_bapireturn OCCURS 0.
            INCLUDE STRUCTURE bapiret2.
    DATA : END OF t_bapireturn.
    *=====================================================================
                      V A R I A B L E S
    *=====================================================================
    DATA: w_success(6)  TYPE n,
          w_bklas like t023-bklas,
          w_curryear(4),
          w_begda like sy-datum,
          w_endda like sy-datum,
          w_begyr(4),
          w_endyr(4),
          w_currmon(2),
          w_assetclass like ankt-anlkl,
          w_price type p,
          w_recordsap type i,
          w_povtls(10),
          w_count type i.
    DATA:  w_filepath TYPE rlgrap-filename,
           w_rc TYPE sy-subrc,
           w_sscrfields_ucomm1   TYPE sscrfields-ucomm,
           w_file1 TYPE string,
           w_file2 TYPE FILENAME-FILEINTERN.
    *=====================================================================
                      C O N S T A N T S
    *=====================================================================
    CONSTANTS: c_x              TYPE  c         VALUE 'X',
               c_hyp            TYPE  c         VALUE '-',
               c_err            TYPE  bdc_mart  VALUE 'E'.
    CONSTANTS:  c_slash(1)            TYPE c VALUE '/',
                c_hash(1)             TYPE c VALUE '#',
                c_pipe                TYPE c VALUE '|',
                c_1                   TYPE i VALUE 1,
                c_zero                TYPE n VALUE '0',
                c_rg1(3)              TYPE c VALUE 'rg1',
                c_gr3(3)              TYPE c VALUE 'GR3',
                c_gr2(3)              TYPE c VALUE 'GR2',
                c_e(1)                TYPE c VALUE 'E',
                c_filepath(8)         TYPE c VALUE '/interf/',
                c_filetype(10)        TYPE c VALUE 'ASC'.
    CONSTANTS : c_bapimepoheaderx   TYPE x030l-tabname
                                   VALUE 'bapimepoheaderx',
               c_bapimepoitem      TYPE  x030l-tabname
                                   VALUE 'bapimepoitem',
               c_bapimepoaccount   TYPE  x030l-tabname
                                   VALUE 'bapimepoaccount',
               c_t_bapi_poheader(15)        TYPE c
                                            VALUE 't_bapi_poheader',
               c_t_bapi_poitem(13)          TYPE c
                                            VALUE 't_bapi_poitem',
               c_t_bapi_poitemx(14)         TYPE c
                                            VALUE 't_bapi_poitemx',
               c_t_bapi_poheaderx(16)       TYPE c
                                            VALUE 't_bapi_poheaderx'.
    CLASS cl_abap_char_utilities DEFINITION LOAD.
    CONSTANTS:con_tab  TYPE c VALUE cl_abap_char_utilities=>horizontal_tab.
    *======================================================================
                           SELECTION SCREEN
    *======================================================================
    SELECTION-SCREEN BEGIN OF BLOCK inputpath WITH FRAME TITLE text-001.
    SELECTION-SCREEN : BEGIN OF BLOCK blk2 WITH FRAME TITLE text-002.
    PARAMETERS : p_fore RADIOBUTTON GROUP rg1
                        USER-COMMAND pc,
                 p_back RADIOBUTTON GROUP rg1 DEFAULT 'X'.
    SELECTION-SCREEN : END OF BLOCK blk2.
    SELECTION-SCREEN : BEGIN OF BLOCK blk1 WITH FRAME TITLE text-003.
    PARAMETERS :  p_file1 LIKE rlgrap-filename OBLIGATORY MODIF ID gr2.
    PARAMETERS :  p_afile1 LIKE rlgrap-filename OBLIGATORY MODIF ID gr3.
    SELECTION-SCREEN : END OF BLOCK blk1.
    SELECTION-SCREEN END OF BLOCK inputpath.
    *C-- Initialization Event
    INITIALIZATION.
      CLEAR w_filepath.
      CONCATENATE c_filepath sy-sysid c_slash sy-mandt c_slash INTO
      w_filepath.
      CONDENSE w_filepath NO-GAPS.
      p_file1 = text-008.
      p_afile1 = text-009.
    *======================================================================
                           SELECTION SCREEN EVENTS
    *======================================================================
    *C-- Selection Screen Output
    AT SELECTION-SCREEN OUTPUT.
      IF p_fore = c_x.
        w_sscrfields_ucomm1 = space.
      ELSE.
        w_sscrfields_ucomm1 = c_rg1.
      ENDIF.
      LOOP AT SCREEN.
    *C--Modify selection screen if presentation
    *C--or application server radio button is chosen
        IF w_sscrfields_ucomm1 = space.
          IF screen-group1 = c_gr3.
            screen-active = c_zero.
          ENDIF.
        ELSE.
          IF screen-group1 = c_gr2.
            screen-active = c_zero.
          ENDIF.
        ENDIF.
        if screen-name = 'P_AFILE1'.
          screen-input = 0.
        ENDIF.
        MODIFY SCREEN.
      ENDLOOP.
    *C-- Selection Screen VALUE-REQUEST FOR File path
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file1.
      IF p_fore EQ c_x.
        CALL FUNCTION 'F4_FILENAME'
          EXPORTING
            program_name  = syst-cprog
            dynpro_number = syst-dynnr
          IMPORTING
            file_name     = p_file1.
      ENDIF.
    *C-- At Start of the Selection Process
    START-OF-SELECTION.
      IF p_fore EQ c_x.
        w_file1 = p_file1.
      ELSE.
        w_file2 = p_afile1.
      ENDIF.
      IF p_fore EQ c_x. " Presentaion Server
    *C--Validations for the input files
        PERFORM validate_pre_file USING p_file1.
    *C-- Load the contents of the input file into the internal table
        PERFORM upload_file TABLES t_flatfile_vtls
                            USING w_file1
                            CHANGING w_rc.
        IF w_rc <> 0.
          MESSAGE s006 DISPLAY LIKE c_e.
        ENDIF.
      ELSE. " Application Server
    *C--Validations for the input files
        PERFORM validate_app_file USING  w_file2.
    *C-- Load the contents of the input file into the internal table
        PERFORM upload_file_app TABLES t_flatfile_vtls
                                USING w_file2
                                CHANGING w_rc.
      ENDIF.
      loop at t_flatfile_vtls.
        CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
          EXPORTING
            input  = t_flatfile_vtls-ebeln
          IMPORTING
            output = t_flatfile_vtls1-po.
        CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
          EXPORTING
            input  = t_flatfile_vtls-ebelp
          IMPORTING
            output = t_flatfile_vtls1-item.
        append t_flatfile_vtls1.
        clear t_flatfile_vtls1.
      endloop.
      perform get_podata.
      loop at t_poheader.
        perform move_to_bapi.
        perform call_bapi.
      endloop.
      PERFORM STORE_MESSAGES TABLES T_MESSAGE.
    *&      Form  validate_pre_file
        Routine to validate presentation server file path.
         -->fp_name  text
    FORM validate_pre_file USING fp_name TYPE rlgrap-filename.
      DATA : l_result,
             l_filename TYPE string.
      l_filename = fp_name.
      CLEAR l_result.
      CALL METHOD cl_gui_frontend_services=>file_exist
        EXPORTING
          file                 = l_filename
        RECEIVING
          result               = l_result
        EXCEPTIONS
          cntl_error           = 1
          error_no_gui         = 2
          wrong_parameter      = 3
          not_supported_by_gui = 4
          OTHERS               = 5.
      IF sy-subrc <> 0.
        MESSAGE s007 DISPLAY LIKE c_e.
        LEAVE LIST-PROCESSING.
      ELSEIF l_result IS INITIAL.
        MESSAGE s008 DISPLAY LIKE c_e.
        LEAVE LIST-PROCESSING.
      ENDIF.
    ENDFORM.                    " validate_pre_file_hdr
    *&      Form  validate_app_file
          text - Checks if the path entered and filename is correct
    FORM validate_app_file USING  fp_file  TYPE FILENAME-FILEINTERN.
      data : l_fname(60).
      CALL FUNCTION 'FILE_GET_NAME'
        EXPORTING
          LOGICAL_FILENAME = FP_FILE
          OPERATING_SYSTEM = SY-OPSYS
        IMPORTING
          FILE_NAME        = L_FNAME
        EXCEPTIONS
          FILE_NOT_FOUND   = 1
          OTHERS           = 2.
      IF SY-SUBRC = '0'.
        OPEN DATASET  L_FNAME FOR INPUT IN TEXT MODE ENCODING DEFAULT.
        IF sy-subrc NE 0.
          MESSAGE s007 DISPLAY LIKE c_e.
        ELSE.
          CLOSE DATASET l_fname.
        ENDIF.
      ENDIF.
    ENDFORM.                    " validate_app_file
    *&      Form  upload_file
          Routine to upload data from file to tables.
         -->P_fp_flatfile
         -->P_fp_file
         <--P_fp_rc
    FORM  upload_file TABLES   fp_flatfile
                      USING    fp_file TYPE string
                      CHANGING fp_rc TYPE sy-subrc.
      IF fp_flatfile[] IS INITIAL.
        CALL FUNCTION 'GUI_UPLOAD'
          EXPORTING
            filename                = fp_file
            filetype                = c_filetype
            has_field_separator     = c_x
          TABLES
            data_tab                = fp_flatfile
          EXCEPTIONS
            file_open_error         = 1
            file_read_error         = 2
            no_batch                = 3
            gui_refuse_filetransfer = 4
            invalid_type            = 5
            no_authority            = 6
            unknown_error           = 7
            bad_data_format         = 8
            header_not_allowed      = 9
            separator_not_allowed   = 10
            header_too_long         = 11
            unknown_dp_error        = 12
            access_denied           = 13
            dp_out_of_memory        = 14
            disk_full               = 15
            dp_timeout              = 16
            OTHERS                  = 17.
        MOVE sy-subrc TO fp_rc.
      ENDIF.
    ENDFORM.  " upload_file
    *&      Form  upload_file_app
          text
         -->FP_FLATFILEtext
         -->FP_FILE    text
         -->FP_RC      text
    FORM  upload_file_app TABLES   fp_flatfile
                          USING    fp_file TYPE FILENAME-FILEINTERN
    CHANGING fp_rc TYPE sy-subrc.
      DATA: l_string TYPE tedata-data.
      DATA: wa_data_file TYPE tp_flatfile_vtls,
            l_wllength TYPE i,
            FNAME(60).
      CALL FUNCTION 'FILE_GET_NAME'
        EXPORTING
          LOGICAL_FILENAME = FP_FILE
          OPERATING_SYSTEM = SY-OPSYS
        IMPORTING
          FILE_NAME        = FNAME
        EXCEPTIONS
          FILE_NOT_FOUND   = 1
          OTHERS           = 2.
      IF SY-SUBRC = 0.
        OPEN DATASET  FNAME FOR INPUT IN TEXT MODE ENCODING DEFAULT.
        IF sy-subrc NE 0.
    *C-- commented by Bikash
         MESSAGE s107(yaero_ps) DISPLAY LIKE c_e.
          message e008.
        ELSE.
          DO.
            CLEAR: l_string.
            READ DATASET  FNAME INTO l_string LENGTH l_wllength.
            IF sy-subrc NE 0.
              EXIT.
            ELSE.
              SPLIT l_string AT con_tab INTO   wa_data_file-ebeln
                                               wa_data_file-ebelp.
              APPEND wa_data_file TO fp_flatfile.
            ENDIF.
          ENDDO.
          CLOSE DATASET  FNAME.
        ENDIF.
      ENDIF.
    ENDFORM.  " upload_file_app
    *&      Form  get_podata
          text
    form get_podata.
      select *
      into table t_update
      from zvtls_sap
      for all entries in t_flatfile_vtls1
       where itemvtls = t_flatfile_vtls1-item
      and povtls = t_flatfile_vtls1-po.
      sort t_update by posap itemsap.
      loop at t_update.
        at new posap.
          t_poheader-po = t_update-posap.
          append t_poheader.
          clear t_poheader.
        endat.
        t_poitem-po = t_update-posap.
        t_poitem-item = t_update-itemsap.
        append t_poitem.
        clear t_poitem.
        t_update-paedt = sy-datum.
        t_update-loekz = 'X'.
        modify t_update.
      endloop.
      modify zvtls_sap from table t_update.
    endform.                    "get_podata
    *&      Form  move_to_bapi
          text
    form move_to_bapi.
      t_bapi_poheader-po_number = t_poheader-po.
      CLEAR t_bapi_poheaderx.
      PERFORM fill_check_structure USING c_bapimepoheaderx
                                         c_t_bapi_poheader
                                         c_t_bapi_poheaderx
                                         c_x.
      refresh : t_bapi_poitem,t_bapi_poitemx.
      loop at t_poitem where po = t_poheader-po.
        clear t_bapi_poitem.
        t_bapi_poitem-po_item = t_poitem-item.
        t_bapi_poitem-delete_ind = 'X'.
        CLEAR t_bapi_poitemx.
        PERFORM fill_check_structure USING c_bapimepoitem
                                           c_t_bapi_poitem
                                           c_t_bapi_poitemx
                                           c_x.
        t_bapi_poitemx-po_item = t_poitem-item.
        t_bapi_poitemx-po_itemx = c_x.
        APPEND t_bapi_poitem.
        APPEND t_bapi_poitemx.
        clear t_bapi_poitem.
        clear t_bapi_poitemx.
      endloop.
    endform.                    "move_to_bapi
    *&      Form  call_bapi
          This form Routine is used to commit the data records
    FORM call_bapi .
      DATA : l_msgty      TYPE c,
             l_msgid(2)   TYPE c,
             l_msgno(3)   TYPE c,
             l_msgtx(100) TYPE c,
             l_errflag    TYPE c.
      CLEAR: t_bapireturn.
      REFRESH: t_bapireturn.
      *CALL FUNCTION 'BAPI_PO_CHANGE'*
        EXPORTING
          PURCHASEORDER = T_POHEADER-PO
          POHEADER      = T_BAPI_POHEADER
          POHEADERX     = T_BAPI_POHEADERX
        TABLES
          RETURN        = T_BAPIRETURN
          POITEM        = T_BAPI_POITEM
          POITEMX       = T_BAPI_POITEMX.
      READ TABLE t_bapireturn WITH KEY type = c_err TRANSPORTING NO FIELDS.
      IF sy-subrc NE 0.
        CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
          EXPORTING
            wait = c_x.
      ENDIF.
    *C-- Write messages
      WRITE: / 'PO Number', t_poheader-po.
      clear : t_update,w_povtls.
      read table t_update with key posap = t_poheader-po.
      w_povtls = t_update-povtls.
      CLEAR l_errflag.
      LOOP AT t_bapireturn.
        CLEAR: l_msgty, l_msgid, l_msgno, l_msgtx.
        l_msgty = t_bapireturn-type.
        l_msgid = t_bapireturn-id.
        l_msgno = t_bapireturn-number.
        l_msgtx = t_bapireturn-message.
        WRITE: / l_msgty, l_msgid, l_msgno, l_msgtx.
        if l_msgtx cs t_poheader-po.
          w_count = w_count + 1.
          loop at t_update.
            if sy-tabix = w_count.
              t_message-item = t_update-itemvtls.
            endif.
          endloop.
        endif.
        t_message-msgty = l_msgty.
        t_message-msgid = l_msgid.
        t_message-msgno = l_msgno.
        t_message-msgtx = l_msgtx.
        t_message-po = w_povtls.
        append t_message.
        clear t_message.
        IF l_msgty EQ c_err.
          l_errflag = c_x.
        ENDIF.    " l_msgty EQ 'E'
      ENDLOOP.
      ULINE.
      IF l_errflag NE c_x.
        w_success = w_success + 1.
      ENDIF.    " l_errflag NE C_X
    endform.                    "call_bapi
    *&      Form  fill_check_structure
          This form Routine will check whether the specified structure
          exist/active
    FORM fill_check_structure  USING    fp_tabname TYPE any
                                        fp_orgtabname TYPE any
                                        fp_chktabname TYPE any
                                        fp_check TYPE c.
      FIELD-SYMBOLS : <fs_chk>, <fs_org>.
      DATA:    l_char1(61)  TYPE c,
               l_char2(61)  TYPE c.
      DATA:    BEGIN OF tl_nametab OCCURS 60.
              INCLUDE STRUCTURE x031l.
      DATA:    END OF tl_nametab.
      REFRESH tl_nametab.
      CALL FUNCTION 'RFC_GET_NAMETAB'
        EXPORTING
          tabname          = fp_tabname
        TABLES
          nametab          = tl_nametab
        EXCEPTIONS
          table_not_active = 1
          OTHERS           = 2.
      IF sy-subrc <> 0.
        CLEAR tl_nametab.
      ENDIF.
      LOOP AT tl_nametab.
        CLEAR: l_char1, l_char2.
        CONCATENATE fp_chktabname c_hyp tl_nametab-fieldname INTO l_char1.
        ASSIGN (l_char1) TO <fs_chk>.
        CONCATENATE fp_orgtabname c_hyp tl_nametab-fieldname INTO l_char2.
        ASSIGN (l_char2) TO <fs_org>.
        IF <fs_org> IS NOT INITIAL.
          <fs_chk> = fp_check.
        ENDIF.
      ENDLOOP.
    ENDFORM.                    " fill_check_structure
    *&      Form  STORE_MESSAGES
          text
         -->FP_MESSAGEStext
    FORM STORE_MESSAGES TABLES FP_MESSAGES STRUCTURE T_MESSAGE.
      DATA: wl_output_data LIKE t_MESSAGE.
      DATA: l_catstr TYPE string.
      DATA: l_fieldvalue TYPE string.
      DATA: l_index TYPE i VALUE 1.
      DATA: L_FNAME(60).
      FIELD-SYMBOLS <fs>.
      CLEAR l_catstr.
      CALL FUNCTION 'FILE_GET_NAME'
        EXPORTING
          LOGICAL_FILENAME = '/USR/SAP/VTLS/POCHANGE/LOG'
          OPERATING_SYSTEM = SY-OPSYS
        IMPORTING
          FILE_NAME        = L_FNAME
        EXCEPTIONS
          FILE_NOT_FOUND   = 1
          OTHERS           = 2.
      IF SY-SUBRC = '0'.
        IF fp_messages[] IS NOT INITIAL.
          OPEN DATASET L_FNAME FOR OUTPUT IN TEXT MODE ENCODING DEFAULT.
          IF sy-subrc NE 0.
            LEAVE LIST-PROCESSING.
          ELSE.
            LOOP AT fp_messages INTO wl_output_data.
              DO.
               ASSIGN COMPONENT l_index OF STRUCTURE wl_output_data TO <fs>.
                IF sy-subrc <> 0.
                  EXIT.
                ENDIF.
                MOVE <fs> TO l_fieldvalue.
                IF l_catstr IS NOT INITIAL.
                  CONCATENATE l_catstr l_fieldvalue INTO l_catstr SEPARATED
                  BY con_tab.
                ELSE.
                  MOVE l_fieldvalue TO l_catstr.
                ENDIF.
                l_index = l_index + c_1.
                CLEAR l_fieldvalue.
                CLEAR <fs>.
              ENDDO.
              l_index = c_1.
              TRANSFER l_catstr TO L_FNAME .
              CLEAR wl_output_data.
              CLEAR l_catstr.
            ENDLOOP.
            CLOSE  DATASET L_FNAME.
          ENDIF.
        ENDIF.
      ENDIF.
    ENDFORM.                    "STORE_MESSAGES

  • Delete file from app server

    hi, i am running a background job in bw and for that created a file on the application server.now how do i delete that file.to create the file i just gave the name in the bw and the file got created.i am not able to find how to delete it.
    or
    rather than deleting the file how can we delete the data it is containing.please do let me know

    hi,
    but using DELETE DATASET u can remove file for app server.
    If u want to delete the data alone then give the same name without data it will overwrite.
    U can check it in AL11.
    regards
    md zubair sha
    U can also use the function module - EPS_DELETE_FILE
    Message was edited by:
            md zubair sha

  • Delete file from an FTP folder

    Hi expert,
    I wanna know if it's possible delete with abap command a file from a FTP folder.
    I mean, there is a ftp folder periodically filled with excel files. An ABAP program read this folder and the files content must be moved in a SAP Table. Aftre this, I must delete excel files with an abap command write in the same abap program.
    Thanks a lot
    Michele Garofalo

    1) read directory with fm EPS_GET_DIRECTORY_LISTING
    2) process table dir_list
    and 3) finally delete files with
    abap command:  DELETE DATASET dsn.
    hope that helps
    Andreas

  • Delete files from APPLICATION SERVER?

    Hi All,
    I am creating the files in application server with folder name as
    /interface/freeway/ and filename as PO concatenating with sy-datum and sy-uzeit.
    Ex file name now is /interface/freeway/PO20081201064120.csv
    Now my req is i need to delete files which has beeen created less than 30 days.
    regards,
    Sachin.

    hi,,,,,,
    REPORT ZDELETE.
    * Delete a file on the application server.
    PARAMETERS: P_DIR LIKE RLGRAP-FILENAME
    DEFAULT '/usr/sap/trans/',
    P_FILE1 LIKE RLGRAP-FILENAME.
    DATA: P_FILE(128).
    DATA: W_ANS.
    START-OF-SELECTION.
    CONCATENATE P_DIR P_FILE1 INTO P_FILE.
    * check file exists
    OPEN DATASET P_FILE FOR INPUT.
    IF SY-SUBRC NE 0.
    MESSAGE E899(BD) WITH P_FILE 'does not exist'.
    EXIT.
    ELSE.
    CALL FUNCTION 'POPUP_CONTINUE_YES_NO'
    EXPORTING
    DEFAULTOPTION = 'N'
    TEXTLINE1 = P_DIR
    TEXTLINE2 = P_FILE1
    TITEL = 'ARE YOU SURE YOU WANT TO DELETE'
    * START_COLUMN = 25
    * START_ROW = 6
    IMPORTING
    ANSWER = W_ANS
    EXCEPTIONS
    OTHERS = 1.
    ENDIF.
    CLOSE DATASET P_FILE.
    CHECK W_ANS = 'J'.
    * delete
    DELETE DATASET P_FILE.
    IF SY-SUBRC NE 0.
    MESSAGE E899(BD) WITH 'Invalid file name' P_FILE.
    ELSE.
    CLOSE DATASET P_FILE.
    MESSAGE I899(BD) WITH P_DIR P_FILE1 'DELETED'.
    ENDIF.

  • System exception while deleting the file from app server in background job

    Hi All,
    I have a issue while the deleting the file from application server.
    I am using the statement DELETE DATASET in my program to delete the file from app server.
    I am able to delete the file from the app server when i run the program from app server.
    When i run the same report from background job i am getting the message called System exception.
    Is there any secuirity which i need to get the issue.
    Thank You,
    Taragini

    Hi All,
    I get all the authorization sto delete the file from application serever.
    Thing is i am able to run the program sucessfully in foreground but not in the background .
    It i snot giving any short dump also just JOB is cancelled with the exception 'Job cancelled after system exception ERROR_MESSAGE'.
    Can anybody please give me suggestion
    Thanks,
    Taragini

  • Deleting file from Al11

    Hi,
    How to delete a file manually from AL11 or Application server.
    Thanks,
    Sravanthi

    Frame ur directory path by defining a variable and use the DELETE option for data set to delete ur particular file.
    Example below:
    data:w_outfile(50).
    concatenate '/' sy-sysid '/abc/xyz/'
    into w_outfile.
    concatenate w_outfile 'FileName.txt' into w_outfile.
    delete dataset w_outfile.
    Hope this will help you!
    Rahul

  • Deleting file from application server

    can any one tell me how to delete file from application server?

    Hi,
      Use statement
      delete dataset 'tmpfile.txt'.
    \tmp\file.txt is the file path on application server which you want to delete.
    Regards
    Sailaja.

Maybe you are looking for

  • Printing envelopes & labels in 10.2.8

    Help! We're perplexed trying to figure out whether or not we are able to print envelopes &/or labels on my son's G4 using OS 10.2.8. Thanks in advance. Power Mac G4   Mac OS X (10.2.x)  

  • Business Process to Forbid PR generation

    Hi Experts, In our Scenario,the PRs for the Service and material are generated during release of the WBS element or activity. But we r planning to restrict some PR generation after release using User status.So for materials there is business process

  • 10.1.3 on Fedora Core6 - Error

    Hi All, I am installing oracle 10g AS (10.1.3) on Fedora Core 6 but when installation process reaches to 89% (Linking 'oracle Net required support Files 10.1.0.2.0'), one error diolog box apear on installation screen showing the following error. Erro

  • RAID drive failed

    I have a external RAID drive purchased from OWC.  It failed.  Most likely the housing no longer works.  I have been told that without a housing designed for these particular drives I can't plug the drives into another case or adapter to access my dat

  • Creative Cloud, photoshop not available to install.

    I have purchased a creative cloud monthly sub and commenced the download, however the main photoshop app is not available to install, just tutorials ect. How do I access the main app?