RFCHKE00 program  output formatting - Urgent

Hello Friends,
I am working on the Positive payments - Outgoing payments to Banks.  The standard SAP program is doing the Check extract for the same.  If I run the transaction code FCHX, then this transaction is using the program RFCCHKE00 to produce the output file from SAP.  The format of the output file does not match the Bank format and so I've to reformat the output file to the bank format before transferring the data to the respective banks. 
Could anybody tell me how to reformat the output file programattically?  Shd I write an ABAP for this or what should I do?  If I've to write an ABAP then could somebody help me with the program?.  Please advise. 
This is very urgent please.
Thanks in Advance.

check below program which was written for the same purpose in one of our client.
<b>AWARD Points</b>
REPORT  zfo_positive_pay   LINE-SIZE  120
                           LINE-COUNT 60
                           MESSAGE-ID zf_cd.
======================      T A B L E S       =======================
TABLES: t001,        "Company Codes
        t012,        "House Banks
        tcurc,       "Currency Codes
        payr,        "Payment data
        dfkkcr.      "Repository For Checks
======================         T Y P E S      =======================
TYPES: BEGIN OF ty_boa_format,
        acc_num(10)  TYPE  c,
        void_ind(1)  TYPE  c,
        filler(2)    TYPE  c,
        s_no(10)     TYPE  c,
        amount(12)   TYPE  c,
        add_data(45) TYPE  c,
      END OF ty_boa_format.
TYPES: BEGIN OF ty_boa_detail_format,
        acc_num(10)  TYPE  c,
        void_ind(1)  TYPE  c,
        filler(2)    TYPE  c,
        s_no(10)     TYPE  c,
        amount(12)   TYPE  c,
        iss_date(8)  TYPE  c,
        add_data(37) TYPE  c,
      END OF ty_boa_detail_format.
=========        I N T E R N A L   T A B L E S         ==============
DATA  BEGIN OF it_sap_format OCCURS 0.
        INCLUDE STRUCTURE dtachkp.
DATA  END OF it_sap_format.
DATA: it_boa_format TYPE STANDARD TABLE OF ty_boa_format
                                  WITH HEADER LINE,
      it_boa_detail_format TYPE STANDARD TABLE OF ty_boa_detail_format
                                WITH HEADER LINE.
internal tables to send E-mail
DATA: st_doc_chng LIKE  sodocchgi1,
                      "Data of an object which can be changed
      it_objtxt   LIKE STANDARD TABLE OF solisti1   ,
                        "SAPoffice: Single List with Column Length 255
      wa_objtxt   LIKE LINE OF it_objtxt,
      it_objpack  LIKE STANDARD TABLE OF sopcklsti1 ,
                 "SAPoffice: Description of Imported Object Components
      wa_objpack  LIKE LINE OF it_objpack,
      it_objhead  LIKE STANDARD TABLE OF solisti1 ,
                        "SAPoffice: Single List with Column Length 255
      wa_objhead  LIKE LINE OF it_objhead,
      it_reclist  LIKE STANDARD TABLE OF somlreci1  ,
                       "SAPoffice: Structure of the API Recipient List
      wa_reclist  LIKE LINE OF it_reclist,
      it_objbin   LIKE STANDARD TABLE OF solisti1,
                  "SAPoffice: Single List with Column Length 255
      wa_objbin LIKE LINE OF it_objbin.
=========              C O N S T A N T S               ==============
CONSTANTS c_flag TYPE c VALUE 'X'.
=========              V A R I A B L E S               ==============
DATA: w_flag TYPE c,
      w_str(70) TYPE c,  " To store E-Amil contents
      w_tab_lines TYPE sy-tabix.
==========         S E L E C  T I O N  S C R E E N      =============
SELECTION-SCREEN: BEGIN OF BLOCK b1 WITH FRAME TITLE text-t01.
SELECTION-SCREEN: SKIP.
SELECTION-SCREEN: BEGIN OF BLOCK b2 WITH FRAME.
PARAMETERS:     p_bukrs   LIKE payr-zbukr OBLIGATORY DEFAULT '2580',
                p_hbkid   LIKE payr-hbkid OBLIGATORY DEFAULT 'BOAUS',
                p_waers   LIKE payr-waers OBLIGATORY DEFAULT 'USD'.
SELECT-OPTIONS: s_erdat   FOR  dfkkcr-erdat OBLIGATORY.
"DEFAULT SY-DATUM.
SELECT-OPTIONS: s_voidr  FOR payr-voidr.
SELECTION-SCREEN: END OF BLOCK b2.
SELECTION-SCREEN: BEGIN OF BLOCK b3 WITH FRAME.
PARAMETERS:     p_sfile   LIKE rlgrap-filename OBLIGATORY,
                p_opath LIKE rlgrap-filename OBLIGATORY,
                p_ofile   LIKE rlgrap-filename OBLIGATORY.
SELECTION-SCREEN: END OF BLOCK b3.
SELECTION-SCREEN: END OF BLOCK b1.
============     I N I T I L I Z A T I O N              =============
data : w_bukrs like payr-zbukr.
INITIALIZATION.
  DATA: l_path1 LIKE rlgrap-filename VALUE '/global/data/transfer/',
        l_path2 LIKE rlgrap-filename   VALUE '/3302/pub/out/'.
  CONCATENATE l_path1 sy-sysid l_path2 INTO p_opath.
============     A T  S E L E C T I O N  S C R E E N    =============
AT SELECTION-SCREEN.
*---to Validate the entered Company code
  PERFORM to_validate_bukrs.
*---to Validate the entered house bank
  PERFORM to_validate_hbkid.
*---to Validate the entered currency
  PERFORM to_validate_waers.
AT SELECTION-SCREEN OUTPUT.
*--- to populate the default file names if the entered company code and
*--- house bank id are valid
  PERFORM to_populate_default_file_names.
============    S T A R T  O F  S E L E C T I O N       =============
START-OF-SELECTION.
*---checking of file CD_POS_COMPLETE for existence
  PERFORM CHECK_FILES.
*--- to submit the report RFCHKE00
  PERFORM submit_rfchke00.
*--- to open the unix file and download the data
  PERFORM open_unix_file_and_process.
*--- to convert the sapfile format to the required BOA format
  PERFORM sap_format_to_boa_format.
=============    E N D   O F  S E L E C T I O N       ===============
END-OF-SELECTION.
*If entered file exists in the Unix directory
  IF w_flag = ' '.
*--- process the boa internal table to generate the trailer records for
*--- every new account number
    PERFORM process_boa_for_trailer_record.
*--- upload data to the unix file which contains the required BOA format
    PERFORM upload_unix_file.
*---addition of files into server
  PERFORM ADD_FILES.
*-----Send a E-Mail to the user
    PERFORM send_email.
  ENDIF.
===================    S U B R O U T I N E S       ==================
*&      Form  to_validate_bukrs
      to validate the entered company code at the selection screen
FORM to_validate_bukrs .
  IF NOT p_bukrs IS INITIAL.
    SELECT SINGLE bukrs
             FROM t001
             INTO t001-bukrs
            WHERE bukrs EQ p_bukrs.
    IF sy-subrc NE 0.
      MESSAGE e004 WITH text-e01.
      STOP.
    ENDIF.
  ELSE.
    MESSAGE e004 WITH text-e00.
  ENDIF.
ENDFORM.                    " to_validate_bukrs
*&      Form  to_validate_hbkid
      to validate the entered house bank id at the selection screen
FORM to_validate_hbkid .
  IF NOT p_hbkid IS INITIAL.
    SELECT SINGLE hbkid
             FROM t012
             INTO t012-hbkid
            WHERE hbkid EQ p_hbkid.
    IF sy-subrc NE 0.
      MESSAGE e004 WITH text-e02.
      STOP.
    ENDIF.
  ELSE.
    MESSAGE e004 WITH text-e00.
  ENDIF.
ENDFORM.                    " to_validate_hbkid
*&      Form  to_validate_waers
to validate the entered cCurrency at the selection screen
FORM to_validate_waers .
  IF NOT p_waers IS INITIAL.
    SELECT SINGLE waers
             FROM tcurc
             INTO tcurc-waers
            WHERE waers EQ p_waers.
    IF sy-subrc NE 0.
      MESSAGE e004 WITH text-e03.
      STOP.
    ENDIF.
  ELSE.
    MESSAGE e004 WITH text-e00.
  ENDIF.
