No entry in key field of table MARM

Hi,
I am trying to import and create a Article Master using LSMW with IDoc method. ARTMAS IDoc is getting generated but it is showing error as No entry in Key field MARC, MVKE, etc etc and now finally stuck in No entry in key field of table MARM even after filling all possible data.
Function Module used here is BAPI_MATERIAL_MAINTAINDATA_RT. I don't know any technical aspects here to look into.
Kindly help me out with the information on what could have gone wrong here and what are the possible solutions?
Thanks & Regards,
Sudhanva Joshi

Hi Venu,
Now i am stuck in somewhat a deadlock situation. and this is in MARM segment. below are the issues,
1. If I provide an entry in Alternate UOM field in MARM, Ex: EA is base unit and PC is ALT unit, I am getting an error as ' The Alternative unit of measure is same as Base unit of measure'
2. And, If i don't give an entry in ALT_UOM field (which SAP suggests, in case there is no other units than Base unit, leave the ALT-UOM field as blank), I am getting an error as "No entry in key field of table MARM"
Can you please assist in resolving this issue.
Thanks & Regards,
Sudhanva Joshi

Similar Messages

  • No entry in key field of table MARC for BAPI_MATERIAL_MAINTAINDATA_RT

    Hi Gurus ,
    I have a requirment to upload Retail Articles. I am using BAPI_MATERIAL_MAINTAINDATA_RT to create articles for Basic View, Listing View and Sales View.
    I got the error:
    No entry in key field of table MARC
    Message no. MG502
    Moderator message - Please respect the 5,000 character maximum when posting. Post only the relevant portions of code
    Please let me know how to fix this.
    Edited by: Rob Burbank on Dec 22, 2010 12:38 PM

    Thanks a lot Rob Burbank  for the hint!
    I figured out that though I was passing the Site under MARC, it wasn't getting transfered to the field. I fixed the code.
    Thanks for prompt response!

  • How to update key fields for table

    Hi,
    how to update key fields for a table.The update statement is not working for the same.
    Regards,

    Hi,
    See the below example.
    TABLES SPFLI.
    DATA WA TYPE SPFLI.
    MOVE 'AA' TO WA-CARRID.
    MOVE '0064' TO WA-CONNID.
    MOVE 'WASHINGTON' TO WA-CITYFROM.
    UPDATE SPFLI FROM WA.
    MOVE 'LH' TO SPFLI-CARRID.
    MOVE '0017' TO SPFLI-CONNID.
    MOVE 'BERLIN' TO SPFLI-CITYFROM.
    UPDATE SPFLI.
    CARRID and CONNID are the primary key fields of table SPFLI. All fields of those lines where the primary key fields are "AA" and "0064", or "LH" and "0017", are replaced by the values in the corresponding fields of the work area WA or the table work area SPFLI.
    Regards,
    raj.

  • Validating non key fields in table maintenance generator

    Hi,
    I ma using events for table maintenance generator event 05 ,there i want to validate non key fields ......i am throwing error message ....all the non key fields are getting in display mode ...i need them to enable to enter values ....
    please suggest
    Thanks,
    Shailaja Ainala.

    Hi Shailaja,
    Its property of error message, which makes it as non-editable.
    You can display either status or info message after validation check.
    And finally before saving (before save event) display error message, so that it invalid entries doesnt get saved.
    Thanks,
    Nisha Vengal.

  • F4 help values for currency key field in table

    Hi all,
    I have added currency and currency key fields in my Z table. For the curreny key field, i have assigned the standard data element WAERS. I have implemented Table Maintenance Generator for my table. But the F4 help values for the currency key field is not appearing when i tried to maintain table entry.
    Should i need to check the Foreign key check box for the field attribute? But this check box is in disable field in screen layout.
    Could someone tell me how to solve this issue?

    Hi,
    Make the check table of the currency field of your Ztable as TCURC,which is the master table of Currency.Inside the domain of the field you write the TCURC as a value table.and make foriegn key relationship with the TCURC table.
    Regards,
    Suvajit.

  • Only key fields of table-cluster in where-condition for better performance?

    Hi,
    Say my cluster table is having following key fields: KEY1, KEY2, KEY3, KEY4.
    And, my table-cluster is having following key fields: KEY1, KEY2, PAGENO .. [PAGENO is always there in a table-cluster].
    Now, I have two versions of my (Open SQL) SELECT-WHERE clause:
    a) SELECT *
        WHERE KEY1 EQ LV_KEY1
             AND KEY2 EQ LV_KEY2
             AND KEY3 EQ LV_KEY3.
    b) SELECT *
        WHERE KEY1 EQ LV_KEY1
             AND KEY2 EQ LV_KEY2.
    Please guide me whether version (a) or version (b) will be executed faster? In case of version (b), I will have to filter data using ABAP code corresponding to KEY3.
    Regards,
    Kamlesh Dhera H. R.

    I think most experienced ABAPrs would tell you to try both, compare runtimes, and use the one that's more efficient.  SAP provides "get run time field <fieldname of type i>.  Get run time at start, get run time at end, and subtract start from end to get the time in microseconds (1 second / 1,000,000 ).
    Run several times to minimize effect of buffering and system load activity, and you'll see which method produces lower run time.

  • Multiple Entries for a field in Table

    Hi All,
    I needed to add field to a ztable, the options should include  values from table LIKP-LFART and should allow for multiple entries.
    I tried adding field with table type and structure type but error saying table type or sturcture cannot be used for table. Please let me know is there any other way how i can include multiple entries.
    Thanks,

    Thanks Sandra and Advait. I have done exactly as advised by sandra, i have added check table as Advait suggest. Also, to test this for multiple entries how can i do this. or shouls i raise this in a new thread.
    Thanks Again.

  • How to Set Position Cursor Option to Non key fields in Table Maintenance .

    Hi,
    I have created a Ztable and i am using table maintenance for that table. In TMG ,by default  we have position cursor option to key fields only . User wants that position cursor option for non key fields also. Please help me out of this issue .
    How to provide Position Cursor option to Non key fields.
    Thanks & Regards,
    Prasad.

    Hi Nabheet,
    I tried using TYPE S DISPLAY LIKE E and am setting vim_abort_saving as X and sy-subrc as 4. However, this is also not enabling the fields. In this case, the first 2 fields - key fields are getting enabled but not the required ones. The above snapshot is for the same.
    lv_date1 = table1-date1.
       lv_date2 = table1-date2.
       lv_diff = lv_date2 - lv_date1.
       IF lv_diff LT 0.
         CLEAR: lv_err_msg.
         lv_err_msg = text-005.
         MESSAGE lv_err_msg TYPE 'S' DISPLAY LIKE  lc_e.
         vim_abort_saving = lc_x.
         sy-subrc = 4.

  • Searching non-key fields in table maintainance

    Hi..
    How to find non-key fields or how can we enble the FIND button in maintaince table ?
    Please reply....
    Thanks ...

    Hi,
    When you are on the table maintenance screen, you can :
    1. Goto menu options. Selection-->By Content
    2. Choose the fields you want to search data on and Press enter
    3. Enter the operator and the value  (you can append or insert a new field here as well )
    4. Click on the choose button.
    regards,
    Advait

  • Key fields in tables ce31000 and ce41000

    In transaction KE11 ( change sales and profit plan ), tables CE31000 and CE41000 are used. I have to read those tables in a report but I cannot find the relevant keys to find unique records.  There are some fields I know, but using those fields I get about 300 records where I only should have one.  I guess I should use another table which has the link to the other tables, but I have no idea which.  Does anybody have a clue ?

    As far as I remember there are 4 tables per operating concern, CE1xxxx for tha actuals, CE2xxxx for the planning, CE3xxxx for the summary lines and CE4xxxx for the objects.
    Depending on the defined characteristics there is one PAOBJNR in CE4xxxx for each existing combination. In CE3xxxx you should also find this PAOBJNR. At the moment I have no access to a SAP with COPA, but I hope, this helps you a little bit for the further search.
    Best regards
    André

  • Changing the length of a key field in a table

    Hi,
    I want to increase the length of the field from 2 to 4 in a standard SAP table and deliver it to the customers. This field is a key field in table. This field from this table is also used in view and view clusters.
    What is the implication of changing the length to the customers. The customers would have already data in this field and they should not loose any data. Will the existing data for customers remain at length 2 or do they have to do some conversion?
    Regards,
    Srini.
    Edited by: Srinivasa Raghavachar on Feb 7, 2008 12:45 PM

    hi,
    The database table can be adjusted to the changed definition in the ABAP Dictionary in three different
    ways:
    By deleting the database table and creating it again. The table on the database is deleted, the inactive
    table is activated in the ABAP Dictionary, and the table is created again on the database. Data
    existing in the table is lost.
    By changing the database catalog (ALTER TABLE). The definition of the table on the database is
    simply changed. Existing data is retained. However, indexes on the table might have to be built again.
    By converting the table. This is the most time-consuming way to adjust a structure.
    If the table does not contain any data, it is deleted in the database and created again with its new
    structure. If data exists in the table, there is an attempt to adjust the structure with ALTER TABLE. If the
    database system used is not able to do so, the structure is adjusted by converting the table.
    Field 1     Field 2,    Field 3
    NUMC,6  CHAR 8    CHAR, 60
    Field 1    Field 2       Field 3
    NUMC,6 CHAR, 8     CHAR,30
    The following example shows the steps necessary during conversion.
    Starting situation: Table TAB was changed in the ABAP Dictionary. The length of field 3 was reduced
    from 60 to 30 places.
    The ABAP Dictionary therefore has an active (field 3 has a length of 60 places) and an inactive (field 3
    still has 30 places) version of the table.
    The active version of the table was created in the database, which means that field 3 currently has 60
    places in the database. A secondary index with the ID A11, which was also created in the database, is
    defined for the table in the ABAP Dictionary.
    The table already contains data.
    Step 1: The table is locked against further structure changes. If the conversion terminates due to an
    error, the table remains locked. This lock mechanism prevents further structure changes from being
    made before the conversion has been completed correctly. Data could be lost in such a case.
    Step 2: The table in the database is renamed. All the indexes on the table are deleted. The name of the
    new (temporary) table is defined by the prefix QCM and the table name. The name of the temporary
    Step 3: The inactive version of the table is activated in the ABAP Dictionary. The table is created on the
    database with its new structure and with the primary index. The structure of the database table is the
    same as the structure in the ABAP Dictinary after this step. The database table, however, does not
    contain any data.
    The system also tries to set a database lock for the table being converted. If the lock is set, application
    programs cannot write to the table during the conversion.
    The conversion is continued, however, even if the database lock cannot be set. In such a case
    application programs can write to the table. Since in such a case not all of the data might have been
    loaded back into the table, the table data might be inconsistent.
    You should therefore always make sure that no applications access the table being converted
    during the conversion process.
    Step 4: The data is loaded back from the temporary table (QCM table) to the new table (with MOVECORRESPONDING).
    The data exists in the database table and in the temporary table after this step.
    When you reduce the size of fields, for example, the extra places are truncated when you reload the
    data.
    Since the data exists in both the original table and temporary table during the conversion, the storage
    requirements increase during the process. You should therefore verify that sufficient space is available in
    the corresponding tablespace before converting large tables.
    There is a database commit after 16 MB when you copy the data from the QCM table to the original
    table. A conversion process therefore needs 16 MB resources in the rollback segment. The existing
    database lock is released with the Commit and then requested again before the next data area to be
    converted is edited.
    When you reduce the size of keys, only one record can be reloaded if there are several records whose
    key cannot be distinguished. It is not possible to say which record this will be. In such a case you should
    clean up the data of the table before converting.
    Step 5: The secondary indexes defined in the ABAP Dictionary for the table are created again.
    Step 6: The temporary table (QCM table) is deleted.
    Step 7: The lock set at the beginning of the conversion is deleted.
    If the conversion terminates, the table remains locked and a restart log is written.
    Caution: The data of a table is not consistent during conversion. Programs therefore should not access
    the table during conversion. Otherwise a program could for example use incorrect data when reading the
    table since not all the records were copied back from the temporary table. Conversions therefore
    should not run during production! You must at least deactivate all the applications that use tables to
    be converted.
    You must clean up terminated conversions. Programs that access the table might otherwise run
    incorrectly. In this case you must find out why the conversion terminated (for example overflow of the
    corresponding tablespace) and correct it. Then continue the terminated conversion.
    Since the data exists in both the original table and temporary table during conversion, the storage
    requirements increase during conversion. If the tablespace overflows when you reload the data from the
    temporary table, the conversion will terminate. In this case you must extend the tablespace and start the
    conversion in the database utility again.
    If you shorten the key of a table (for example when you remove or shorten the field length of key fields),
    you cannot distinguish between the new keys of existing records of the table. When you reload the data
    from the temporary table, only one of these records can be loaded back into the table. It is not possible
    to say which record this will be. If you want to copy certain records, you have to clean up the table
    before the conversion.
    During a conversion, the data is copied back to the database table from the temporary table with the
    ABAP statement MOVE-CORRESPONDING. Therefore only those type changes that can be executed
    with MOVE-CORRESPONDING are allowed. All other type changes cause the conversion to be
    terminated when the data is loaded back into the original table. In this case you have to recreate the old
    state prior to conversion. Using database tools, you have to delete the table, rename the QCM table to
    its old name, reconstruct the runtime object (in the database utility), set the table structure in the
    Dictionary back to its old state and then activate the table.
    If a conversion terminates, the lock entry for the table set in the first step is retained. The table can no
    longer be edited with the maintenance tools of the ABAP Dictionary (Transaction SE11).
    A terminated conversion can be analyzed with the database utility (Transaction SE14) and then
    resumed. The database utility provides an analysis tool with which you can find the cause of the error
    and the current state of all the tables involved in the conversion.
    You can usually find the precise reason for termination in the object log. If the object log does not
    provide any information about the cause of the error, you have to analyze the syslog or the short dumps.
    If there is a terminated conversion, two options are displayed as pushbuttons in the database utility:
    After correcting the error, you can resume the conversion where it terminated with the Continue
    adjustment option.
    There is also the Unlock table option. This option only deletes the existing lock entry for the table .
    You should never choose Unlock table for a terminated conversion if the data only exists in the
    temporary table, i.e. if the conversion terminated in steps 3 or 4. table for table TAB is therefore QCMTAB.
    Hope this is helpful,Do reward.

  • About key fields in a table

    Hi,
    I'm actually finding out differences between two tables in remote systems. table name would be given as input parameter, and i'll query the remote SAP system and get the table entries in the remote system and compare them with the table entries in the logon system. Now is there any way, that I can find out which fields are the key fields of table, at run time, having in mind that since everything is at run time, i would be processing using field symbols. So is there anyway to find out which fields in any table are the key fields. Any inputs would be of great help.
    Regards,
    Vijay

    HI vijay
    use the FM
    CALL FUNCTION 'GET_KEY_FIELDS_OF_TABLE'
      EXPORTING
        TABNAME             =<b> <table name></b>
      MANDT_NEEDED        = ' '
      TABLES
        KEY_FIELDTAB        = <b><table to hold the key field ex. data: itab like dfies occurs 0. ></b>
    EXCEPTIONS
      NOT_SUPPORTED       = 1
      OTHERS              = 2
    IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    <b>Loop at itab.
    write: itab-fieldname.
    endloop.</b>
    regards
    kishore
    Message was edited by: Harikishore Sreenivasulu

  • Entering multiple entries in ZTABLE after changing a key field to nokey.

    HI Experts,
    This is Hema Iam new To ABAP.
    My senario is I have created a ZTABLE with companycode, GLAccount, costcenter,profitcenter,plant.
    AT first my table has companycode and GLaccount has key fields..
    But to enter the multiple entries for cocode and GLaccount (ZBUKRS and ZHKONT) i have changed GLaccount has non key fields and table maintainence regenarated for the same.
    my issue is as there are repeating entries for cocode and glaccount it is not possible to enter the entries as it is saying the entry is repeated and asking me to skip because cocode is primarykey there...
    how can i overcome thsi issue to enter multipel entries for cocode and GLaccount.
    As it should be done quickly ur help would be usefull
    Thanks In Advance
    L.Hemalatha.

    Hi
    I created zslno field and made it has primary key field aslo but still iam getting eror message while entrying entries as
    "an entry already exists with the same key"
    wht should be done i maintainance recreated after adding this field nad in se14 i adjusted the table too still what steps should be done ?
    eg i need to enter data:
    client cocode  zslno GLacount Cost center profit center plant
    010    1000                 1483100   1001199                       0035
    010     1000                 226100     101199                        0076
    so while entering second record and trying to save iam getting that error.... help me out

  • Problem with S001 - Key field Sequence in table

    Hi,
    We want to use the extractor 2LIS_01_S001 with Delta. But delta is not working with these extractor. When I checked LBW0, I am getting error "The LIS environment is setup incorrectly".
    According to note 115192, the key fields in tables S001, S001BIW1 and S001BIW2 have to be in the same sequence.
    But we are on 4.7 with following Support Packs:
    SAP_APPL 470 0025 SAPKH47025 Logistics and Accounting
    PI 2004_1_470 0007 SAPKIPZI57 R/3 Plug-In (PI) 2004.1 for
    R/3 Enterpri
    PI_BASIS 2004_1_620 0010 SAPKIPYI5A Basis Plug-In
    (PI_BASIS) 2004_1_620
    And according to this note, solution is delivered with this Support Packs.
    Can you please tell me that if this note is mandatory for all the releases..?
    Did any one encounter this issue before..?
    Thanks & Regards,
    Samay Mehta

    I changed my entity: unchecked the X column to be primary key added RowID as a primary key. Now it works.
    What's wrong with my CHAR(1) as a primary key ?
    I also tried to add a Refresh button:
      <af:commandButton text="Refresh" id="cb3"/>and in the table add a partialTarget to the button. Now when I add new row and press the Refresh button - then it works.
    So it seems that the problem is when I add new row and enter data, the table is not refreshed and the row is missing it's primary key.
    Any solutions?
    Edited by: a.gruev on Nov 26, 2009 4:18 PM

  • Ztable with key field automatically updated..

    Hi guys,
    I have created a Ztable and assigned a t-code and table view.
    I want to know whether it is possible when I am filling new entries, the key field should be automatically populated to the next number(+1 to the last key field) and should be read only
    (example in am zemp table empno is key field and when filling the employee details, system should prompt me the next empno(read-only) and ask me to enter the other details).
    thanks in advance.
    Pavan.

    Hi,
    for each employee u must insert new row and increment the emploee_no.
    In fieldcatalog the field should be non editable mode.i.e ex:wa_fieldcata-edit = 'x'.
    pass this parameter for key field it will bw only in non editable mode.remainning fields r editable.
    try for this ..
    if u hav any suggestion.tommorow i will post the code.
    thanks.
    Balu

Maybe you are looking for