Cross Transaction BADI

Hi...
I have implemented the BADI <b>ME_PROCESS_PO_CUST</b> to check if the user is authorized to modify certain header fields. The BADI is being executed as expected for ME22N. However, it is not being executed for ME22, ME32 and ME32L. The SQL trace of these transactions shows that they access / trigger <b>ME_PROCESS_PO_CUST</b>.
Why is the BADI not being called for ME22, ME32 and ME32L? Which BADI is common to all these transactions?
Regards,
Anoop Sahu

hi,
It is a filter dependent badi the badi that is common to all the transaction is ME_PURCHDOC_POSTED
and the exit that is common to all the transactions is
ME_PROCESS_PO_CUST.
Reward points if usefull.
Thanks & Regards,
Kalyan.

Similar Messages

  • Adding a sub-screen to IW51 transaction (BADI or Screen-Exit)

    Hi,
    Currently we are able to capture only one Product/Material on a Service Notification(Transaction-IW51). But going forward we need to capture multiple Materials (and its details) in IW51.
    Is there any BADI or Screen-Exit (in Transaction-IW51) thorugh I can add a subscreen to capture multiple Materials/Product at one go.
    Thanks,
    Prasanna

    Hi
    When you create your screen use directly the std structure VBAK and VBAP to design the input/output fields.
    So for example if you have added the field ZZFIELD in VBAK, insert it in 8309.
    In this way the standard program VA01'll automatically store your data in your fields.
    So you don't need to write some code to store it, but only (if it needs) some code for validations in the screen flow.
    Max

  • Chatty replication protocol (2.6 messages per transaction): bad settings?

    Hi,
    I'm trying to determine why for a two-site replication setup (Linux, BDB 4.6.21 with the latest patch) it seems like a single transaction can take up to 100 ms to be replicated under heavy load when the non-replicated transaction takes 5 ms.
    The transaction in question is a fully-synchronized update (ie: a commit at site R1 should not return until R2 has also committed and flushed the transaction to disk), and there are only two sites in the replication group, the master and the replica.
    Here are the statistics I gathered from my application, at the replica after it was promoted to the master (the master having been killed):
    Replication: txnsApplied=3584, repMsgsProcessed=9390, repMsgsSent=17, repMsgsSendFailures=4, nextLSN=1/1162804, nextPages=0, pagesRecords=6, pagesRequested=0, status=3, waitingLSN=0/0, waitingPages=0
    Replication Manager: connectionAttemptsFailed=0, connectionsDropped=1, repMessagesDropped=0, repMessagesQueued=0, permFailed=4
    It seems like the replication protocol is quite chatty (2.6 messages per transaction), which may explain some of the latency.
    I use 2048-byte pages, and the typical transaction size is no more than 1024 bytes; I experimented with relaxing the transactional guarantees (setTxnNoSync et al) but had a similar experience.
    Does anyone have any suggestions for this environment configuration to increase the throughput of this kind of replication setup? Your help would be kindly appreciated.

    Replication: txnsApplied=3584, repMsgsProcessed=9390,
    repMsgsSent=17, repMsgsSendFailures=4,
    nextLSN=1/1162804, nextPages=0, pagesRecords=6,
    pagesRequested=0, status=3, waitingLSN=0/0,
    waitingPages=0
    Replication Manager: connectionAttemptsFailed=0,
    connectionsDropped=1, repMessagesDropped=0,
    repMessagesQueued=0, permFailed=4
    It seems like the replication protocol is quite
    chatty (2.6 messages per transaction), which may
    explain some of the latency.The replication protocol is that each log record written to the
    log is also transmitted to the client. Therefore, if your transaction
    has a lot of operations, or if even a single update results in several
    log records written (splitting a page, for example), each of those
    log records will be transmitted to the client.
    Does anyone have any suggestions for this environment
    configuration to increase the throughput of this kind
    of replication setup? Your help would be kindly
    appreciated.You can try the bulk message configuration option. Look at
    the dbenv->rep_set_config method with the DB_REP_CONF_BULK
    flag. That option collects the log records locally in memory and
    then sends them all either on a txn_commit operation or if the
    buffer fills up. That should result in fewer messages.
    However, it is also interesting that there were 4 message send failures
    as well as 4 permFailed counts in your statistics. It is likely whatever
    caused those resulted in some messages to rerequest the missing
    records.
    Sue LoVerso
    Oracle

  • Hide price cross all transaction

    Dear Experts
      I need to know how to hide any specific (field-column) from the SYSTEM 
    I know that i can use transaction variant SHD0 but this work for only one transaction by transaction
    i need to know how to hide this field cross transaction
    Best Reagrds

    Thanks for your quick reply This way will be headache because i will need to maintain a lot of screen layouts .. I need to know how to hide the field from all the SYSTEM .
    for example Price is displayed  in transaction ME21n,ME22N,ME23N,ME22,ME23,ME2n,ME2M,ME2L
    I need to know how to hide the price field from all the transaction .. there must be away
    Best Regards

  • About BADIs

    Hi,
    Can anyone tell me what BADIs are and some information about them...

    Hi Vijay,
    To give u an overview, BADIs can be imagined as OO extensions of SAP enhancements concept. Primary difference between customer enhancemnt and BADIs is BADIs can have multiple implementations.
    Also BADIs can be defined according to filter values (filter dependent BADIs) which are useful for mplementing country specific implementations e.g.
    The basic theory of BADIs is based on the concept of keyword INTERFACE
    Well, if u r CPP or Java developer u must be aware of Interface concept. Interface can be imagined as collection of <b>empty</b> methods. This interface needs to be implemented.
    <b>Remember that the class which implements the interface is responsible to provide concrete implementations of interface methods.</b>
    I hope u r with me upto this point.
    To relate this with how this happens in SAP, imagine that SAP wants his customers to provide certain enhacements to MIGO screen. Hence while designing the application SAP will design/define a BADI creating the interfaces needed. The interface designing is a very crucial task.
    Now u can imagine that, as a customer when we are supposed to provide enhancement to  MIGO transaction, we will need to implement certain BADI.
    SAP has created a BADI MB_MIGO_BADI e.g which can be viewed using SE18 transaction (BADI Definition).
    Now when it comes to implementing BADI, it implicitly means that we will be creating a class which will implement the inteface defined by SAP. Ok ?
    U can implement the BADI using SE19 transaction wherein u need to specify the BADI name. Implementing a BADI creates a class.
    e.g.
    1. Invoke SE19
    2. Put ZMB_MIGO_BADI
    3. Specify MB_MIGO_BADI as BADI definition name. If the BADI is filter dependent u can specify the filter criteria.
    4. This will create a class <b>ZCL_IM_MB_MIGO_BADI</b>
    5. U will see different methods which will have empty implementations. Now u r responsible to fill the necessary details.
    6. If u want to see the example code which can be filled in these implmentations some BADIs like MB_MIGO_BADI provides sample code too.
    7. Just have a look at <b>CL_EXM_IM_MB_MIGO_BADI</b>
    Hope I have cleared What BADIs are and how to implement them.
    Revert back to me in case u need further assistance.
    Reward the points if the problem is solved
    Cheers,
    Nitin

  • Cross entity BRF rules to update table UI elements

    Hello , I am trying to write a derivation using a cross entity rule that will update table UI element value. I have about 50 different rules to be created. Rule Example : Based on material type, derive the value of Sales organization and Plant.
    I have the cross entity BADI implemented. I am able to achieve the cross entity derivation for single elements, but anything in table, I am not able to get those updated.
    Please advice.

    Great that it works. However, you talk about cross-entity and BRF+. These are two different things and I'm afraid you are confusing them. Using the standard BRF+ derivation rules, you can't derive keys of entities. So, you can't default a plant for a given material type using the BRF+ derivation function.

  • Crossdocking in EWM - Vendor to Customer via Company Warehouse

    Hi All
    We have below scenario.
    1). Customer places order. 2). Company places order to vendor to satisfy the customer order. 3). Vendor delivers to company. 4). Company ships to customer without keeping the stock in warehouse.
    As I know cross-docking is a technique where we reduce the logistics expense by saving transportation and/or storage space. So, can I call this as one of the cross-docking scenario? If so, what it is in terms of SAP (EWM)?
    For sure, it is planned one but not transportation cross-docking since source and/or final destinations are not internal Warehouses. Is it Merchandise distribution? FYI, my client industry is not retail.
    In IMG, SCM Extended Warehouse Management > Extended Warehouse Management > Cross-Process Settings > Cross-Docking (CD) > Merchandise Distribution > Basic Settings for Merchandise Distribution. Here, there are few steps given for implementing Merchandise Distribution. Are there any other activities to perform? Please help.
    Thanks
    Sasidhar Gupta

    Hi Sasidhar
    Please find below points for your help and give more idea too.
    Inbound Driven
    When you create warehouse tasks for putaway, EWM checks whether ODO items exist that match the task items with regard to quantity and expiration date. Then, instead of creating the putaway warehouse task, EWM creates a cross-docking warehouse task with reference to the ODO item.   EWM also checks during the putaway warehouse task creation to see if the stock in open pick warehouse task is less adequate (in terms of FIFO or FEFO) for the ODO item than the stock to be put away (unless the warehouse task is relevant for a  material flow system). If so, EWM cancels the open pick warehouse tasks and creates a new cross-docking warehouse task with reference to the same ODO item.
    Activating Opportunistic Cross-Docking
    The opportunistic cross-docking functionality is coded within example BAdI implementations.
    This means that you have to implement these BAdIs by copying the example class to activate the functionality. To activate the opportunistic crossdocking,you must perform the steps described in this section.  Creating Implementations for Cross-Docking BAdIs
    The BAdI for opportunistic cross-docking inbound can be activated in the EWM IMG by following the menu path Extended Warehouse Management • Business Add-Ins (BAdIs) for Extended Warehouse Management • Cross Process Settings • Cross-Docking (CD) • Opportunistic Cross-Docking • EWM-Triggered Opportunistic Cross-Docking • Opportunistic Cross Docking Inbound.
    There you must create an implementation of this BAdI using example class /SCWM/
    CL_EI_CD_OPP_INBOUND and activate the implementation. The BAdI for opportunistic cross-docking outbound can be activated in the EWM IMG via the menu path Extended Warehouse Management • Business Add- Ins (BAdIs) for Extended Warehouse Management • Cross Process Settings
    Creating a Product Type Group and Product Group
    Activating Opportunistic Cross-Docking at the Warehouse Level
    Because the picking warehouse task for opportunistic cross-docking will be created
    for inbound stock that is still assigned the stock type for stock received on dock but not yet put away , you need to maintain the EWM stock determination (for more details about the stock
    determination, needs to be maintained within the stock determination for the relevant stock determination group for cross-docking.
    To start, you must first maintain a new stock determination group for cross-docking
    in the EWM IMG by following the menu path Extended Warehouse Management • Cross-Process Settings • Stock Determination • Maintain Stock Determination Groups.
    Next, you must permit the inbound stock type for an ODO item that
    has the normal stock type assigned.  To specify the stock determination in the EWM IMG, follow the menu path Extended Warehouse Management • Cross-Process Settings • Stock Determination • Configure Stock Determination.
    Finally, to activate opportunistic cross-docking for products, you must assign the product group (the one that you created in the previous steps) to the products in the Properties 2 tab of the SAP APO view of the product master.
    Transaction code /SAPAPO/MAT1.
    If you have configured the stock determination as described previously, you also need to assign the Stock Determination Group in the Warehouse Data tab of the warehouse product. tcode code /SCWM/MAT1.
    Regards
    Suraj

  • Importing internal table from one program to another program

    Hi everybody,
    i have one small doubt.
    i am using submit statement and passing the values from this program to another program selection screen. in that program logic is written.In that program one internal table values are being exported to the memory id of that program. now i have to import that internal table values into my program by using import statement. i am using the following syntax
    import itab from menory id 'program name'.
    but i am getting an error saying program name is unknown.
    what is the exat syntax for this .
    thanking you,
    giri.

    hi,
    check these statements.
    IMPORT - Get data
    Variants:
    1. IMPORT obj1 ... objn FROM DATA BUFFER f.
    2. IMPORT obj1 ... objn FROM INTERNAL TABLE itab.
    2. IMPORT obj1 ... objn FROM MEMORY.
    3. IMPORT obj1 ... objn FROM SHARED MEMORY itab(ar) ID key.
    4. IMPORT obj1 ... objn FROM SHARED BUFFER itab(ar) ID key.
    5. IMPORT obj1 ... objn FROM DATABASE dbtab(ar) ID key.
    6. IMPORT obj1 ... objn FROM DATASET dsn(ar) ID key.
    7. IMPORT obj1 ... objn FROM LOGFILE ID key.
    8. IMPORT DIRECTORY INTO itab FROM DATABASE dbtab(ar) ID key.
    9. IMPORT (itab) FROM ... .
    In some cases, the syntax rules that apply to Unicode programs are different than those for non-Unicode programs. For more details, see Storing Cluster Tables.
    Variant 1
    IMPORT obj1 ... objn FROM DATA BUFFER f.
    Extras:
    1. ... = f (for each object to be imported)
    2. ... TO f (for each object to be imported)
    3. ... ACCEPTING PADDING
    4. ... ACCEPTING TRUNCATION
    5. ... IGNORING STRUCTURE BOUNDARIES
    6. ... IGNORING CONVERSION ERRORS
    7. ... REPLACEMENT CHARACTER c
    8. ... IN CHAR-TO-HEX MODE
    9. ... CODE PAGE INTO f1
    10. ... ENDIAN INTO f2
    The syntax check performed in an ABAP Objects context is stricter than in other ABAP areas.
    See You Cannot Use Implicit Field Names in Clusters.
    Effect
    Imports the data objects obj1 ... objn from the data buffer declared. The data buffer must be of type XSTRING . The data objects obj1 ... objn can be fields, structures, complex structures, or tables. The system imports all the data that has been stored in the data buffer f using the EXPORT ... TO DATA BUFFER statement and is listed here. It also checks that the structure used in the IMPORT statement matches the one in the EXPORT statement.
    The Return Code is set as follows:
    SY-SUBRC = 0:
    The existing data objects in the data cluster specified were imported. The rest remain unchanged. (In some circumstances, this may mean that no data objects were imported).
    SY-SUBRC = 4:
    The data objects could not be imported. The contents of all the objects remain unchanged.
    Addition 1
    ... = f (for each object to be imported)
    Addition 2
    ... TO f (for each object to be imported)
    Effect
    The object is stored in the field f.
    Addition 3
    ... ACCEPTING PADDING
    Effect
    This addition allows you to append new fields to the end
    of structures, sub-structures, and internal tables. The IMPORT statement fills the additional fields with initial values; make existing fields (C, N, X, P, I1, and I2) longer; map character-type fields to STRING-type fields; or to map byte-type fields to XSTRING-type fields.
    Addition 4
    ... ACCEPTING TRUNCATION
    Effect
    This addition allows you to shorten the last CHAR
    fields, or to omit the last component at the top level. (Until Release 4.6, you could do this without using an addition).
    Addition 5
    ... IGNORING STRUCTURE BOUNDARIES
    Effect
    This addition means that only the fragment sequence is
    relevant - that is, that any sub-structures match. If you use this addition, the system ignores any alignment changes necessitated by Unicode - such as inserting named includes.
    You cannot use this addition with either addition 3 (enlarge structure) or addition 4 (shorten structure), since it specifies that structure and include boundaries are to be ignored.
    From Release 6.10 onwards, the include information is stored in datasets, so that the system can also check that includes match - that is, that sub-structures and includes (named or unnamed) are treated equally. When data is imported in a Release prior to 6.10, includes are not checked.
    Addition 6
    ...IGNORING CONVERSION ERRORS
    Effect
    This addition prevents the system from triggering a
    runtime error, if an error occurs when the character set is converted. '#' is used as a replacement character.
    Addition 7
    ... REPLACEMENT CHARACTER c
    Effect
    The replacement character is used if a particular
    character cannot be converted when the character set is converted.
    This addition can only be used in conjunction with addition 6.
    Addition 8
    ... IN CHAR-TO-HEX MODE
    Effect
    Not all character-type fields are converted. To convert
    a field, you must create a field (or structure) that is identical to the exported field or structure, except that all its character-type components must be replaced with hexadecimal fields.
    You can only use this addition in Unicode programs, to allow you to import camouflaged binary data as single-byte characters.
    Moreover, you cannot use this addition in conjunction with the additions 3, 4, 5, 6, or 7.
    Addition 9
    ... CODE PAGE INTO f1
    Effect
    The code page of the exported data is stored in the
    character-type field f1 - for example, to analyze data that has been imported with the IN CHAR-TO-HEX MODE addition.
    Addition 10
    ... ENDIAN INTO f2
    Effect
    The byte order (LITTLE or BIG) of the
    exported data is stored in the field f2 - for example, to analyze data that has been imported with the IN CHAR-TO-HEX MODE addition. The field f2 must have the type ABAP_ENDIAN, which is defined in the type group ABAP. For this reason, the type group ABAP must be included in the ABAP program using a TYPE-POOLS statement.
    Variant 2
    IMPORT obj1 ... objn FROM INTERNAL TABLE itab.
    Extras:
    1. ... = f (for each object to be imported)
    2. ... TO f (for each object to be imported)
    3. ... ACCEPTING PADDING
    4. ... ACCEPTING TRUNCATION
    5. ... IGNORING STRUCTURE BOUNDARIES
    6. ... IGNORING CONVERSION ERRORS
    7. ... REPLACEMENT CHARACTER c
    8. ... IN CHAR-TO-HEX MODE
    9. ... CODE PAGE INTO f1
    10. ... ENDIAN INTO f2
    The syntax check performed in an ABAP Objects context is stricter than in other ABAP areas. See No implicit field names in cluster.
    Effect
    Imports the data objects obj1 ... objn (fields, structures, complex structures, or tables) from the specified internal table itab. The first column in the internal table must be of the predefined type INT2 and the second must be type X. To define the first column you must refer to a data element in the ABAP Dictionary that has the predefined type INT2.
    All data that was stored in the internal table itab using EXPORT ... TO INTERNAL TABLE and listed, is imported. The system checks that the EXPORT and IMPORT structures match.
    The Return Code is set as follows:
    SY-SUBRC = 0:
    The existing data objects in the specified data cluster were imported, the rest remain unchanged (it is possible that no data object was imported).
    SY-SUBRC = 4:
    The data objects could not be imported.
    The contents of all listed objects remain unchanged
    Addition 1
    ... = f (for each object to be imported)
    Addition 2
    ... TO f (for each object to be imported)
    Effect
    Places the object in the field f.
    Addition 3
    ... ACCEPTING PADDING
    Effect
    This addition allows you to add new fields to the ends
    of structures, even to substructures and internal tables (the additional fields are filled with initial value during the IMPORT). It also allows you to increase the size of existing fields (C, N, X, P, I1, and I2) and to map Char fields to STRING type fields or byte fields to XSTRING type fields.
    Addition 4
    ... ACCEPTING TRUNCATION
    Effect
    This addition allows you to shorten the last CHAR
    field or omit the last component on the highest level (till Release 4.6 this was possible without specifying an addition).
    Addition 5
    ... IGNORING STRUCTURE BOUNDARIES
    Effect
    This addition means that only the page order is
    relevant, that is any substructures match. With this addition, the system also ignores alignment changes arising from the Unicode conversion (for example, due to subsequent insertion of named includes).
    This addition rules out any subsequent structural enhancements (addition 3) or structural shortening (addition 4) because with this addition it is the structural limits and include limits that are to be ignored.
    As from Release 6.10, the include information will also be stored in the dataset, so that it is possible to also check whether the includes match, that is substructures and includes (named or unnamed) are treated the same. When importing data that was exported in a Release lower than 6.10, the includes are not checked.
    Addition 6
    ...IGNORING CONVERSION ERRORS
    Effect
    This addition has the effect that an error in the
    character set conversion does not cause a runtime error. The system uses "#" as a replacement character.
    Addition 7
    ... REPLACEMENT CHARACTER c
    Effect
    The system uses the specified replacement character if a
    character cannot be converted during a character set conversion. If this addition is not specified, the system uses "#" as a replacement character.
    This addition can only be used in conjunction with addition 6.
    Addition 8
    ... IN CHAR-TO-HEX MODE
    Effect
    No character type fields are converted. For this you
    must create a field or structure that is identical to the exported field or exported structure, except that all character type fields must be replaced with hexadecimal fields.
    This addition, which is only allowed in programs with a set Unicode flag, allows you to import binary data disguised as single byte characters. This addition cannot be used in conjunction with additions 3, 4, 5, 6, and 7.
    Addition 9
    ... CODE PAGE INTO f1
    Effect
    The codepage of the exported data is stored in the
    character-type field f1 (for example, to be able to analyze the data imported with the addition IN CHAR-TO-HEX MODE).
    Addition 10
    ... ENDIAN INTO f2
    Effect
    The byte order (LITTLE or BIG) of the
    exported data is stored in the field f2 (for example, to be able analyze the data imported using the addition IN CHAR-TO-HEX MODE). The field f2 must be of type ABAP_ENDIAN, defined in type group ABAP. You must therefore include the type group ABAP in the ABAP program with a TYPE-POOLS statement.
    Variant 3
    IMPORT obj1 ... objn FROM MEMORY.
    Extras:
    1. ... = f (for each object to be imported) 2. ... TO f (for each object to be imported)
    3. ... ID key
    4. ... ACCEPTING PADDING
    5. ... ACCEPTING TRUNCATION
    6. ... IGNORING STRUCTURE BOUNDARIES
    The syntax check performed in an ABAP Objects context is stricter than in other ABAP areas. See You Must Enter Identification and Cannot Use Implicit Field Names inClusters
    Effect
    Imports data objects obj1 ... objn (fields, structures, complex structures or tables) from a data cluster in the ABAP memory (see EXPORT). Reads in all data without an ID that was exported to memory with "EXPORT ... TO MEMORY.". In contrast to the variant IMPORT FROM DATABASE, it does not check that the structure matches in EXPORT and IMPORT.
    The Return Code is set as follows:
    SY-SUBRC = 0:
    The existing data objects in the data cluster specified were imported. The rest remain unchanged (in some circumstances, this may mean that no data objects were imported).
    SY-SUBRC = 4:
    The data objects could not be imported, probably because the ABAP memory was empty.
    The contents of all objects remain unchanged.
    Note
    You should always use the addition 3 (... ID key) with the statement. Otherwise, the effect of the variant is not certain (EXPORT statements in different parts of a program overwrite each other in the ABAP memory), since it exists only for reasons of compatibility with R/2.
    Additional methods for selecting and deleting data clusters in the ABAP memory are provided by the system class CL_ABAP_EXPIMP_MEM.
    Please consult Data Area and Modularization Unit Organization documentation as well.
    Addition 1
    ... = f (for each object to be imported)
    Addition 2
    ... TO f (for each object to be imported)
    Effect
    The object is placed in field f.
    Addition 3
    ... ID key
    Effect
    Imports only data stored in ABAP memory under the ID key.
    Notes
    The key, key, must be a character-type data object (but not a string).
    The Return Code is set as follows:
    SY-SUBRC = 0:
    The existing data objects in the data cluster specified were imported. The rest remain unchanged (in some circumstances, this may mean that no data objects were imported).
    SY-SUBRC = 4:
    The data objects could not be imported, probably because an incorrect ID was used.
    The contents of all objects remain unchanged.
    Addition 4
    ... ACCEPTING PADDING
    Effect
    This addition allows you to append new fields to the end of structures, sub-structures, and internal tables. The IMPORT statement fills the additional fields with initial values; make existing fields (C, N, X, P, I1, and I2) longer; map character-type fields to STRING-type fields; or to map byte-type fields to XSTRING-type fields.
    Addition 5
    ... ACCEPTING TRUNCATION
    Effect
    This addition allows you to shorten the last CHAR field, or to omit the last component at the top level. (Until Release 4.6, you could do this without using an addition).
    Addition 6
    ... IGNORING STRUCTURE BOUNDARIES
    Effect
    This addition means that only the fragment sequence is relevant - that is, that any sub-structures match. If you use this addition, the system ignores any alignment changes necessitated by Unicode - such as inserting named includes.
    You cannot use this addition with either addition 3 (enlarge structure) or addition 4 (shorten structure), since it specifies that structure and include boundaries are to be ignored.
    From Release 6.10 onwards, the include information is stored in datasets, so that the system can also check that includes match - that is, that sub-structures and includes (named or unnamed) are treated equally. When data is imported in a Release prior to 6.10, includes are not checked.
    Related
    EXPORT TO MEMORY, DELETE FROM MEMORY, FREE MEMORY
    Variant 4
    IMPORT obj1 ... objn FROM SHARED MEMORY itab(ar) ID key.
    Extras:
    1. ... = f (for each object to be exported) 2. ... TO f (for each object to be exported)
    3. ... CLIENT g (before ID key)
    4. ... TO wa (after itab(ar) or ID key )
    5. ... ACCEPTING PADDING
    6. ... ACCEPTING TRUNCATION
    7. ... IGNORING STRUCTURE BOUNDARIES
    The syntax check performed in an ABAP Objects context is stricter than in other ABAP areas.
    See You Cannot Use Implicit Field Names in Clusters and You Cannot Use Table Work Areas.
    Effect
    Imports the data objects obj1 ... objn (fields, structures, complex structures, or tables) from shared memory. The data objects are read using the ID key from the area ar in the table itab - c.f. EXPORT TO SHARED MEMORY). You must use itab to specify a database table although the system reads from a memory table with the appropriate structure.
    The Return Code is set as follows:
    SY-SUBRC = 0:
    The existing data objects in the data cluster specified were imported. The rest remain unchanged. (In some circumstances, this may mean that no data objects were imported).
    SY-SUBRC = 4:
    The data objects could not be imported. You may have used the wrong ID. The contents of all the objects remain unchanged.
    Notes
    The table dbtab named according to SHARED MEMORY must be declared using TABLES (except in addition 2).
    The structure of fields (field symbols and internal tables) to be imported must match the structure of the objects exported in the dataset. The objects must be imported under the same names as those under which they were exported. Otherwise, they will not be imported.
    The key length consists of: the client (3 digits, but only if tab is client-specific); area (2 characters); ID; and line number (4 bytes). It must not exceed 64 bytes - that is, the ID must not be longer than 55 characters, if the table is client- specific.
    The key, key, must be a character-type data object (but not a string).
    Additional methods for selecting and deleting data clusters in the shared memory are provided by the system class CL_ABAP_EXPIMP_SHMEM.
    Please consult Data Area and Modularization Unit Organization documentation as well.
    Addition 1
    ... = f (for each object to be imported)
    Addition 2
    ... TO f (for each object to be imported)
    Effect
    The object is stored in the field f.
    Addition 3
    ... CLIENT g (before ID key)
    Effect
    The data is imported from client g (provided the import/export table is tab client-specific). The client, g must be a character-type data object (but not a string).
    Addition 4
    ... TO wa (after itab(ar) or ID key)
    Effect
    You need to use this addition if user data fields have been stored in the application buffer and are to be read from there. The work area wa is used instead of the table work area. The target area must correspond to the structure of the called table tab.
    Addition 5
    ... ACCEPTING PADDING
    Effect
    This addition allows you to: append new fields to the end of structures, sub-structures, and internal tables. The IMPORT statement fills the additional fields with initial values; make existing fields (C, N, X, P, I1, and I2) longer; map character-type fields to STRING-type fields; or to map byte-type fields to XSTRING-type fields.
    Addition 6
    ... ACCEPTING TRUNCATION
    Effect
    This addition allows you to shorten the last CHAR fields, or to omit the last component at the top level. (Until Release 4.6, you could do this without using an addition).
    Addition 7
    ... IGNORING STRUCTURE BOUNDARIES
    Effect
    This addition means that only the fragment sequence is relevant - that is, that any sub-structures match. If you use this addition, the system ignores any alignment changes necessitated by Unicode - such as inserting named includes.
    You cannot use this addition with either addition 4 (enlarge structure) or addition 5 (shorten structure), since it specifies that structure and include boundaries are to be ignored.
    From Release 6.10 onwards, the include information is stored in datasets, so that the system can also check that includes match - that is, that sub-structures and includes (named or unnamed) are treated equally. When data is imported in a Release prior to 6.10, includes are not checked.
    Related
    EXPORT TO SHARED MEMORY, DELETE FROM SHARED MEMORY
    Variant 5
    IMPORT obj1 ... objn FROM SHARED BUFFER itab(ar) ID key.
    Extras:
    1. ... = f (for each object to be exported) 2. ... TO f (for each object to be exported)
    3. ... CLIENT g (before ID key)
    4. ... TO wa (last addition or after itab(ar))
    The syntax check performed in an ABAP Objects context is stricter than in other ABAP areas.
    See Cannot Use Implicit Fieldnames in Clusters und Cannot Use Table Work Areas.
    Effect
    Imports data objects obj1 ... objn (fields or
    tables) from the cross-transaction application buffer. The data objects are read in the application buffer using the ID key of the area ar of the buffer area for the table itab (see EXPORT TO SHARED BUFFER). You must use dbtab to specify a database table although the system reads from a memory table with an appropriate structure.
    The Return Code is set as follows:
    SY-SUBRC = 0:
    The existing data objects in the data cluster specified were imported. The rest remain unchanged (in some circumstances, this means that no data objects were imported).
    SY-SUBRC = 4:
    The data objects could not be imported, probably because an incorrect ID was used.
    The contents of all objects remain unchanged.
    Example
    Import two fields and an internal table from the application buffer with the structure INDX:
    TYPES: BEGIN OF ITAB3_LINE,
             CONT(4),
           END OF ITAB3_LINE.
    DATA: INDXKEY LIKE INDX-SRTFD VALUE 'KEYVALUE',
          F1(4),
          F2(8) TYPE P DECIMALS 0,
          ITAB3 TYPE STANDARD TABLE OF ITAB3_LINE,
          INDX_WA TYPE INDX.
    Import data.
    IMPORT F1 = F1 F2 = F2 ITAB3 = ITAB3
           FROM SHARED BUFFER INDX(ST) ID INDXKEY TO INDX_WA.
    After import, the data fields INDX-AEDAT and
    INDX-USERA in front of CLUSTR are filled with
    the values in the fields before the EXPORT
    statement.
    Notes
    You must declare the table dbtab, named after DATABASE using a TABLES statement.
    The structure of the fields, structures, and internal tables to be imported must match the structure of the objects exported to the dataset. Moreover, the objects must be imported with the same name used to export them. Otherwise, the import is not performed.
    The maximum total key length is 64 bytes. It must include: a client if the table is client-specific (3 characters); an area (2 characters); identification; and line counter (4 bytes). This means that the number of characters available for the identification of a client-specific table is 55 characters.
    The key, key, must be a character-type data object (but not a string).
    Additional methods for selecting and deleting data clusters in the cross-transaction application buffer are provided by the system class CL_ABAP_EXPIMP_SHBUF.
    Please consult Data Area and Modularization Unit Organization documentation as well.
    Addition 1
    ... = f (for each object to be imported)
    Addition 2
    ... TO f (for each object to be imported)
    Effect
    The object is placed in the field f
    Addition 3
    ... CLIENT g (after dbtab(ar))
    Effect
    Takes the data from the client g (if the import/export table dbtab is client-specific). The client g must be a character-type data object (but not a string).
    Addition 4
    ... TO wa (as the last addition or after itab(ar))
    Effect
    You need to use this addition if you want to save user data fields in the application buffer and then read them from there later. The system uses a work area wa instead of a table work area. The target area must have the same structure as the table tab.
    Example
    DATA: INDX_WA TYPE INDX,
          F1.
    IMPORT F1 = F1 FROM SHARED BUFFER INDX(AR)
                   CLIENT '001' ID 'TEST'
                   TO INDX_WA.
    WRITE: / 'AEDAT:', INDX_WA-AEDAT,
           / 'USERA:', INDX_WA-USERA,
           / 'PGMID:', INDX_WA-PGMID.
    Variant 6
    IMPORT obj1 ... objn FROM DATABASE dbtab(ar) ID key.
    Extras:
    1. ... = f (for each object to be imported)
    2. ... TO f (for each object to be imported)
    3. ... CLIENT g (before ID key )
    4. ... USING form
    5. ... TO wa (last addition or after dbtab(ar))
    6. ... MAJOR-ID id1 (instead of ID key)
    7. ... MINOR-ID id2 (with MAJOR-ID id1 )
    8. ... ACCEPTING PADDING
    9. ... ACCEPTING TRUNCATION
    10. ... IGNORING STRUCTURE BOUNDARIES
    11. ... IGNORING CONVERSION ERRORS
    12. ... REPLACEMENT CHARACTER c
    13. ... IN CHAR-TO-HEX MODE
    14. ... CODE PAGE INTO f1
    15. ... ENDIAN INTO f2
    The syntax check performed in an ABAP Objects context is stricter than in other ABAP areas. See Cannot Use Implicit Fieldnames in Clusters and Cannot Use Table Work Areas.
    Effect
    Imports data objects obj1 ... objn (fields, structures, complex structures, or tables) from the data cluster with ID key in area ar of the database table dbtab (see EXPORT TO DATABASE).
    The Return Code is set as follows:
    SY-SUBRC = 0:
    The existing data objects in the data cluster specified were imported. The rest remain unchanged (in some circumstances, this may mean that not data objects were imported).
    SY-SUBRC = 4:
    The data objects could not be imported, probably because an incorrect ID was used.
    The contents of all objects remain unchanged.
    Example
    Import two fields and an internal table:
    TYPES: BEGIN OF TAB3_TYPE,
              CONT(4),
           END OF TAB3_TYPE.
    DATA: INDXKEY LIKE INDX-SRTFD,
          F1(4), F2 TYPE P,
          TAB3 TYPE STANDARD TABLE OF TAB3_TYPE WITH
                    NON-UNIQUE DEFAULT KEY,
          WA_INDX TYPE INDX.
    INDXKEY = 'INDXKEY'.
    IMPORT F1   = F1
           F2   = F2
           TAB3 = TAB3 FROM DATABASE INDX(ST) ID INDXKEY
           TO WA_INDX.
    Notes
    You must declare the table dbtab, named after DATABASE, using the TABLES statement (except in addition 5).
    The structure of fields, field strings and internal tables to be imported must match the structure of the objects exported to the dataset. In addition, the objects must be imported under the same name used to export them. If this is not the case, either a runtime error occurs or no import takes place.
    Exception: You can lengthen or shorten the last field if it is of type CHAR, or add/omit CHAR fields at the end of the structure.
    The key, key, must be a character-type data object (but not a string).
    Additional methods for selecting and deleting data clusters in the database table specified are provided by the system class CL_ABAP_EXPIMP_DB.
    Addition 1
    ... = f (for each object to be imported)
    Addition 2
    ... TO f (for each object to be imported)
    Effect
    The object is placed in field f.
    Addition 3
    ... CLIENT g (before the ID key)
    Effect
    Data is taken from the client g (in client-specific import/export databases only). Client g must be a character-type data object (but not a string).
    Example
    DATA: F1,
          WA_INDX TYPE INDX.
    IMPORT F1 = F1 FROM DATABASE INDX(AR) CLIENT '002' ID 'TEST'
                   TO WA_INDX.
    Addition 4
    ... USING form
    Note
    This statement is for internal use only.
    Incompatible changes or further developments may occur at any time without warning or notice.
    Effect
    Does not read the data from the database. Instead, calls the FORM routine form for each record read from the database without this addition. This routine can take the data key of the data to be retrieved from the database table work area and write the retrieved data to this work area. The name of the routine has the format <name of database table>_<name of form>; it has one parameter which describes the operation (READ, UPDATE or INSERT). The routine must set the field SY-SUBRC in order to show whether the function was successfully performed.
    Addition 5
    ... TO wa (after key or after dbtab(ar))
    Effect
    You need to use this addition if you want to save user data fields in the cluster database and then read from there. The system uses the work area wa instead of a table work area. The target area entered must have the same structure as the table dbtab.
    Example
    DATA WA LIKE INDX.
    DATA F1.
    IMPORT F1 = F1 FROM DATABASE INDX(AR)
                   CLIENT '002' ID 'TEST'
                   TO WA.
    WRITE: / 'AEDAT:', WA-AEDAT,
           / 'USERA:', WA-USERA,
           / 'PGMID:', WA-PGMID.
    Addition 6
    ... MAJOR-ID id1 (instead of the ID key).
    Addition 7
    ... MINOR-ID id2 (with MAJOR-ID id1)
    This addition is not allowed in an ABAP Objects context. See Cannot Use Generic Identification.
    Effect
    Searches for a record the first part of whose ID (length of id1) matches id1 and whose second part - if MINOR-ID id2 is also declared - is greater than or equal to id2.
    Addition 8
    ... ACCEPTING PADDING
    Effect
    This addition allows you to append new fields to the end of structures, sub-structures, and internal tables. The IMPORT statement fills the additional fields with initial values; make existing fields (C, N, X, P, I1, and I2) longer; map character-type fields to STRING-type fields; or to map byte-type fields to XSTRING-type fields.
    Addition 9
    ... ACCEPTING TRUNCATION
    Effect
    This addition allows you to shorten the last CHAR fields, or to omit the last component at the top level. (Until Release 4.6, you could do this without using an addition).
    Addition 10
    ... IGNORING STRUCTURE BOUNDARIES
    Effect
    This addition means that only the fragment sequence is relevant - that is, that any sub-structures match. If you use this addition, the system ignores any alignment changes necessitated by Unicode - such as inserting named includes.
    You cannot use this addition with either addition 8 (enlarge structure) or addition 9 (shorten structure), since it specifies that structure and include boundaries are to be ignored.
    From Release 6.10 onwards, the include information is stored in datasets, so that the system can also check that includes match - that is, that sub-structures and includes (named or unnamed) are treated equally. When data is imported in a Release prior to 6.10, includes are not checked.
    Addition 11
    ...IGNORING CONVERSION ERRORS
    Effect
    This addition prevents the system from triggering a runtime error, if an error occurs when the character set is converted. '#' is used as a replacement character.
    Addition 12
    ... REPLACEMENT CHARACTER c
    Effect
    The replacement character is used if a particular character cannot be converted when the character set is converted. If you do not use this addition, '#' is used as a replacement character.
    This addition can only be used in conjunction with addition 11.
    Addition 13
    ... IN CHAR-TO-HEX MODE
    Effect
    All character-type fields are not converted. To convert a field, you must create a field (or structure) that is identical to the exported field or structure, except that all its character-type components must be replaced with hexadecimal fields.
    You can only use this addition in Unicode programs, to allow you to import camouflaged binary data as single-byte characters. Moreover, you cannot use this addition in conjunction with the additions 8, 9, 10, 11, and 12.
    Addition 14
    ... CODE PAGE INTO f1
    Effect
    The code page of the exported data is stored in the character-type field f1 - for example, to analyze data that has been imported with the IN CHAR-TO-HEX MODE addition.
    Addition 15
    ... ENDIAN INTO f2
    Effect
    The byte order(LITTLE or BIG) of the exported data is stored in the field f2 - for example, to analyze data that has been imported with the IN CHAR-TO-HEX MODE addition. The field f2 must have the type ABAP_ENDIAN, which is defined in the type group ABAP. For this reason, the type group ABAP must be included in the ABAP program using a TYPE-POOLS statement.
    Variant 7
    IMPORT obj1 ... objn FROM DATASET dsn(ar) ID key.
    This variant is not allowed in an ABAP Objects context. See Cannot Use Clusters in Files
    Note
    This variant is no longer supported and cannot be used.
    Variant 8
    IMPORT obj1 ... objn FROM LOGFILE ID key.
    Note
    This statement is for internal use only.
    Incompatible changes or further developments may occur at any time without warning or notice.
    Extras:
    1. ... = f (for each field f to be imported) 2. ... TO f (for each field f to be imported)
    The syntax check performed in an ABAP Objects context is stricter than in other ABAP areas. See Cannot Use Implicit Field Names in Clusters
    Effect
    Imports data objects (fields, field strings or internal tables) from the update data. You must specify the update key assigned by the system (with current request number) as the key.
    The key, key, must be a character-type data object (but not a string).
    The Return Code is set as follows:
    SY-SUBRC = 0:
    The existing data objects in the data cluster specified were imported. The rest remain unchanged (in some circumstances, this may mean that no data objects were imported).
    SY-SUBRC = 4:
    The data objects could not be imported. An incorrect ID may have been used.
    The contents of all objects remain unchanged.
    Addition 1
    ... = f (for each object to be imported)
    Addition 2
    ... TO f (for each object to be imported)
    Effect
    The object is placed in field f.
    Variant 9
    IMPORT DIRECTORY INTO itab FROM DATABASE dbtab(ar) ID key.
    Extras:
    1. ... CLIENT g (after dbtab(ar)) 2. ... TO wa (last addition or after dbtab(ar))
    The syntax check performed in an ABAP Objects context is stricter than in other ABAP areas. See Cannot Use Table Work Areas.
    Effect
    Imports an object directory stored under the specified ID with EXPORT TO DATABASE into the table itab. The internal table itab may not have the type HASHED TABLE or ANY TABLE.
    The key, key, must be a character-type data object (but not a string).
    The Return Code is set as follows:
    SY-SUBRC = 0:
    The directory was successfully imported.
    SY-SUBRC = 4:
    The directory could not be imported, probably because an incorrect ID was used.
    The internal table itab must have the same structure as the Dictionary structure CDIR (INCLUDE STRUCTURE).
    Addition 1
    ... CLIENT g (before ID key)
    Effect
    Takes data from the client g (only with client-specific import/export databases). Client g must be a character-type data object (but not a string).
    Addition 2
    ... TO wa (last addition or after dbtab(ar))
    Effect
    Uses the work area wa instead of the table work area. When you use this addition, you do not need to declare the table dbtab, named after DATABASE using a TABLES statement. The work area entered must have the same structure as the table dbtab.
    Example
    Directory of a cluster consisting of two fields and an internal table:
    TYPES: BEGIN OF TAB3_LINE,
             CONT(4),
           END OF TAB3_LINE,
           BEGIN OF DIRTAB_LINE.
             INCLUDE STRUCTURE CDIR.
    TYPES  END OF DIRTAB_LINE.
    DATA: INDXKEY LIKE INDX-SRTFD,
          F1(4),
          F2(8)   TYPE P decimals 0,
          TAB3    TYPE STANDARD TABLE OF TAB3_LINE,
          DIRTAB  TYPE STANDARD TABLE OF DIRTAB_LINE,
          INDX_WA TYPE INDX.
    INDXKEY = 'INDXKEY'.
    EXPORT F1 = F1
           F2 = F2
           TAB3 = TAB3
           TO DATABASE INDX(ST) ID INDXKEY " TAB3 has 17 entries
           FROM INDX_WA.
    IMPORT DIRECTORY INTO DIRTAB FROM DATABASE INDX(ST) ID INDXKEY
           TO INDX_WA.
    Then, the table DIRTAB contains the following:
    NAME     OTYPE  FTYPE  TFILL  FLENG
    F1         F      C      0      4
    F2         F      P      0      8
    TAB3       T      C      17     4
    The meaning of the individual fields is as follows:
    NAME:
    Name of stored object
    OTYPE:
    Object type (F: Field, R: Field string / Dictionary struc

  • ABAP/4 Keywords for all SAP R/3 Versions

    Hello Experts,
          Is there any DB Table available in Data Dictionary where all these ABAP/4 Keywords available; if yes do please let me know if not available then do please provide me with all ABAP/4 Keywords of all versions of SAP R/3 if possible
    points will be awarded if helpful.
    Thanks in Advance

    Hello Arif,
    There no particular table to check all the key words in ABAP.
    To check system fields Go for
    Se11-- SYST.
    TO get the key words go to ABAPDOCU- type ur required key word in the search given in the last section.
    The best option would be to debug ABAPDOCU, when you do a click on Keywords
    Or Check the Pooled table : TSE05
    As you must be knowing ABAPDOCU is in SABAPDOCU Package.....!!
    There are a number of tables used; like ABTREE,etc !
    Explore and find whether you can get some clue!
    Find the keywords here...
    Keywords     Description
    , [, ], {, }     Syntax conventions, Syntax notation
    *, "     Comments
    **     Arithm. Operator: Exponentiation (COMPUTE)
    +, -, *, /     Arithmetical operators (COMPUTE)
    ->, =>, ->>, ~, ?=     Operators in ABAP Objects
    ABS     Mathematical function: Absolute amount COMPUTE)
    ACOS     Mathematical function: Cosine arc (COMPUTE)
    ADD     Add
    ADD-CORRESPONDING     Field string addition
    ADJACENT DUPLICATES     Delete duplicates from internal table (DELETE)
    AND     Comparison operator: and
    ANY TABLE     Generic table type for internal tables
    APPEND     Append line to internaltable
    ASIN     Mathematical function: Sine arc (COMPUTE)
    ASSIGN     Assign field symbol
    AT     Event, control break, field group determination
    ATAN     Mathematical function: Tangent  arc
    AUTHORITY-CHECK     Check authorization
    AVG     Aggregate expression: Average (SELECT)
    BACK     Positioning in list
    BETWEEN     Relational operator: Between
    BINARY SEARCH     Binary read of internaltable (READ TABLE)
      BIT-NOT     Bit calculation operator: NOT (COMPUTE)
      BIT-AND     Bit calculation operator: AND (COMPUTE)
      BIT-OR     Bit calculation operator: OR (COMPUTE)
      BIT-XOR     Bit calculation operator: AND/OR (COMPUTE)
      SET BIT     Set bit of an X field
      GET BIT     Read bit of an X field
    BLANK LINES     Switch on blank lines in list
    BREAK-POINT     Stop processing in debug mode
    C     Data type for fixed-length character string
    CA     Contains any characters -Relational operator forstring comparison
    CALL     Call external component
    CASE     Begin case distinction
    CATCH     Exception handling (catch runtime errors)
    CEIL     Mathematical function: Smallest whole value
    CENTERED     Output format: Centered(WRITE)
    CHECK     Check condition
    CHECKBOX      Display as checkbox
      PARAMETERS ... AS CHECKBOX     on the selection screen
      WRITE ... AS CHECKBOX     in a list
    CLASS     Definition of a class
    CLASS-DATA     Static attributes in classes
    CLASS-METHODS     Static methods in classes
    CLASS-EVENTS     Static events in classes
    CLASS-POOL     Introduction for type Kprograms
    CLEAR     Initialize data object
    CLIENT       Client handling when
      DELETE ... CLIENT SPECIFIED     deleting from a database
      EXPORT ... TO DATABASE ... CLIENT     Storing a data cluster
      IMPORT ... FROM DATABASE ... CLIENT     Reading a data cluster
      EXPORT ... TO SHARED BUFFER ... CLIENT     Storing a data cluster
      IMPORT ... FROM SHARED BUFFER ... CLIENT     Reading a data cluster
      INSERT ... CLIENT SPECIFIED     inserting into a database
      MODIFY ... CLIENT SPECIFIED     Insert/Modify in database(s)
      SELECT ... CLIENT SPECIFIED     reading from a database
      UPDATE ... CLIENT SPECIFIED     updating a database
    CLOSE     Close file/cursor
    CN     Contains Not Only - Relational operator for character comparison:
    CNT     Field groups: Number ofdifferent values
    CO     Contains Only - Relational operator for character comparison:
    CODE PAGE              Character set
      TRANSLATE ... FROM/TOCODE PAGE     Translate character codes
    COLLECT     Internal table: Add entries
    COLOR     Output format: Color (FORMAT)
    COMMENT                  Comment on selection screen
      SELECTION-SCREEN COMMENT     Generate comment
    COMMIT     Close processing unit
    COMMUNICATION     Data exchange
    COMPUTE     Perform calculations
    CONCATENATE     Concatenate character fields
    CONDENSE     Condense character fields
    CONSTANTS     Defing constants
    CONTEXTS     Communicate contexts
    CONTINUE     Exit current loop pass
    CONTROLS     Define controls for visualization
    CONVERT     Convert fields
    COS     Mathematical function: Cosine (COMPUTE)
    COSH     Mathematical function: Hyperbola cosine (COMPUTE)
    COUNT     Aggregate expression: Count (SELECT)
    COUNTRY     Set country ID (SET)
    CP     Relational operator forcharacter comparison:
    DATABASE                Contains Pattern
    CREATE     Generate an object or data object
    CS     Contains character - Relational operator forcharacter comparison
    CURRENCY     Output format: Correct format for currency (WRITE)
    CURSOR                   Cursor
      CLOSE                Close database cursor
      FETCH NEXT CURSOR     Read lines with a database cursor
      GET CURSOR FIELD        Get field name
      OPEN CURSOR            Open database cursor
      SET CURSOR            Position cursor
    CUSTOMER-FUNCTION      Call customer enhancement
    DATA     Define data
    DATABASE               Data cluster
      DELETE FROM DATABASE        Delete from a database table
      EXPORT ... TO DATABASE        Store in a databasetable
      IMPORT ... FROM DATABASE     Read from a database table
    DATASET                 Sequential file
      CLOSE DATASET          Close file
      DELETE DATASET        Delete file
      EXPORT ... TO DATASET        Store data cluster in file
      IMPORT ... FROM DATASET       Read data cluster from file
      OPEN DATASET    Open file     Open file
      READ DATASET        Read from a file
      TRANSFER       Output to a file
    DECIMALS     Output format: Places after the decimal point - (WRITE)
    DEFINE     Define macro
    DELETE     Delete from tables or from objects
    DEMAND     Request information from a context
    DESCRIBE     Determine attributes ofdata objects
    DIALOG     Call a dialog module (CALL)
    DISTINCT            Duplicates
      SELECT DISTINCT          Selection set without duplicates
      AVG( DISTINCT ... )        Average without duplicates (SELECT)
      COUNT( DISTINCT ... )        Sequential file
      MAX( DISTINCT ... )      Maximum without duplicates (SELECT)
      MIN( DISTINCT ... )      Minimum without duplicates (SELECT)
      SUM( DISTINCT ... )     Sum without duplicates (SELECT)
    DIV     Arithmetic operator: Whole number division
    DIVIDE     Divide
    DIVIDE-CORRESPONDINGField string division     Field string division
    DO     Loop
    DYNPRO               Screen      Screen
      DELETE DYNPRO    Delete     Delete
      EXPORT DYNPRO    Export     Export
      GENERATE DYNPRO    Generate     Generate
      IMPORT DYNPRO    Import      Import
      SYNTAX-CHECK FOR DYNPRO   Check     Check
    EDITOR-CALL     Call editor
    ELSE     Query
    ELSEIF     Query
    END-OF-DEFINITION     End of a macro definition
    END-OF-PAGE     Event: End of page handling in lists
    END-OF-SELECTION     Event: After processingof all records in a LDB
    ENDAT     End of an event introduced by AT
    ENDCASE     End of case distinction
    ENDCATCH     End of exception handling
    ENDDO     End of a DO loop
    ENDEXEC     End of a Native SQL statement
    ENDFORM     End of a subroutine
    ENDFUNCTION     End of a function module
    ENDIF     End of a query
    ENDINTERFACE     End of an interface definition
    ENDLOOP     End of a LOOP
    ENDMODULE     End of a module definition
    ENDON     End of a conditional statement
    ENDPROVIDE     End of a PROVIDE loop
    ENDSELECT     End of a SELECT loop
    ENDWHILE     End of a WHILE loop
    EQ     Relational operator: Equals
    EXEC SQL     Native SQL statement
    EXIT     Exit loop or terminate processing
    EXP     Mathematical function: Exponential function
    EXPONENT     Output format: Exponentdisplay (WRITE)
    EXPORT     Export data
    EXTENDED CHECK     Switch extended syntax check on/off (SET)
    EXTRACT     Generate extract dataset
    FETCH     Read line from a database table
    FIELD-GROUPS     Define field groups
    FIELD-SYMBOLS     Define field symbols
    FLOOR     Mathematical function:Largest whole value
    FORM     Define subroutine
    FORMAT     Output format for lists
    FOR UPDATE     Read database table with lock (SELECT)
    FRAC     Mathematical function: Fraction (COMPUTE)
    FREE     Release resources no longer needed
    FUNCTION     Define function module
      CALL FUNCTION     Call function module
    FUNCTION-POOL     Introduction for type Fprograms
    GE     Relational operator: Greater than or equal
    GENERATE     Generate a program or screen
    GET     Event, read settings
    GT     Relational operator: Greater than
    HASHED TABLE     Table type for internalhashed tables
    HEADER LINE     Define an internal table with header line (DATA)
    HELP-ID                Help ID for F1 help
      DESCRIBE FIELD ... HELP-ID      Determine help ID
    HELP-REQUEST              Self-programmed help (F1)
      PARAMETERS ... HELP-REQUEST          for parameters
      SELECT-OPTIONS ... HELP-REQUEST      for selection options
    HIDE     Store line information
    HOTSPOT     Output format: Hotspot,interaction by simple - mouse click (FORMAT)
    ICON     Icons in lists
    IF     Query
    IMPORT     Import data or a screen
    IN     Relational operator: Selection criterion
    INCLUDE     Include program components
    INDEX                    Line index in an internal table
    INDEX TABLE     
      DELETE ... INDEX     Delete line
      INSERT ... INDEX     Insert line
      MODIFY ... INDEX     Modify line
      READ TABLE ... INDEX     Read line
    INFOTYPES     Declare HR info type
    INITIAL     Relational operator: Initial value
    INITIAL SIZE     Define an internal table type (TYPES)
    INITIALIZATION     Event: Before display of the selection screen
    INPUT     Output format: Ready for input (FORMAT)
    INSERT     Insert into tables or objects
    INTENSIFIED     Output format: Intensified (FORMAT)
    INTERFACE     Definition of an interface
    INTERFACES     Class component interface
    INTERFACE-POOL     Introduction fortype J programs
    INVERSE     Output format: Inverse (FORMAT)
    IS                 Relational operator
      IS ASSIGNED      Relational operator: Is the field symbol assigned?
      IS INITIAL             Relational operator: Initial value
      IS REQUESTED          Relational operator: Existence of a formal
    parameter     
    JOIN     Join (SELECT)
    LANGUAGE     Set language for text elements (SET)
    LE     Relational operator: Less than or equal
    LEAVE     Leave processing
    LEFT-JUSTIFIED     Output format: Left-justified (WRITE)
    LIKE                     Use an existing field as areference
      TYPES ... LIKE     Create a type
      DATA ... LIKE     Create a field
    LINE                      Line in a list
      MODIFY LINE     Modify line
      READ LINE             Read line
    LINE-COUNT     Number of lines per page (NEW-PAGE)
    LINE-SIZE     Line size (NEW-PAGE)
    LIST-PROCESSING          List processing (LEAVE)
    LOAD     Load program componentsin internal table
    LOAD-OF-PROGRAM          Execution at load time
    LOCAL     Rescue actual parameters of a subroutine
    LOCAL COPY     Assign local copy to a field symbol
    LOCALE     Set text environment (SET)
       SET LOCALE     Set text environment
       GET LOCALE     Determine text environment
    LOG     Mathematical function: Natural logarithm (COMPUTE)
    Logical condition     
      SELECT ... WHERE         when reading database tables
      UPDATE ... WHERE         when changing database tables
      DELETE ... WHERE         when deleting fromdatabase tables
      SELECT ... FROM ... ON        when reading usinga join
    LOG10     Mathematical function: Base 10 logarithm (COMPUTE)
    LOOP     Loop
    LT     Relational operator: Less than
    M     Relational operator: Byte contains zeros and ones
    MARGIN     List output: Distance from edge (SET)
    MATCHCODE            Matchcode handling
    PARAMETERS ... MATCHCODE          for parameters
      SELECT-OPTIONS ... MATCHCODE      for selection options
    MAX     Aggregate expression: Maximum (SELECT)
    MEMORY                    ABAP/4 memory
      EXPORT ... TO MEMORY      Roll out data to memory
      IMPORT ... FROM MEMORY     Restore data from memory
    MESSAGE     Output message
    MESSAGE-ID     Specify message class (REPORT)
    METHOD     Definition of a method
    METHODS     Class component method
    MIN     Aggregate expression: Minimum (SELECT)
    MOD     Arithmetic operator: Remainder after division
         (COMPUTE)
    MODIFY     Modify tables or objects
    MODULE     Flow logic: Module
    MOVE     Assignment
    MOVE-CORRESPONDING       Component-by-component assignment
    MULTIPLY     Multiply
    MULTIPLY-CORRESPONDING     Field string multiplication
    NA     Relational operator forcharacter comparison:
         Contains not any characters
    NE     Relational operator: Not equal
    NEW-LINE     List processing: New line
    NEW-PAGE     List processing: New page
    NODES     Interface work area forlogical databases
    NO-GAP     Output format: Leave nogaps (WRITE)
    NO-HEADING     Display no column headers (NEW-PAGE)
    NO-SCROLLING     Do not scroll line (NEW-LINE)
    NO-SIGN     Output format: No preceding signs (WRITE)
    NO-TITLE     Do not display standardpage header (NEW-PAGE)
    NO-ZERO     Output format: No leading zeros (WRITE)
    NON-UNIQUE               Defines an
      TYPES     internal table type
      DATA                   internal table object
    NP     Relational operator forcharacter comparison:
         Does not contain pattern
    NS     Relational operator forcharacter comparison:
         Does not contain character
    O     Relational operator: Byte positions occupied by1
    OBJECT                External object
      CREATE OBJECT     Generate
      FREE OBJECT       Release
    OCCURS       Defines an
      TYPES     internal table type
      DATA                   internal table object
    ON CHANGE     Control break
    OPEN     Open file/cursor
    OR     Relational operator: OR
    ORDER BY     Sort table rows (SELECT)
    OVERLAY     Overlay character fields
    PACK     Conversion
    PARAMETER                Parameter in global SAP memory
      GET     Read parameter
      SET     Set parameter
    PARAMETERS     Define report parameters
    PERFORM     Execute subroutine
    PF-STATUS     Set GUI status
    POSITION     List processing: Defineoutput position
    PRINT     Print formatting (NEW-PAGE)
    PRINT-CONTROL     Define print format
    PRIVATE     Class area not visible from outside
    PROGRAM     Introduction for type Mand S programs
      LEAVE PROGRAM     Leave program
    PROPERTY                 Object property
      GET PROPERTY     Get property
      SET PROPERTY     Set property
    PROVIDE     Internal tables: Interval-related processing
    PUT     Trigger event
    RADIOBUTTON     Radio button (PARAMETERS)
    RAISE     Raise exceptions and events
    RAISING     Raise error message in function module
    RANGES     Define internal table for selection criterion
    READ     Read tables or objects
    RECEIVE     Receive results (RFC)
    REFRESH     Delete internal table
    REFRESH CONTROL     Initialize control
    REJECT     Do not process current database line further
    REPLACE     Replace characters
    REPORT     Introduction for type 1programs
      DELETE REPORT         Delete program
      EDITOR-CALL FOR REPORT        Call ABAP program editor
      INSERT REPORT        Insert program in library
      READ REPORT        Read program
    RESERVE     List processing: Conditional new page
    RESET     Output format: Reset all formats (FORMAT)
    RIGHT-JUSTIFIED     Output format: Right justified (WRITE)
    ROLLBACK     Roll back database changes
    ROUND     Output format: Scaled (WRITE)
    RTTI     Runtime type identification
    RUN TIME ANALYZER     Activate/Deactivate runtime analysis (SET)
    SCAN     Analyze ABAP/4 source code
    SCREEN            Screen
      CALL SCREEN     Call screen
      SET SCREEN     Set next screen
      LEAVE SCREEN     Leave screen
      LEAVE TO SCREEN     Branch to a screen
      LOOP AT SCREEN     Loop through screen fields
      MODIFY SCREEN     Modify screen fields
    SCROLL     List processing: Scroll
    SCROLL-BOUNDARY          List processing: Fix lead columns (SET)
    SEARCH     Find character
    SELECT     Read database table
    SELECT-OPTIONS           Define selection criterion
    SELECTION-SCREEN     Design selection screen
      AT SELECTION-SCREENEvent:     After editing ofselection screen
    SHARED BUFFER           Cross-transaction application buffer
      DELETE FROM SHARED BUFFER         delete from application buffer
      EXPORT ... TO SHARED BUFFER       Store data in application buffer
      IMPORT ... FROM SHARED BUFFER     Read data from application buffer
    SELECTION-TABLE     Selection table (SUBMIT)
    SET     Set different processing parameters
    SHIFT     Move character
    SIGN     Mathematical function: Sign (COMPUTE)
    SIN     Mathematical function: Sine (COMPUTE)
    SINGLE     Select single record (SELECT)
    SINH     Mathematical function: Hyperbola  sine (COMPUTE)
    SKIP     List processing: Outputblank line
    SORT     Sort internal table or extract dataset
    SORTED TABLE     Table type for internaltables that are always kept
    SPLIT     Split character fields
    SQRT     Mathematical function: Square  root (COMPUTE)
    STANDARD TABLE     Table type for standardinternal tables
    START-OF-SELECTION     Event: Before first access to LDB
    STATICS     Define static data
    STOP     Stop data selection (LDB)
    STRING     Data type for variable-length character sequence
    STRLEN     Character function: Current length (COMPUTE)
    STRUCTURE         Data structure
      INCLUDE STRUCTURE     Use structure
    SUBMIT     Program call
    SUBTRACT     Subtract
    SUBTRACT-CORRESPONDING     Field string subtraction
    SUM     Calculate control total
      SELECT ... SUM     Aggregate expression: Total
    SUPPLY     Supply context key fields
    SUPPRESS DIALOG     Suppress dialog
    SYMBOL     Output as symbol (WRITE)
    SYNTAX-CHECK     Syntax check for programs and screens
    SYNTAX-TRACE     Syntax check log
    SYSTEM-CALL     Call to various system services
    SYSTEM-EXCEPTIONS        Catch runtime errors (CATCH)
    TABLE LINE               Unstructured lines in internal tables
    TABLE_LINE               Unstructured lines in internal tables
    TABLES     Declare database table
    TABLE                    Set or array operations for database tables
      DELETE ... FROM TABLE     Delete block of lines
      INSERT ... FROM TABLE     Insert block of lines
      MODIFY ... FROM TABLE     Insert/update block of lines
      UPDATE ... FROM TABLE     Update block of lines
      SELECT ... INTO TABLE     Copy block of lines to internal table
    TAN     Mathematical function: Tangent (COMPUTE)
    TANH     Mathematical function: Hyperbola tangent (COMPUTE)
    TEXT      Locale-specific
      CONVERT TEXT     Set format
      SORT itab AS TEXT     Sort an internal table
      SORT AS TEXT     Sort an extract dataset
    TEXTPOOL                 Text elements
      DELETE TEXTPOOL     Delete
      INSERT TEXTPOOL     Insert
      READ TEXTPOOL     Read
    TIME                     Time measurement
      GET RUN TIME     Get runtime
      GET TIME     Get time
      SET RUN TIME ANALYZER     Switch runtime analysison/off
    TIME STAMP               Time stamp
      GET TIME STAMP     Get time stamp
      CONVERT TIME STAMP     Convert time stamps to date/time
      WRITE f TIME ZONE     Output of time stamps to lists
    TITLEBAR     Set screen title (SET)
    TOP-OF-PAGE     Event: Top of page handling in lists
    TRANSACTION              SAP transaction
      CALL TRANSACTION     Call
      LEAVE TO TRANSACTION     Leave to
    TRANSFER     Output to file
    TRANSLATE     Character conversion incharacter fields
    TRANSPORTING       Selective field transport
      MODIFY ... TRANSPORTING     Modify lines of an internal table
      READ   ... TRANSPORTING     Read lines of an internal table
      LOOP   ... TRANSPORTING     Loop through an internal table
    TRUNC     Mathematical function: Whole  number part (COMPUTE)
    TYPE                     Define a type
      TYPES ... TYPE     Define a type
      DATA ... TYPE     Define a field
    TYPE-POOL     Introduction for type Tprograms
    TYPE-POOLS     Include type group
    TYPES     Define types
    ULINE     List processing: Underscore
    UNDER     Output format: One under the other (WRITE)
    UNIQUE           Define an
      TYPES     internal table type
    DATA                   internal table object
    UNIT     Output format: Unit (WRITE)
    UNPACK     Conversion
    UPDATE     Update database table
    USER-COMMAND     List processing: Execute command immediately (SET)
    USING                    Use parameter or format
      USING                  Parameter of a subroutine
      USING EDIT MASK     Output format: Use template (WRITE)
    VALUE-REQUEST            Self-programmed value help(F4)
      PARAMETERS ... VALUE-REQUEST          for parameters
      SELECT-OPTIONS ... VALUE-REQUEST      for selection options
    WHEN     Case distinction
      SELECT ... WHERE      when reading from databasetables
      UPDATE ... WHERE       when changing database tables
      DELETE ... WHERE      when deleting database tables
      LOOP AT ... WHERE     when looping at internal tables
      DELETE ... WHERE       when deleting from internal tables
    WHILE     Loop
    WINDOW     List processing: Outputin window
    WITH-TITLE     Output standard page header (NEW-PAGE)
    WORK                     Processing unit
      COMMIT WORK     Close unit
      ROLLBACK WORK     Close unit, but undo changes
    WRITE     List processing: Output
    WRITE TO     Correct type output in a variable
    X     Data type for fixed-length byte sequence
    XSTRING     Data type for variable-length byte sequence
    Z     Relational bit operator: Bit positions occupiedby
    Regards
    Sasidhar Reddy Matli.

  • Memory Analysis for a program

    Hi All,
    In production sometimes a data load fails because of the less ABAP memory available.
    For a perticular load ABAP memory goes till 4 Gb and more and after that load fails with short dump.
    This time i change a start routine logic  and split a complex start routine logic in two programs.
    Now i want to check about what memory my new programs are taking.
    1. One of the programs is in start routine itself .
    2. Second program is SE38 program.
    How I can see the memry consumption while data load.
    thanks
    Mukesh

    HI
    SAP memory is for cross-transaction Applications and ABAP/4 memory is transaction-specific. So you can use SQL Trace to see the back ground process tables and details for the same Transaction.
    The SAP memory, otherwise known as the global memory, is available to a user during the entire duration of a terminal session. Its contents are retained across transaction boundaries as well as external and internal sessions. The contents of the ABAP/4 memory are retained only during the lifetime of an external session. You can retain or pass data across internal sessions.
    The SET PARAMETER and GET PARAMETER statements allow you to write to, or read from, the SAP memory. The EXPORT TO MEMORY and IMPORT FROM MEMORY statements allow you to write data to, or read data from, the ABAP memory.
    ABAP memory is a memory area that all ABAP programs within the same internal session can access using the EXPORT and IMPORT statements. Data within this area remains intact during a whole sequence of program calls. To pass data to a program which you are calling, the data needs to be placed in ABAP memory before the call is made. The internal session of the called program then replaces that of the calling program. The program called can then read from the ABAP memory.
    Put function group memory in ABAP-MEMORY-- BAL_GLB_MEMORY_IMPORT Get function group memory from ABAP
    Hope it helps

  • EXPORT/IMPORT  to MEMORY

    Hi,
    I want to know if a parameter ID  of "export/import to memory" instruction is available in two differents session with different user's login?
    tks
    Carlos

    The use of the shared buffer may be of some interest to you.
    <b>From F1 help</b>
    <i>EXPORT obj1 ... objn TO SHARED BUFFER dbtab(ar) ID key.
    Additions:
    1. ... = f (for each field you want to export)
    2. ... FROM f (for each field you want to export)
    3. ... CLIENT g (before ID key)
    4. ... FROM wa (as last addition or after dbtab(ar))
    In an ABAP Objects context, a more severe syntax check is performed that in other ABAP areas. See Implicit field names not allowed in clusters and Table work areas not allowed.
    Effect
    Stores a data cluster in the cross-transaction application buffer.The specified objects obj1 ... objn (fields, structures, or tables) are stored as a single cluster in the buffer.
    The specified table dbtab must have a standard structure.
    The buffer area for the table dbtab is divided into various logically-related areas (ar, two-character ID).
    You can export a collection of data objects (data cluster) to an area of the buffer under a key of your own choosing (key field).
    You can import individual data objects from this collection using the IMPORT statement (as long as the data has not been deleted from the buffer).
    Notes
    In classes, you must always specify explicit names for the data objects. Addition 1 or addition 2 is therefore obligatory.
    In classes, you must always specify the work area explicitly. Addition 4 is therefore obligatory.
    The table dbtab that you specify after SHARED BUFFER must be declared under TABLES (except in addition 4).
    You cannot export the header line of an internal table. If you specify the name of an internal table with a header line, the system always exports the actual table data.
    You cannot export data, object, and interface references.
    Please consult Data Area and Modularization Unit Organization documentation as well.
    Example
    Exporting two fields and an internal table to the buffer with structure INDX:
    TABLES INDX.
    TYPES: BEGIN OF ITAB3_TYPE,
              CONT(4),
           END OF ITAB3_TYPE.
    DATA: INDXKEY LIKE INDX-SRTFD VALUE 'KEYVALUE',
          F1(4), F2 TYPE P,
          ITAB3 TYPE STANDARD TABLE OF ITAB3_TYPE WITH
                     NON-UNIQUE DEFAULT KEY INITIAL SIZE 2,
          WA_INDX TYPE INDX.
    Fill data fields before CLUSTR
    before the actual export
    INDX-AEDAT = SY-DATUM.
    INDX-USERA = SY-UNAME.
    Export data.
    EXPORT F1    FROM F1
           F2    FROM F2
           ITAB3 FROM ITAB3
           TO SHARED BUFFER INDX(ST) FROM WA_INDX ID INDXKEY.
    Addition 1
    ... = f (for each object you want to export)
    Effect
    Exports the contents of the field f and stores them under the specified name.
    Addition 2
    ... FROM f (for each field you want to export)
    Effect
    Exports the contents of field f and stores them under the specified name.
    Addition 3
    ... CLIENT g (before ID key)
    Effect
    The data objects are stored in client g (as long as the import/export table dbtab is client-specific).
    Addition 4
    ... FROM wa (as last addition or after dbtab(ar))
    Effect
    Use this addition if you want to store user data fields in the application buffer. Instead of the table work area, the system uses the specified work area wa. The specified work area must have the same structure as the table dbtab.
    Example
    DATA WA LIKE INDX.
    DATA F1.
    WA-AEDAT = SY-DATUM.
    WA-USERA = SY-UNAME.
    WA-PGMID = SY-REPID.
    EXPORT F1 = F1 TO SHARED BUFFER INDX(AR)
                   CLIENT '001' ID 'TEST'
                   FROM WA.
    Note
    Catchable runtime error
    EXPORT_BUFFER_NO_MEMORY: The EXPORT data cluster is too big for the application buffer. This error should not occur often, since the buffer uses a procedure similar to the LRU(Least Recently Used) procedure to monitor the buffer contents. However, if the error does occur, you can increase the profile parameter rsdb/obj/buffersize (see Profile Parameter Attributes), which may help.</i>
    Regards,
    Rich Heilman

  • Related to previous post..

    Hi realted to my previous question, I was looking at standard ABAP SAPCript driver program PSFCOBJL.
    I see something like follwoing inside include LCODRINC:- 
    Import .....
    FROM MEMORY ID 'PPT'.
      IMPORT ITAB
             ITAB_TDR       FROM MEMORY ID 'PPI'.
      IMPORT PRLST_TMP      FROM MEMORY ID 'PPS'.
    What does memory ID' PPT', 'PPI' and 'PPS' signify.
    Is this the place from where we can ftech the initail data field(Explained in my previous post)
    Tushar.

    SAP and ABAP/4 Memory
    There is a difference between the cross-transaction SAP memory and the transaction-specific ABAP/4 memory.
    SAP memory
    The SAP memory, otherwise known as the global memory, is available to a user during the entire duration of a terminal session. Its contents are retained across transaction boundaries as well as external and internal sessions. The SET PARAMETER and GET PARAMETER statements allow you to write to, or read from, the SAP memory.
    ABAP/4 memory
    The contents of the ABAP/4 memory are retained only during the lifetime of an external session (see also Organization of Modularization Units). You can retain or pass data across internal sessions. The EXPORT TO MEMORY and IMPORT FROM MEMORY statements allow you to write data to, or read data from, the ABAP memory.
    Please consult Data Area and Modularization Unit Organization documentation as well.
    and
    Memory Structures of an ABAP Program
    IMPORT - Reading Data
    Variants:
    1. IMPORT obj1 ... objn FROM MEMORY.
    2. IMPORT obj1 ... objn FROM DATABASE dbtab(ar) ID key.
    3. IMPORT obj1 ... objn FROM LOGFILE ID key.
    4. IMPORT DIRECTORY INTO itab FROM DATABASE dbtab(ar) ID key.
    5. IMPORT obj1 ... objn FROM DATASET dsn(ar) ID key.
    6. IMPORT obj1 ... objn FROM SHARED BUFFER dbtab(ar) ID key.
    7. IMPORT (itab) FROM ... .
    Variant 1
    IMPORT obj1 ... objn FROM MEMORY.
    Additions:
    1. ... = f (for each object to be imported)
    2. ... TO f (for each object to be imported)
    3. ... ID key
    In an ABAP Objects context, a more severe syntax check is performed that in other ABAP areas. See ID must be specified and Implicit Field Names not Allowed inClusters
    Effect
    Imports the data objects obj1 ... objn (fields, structures, complex structures, or tables) from a data cluster in ABAP memory . All data exported to ABAP memory using EXPORT... TO MEMORY without ID is read. Unlike the IMPORT FROM DATABASE variant, the sytsem does not check whether the structures used in EXPORT and IMPORT correspond.
    The return code is set as follows:
    SY-SUBRC = 0:
    Data objects imported.
    SY-SUBRC = 4:
    Unable to import data objects.
    The ABAP memory was probably empty.
    The contents of all listed objects remain unchanged.
    Notes
    You should always use addition 3 /... ID key) with this statement. Variants that do not use this addition have unpredictable effects ( EXPORT statements in different parts of programs can overwrite each other's data in ABAP memory. These variants only exist for the sake of compatibility with R/2.
    Please consult Data Area and Modularization Unit Organization documentation as well.
    Addition 1
    ... = f (for each object you want to import)
    Addition 2
    ... TO f (for each object you want to import)
    Effect
    Places the object in the field f.
    Addition 3
    ... ID key
    Effect
    Only the data stored in ABAP memory under the key key is imported.
    The return code is set as follows:
    SY-SUBRC = 0:
    Data objects imported.
    SY-SUBRC = 4:
    Data objects could not be imported.
    You may have used an incorrect ID.
    The contents of all listed objects remain unchanged.
    Related
    EXPORT TO MEMORY, FREE MEMORY
    Variant 2
    IMPORT obj1 ... objn FROM DATABASE dbtab(ar) ID key.
    Additions:
    1. ... = f (for each object you want to import)
    2. ... TO f (for each object you want to import)
    3. ... CLIENT g (before ID key )
    4. ... USING form
    5. ... TO wa (as last addition or after dbtab(ar))
    6. ... MAJOR-ID id1 (instead of ID key)
    7. ... MINOR-ID id2 (together with MAJOR-ID id1)
    In an ABAP Objects context, a more severe syntax check is performed that in other ABAP areas. See Implicit field names not allowed in clusters and Table work areas not allowed.
    Effect
    Imports data objects obj1 ... objn (fields, structures, complex structures, or tables) from the data cluster with the ID key in area ar of the database table dbtab (compare EXPORT TO DATABASE).
    The return code is set as follows:
    SY-SUBRC = 0:
    Data objects imported.
    SY-SUBRC = 4:
    Data objects could not be imported.
    You may have used an incorrect ID.
    The contents of all listed objects remain unchanged.
    Example
    Importing two fields and an internal table:
    TYPES: BEGIN OF TAB3_TYPE,
              CONT(4),
           END OF TAB3_TYPE.
    DATA: INDXKEY LIKE INDX-SRTFD,
          F1(4), F2 TYPE P,
          TAB3 TYPE STANDARD TABLE OF TAB3_TYPE WITH
                    NON-UNIQUE DEFAULT KEY,
          WA_INDX TYPE INDX.
    INDXKEY = 'INDXKEY'.
    IMPORT F1   = F1
           F2   = F2
           TAB3 = TAB3 FROM DATABASE INDX(ST) ID INDXKEY
           TO WA_INDX.
    Notes
    You must have named the table dbtab listed in DATABASE in a TABLES statement (except in addition 7).
    The structure of the fields, structures, and internal tables that you want to import must correspond to the objects exported to the dataset. Furthermore, the objects must be imported with the same names with which they were exported. If you do not do this, the import will fail, and a runtime error may occur.
    Exception: The last field may be longer or shorter, as long as it has type CHAR. Likewise, you can add or remove CHAR fields at the end of the structure.
    Addition 1
    ... = f (for each object you want to import)
    Addition 2
    ... TO f (for each object you want to import)
    Effect
    Places the object in the field f.
    Addition 3
    ... CLIENT g (before ID key)
    Effect
    The data is taken from client g (only for client-specific import/export databases).
    Example
    DATA: F1,
          WA_INDX TYPE INDX.
    IMPORT F1 = F1 FROM DATABASE INDX(AR) CLIENT '002' ID 'TEST'
                   TO WA_INDX.
    Addition 4
    ... USING form
    Note
    This statement is for internal use only.
    Incompatible changes or further developments may occur at any time without warning or notice.
    Effect
    The data is not read from the database. Instead, the subroutine form is called for each data record that would have been read from the database. This routine can use the key fields of the records that would have been read from the work area of the database table and write the procured data into the work area. The routine has the name <database table name>_<subroutine name>. It has one parameter that describes the operation mode (READ, UPDATE, or INSERT). The routine must set SY-SUBRC to indicate whether the function has been executed successfully.
    Note
    Runtime errors: Various runtime errors can occur, depending on the operands you use to import data:
    Addition 5
    ... TO wa (last addition or after dbtab(ar))
    Effect
    Use this addition when you want to read user data fields that have been strored in the database. Instead of the table work area, the statement uses the specified work area wa. The target area must have the structure of the corresponding table dbtab.
    Example
    DATA WA LIKE INDX.
    DATA F1.
    IMPORT F1 = F1 FROM DATABASE INDX(AR)
                   CLIENT '002' ID 'TEST'
                   TO WA.
    WRITE: / 'AEDAT:', WA-AEDAT,
           / 'USERA:', WA-USERA,
           / 'PGMID:', WA-PGMID.
    Addition 6
    ... MAJOR-ID id1 (instead of ID key)
    Addition 7
    ... MINOR-ID id2 (together with MAJOR-ID id1)
    This addition is not allowed in an ABAP Objects context. See Generic ID not allowed.
    Effect
    Searches for a record with an ID whose first part corresponds to id1 and (if you also specify MINOR-ID id2) whose second part is greater than or equal to id2.
    Variant 3
    IMPORT obj1 ...objn FROM LOGFILE ID key.
    Note
    This statement is for internal use only.
    Incompatible changes or further developments may occur at any time without warning or notice.
    Additions:
    1. ... = f (for each field f you want to import)
    2. ... TO f (for each field f you want to import)
    In an ABAP Objects context, a more severe syntax check is performed that in other ABAP areas. See Implicit field names not allowed in clusters
    Effect
    Imports data objects (fields, structures, or internal tables) from the update data. You must specify the update key assigned by the system (with the serial request number).
    The return code is set as follows:
    SY-SUBRC = 0:
    Data objects imported.
    SY-SUBRC = 4:
    Data objects could not be imported.
    You may have used an incorrect ID.
    The contents of all objects listed in the statement remain unchanged.
    Addition 1
    ... = f (for each object you want to import)
    Addition 2
    ... TO f (for each object you want to import)
    Effect
    Places the object in the field f.
    Variant 4
    IMPORT DIRECTORY INTO itab FROM DATABASE dbtab(ar) ID key.
    Additions:
    1. ... CLIENT g (before ID key)
    2. ... TO wa (last addition or after dbtab(ar))
    In an ABAP Objects context, a more severe syntax check is performed that in other ABAP areas. See Table work areas not allowed.
    Effect
    Places a directory of the objects stored under the specified ID using EXPORT TO DATABASE in the internal table itab. itab may not have the type HASHED TABLE or ANY TABLE.
    The return code is set as follows:
    SY-SUBRC = 0:
    Directory imported.
    SY-SUBRC = 4:
    Unable to import directory.
    You may have used an incorrect ID.
    The internal table itabmust have the same structure as the ABAP Dictionary structure CDIR (INCLUDE STRUCTURE).
    Addition 1
    ... CLIENT g (before ID key)
    Effect
    Takes the data from client g (only if the import/export database is client-specific).
    Addition 2
    ... TO wa (last addition, or after dbtab(ar))
    Effect
    Uses the specified work area wa instead of the table work area. The table dbtab specified after DATABASE does not, in this case, have to be declared in a TABLES statement. The specified target area must have the same structure as dbtab.
    Example
    Directory of a cluster consisting of two fields and an internal table.
    TYPES: BEGIN OF TAB3_LINE,
             CONT(4),
           END OF TAB3_LINE,
           BEGIN OF DIRTAB_LINE.
             INCLUDE STRUCTURE CDIR.
    TYPES  END OF DIRTAB_LINE.
    DATA: INDXKEY LIKE INDX-SRTFD,
          F1(4),
          F2(8)   TYPE P decimals 0,
          TAB3    TYPE STANDARD TABLE OF TAB3_LINE,
          DIRTAB  TYPE STANDARD TABLE OF DIRTAB_LINE,
          INDX_WA TYPE INDX.
    INDXKEY = 'INDXKEY'.
    EXPORT F1 = F1
           F2 = F2
           TAB3 = TAB3
           TO DATABASE INDX(ST) ID INDXKEY " TAB3 has 17 entries
           FROM INDX_WA.
    IMPORT DIRECTORY INTO DIRTAB FROM DATABASE INDX(ST) ID INDXKEY
           TO INDX_WA.
    DIRTAB subsequently has the following contents:
    NAME     OTYPE  FTYPE  TFILL  FLENG
    F1         F      C      0      4
    F2         F      P      0      8
    TAB3       T      C      17     4
    Meanings of the individual fields:
    NAME:
    Name of the object
    OTYPE:
    Object type (F: field, R: structure / ABAP Dictionary structure, T: internal table)
    FTYPE:
    Field type (C: character, P: packed, ...)
    Structures and internal tables have type C.
    TFILL:
    Number of filled lines in an internal table
    FLENG:
    Length of the field in bytes
    For internal tables: Length of the header line.
    Variant 5
    IMPORT obj1 ... objn FROM DATASET dsn(ar) ID key.
    This variant is not allowed in an ABAP Objects context. See Clusters not allowed in files
    Note
    Do not use this variant.
    Note
    Catchable runtime errors
    The following catchable runtime errors can occur with this variant:
    EXPORT_DATASET_CANNOT_OPEN: The EXPORT/IMPORT statement could not open the file.
    OPEN_DATASET_NO_AUTHORITY: No authorization to access a file.
    Variant 6
    IMPORT obj1 ... objn FROM SHARED BUFFER dbtab(ar) ID key.
    Additions:
    1. ... = f (for each object you want to import)
    2. ... TO f (for each object you want to import)
    3. ... CLIENT g (before ID key)
    4. ... TO wa (last addition or after dbtab(ar))
    In an ABAP Objects context, a more severe syntax check is performed that in other ABAP areas. See No implicit field names allowed in clusters and Table work areas not allowed.
    Effect
    Imports the data objects obj1 ... objn (fields, structures, complex structures, or tables) from the cross-transaction application buffer. The data objects are read from table dbtab using the ID key from area ar (see EXPORT TO SHARED BUFFER).
    The return code is set as follows:
    SY-SUBRC = 0:
    Data objects imported.
    SY-SUBRC = 4:
    Unable to import data objects.
    You may have used an incorrect ID.
    The contents of all data objects listed in the statement remain unchanged.
    Example
    Importing two fields and an internal table from the application buffer with the structure indx:
    TYPES: BEGIN OF ITAB3_LINE,
             CONT(4),
           END OF ITAB3_LINE.
    DATA: INDXKEY LIKE INDX-SRTFD VALUE 'KEYVALUE',
          F1(4),
          F2(8) TYPE P DECIMALS 0,
          ITAB3 TYPE STANDARD TABLE OF ITAB3_LINE,
          INDX_WA TYPE INDX.
    Import data
    IMPORT F1 = F1 F2 = F2 ITAB3 = ITAB3
           FROM SHARED BUFFER INDX(ST) ID INDXKEY TO INDX_WA.
    After the import, the fields before CLUSTR
    (INDX-AEDAT and INDX-USERA) are filled with the
    values they had before the corresponding EXPORT
    statement.
    Notes
    The table dbtab specified after DATABASE must be declared under TABLES (except in addition 2).
    The structures of the fields, structures, and internal tables you want to import must be the same as those fo the objects you exported. The EXPORT and IMPORT statements (unlike IMPORT FROM DATABASE statement) does not check that they are the same. If the structures are not the same, a runtime error may occur if invalid assignments are attempted during the operation. The objects must also be imported using the same name as that with which they were exported. Otherwise, nothing is imported.
    Please consult Data Area and Modularization Unit Organization documentation as well.
    Addition 1
    ... = f (for each field you want to import)
    Addition 2
    ... TO f (for each field you want to import)
    Effect
    Places the object in field f.
    Addition 3
    ... CLIENT g (before ID key)
    Effect
    Takes the data from client g (if the import/(export table dbtab is client-specific).
    Addition 4
    ... TO wa (as last addition or after dbtab(ar))
    Effect
    Use this addition if the application buffer contains user data fields that you want to read. Instead of the table work area, the system uses the specified work area wa. The target area you specify must have the same structure as dbtab.
    Example
    DATA: INDX_WA TYPE INDX,
          F1.
    IMPORT F1 = F1 FROM SHARED BUFFER INDX(AR)
                   CLIENT '001' ID 'TEST'
                   TO INDX_WA.
    WRITE: / 'AEDAT:', INDX_WA-AEDAT,
           / 'USERA:', INDX_WA-USERA,
           / 'PGMID:', INDX_WA-PGMID.
    Variant 7
    IMPORT (itab) FROM ... .
    Effect
    Specifies the objects you want to import in the internal table itab. You can use this variant instead of the static object list in the following variants: " ... FROM MEMORY", "... FROM DATABASE ", " ... FROM DATASET" und "... FROM SHARED BUFFER". Any additions that are valid in the static cases can also be used here. The table itab may not have the type HASHED TABLE or ANY TABLE.
    Note
    Structure of the internal table itab:
    The first column of the table contains the object name in the data cluster (corresponds to obj1 ... objn from the static case. The second column contains the different name in the program (if necessary), and corresponds to f in the FROM f addition. If the table has only one column, or the second column contains only blanks, the statemeht is the equivalent of a static IMPORT with no TO addition. Both the first and the second columns should have the type character.
    Example
    TYPES: BEGIN OF OBJ_LINE,
            CLUSTERNAME(30),
            PROGRAMNAME(10),
          END OF OBJ_LINE,
          BEGIN OF B_LINE,
            FIELD_1    TYPE I,
            FIELD_2(1) TYPE N,
          END OF B_LINE.
    DATA: OBJ_TAB TYPE STANDARD TABLE OF OBJ_LINE,
          OBJ_WA  TYPE OBJ_LINE,
          B_PROG  TYPE STANDARD TABLE OF B_LINE,
          B_WA    TYPE B_LINE,
          A(10),
          C_PROG LIKE SYST.
    MOVE:  'A'    TO OBJ_WA-CLUSTERNAME.
    APPEND OBJ_WA TO OBJ_TAB. CLEAR OBJ_WA.
    MOVE:  'B'      TO OBJ_WA-CLUSTERNAME,
           'B_PROG' TO OBJ_WA-PROGRAMNAME.
    APPEND OBJ_WA TO OBJ_TAB. CLEAR OBJ_WA.
    MOVE:  'C'      TO OBJ_WA-CLUSTERNAME,
           'C_PROG' TO OBJ_WA-PROGRAMNAME.
    APPEND OBJ_WA TO OBJ_TAB. CLEAR OBJ_WA.
    IMPORT (OBJ_TAB) FROM MEMORY ID 'ABCD'.
    The dynamic EXPORT statement corresponds to the static IMPORT statement.
    IMPORT A = A  B = B_PROG  C = C_PROG FROM MEMORY ID 'ABCD'.
    Places the single field A in field A, the internal table B in the internal table B_PROG, and the structure C in the structure C_PROG.
    Note
    Runtime errors:
    DYN_IMEX_OBJ_NAME_EMPTY: The object name in the cluster (that is, the contents of the first column of obj_tab) is empty.
    DYN_IMEX_OBJ_NAME_TWICE: An object name (in the cluster) occurs twice in the first column of the internal table.
    DYN_IMEX_OBJ_NOT_FOUND: The data object in the program (the object whose name appears in column 2, if this is not empty, otherwise in column 1) does not exist.
    The return code is set as follows:
    SY-SUBRC is set in the same way as for the static IMPORT.
    Note
    General notes about catchable runtime errors
    The variants
    IMPORT obj1 ... objn FROM MEMORY,
    IMPORT obj1 ... objn FROM DATABASE dbtab(ar) ID key,
    IMPORT obj1 ... objn FROM DATASET dsn(ar) ID key,
    IMPORT obj1 ... objn FROM SHARED BUFFER dbtab(ar) ID key,
    IMPORT (itab) FROM ... ,
    can cause the following catchable runtime errors:
    CONNE_IMPORT_WRONG_COMP_LENG: A component in the dataset has an incorrect length
    CONNE_IMPORT_WRONG_COMP_TYPE: A component in the dataset has an incorrect type
    CONNE_IMPORT_WRONG_FIELD_LENG: A field in the dataset has the wrong length
    CONNE_IMPORT_WRONG_FIELD_TYPE: A field in the dataset has the wrong type
    CONNE_IMPORT_OBJECT_TYPE: Type conflict between a simple and a structured data type
    CONNE_IMPORT_WRONG_STRUCTURE: Type conflict between structured objects
    IMPORT_ALIGNMENT_MISMATCH: Same sequence of components in different structures
    IMPORT_TYPE_MISMATCH: Only with IMPORT...FROM MEMORY | FROM SHARED BUFFER...

  • MIRO equivalent of MIGO exit_saplmbmb_001 (or MB_DOCUMENT_BADI)

    In the MIGO update task, you can do custom stuff using the exit "exit_saplmbmb_001" (FG XMBC, Include ZXMBCO01) or the BAdI "MB_DOCUMENT_BADI".
    Does anyone know "right-off" the MIRO equivalent of this exit and/or the MIRO equivalent of this BAdI?

    Hi,
    Please find below the BADI's for MIRO Transaction,
    BAdI MRM_HEADER_DEFAULT to prepopulate various header fields
    BAdI MRM_PAYMENT_TERMS to set terms of payment
    BAdI MRM_UDC_DISTRIBUTE to distribute unplanned delivery costs. You can distribute unplanned delivery costs according to your own rules, for example, under...
    BAdI MRM_TRANSACT_DEFAULT to prepopulate various transaction fields
    BAdI MRM_WT_SPLIT_UPDATE to change the withholding tax data and the data during a vendor split
    BAdI MRM_TOLERANCE_GROUP to set vendor-specific tolerance groups
    Other BAdIs:
    BAdI MRM_RELEASE_CHECK for additional checks before invoices are released, in other words, you can restrict the list of invoices to be released by defining your own criteria.
    BAdI MRM_MRIS_HDAT_MODIFY to change document header data in invoicing plans
    BAdI MRM_MRKO_HDAT_MODIFY to change document header data in consignment settlement
    Thanks,
    Krishna

  • Recognize COGS in intercompany billing process

    Dear expert,
    I read the intercompany billing process and have some confuse.
    The process like that: CC1(company code 1) sells to end customer, CC2 (conpany code 2) (internal relationship) issues good.
    1, CC1 sells to end customer. CC1 create the SO
    2, CC2 creates the DO and PGI, that recognize the COGS at CC2 for the internal sales.
    3. CC1 creates the billing to end customer --> record the revenue of CC1
    4. CC2 creates the internal billing to CC1 --> record the internal revenue of CC2
    My question is, follow this process, I don't see the COGS of CC1, there is only a outbound delivery create by CC2 and COGS of CC2.
    I read the document about cross transaction, but it guide me only for steps above.
    Are there any mistake here?
    Please give me a help.
    Thank you in advance!
    HongDM

    Dear expert,
    I have some question about the document flow of the intercompany billing process.
    Company code 1 (CC1) sell to customer
    CC2 issue goods to customer of CC1, then internal billing to CC1.
    the step as below:
    1. CC1 create SO (sell to customer)
    2. CC2 create outbound delivery to Customer of CC1, recognize COGS of CC2
    3. CC1 bill to customer, recognize revenue of CC1
    4. CC2 create internal invoice to CC1, recognize revenue of CC2
    in internal invoice of CC2, update the output RD04. Does it recognize COGS and goods receipt to CC1? Because as above document flow, I see that, the CC1 don't have COGS, not receipt goods to plant of CC1 and Account Payable for CC2. There my thinking as logic of flow, but I'm not sure what the EDI and RD04 can do. Can you tell me about that.
    Thank you very much, this is very helpful for me.
    Best regard,
    HongDM

  • ABAP Memory ID

    Hi All,
    Is the ABAP memory ID global?
    for example, I have FUNC1, in FUNC1, I export value to memory ID 'ABC'. the value of 'ABC' is valide for all other function call?
    The porblem I experinced is that the FUNC1 may called by many interface at the SAME time, and because the memory ID id "global", it may cause problem.
    Thanks,

    If you look at the documentation of the 'EXPORT' statement, you will see that data is stored in the ABAP memory not in SAP global memory. See below for an extract of the documentation.
    Stores a data cluster in ABAP memory. The specified objects obj1 ... objn (fields, structures, complex structures, or tables) are stored as one cluster in ABAP memory.
    If you call a transaction, an executable program, or a dialog module in call mode ( CALL TRANSACTION, SUBMIT, CALL DIALOG), the ABAP memory is retained, even over several call levels. The called transaction can import the data from ABAP memory using IMPORT ... FROM MEMORY. Each new EXPORT ... TO MEMORY overwrites the old data in ABAP memory. You cannot therefore append to data already in the ABAP memory.
    When you leave the lowest level of the call chain, the ABAP memory is released.
    SAP and ABAP/4 Memory
    There is a difference between the cross-transaction SAP memory and the transaction-specific ABAP/4 memory.
    SAP memory
    The SAP memory, otherwise known as the global memory, is available to a user during the entire duration of a terminal session. Its contents are retained across transaction boundaries as well as external and internal sessions. The SET PARAMETER and GET PARAMETER statements allow you to write to, or read from, the SAP memory.
    ABAP/4 memory
    The contents of the ABAP/4 memory are retained only during the lifetime of an external session (see also Organization of Modularization Units). You can retain or pass data across internal sessions. The EXPORT TO MEMORY and IMPORT FROM MEMORY statements allow you to write data to, or read data from, the ABAP memory.
    Please consult Data Area and Modularization Unit Organization documentation as well.
    and Memory Structures of an ABAP Program
    So, just based on this, your problem may not be related to the export statement or the import statement.
    Are you making multiple function calls from the same program/transaction? In this case there is a chance of the memory getting overlaid. But if different people are using the transaction/program at the same time, but the function call is just once in the program/transaction, then you should not have this issue.
    Srinivas

Maybe you are looking for

  • Importing RAW files into Photoshop CC

    Since I've updated my Photoshop CC to version 14 I've one problem. After I did import my files into Adobe RAW and after I finetuned in Adobe RAW I want to improve my details into Photoshop CC. BUT: after I have ordered Adobe RAW tot opent he files in

  • 2008R2 Domain - Recently started receiving the old EventID 8003 Bowser in the System Log - Any ideas?

    Hi All, I've "googled" this to death and noted the registry keys that are associated with the "Computer Browser Service." On the PDC: IsDomainMaster = TRUE MaintainServerList = Auto On one of the Workstations noted in the EventID Logs: MaintainServer

  • NetBeans and ActionMap

    Hi everyone, This is probably a stupid question but I will ask anyway. I have a set of components that worked fine in Netbeans 3.5.1 but now in Netbeans 3.6 whenever they are dopped on a form (Frame/Panel, etc) they throw the error "Cannot save value

  • Why the Move from /opt to /usr ?

    I'd been getting used to having my DE stuff in /opt.  Then, all of a sudden, Xfce is in /usr.  Not that I mind one way or another, but it did throw me for a loop: As soon as I installed and started x, my whole Xfce panel setup disappeared.  I'm using

  • SAP Authentication on IPHONE/IPAD

    Hello, Is there a way to view analytics on iphone and ipad through SAP authentication Business Objects Explorer (Polestar)? I am able to view analytics with my enterprise credentials, but I get the follwing error when I use with my SAP credentials (P