ENDFORM.                    " to_validate_waers
*&      Form  to_populate_default_file_names
  to disable the file name fields and to populate the default values
  into it
FORM to_populate_default_file_names .
  DATA: l_date LIKE sy-datum.
  l_date = sy-datum.
  IF p_sfile IS INITIAL or w_bukrs <> p_bukrs.
*---   move the entered company code, house bank id and todays
*---   date to the sap file name
    CONCATENATE '/tmp/FI_' p_bukrs p_hbkid p_waers sy-datum
                INTO p_sfile.
  ENDIF.
  IF p_ofile IS INITIAL or w_bukrs <> p_bukrs.
    CONCATENATE '3302-BA-03-'
                   l_date '-' sy-uzeit '-' p_bukrs '-out'
                 INTO p_ofile.
  ENDIF.
  w_bukrs = p_bukrs.
ENDFORM.                    " to_populate_default_file_names
*&      Form  open_unix_file_and_process
      opne the unix file and download data to internal table
FORM open_unix_file_and_process .
  DATA : l_msg(80) TYPE c.
  CLEAR w_flag.
open the file in text mode
  OPEN DATASET p_sfile FOR       INPUT
                       IN        TEXT MODE
                       MESSAGE   l_msg
                       ENCODING  DEFAULT.
  IF sy-subrc NE 0.
    MESSAGE s004 WITH l_msg '-' p_sfile.
    w_flag = 'X'.
    STOP.
  ENDIF.
move the downloaded file data record wise to the internal table
till it reaches to the last record
  DO.
    READ DATASET p_sfile INTO it_sap_format.
    IF sy-subrc = 0.
      APPEND it_sap_format.
    ELSE.
    cursor reached to the last record of the file
      EXIT.
    ENDIF.
  ENDDO.
remove the header record form the downloaded file data
  DELETE it_sap_format INDEX 1.
remove the dataset file created by sap standard program
  DELETE DATASET p_sfile.
close the opened file
  CLOSE DATASET p_sfile.
ENDFORM.                    " open_unix_file_and_process
*&      Form  sap_format_to_boa_format
      to convert the sap generated file format to the required Bank Of
      America format
FORM sap_format_to_boa_format .
  DATA: l_amount(10),
        l_decimal(2),
        l_payee2 LIKE payr-znme2.
  LOOP AT it_sap_format.
    WRITE it_sap_format-bankn  TO it_boa_detail_format-acc_num
                                  RIGHT-JUSTIFIED.
    UNPACK it_boa_detail_format-acc_num TO it_boa_detail_format-acc_num.
    IF NOT it_sap_format-voidr IS INITIAL.
      it_boa_detail_format-void_ind = '2'.
    ELSE.
      CLEAR it_boa_detail_format-void_ind.
    ENDIF.
    it_boa_detail_format-filler   = space.
    WRITE it_sap_format-chect  TO it_boa_detail_format-s_no
                                  RIGHT-JUSTIFIED.
    UNPACK it_boa_detail_format-s_no TO it_boa_detail_format-s_no.
    WRITE it_sap_format-amnt+6(9) TO l_amount.
    WRITE it_sap_format-decm+0(2)  TO l_decimal.
    CONCATENATE '0' l_amount l_decimal INTO it_boa_detail_format-amount.
    it_boa_detail_format-iss_date = it_sap_format-zaldt.
*addition of payee2 field in version2.
    CLEAR l_payee2.
    SELECT SINGLE znme2
                  INTO l_payee2
                  FROM payr
                  WHERE zbukr = p_bukrs AND
                        hbkid = p_hbkid AND
                        chect = it_sap_format-chect.
*payee1 and payee2 separated by # symbol.
    it_boa_detail_format-add_data+0(20) = it_sap_format-znme1.
    it_boa_detail_format-add_data+20(1) = '#'.
    it_boa_detail_format-add_data+21(16) = l_payee2.
*if payee1 is initial , then condenses the name
    CONDENSE it_boa_detail_format-add_data.
    APPEND it_boa_detail_format.
  ENDLOOP.
  CLEAR it_boa_detail_format.
ENDFORM.                    " sap_format_to_boa_format
*&      Form  process_boa_for_trailer_record
      to generate the trailer record for every new account number
FORM process_boa_for_trailer_record .
  DATA: l_cnt     TYPE i,
        l_amt(12) TYPE p DECIMALS 2,
        l_temp(12).
*--- sort the table on account number
  SORT it_boa_detail_format BY acc_num.
  LOOP AT it_boa_detail_format.
  to get the item line count and the total
    if it_boa_detail_format-void_ind <> '2'.
      l_cnt = l_cnt + 1.
      l_amt = l_amt + it_boa_detail_format-amount.
    endif.
    it_boa_format-acc_num        = it_boa_detail_format-acc_num.
    it_boa_format-void_ind       = it_boa_detail_format-void_ind.
    it_boa_format-filler         = it_boa_detail_format-filler.
    it_boa_format-s_no           = it_boa_detail_format-s_no.
    it_boa_format-amount         = it_boa_detail_format-amount.
    it_boa_format-add_data+0(8)  = it_boa_detail_format-iss_date.
    it_boa_format-add_data+8(37) = it_boa_detail_format-add_data.
    APPEND it_boa_format.
    CLEAR it_boa_format.
  for the new bank account number
    AT END OF acc_num.
      it_boa_format-acc_num        = it_boa_detail_format-acc_num.
      it_boa_format-void_ind       = 'T'.
      it_boa_format-filler         = ''.
      it_boa_format-s_no           = l_cnt.
*--   unpack is used to add leading zeros
      UNPACK it_boa_format-s_no     TO it_boa_format-s_no.
      l_amt = l_amt / 100.
      UNPACK l_amt                  TO it_boa_format-amount.
      l_temp = it_boa_format-amount.
*-- Changes as per BOA - no decimals requried ,instead put a 0
*-- in the start
      CLEAR it_boa_format-amount.
      it_boa_format-amount+0(01)  = '0'.          "Zero at the start
      it_boa_format-amount1(9)   = l_temp1(9).   "9 digits whole amt
      it_boa_format-amount10(2)  = l_temp10(2). "2 decimals amt
      UNPACK it_boa_format-add_data TO it_boa_format-add_data.
      APPEND it_boa_format.
      CLEAR: l_cnt,
             l_amt,
             l_temp,
             it_boa_format.
    ENDAT.
  ENDLOOP.
ENDFORM.                    " process_boa_for_trailer_record
*&      Form  upload_unix_file
      create unix file with the required BOA format
FORM upload_unix_file .
  DATA l_msg(80) TYPE c.
opne the unix file
  CONCATENATE p_opath p_ofile INTO p_ofile.
  OPEN DATASET p_ofile FOR      OUTPUT
                       IN       TEXT MODE
                       MESSAGE  l_msg
                       ENCODING DEFAULT.
  IF sy-subrc NE 0.
    MESSAGE i004 WITH l_msg.
    EXIT.
  ENDIF.
move the data from internal table to unix file
  LOOP AT it_boa_format.
    TRANSFER it_boa_format TO p_ofile.
  ENDLOOP.
  message about number of records downloaded
  IF sy-subrc EQ 0.
    MESSAGE s004 WITH
                 sy-tfill 'records downloaded to the file'
                 p_ofile.
  ENDIF.
  close file
  CLOSE DATASET p_ofile.
ENDFORM.                    " upload_unix_file
*&      Form  submit_rfchke00
      to submit the standard program RFCHKE00 to extract the checks
      for the given company code, House bank and currecncy
FORM submit_rfchke00 .
  SUBMIT rfchke00 WITH par_zbuk EQ p_bukrs
                  WITH par_hbki EQ p_hbkid
                  WITH par_waer EQ p_waers
                  WITH par_xneu EQ c_flag
                  WITH sel_zald IN s_erdat
                  WITH par_file EQ p_sfile
                  WITH par_dbup EQ c_flag
                  WITH sel_void IN s_voidr
                  AND RETURN.
  IF sy-subrc NE 0.
    MESSAGE i004 WITH text-e04.
    EXIT.
  ENDIF.
ENDFORM.                    " submit_rfchke00
*&      Form  send_email
      sends an email in the required format
FORM send_email .
Populate the Mail contents
  PERFORM populate_email_ref_data.
