LSMW updating problem with direct input method

Hi!
Using version 4.0.0 of the LSM Workbench from 2001-07-01 on SAP R/3 4.7, I need to update the purchase order text and wanted to use the direct input method.  I found a tutorial on SAPTechnical which I followed.  All went well, the input data was converted and at last I got the message:
"Long Texts in Total : 2
Successfully Transferred Long Texts : 2
Non-Transferred Long Texts : 0"
My trials are recorded in table STXH with date and time and also in the material master change history.  However, the result in the material master is that the purchase order text is NOT updated.
Can anyone tell me why this might be?

Hi Santosh!
First of all, thank you very much for posting an answer.  But unfortunately it was of no help.  I want to update the purchase order text on a material that already has the purchasing and purchase order text views. When I compare the PO text before and after my "Successfuly Transferred Long Texts" there is no change.  I hope that this make it more clear but it is still a mystery to me.

Similar Messages

  • Problem with direct input program while uploading data into database

    TABLES:  BGR00,                        " Mappensatz
             BMM00,                        " MM01/MM02  BTCI-Kopfdaten
             BMMH1,                        " MM01/MM02 Hauptdaten
             BMMH2,                        " Länderdaten (Steuern)
             BMMH3,                        " Prognosewerte
             BMMH4,                        " Verbrauchswerte
             BMMH5,                        " Kurztexte
             BMMH6,                        " Mengeneinheiten
             BMMH7,                        " Langtexte
             BMMH8.                        " Referentielle EAN's
           Satztypen
    DATA:    MAPPENSATZ  LIKE BMM00-STYPE VALUE '0',
             KOPFSATZ    LIKE BMM00-STYPE VALUE '1',
             HAUPTSATZ   LIKE BMM00-STYPE VALUE '2',
             KUN_SATZ    LIKE BMM00-STYPE VALUE 'Z',
             LANDSATZ    LIKE BMM00-STYPE VALUE '3',
             PROGSATZ    LIKE BMM00-STYPE VALUE '4',
             VERBSATZ    LIKE BMM00-STYPE VALUE '5',
             KTEXTSATZ   LIKE BMM00-STYPE VALUE '6',
             MESATZ      LIKE BMM00-STYPE VALUE '7',
             TEXTSATZ    LIKE BMM00-STYPE VALUE '8',
             EANSATZ     LIKE BMM00-STYPE VALUE '9'.
    Common Data Bereich fuer die extern aufgerufenen Routinen
           Initialstrukturen
    DATA:  BEGIN OF COMMON PART RMMMBIMY.
    DATA:    BEGIN OF I_BMM00.
               INCLUDE STRUCTURE BMM00.    " Kopfdaten
    DATA:    END OF I_BMM00.
    DATA:    BEGIN OF I_BMMH1.
               INCLUDE STRUCTURE BMMH1.    " Haupdaten
    DATA:    END OF I_BMMH1.
    DATA:    BEGIN OF I_BMMH2.
               INCLUDE STRUCTURE BMMH2.    " Länderdaten
    DATA:    END OF I_BMMH2.
    DATA:    BEGIN OF I_BMMH3.
               INCLUDE STRUCTURE BMMH3.    " Prognosewerte
    DATA:    END OF I_BMMH3.
    DATA:    BEGIN OF I_BMMH4.
               INCLUDE STRUCTURE BMMH4.    " Verbrauchswerte
    DATA:    END OF I_BMMH4.
    DATA:    BEGIN OF I_BMMH5.
               INCLUDE STRUCTURE BMMH5.    " Kurztexte
    DATA:    END OF I_BMMH5.
    DATA:    BEGIN OF I_BMMH6.
               INCLUDE STRUCTURE BMMH6.    " Mengeneinheiten
    DATA:    END OF I_BMMH6.
    DATA:    BEGIN OF I_BMMH7.
               INCLUDE STRUCTURE BMMH7.    " Textzeilen
    DATA:    END OF I_BMMH7.
    DATA:    BEGIN OF I_BMMH8.
               INCLUDE STRUCTURE BMMH8.    " Referentielle EAN's
    DATA:    END OF I_BMMH8.
    DATA:  END OF COMMON PART.
    DATA: WA LIKE TEDATA-DATA.
           Einzelfelder
    DATA:    GROUP_COUNT(6) TYPE C,    " Anzahl Mappen
             TRANS_COUNT(6) TYPE C,    " alte Definition für rmmmbim0
             SATZ_COUNT  LIKE MUEB_REST-TRANC, " Trans.zähler neu
             H_IND_COUNT LIKE MUEB_REST-D_IND, " Index welches Feld zurücks.
             SATZ2_COUNT(6) TYPE C.    " Anz. Sätze je Trans. ohne Kopfsatz
    DATA:    XEOF(1)          TYPE C,  " X=End of File erreicht
             XHAUPTSATZ_EXIST TYPE C,  " X=Hauptsatz zum Kopf exi.
             NODATA(1)        TYPE C.  " kein BI für dieses Feld
    mk/15.08.94:
    DATA:    GROUP_OPEN(1)  TYPE C.             " X=Mappe schon geöffnet
    *eject
           Konstanten
    DATA:    C_NODATA(1)    TYPE C VALUE '/'.   " Default für NODATA
    DATA:    MATNR_ERW     LIKE MARA-MATNR  VALUE '0                 '.
    DATA:    MATNR_ERW_INT LIKE MARA-MATNR.  "internal sight of '0      '
    DATA:    MATNR_LAST    LIKE MARA-MATNR.  "Material number
    mk/11.08.94 2.1H:
    If this flag is initial, the database updates will be done directly
    during background maintenance instead of using a separate update
    task. (no usage of this flag in dialogue mode!)
    DATA: DBUPDATE_VB(1) VALUE ' '.       "note 306628
    data: matsync type mat_sync. "wk/99a no update in dialog if called
    ***INCLUDE ZMUSD070.
    TABLES: MARA,                          "Material Master: General Data
            MARC,                          "Material Master: C Segment
            MARD,                          "Material Master: St Loc/Batch
            MBEW,                          "Material Valuation
            MVKE,                          "Material Master: Sales Data
            MLGN,                          "Material Data per Whse Number
            MLAN,                          "Tax Classification: Material
            T001W,                         "Plants/Branches
            TBICU.
    DATA: BEGIN OF VALUTAB OCCURS 0.
            INCLUDE STRUCTURE RSPARAMS.
    DATA: END OF VALUTAB.
    DATA: BEGIN OF VARTECH.
            INCLUDE STRUCTURE VARID.
    DATA: END OF VARTECH.
    DATA: PARMS LIKE ZXXDCONV.
    DATA: REC_COUNT      TYPE  I,
          REC_COUNT_BAD  TYPE  I,
          ZJOBID         LIKE  TBIZU-JOBID,
          ZJOBCOUNT      LIKE  TBIZU-JOBCOUNT,
          ZMATNR         LIKE  MARA-MATNR,
          ZTEXT(80)      TYPE  C.
    CONSTANTS: LIT_ZERO(18)  TYPE  C            VALUE '000000000000000000',
               LIT_CHAR      TYPE  C            VALUE '_',
               LIT_CREATE    LIKE  BMM00-TCODE  VALUE 'MM01',
               LIT_CHANGE    LIKE  BMM00-TCODE  VALUE 'MM02',
               LIT_CHECK(1)  TYPE  C            VALUE 'X'.
    DATA:  BEGIN OF INP_DATA OCCURS 0,
             MATNR(18)  TYPE C,            " Material code
             UMREN(6)   TYPE C,            " Denominator
             MEINH(3)   TYPE C,            " Alternate UOM
             UMREZ(6)   TYPE C,            " Numerator
           END OF INP_DATA.
    *eject
    SELECTION-SCREEN BEGIN OF BLOCK INOUT WITH FRAME TITLE TEXT-001.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT (13) TEXT-004.
    PARAMETERS:     P_PC        RADIOBUTTON GROUP SRC DEFAULT 'X'.
    SELECTION-SCREEN COMMENT (6) TEXT-005.
    PARAMETERS:     P_UNIX      RADIOBUTTON GROUP SRC.
    SELECTION-SCREEN COMMENT (6) TEXT-006.
    PARAMETERS:     P_DS_TYP    LIKE     ZXXDCONV-DS_TYP
                                   DEFAULT 'ASC'.
    SELECTION-SCREEN END OF LINE.
    *SELECT-OPTIONS: S_PATH      FOR      PARMS-PATH
                                  NO INTERVALS
                                  LOWER CASE.
    PARAMETERS:  P_PATH TYPE RLGRAP-FILENAME.
    PARAMETERS:     P_HDRLIN   LIKE     ZXXDCONV-HDR_LINES
                                   DEFAULT 0,
                    P_JOBNAM   LIKE     TBICU_S-JOBNAME
                                   MEMORY ID BM1,
                    P_DI_EXE    AS       CHECKBOX
                                   DEFAULT  LIT_CHECK,
                    P_MAPPE     LIKE     BGR00-GROUP
                                   DEFAULT  'MRP_UOM_LOAD'
                                   NO-DISPLAY.
    SELECTION-SCREEN END OF BLOCK INOUT.
    *eject
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_PATH.
      CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
           EXPORTING
                PROGRAM_NAME  = SYST-REPID
                DYNPRO_NUMBER = SYST-DYNNR
                FIELD_NAME    = 'P_PATH'
           CHANGING
               FILE_NAME     = S_PATH-LOW
                FILE_NAME     = P_PATH
           EXCEPTIONS
                MASK_TOO_LONG = 1
                OTHERS        = 2.
    AT SELECTION-SCREEN.
    Set up parameter record
      PARMS-UNIX      = P_UNIX.
      PARMS-PC        = P_PC.
      PARMS-DS_TYP    = P_DS_TYP.
      PARMS-JOBNAME   = P_JOBNAM.
      PARMS-MAPPE     = P_MAPPE.
      PARMS-HDR_LINES = P_HDRLIN.
    *eject
           Main Processing Routine                                       *
    START-OF-SELECTION.
    Initialization
      PERFORM 0000_HOUSEKEEPING.
    Initialize transaction data in I_BM00
    PERFORM 0500_INIT_BMM00.
    Process input files
    SORT S_PATH BY SIGN OPTION LOW.
         MOVE S_PATH-LOW TO PARMS-PATH.
          MOVE P_PATH TO PARMS-PATH.
    LOOP AT S_PATH.
       AT NEW LOW.
          CLEAR   INP_DATA.
         REFRESH INP_DATA.
    Read source data into internal table
          PERFORM 1000_GET_SOURCE_DATA TABLES INP_DATA.
    Processs each record in internal table
          ZTEXT    = TEXT-007.
          ZTEXT+13 = PARMS-DS_NAME.
          PERFORM 4000_PROGRESS_INDICATOR USING ZTEXT.
    Initialize transaction data in I_BM00
      PERFORM 0500_INIT_BMM00.
          LOOP AT INP_DATA.
    Reset tables for each record
            BMM00              = I_BMM00.
            BMMH1              = I_BMMH1.
            BMMH6              = I_BMMH6.
    Load structures with data
            MOVE-CORRESPONDING INP_DATA TO BMM00.
            PERFORM 2000_WRITE_OUTPUT USING BMM00.
            MOVE-CORRESPONDING INP_DATA TO BMMH1.
            PERFORM 2000_WRITE_OUTPUT USING BMMH1.
            MOVE-CORRESPONDING INP_DATA TO BMMH6.
            PERFORM 2000_WRITE_OUTPUT USING BMMH6.
            REC_COUNT = REC_COUNT + 1.
          ENDLOOP.
       ENDAT.
    ENDLOOP.
      IF  REC_COUNT GT 0
      AND P_DI_EXE  EQ LIT_CHECK.
        PERFORM 3000_START_DI_JOB.
      ENDIF.
    WRITE: / TEXT-008,
               REC_COUNT.
      PERFORM 9000_END_OF_JOB.
    *eject
    Include containing common routines used by direct input programs
      INCLUDE ZMUSD071.
    *eject
          FORM 0500_INIT_BMM00                                          *
          Initialize I_BMM00 with transaction code and views selected   *
    FORM 0500_INIT_BMM00.
    ***this changes done by samson**
    if not inp_data[] is initial.
    select single matnr from mara INTO ZMATNR where matnr = inp_data-matnr.
    if sy-subrc = 0.
      I_BMM00-TCODE = LIT_CHANGE.
    Basic data
      I_BMM00-XEIK1  = LIT_CHECK.
    else.
      I_BMM00-TCODE = LIT_CREATE.
    Basic data
      I_BMM00-XEIK1 = LIT_CHECK.
    endif.
    endif.
    **this changes above done by samson**
    Transaction code
    I_BMM00-TCODE = LIT_CHANGE.
    Basic data
    I_BMM00-XEIK1  = LIT_CHECK.
    ENDFORM.
    INCLUDE ZMUSD069.
    *eject
          FORM 0000_HOUSEKEEPING                                        *
          Initialization routines                                       *
    FORM 0000_HOUSEKEEPING.
      PERFORM 0010_LDS_NAME.
      PERFORM 0020_DS_NAME.
      PERFORM 0030_OPEN_FILE.
      PERFORM 0040_INIT_STRUCTS.
    ENDFORM.
    *eject
          FORM 0010_LDS_NAME                                            *
          Obtain logical file name from DI job details                  *
    FORM 0010_LDS_NAME.
    Check valid job name
      SELECT SINGLE * FROM  TBICU
                      WHERE JOBNAME EQ PARMS-JOBNAME.
      IF SY-SUBRC EQ 0.
        CALL FUNCTION 'RS_VARIANT_VALUES_TECH_DATA'
             EXPORTING
                  REPORT               = TBICU-REPNAME
                  VARIANT              = TBICU-VARIANT
             IMPORTING
                  TECHN_DATA           = VARTECH
             TABLES
                  VARIANT_VALUES       = VALUTAB
             EXCEPTIONS
                  VARIANT_NON_EXISTENT = 1
                  VARIANT_OBSOLETE     = 2
                  OTHERS               = 3.
        IF SY-SUBRC EQ 0.
          READ TABLE VALUTAB WITH KEY 'LDS_NAME'.
          MOVE VALUTAB-LOW TO PARMS-LDS_NAME.
        ELSE.
          MESSAGE I001 WITH PARMS-JOBNAME.
          MESSAGE A099.
        ENDIF.
      ELSE.
        MESSAGE I000 WITH PARMS-JOBNAME.
        MESSAGE A099.
      ENDIF.
    ENDFORM.
    *eject
          FORM 0040_INIT_STRUCTS                                        *
          Initialize structures for direct input records                *
    FORM 0040_INIT_STRUCTS.
    Start of standard SAP initialization from example program RMMMBIME
    *------- Write session record -
      CLEAR BGR00.
      BGR00-STYPE  = MAPPENSATZ.
      BGR00-GROUP  = PARMS-MAPPE.
      BGR00-NODATA = C_NODATA.
      BGR00-MANDT  = SY-MANDT.
      BGR00-USNAM  = SY-UNAME.
      BGR00-START  = BGR00-NODATA.
      BGR00-XKEEP  = BGR00-NODATA.
      PERFORM 2000_WRITE_OUTPUT USING BGR00.
    *----- Initialize structures -
      NODATA = BGR00-NODATA.
      PERFORM INIT_STRUKTUREN_ERZEUGEN(RMMMBIMI) USING NODATA.
    End of standard SAP initialization from example program RMMMBIME
    ENDFORM.
    *eject.
          FORM 3000_START_DI_JOB                                        *
          Start direct input job                                        *
    FORM 3000_START_DI_JOB.
      ZTEXT = 'Starting '(021).
      ZTEXT+9 = TBICU-JOBNAME.
      PERFORM 4000_PROGRESS_INDICATOR USING ZTEXT.
      CALL FUNCTION 'BI_START_JOB'
           EXPORTING
                JOBID                 = ' '
                JOBTEXT               = TBICU-JOBNAME
                REPNAME               = TBICU-REPNAME
                SERVER                = TBICU-EXECSERVER
                VARIANT               = TBICU-VARIANT
                NEW_JOB               = 'X'
                CONTINUE_JOB          = ' '
                START_IMMEDIATE       = 'X'
                DO_NOT_PRINT          = 'X'
                USERNAME              = SY-UNAME
           IMPORTING
                JOBID                 = ZJOBID
                JOBCOUNT              = ZJOBCOUNT
           EXCEPTIONS
                JOB_OPEN_FAILED       = 1
                JOB_CLOSE_FAILED      = 2
                JOB_SUBMIT_FAILED     = 3
                WRONG_PARAMETERS      = 4
                JOB_DOES_NOT_EXIST    = 5
                WRONG_STARTTIME_GIVEN = 6
                JOB_NOT_RELEASED      = 7
                WRONG_VARIANT         = 8
                NO_AUTHORITY          = 9
                DIALOG_CANCELLED      = 10
                JOB_ALREADY_EXISTS    = 11
                PERIODIC_NOT_ALLOWED  = 12
                ERROR_NUMBER_GET_NEXT = 13
                OTHERS                = 14.
      IF SY-SUBRC EQ 0.
        WRITE: / 'Direct input job'(022), TBICU-JOBNAME, 'started'.
      ELSE.
        WRITE: / 'Direct input failed with return code'(023), SY-SUBRC.
      ENDIF.
    FORM 0020_DS_NAME.
      CALL FUNCTION 'FILE_GET_NAME'
           EXPORTING
                CLIENT           = SY-MANDT
                LOGICAL_FILENAME = PARMS-LDS_NAME
                OPERATING_SYSTEM = SY-OPSYS
           IMPORTING
                FILE_NAME        = PARMS-DS_NAME
           EXCEPTIONS
                FILE_NOT_FOUND   = 1
                OTHERS           = 2.
      IF SY-SUBRC NE 0.
        MESSAGE E002 WITH PARMS-LDS_NAME.
        MESSAGE A099.
      ENDIF.
    ENDFORM.
    *eject
          FORM 0030_OPEN_FILE                                           *
          Open physical file for output                                 *
    FORM 0030_OPEN_FILE.
    OPEN DATASET PARMS-DS_NAME FOR OUTPUT IN TEXT MODE. "thg191105
      OPEN DATASET PARMS-DS_NAME FOR OUTPUT IN TEXT MODE
                                     encoding default. "thg191105
      IF SY-SUBRC NE 0.
        MESSAGE E003 WITH PARMS-DS_NAME.
        MESSAGE A099.
      ENDIF.
    ENDFORM.
    *eject
          FORM 1000_GET_SOURCE_DATA                                     *
          Read source data into internal table                          *
    -->  INP_DATA   " Name of internal table passed as parameter       *
    FORM 1000_GET_SOURCE_DATA TABLES INP_DATA.
      CALL FUNCTION 'Z_FILE_UPLOAD'
           EXPORTING
                UNIX                = PARMS-UNIX
                PC                  = PARMS-PC
                FILETYPE            = PARMS-DS_TYP
                FILENAME            = PARMS-PATH
                HDR_LINES           = PARMS-HDR_LINES
           TABLES
                DATA_TAB            = INP_DATA
           EXCEPTIONS
                CONVERSION_ERROR    = 1
                FILE_OPEN_ERROR     = 2
                FILE_READ_ERROR     = 3
                INVALID_TABLE_WIDTH = 4
                INVALID_TYPE        = 5
                NO_BATCH            = 6
                UNKNOWN_ERROR       = 7
                INVALID_SOURCE      = 8
                OTHERS              = 9.
    ENDFORM.
    *eject
          FORM 2000_WRITE_OUTPUT                                        *
          Write record in standard SAP structure to UNIX file           *
    -->  I_STRUCT   " Name of record passed as parameter               *
    *FORM 2000_WRITE_OUTPUT USING I_STRUCT."SRY28NOV05
    FORM 2000_WRITE_OUTPUT USING I_STRUCT TYPE ANY.      "SRY28NOV05
       TRANSFER I_STRUCT TO PARMS-DS_NAME.
      IF SY-SUBRC NE 0.
        MESSAGE E004 WITH PARMS-DS_NAME.
        MESSAGE A099.
      ENDIF.
    ENDFORM.
    *eject
    *&      Form  2100_WS_DOWNLOAD
          text                                                           *
    -->  p1        text
    <--  p2        text
    FORM 2100_WS_DOWNLOAD TABLES INP_DATA.
    DATA: FILENAME LIKE RLGRAP-FILENAME.   "SRY28NOV05
      DATA: W_FILENAME TYPE STRING.             "SRY28NOV05
      DATA: W_FTYP(10) TYPE C VALUE 'DAT'.      "SRY28NOV05
    MOVE PARMS-DS_NAME TO FILENAME.       "SRY28NOV05
      MOVE PARMS-DS_NAME TO W_FILENAME.      "SRY28NOV05
    *BEGIN OF BLOCK COMMENT BY SRY28NOV05
    CALL FUNCTION 'WS_DOWNLOAD'
          EXPORTING
            BIN_FILESIZE        = ' '
            CODEPAGE            = ' '
               FILENAME            = FILENAME
               FILETYPE            = 'DAT'
            MODE                = ' '
            WK1_N_FORMAT        = ' '
            WK1_N_SIZE          = ' '
            WK1_T_FORMAT        = ' '
            WK1_T_SIZE          = ' '
            COL_SELECT          = ' '
            COL_SELECTMASK      = ' '
       importing
            filelength          =
          TABLES
               DATA_TAB            = INP_DATA
            FIELDNAMES          =
          EXCEPTIONS
               FILE_OPEN_ERROR     = 1
               FILE_WRITE_ERROR    = 2
               INVALID_FILESIZE    = 3
               INVALID_TABLE_WIDTH = 4
               INVALID_TYPE        = 5
               NO_BATCH            = 6
               UNKNOWN_ERROR       = 7
               OTHERS              = 8.
    *END OF BLOCK COMMENT BY SRY28NOV05
    *BEGIN OF BLOCK ADDED BY SRY28NOV05
      CALL FUNCTION 'GUI_DOWNLOAD'
        EXPORTING
          FILENAME                        = W_FILENAME
          FILETYPE                        = W_FTYP
        TABLES
          DATA_TAB                        = INP_DATA
       EXCEPTIONS
         FILE_WRITE_ERROR                = 1
         NO_BATCH                        = 2
         GUI_REFUSE_FILETRANSFER         = 3
         INVALID_TYPE                    = 4
         NO_AUTHORITY                    = 5
         UNKNOWN_ERROR                   = 6
         HEADER_NOT_ALLOWED              = 7
         SEPARATOR_NOT_ALLOWED           = 8
         FILESIZE_NOT_ALLOWED            = 9
         HEADER_TOO_LONG                 = 10
         DP_ERROR_CREATE                 = 11
         DP_ERROR_SEND                   = 12
         DP_ERROR_WRITE                  = 13
         UNKNOWN_DP_ERROR                = 14
         ACCESS_DENIED                   = 15
         DP_OUT_OF_MEMORY                = 16
         DISK_FULL                       = 17
         DP_TIMEOUT                      = 18
         FILE_NOT_FOUND                  = 19
         DATAPROVIDER_EXCEPTION          = 20
         CONTROL_FLUSH_ERROR             = 21
         OTHERS                          = 22.
      IF SY-SUBRC NE 0.
         MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
               WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    *END OF BLOCK ADDED BY SRY28NOV05
    ENDFORM.                               " 2100_WS_DOWNLOAD
    *eject
          FORM 4000_PROGRESS_INDICATOR                                  *
          Write progress text to status bar                             *
    -->  TEXT   " Text passed as parameter                             *
    FORM 4000_PROGRESS_INDICATOR USING TEXT.
      CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
           EXPORTING
                PERCENTAGE = 0
                TEXT       = TEXT
           EXCEPTIONS
                OTHERS     = 1.
    ENDFORM.
    *eject.
          FORM 9000_END_OF_JOB                                          *
          Close files on UNIX                                           *
    FORM 9000_END_OF_JOB.
      CLOSE DATASET PARMS-DS_NAME.
    ENDFORM.
    FORM 1000_GET_SOURCE_DATA TABLES INP_DATA.
      CALL FUNCTION 'Z_FILE_UPLOAD'
           EXPORTING
                UNIX                = PARMS-UNIX
                PC                  = PARMS-PC
                FILETYPE            = PARMS-DS_TYP
                FILENAME            = PARMS-PATH
                HDR_LINES           = PARMS-HDR_LINES
           TABLES
                DATA_TAB            = INP_DATA
           EXCEPTIONS
                CONVERSION_ERROR    = 1
                FILE_OPEN_ERROR     = 2
                FILE_READ_ERROR     = 3
                INVALID_TABLE_WIDTH = 4
                INVALID_TYPE        = 5
                NO_BATCH            = 6
                UNKNOWN_ERROR       = 7
                INVALID_SOURCE      = 8
                OTHERS              = 9.
    ENDFORM.
    *eject
          FORM 2000_WRITE_OUTPUT                                        *
          Write record in standard SAP structure to UNIX file           *
    -->  I_STRUCT   " Name of record passed as parameter               *
    *FORM 2000_WRITE_OUTPUT USING I_STRUCT."SRY28NOV05
    FORM 2000_WRITE_OUTPUT USING I_STRUCT TYPE ANY.      "SRY28NOV05
       TRANSFER I_STRUCT TO PARMS-DS_NAME.
      IF SY-SUBRC NE 0.
        MESSAGE E004 WITH PARMS-DS_NAME.
        MESSAGE A099.
      ENDIF.
    ENDFORM.
    *eject
    *&      Form  2100_WS_DOWNLOAD
          text                                                           *
    -->  p1        text
    <--  p2        text
    FORM 2100_WS_DOWNLOAD TABLES INP_DATA.

    Hi,
    Thnaks for your reply, This is my requirement.
    Here my problem is i am trying to upload the data from flatfile which contain materil number, denominator, Actual UOM, Nominator field values.
    Which is the data i need to upload into MM02 and MM01, if material number is new then it has to create the material, if material is already existing it has to update the UOM values.
    here i am getting data into my internal table INP_DATA, from that i am trying to upload the data to database by using job name MRP_MATERIAL_MASTER_DATA_UPLOAD with direct input program RMDATIND.
    when i execute my program i am getting success message all the records writtin from flatfile to application server. and job started message.
    then if i go into sm37 screen there i execute the job it is also giving active message. if i refresh it it is showing job completed message.
    then i look at job log status. there i found that for existing material it is expecting material type, for new material it is giving some gravity error.
    So could u help me in this it will be gr8.
    Thanks & Regards,
    RamNV

  • Special character "/" replacing with blank with Direct Input Method posting

    Hi All,
    I am posting FI historical data using Direct Input Method. Payment term contains special character "/"( I/E). SAP standard program replacing Special character "/" with blank (I E) so document posting is failing. Could you please advise.
    Thanks
    Chandra.

    Can You please specify the Transaction code and SAP program name for direct input.

  • Material Master upload - LSMW direct input method - Internal Number problem

    Dear friends,
    I am uploading material masters with LSMW - Direct Input Method.
    The materials have internal numbers.
    I have four plants and I want to extend the same material in all plants.
    But LSMW is creating a new material for each row.
    Is there any way out or any indication I put in file to repeat the internal numbers created for all other plants?
    I can create another LSMW for material extension. But I want to know whether the problem can be solved in the current LSMW?
    Regards,
    Avinash

    http://www.sap123.com/a/98/
    Check the internal number range once.... before extending mateial...

  • LSMW Direct input method: 0150 Characteristics with Values

    I am trying to upload several characteristics with Values using LSMW Direct Input method 0150.I have defined 2 level structure for Characetristic header and values. Have set the relevant indicators as 1 for characterisitc data and 2 for Values. I have set the T-code to CT04.I am trying to upload the data but only Characteristic data is getting generated and not the values. Can anyone help me out as to what may be the reason.
    The fields I have in my uploading template is as below:
    LINK     NAME     DESCRIPT     STATUS     FORMAT     LENGTH     DECIMALS     UNIT     WERT
    1     TON     WEIGHT LIFT CAPACITY     1     NUM     8     0     ton     
    2                                        20
    2                                        50
    2                                        60
    2                                        70
    2                                        100
    The Fields I have mapped in Source structre are:
    Source Fields
            CHARACTERISTIC            PM Characteristics
                LINK                           C(001)    Identify Field Content:1
                                               Identifing Field Content: 1
                NAME                           C(030)    Characteristic Name
                DESCRIPT                       C(030)    Characteristic description
                STATUS                         C(001)    Status of a characteristic
                FORMAT                         C(004)    Data Type
                LENGTH                         C(002)    Number of Characters
                DECIMALS                       C(002)    Number of Decimal Places
                UNIT                           C(006)    Unit of Measure, Language-
                CHARACTVALUE              Characterisitc Values
                    LINK                           C(001)    Identify field content
                                                   Identifing Field Content: 2
                    BLANK1                         C(001)    Blank1
                    BLANK3                         C(001)    Blank3
                    BLANK2                         C(001)    Blank2
                    BLANK4                         C(001)    Blank4
                    BLANK5                         C(001)    Blank5
                    BLANK7                         C(001)    Blank7
                    BLANK6                         C(001)    Blank6
                    WERT                           C(030)    Characteristic Value
    Source Structure is:
    Source Structures
            CHARACTERISTIC           PM Characteristics
             CHARACTVALUE             Characterisitc Values
    Structure relation is as below:
    Structure Relations
            BGR00 Batch Input Structure for Session Data                       <<<< CHARACTERISTIC PM Characteristics
                  Select Target Structure BGR00 .
                BIMST Batch input for characteristics                              <<<< CHARACTERISTIC PM Characteristics
                      Select Target Structure BIMST .
                    BIMZW Batch Input: Allowed Characteristic Values                   <<<< CHARACTVALUE   Characterisitc Values
    Can anyone help me resolve this issue.....
    Thanks in advance
    Murad

    Hi,
    Go through this links its might helpfull to you.
    Re: Porblem during characteristics LSMW
    Assigning Characteristics to a class using LSMW
    Issues Uploading Characteristics Data into SAP Using LSMW
    LSMW: CHaracteristics Load
    Thank you,

  • LSMW direct input method - Equipment BOM

    Hi Experts,
    We have already written program for equipment BOM master in LSMW direct input method. I do not know about this direct input method.
    Here they have maintained 2 source structures and relavant source fields. one for BOM header and other for BOM items. The first field they maintained is LINK in both the source fields. I really do not know what that field is all about. I checked in step specify files and found that they have previously mentioned two files, one for BOM header and other for BOM items. but when I tried to save in this step it gives me error that " No logical path specified". Can anybody tell me what is this error is all about.Please heip me to get out of this problem.
    Thanks and best regards,
    Praveen

    Hi praveen,
    LSMW does not accept two files.
    In the step create source strcture
    crte one structure with BOM header like with ZBOM_H.
    Under that create another structure for item ZBOM_I.
    ZBOM_H
      ZBOM_I like this structure will will be.
    In the step source fields.
    crate onne variable with indicatoe header.While creating the variable we have field 'identify field content ' field in pop up screen 'H'.
    assign all header files under identifier 'H'.
    then under ZBOM_I create identifier with 'I'.
    Assign all the item fields to this.
    then map the fields.
    In the file should be H header fields.
                                  I item fields.
                                  I
                                  I.
    Then Header .It should be like this.
    in saptechnical u will get the examples go though them once.
    Thanks

  • Difference between batch input method and direct input method in LSMW.

    Hi all,
    what is difference between batch input method and direct input method in LSMW. are they same?if differences are there tell me with details?

    Hi,
    Here are few differences bw Batch Input and Direct Inputs methods.
    Batch Input: Uses classical BDC approach, but doesn't required an ABAP program to be written to format the BDC DATA. The user has to format the data using predefined structures and store it in a flat file. Yet it is a slower updation method.
    Direct Input: Works similar to Batch Input programs. The difference is, instead of processing screens they validate fields and directly load the data into tables using standard function modules. Much faster and suits for large volume of data.
    Thanks.
    DhanaLakshmi M S

  • LSMW Direct input method error

    Hi experts,
       I created the LSMW using direct input method (PR Creation).
       In the create batch input session step (executed) i am getting below
    message and follwed bt processing terminated message and going out
      Transaction 0: transaction code / not supported
    what could be the problem ? any problem in specifying logical path .
    pls let me know the solution.
    Thanks
    sai

    Hi chenna,
       Thanks for reply, I added the tcode and now getting the message like the session was created
    but when i see in sm35 there is no  seesion created and there is no log also.
    what could be the reason? pls explain
    thanks
    sai

  • Problem in lsmw for purchase order (direct input)

    hi friends,
    i am trying to upload po using lsmw by direct input method.
    only problem is it is not taking delivery date properly.
    at the end error message is 'plz enter valid delivery date'.
    can any one tell me why it is happning.
    thanks
    sonu

    Check the format of your date and check the format expected.
    sometimes you can have diff like YYYYMMDD, MM.DD.YYYY,...
    Look at the converted data.
    Hope this helps,
    Erwan

  • Error Log in Direct Input Method of LSMW

    Hello!
    We are developing an upload through LSMW using its direct input method for material master. This method is better than the Recording method but the only problem we are having is maintaining the error log. Unlike the recording method, in direct input the system gives an error log but it cant me maintained in a permanent file i.e when we go back to the upload for specifying a new file, the error log of the previous file is gone.
    Is there any way that we can maintain the error log in a permanent file? Help needed ASAP!
    Thank You!
    Regards
    Sahar

    When i enter %PC in the command field the system gives following information
    Function code cannot be selected
         Message no. 00255
    Diagnosis
         You entered an inactive function code.
         You can trigger this by:
         o   inputting directly in the OK code field,
         o   inputting the fastpath of an inactive menu function,
         o   choosing an inactive function key, or even by
         o   choosing ENTER, if ENTER has an inactive function.
         In batch input, a function code is included in field BDC_OKCODE of the
         session, if this function code is not assigned to ENTER.

  • LSMW Direct Input Method RMDATIND tax classification material

    Hi folks,
    I am loading material master data throught LSMW using direct input method. In MM01 for a particular sales org we have tax classifcation for three different countries US, CA and GB. Could anyone tell me how do I post the tax classification Material data in the table control for these three different countries.
    COUNTRY COUNTRY TAX CATG. TAX CATEG.       TAX CLASSIF
    CA     Canada     CTX1     GST (Canada)     ...........                        
    CA     Canada     CTX2     PST (Canada)     ...........                        
    CA     Canada     CTX3     PST (Base+GST) Cdn...........                   
    GB     United Kingdom     MWST     Output Tax...........                        
    US     USA     UTXJ     Tax Jurisdict.Code     ...........                        
    US     USA     UTX2     County Sales Tax     ...............                        
    US     USA     UTX3     City Sales Tax     .............
    Points will be rewarded for the answers.
    Thanks,
    Raj

    Hi,
    Not sure about the same requirement of countries & tax codes for all the materials for your upload.
    If this is the case,
    enable the
    Extras->DisplayVariant
    from the menu of the LSMW & check all the check boxes. Now you see the
    __END_OF_RECORD__
    for the structure
    BMMH2
    which has to be mapped with the input structure in the Maintain structure relations step.
    double click on the
    __END_OF_RECORD__
    which will lead to ABAP editor & then put the following code:
    * Canada
    bmmh2-stype = '3'.
    bmmh2-aland = 'CA'.
    bmmh2-taty1 = 'CTX1'.
    bmmh2-taxm1 = '1'.
    transfer_record.
    bmmh2-stype = '3'.
    bmmh2-aland = 'CA'.
    bmmh2-taty1 = 'CTX2'.
    bmmh2-taxm1 = '1'.
    transfer_record.
    else if you have a different set of countries with different tax codes for the set of materials,
    You need to have a separate file for this & map the fields to the structure fields of
    BMMH2
    Hope this helps.
    Best Regards, Murugesh AS
    Message was edited by:
            Murugesh Arcot

  • LSMW - DIrect Input Method --PO

    HI All,
    I am using LSMW Direct input method to upload Purchase orders.But my probelm is i am using Two files for header and items. In my case i have to upload so many Purchase orders with multiple item data at a time.
    Example.
    Header file
    H1  ......
    H2 .......
    H3 ......
    H4 ......
    Item File
    I1  ....
    I1 ....
    I2 ....
    I2 ....
    I3 ....
    I3 ....
    I3....
    I4....
    But my question is How the program will identify Which items are related to particular Header.
    Please help me on this.
    What will be the identification for header and item.
    Thanks in advance,
    Bhanu P R Gattu.

    I usually use a single file for both header and item:
    When you specify your source file, contents must be "Data for Multiple Source Structures (Seq. File)", and header record must precede item(s) record(s):
    H1
    I1-1
    H2
    I2-1
    I2-2...
    Regards,
    Guillermo.

  • LSMW Direct Input Method - Change Documents

    Hello experts,
    Could anyone please tell me how to enable the change documents(not just runtime) for LSMW direct Input method? There is also one option "Change Documents" in the last step of the process, will this write into any table that I see the changes later If I run the last step with selected this  option? If yes, What are the application (customer master data, vendor master data, material master data, etc) specific tables?
    Is there anyway that I could populate this method changes into the CDHDR & CHPOS tables?
    SAP documenation on this:
    To enter the data into the *corresponding database tables directly*, the system calls a number of function modules that execute any necessary checks. In case of errors, the direct input technique provides a restart mechanism
    http://help.sap.com/erp2005_ehp_04/helpdata/EN/fa/097174543b11d1898e0000e8322d00/content.htm
    Since this tool writing data into database tables directly skips the CDHDR & CDPOS recording..
    Is there any other possible way for the complete change logs (change pointers???)? ( Or only table logging?)
    Please share your experience on this.
    Thanks,
    Himadama

    No response received..

  • LSMW - Direct Input Method - AS91 - RAALTD11

    Hi All,
    I am trying to master data upload of assets into SAP. I am doing it using LSMW - Direct Input method.
    I am getting a lot of errors:
    - No valid cost center was entered --- Whereas the cost center entered is valid.
    - Unexpected record type: B --- whereas I have not specified any record type.
    - Company code 0315 already contains assets in the number range T4 --- Whereas I have run the LSMW only for company code 0312 and with just a single record.
    - And many more such errors.
    Please advise if I am doing something wrong.
    Also I want to know to which field shall I pass the Cumm Acquis Val and the Net Book Value.
    I want to know the corresponding fields in the BALTD and BALTB structures for these fields.
    My flat file contains the below fields:
    - ANLKL    Asset Class
    - BUKRS   Company Code
    - TXT50     Description
    - AKTIV    Capitalized On
    - KOSTL   Cost Center
    - ORD42    Allowed Capital Allowances?
    - EAUFN   Investment Order
    - NDJAR   Planned Useful Life in Years
    - NDPER  Planned Useful Life in Periods (months)
    - NDABJ   Expired Useful Life in Years
    - NDABP  Expired Useful Life in Periods (months)
    - ??    Cumm Acquis Value
    - ??    Net Book Value
    I don't know how to map the last two fields. Although I could find another field ANBTR01 in BALTB structure. But then which field tomap to this structure and to which field shall I map the remaining one.
    Please advise.
    Thanks & Regards,
    Namrata

    Hi All,
    I have now removed the BALTB structure and am filling only teh BALTD structure. I am not getting any errors and  the asset is getting created.
    But when I go and check for the asset in AS93 / AS92, the depr areas (planned and expired life in years and planned and expired life in periods) are not getting populated in SAP. Also in the Takeover Values tab, ***.acquis.val and the Net book value fields are not getting populated.
    Below is the mapping of all the fields:
    BALTD-MANDT = 600 (GETTING POPULATED ITSELF)
    BALTD-BUKRS = SOURCE-BUKRS
    BALTD-ANLKL = SOURCE-ANLKL
    BALTD-TCODE = AS91 (HARDCODING IN LSMW)
    BALTD-RCTYP = A (GETTINGPOPULATED ITSELF)
    BALTD-AKTIV = SOURCE-AKTIV
    BALTD-ORD42 = SOURCE-ORD42 (ALWD)
    BALTD-EAUFN = SOURCE-EAUFN
    BALTD-TXT50 = SOURCE-TXT50
    BALTD-KOSTL = SOURCE-KOSTL
    Below are the dep areas fields values and the takeover values.
    BALTD-NDJAR01 = SOURCE-NDJAR01 (PLANNED LIFE IN YEARS)
    BALTD-NDPER01 = SOURCE-NDPER01 (PLANNED LIFE IN PERIODS)
    BALTD-NDABJ01 = SOURCE-NDABJ01 (EXPIRED LIFE IN YEARS)
    BALTD-NDABP01 = SOURCE-NDABP01 (EXPIRED LIFE IN PERIODS)
    BALTD-KANSW01 = SOURCE-KANSW01 (CM.ACQUIS.VALUE - IN TAKEOVER VALUES TAB)
    BALTD-KANSW02 = NET BOOK VALUE IN TAKEOVER VALUES TAB.
    BALTD-WRTMA = SOURCE-WRTMA (SUGGESTED BY SOMEONE ON SDN FOR NET BOOK VALUE)
    None of the above dep areas and takeover values fields (fields in bold) are getting populated in SAP.
    Please help and advise how to proceed with this.
    Regards,
    Namrata

  • LSMW - DIRECT INPUT METHOD FOR UPLOADING PP MASTER DATA

    Dear Gurus,
    A LSMW project (DIRECT INPUT METHOD)has been created for PP master.
    But Now They have Lost Previous File which they have prepared Earlier.
    Now to Create a file for the Same Project wat fields need to be taken.
    By taking only Source structure fields it is giving error.
    In project some constant fields are also there.
    pls guide me.
    With Regards,
    GMP

    have Lost Previous File
    what does that mean? did they lose the source that should be used to load the data from?
    without source you cannot load data.
    Had you ever got this source file? how? by mail, then check your old mails and take it from there, ask the sender to he/she checks the SENT folder in his mail system. Maybe someone has a local copy of this fille.

Maybe you are looking for

  • MSI Pro-E Chipset Cooling (Need Some Major Clarification Here Before I Begin)

    Hey guys, about to bring up a very well known issue here, which brought about many 'heated' debates, no pun intended :P I know there has been many threads on this issue for nearly 2 years now, and well, i did tons of reading on the subject, starting

  • Sending attachment from servlet or jsp

    Dear Friends, I downloaded javamail api and I have seen the sendfile.java, which is used to send attachments. it is working fine. I can able to run that program from command prompt like this := c:>java sendfile [email protected] [email protected] mail.smtp.net

  • Adding  custom fields in vt01

    Hi, I need to  add custom  fields in tran  vt01, vt02, vt03    and these custom fields added in sap table vttp. thanks

  • Reports - Passing checkbox values and conditional column visibility

    Although I've been using Oracle databases for many years, I've to admit I'm rather new to APEX. I'm building a first prototype project to convince our project leaders and managers of the usefulness of the product for future projects (as for visual Da

  • Drop Frame problem

    I am working with FCP 5.1 on a MacBook Pro. I am bringing in footage from a Canon GL-1 via firewire. The footage on the tape is non-drop frame timecode, and I have created a new setup to capture it, but for when I went to capture, a dialog box popped