Facing Problem in XD01 Function Exit

Hi,
I am facing the problem in XD01 Function Exit EXIT_SAPMF02D_001. whenenver i am going active the include ZXF04U01, it is always creating the Local change request. But It is should be Transportable change request. That is why, the Basic people is enabled to transport the request into Production Server.
So, How can i make the transportable change request for the same.
kindly suggest me the solution for this problem.

Thank for replying,
My problem is not related to Local Object.
Function Exit was already lying in project. Problem occurs while activing the function exit. It gives the request number ( Local changes request number) but the Basis person enable to see the request number in his screen.
So, how should i make local change request to transportable change request.

Similar Messages

  • Facing problem in call function starting new task taskname

    Hi all,
    when i call a function module using starting new task, it is failing with sy-subrc 3. can anyone guide me in this.
    see the code :
      DATA   lv_taskname(7) TYPE c VALUE 'PEM_EXE'.
        CALL FUNCTION 'PEM_SCHEDULE'  STARTING NEW TASK lv_taskname
             EXPORTING
                  iv_packid             = gv_packid
                  iv_pebid              = ls_alv_out-peb_id
             EXCEPTIONS
                  invalid_state_request = 1
                  database_error        = 2
                  OTHERS                = 3.
    Thanks in advance.
    Best Regards,
    Prashant

    when i change the function module from normal to remote, it gives me a error that the "generic types are not allowed in RFC", but i have not given any generic type in the parameters.
    see the signature of the function module.
    *"  IMPORTING
    *"     VALUE(IV_PACKID) TYPE  CNVMBTPACK-PACKID
    *"     VALUE(IV_PEBID) TYPE  CNVMBTPEB-PEB_ID
    *"  EXPORTING
    *"     VALUE(EV_ERROR_DETECTED) TYPE  C
    *"     VALUE(EV_STOP) TYPE  C
    *"  EXCEPTIONS
    *"      INVALID_STATE_REQUEST
    *"      DATABASE_ERROR
    *"      FORIEGN_LOCK
    Can u please check it and find out the problem
    Thanks,
    Prasanth

  • Facing Problem with RFC Function Module

    Hi,
    I have created an RFC function module to get some data in table format.
    I have run the RFC in original system: It is giving the data.
    However, when I run this in target system, It is not giving any values.
    Could you please let me know, why it happens? I am not sure where I missed out.
    Thanks,
    Sandeep

    HI,
    i hope you are calling the RFC function module in the target system like this
    CALL FUNCTION <FUNC NAME> DESTINATION <DESTINATION NAME> . The destination should be logical system name of the source Logical system .
    Regards,
    Nagaraj

  • Facing problems with readdir() function in Solaris 2.6

    Hi,
    I am working on Solaris 2.6 platform. Configuration details are:
    System = SunOS
    Release = 5.6
    KernelID = Generic_105181-31
    Machine = sun4u
    NumCPU = 16
    sparc
    SUNW,Ultra-Enterprise-10000
    I have written a piece of "C" code that is used to search file(s).
    For that I am using opendir/readdir/closedir
    to open a directory/ read directory entries /close directory.
    This piece of code is used simultaneously by many programs to search for file(s) in
    same directory. Sometimes readdir skip a file although it is present in that directory.
    Is there a bug with readdir in Solaris 2.6?
    Also as per the man page of readdir() in Solaris 2.6, the pointer
    returned by readdir() points to data which may be overwritten by another
    call to readdir() on the same directory stream. The data is not overwritten
    by another call to readdir() on a different stream.
    Is there a bug with readdir() when multiple calls are being made to readdir()
    on the same directory.
    If you know something about this, please let me know.
    Thank you.
    Sunil

    Hi, and welcome to the Palm Support Community.
    Birthday reminders only come up on the handheld's calendar.  No good reason, sorry to say.  Palm doesn't own the software any longer, and when PD 6.2 was released by its current owner, it left a lot to be desired for a lot of users.
    smkranz
    I am a volunteer, and not an HP employee.
    Palm OS ∙ webOS ∙ Android

  • Performance problem with OLE_FLUSH_CALL function module

    Hello Everyone,
    I am facing problem with OLE_FLUSH_CALL function module (execution is taking long time which is going to be dump error).
    Could you please help me in knowing solution for this problem?
    Thanking you in advance.
    Srinivas

    Hi Srinivas,
    the OLE_FLUSH_CALL does an RFC from ABAP backend to frontend UI. So high execution time could result from high network time, for example latency between UI and backend server.
    How many UI interaction steps did you measure for the trace above? Ideally, there should only be one OLE_FLUSH_CALL per user interaction step. If its more, the application is not written in an optimized way.
    Best Regards, Randolf

  • Facing problem in using webutil functions

    hi,
    i have developer suite 10g(9.0.4),
    i download web util 1.0.6, update all the required changes,
    i also download the template, which shows the
    but still i am facing problem in using any function,
    when i am using get_system_property method then it return exception (06502) value or string error, and all the other functions return no_data_found exception
    please help me!!!
    with regards,
    sidharth

    Sidharth,
    unfortunately your question doesn't provide enough details to help you out of this. Please provide the code that you use in the function call that causes the exception. If you have error messages to share, the better it is.
    Frank

  • Problem in z include in function exit

    hi to all sdners,
                            in  a function exit exit_sapmf02d_001 when im trying a write a code in   z include im getting a information message that is used for customer function,therfore unable to write the code in it.please help me out

    Hi,
    Please try this.
    1. Go to transaction CMOD.
    2. Enter custom project name starting with Z* (follow your company naming convention) and click on create button.
    3. Enter description and click on save button.
    4. Click on enhancement assignment button and assign enhancement SAPMF02D (User exits: Customer master data) and click on components button
    5.  Double click on EXIT_SAPMF02D_001 and double click on INCLUDE ZXF04U01.
    6.  Press enter to skip a warning message ... now you should be able to add your logic/codes.
    Regards,
    Ferry Lianto

  • Facing problem with logo in the PDF attachment when sending mail...

    hi friends,
    i'm facing problem with logo in the PDF attachment to the mail.
    my requirement:
    1. enter spool number and mail id in the selection screen.
    process:
    1. now the program will fetch the spool data and converts it to PDF.
    2. but when i'm trying to send mail with this PDF as attachment.
    when i open the PDF file from the mail, logo is not coming properly (looks disturbed).
    can anyone help me how to resolve this issue...
    thanks in advance, murashali.

    hi dinakar, thanks for your mail...
    logo looks good in spool/script/smartform.
    even it look good when i download this spool to pdf and to the presentation server as pdf file.
    i'm using CONVERT_OTFSPOOLJOB_2_PDF.
    when i used CONVERT_ABAPSPOOLJOB_2_PDF, is gives a msg - 'spool number not found'.
    here i'm using folloing code to pass pdf to the function module: SO_NEW_DOCUMENT_ATT_SEND_API1.
    code:
    Transfer the 132-long strings to 255-long strings
      lt_mtab_pdf[] = pdf[].
      LOOP AT lt_mtab_pdf INTO lwa_mtab_pdf.
        TRANSLATE lwa_mtab_pdf USING ' ~'.
        CONCATENATE lv_gd_buffer lwa_mtab_pdf INTO lv_gd_buffer.
        CLEAR lwa_mtab_pdf.
      ENDLOOP.
      TRANSLATE lv_gd_buffer USING '~ '.
      DO.
        lwa_mess_att = lv_gd_buffer.
        APPEND lwa_mess_att TO lt_mess_att.
        CLEAR lwa_mess_att.
        SHIFT lv_gd_buffer LEFT BY 255 PLACES.
        IF lv_gd_buffer IS INITIAL.
          EXIT.
        ENDIF.
      ENDDO.
    NOTE: problem i believe is with ''.  i'm getting this tilt symbol () in my pdf internal table.  here in the above code the line   TRANSLATE lv_gd_buffer USING '~ ' is changing the existing tilt to space.  so my logo is getting disturbed.
    even i tried with REPLACE this tilt with other char, but it doent work.
    can you give any idea...

  • Facing problem during uploadation of Routing data using CA01-BDC - URGENT

    Dear All,
    When I am trying to upload Routing data using CA01 in the Table Control scenario, then I am facing problem as my last 2 records are not getting uploaded from my Test file.
    For example, I am having 47 records in my Test File and after setting ‘Default size’ parameters (to avoid screen resolution problem)
    I have 15 table control line items data per page. The Page down logic ('=P+') is working fine, but my below BDC code failed to take
    the remainder last 2 records from the Test File.
    Analysis: When I am running my “Call Transaction” bdc in foreground, then the 1st page down occurs after 15th record, 2nd page down occurs after 29th record( as in Table Control 1st page’s 15th record is coming on the Top of 2nd page). 3rd page down occurs after 43rd record
    (as 2nd page’s 29th record is coming on the top of 3rd page). In the 4th Table Control Page 43rd record of previous page is coming on top, and then it’s taking 44th & 45th records from the Test File and then it is triggering SAVE (=BU). Thus, our last 2 records
    (i.e. 46th, 47th record) are not getting uploaded in the routing screen from our Test File.
    If anybody has encountered this scenario previously, please help me URGENTLY in fixing the bugs here. It’s VERY, VERY URGENT…
    FYI. For others 45 successful records already uploaded, all the screen fields values are coming properly in the routing screen, and here there is no issue.
    Thanks very much…
    Thanks & Regards
    Sudipta – Project Lead
    Volvo Client Location
    I am pasting my BDC source code below:
    REPORT ZRT1_UPLOAD_CA01_F
                           NO STANDARD PAGE HEADING
                           LINE-SIZE 255.
                            I N C L U D E S                              *
    Include for Data Declarations
    INCLUDE zrout_top.
    Include for Forms
    INCLUDE zrout_form.
    INCLUDE zrout_include_f_ca01.
    *AT SELECTION-SCREEN ON VALUE-REQUEST FOR <field>
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE.
    Attaching F4 help with filename
      PERFORM F1001_GET_F4.
               S T A R T   -   O F  -  S E L E C T I O N                 *
    START-OF-SELECTION.
    Perform to read the input file
      PERFORM f_read_file.
    Perform to fill the BDC data
      PERFORM f_fill_bdctab.
                   E N D   -   O F  -  S E L E C T I O N                 *
    END-OF-SELECTION.
      FREE: i_bdcdata,
            i_messtab,
            i_record.
    x----
    *&  Include           ZROUT_TOP                                        *
                      D A T A B A S E    T A B L E S                     *
    TABLES: t100.          "Messages
                    D A T A    D E C L A R A T I O N S                   *
    T A B L E    T Y P E S *****************************
    For input data
    TYPES: BEGIN OF ty_record,
            matnr(18),  "Material Number
            werks(4),   "Plant
            verwe(3),   "Usage
            statu(3),   "Status
            arbpl(8),   "Work Center
            steus(4),   "Control Key
            ltxa1(40),  "Description of Operation
            bmsch(13),  "Base Quantity
            meinh(3),   "Unit of Measure
            vgw01(11),  "Machine
            vge01(3),   "Unit of measure of activity
          END OF ty_record.
    I N T E R N A L    T A B L E S ***********************
    Internal Table for input file name
    DATA: i_file_tab  TYPE STANDARD TABLE OF sdokpath   INITIAL SIZE 0.
    Internal Table for BDC Data
    DATA: i_bdcdata   TYPE STANDARD TABLE OF bdcdata    INITIAL SIZE 0.
    Internal Table for BDC Messages
    DATA: i_messtab   TYPE STANDARD TABLE OF bdcmsgcoll INITIAL SIZE 0.
    Internal Table for Input file
    DATA: i_record TYPE STANDARD TABLE OF ty_record INITIAL SIZE 0.
    W O R K      A R E A S *************************
    Work Area for input file name
    DATA: wa_file_tab LIKE sdokpath.
    Work Area for BDC Data
    DATA: wa_bdcdata LIKE bdcdata.
    Work Area for BDC Messages
    DATA: wa_messtab LIKE bdcmsgcoll.
    Work Area for Input file
    DATA: wa_record TYPE ty_record.
    V A R I A B L E S ****************************
    DATA: v_filename TYPE string,
          v_fnam(40) TYPE c.
    DATA: wa_opt TYPE ctu_params.
    C O N S T A N T S ***************************
    CONSTANTS: c_werks TYPE rc27m-werks VALUE 'tp',
               c_steus TYPE plpod-steus VALUE 'PP01'.
    *Selection Screen.
    SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
    PARAMETERS:
              Input file name
                P_FILE TYPE rlgrap-filename OBLIGATORY. " DEFAULT 'C:\'.
    SELECTION-SCREEN END OF BLOCK B1.
    x----
    *&  Include           ZROUT_FORM                                       *
    *&      Form  f_fill_bdctab
          Form to fill the BDC Data
    FORM f_fill_bdctab.
      TABLES mapl.          "Assignment of Task Lists to Materials
      DATA: l_cnt_item(3)  TYPE n VALUE 1.    "Line item counter
      DATA: first(3)  TYPE n VALUE 16.    "Line item counter
      DATA: next(3)  TYPE n .    "Line item counter
      DATA: lin(3) TYPE n .    "Line item counter
      DATA: l_v_bmsch(13),   "Base qty
            l_v_meinh(3),    "Unit of Measure
            l_v_vgw01(11),   "Machine
            l_v_vgw02(11),   "Labour
            l_v_vge01(3).    "Unit of measure of activity
      DATA l_v_nextline TYPE sy-tabix.
      DATA wa_temp TYPE ty_record.
        Initialize Counter
          l_cnt_item = 1.
      SORT i_record BY matnr.
      LOOP AT i_record INTO wa_record.
    AT NEW matnr.
        REFRESH: i_bdcdata,
                 i_messtab.
        SET PARAMETER ID 'PLN' FIELD space.
        SET PARAMETER ID 'PAL' FIELD space.
        PERFORM f_bdc_dynpro      USING 'SAPLCPDI' '1010'.
        PERFORM f_bdc_field       USING 'BDC_OKCODE'
                                        '/00'.
      Material Number
        PERFORM f_bdc_field       USING 'RC27M-MATNR'
                                        wa_record-matnr.
       Plant
        PERFORM f_bdc_field       USING 'RC27M-WERKS'
                                        c_werks.
        PERFORM f_bdc_field       USING 'RC271-PLNNR'
      Check if routing already exits for the material
        SELECT * FROM mapl
                      INTO mapl
                                WHERE matnr EQ wa_record-matnr
                                  AND werks EQ c_werks
                                  AND plnty EQ 'N'.
          IF sy-subrc EQ 0.
            PERFORM f_bdc_dynpro      USING 'SAPLCPDI' '1200'.
            PERFORM f_bdc_field       USING 'BDC_OKCODE'
                                            '=ANLG  '.
          ENDIF.
        ENDSELECT.
        perform f_bdc_dynpro      USING 'SAPLCPDA' '1200'.
        perform f_bdc_field       USING 'BDC_OKCODE'
                                  '=VOUE'.
    Group Counter
        perform f_bdc_field       USING 'PLKOD-PLNAL'
      Usage
        PERFORM f_bdc_field       USING 'PLKOD-VERWE'
                                        '1'.
      Status
        PERFORM f_bdc_field       USING 'PLKOD-STATU'
                                        '4'.
    ENDAT.
        PERFORM f_bdc_dynpro      USING 'SAPLCPDI' '1400'.
      Check if page is full
        IF l_cnt_item EQ '16'.
        Page down
          PERFORM f_bdc_field       USING 'BDC_OKCODE'
                                               '=P+'.
          l_cnt_item = 1.
    ELSE.
    PERFORM f_bdc_field       USING 'BDC_OKCODE'
                                  '/00'.
    ENDIF.
       CLEAR v_fnam.
      Populate item level details
    Work Center
        CONCATENATE 'PLPOD-ARBPL(' l_cnt_item ')' INTO v_fnam.
        PERFORM f_bdc_field       USING v_fnam
                                        wa_record-arbpl.
      Control Key
        CONCATENATE 'PLPOD-STEUS(' l_cnt_item ')' INTO v_fnam.
        PERFORM f_bdc_field       USING v_fnam
                                        c_steus.
      Description of Operation
        CONCATENATE 'PLPOD-LTXA1(' l_cnt_item ')' INTO v_fnam.
        PERFORM f_bdc_field       USING v_fnam
                                        wa_record-ltxa1.
      Base Quantity
        CONCATENATE 'PLPOD-BMSCH(' l_cnt_item ')' INTO v_fnam.
        PERFORM f_bdc_field       USING v_fnam
                                        wa_record-bmsch.
      Unit of Measure
        CONCATENATE 'PLPOD-MEINH(' l_cnt_item ')' INTO v_fnam.
        PERFORM f_bdc_field       USING v_fnam
                                        wa_record-meinh.
      Machine
        CONCATENATE 'PLPOD-VGW01(' l_cnt_item ')' INTO v_fnam.
        PERFORM f_bdc_field       USING v_fnam
                                        wa_record-vgw01.
      Labour
       CONCATENATE 'PLPOD-VGW02(' l_cnt_item ')' INTO v_fnam.
       PERFORM f_bdc_field       USING v_fnam
                                       wa_record-vgw02.
      Unit of measure of activity
        CONCATENATE 'PLPOD-VGE01(' l_cnt_item ')' INTO v_fnam.
        PERFORM f_bdc_field       USING v_fnam
                                        wa_record-vge01.
          l_cnt_item = l_cnt_item + 1.
       CLEAR wa_record.
    AT END OF matnr.
         PERFORM f_bdc_field       USING 'BDC_OKCODE'
                                  '/00'.
          PERFORM f_bdc_field         USING 'BDC_OKCODE'
                                  '=BU'.
         wa_opt-DISMODE = 'A'.
         wa_opt-DEFSIZE = 'X'.
         wa_opt-UPDMODE = 'S'.
        PERFORM f_bdc_transaction USING 'CA01'.
       Initialize Counter
         l_cnt_item = 1.
    ENDAT.
      ENDLOOP.
    ENDFORM.                    " f_fill_bdctab
    x----
    *&  Include           ZROUT_INCLUDE_F_CA01                             *
    *&      Form  f_read_file
          Form to read the file from presentation server
    FORM f_read_file .
    To get the file name
      DATA l_v_file TYPE string.
    l_v_file = P_FILE.
    CALL FUNCTION 'GUI_UPLOAD'
          EXPORTING
            filename                = l_v_file
            filetype                = 'ASC'
            has_field_separator     = 'X'
          TABLES
            data_tab                = i_record
          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.
        IF sy-subrc <> 0.
          MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                  WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
        ENDIF.
    ENDIF.
    ENDFORM.                    " f_read_file
    *&      Form  f_bdc_dynpro
          Form to populate BDC Tab for new screen
         -->fp_program   Screen program name
         -->fp_dynpro    Screen Number
           Start new screen                                              *
    FORM f_bdc_dynpro USING fp_program fp_dynpro.
      CLEAR wa_bdcdata.
      wa_bdcdata-program  = fp_program.
      wa_bdcdata-dynpro   = fp_dynpro.
      wa_bdcdata-dynbegin = 'X'.
      APPEND wa_bdcdata TO i_bdcdata.
    ENDFORM.                    "f_bdc_dynpro
    *&      Form  f_bdc_field
           Insert field                                                  *
    FORM f_bdc_field USING fp_fnam fp_fval.
      IF NOT fp_fval IS INITIAL.
        CLEAR wa_bdcdata.
        wa_bdcdata-fnam = fp_fnam.
        wa_bdcdata-fval = fp_fval.
        APPEND wa_bdcdata TO i_bdcdata.
      ENDIF.
    ENDFORM.                    "f_bdc_field
    *&      Form  f_bdc_transaction
          Call transaction and error handling
         -->fp_tcode   Transaction code
    FORM f_bdc_transaction  USING fp_tcode.
      DATA: l_mstring(480),
            l_color         TYPE i,
            l_mode          TYPE c.
      REFRESH i_messtab.
    CALL TRANSACTION fp_tcode USING i_bdcdata
                       OPTIONS FROM wa_opt
                       MESSAGES INTO i_messtab.
    Messages during upload
      LOOP AT i_messtab INTO wa_messtab.
        CASE wa_messtab-msgtyp.
          WHEN 'S'.
            l_color = 5.
          WHEN 'E'.
            l_color = 6.
          WHEN 'W'.
            l_color = 3.
        ENDCASE.
        FORMAT COLOR = l_color.
        SELECT SINGLE * FROM t100 WHERE sprsl = wa_messtab-msgspra
                                  AND   arbgb = wa_messtab-msgid
                                  AND   msgnr = wa_messtab-msgnr.
        IF sy-subrc = 0.
          l_mstring = t100-text.
          IF l_mstring CS '&1'.
            REPLACE '&1' WITH wa_messtab-msgv1 INTO l_mstring.
            REPLACE '&2' WITH wa_messtab-msgv2 INTO l_mstring.
            REPLACE '&3' WITH wa_messtab-msgv3 INTO l_mstring.
            REPLACE '&4' WITH wa_messtab-msgv4 INTO l_mstring.
          ELSE.
            REPLACE '&' WITH wa_messtab-msgv1 INTO l_mstring.
            REPLACE '&' WITH wa_messtab-msgv2 INTO l_mstring.
            REPLACE '&' WITH wa_messtab-msgv3 INTO l_mstring.
            REPLACE '&' WITH wa_messtab-msgv4 INTO l_mstring.
          ENDIF.
          CONDENSE l_mstring.
          WRITE: / wa_messtab-msgtyp, l_mstring(250).
        ELSE.
          WRITE: / wa_messtab.
        ENDIF.
        FORMAT COLOR OFF.
      ENDLOOP.
      SKIP.
    ENDFORM.                    " f_bdc_transaction
    FORM F1001_GET_F4.
      CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
           EXPORTING
                PROGRAM_NAME  = SY-REPID
                DYNPRO_NUMBER = SY-DYNNR
                FIELD_NAME    = P_FILE
           CHANGING
                FILE_NAME     = P_FILE
           EXCEPTIONS
                MASK_TOO_LONG = 1
                OTHERS        = 2.
      IF SY-SUBRC <> 0.
      File is not selected
       MESSAGE I000 WITH TEXT-M01.
      ENDIF.
    ENDFORM.                    " F1001_GET_F4

    Sudipta,
    Would request you to post this to ABAP-Forum for Immediate response.
    I had this problem, but the ABAP guy did something to correct this...it was more of screen resoultion difference between the recorded system and uploading system. Please try to use the same system which was used to record and try.
    Regards,
    Prasobh

  • How to use the variables of Function exit in the include program

    i have a problem of using the variables of a function exit in the include program..
    If i use those variables there will be an error indicating 'Field FEBVW_IN is unknown. It is neither in one of the specified tables nor defined by a DATA statement'. Please help... Below is the code of the function exit:
    FUNCTION EXIT_SAPLIEDP_202.
    ""Lokale Schnittstelle:
    *"  IMPORTING
    *"     VALUE(IDOC_CONTROL_INDEX)
    *"     VALUE(IDOC_DATA_INDEX)
    *"     VALUE(FEBVW_IN) LIKE  FEBVW STRUCTURE  FEBVW
    *"     VALUE(FEBKO_IN) LIKE  FEBKO STRUCTURE  FEBKO
    *"     VALUE(FEBEP_IN) LIKE  FEBEP STRUCTURE  FEBEP
    *"     VALUE(FEBRE_IN) LIKE  FEBRE STRUCTURE  FEBRE
    *"     VALUE(FEBPI_IN) LIKE  FEBPI STRUCTURE  FEBPI
    *"  EXPORTING
    *"     VALUE(I_FIMSG) LIKE  FIMSG STRUCTURE  FIMSG
    *"     VALUE(FEBVW_OUT) LIKE  FEBVW STRUCTURE  FEBVW
    *"     VALUE(FEBKO_OUT) LIKE  FEBKO STRUCTURE  FEBKO
    *"     VALUE(FEBEP_OUT) LIKE  FEBEP STRUCTURE  FEBEP
    *"     VALUE(FEBRE_OUT) LIKE  FEBRE STRUCTURE  FEBRE
    *"     VALUE(FEBPI_OUT) LIKE  FEBPI STRUCTURE  FEBPI
    *"  TABLES
    *"      IDOC_CONTROL STRUCTURE  EDIDC
    *"      IDOC_DATA STRUCTURE  EDIDD
    *"      IDOC_AVIP STRUCTURE  AVIP OPTIONAL
    *"      IDOC_AVIR STRUCTURE  AVIR OPTIONAL
    *"      IDOC_AVIT STRUCTURE  AVIT OPTIONAL
    *"  CHANGING
    *"     REFERENCE(IDOC_AVIK) TYPE  AVIK OPTIONAL
    *"  EXCEPTIONS
    *"      PROC_ERROR
      INCLUDE ZXF08U10.
    Here is the code for the include program.
      INCLUDE ZXF08U10
    MOVE febvw_in TO febvw_out.

    Sometimes you will get this error message when checking include code in exits even though there is really no error - it happens because the include does not realise it is in the function due to the navigation index being out of date.
    Try activating the code - it may work even though the check said there were errors.
    You can also get this issue when trying to drill down on the field in the include to view its structure.
    Andrew

  • Facing problem in copy of standard SAP  program

    hi,,,,,,,,,,,,
           when i execute this program in production server it displays an error ....i  m    trying to find out this error but this type(error) i cudnt find plz help me .....
           i m sending the documents which i rcvd from the system after the  execution of this program.
    this program executes perfctlly in developmnt server but it creates problem in production server,,,i searched out the type kkblo_t_sortinfo in the whole program but i cud nt find it ,,,,,,,,,
    documents.....
    Runtime Errors SYNTAX_ERROR
    Date and Time 18.11.2006 12:01:19
    ShrtText
    Syntax error in program "ZVISA_RM07MLBD ".
    What happened?
    Error in ABAP application program.
    The current ABAP program "????????????????????????????????????????" had to be
    terminated because one of the
    statements could not be executed.
    This is probably due to an error in the ABAP program.
    In program "ZVISA_RM07MLBD ", the following syntax error occurred
    in the Include "RM07MLBD_FORM_01 " in line 1805:
    The type KKBLO_T_SORTINFO" is unknown."
    also i m sending the include program ver i m facing problem...*&----
    *&  Include           RM07MLBD_FORM_01                                 *
    correction Aug. 2005 MM                                   "n856424
    - the fields "entry time", "entry date", and "User" are   "n856424
      are not filled filled for price change documents        "n856424
    MB5B improved regarding accessibilty                      "n773673
    Improvements :                       March 2003 MM        "n599218
    - print the page numbers                                  "n599218
    - send warning M7 393 when user deletes the initial       "n599218
      display variant                                         "n599218
    - show the current activity and the progress              "n599218
    contains FORM routines without preprocessor commands and  "n547170
    no text elements                                          "n547170
    *&      Form  INITIALISIERUNG
          Vorbelegung der Anzeigevariante                                *
    form initialisierung.
      repid = sy-repid.
      variant_save = 'A'.
      clear variante.
      variante-report = repid.
    Default-Variante holen:
      def_variante = variante.
      call function 'REUSE_ALV_VARIANT_DEFAULT_GET'
           exporting
                i_save     = variant_save
           changing
                cs_variant = def_variante
           exceptions
                not_found  = 2.
      if sy-subrc = 0.
      save the initial, e.g. default variant                  "n599218
        move  def_variante-variant  to  alv_default_variant.    "n599218
        p_vari = def_variante-variant.
      endif.
    print-no_print_listinfos = 'X'.
    endform.                               " INITIALISIERUNG
    *&      Form  AKTUELLE_BESTAENDE
         Ermittlung der aktuellen eigenen Bestände,
         d.h. der bewerteten Bestände und des Retourensperrbestandes,
         auf Lagerortebene und auf Material- bzw. Chargenebene;
         folgende Sonderbestände können gesondert ausgewiesen werden:
          Lohnbearbeitung         ( Sonderbestandskennzeichen  O )
          Kundenkonsignation      (             "              V, W, M )
          Lieferantenkonsignation (             "              K )
          Projektbestand          (             "              Q )
          Kundenauftragsbestand   (             "              E )
    form aktuelle_bestaende.
    delete the range tables for the creation of table g_t_organ
      if  g_t_organ[] is initial.                               "n433765
        refresh : g_0000_ra_werks, g_0000_ra_bwkey, g_0000_ra_bukrs.
        clear   : g_0000_ra_werks, g_0000_ra_bwkey, g_0000_ra_bukrs.
      endif.
      if      bwbst = 'X'.
      select the valuated stocks
        perform                  aktuelle_bst_bwbst.
      elseif lgbst = 'X'.
      all own stock from storage locations or batches
        if xchar = ' '.
          perform                aktuelle_bst_lgbst_mard.
        elseif  xchar = 'X'.
          perform                aktuelle_bst_lgbst_xchar.
        endif.
      elseif   sbbst = 'X'.
       special stocks
        case    sobkz.
          when  'O'.
            perform              aktuelle_bst_sbbst_o.
          when  'V' or  'W'.
            perform              aktuelle_bst_sbbst_v_w.
          when  'K' or  'M'.
            perform              aktuelle_bst_sbbst_k_m.
          when  'Q'.
            perform              aktuelle_bst_sbbst_q.
          when  'E'.
            perform              aktuelle_bst_sbbst_e.
          when  others.
          Angegebener Sonderbestand nicht vorhanden.
            message s290.
            perform              anforderungsbild.
        endcase.
      endif.
    create table g_t_organ with the plants and valuation areas from
    the database selection if table g_t_organ is empty
      perform  f0000_create_table_g_t_organ
                                 using  c_no_error.
    endform.                     "aktuelle_bestaende.
    *&   AKTUELLE_BST_LGBST_MARD
    form aktuelle_bst_lgbst_mard.
    eigener Bestand auf Lagerortebene -
    ... auf Materialebene -
      select * from mard into corresponding fields of table imard
                                             where werks in g_ra_werks
                                             and   lgort in g_ra_lgort
                                             and   matnr in matnr.
      if sy-subrc ne 0.          "no records found ?
        message s289.
      Kein Material in Selektion vorhanden.
        perform                  anforderungsbild.
      endif.
    does the user has the the authority for the found entries ?
      loop at imard.
        perform    f9000_auth_plant_check
                                 using  imard-werks.
        if  g_flag_authority is initial.
          delete             imard.
        else.
          perform  f9200_collect_plant     using  imard-werks.
          perform  f9400_material_key      using  imard-matnr.
        endif.
      endloop.
      describe table imard       lines g_f_cnt_lines.
      if  g_f_cnt_lines is initial.       "no records left  ?
        message s289.
      Kein Material in Selektion vorhanden.
        perform                  anforderungsbild.
      endif.
      if not charg-low is initial or not charg-high is initial.
        clear charg.
        message w285.
      Charge wird zurückgesetzt.
      endif.
    endform.                     "aktuelle_bst_lgbst_mard
       AKTUELLE_BST_LGBST_XCHAR
    form aktuelle_bst_lgbst_xchar.
    read the stock table mchb for batches
      select * from mchb into corresponding fields of table imchb
                                 where   werks  in  g_ra_werks
                                   and   lgort  in  g_ra_lgort
                                   and   matnr  in  matnr
                                   and   charg  in  charg.
      describe table imchb       lines  g_f_cnt_lines.
      if g_f_cnt_lines is initial.         "no records found ?
        message s821 with matnr werks lgort.
      Keine Chargen zu Material & in Werk & Lagerort & vorhanden.
        perform anforderungsbild.
      endif.
    process working table with the batches
      loop at imchb.
      does the user has the the authority for the found entries ?
        perform    f9000_auth_plant_check
                                 using  imchb-werks.
        if  g_flag_authority is initial.
          delete             imchb.
        else.
          perform  f9200_collect_plant     using  imchb-werks.
          perform  f9400_material_key      using  imchb-matnr.
        endif.
      endloop.
    endform.                     "aktuelle_bst_lgbst_xchar
       AKTUELLE_BST_SBBST_O
    form aktuelle_bst_sbbst_o.
    process Special Stocks with Vendor
    Bemerkung: Im Gegensatz zu den anderen Sonderbeständen existieren
               der Lohnbearbeitungs- und Kundenkonsignationsbestand
               nur auf Werksebene.
      select * from mslb into corresponding fields of table xmslb
                                 where  werks  in  g_ra_werks
                                   and  matnr  in  matnr
                                   and  charg  in  charg
                                   and  sobkz  =   'O'.
      if sy-subrc <> 0.                     "no records found ?
         message s289.
       Kein Material in Selektion vorhanden.
         perform anforderungsbild.
      endif.
    process the found records special stock vendor
      loop at xmslb.
      check the authority
        perform  f9000_auth_plant_check
                                 using      xmslb-werks.
        if  g_flag_authority is initial.
          delete                 xmslb.
        else.
        fill range table g_0000_ra_werks if it is still empty
          perform  f9200_collect_plant     using  xmslb-werks.
          perform  f9400_material_key      using  xmslb-matnr.
        endif.
      endloop.
    error, if no records are left
      describe table xmslb       lines g_f_cnt_lines.
      if  g_f_cnt_lines is initial.
        message s289.
      Kein Material in Selektion vorhanden.
        perform anforderungsbild.
      endif.
          sort xmslb.
          loop at xmslb.
            move-corresponding xmslb to imslb.
            collect imslb.
          endloop.
          free xmslb. refresh xmslb.
          if xchar = ' '.
            loop at imslb.
              move-corresponding imslb to imslbx.
              collect imslbx.
            endloop.
            sort imslbx.
          elseif xchar = 'X'.
            loop at imslb.
              check imslb-charg is initial.
              delete imslb.
            endloop.
          endif.
    endform.                     "aktuelle_bst_sbbst_o.
       AKTUELLE_BST_SBBST_V_W
    form aktuelle_bst_sbbst_v_w.
    Sonderbestand Kundenkonsignation -
      elseif sobkz = 'V' or sobkz = 'W'.
          select * from msku into corresponding fields of table xmsku
                                             where werks in g_ra_werks
                                             and   matnr in matnr
                                             and   charg in charg
                                             and   sobkz eq sobkz.
      if sy-subrc <> 0.          "no records found
        message s289.
      Kein Material in Selektion vorhanden.
        perform anforderungsbild.
      endif.
    process Special Stocks with Customer
      loop at xmsku.
        perform  f9000_auth_plant_check    using     xmsku-werks.
        if  g_flag_authority is initial.
          delete                 xmsku.
        else.
          perform  f9200_collect_plant     using  xmsku-werks.
          perform  f9400_material_key      using  xmsku-matnr.
        endif.
      endloop.
      describe table xmsku       lines  g_f_cnt_lines.
      if g_f_cnt_lines is initial.         "no records found
        message s289.
      Kein Material in Selektion vorhanden.
        perform anforderungsbild.
      endif.
          sort xmsku.
          loop at xmsku.
            move-corresponding xmsku to imsku.
            collect imsku.
          endloop.
          free xmsku. refresh xmsku.
          if xchar = ' '.
            loop at imsku.
              move-corresponding imsku to imskux.
              collect imskux.
            endloop.
            sort imskux.
          elseif xchar = 'X'.
            loop at imsku.
              check imsku-charg is initial.
              delete imsku.
            endloop.
          endif.
          if sy-subrc ne 0.
            message s042.                             "#EC *    "n443935
          Charge ist nicht vorhanden.
            perform anforderungsbild.
          endif.
    endform.                     "aktuelle_bst_sbbst_v_w
       AKTUELLE_BST_SBBST_K_M
    form aktuelle_bst_sbbst_k_m.
    Sonderbestand Lieferantenkonsignation -
      elseif sobkz = 'K' or sobkz = 'M'.
          select * from mkol into corresponding fields of table xmkol
                                            where werks in g_ra_werks
                                            and   lgort in g_ra_lgort
                                            and   matnr in matnr
                                            and   charg in charg
                                            and   sobkz eq sobkz.
      if sy-subrc <> 0.          "no records found
        message s289.
      Kein Material in Selektion vorhanden.
        perform anforderungsbild.
      endif.
    process Special Stocks from Vendor
      loop at xmkol.
        perform  f9000_auth_plant_check    using  xmkol-werks.
        if  g_flag_authority is initial.
          delete             xmkol.
        else.
          perform  f9200_collect_plant     using  xmkol-werks.
          perform  f9400_material_key      using  xmkol-matnr.
        endif.
      endloop.
      describe table xmkol       lines  g_f_cnt_lines.
      if g_f_cnt_lines is initial.         "no records found
        message s289.
      Kein Material in Selektion vorhanden.
        perform anforderungsbild.
      endif.
          sort xmkol.
          loop at xmkol.
            move-corresponding xmkol to imkol.
            collect imkol.
          endloop.
          free xmkol. refresh xmkol.
          if xchar = ' '.
            loop at imkol.
              move-corresponding imkol to imkolx.
              collect imkolx.
            endloop.
            sort imkolx.
          elseif xchar = 'X'.
            loop at imkol.
              check imkol-charg is initial.
              delete imkol.
            endloop.
          endif.
          if sy-subrc ne 0.
            message s042.                             "#EC *    "n443935
          Charge ist nicht vorhanden.
            perform anforderungsbild.
          endif.
    endform.                     "aktuelle_bst_sbbst_k_m.
       AKTUELLE_BST_SBBST_Q
    form aktuelle_bst_sbbst_q.
    Projektbestand -
      elseif sobkz = 'Q'.
          select * from mspr into corresponding fields of table xmspr
                                             where werks in g_ra_werks
                                             and   lgort in g_ra_lgort
                                             and   matnr in matnr
                                             and   charg in charg
                                             and   sobkz eq sobkz.
      if sy-subrc <> 0.          "no record found
        message s289.
      Kein Material in Selektion vorhanden.
        perform anforderungsbild.
      endif.
    process project stock
      loop at xmspr.
        perform  f9000_auth_plant_check    using  xmspr-werks.
        if  g_flag_authority is initial.
          delete                 xmspr.
        else.
          perform  f9200_collect_plant     using  xmspr-werks.
          perform  f9400_material_key      using  xmspr-matnr.
        endif.
      endloop.
      describe table xmspr       lines  g_f_cnt_lines.
      if  g_f_cnt_lines is initial.        "no record left
        message s289.
      Kein Material in Selektion vorhanden.
        perform anforderungsbild.
      endif.
          sort xmspr.
          loop at xmspr.
            move-corresponding xmspr to imspr.
            collect imspr.
          endloop.
          free xmspr. refresh xmspr.
          if xchar = ' '.
            loop at imspr.
              move-corresponding imspr to imsprx.
              collect imsprx.
            endloop.
            sort imsprx.
          elseif xchar = 'X'.
            loop at imspr.
              check imspr-charg is initial.
              delete imspr.
            endloop.
          endif.
    endform.:                     "aktuelle_bst_sbbst_q
       AKTUELLE_BST_SBBST_E
    form aktuelle_bst_sbbst_e.
    Kundenauftragsbestand -
          select * from mska into corresponding fields of table xmska
                                             where werks in g_ra_werks
                                             and   lgort in g_ra_lgort
                                             and   matnr in matnr
                                             and   charg in charg
                                             and   sobkz eq sobkz.
      if sy-subrc <> 0.            "no records found
        message s289.
      Kein Material in Selektion vorhanden.
        perform anforderungsbild.
      endif.
    process Sales Order Stock
      loop at xmska.
        perform  f9000_auth_plant_check    using  xmska-werks.
        if  g_flag_authority is initial.
          delete                   xmska.
        else.
          perform  f9200_collect_plant     using  xmska-werks.
          perform  f9400_material_key      using  xmska-matnr.
        endif.
      endloop.
      describe table xmska       lines  g_f_cnt_lines.
      if  g_f_cnt_lines is initial.        "no records left ?
        message s289.
      Kein Material in Selektion vorhanden.
        perform anforderungsbild.
      endif.
          sort xmska.
          loop at xmska.
            move-corresponding xmska to imska.
            collect imska.
          endloop.
          free xmska. refresh xmska.
          if xchar = ' '.
            loop at imska.
              move-corresponding imska to imskax.
              collect imskax.
            endloop.
            sort imskax.
          elseif xchar = 'X'.
            loop at imska.
              check imska-charg is initial.
              delete imska.
            endloop.
          endif.
    endform.                     "aktuelle_bst_sbbst_e
    *&      Form  TABELLEN_LESEN
          Lesen der Materialkurztexte (Tabelle MAKT),                    *
          der Mengeneinheiten (Tabelle MARA) und                         *
          Mengen- und Wertfortschreibung zum Material (Tabelle T134M)    *
          (Letzteres ist zum Aussortieren der unbewerteten bzw.          *
          kontierten Warenbewegungen notwendig)                          *
    form tabellen_lesen.
      if  not g_t_mat_key[] is initial.                         "n451923
      select the material masters
        select matnr meins mtart from mara
                       into corresponding fields of table imara
                       for all entries in g_t_mat_key
                                 where  matnr  =  g_t_mat_key-matnr.
      select the short text for all materials
      take only the necessary fields                          "n451923
        select matnr maktx       from makt                      "n451923
             into corresponding fields of table g_t_makt        "n451923
                       for all entries in g_t_mat_key
                       where  matnr = g_t_mat_key-matnr
                         and  spras = sy-langu.
        sort  imara              by  matnr.                     "n451923
        sort  g_t_makt           by  matnr.                     "n451923
        free                     g_t_mat_key.
      endif.
      data: begin of k1 occurs 0,
        mtart like t134m-mtart,
      end of k1.
      refresh k1.
      loop at imara.
        k1-mtart = imara-mtart.
        collect k1.
      endloop.
      if  not k1[] is initial.                                  "n451923
        select * from t134m
               into corresponding fields of table it134m
               for all entries in k1         where mtart = k1-mtart
                                             and   bwkey in g_ra_bwkey.
      endif.                                                    "n451923
      loop at it134m.
      read table organ with key bwkey = it134m-bwkey.
        perform  f9300_read_organ
                       using     c_bwkey     it134m-bwkey.
        if sy-subrc ne 0.
          delete it134m.
        endif.
      endloop.
    To find postings with valuation string, but without relevance for
    the valuated stock, Big-G recommended this logic:
    Take lines from MSEG where for the combination BUSTW/XAUTO=XBGBB
    there is an entry in T156W with key BSX.
      select bustw xbgbb from t156w
                         into corresponding fields of table it156w
                         where vorsl = 'BSX'.
      sort it156w by bustw xbgbb.
      delete adjacent duplicates from it156w.
      delete it156w where bustw = space.
    endform.                               " TABELLEN_LESEN
    *&      Form  UNBEWERTET_WEG
          Löschen der unbewerteten Materialien aus der internen          *
          Tabelle IMBEW
    form unbewertet_weg.
      sort  it134m               by bwkey mtart.                "n451923
                                                                "n450764
    delete the materials in plants without valuation          "n450764
      loop at g_t_mbew           into  g_s_mbew.                "n450764
        read table imara                                        "n450764
                       with key matnr = g_s_mbew-matnr          "n450764
                       binary search.                           "n450764
                                                                "n450764
        read table it134m with key bwkey = g_s_mbew-bwkey       "n450764
                                   mtart = imara-mtart binary search.
        if sy-subrc ne 0.
        message ...
          delete                 g_t_mbew.                      "n450764
        else.
          if it134m-wertu = ' '.
            delete               g_t_mbew.                      "n450764
          else.                                                 "n450764
          enrich the entries with the quantity unit           "n450764
            move    imara-meins  to    g_s_mbew-meins.          "n450764
            modify  g_t_mbew     from  g_s_mbew                 "n450764
                                 transporting  meins.           "n450764
          endif.
        endif.
      endloop.
    endform.                               " UNBEWERTET_WEG
    *&      Form  FI_BELEGE_LESEN                                          *
          Lesen der Buchhaltungsbelege                                   *
    Beim Erfassen der Werte ist es notwendig, die Buchhaltungsbelege    *
    zum Material zu lesen, um abweichende Werte zwischen Wareneingang   *
    und Rechnungseingang sowie Nachbelastungen zu berücksichtigen.      *
    form fi_belege_lesen.
    Not related to note 184465, but a significant performance issue
    if ORGAN is large due to many plants/storage locations.
      data: begin of t_bwkey occurs 0,                               "184465
              bwkey like bsim-bwkey,                                 "184465
            end of t_bwkey.                                          "184465
      loop at g_t_organ          where  keytype  =  c_bwkey.
        move g_t_organ-bwkey     to  t_bwkey-bwkey.
        collect t_bwkey.                                             "184465
      endloop.                                                       "184465
      read table t_bwkey index 1.                                    "184465
      check sy-subrc = 0.                                            "184465
      select * from bsim                                        "n443935
             into corresponding fields of table g_t_bsim_lean   "n443935
               for all entries in t_bwkey   where  bwkey = t_bwkey-bwkey
                                            and    matnr in matnr
                                            and    bwtar in bwtar
                                            and    budat >= datum-low.
      loop at g_t_bsim_lean      into  g_s_bsim_lean.           "n443935
        perform  f9300_read_organ
                       using     c_bwkey  g_s_bsim_lean-bwkey.  "n443935
        if  sy-subrc is initial.
        record found : the user has the authority, go on
          move  g_s_organ-bukrs  to  g_s_bsim_lean-bukrs.       "n443935
          modify  g_t_bsim_lean  from  g_s_bsim_lean            "n443935
                                 transporting  bukrs.           "n451923
        create working table with the keys for the FI documents
          move-corresponding  g_s_bsim_lean                     "n443935
                                 to  g_t_bkpf_key.              "n443935
          append                 g_t_bkpf_key.
        else.
          delete                 g_t_bsim_lean.                 "n443935
        endif.
      endloop.
    endform.                               " FI_BELEGE_LESEN
    *&      Form  BELEGE_SORTIEREN
       Die Materialbelege werden anhand des Buchungsdatums sortiert.
       Die Materialbelege mit Buchungsdatum zwischen 'datum-high'
       und dem aktuellen Datum werden in der internen Tabelle IMSWEG
       gesammelt, während die Materialbelege mit Buchungsdatum
       zwischen 'datum-low' und 'datum-high' in der internen Tabelle
       IMSEG verbleiben.
    form belege_sortieren.
      aktdat = sy-datlo + 30.
      if not ( datum-high is initial or datum-high > aktdat ).
        loop at g_t_mseg_lean    into  g_s_mseg_lean
                                 where budat > datum-high.
          move-corresponding g_s_mseg_lean to imsweg.
          append imsweg.
          delete                 g_t_mseg_lean.
        endloop.
      endif.
      describe table imsweg lines index_2.
    endform.                               " BELEGE_SORTIEREN
    *&      Form  KONTIERT_AUSSORTIEREN
          Aussortierung der kontierten Belegpositionen,                  *
          da diese Mengen nicht bestandsrelevant sind                    *
    form kontiert_aussortieren.
    process table g_t_mseg_lean
    loop at imseg where kzvbr <> space and                         "144845
        ( kzbew = 'B' or kzbew = 'F' ).                            "144845
        read table imara with key matnr = imseg-matnr.
        read table it134m with key mtart = imara-mtart.
        if not it134m-mengu is initial and not it134m-wertu is initial.
    Die Felder 'mengu' und 'wertu' (Mengen- bzw. Wertfortschreibung)
    sind ab Release 3.0 D auch in die Tabelle MSEG aufgenommen.
    Die Einträge in der Tabelle T134M stellen nach wie vor die generelle
    Einstellung dar; auf Positionsebene sind jedoch Abänderungen möglich,
    die anhand der Einträge in der Tabelle MSEG nachverfolgt werden
    können.
          delete imseg.
        endif.
    endloop.
      data : l_f_bwkey           like  t001k-bwkey.             "n497992
      sort  it134m               by  bwkey  mtart.              "n497992
      loop at g_t_mseg_lean      into  g_s_mseg_lean
                                 where  kzvbr <> space
                                   and ( kzbew = 'B' or kzbew = 'F' ).
      get the valuation area                                  "n497992
        if  curm = '3'.                                         "n497992
        valuation level is company code                       "n497992
          if  g_s_mseg_lean-bukrs is initial.                   "n497992
          get the valuation area for this plant               "n497992
            perform  f9300_read_organ                           "n497992
                       using     c_werks   g_s_mseg_lean-werks. "n497992
                                                                "n497992
            move  g_s_organ-bwkey     to  l_f_bwkey.            "n497992
          else.                                                 "n497992
            move  g_s_mseg_lean-bukrs to  l_f_bwkey.            "n497992
          endif.                                                "n497992
        else.                                                   "n497992
        valuation level is plant                              "n497992
          move  g_s_mseg_lean-werks   to  l_f_bwkey.            "n497992
        endif.                                                  "n497992
        read table imara with key matnr = g_s_mseg_lean-matnr
                                 binary search.
        if  sy-subrc is initial.
          read table it134m      with key  bwkey = l_f_bwkey    "n497992
                                           mtart = imara-mtart  "n497992
                                 binary search.
          if  sy-subrc is initial.
            if not it134m-mengu is initial and
               not it134m-wertu is initial.
              delete              g_t_mseg_lean.
            endif.
          endif.
        else.
          delete                  g_t_mseg_lean.
        endif.
      endloop.
    endform.                               " KONTIERT_AUSSORTIEREN
    *&      Form  BELEGE_ERGAENZEN (engl. enrich documents)
    Material documents and FI documents from BSIM are merged together.
    Complications:
    - A material document can have more than one FI document.
    - There are FI documents without material documnts
    - There are material documents without FI documents
    - The document type is customizeable
    - There is no link from the materia document position to
      the FI document entry in BSIM (except URZEILE, but this
      can be filled incorrectly)
    form belege_ergaenzen.                         "Version from note 204872
    - show the current activity and the progress              "n599218
      call function 'SAPGUI_PROGRESS_INDICATOR'                 "n599218
        exporting                                               "n599218
          text = text-061.       "Reading FI documents          "n599218
    Eliminate material documents with valuation string, but without
    relevance to the valuated stock. IT156W contains all valuation
    strings with posting key BSX. XBGBB says: "I am an accrural posting".
    For more details please ask Big-G.
      loop at g_t_mseg_lean      into  g_s_mseg_lean.
      special processing for tied empties active ?            "n497992
        if  not g_cust_tied_empties is initial.                 "n497992
        look for MM documents with xauto = L and change       "n497992
        indicators                                            "n497992
          case  g_s_mseg_lean-xauto.                            "n497992
            when  'X'.                                          "n497992
            when  space.                                        "n497992
            when  others.                                       "n547170
            range table g_ra_xauto contains the special       "n547170
            indicators for the transfer movements of the      "n547170
            tied empties                                      "n547170
              if  g_s_mseg_lean-xauto in g_ra_xauto.            "n547170
                move  g_s_mseg_lean-xauto                         "n497992
                                 to  g_s_mseg_lean-retail.        "n497992
                clear              g_s_mseg_lean-xauto.           "n497992
                modify  g_t_mseg_lean    from  g_s_mseg_lean      "n497992
                                 transporting xauto retail.       "n497992
              endif.                                            "n547170
          endcase.                                              "n497992
        endif.                                                  "n497992
        read table it156w        with key
                                 bustw = g_s_mseg_lean-bustw
                                 xbgbb = g_s_mseg_lean-xauto
                                 transporting no fields
                                 binary search.
        if sy-subrc <> 0.
          delete                 g_t_mseg_lean.
        else.                                                   "n443935
        enrich the current entry with the company code        "n443935
          perform f9300_read_organ                              "n443935
                       using     c_werks  g_s_mseg_lean-werks.  "n443935
                                                                "n443935
          check : sy-subrc is initial.                          "n443935
          move  g_s_organ-bukrs  to  g_s_mseg_lean-bukrs.       "n443935
          modify  g_t_mseg_lean  from  g_s_mseg_lean            "n443935
                                 transporting  bukrs.           "n451923
        endif.
      endloop.
    For all available FI documents from BSIM, read the header data
    from BKPF to get the link to the originating material document.
      if  not g_t_bkpf_key[] is initial.
      look for the header of the matching FI documents
        sort  g_t_bkpf_key       by  bukrs belnr gjahr.
        delete adjacent duplicates from g_t_bkpf_key.
      save result from database selection into global hashed  "n856424
      table g_t_bkpf                                          "n856424
        select  *                 from bkpf                     "n856424
          into corresponding fields of table g_t_bkpf           "n856424
               for all entries in g_t_bkpf_key
                       where  bukrs = g_t_bkpf_key-bukrs
                         and  belnr = g_t_bkpf_key-belnr
                         and  gjahr = g_t_bkpf_key-gjahr.
        if  sy-subrc is initial.
        create working table l_t_keytab_m
          free                   g_t_bkpf_key.
          loop at g_t_bsim_lean  into  g_s_bsim_lean.           "n443935
          enrich the working table g_t_bsim_lean with the     "n443935
          MM doc info                                         "n443935
                                                                "n443935
          look for the matching FI document header            "n443935
            read table g_t_bkpf  assigning           "n856424
                       with key  bukrs = g_s_bsim_lean-bukrs    "n443935
                                 belnr = g_s_bsim_lean-belnr    "n443935
                                 gjahr = g_s_bsim_lean-gjahr.   "n443935
                                                                "n443935
            if  sy-subrc is initial.                            "n443935
            enrich table G_T_BSIM_LEAN with the MM doc        "n443935
            consider only FI docs created by MM docs here     "n856424
              check :

    Hi Ravi,
    possibly a service pack has been installed just in the time when you created the copy. I found
        data: lt_sort type kkblo_t_sortinfo.                    "n890109
    in the include mentioned on our system. Please check if the includes are identical in development and production server (remote-compare from editor).
    But we also have a copy of this in our system. In the copy I found type name like alv_type_sortinfo but no kkblo_t_sortinfo.
    Note KKBLO was the predecessor of ALV.
    Must have to dio something with version changed by service pack.
    Regards,
    Clemens

  • Facing problem with a date column in select query

    Hi,
    I am facing problem with a date column. Below is my query and its fainling with " invalid number format model" .
    Query: SELECT *
    FROM EMP
    WHERE trunc(LAST_UPDATED) >= to_date(to_char(22-05-2009,'dd-mm-yyyy'),'dd-mm-yyyy')
    LAST_UPDATED column is "DATE" data type.
    Please help me Thanks

    Radhakrishna Sarma wrote:
    SeánMacGC wrote:
    WHERE LAST_UPDATED >= to_date('22-05-2009','dd-mm-yyyy');
    You do not need the TRUNC here in any case.
    I don't think so. What if the user wants only data for 22nd May and the table has records with date later than 22nd also? In that case your query willl not work. In order for the Index to work, I think the query can be written like this I think Sean is right though. Use of TRUNC Function is quiet useless based on the condition given here, since the to_date Function used by OP will always point to midnight of the specified date, in this case 22-05-2009 00:00:00.
    Regards,
    Jo
    Edit: I think Sean proved his point... ;)

  • Problem in SAVE_TEXT function module

    Hi all,
    I am facing problem in updating the text to PO when using the FM SAVE_TEXT. The first line of the header text is being populated but not second line. I am putting sqnumber as 2, but still it is not populating. I am using correct object name , id and etc..
    any idea.
    Sri

    Hi,
      Try something like:
    FORM update_text  USING    fp_rec_text  TYPE ty_text
                           fp_rec_vbeln_vbeln TYPE vbeln_va.
    *Local declaration
      DATA: l_header   TYPE thead,  "Header text
            l_rec_line TYPE tline.  "Text
      DATA: l_i_line TYPE STANDARD TABLE OF tline
                   INITIAL SIZE 0. " Internal Table for l_line
      l_header-tdobject = c_object.
      l_header-tdname = fp_rec_vbeln_vbeln.
      l_header-tdid = fp_rec_text-tdid.
      l_header-tdspras = c_lang.
      l_rec_line-tdformat = c_format.
      l_rec_line-tdline = fp_rec_text-tdline.
      APPEND l_rec_line TO l_i_line.
    *Call subroutine to modify text
      CALL FUNCTION 'SAVE_TEXT'
        EXPORTING
          client          = sy-mandt
          header          = l_header
          savemode_direct = c_flag
        TABLES
          lines           = l_i_line
        EXCEPTIONS
          id              = 1
          language        = 2
          name            = 3
          object          = 4
          OTHERS          = 5.
      IF sy-subrc <> 0.
        MESSAGE i000 WITH 'Standard text not saved'(075).
        LEAVE SCREEN.  "Leave screen
      ELSE.
    *Commit the Save of the Text
        CALL FUNCTION 'COMMIT_TEXT'
          EXPORTING
            name            = l_header-tdname
            savemode_direct = c_flag.
      ENDIF.
    ENDFORM.                    " update_text

  • Activating only one function-exit in a multiple function-exit in CMOD

    Dear All,
    I am using customer-exit for doing validation in PO during saving. I am using EXIT EXIT_SAPMM06E_012 under enhancement
    MM06E005. The code is working fine. The problem is that when I am activating the screen all the components under that enhancements are getting activated. There are 10 function-exits, 6 screen-exits and 2 incude tables. I have not  added any new screen or done custom include. I only want to activate EXIT_SAPMM06E_012, rest I want to deactivate. It is giving a dump in production server when we are trying to create a contract as it is looking for a screen 0211 which we have not created.
    Regards
    D. Mallick

    am using customer-exit for doing validation in PO during saving. I am using EXIT EXIT_SAPMM06E_012 under enhancement
    MM06E005. The code is working fine. The problem is that when I am activating the screen all the components under that enhancements are getting activated. There are 10 function-exits, 6 screen-exits and 2 incude tables. I have not added any new screen or done custom include. I only want to activate EXIT_SAPMM06E_012, rest I want to deactivate. It is giving a dump in production server when we are trying to create a contract as it is looking for a screen 0211 which we have not created.
    HI ,
    You can activate only one function exit EXIT_SAPMM06E_012, But you must and should create below empty screen and active Using SE51.
    SAPLXM06                       0101
    SAPLXM06                       0111
    SAPLXM06                       0201
    SAPLXM06                       0211
    SAPLXM06                       0301
    SAPLXM06                       0311
    Thanks & Regards
    Sudheer Madisetty

  • Regarding SHipment function exit

    Hi Experts,
                    I have to update some custom table in the function exit of  VT01n transaction code based on some condition.
    I have done it using update statement as it is custom table there is no problem.
    BUT in the code After that UPDATE statement ,based on some condition i have to through a message which will stop the transactionn.
    In that case if i exit from the transaction using exit button in the menu bar, the updated custom table has to roll back.
    Can i use ROLL BACK Statement. in the function exit in that case.
    If i use that ,does it effect any standard functionality.
    Orelse is there any alternative solution for that.
    Regards
    Ramakrishna L

    Hi Ramakrishna,
    If u r updating the custom table in the same exit where u r throwing the message , don't use the commit work after updating the table. use it at end of the exit.
    Regards,
    Srinivas.

Maybe you are looking for

  • ABAP Command in Transformation routine

    Hi   I had a Internal Table used in Lookup of a Transformation which is being populated from a Active Table of DSO.   The Internal table has about 5 fields.   My requirment is to check the data in the IT Stable after the select statement and Replace

  • How to upload file on Application Server with Forms 6i?

    Please, I need to upload .csv file from local to Application Server, I think to use .jsp application, but I don't know where I had to put it...Apache can't read .jsp file without Tomcat? If I launch my .jsp file from Apache/htdocs directory can't vie

  • Pricing error in intercompany billing

    My client is using the intercompany billing process. There is a BOM item with item category group LUMF and the pricing happens at sub item level. In the sales order and the customer billing document the pricing happens at sub item level only. But in

  • Can we use SSD in D13 VMs as a backup location

    Team, Any comment, as it is taking us 4-5 hours to take 80GB backup on storage space  on D13 VM. While looking to reduce this time, thought of using SSD as a backup location(underlying assumption that it has faster read/write speed although it is not

  • Exception creating Access application in SharePoint 2013

    Good afternoon. I'm trying to create an Access 2013 application in Sharepoint 2013. The creation process completes successfully but when I open the application the following problems occur: Seeking Sharepoint logs I found the following exception whic