Populate the attachment data
  PERFORM pop_data_objbin.
  CLEAR w_tab_lines.
  DESCRIBE TABLE it_objbin LINES w_tab_lines.
  wa_objhead = text-021.
  APPEND wa_objhead TO it_objhead.
Creation of the entry
  wa_objpack-transf_bin = 'X'.
  wa_objpack-head_start = 0.
  wa_objpack-head_num   = 0.
  wa_objpack-body_start = 0.
  wa_objpack-body_num   = w_tab_lines.
  wa_objpack-doc_type   = 'txt'.
  wa_objpack-obj_name   = 'POS pay-FI'.
  wa_objpack-obj_descr  = text-022.
  wa_objpack-doc_size   = w_tab_lines * 255.
  APPEND wa_objpack TO it_objpack.
Populate the User mail ids from the distribution list
  PERFORM receiver_details.
ENDFORM.                    " send_email
*&      Form  POPULATE_EMAIL_REF_DATA
     Subroutine to set the Attachment file name ,Mail subject,
     Body of the mail and size of the mail
FORM populate_email_ref_data .
Setting up attachment file name
  st_doc_chng-obj_name = text-t02.
Setting up mail subject
  st_doc_chng-obj_descr = text-t03.
  st_doc_chng-sensitivty = 'P'.
*Seting up the body of the E-mail
  wa_objtxt = text-t04.
  APPEND wa_objtxt TO it_objtxt.
  DESCRIBE TABLE it_objtxt LINES w_tab_lines.
  READ TABLE it_objtxt INTO wa_objtxt INDEX w_tab_lines.
*Finding size of the E-mail
st_doc_chng-doc_size = ( w_tab_lines - 1 ) * 255 + STRLEN( wa_objtxt ).
Creation of the entry for the compressed document
  CLEAR wa_objpack-transf_bin.
  wa_objpack-head_start = 1.
  wa_objpack-head_num = 0.
  wa_objpack-body_start = 1.
  wa_objpack-body_num = w_tab_lines.
  wa_objpack-doc_type = 'RAW'.
  APPEND wa_objpack TO it_objpack.
ENDFORM.                    " POPULATE_EMAIL_REF_DATA
*&      Form  POP_DATA_OBJBIN
Subroutine to populate the contennts of the attached document
FORM pop_data_objbin .
  DATA : l_date LIKE sy-datum.
  l_date = sy-datum - 1.
Populating the message
  CLEAR w_str.
  CONCATENATE text-t06 l_date INTO w_str SEPARATED BY space.
  MOVE w_str TO wa_objbin-line.
  CONCATENATE  cl_abap_char_utilities=>cr_lf w_str INTO  w_str.
  wa_objbin-line = w_str.
  APPEND wa_objbin TO it_objbin.
  CLEAR w_str.
  CLEAR wa_objbin.
WRITE TEXT-T07 TO W_STR+01(64).   "Message
MOVE W_STR TO WA_OBJBIN-LINE.
CONCATENATE  CL_ABAP_CHAR_UTILITIES=>CR_LF W_STR INTO  W_STR.
WA_OBJBIN-LINE = W_STR.
APPEND WA_OBJBIN TO IT_OBJBIN.
CLEAR W_STR.
CLEAR WA_OBJBIN.
WRITE TEXT-T06 TO W_STR.
MOVE W_STR TO WA_OBJBIN-LINE.
CONCATENATE  CL_ABAP_CHAR_UTILITIES=>CR_LF W_STR INTO  W_STR.
WA_OBJBIN-LINE = W_STR.
APPEND WA_OBJBIN TO IT_OBJBIN.
CLEAR: W_STR,
        WA_OBJBIN.
*for Company Code and House Bank
  CONCATENATE text-t08 p_bukrs INTO w_str SEPARATED BY space.
  CONCATENATE w_str text-t09 INTO w_str.
  CONCATENATE w_str p_hbkid INTO w_str SEPARATED BY space.
  MOVE w_str TO wa_objbin-line.
  CONCATENATE  cl_abap_char_utilities=>cr_lf w_str INTO  w_str.
  wa_objbin-line = w_str.
  APPEND wa_objbin TO it_objbin.
  CLEAR w_str.
  CLEAR wa_objbin.
  WRITE text-t07 TO w_str+0(62).
  MOVE w_str TO wa_objbin-line.
  CONCATENATE  cl_abap_char_utilities=>cr_lf w_str INTO  w_str.
  wa_objbin-line = w_str.
  APPEND wa_objbin TO it_objbin.
  CLEAR w_str.
  CLEAR wa_objbin.
Processing output records to send email in attachment
  LOOP AT it_boa_format.
    PERFORM cheque_records_to_objbin.
  ENDLOOP.
  IF it_objbin[] IS INITIAL.
    MOVE 'No data in Positive Payfile for FI'  TO wa_objbin-line.
    CONCATENATE  cl_abap_char_utilities=>cr_lf w_str INTO  w_str.
    wa_objbin-line = w_str.
    APPEND wa_objbin TO it_objbin.
    CLEAR w_str.
    CLEAR wa_objbin.
  ENDIF.
ENDFORM.                    " POP_DATA_OBJBIN
*&      Form  CHEQUE_RECORDS_TO_OBJBIN
      Subroutine to populate the output data in attachment
FORM cheque_records_to_objbin .
  DATA: l_bank_acc_no(10),
        l_check_no(10),
        l_amount(12),
        l_paid_date(8),
        l_status(1).
  l_bank_acc_no = it_boa_format-acc_num.
  l_check_no    = it_boa_format-s_no.
  l_amount      = it_boa_format-amount.
  l_paid_date   = it_boa_format-add_data+0(8).
  l_status      = it_boa_format-void_ind.
Display only summarised records in Email
  IF it_boa_format+10(1) = 'T'.
    WRITE text-t05 TO w_str+01(80).
    MOVE w_str TO wa_objbin-line.
    CONCATENATE  cl_abap_char_utilities=>cr_lf w_str INTO  w_str.
    wa_objbin-line = w_str.
    APPEND wa_objbin TO it_objbin.
    CLEAR w_str.
    CLEAR wa_objbin.
    WRITE l_bank_acc_no TO w_str+0(18).
    WRITE l_check_no    TO w_str+18(12).
    WRITE l_amount      TO w_str+30(14).
    MOVE w_str TO wa_objbin-line.
    CONCATENATE  cl_abap_char_utilities=>cr_lf w_str INTO  w_str.
    wa_objbin-line = w_str.
    APPEND wa_objbin TO it_objbin.
    CLEAR w_str.
    CLEAR wa_objbin.
    WRITE text-t05 TO w_str+01(80).
    MOVE w_str TO wa_objbin-line.
    CONCATENATE  cl_abap_char_utilities=>cr_lf w_str INTO  w_str.
    wa_objbin-line = w_str.
    APPEND wa_objbin TO it_objbin.
    CLEAR w_str.
    CLEAR wa_objbin.
ELSE.
  for detail records
   WRITE L_BANK_ACC_NO TO W_STR+0(18).
   WRITE L_CHECK_NO    TO W_STR+18(12).
   WRITE L_AMOUNT      TO W_STR+30(14).
   WRITE L_PAID_DATE   TO W_STR+44(12).
   WRITE L_STATUS      TO W_STR+56(1).
   MOVE W_STR TO WA_OBJBIN-LINE.
   CONCATENATE  CL_ABAP_CHAR_UTILITIES=>CR_LF W_STR INTO  W_STR.
   WA_OBJBIN-LINE = W_STR.
   APPEND WA_OBJBIN TO IT_OBJBIN.
  ENDIF.
  CLEAR: w_str,
         wa_objbin.
ENDFORM.                    " CHEQUE_RECORDS_TO_OBJBIN
*&      Form  RECEIVER_DETAILS
   Subroutine to populate the receiver details
FORM receiver_details .
  wa_reclist-receiver = text-t10.  "'[email protected]'.
  wa_reclist-rec_type = 'U'.
  APPEND wa_reclist TO it_reclist.
  CLEAR  wa_reclist.
*-- Sending the email with attached document
  PERFORM call_email_function.
ENDFORM.                    " RECEIVER_DETAILS
*&      Form  CALL_EMAIL_FUNCTION
      text
