Check Table with Constant Field

I created table ZTEST with fields MANDT and MATNR, and also created check table MARA for field  ZTEST-MATNR, so the current check logic is:
ZTEST-MANDT = MARA-MANDT and
ZTEST-MATNR = MARA-MATNR.
But I just wonder whether I can put one more creteria to only check a specified material type (MARA-MTART) such as 'ZAWA', and there is NO such a field MTART in ZTEST. That is, I want to put one more field from MARA for foreign key check, the new logic is:
ZTEST-MANDT = MARA-MANDT and
ZTEST-MATNR = MARA-MATNR and
MARA-MTART = 'ZAWA'.
Thanks in advance

Hi,
Create a database view in the DDIC..With the conditions as MARA-MTART = 'ZAWA' in the selection conditions tab..
Then use the view as the check table for the matnr field in your ztable..
Thanks,
Naren

Similar Messages

  • How to find the Check table for a field ?

    Hello All,
            I have the filed name f1.
    Now I want to know the check table of this field programatically and if this field has a configuration table then I need that table also.
    eg: if werks is the field the Master         Table is : MARC
                                    and Configuration Table is : T001W.
    Is this possible first of all programatically ?
    If yes can anyone help me out ?
    Regards,
    Deepu.K

    Hi again,
    1. I don't know the master table for the field werks
    A field is never independent. It is always linked to a table,
    otherwise the information is only half.
    2. So incase if we do not know the tablename,
       its best to query the table DD03L with WERKS,
      and filer out CHECKTABLE with *,
      and take any one record.
    regards,
    amit m.

  • More than one check table for a field in custom table

    I created a custom table , with some fields in that , and for a field i given a check table , in that same field i want another check table because for  some data i need to refer another table . whether it is possible.....

    Hi,
    If you need to perform the checks while using a maintenance view, you can do this with modification events. e.g. just implement a form that triggers your custom checks in a "before save" event... (SE55->Environment->Event)
    Kr,
    Manu.

  • Error: Table /1FB/MD___M8001X error in DDIC - Check table with SE14

    Hi Buddy,
    I have some trouble with copy client 000 to 400, Error: Table /1FB/MD___M8001X error in DDIC - Check table with SE14.
    TABL /1FB/MD___M8001X was not activated
    Check table /1FB/MD___M8001X (MST.EKA/14.04.11/10:33)
    POSITION is a reserved word (Select another field name)
    Field name MANDT can be provided in this system. Please do not use.
    Field name SID can be provided in this system. Please do not use.
    Field name TABNAME can be provided in this system. Please do not use.
    Field name FIELDNAME can be provided in this system. Please do not use.
    Field name AS4LOCAL can be provided in this system. Please do not use.
    Field name AS4VERS can be provided in this system. Please do not use.
    Field name POSITION can be provided in this system. Please do not use.
    Index /1FB/MD___M8001X-01 is not in the customer namespace
    Table /1FB/MD___M8001X must be created in the database
    Check on table /1FB/MD___M8001X resulted in errors
    how to solve this problem...??
    Thanks & Regards
    Eka Sumargo

    Hi MST Support
    Are there any other errors in SCC3. What kind of client copy you're performing SAP_ALL or CUST?
    As per the logs in your post it seems that the table MD___M8001X does not exist in the database.You could try SE11 or SE14 to check the table.
    Any other info would be really helpful.
    Regards,

  • Check table with Plant and material type

    xperts,
    i m trying to find a check table with fields werks and mtart.

    Hi,
    NO ,its not possible to get from only one table...
    werks  -
    T001W
    mtart----
    t134.
    Regards,
    Rohan.

  • How to convert internal table with dynamic fields to XML

    Dear all,
    I met a problem like the following:
    The aim is to transform the following parameter to XML
    IT_FIELD stores the dynamic filed name of the internal table,with these fields, the dynamic internal can be created by cl_abap_tabledescr=>create(it_field)
    IT_VALUE stores the value of the internal table dynamically created with dynamic fields.
    For example
    IT_FIELD =>
    line1: FIELD1
    line2: FIELD2
    line3: FIELD3,
    three lines in this internal table.
    dynamically created internal table structure FIELD1 FIELD2 FIELD3
    And IT_VALUE=>
    1          2          3   (First line)
    11        22        33
    two lines of data.
    Do you have any idea about how to transform the IT_VALUE to XML here? And also the transformed XML to the IT_VALUE.( we may need remember IT_FIELD here for later XML to IT_VALUE.)
    Hope I describe the problem clearly.
    Any inputs will be appreciated.
    Edited by: Max Tang on Jan 12, 2009 3:46 PM
    Edited by: Max Tang on Jan 12, 2009 4:14 PM

    Hi,
    you need to implement a bit of coding for that.
    With the 'do varying' statement abap provides a loop over those fields. Within this loop you can build up a new internal table with one entry for each period and amount.
    kind regards
    Siggi
    PS: I am not very familiar with CO, but I guess there will be a standard extractor for that.

  • Understanding logminer results -- inserting row into table with CLOB field

    In using log miner I have noticed that inserts into rows that contain a CLOB (I assume this applies to other LOB type fields as well, have only tested with CLOB so far) field are actually recorded as two DML entries.
    --the first entry is the insert operation that inserts all values with an EMPTY_CLOB() for the CLOB field
    --the second entry is the update that sets the actual CLOB value (+this is true even if the value of the CLOB field is not being set explicitly+)
    This separation makes sense as there may be separate locations that the values are being stored etc.
    However, what I am tripping over is the fact the first entry, the Insert, has a RowId value of 'AAAAAAAAAAAAAAAAAA' which is invalid if I attempt to use it in a flashback query such as:
    SELECT * FROM PERSON AS OF SCN #####'  where RowId = 'AAAAAAAAAAAAAAAAAA'The second operation, the Update of the CLOB field, has the valid RowId.
    Now, again, this makes sense if the insert of the new row is not really considered "+done+" until the two steps are done. However, is there some way to group these operations together when analyzing the log contents to know that these two operations are a "+matched set+"?
    Not a total deal breaker, but would be nice to know what is happening under the hood here so I don't act on any false assumptions.
    Thanks for any input.
    To replicate:
    Create a table with CLOB field:
    CREATE TABLE DEVUSER.TESTTABLE
            ID NUMBER
           , FULLNAME VARCHAR2(50)
          , AGE NUMBER  
          , DESCRIPTION CLOB
           );Capture the before SCN:
    SELECT DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER FROM DUAL;Insert a new row in the test table:
    INSERT INTO TESTTABLE(ID,FULLNAME,AGE) VALUES(1,'Robert BUILDER',35);
         COMMIT;Capture the after SCN:
    SELECT DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER FROM DUAL;Start logminer session with the bracketing scn values and options etc:
    EXECUTE DBMS_LOGMNR.START_LOGMNR(STARTSCN=>2619174, ENDSCN=>2619191, -
               OPTIONS => DBMS_LOGMNR.DICT_FROM_ONLINE_CATALOG + DBMS_LOGMNR.CONTINUOUS_MINE + -
               DBMS_LOGMNR.COMMITTED_DATA_ONLY + DBMS_LOGMNR.NO_ROWID_IN_STMT + DBMS_LOGMNR.NO_SQL_DELIMITER)Query the logs for the changes in that range:
    SELECT
           commit_scn, xid,operation,table_name,row_id
           ,sql_redo,sql_undo, rs_id,ssn
           FROM V$LOGMNR_CONTENTS
        ORDER BY xid asc,sequence# ascResults:
    2619178     0C00070028000000     START                  AAAAAAAAAAAAAAAAAA     set transaction read write
    2619178     0C00070028000000     INSERT     TESTTABLE     AAAAAAAAAAAAAAAAAA     insert into "DEVUSER"."TESTTABLE" ...
    2619178     0C00070028000000     UPDATE     TESTTABLE     AAAFEXAABAAALEJAAB     update "DEVUSER"."TESTTABLE" set "DESCRIPTION" = NULL ...
    2619178     0C00070028000000     COMMIT                  AAAAAAAAAAAAAAAAAA     commitEdited by: 958701 on Sep 12, 2012 9:05 AM
    Edited by: 958701 on Sep 12, 2012 9:07 AM

    Scott,
    Thanks for the reply.
    I am inserting into the table over a database link.
    I am using the new version of HTML Db (2.0)
    HTML Db is connected to an Oracle 10 database I think, however the table I am trying to insert data into (via the database link) is in an Oracle 8 database - this is why we created a link to it as we couldn't have the HTML Db interacting with the Oracle 8 database directly due to compatibility problems (or so I've been told)
    Simon

  • I want to create a mail merge for address labels into a table, but when I fill a table with merge fields, it ends up creating multiple entries for the same address, rather than one table full of each address.

    ...but when I fill a table with merge fields, it ends up creating multiple entries for the same address, rather than one table full of each address. Please help.
    Thanks!

    That is a quirk of Pagesthat  it applies only one record per page.
    There is a way around this:
    http://www.freeforum101.com/iworktipsntrick/viewtopic.php?t=245&highlight=labels &mforum=iworktipsntrick
    Peter

  • Subform with table with expanding fields - please help!

    I am a new user of LiveCycle Designer ES and need help with a form.  I've made so many changes within the form that I have now lost track and don't know where to start to fix the following two issues:
    The form itself is one Master Page that needs to repeat, based on the amount of data entered.  This is not happening.
    Within the form is a Table with expanding fields.  It is when the last field is full that I need a new page created.Also, as the table expands, it overwrites the Footer, which is a subform.  The footer is set to have a top margin (.25).
    Any assistance would be much appreciated.  Thank you!

    Looks like a cross post.  see other thread here...
    http://forums.adobe.com/thread/489453?tstart=0

  • Function Module/Table to retrieve check table for standard fields

    Hi,
    Is there any function module or database table that holds the check table for standard field? Ex. BUKRS = T001.

    Hi MArc,
    Goto DD03L table
    Enter fieldname and tablename, you will get check table in CHECKTABLE field.
    e.g. fname - MATNR, tbname MARD then CHECKTABLE - MARA
    Reg,
    Sachin

  • Table BUT000 error in DDIC - Check table with SE14

    Hi Experts,
    When I import the sap_all profile to a new SAP BI 7 installation, i get the message
    Table BUT000 error in DDIC - Check table with SE14
    Is it a serious problem or I can continue using this BI platform?
    Regards
    Obayd

    HI,
    This is some wat not that much a general problem any way Have a look at the SAP Note 1276895 - Add. info. about Upgrading to SAP Solution Manager 7.0 EHP1 and
    SAP Note 1169247 - Enhancements to Solution Manager 7.0 EHP1 upgrade.
    thanks,
    karthik

  • How to update database table with key field?

    Hello Experts,
    I have a database table with following fields
    MATNR   - Key
    SSOUR  -  Key
    KUNNR   - Key
    MENG1 
    MENG2
    MENG3
    And this table contains records like...
    MSD50001     R      1000001     5.30    2.30    5.25
    MSD50002     R      1000002     5.30    2.30    5.25
    MSD50003     R      1000003     5.30    2.30    5.25
    MSD50005     R      1000004     5.30    2.30    5.25
    MSD50004     R      1000005     5.30    2.30    5.25
    I have an internal table with same fields of above database table.
    MSD50001     A      1000001     5.30    2.30    5.25
    MSD50002     A      1000002     5.30    2.30    5.25
    MSD50003     A      1000003     5.30    2.30    5.25
    MSD50005     A      1000004     5.30    2.30    5.25
    MSD50004     A      1000005     5.30    2.30    5.25
    MSD50006     A      1000006     5.30    2.30    5.25
    I want to update the DB table with following internal table records.
    If internal table records = db table records are same then Update....else insert from internal table to db table.
    But here, SSOUR is key field so i am not able to use
    MODIFY dbtab from itab.
    It results me , entries in internal table are inserted into db table.
    So i have double records.
    Is there any statement which updates the key field? and if no fields in db table then insert it?
    Regards
    RH

    hi,
    u cannot update akey field.u can update only non key fields by using key field as a selection criteria.For example if u go to sm30 if u enter any table for inserting values, the key field will always be greyed out it is not succumbed to chnges.but u can insert value into ,if ur inserting and in the insert staemnet if  u have key field which is already present in the table it will return sy-subrc = 4 otherwise it will insert the record and return 0.
    eg for update :
    UPDATE zdm_wtyprof  SET upload_status = 'S'
                             WHERE spart = wa_upd-spart.
    here spart is the key field and it will update the status field in the table as S.
    if updated succesfully it will return 0.
    SIMILARLY U CAN USE select.

  • Use of selection table with 4 fields

    Hi everyone
    Can someone please explain to me what is the use of the seltab 4 fields, how they are used and provide an example, cos Im kinda struggling understanding them...
    Thanks in advance
    Adam

    Hi,
    Explicity there is a selection table for select-options that is seltab and it have sign, low, high, and option.
    Actually these values are also available in ranges.
    Just to explain you go through this info.
    What are the difference between SELECT-OPTIONS & RANGES?
    Here both SELECT-OPTIONS & RANGES works for the same purpose. They both are used for the range selection from selection screen. The main diff. between them is, while we use SELECT-OPTIONS system implicitly creates the select options internal table which contains the fields of SIGN,OPTION,LOW & HIGH. But in case of RANGES, this internal table should be defined explicitly.
    Eg. to SELECT-OPTIONS :
    REPORT YARSELECT.
    TABLES YTXLFA1.
    SELECT-OPTIONS : VENDOR FOR YTXLFA1-LIFNR.
    INITIALIZATION.
    VENDOR-LOW = 1000. " It specifies the range starting value.
    VENDOR-HIGH = 2000. " It specifies the range ending value.
    VENDOR-OPTION = 'BT'. " specifies ranges value is in between.
    VENDOR-SIGN = 'I'. "specifies both inclussive.
    APPEND VENDOR.
    SELECT LIFNR LAND1 NAME1 FROM LFA1 INTO TABLE ITAB
    WHERE LIFNR IN VENDOR.
    Eg. to RANGES:
    REPORT YARRANGE.
    TABLES YTXLFA1.
    RANGES: VENDOR FOR YTXFLA1-LIFNR.
    SELECT LIFNR LAND1 NAME1 FROM LFA1 INTO TABLE ITAB
    WHERE LIFNR IN VENDOR.
    Here with RANGES user has to design an internal table with fields -
    SIGN,OPTION,LOW and HIGH EXPLICITLY.
    >
    Example:
    select-options: bukrs for zstock-bukrs.
    Should the user fill in 'ABFI' in BUKRS on the selection screen, BUKRS will look like this:
    IEQABFI
    This is because BUKRS is set as a table as follows:
    begin of bukrs occurs 0,
    SIGN(1) type c,
    OPTION(2) type c,
    LOW like bukrs,
    HIGH like bukrs,
    end of bukrs.
    Now, when you create the following range, it will have the exact same fields set inside its table:
    Ranges: bukrs for zstock-bukrs.
    The difference is, because ranges doesn't show on the selection screen, you will have to fill it yourself, meaning you will have to fill bukrs-sign, bukrs-option, bukrs-low & bukrs-high all manually.
    Some tips:
    Sign is always I (for Include) or E (for Exclude)
    Option can be a whole range, which includes:
    EQ (Equal)
    BT (Between))
    CP (Contain Pattern)
    So let's say you want to have the range check for all company codes not starting with AB, you will set your code as follow:
    ranges: bukrs for zstock-bukrs.
    bukrs-sign = 'E'. "Exclude
    bukrs-option = 'CP'. "Pattern
    bukrs-low = 'AB*'. "Low Value
    bukrs-high = ''. "High Value
    append bukrs.
    Always remember to APPEND your range when you fill it, as the WHERE clause checks against the lines of the range table, not against the header line.
    Hope this explains it well enough.
    >
    What does SIGN "I" & "E" mean?
    The "I" stands for Include, and the "E" for Exclude.
    The easiest way to learn how the range selections work is, create the following dummy program:
    report dummy.
    tables: mara.
    select-options: matnr for mara-matnr.
    start-of-selection.
    loop at matnr.
    write: / matnr-sign,
    matnr-option,
    matnr-low,
    matnr-high.
    endloop.
    Run this program, and fill in a lot of junk into MATNR. Fill in some includes, some excludes, some ranges, etc., and you will soon realise how the system builds ranges (select-options). Once you know that, you can fill your own ranges quickly and efficiently.
    Hope this info helps.
    Regards,
    Kumar.

  • Error displaying a jpg file loaded into a table with blob field

    This may not be the correct forum for this question, but if it isn't could someone direct me to the correct one.
    I have created a table with a blob field in which I have loaded a jpg image. This appeared to work correctly, but when I try to display the image in internet explorer it comes back and tells me that it doesn't recognize the file type. Enclosed is the table create, load, and display pl/sql code. Can anyone tell me what I am doing wrong. Thanks. For the mime/header I used owa_util.mime_header('images/jpg') because my image is a jpg file.
    The database is 10g
    -- Create table
    create table PHOTOS
    IMAGEID NUMBER(10),
    IMAGE BLOB,
    IMAGE_NAME VARCHAR2(50)
    load image
    CREATE OR REPLACE PROCEDURE load_file ( p_id number, p_photo_name in varchar2) IS
    src_file BFILE;
    dst_file BLOB;
    lgh_file BINARY_INTEGER;
    BEGIN
    src_file := bfilename('SNAPUNCH', p_photo_name);
    -- insert a NULL record to lock
    INSERT INTO photos (imageid, image_name, image)
    VALUES (p_id , p_photo_name, EMPTY_BLOB())
    RETURNING image INTO dst_file;
    -- lock record
    SELECT image
    INTO dst_file
    FROM photos
    WHERE imageid = p_id AND image_name = p_photo_name
    FOR UPDATE;
    -- open the file
    dbms_lob.fileopen(src_file, dbms_lob.file_readonly);
    -- determine length
    lgh_file := dbms_lob.getlength(src_file);
    -- read the file
    dbms_lob.loadfromfile(dst_file, src_file, lgh_file);
    -- update the blob field
    UPDATE photos
    SET image = dst_file
    WHERE imageid = p_id
    AND image_name = p_photo_name;
    -- close file
    dbms_lob.fileclose(src_file);
    END load_file;
    display image
    PROCEDURE display_image(p_id NUMBER) IS
    Photo BLOB;
    v_amt NUMBER DEFAULT 4096;
    v_off NUMBER DEFAULT 1;
    v_raw RAW(4096);
    BEGIN
    -- Get the blob image
    SELECT image
    INTO Photo
    FROM PHOTOS
    WHERE IMAGEID = p_id;
    owa_util.mime_header('images/jpg');
    BEGIN
    LOOP
    -- Read the BLOB
    dbms_lob.READ(Photo, v_amt, v_off, v_raw);
    -- Display image
    htp.prn(utl_raw.cast_to_varchar2(v_raw));
    v_off := v_off + v_amt;
    v_amt := 4096;
    END LOOP;
    dbms_lob.CLOSE(Photo);
    EXCEPTION
    WHEN NO_DATA_FOUND THEN
    NULL;
    END;
    END;
    The url I enter is: http://webdev:7777/tisinfo/tis.tiss0011.Display_Image?p_id=1

    Just a little more information. When I enter owa_util.mime_header('image/jpeg') I can't display the file. It just shows up with a red x for the file.
    When I enter owa_util.mime_header('image/jpg') it displays the file, but in the format
    ¿¿¿¿JFIF¿¿-Intel(R) JPEG Library, version [2.0.16.48]¿¿C
    This is the way I would expect it to look if I opened it with Notepad, or an application that doesn't recognize jpg files. Can anyone tell me what I am doing wrong?? Thanks.

  • Dynamic creation of table with variable field-names

    HI
    I am looking for a way in order to create a table during runtime. The problem is that the field names of the table are provided in another table.
    TO illustrate the case at hand, an example:
    The initial table contains the fields
    UserID - attribut_name - attribute_value
    Example Data
    d00587 - first_name    - Jon
    d00587 - last_name     - Smith
    d00587 - age           - 48
    d00127 - first_name    - Jack
    d00127 - last_name     - Daniels
    d00127 - position      - Manager
    Now I need to create a table per User that looks as follows:
    for user d00587
    first_name  -  last_name  -  age
    **Values
    Jon         -  Smith      -  48
    for user d00127
    first_name  -  last_name  -  positioin
    Jack        -  Daniels    -  Manager
    I split the initial table by sorting it according to userID and then looping into an itab with an AT END OF userid, thus I receive the table per user:
    Example iTab
    UserID - attribut_name - attribute_value
    Example Data
    d00587 - first_name    - Jon
    d00587 - last_name     - Smith
    d00587 - age           - 48
    However I have no clue on how to create a new internal table with field-names = attribute_name.
    Does anybody have an idea or example code for this?
    Thanks a lot for your help,
    Kind regards,
    Mingolo

    Hello Minima
    Here is some sample coding:
    DATA:
      gt_fcat  type lvc_t_fcat,
      gdo_data TYPE REF TO data.
    FIELD-SYMBOLS:
      <gt_itab> TYPE table.
    CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'
      EXPORTING
    *     I_BUFFER_ACTIVE              =
        i_structure_name             = 'MARA'
    *     I_CLIENT_NEVER_DISPLAY       = 'X'
    *     I_BYPASSING_BUFFER           =
      CHANGING
        ct_fieldcat                  = gt_fcat
      EXCEPTIONS
        inconsistent_interface       = 1
        program_error                = 2
        OTHERS                       = 3
    IF sy-subrc <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    CALL METHOD cl_alv_table_create=>create_dynamic_table
      EXPORTING
    *      I_STYLE_TABLE             =
        it_fieldcatalog           = gt_fcat
      IMPORTING
        ep_table                  = gdo_data
    *      E_STYLE_FNAME             =
      EXCEPTIONS
        generate_subpool_dir_full = 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.
    ASSIGN gdo_data->* TO <gt_itab>.
    In your case, you would call the function module with your tables (D00587, D00127). Remove all fields from the fieldcatalog that you do not need before calling the static method.
    Regards
      Uwe

Maybe you are looking for

  • Where are my photos and albums?

    Hello, I had over 1200 photos in IPhoto and they're all gone! When I opened IPhoto, it looked like it had never been used and there are no photos are in the trash bin. This is what happened, I was deleting a few things in HP Gallery trying to clean t

  • Calling a package from HTMLDB

    Can someone help me? I'm very new to HTMLDB and basically to Oracle. I need to create a simple package (which I know how to do) and call it from HTMLDB (which I DON'T know how to do). Essentially, I'd like to have a user select an item from a drop-do

  • Web Services as Background Callable Objects?

    Hi everybody, is it possible to use an Web Service as an Background Callable Object? And if it is possible, how can I do it? For your background: If the Web Service throws an Exception, I want to handle it. My goal: The next step after finalizing the

  • How do I download the video file audio clip?

    I have imported and saved video clips in Lightroom 5. I can play these clips in LR and both video and sound is played.  When I try to download these video clips in CS6 only the video clip is downloaded but not the audio clip.

  • Can not search app store i get white page only after selecting a search option

    when searching for apps, i see the various apps that meet my selection, but when i click on any of them, all i see is a blank page,  same thing happens in categories, Fetured, charts, etc.