FORM call_email_function .
Call function to send email
  CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
        EXPORTING
             document_data              = st_doc_chng
             commit_work                = 'X'
            put_in_outbox               = 'X'
      importing
           sent_to_all                = sent_to_all
        TABLES
             packing_list               = it_objpack
             object_header              = it_objhead
             contents_bin               = it_objbin
             contents_txt               = it_objtxt
             receivers                  = it_reclist
        EXCEPTIONS
             too_many_receivers         = 1
             document_not_sent          = 2
             operation_no_authorization = 4
             OTHERS                     = 99.
  CASE sy-subrc.
    WHEN 1.
*message e004.
    WHEN 2.
*message e005.
    WHEN 3.
*message e006.
    WHEN 0.
      SUBMIT rsconn01 WITH mode = 'INT' AND RETURN.
*leave program.
     SET SCREEN 0.
      MESSAGE s004(zf_cd) WITH text-012 ' '  text-t10.
  ENDCASE.
ENDFORM.                    " CALL_EMAIL_FUNCTION
*&      Form  CHECK_FILES
Perform used to check whether FI_POS_COMPLETE file exists on the
server
form CHECK_FILES .
  DATA : L_MSG(80) TYPE C,
         L_FILE   LIKE RLGRAP-FILENAME.
  CLEAR : L_FILE.
  CONCATENATE P_OPATH 'FI_POS_COMPLETE_' P_BUKRS INTO L_FILE.
  OPEN DATASET L_FILE FOR INPUT IN TEXT MODE ENCODING DEFAULT.
  IF SY-SUBRC = 0.
  CLOSE DATASET L_FILE.
  MESSAGE E054.
  ELSE.
  CLOSE DATASET L_FILE.
  ENDIF.
endform.                    " CHECK_FILES
*&      Form  ADD_FILES
Perform used to create the FI_POS_COMPLETE file on the server with a 0
byte record
form ADD_FILES .
  DATA : L_MSG(80) TYPE C,
         L_FILE   LIKE RLGRAP-FILENAME.
  CLEAR : L_FILE.
  CONCATENATE P_OPATH 'FI_POS_COMPLETE_' P_BUKRS INTO L_FILE.
  OPEN DATASET L_FILE FOR OUTPUT IN TEXT MODE ENCODING DEFAULT.
  IF SY-SUBRC = 0.
    TRANSFER SPACE TO L_FILE.
  ELSE.
    MESSAGE I055.
  ENDIF.
  CLOSE DATASET L_FILE.
endform.                    " ADD_FILES

Similar Messages

  • Change Output format of standard program RFSZIS00

    Hi All,
    I want to change output format of standard program RFSZIS00 for this i copied this into Z program but i am not able to
    find out where final output table is populating because that program is not using any final internal table it's using EXRACT and
    another thing is all discription for field has given in German Language.
    It's a clasical report not an ALV.
    Edited by: Raj Singh on Jul 3, 2009 11:03 AM

    Dear Raj,
    as per the report mentioned by you, it is calling some subroutine to display the details.
    Just try to trace the WRITE statements and check if you can add your own include in this report to display the output as per your requirement.
    Regds,
    Anil

  • Concurrent programs - adding output format

    hi all,
    how do you add other output formats in the concurrent programs form in Oracle Applications : 11.5.10.2?
    the options i have are limited to HTML, FO, PCL, PDF, XML. i need to add Excel or XLS if possible.
    thanks
    allen

    Hi Srini,
    Thanks for the suggestion.
    I'm not sure if this is applicable to my situation as I'm using a PL/SQL Stored Procedure to generate the Excel. Then run this as a Request. Afterwards, I click the View Output to view the file.
    I am using the FND_FILE.PUT_LINE(fnd_file.output, string) package to create the file and currently has the extension of PCL but it doesn't automatically open in Excel. I'm guessing Excel does not recognize the file format but it is able to open it if I do it manually.
    Not really my idea but it is the client's request.
    Thanks,
    Allen

  • Format of program output?

    Hi,
    If I look at the output of my exercises I always get date and program name before the actual program result. For instance;
    ~/Documents/Program5.3/build/Debug michel$ ./Program5.3
    2011-04-04 09:25:15.694 Program5.3[293:903] Table of Triangular Numbers
    2011-04-04 09:25:15.696 Program5.3[293:903] n Sum from 1 to n
    2011-04-04 09:25:15.696 Program5.3[293:903]
    0 0
    2011-04-04 09:25:15.696 Program5.3[293:903] 1 1
    2011-04-04 09:25:15.697 Program5.3[293:903] 2 3
    2011-04-04 09:25:15.697 Program5.3[293:903] 3 6
    <------- this part ----------------------->
    How can I remove the "this part" of my program output?
    TIA,
    Macamba

    Use printf instead of NSLog.

  • Problem with Excel output format

    Hi Guys,
    I am creating a report in XML Publisher (not standalone). I am facing some problems could anyone please help me to figure out the issues.
    Is it possible to have all three output format (PDF, HTML & EXCEL) exact (same aligned) only by creating a single RTF Template? I am facing the problem with Excel output format the output format of excel is taking excels cell formatting.
    Example Numeric fields --> Right Aligned, text fields --> Left Aligned
    One more issue with excel is -ve(negative) values are getting displayed in red and in brackets like ($13) (with red color).
    Our client want excel output on priority.
    Is there any limitation for excel output format of reports?
    It is very urgent for us please help.
    Any help would be highly appreciated.
    Thanks,
    Pragati
    Edited by: user11237443 on Aug 27, 2009 1:22 AM

    Hi Mahi,
    Thanks for your response. But i could not understand how can we write wrapper program could you please give some light on this or provide some link it would be helpful for me:-)
    I have read that blog for excel limitations but i have more question?
    1) What about the negative values?
    if any field is displaying negative amount then excel not displaying right value for that:(
    2)How can we align header or data?
    Do XMLP with EBS provide any solution for formatting in excel?
    3) If for the alignment of numeric value we concatenate them with any special character then how can we perform calculation that field?
    Here are so many formatting issues do we need to write any code in xml for that?
    Please help.
    Many Thanks,
    Pragati

  • Changing Oracle Report Output Format at runtime

    Dear All,
    I've custom Oracle Report in Oracle Apps., and would like to give the users an option to select the output format (XML, TEXT, PDF, etc.) whilst submitting the request.
    As a SYSADMIN, we can modify the Output Format value of the concurrent program(Oracle Report in this case) to one we like.
    But I would like the user to select this output format option at runtime, rather then hard coding at SYSADMIN level. For that I've to create a Value Set with the desired report output format options, and attach this to the concurrent program.
    My question is, how we can make the desired output format to work at runtime?
    If any one can help?
    Thanks,
    Sandeep

    Hi Steve,
    I couldn't get it...???
    I'm running an Oracle Report in Oracle Apps. release 11.5.9
    The default output format of this report is TEXT, which is defined in its concurrent program.
    This report is submitted using standard request submission screen, and after successful completion we can view the output by pressing "View Output" button on "Requests" screen. This will open an another window and we can view the output page by page. Using "Tools>Copy File..." menu option, we can view the same output in IE window.
    Now, how does your resolution fits here and how can I view the same report in XML format?
    Many Thanks,
    Sandeep

  • Problem: program outputs numbers in scientific notation

    my problem is that my program outputs the population in scientific notation instead of round the number to the nearest one. ex: it should say 30787949.57 instead of 3.078794957 E7
    // Calculates the poulation of Mexico City from 1995 to 2018.
    // displays the year and population
    class PopulationCalculator {
    static double r2(double x) {
         //this method rounds a double value to two decimal places.
    double z=((double)(Math.round(x*100)))/100;
    return z;
    } //end method r2
    public static void main(String args[]) {
         double population=15600000.0;
         double rate=0.03;
         System.out.println("Mexico City Population, rate="+r2(rate));
         System.out.println("Year    Population");
         for (int year=1995; year<=2018;year++)  {
             System.out.println(year+ "    "+r2(population));
        population+=rate*population;
        }//end for loop
        System.out.println("The population of Mexico City reaches 30 million on 02/13/17 at 5:38:34am");
        }//end main
        }//end PopulationCalculator
    {code/]

A: problem: program outputs numbers in scientific notation

Or upgrade to JDK 5.0 and user the new java.util.Formatter capability.
You control the rounding and get localization of the fomatted string at
no extra charge. A quick example:
class A {
    public static void main(String[] args) {
        double d = 30787949.57d;
        System.out.println(java.lang.String.format("%,17.2f", d));
}Example output for three different locales:
$ javac -g A.java
$ LC_ALL=fr_FR   java A
    30 787 949,57
$ LC_ALL=en_NZ   java A
    30,787,949.57
$ LC_ALL=it_IT     java A
    30.787.949,57For more information, refer to:
http://java.sun.com/j2se/1.5.0/docs/relnotes/features.html#formatter

Or upgrade to JDK 5.0 and user the new java.util.Formatter capability.
You control the rounding and get localization of the fomatted string at
no extra charge. A quick example:
class A {
    public static void main(String[] args) {
        double d = 30787949.57d;
        System.out.println(java.lang.String.format("%,17.2f", d));
}Example output for three different locales:
$ javac -g A.java
$ LC_ALL=fr_FR   java A
    30 787 949,57
$ LC_ALL=en_NZ   java A
    30,787,949.57
$ LC_ALL=it_IT     java A
    30.787.949,57For more information, refer to:
http://java.sun.com/j2se/1.5.0/docs/relnotes/features.html#formatter

  • Change output format of  MC45,key usage value report to ALV format?

    Can someone please help me to change the change the Output of MC45 report to ALV format?
    Please help!!!
    Thanks!!!
    Owais

    I know i have to create a copy of MC45 to some z program but afterwards I am not sure where to look for to change the output format.
    Our ababper is extremely busy so i wanted to do litle bit of chnages by myself. I do have couple of years of java experience several years back, I thought i could help our abaper and learn myself little bit also.
    Thanks!!!
    Owais

  • Log in language would be english or german and output format would be in ge

    Hi,
            There is requirement in my script that log in language would be english or german and output format would be in german language.How could I do this. Please guide me.
    Regards,
    Ranu

    Hello Ranu,
    How do you call the script ?
    If you are calling using a z* program, then you can set the language aalso with the OPEN_FORM (LANGUAGE) function module. Always pass this as 'DE'. By default, it will take the log-on language.
    If it is standard program and you are assigning the form using some customization, then you may have some option to assign the language aslo.
    Regards,
    Selva K

  • Program output on mobile phone

    Hi friends,
    Iam working for CMM Level 5 company in ABAP and i have no idea about XI and MI.
    My requirement is:
    One program is running in background at 01:30 in the morning every day.
    Requirement is that " i need to show the output of that program on mobile as an SMS in background".
    Need to send that program output as SMS to a mobile numbers.
    I know it is possible using MI and SAP-BASIS.
    Can anyone have any idea on this type of requirement.
    Good answers, max points.
    Thanks,
    Vamsykrishna.

    hi friend,
                first you have to configure your mobile with your sevice provider for this
    step1 : type SUB (in caps)  in your airtel mobile and send that to number 52600 (only for Tamilnadu users )
    step2 : you will recive a confirmation message like  "9894243935 @  serviceprovder. com"
    step2 : give this in receiver list
    step3 : the airtel provider checks for loop backing so please specify a valid sender id 
    *& Report  ZEPM_PRODCUTIONVALUE_SMS
    *&created by Mr vijaybabu
    **modified for sending sms by E.peachimuthu
    *&Requirement by Mr. murugesh Senior manager
    REPORT  ZEPM_PRODCUTIONVALUE_SMS NO STANDARD PAGE HEADING LINE-SIZE 172..
    TABLES: MSEG , MKPF , QAMB , MAKT , MBEW , MARA , T001L , MVKE, ZSD_MOD,SPELL,
            MARD.
    SELECT-OPTIONS : SO_WERKS FOR MSEG-WERKS OBLIGATORY ,
                     SO_VKORG FOR MVKE-VKORG OBLIGATORY DEFAULT '1000' ,
                     SO_BUDAT FOR MKPF-BUDAT OBLIGATORY ,
                     SO_MATNR FOR MSEG-MATNR ,
                     SO_FROM  FOR MSEG-LGORT ,
                     P_TO     FOR MSEG-LGORT OBLIGATORY.
    *parameter      : p_to  like mseg-lgort obligatory.
    *****MAIL/SMS DECLARATIONS ********
    data : plant(35) type c,
           storage_loaction(35) type c,
           Sale_organisation(35) type c,
           ltext(105) type c,
           text(15) type c.
    DATA: OBJPACK   LIKE SOPCKLSTI1 OCCURS 2 WITH HEADER LINE.
          DATA: OBJHEAD   LIKE SOLISTI1 OCCURS 1 WITH HEADER LINE.
          DATA: OBJBIN    LIKE SOLISTI1 OCCURS 10 WITH HEADER LINE.
          DATA: OBJTXT    LIKE SOLISTI1 OCCURS 10 WITH HEADER LINE.
          DATA: RECLIST   LIKE SOMLRECI1 OCCURS 5 WITH HEADER LINE,
                ld_sender_address LIKE  soextreci1-receiver,
                ld_sender_address_type LIKE  soextreci1-adr_typ.
          DATA: DOC_CHNG  LIKE SODOCCHGI1.
          DATA: TAB_LINES LIKE SY-TABIX,
          w_sent_all(1) type c.
          DATA L_NUM(3).
          DATA : SUB(80) TYPE C.
    data    p_sender likE somlreci1-receiver.
    *******ENDMAIL******
    DATA: RET_RATE LIKE KONP-KBETR.
    DATA: CHANNEL  LIKE TVTWT-VTWEG.
    DATA: BEGIN OF ABS OCCURS 0,
             WERKS LIKE MSEG-WERKS ,
             LOC LIKE MSEG-LGORT ,
             VALUE TYPE P DECIMALS 2,
          END OF ABS.
    DATA: WS_LOT LIKE QAMB-PRUEFLOS.
    DATA: SL TYPE P DECIMALS 0.
    DATA: WS_RATE LIKE MBEW-VERPR.
    DATA: WS_VALUE TYPE P DECIMALS 2.
    DATA: WS_CHANNEL(02) TYPE C.
    DATA: WA_VKORG LIKE MVKE-VKORG.
    data: wa_bwkey like mbew-bwkey.
    DATA: T_VALUE TYPE P DECIMALS 2.
    DATA: MOD_DATE(6) TYPE N.
    DATA: BEGIN OF ITAB OCCURS 0,
             MBLNR LIKE MSEG-MBLNR ,
             MJAHR LIKE MSEG-MJAHR ,
             ZEILE LIKE MSEG-ZEILE ,
             MATNR LIKE MSEG-MATNR ,
             BUDAT LIKE MKPF-BUDAT ,
             BWART LIKE MSEG-BWART ,
             WERKS LIKE MSEG-WERKS ,
             MENGE LIKE MSEG-MENGE ,
             LOC   LIKE MSEG-LGORT ,
           END OF ITAB.
    INITIALIZATION.
    P_TO-SIGN = 'I'.
    P_TO-OPTION = 'EQ'.
    P_TO-LOW = '1200'.
    APPEND P_TO.
    P_TO-LOW = '3200'.
    APPEND P_TO.
    P_TO-LOW = '4200'.
    APPEND P_TO.
    SO_WERKS-SIGN = 'I'.
    SO_WERKS-OPTION = 'EQ'.
    SO_WERKS-LOW = '1000'.
    APPEND SO_WERKS.
    SO_WERKS-LOW = '3000'.
    APPEND SO_WERKS.
    SO_WERKS-LOW = '4000'.
    APPEND SO_WERKS.
    SO_BUDAT-SIGN = 'I'.
    SO_BUDAT-OPTION = 'EQ'.
    SO_BUDAT-LOW = SY-DATUM.
    SO_BUDAT-HIGH = SY-DATUM.
    APPEND SO_BUDAT.
    START-OF-SELECTION.
                SELECT  MSEGMBLNR MSEGMJAHR
                        MSEGZEILE MSEGMATNR MKPF~BUDAT
                        MSEGBWART MSEGWERKS MSEG~MENGE
                        INTO CORRESPONDING FIELDS OF TABLE ITAB
                        FROM MKPF INNER JOIN MSEG
                             ON  MKPFMBLNR = MSEGMBLNR
                             AND MKPFMJAHR = MSEGMJAHR
                             AND MKPFMANDT = MSEGMANDT
                        WHERE BUDAT IN SO_BUDAT
                             AND MATNR IN SO_MATNR
                             AND WERKS IN SO_WERKS
                             AND BWART = '321'
                             AND UMLGO IN P_TO.      " FIELD NAME CHANGED FROM LGORT TO UMLGO WEF 03-01-08 01:00pm SRINI / G.RAJENDRAN
    *{   DELETE         D01K903932                                        1
    *\                         AND XAUTO = 'X'       "INSERTED ON 17-12-2007 BY ARUN / SRINIVASAN
    *}   DELETE
                            AND LGORT IN P_TO.
    PERFORM HEADER.
    SL = 0.
    LOOP AT ITAB.
       WS_LOT = 0.
       SELECT SINGLE PRUEFLOS  INTO (WS_LOT) FROM QAMB
           WHERE MBLNR EQ ITAB-MBLNR AND
                 MJAHR EQ ITAB-MJAHR AND
                 ZEILE EQ ITAB-ZEILE AND
                 TYP = '3'.
        IF SY-SUBRC NE 0.
                          DELETE ITAB .
                                        CONTINUE. ENDIF.
        SELECT SINGLE * FROM QAMB
               WHERE PRUEFLOS EQ WS_LOT AND
               TYP = '1'.
        IF SY-SUBRC NE 0.
                           DELETE ITAB .
                                        CONTINUE. ENDIF.
        SELECT SINGLE * FROM MSEG
                WHERE MBLNR EQ QAMB-MBLNR AND
                      MJAHR EQ QAMB-MJAHR AND
                      ZEILE EQ QAMB-ZEILE AND
                      WERKS IN SO_WERKS AND
                      LGORT IN SO_FROM.
         IF SY-SUBRC NE 0.
                            DELETE ITAB .
                                         CONTINUE. ENDIF.
         MOVE MSEG-LGORT TO ITAB-LOC.
         MODIFY ITAB.
    ENDLOOP.
    SORT ITAB BY LOC MATNR BUDAT MBLNR MJAHR.
    T_VALUE = 0.
    LOOP AT ITAB.
        SELECT SINGLE * FROM MARA WHERE MATNR EQ ITAB-MATNR.
        IF SY-SUBRC NE 0. DELETE ITAB. CONTINUE. ENDIF.
        SELECT SINGLE * FROM MAKT WHERE MATNR EQ ITAB-MATNR.
        IF SY-SUBRC NE 0.  DELETE ITAB .CONTINUE. ENDIF.
    *===========================================================
    In Material master accounting rate fetch organization
    check added on 06.05.2004 as per instruction by Mr.Ariyanayagam.
    if itab-werks = '2000'.
    clear: wa_bwkey.
    wa_bwkey = '2000'.
      SELECT SINGLE * FROM MBEW WHERE MATNR EQ ITAB-MATNR and
                                        bwkey = wa_bwkey.
      IF SY-SUBRC NE 0. DELETE ITAB . CONTINUE. ENDIF.
    else.
      SELECT SINGLE * FROM MBEW WHERE MATNR EQ ITAB-MATNR.
      IF SY-SUBRC NE 0. DELETE ITAB . CONTINUE. ENDIF.
    endif.
    Rate fetch org check ends.
    *=================================================================
        SELECT SINGLE * FROM MARD WHERE MATNR EQ ITAB-MATNR AND
                                        LGORT EQ '1200'.
        IF SY-SUBRC NE 0. MARD-LGPBE = SPACE. ENDIF.
    Defence Auto components Added on 19/02/2002
    *============================================
        IF ITAB-LOC = '1200'. DELETE ITAB. CONTINUE. ENDIF.
        IF ITAB-LOC = '1042' AND MARA-MATKL NE 'AUTDEF'.
           PERFORM MODULE_FETCH.
           DELETE ITAB. CONTINUE.
        ENDIF.
        IF MARA-MATKL = 'AUTDEF'.
           ITAB-LOC = '1042'.
           MODIFY ITAB.
           PERFORM MODULE_FETCH.
        ENDIF.
        IF ITAB-LOC = '1041'.
           PERFORM MODULE_FETCH.
           DELETE ITAB. CONTINUE.
        ENDIF.
        WS_RATE = 0.
        IF MBEW-VPRSV = 'V'.
            MOVE MBEW-VERPR TO WS_RATE.
        ELSEIF MBEW-VPRSV = 'S'.
           MOVE MBEW-STPRS TO WS_RATE.
        ENDIF.
    a.tamilselvi for correction vkorg for rate fetching.
    if itab-werks = '1000' or itab-werks = '3000' or itab-werks = '4000' or itab-werks = '1004'.
       wa_vkorg = '1000'.
    else.
       wa_vkorg = itab-werks.
    endif.
    *IF ITAB-WERKS = '2000'.
      WA_VKORG = '2000'.
    *elseif itab-werks = '5000'.
      wa_vkorg = '5000'.
    *elseif itab-werks = '6000'.
      wa_vkorg = '6000'.
    *ELSE.
      WA_VKORG = '1000'.
    *ENDIF.
    FROM SALES DATA.
    CALL FUNCTION 'ZSDF_GETPRDRATE'
         EXPORTING
              PM_MATNR = ITAB-MATNR
              PM_VKORG = WA_VKORG
              PM_DATE  = ITAB-BUDAT
         IMPORTING
             CHANNEL  = CHANNEL
             RET_RATE = RET_RATE
         EXCEPTIONS
              OTHERS   = 1.
    IF RET_RATE > 0.
       MOVE RET_RATE TO WS_RATE.
       MOVE CHANNEL  TO WS_CHANNEL.
    ELSE.
       MOVE '  '     TO WS_CHANNEL.
    ENDIF.
    IF WS_CHANNEL = '20' or ws_channel = '21' or ws_channel = '23'.
    SELECT SINGLE * FROM MVKE WHERE MATNR EQ ITAB-MATNR AND
                                    VTWEG in ('20','21','23').
    IF MVKE-KONDM = '01'.
       WS_RATE = WS_RATE - ( WS_RATE * '0.30' ) .
       WS_RATE = WS_RATE * '0.9324'.
    ELSEIF MVKE-KONDM = '02'.
       WS_RATE = WS_RATE - ( WS_RATE * '0.4091' ).
       WS_RATE = WS_RATE * '0.9324'.
    ELSEIF MVKE-KONDM = '03'.
       WS_RATE = WS_RATE - ( WS_RATE * '0.3637' ).
       WS_RATE = WS_RATE * '0.9324'.
    ELSEIF MVKE-KONDM = '04'.
       WS_RATE = WS_RATE - ( WS_RATE * '0.20' ).
       WS_RATE = WS_RATE * '0.9324'.
    ENDIF.
    ENDIF.
        COMPUTE WS_VALUE = ITAB-MENGE * WS_RATE.
        COMPUTE T_VALUE = T_VALUE + WS_VALUE.
       SL = SL + 1.
       if itab-loc = '1170' and mara-spart eq '60'.
          perform mat_txt.
       endif.
       WRITE:/ '|' NO-GAP ,
              (5) SL       NO-GAP , '|' NO-GAP ,
                ITAB-LOC   NO-GAP , '|' NO-GAP ,
                ITAB-MBLNR NO-GAP , '|' NO-GAP ,
                ITAB-MJAHR NO-GAP , '|' NO-GAP ,
                ITAB-ZEILE NO-GAP , '|' NO-GAP ,
                ITAB-BUDAT NO-GAP , '|' NO-GAP ,
                ITAB-MATNR NO-GAP , '|' NO-GAP ,
                (15)MARA-BISMT NO-GAP , '|' NO-GAP ,
                (30)MAKT-MAKTG NO-GAP , '|' NO-GAP ,
                (12)ITAB-MENGE NO-GAP , '|' NO-GAP ,
                (10)WS_RATE    NO-GAP , '|' NO-GAP ,
                (15)WS_VALUE   NO-GAP , '|' NO-GAP,
    *{   INSERT         D01K903779                                        1
                (02) mara-spart no-gap, '|' no-gap,
    *}   INSERT
                (02)WS_CHANNEL NO-GAP , '|' NO-GAP,
                (10)MARD-LGPBE
                READ TABLE ABS WITH KEY WERKS = ITAB-WERKS
                                        LOC = ITAB-LOC.
                IF SY-SUBRC EQ 0.
                    ADD WS_VALUE TO ABS-VALUE.
                    MODIFY ABS INDEX SY-TABIX.
                ELSE.
                    MOVE ITAB-LOC TO ABS-LOC.
                    MOVE ITAB-WERKS TO ABS-WERKS.
                    MOVE WS_VALUE TO ABS-VALUE.
                    APPEND ABS.
                ENDIF.
                CLEAR ABS.
        PERFORM MODULE_FETCH.
       MOVE itab-budat+0(6) TO mod_date.
       SELECT SINGLE * FROM zsd_mod WHERE matnr = itab-matnr AND
                                          monyr = mod_date.
       IF sy-subrc NE 0.
          zsd_mod-matnr = itab-matnr.
          zsd_mod-monyr = mod_date.
          PERFORM module_update.
          INSERT INTO zsd_mod  VALUES zsd_mod.
          COMMIT WORK.
      ELSE.
          PERFORM module_update.
          MODIFY zsd_mod.
          COMMIT WORK.
       ENDIF.
    ENDLOOP.
    ULINE.
    WRITE:/ 'Total value : ' , T_VALUE.
    ULINE.
    WRITE:/ , /.
    WRITE:/ 'ABSTRACT' COLOR 3.
    WRITE:/ SY-ULINE(46).
    T_VALUE = 0.
    SL = 0.
    LOOP AT ABS.
      SELECT SINGLE * FROM T001L WHERE WERKS EQ ABS-WERKS AND
           LGORT EQ ABS-LOC.
       IF SY-SUBRC NE 0. CLEAR T001L. ENDIF.
    SL = SL + 1.
      WRITE:/(5) SL NO-GAP , '|' NO-GAP ,
               ABS-LOC  NO-GAP , '|' NO-GAP ,
               T001L-LGOBE NO-GAP , '|' NO-GAP ,
               ABS-VALUE NO-GAP , '|' NO-GAP.
       T_VALUE = T_VALUE + ABS-VALUE.
    ENDLOOP.
    WRITE:/ SY-ULINE(46).
    WRITE:/ 'Total value : ' , T_VALUE.
    WRITE:/ SY-ULINE(46).
    perform send_sms.
    FORM HEADER.
    ULINE.
    FORMAT COLOR 1 ON.
       WRITE:/ '|' NO-GAP ,
              (5) 'Slno'    NO-GAP , '|' NO-GAP ,
                'SLoc' NO-GAP , '|' NO-GAP ,
                'Material Document  '  , '|' NO-GAP ,
                'Post.date ' NO-GAP , '|' NO-GAP ,
                (18)'Material' NO-GAP , '|' NO-GAP ,
                (15)'Old.code' NO-GAP , '|' NO-GAP ,
                (30)'Description ' NO-GAP , '|' NO-GAP ,
                (12)'Quantity'  NO-GAP , '|' NO-GAP ,
                (10)'Rate'    NO-GAP , '|' NO-GAP ,
                (15)'Value'   NO-GAP , '|' NO-GAP,
    *{   INSERT         D01K903779                                        1
                (02) 'Dv' no-gap, '|' no-gap,
    *}   INSERT
                (02)'Ch'   NO-GAP , '|' NO-GAP,
                (11)'Storage Bin'
                FORMAT COLOR 1 OFF.
    ULINE.
    ENDFORM.
    *&      Form  MODULE_UPDATE
          text
    -->  p1        text
    <--  p2        text
    FORM MODULE_UPDATE.
           CLEAR : ZSD_MOD-DISPO.
           IF ITAB-LOC = '1001'. MOVE '101' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '1002'. MOVE '102' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '1003'. MOVE '103' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '1004'. MOVE '104' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '1005'. MOVE '105' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '1006'. MOVE '106' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '1011'. MOVE '111' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '1021'. MOVE '201' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '1022'. MOVE '202' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '1026'. MOVE '206' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '1041'. MOVE '412' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '1042'. MOVE '412' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '1044'. MOVE '203' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '1051'. MOVE '501' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '1052'. MOVE '502' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '1055'. MOVE '503' TO ZSD_MOD-DISPO. ENDIF.
          IF ITAB-LOC = '1057'. MOVE '207' TO ZSD_MOD-DISPO. ENDIF.
    W.e.f Apr.2004 1057 locked and 1028 activated for 207 module.
           IF ITAB-LOC = '1028'. MOVE '207' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '1071'. MOVE '701' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '1072'. MOVE '702' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '1073'. MOVE '703' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '1611'. MOVE '610' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '3012'. MOVE '601' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '3022'. MOVE '602' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '3032'. MOVE '603' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '3042'. MOVE '604' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '4052'. MOVE '605' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '3052'. MOVE '605' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '3062'. MOVE '606' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '4072'. MOVE '607' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '3072'. MOVE '607' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '4092'. MOVE '609' TO ZSD_MOD-DISPO. ENDIF.
           IF ITAB-LOC = '3112'. MOVE '612' TO ZSD_MOD-DISPO. ENDIF.
    W.e.f Jan.2005 activated for 611 module.
           IF ITAB-LOC = '3612'. MOVE '611' TO ZSD_MOD-DISPO. ENDIF.
    ENDFORM.                    " MODULE_UPDATE
    *&      Form  MODULE_FETCH
          text
    -->  p1        text
    <--  p2        text
    FORM MODULE_FETCH.
        MOVE ITAB-BUDAT+0(6) TO MOD_DATE.
        SELECT SINGLE * FROM ZSD_MOD WHERE MATNR = ITAB-MATNR AND
                                           MONYR = MOD_DATE.
        IF SY-SUBRC NE 0.
           ZSD_MOD-MATNR = ITAB-MATNR.
           ZSD_MOD-MONYR = MOD_DATE.
           PERFORM MODULE_UPDATE.
           IF NOT ZSD_MOD-DISPO IS INITIAL.
              INSERT INTO ZSD_MOD  VALUES ZSD_MOD.
              COMMIT WORK.
           ENDIF.
        ELSE.
           PERFORM MODULE_UPDATE.
           IF NOT ZSD_MOD-DISPO IS INITIAL.
              MODIFY ZSD_MOD.
              COMMIT WORK.
           ENDIF.
        ENDIF.
    ENDFORM.                    " MODULE_FETCH
    *&      Form  mat_txt
          text
    -->  p1        text
    <--  p2        text
    FORM mat_txt .
    data: wa_bismt like mara-bismt.
    data: wa_matnr like mara-matnr.
    if mara-bismt+0(1) ne 'M'.
    func to rev conver
    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
      EXPORTING
        INPUT        = itab-matnr
    IMPORTING
       OUTPUT        = wa_matnr
          concatenate 'M00000' wa_matnr into wa_bismt.
          mara-bismt = wa_bismt.
          clear: wa_bismt,wa_matnr.
    endif.
    ENDFORM.                    " mat_txt
    *&      Form  send_sms
          text
    -->  p1        text
    <--  p2        text
    FORM send_sms .
        Creation of the document to be sent
        File Name
          DOC_CHNG-OBJ_NAME  = 'SENDMAIL'.
        Mail Subject
          CONCATENATE 'PDN value' '' INTO SUB SEPARATED BY SPACE.
          DOC_CHNG-OBJ_DESCR = SUB.
        Mail Contents
          CLEAR SUB.
    *DATA : SPELL(100) TYPE C.
          OBJTXT = SUB.
    CALL FUNCTION 'SPELL_AMOUNT'
    EXPORTING
       AMOUNT          = t_value
       CURRENCY        = 'INR'
       FILLER          = ' '
       LANGUAGE        = SY-LANGU
    IMPORTING
       IN_WORDS        = SPELL
    EXCEPTIONS
       NOT_FOUND       = 1
       TOO_LARGE       = 2
       OTHERS          = 3
    IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    text = t_value.
    condense text.
    if so_werks-high = space.
    loop at so_werks.
    if sy-tabix = 1.
    concatenate 'plant:' so_werks-low into plant.
    else.
    concatenate plant so_werks-low  into plant separated by ','.
    endif.
    endloop.
    else.
    concatenate 'plant:' so_werks-low '_To_'  so_werks-high into plant.
    endif.
    concatenate plant ' __ ' 'Pdn val on :' SO_BUDAT-low6(2) '.' SO_BUDAT-low4(2) '.'  SO_BUDAT-low+0(4)
    into objtxt .
    DATA : SPL(80) TYPE C.
    *SPELL-WORD  LOWER CASE
    TRANSLATE SPELL-WORD TO LOWER CASE.
    concatenate objtxt  'is Rs' text ':' SPELL-WORD 'Rupees only' into objtxt separated by ''.
    *concatenate objtxt   into objtxt separated by space.
          append objtxt.
          DESCRIBE TABLE OBJTXT LINES TAB_LINES.
          READ TABLE OBJTXT INDEX TAB_LINES.
          DOC_CHNG-DOC_SIZE = 20.
        Creation of the entry for the compressed document
          CLEAR OBJPACK-TRANSF_BIN.
          OBJPACK-HEAD_START = 1.
          OBJPACK-HEAD_NUM = 0.
          OBJPACK-BODY_START = 1.
          OBJPACK-BODY_NUM = TAB_LINES.
          OBJPACK-DOC_TYPE = 'RAW'.
          APPEND OBJPACK.
          CLEAR RECLIST.
    read table so_werks index 1.
          if so_werks-low = '1000'.
          endif.
         RECLIST-RECEIVER =  "recv id"
         RECLIST-EXPRESS = 'X'.
         RECLIST-REC_TYPE = 'U'.
            APPEND RECLIST.
          p_sender = " sender id "
          ld_sender_address      = p_sender.
          ld_sender_address_type = 'INT'.
    CALL FUNCTION 'SO_DOCUMENT_SEND_API1'
        EXPORTING
              DOCUMENT_DATA              = DOC_CHNG
                put_in_outbox              = 'X'
                sender_address             = ld_sender_address
                sender_address_type        = ld_sender_address_type
         COMMIT_WORK                      = 'X'
        TABLES
              PACKING_LIST               = OBJPACK
              CONTENTS_TXT               = OBJTXT
              RECEIVERS                  = RECLIST
      IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
           SUBMIT RSCONN01 WITH MODE = 'INT'
                            WITH OUTPUT = ''
                            AND RETURN.
    ENDFORM.                    " send_sms

  • Best Output Format for Slide Show?

    If I were to purchase Final Cut Studio...
    What would be the best output format to use for a simple slideshow intended for Web deployment? In other words, which encoding method will provide the best compromise between file size and video quality? The slideshow is a series of simple static images with some fade transitions and Ken Burns effects. There is also a soundtrack for background music.
    A 1.5 minute slideshow with soundtrack created using Adobe Flash is less than 2 MB in size (which is great for Web deployment), and it looks very good. If that same slideshow is exported from Flash to a QuickTime-compatible format, it balloons to over 20 MB!
    So what I'd really like to know is, if something like Final Cut Pro were used to create that same slideshow, would I be able to produce a web-ready video that rivals the Flash version in size?
    Thanks for any help and insight you can provide,
    -Steve

    Studio X wrote:
    Quicktime is a file wrapper that can contain anyone of a number of codecs.
    Yes, I understand that.
    H.264 is the prefered version for web/apple TV delivery.
    A 90s slideshow that was less than 2 MB as a SWF file became a 27 MB behemoth when exported using the H.264 codec. The exported file had the same frame rate and resolution (pixel dimensions) as the original Flash file. The audio was optimized as well. Why the dramatic difference? (I think I know why, but perhaps I'm missing something.)
    That being said, Final Cut Pro is a video editing program and is a waste of money if all you are doing is simple slideshows.
    Slideshows are not all I will be doing, but I will be doing them occasionally, and it's hard to justify purchasing Flash just to create slideshows that are optimized for the Web.
    Have you tried iMovie then converting the output to either Flash or (if you have Quicktime Pro) converting to h.264 QT?
    My tests indicate that anything but Flash format results in a monstrous file for a simple slideshow. I have a notion as to why this is, but I wanted to check to make sure that I'm not overlooking some way of creating smaller non-Flash files.
    The bottom line is that Final Cut Studio will be far more useful and versatile for what I need to do, and I would be much more proficient with that software; but if I can't output video files that rival those of Flash in terms of quality and file size, then I might have to get a copy of Flash after all.
    And yes, you can convert a QuickTime movie to flash, but it's just not the same in terms of file size as generating the same slideshow directly in Flash. I suspect this is because Flash is optimized for animation, whereas the QuickTime codecs are designed for video, and a simple slideshow is more of an animation than a video.
    So my real question is (and I suspect the answer is no), is it possible using Final Cut Studio to generate a simple slideshow which rivals the output from Flash in terms of file size for a given resolution?
    -Steve

  • What Are Available Output Formats?

    What are the available output video formats from Final Cut Express? I tried to find that info in the online manual, but it is abit vague. I am wondering what all the available formats are.
    And, what is the common format to use to then author a DVD in iDVD as well as DVD Studio Pro. (BTW - can DVD Studio Pro be bought separately, or does it only come as part of Final Cut Pro?)

    Thanks. I guess by installing Flipmac, it adds output options?
    As you may have seen from my profile, I'm a PC user. I am about to buy my first Mac, a Mac Pro (glad I waited until after Xmas!). Anyway, I am familiar with formats like MPEG2, WMV and Avi. And, DivX which is an "add-in" too. But, not familiar with the native outputs from the various Mac programs. I would like to know what I am getting in too. Some work related projects I still need WMV format. So, Flipmac solves that I guess.
    Still, I would like to know what native output formats are available before additional downloads are installed, etc.

  • Changing output format for iTunes conversions

    WHen I convert my WMA files, iTunes converts them as quicktime files. When I play music through my laptop I prefer to us Windows Media Player though, not quicktime.
    Does anyone know if I can change the output format in iTunes to change them from WMA to MP3 instead of quicktime?
    thankyou

    When you import a wma file into iTunes, it makes a copy of the file converting it to either MP3 or AAC according to how you have set your preferences in Edit>>Preferences>>Advanced>>Importing.
    You want the drop down box labelled "Import Using".
    The actual program used to play the file depends on how you have your file associations set. You can change this by right clicking on a file and selecting "Open with" >>Choose Program. You select the program you want to use (assuming it knows how to play the file) and also ensure the "Always use selected program..." check box is ticked.
    The original wma file is left intact, so unless you delete it, it will be available to use in WMP. If you don't want to do that, and you want to use WMP as your player, you need to import into iTunes as MP3 rather than AAC.

  • I want to change the output format

    Hi abapers,
    I want to change the output format
    from kg/cm2a to kg/cmsquare(a)
    and from oc to degree symbol c
    regards
    ansuman

    Hi.....
    Plz mention the area u are working....
    Reports? screen programs? scripts?
    with that you can get the answer what you expecting...
    Thanks,
    Naveen.I

  • Scheduling a job with multiple output formats.

    Urgent!!
    Basically while scheduling a job in BI Publisher we specify an output format. It can be PDF, CSV, HTML or so… Is there a way to specify more than one output format while scheduling a job.
    Thanks in advance.
    Ashok

    you have to re-publish them.
    for a run, you can have only one output .

  • Maybe you are looking for

    • Spilled a little water on my MacBook Pro

      Hello, Yesterday I spilled a little water on my macbook (Yeah, I'm stupid), but it didn't stop working, and I wanted to ask if is there anything more that I can do to guarantee that nothing will happen to it. Here's the story: I spilled about a teasp

    • SAP NetWeaver 7.02 ABAP Trial Version JRE

      Hi All, I need some help regarding SAP NetWeaver 7.02 ABAP Trial Version installation on Windows XP SP3 JRE 1.6_026-b03. According to the installation, I need JRE 1.4.x or 1.5_022. As the computer allready runs applications which need JRE 1.6.., My q

    • Monitoring printers attched to a Windows print server cluster with Operations Manager

      I am trying to configure SCOM 2012 R2 to monitor the individual printers that are managed with a Windows 2008 R2 Print Cluster. I have the management packs installed for Windows Clustering and Print Servers. When I view the print queue status in the

    • Digital River; Order Processing - Can't Cancel

      Ok, first things first. I've had Thinkpads since my trusty & rusty 310ED (still works btw). I don't change them very often, but over the years I had at least 4 of em. I always bought them in high street shops, for better or worse. Last week, I decide

    • BAPI_INSPOPER_RECORDRESULTS:result does not appear in inspection lot...

      Hi, I am using BAPI_INSPOPER_RECORDRESULTS to record inspection lot result at characteristic level. When I use this BAPI, it does not give me an error. But the values against each characteristic does not appear  in the result field of that characteri