What is the use of Info structures

Dear All,
Kindly let me know the use of Infostructures?
Please let me know.
Regards,
Mullairaja

Check this link infostructures
what is Info Structure? and why  and where it is used??
Regards

Similar Messages

  • Use of Info structure

    Hi,
    Can anybody please guide me use of info structures (except in SOP) along with functional example ?
    Regards,
    Samir

    Dear colleague ,
    I´m not sure of understanding what do you need about info structures.
    Do you want to use in flexible planning?
    or do you mean the use of info structures as reports of LO-LIS? If you neeed additional info about LO-LIS, this is not the appropiate forum.
    If you work with flexible Planning and you want to use infostrucutres you have to create your info with your characteristics and key figures.
    This is under LO-LIS cusotmizing.
    Also her you will find the point to define the update rules for your infostructure.
    After htat , you have to activate for planning in MC7F.
    In MC8B you fill the header parameters for planning
    In MC94 you access to planning table
    In MC8G you will find all the mass actvities that you can perform.
    This topic is very extensive to be explained through a thread, I would invite you to  check the following link:
    http://help.sap.com/saphelp_erp60_sp/helpdata/en/a5/632f3b43a211d189410000e829fbbd/frameset.htm
    If after that you have specific questions , create specific threads fro each of them.
    Please provide points to the replies to keep the Forum alive
    best regards
    Maria

  • What is the use of change pointer concept in ale?

    what is the use of change pointer concept in ale?
    Edited by: Alvaro Tejada Galindo on Feb 6, 2008 5:10 PM

    ALE Architecture:
    It consists of an Outbound process, an Inbound process, and an Exception – Handling process.
    Outbound Process:
    ALE Outbound Process in SAP sends data to one or more SAP Systems. It involves four steps.
    1. Identify the need of IDoc: This step starts upon creating a application document, can relate to a change to a master data object.
    2. Generate the Master IDoc: The document or master data to be sent is read from the database and formatted into an IDoc format. This IDoc is called as a Master IDoc.
    3. Generate the Communication IDoc: The ALE Service layer generates a separate IDoc from the Master IDoc for each recipient who is interested in the data. Separate IDocs are generated because each recipient might demand a different version or a subset of the Master IDoc. These recipient-specific IDocs are called Communication IDocs and are stored in the database.
    4. Deliver the Communication IDoc: The IDoc is delivered to the recipients using an asynchronous communication method. This allows the sending system to continue its processing without having to wait for the destination system to receiver or process the IDoc.
    Inbound Process:
    The inbound process receives an IDoc and creates a document in the system.
    1. Store the IDoc in the database: The IDoc is received from the sending system and stored in the database. Then the IDoc goes through a basic integrity check and syntax check.
    2. Invoke the Posting Module: The control information in the IDoc and configuration tables are read to determine the posting program. The IDoc is then transferred to its posting program.
    3. Create the Document: The posting program reads the IDoc data and then creates a document in the system. The results are logged in the IDoc.
    Over view of IDocs:
    IDoc is a container that is used to exchange data between any two processes. The document represented in an IDoc is independent of the complex structure SAP uses to store application data. This type of flexibility enables SAP to rearrange its internal structure without affecting the existing interface.
    IDoc interface represents an IDoc Type or IDoc data. IDoc Type represents IDoc’s definition and IDoc Data is an instance of the IDoc Type.
    IDoc Types:
    IDoc type structure can consist of several segments, and each segment can consist of several data fields. The IDoc structure defines the syntax of the data by specifying a list of permitted segments and arrangement of the segments. Segments define a set of fields and their format.
    An IDoc is an instance of an IDoc Type and consists of three types of records.
    i. One Control record: each IDoc has only one control record. The control record contains all the control information about an IDoc, including the IDoc number, the sender and recipient information, and information such as the message type it represents and IDoc type. The control record structure is same for all IDocs.
    ii. One or Many Data records: An IDoc can have multiple data records, as defined by the IDoc structure. Segments translate into data records, which store application data, such as purchase order header information and purchase order detail lines.
    iii. One or Many Status records: An IDoc can have multiple status records. Status record helps to determine whether an IDoc has any error.
    Message in IDoc Type:
    A Message represents a specific type of document transmitted between two partners.
    Outbound Process in IDocs:
    Outbound process used the following components to generate an IDoc. A customer model, and IDoc structure, selection programs, filter objects, conversion rules, a port definition, an RFC destination, a partner profile, service programs, and configuration tables.
    The Customer Model:
    A customer model is used to model a distribution scenario. In a customer model, you identify the systems involved in a distribution scenario and the message exchanged between the systems.
    Message control:
    Message control is a cross application technology used in pricing, account determination, material determination, and output determination. The output determination technique of Message control triggers the ALE for a business document. Message control separates the logic of generating IDocs from the application logic.
    Change Pointers:
    The change pointers technique is based on the change document technique, which tracks changes made to key documents in SAP, such as the material master, customer master and sales order.
    Changes made to a document are recorded in the change document header table CDHDR, and additional change pointers are written in the BDCP table for the changes relevant to ALE.
    IDoc Structure:
    A message is defined for data that is exchanged between two systems. The message type is based on one or more IDoc structures.
    Selection Program:
    Is typically implemented as function modules, are designed to extract application data and create a master IDoc. A selection program exists for each message type. A selection program’s design depends on the triggering mechanism used in the process.
    Filter Objects;
    Filter Objects remove unwanted data for each recipient of the data basing on the recipients requirement.
    Port Definition:
    A port is used in an outbound process to define the medium in which documents are transferred to the destination system. ALE used a Transactional RFC port, which transfers data in memory buffers.
    RFC Destination:
    The RFC destination is a logical name used to define the characteristics of a communication link to a remote system on which a function needs to be executed.
    Partner Profile:
    A partner profile specifies the components used in an outbound process(logical name of the remote SAP system, IDoc Type, message type, TRFC port), an IDoc’s packet size, the mode in which the process sends an IDoc (batch versus immediate), and the person to be notified in case of error.
    Service Programs and Configuration Tables:
    The outbound process, being asynchronous, is essentially a sequence of several processes that work together. SAP provides service programs and configuration tables to link these programs and provide customizing options for an outbound process.
    Creation of IDoc:
    Basic Type:
    Basic IDoc type defines the structure and format of the business document that is to be exchanged between two systems.
    Segments:
    Segments form the basic building blocks of an IDoc type and are used to store the actual datta. A segment type is the name of a segment and is independent of the SAP elease. A segment definition is the release-specific name of a segment.
    Steps in creating Segments:
    T.Code WE31
    Enter the name for your segment type and click on the create icon.
    Type the Short text.
    Enter the variable names and data elements.
    Save and Go back.
    Go to Edit -> Set Release.
    Repeat the steps to create more segments.
    IDOC TYPE:
    Business data is exchanged with an external system using the IDoc Interface.
    IDoc types (Special Structures) An IDoc type is defined through its permitted segments. Segments can be dependent on each other (parent and child segments). The IDoc interface can check for each IDoc whether thhe segments contained are compatible with thhe definitiion of its type. This systax check is activated or deactivated in the Partner Profiles.
    Steps in creating IDoc Type:
    T.Code WE30 to create IDoc Type.
    Enter the Object Name, Select Basic Type and click Create Icon
    Select the create new option and enter a description for your basic IDOC type and press enter
    Select the IDoc name and click Create icon
    The system prompts us to enter a segment type and its attributes
    Choose the appropriate values and press enter
    The system transfers the name of the segment type to the IDoc editor.
    Follow these steps to add more number of segments to Parent or as Parent-child relation.
    Save it and go back.
    Go to Edit -> Set Release.
    Message Type:
    Steps in Creating Message Type:
    T.Code WE81.
    change the details from Display mode to Change mode
    After selection, the system will give this message "The table is cross client (See help for further info)". Press enter.
    Click New Entries to create new Message Type.
    Fill details
    Save it and go back.
    Assign Message Type to IDoc Type:
    T.Code WE82
    Change the details from Display mode to change mode.
    After selection, the system will give this message "The table is cross client (See help for further info)". Press enter.
    Click New Entries to create new Message Type.
    Fill details
    Save it and go back.
    <REMOVED BY MODERATOR>
    Edited by: Alvaro Tejada Galindo on Feb 6, 2008 5:10 PM

  • What is the use of end routine in bi 7.0

    hi friends,
    what is the use of end routine in bi 7.0. what scenerio we use end routine.
    Thanking u
    suneel.

    hi Suneel,
    check
    http://help.sap.com/saphelp_nw70/helpdata/en/e3/732c42be6fde2ce10000000a1550b0/frameset.htm
    End Routine
    An end routine is a routine with a table in the target structure format as input and output parameters. You can use an end routine to postprocess data after transformation on a package-by-package basis. For example, you can delete records that are not to be updated, or perform data checks.
    If the target of the transformation is a DataStore object, key figures are updated by default with the aggregation behavior Overwrite (MOVE). You have to use a dummy rule to override this.
    hope this helps.

  • What is the use of initial value in a database table?

    Hi can anyone help me in knowing what is the use of initial value which is present besides primary key while creating a table?

    Initial Value:
    Indicator that NOT NULL is forced for this field
    Use
    Select this flag if a field to be inserted in the database is to be filled with initial values. The initial value used depends on the data type of the field.
    Please note that fields in the database for which the this flag is not set can also be filled with initial values.
    When you create a table, all fields of the table can be defined as NOT NULL and filled with an initial value. The same applies when converting the table. Only when new fields are added or inserted, are these filled with initial values. An exception is key fields. These are always filled automatically with initial values.
    Restrictions and notes:
    The initial value cannot be set for fields of data types LCHR, LRAW, and RAW. If the field length is greater than 32, the initial flag cannot be set for fields of data type NUMC.
    If a new field is inserted in the table and the initial flag is set, the complete table is scanned on activation and an UPDATE is made to the new field. This can be very time-consuming.
    If the initial flag is set for an included structure, this means that the attributes from the structure are transferred. That is, exactly those fields which are marked as initial in the definition have this attribute in the table as well.
    hope it helps,
    Saipriya

  • What is the use of T. code cj8g

    Hi All,
    Can anybody explain me what is the use of T.code CJ8G.If we execute this transaction. what is the effect on cost center and wbs element.before executing this Actual settlement. what configuration is to be done pior.
    Thanks in Advance.
    Chandu

    CJ8G is a T Code which processes the settlement collectively. You create a varaint (group of projects) and the execute the settlement, which then moves the cost out of the WBS elements to any receiver such as cost centres etc.,
    CJ88 processes the settlement individually.
    For settlement to run, you need to do certain configuration and maintain the master data;
    Configuration:
    Allocation Structure (Source Cost Elements, Settlement cost element/By Cost Element)
    Settlement Profile
    Master data:
    Maintain the settlement rules (receiver i.e, CTR-Cost Centre etc) on the WBS.
    Regards
    Sreenivas

  • What is the Use of  "Alter database activate standby database"

    Hi ,
    I appreciate your time.
    I just wanted to know what is the use of "Alter database activate standby database" command when doing the failover. How different it will act in failover process. Can we use this command in SwitchOver.
    Thanks in advance.

    Hi Uwe Hesse,
    Wonderfull... good info....
    So my understanding is that the use of "ACTIVATE PHYSICAL STANDBY DATABASE" is conditional and depends on the redo log gap and the Database status(Able to mount or not).
    Condition 1: If the Db is in Mount state and Redo log gap is successfully filled.
    1) Flush any unsent redo from the primary database to the target standby database.
    SQL> ALTER SYSTEM FLUSH REDO TO target_db_name;
    Note: If the above Statement Completes successfully without any errors.
    2) Stop Redo Apply.
    SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
    3) Finish applying all received redo data.
    SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE FINISH;
    4) Verify that the target standby database is ready to become a primary database.
    SQL> SELECT SWITCHOVER_STATUS FROM V$DATABASE;
    5) Switch the physical standby database to the primary role.
    SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY WITH SESSION SHUTDOWN;
    Condition 2: If the DB is not able Mount and Redo Gap can't be filled.
    Important Note: If the the above command in STEP3 gives error, some received redo data was not applied. Try to resolve the cause of the error and re-issue the statement before proceeding.
    If the error condition cannot be resolved, a failover can still be performed (with some data loss) by issuing the following SQL statement on the target standby database:
    SQL> ALTER DATABASE ACTIVATE PHYSICAL STANDBY DATABASE;
    Thanks in advance.

  • What is the use of version attribute in jnlp tag??

    Hello,
    I want to know what is the use of version attribute in jnlp tag.
    For ex:
    <jnlp spec="6.0+" codebase="$$codebase" href="$$name" version="1.1">
    </jnlp>
    In the spec it explains:
    In the Jnlp tag:
    version = The version of the application being launched, as well as the version of the JNLP file itself.
    1. Is this version attribute would work as version attribute in jar tag. Ex: <jar href="application.jar" version="1.1"/> ?
    i.e. can we specify different jnlp's with the same name as we do for jar's with the help of version.xml.
    Any help is greatly appreciated.
    //Anjali

    Hi Reddy,
    If one Info Object depends on another info object we will make that dependent info object as a compounding attribute of main Info object.
    Eg: Storage Location – Plant
    In above eg there is no meaning of Storage Location without Plant. So, we will make storage location as compounding attribute of Plant.
    Regards,
    Sreehari.

  • What is the use of REUSE_ALV_FIELDCATALOG_MERGE

    Hi
    in alv's what is the use of REUSE_ALV_FIELDCATALOG_MERGE OTHER THAN ADDING FIELD HEADINGS
    Title Edited by: Alvaro Tejada Galindo on Jan 11, 2008 4:20 PM

    Hi,
    This is the functionality of that FM,
    Supports the creation of the field catalog for the ALV function modules
    based either on a structure or table defined in the ABAP Data
    Dictionary, or a program-internal table.
    The program-internal table must either be in a TOP Include or its
    Include must be specified explicitly in the interface.
    The variant based on a program-internal table should only be used for
    rapid prototyping since the following restrictions apply:
    o   Performance is affected since the code of the table definition must
        always be read and interpreted at runtime.
    o   Dictionary references are only considered if the keywords LIKE or
        INCLUDE STRUCTURE (not TYPE) are used.
    If the field catalog contains more than 90 fields, the first 90 fields
    are output in the list by default whereas the remaining fields are only
    available in the field selection.
    If the field catalog is passed with values, they are merged with the
    'automatically' found information.
    reward points if useful,
    seshu.

  • What is the difference between (SEPA Structured) and (SEPA Unstructured)?

    Hi,
    Could you please teach me about "Format Payments (SEPA Structured)"
    and "Format Payments (SEPA Unstructured)"?
    1.What is Format Payments (SEPA Structured)?
    Is (SEPA Structured) used with which case?
    2.What is Format Payments (SEPA Unstructured)?
    Is (SEPA Unstructured) used with which case?
    3.What is the difference between (SEPA Structured) and (SEPA Unstructured)?
    The customer is checking Note.791226.1.
    However, he says that he cannot understand these two differences.
    Please teach me.
    Thanks.

    From the European Payments Council website:
    Remittance information: structure the unstructured
    The SEPA Credit Transfer Scheme permits the end-to-end carrying of remittance data on a structured or unstructured basis appropriate to the nature of the payment (the remittance information usually contains details of the contract underlying the transaction such as an invoice number, for example). The length of the remittance information in the SCT Scheme is fixed at a standard length of 140 characters and banks are obliged to pass on the full remittance information.
    The EPC supports a proposal developed by the European Association of Corporate Treasurers (EACT), which allows companies to agree on a structure for the remittance information. The EACT suggestion on how to structure the "unstructured" remittance fields allows companies exchanging a credit transfer to agree, among other, on information to be transmitted in a specific manner. Banks will carry remittance information structured in such an agreed way unaltered throughout the process chain.

  • What is the use of planning package in bps

    hi friends,
    what is the use of planning package in bps .
    Thanking u
    suneel.

    Hi Suneel,
    Check the info here:
    http://help.sap.com/saphelp_nw04/helpdata/en/0e/8007dc83d011d3b72e0000e82debc6/content.htm
    Hope this helps...

  • What is the use of CTU_PRAMS in bdc programming?

    what is the use of CTU_PRAMS in bdc programming?
    can any explain wit a sample code.

    Hi,
    Hi,
    If u write table control bdc program in 14'' monitor screen, then if the same program u run at different monitor size, then the screen resolution problem comes in to the picture,
    like, u get 5 records in table control in one screen, and some other records in other screen, to avoid this screen resolution problem we use CTU-PARAMS Structure.
    In ur program u have to set
    defsize type ctu_params-defsize value 'X',
    Then u will be free of screen resolution problem.
    Fill the str CTU_PARAMS-defsize = 'X' and pass in CTU stmnt as
    call transaction 'XXX' options using t_bdcdata ctu_params.
    Analysing :
    1. If nothing works, then we have to
    some ifs & buts.
    2. There shall be normally
    2-4 different kinds of resolution
    on various users comptuers.
    3. Based on this,
    we have to know beforehand,
    what will be the number of rows
    in the table control.
    4. The user can be given
    a selection/paraemter
    for resolution
    eg. 800x600
    1024x100
    axb
    etc.
    5. Based on this, we will hardcode
    in the program (based upon our knowledge/recording
    which we have seen and done)
    we will hardcode
    the number of lines
    in the VARIBLE.
    6. Then we can simply use this variable
    for our LOOP and logic purpose.
    7. It will be the responsibiltiy of the
    use to CHOOSE THE CORRECT resolution,
    on the selection-screen.
    For screen resolution use ctu_params, with default size
    Data : f_option type ctu_params,
    f_option-updmode = 'S'.
    f_option-defsize = 'X'.
    f_option-dismode = 'N'.
    call transaction 'VA01' using bdcdata options from f_option messages into bdcerror.
    CALL TRANSACTION tcode... OPTIONS FROM opt
    ... OPTIONS FROM opt
    Effect
    Allows you to control processing using the values of the componetns of the structure opt, which must have the ABAP Dictionary type CTU_PARAMS. The components have the following meanings:
    DISMODE
    Display mode (like the MODE addition)
    UPDMODE
    Update mode (like the UPDATE addition)
    CATTMODE
    CATT mode (controls a CATT)
    CATT mode can have the following values:
    ' ' No CATT active
    'N' CATT without single-screen control
    'A' CATT with single-screen control
    DEFSIZE
    Use default window size
    RACOMMIT
    Do not end transaction at COMMIT WORK
    NOBINPT
    No batch input mode (that is, SY-BINPT = SPACE)
    NOBIEND
    No batch input mode after the end of BDC data.
    The components DEFSIZE , RACOMMIT, NOBINPT, and NOBIEND always take the following values:
    'X' Yes
    ' ' No
    If you do not use the OPTIONS FROM addition, the following control parameter settings apply:
    DISMODE
    From addition MODE
    UPDMODE
    From addition UPDATE
    CATTMODE
    No CATT active
    DEFSIZE
    Do not use default window size
    RACOMMIT
    Successful end on COMMIT WORK
    NOBINPT
    Batch input mode active ( SY-BINPT = X
    NOBIEND
    Batch input mode remains active after the BDC data

  • What is the use of FOLDER NODE in SMARTFORMS?

    what is the use of FOLDER NODE in SMARTFORMS?
    please explain.

    Hi,
    By using a folder node and checking the 'protect' checkbox, everything in that folder will be page protected.
    How to create a New smartfrom, it is having step by step procedure
    http://sap.niraj.tripod.com/id67.html
    Here is the procedure
    1. Create a new smartforms
    Transaction code SMARTFORMS
    Create new smartforms call ZSMART
    2. Define looping process for internal table
    Pages and windows
    First Page -> Header Window (Cursor at First Page then click Edit -> Node -> Create)
    Here, you can specify your title and page numbering
    &SFSY-PAGE& (Page 1) of &SFSY-FORMPAGES(Z4.0)& (Total Page)
    Main windows -> TABLE -> DATA
    In the Loop section, tick Internal table and fill in
    ITAB1 (table in ABAP SMARTFORM calling function) INTO ITAB2
    3. Define table in smartforms
    Global settings :
    Form interface
    Variable name Type assignment Reference type
    ITAB1 TYPE Table Structure
    Global definitions
    Variable name Type assignment Reference type
    ITAB2 TYPE Table Structure
    4. To display the data in the form
    Make used of the Table Painter and declare the Line Type in Tabstrips Table
    e.g. HD_GEN for printing header details,
    IT_GEN for printing data details.
    You have to specify the Line Type in your Text elements in the Tabstrips Output options.
    Tick the New Line and specify the Line Type for outputting the data.
    Declare your output fields in Text elements
    Tabstrips - Output Options
    For different fonts use this Style : IDWTCERTSTYLE
    For Quantity or Amout you can used this variable &GS_ITAB-AMOUNT(12.2)&
    5. Calling SMARTFORMS from your ABAP program
    REPORT ZSMARTFORM.
    Calling SMARTFORMS from your ABAP program.
    Collecting all the table data in your program, and pass once to SMARTFORMS
    SMARTFORMS
    Declare your table type in :-
    Global Settings -> Form Interface
    Global Definintions -> Global Data
    Main Window -> Table -> DATA
    Written by : SAP Hints and Tips on Configuration and ABAP/4 Programming
    http://sapr3.tripod.com
    TABLES: MKPF.
    DATA: FM_NAME TYPE RS38L_FNAM.
    DATA: BEGIN OF INT_MKPF OCCURS 0.
    INCLUDE STRUCTURE MKPF.
    DATA: END OF INT_MKPF.
    SELECT-OPTIONS S_MBLNR FOR MKPF-MBLNR MEMORY ID 001.
    SELECT * FROM MKPF WHERE MBLNR IN S_MBLNR.
    MOVE-CORRESPONDING MKPF TO INT_MKPF.
    APPEND INT_MKPF.
    ENDSELECT.
    At the end of your program.
    Passing data to SMARTFORMS
    call function 'SSF_FUNCTION_MODULE_NAME'
    exporting
    formname = 'ZSMARTFORM'
    VARIANT = ' '
    DIRECT_CALL = ' '
    IMPORTING
    FM_NAME = FM_NAME
    EXCEPTIONS
    NO_FORM = 1
    NO_FUNCTION_MODULE = 2
    OTHERS = 3.
    if sy-subrc <> 0.
    WRITE: / 'ERROR 1'.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    endif.
    call function FM_NAME
    EXPORTING
    ARCHIVE_INDEX =
    ARCHIVE_INDEX_TAB =
    ARCHIVE_PARAMETERS =
    CONTROL_PARAMETERS =
    MAIL_APPL_OBJ =
    MAIL_RECIPIENT =
    MAIL_SENDER =
    OUTPUT_OPTIONS =
    USER_SETTINGS = 'X'
    IMPORTING
    DOCUMENT_OUTPUT_INFO =
    JOB_OUTPUT_INFO =
    JOB_OUTPUT_OPTIONS =
    TABLES
    GS_MKPF = INT_MKPF
    EXCEPTIONS
    FORMATTING_ERROR = 1
    INTERNAL_ERROR = 2
    SEND_ERROR = 3
    USER_CANCELED = 4
    OTHERS = 5.
    if sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    endif.
    for Smartforms material
    http://www.sap-basis-abap.com/sapsf001.htm
    http://www.sap-press.com/downloads/h955_preview.pdf
    http://www.ossincorp.com/Black_Box/Black_Box_2.htm
    http://www.sap-img.com/smartforms/sap-smart-forms.htm
    http://www.sap-img.com/smartforms/smartform-tutorial.htm
    http://www.sapgenie.com/abap/smartforms.htm
    How to trace smartform
    http://help.sap.com/saphelp_47x200/helpdata/en/49/c3d8a4a05b11d5b6ef006094192fe3/frameset.htm
    http://www.help.sap.com/bp_presmartformsv1500/DOCU/OVIEW_EN.PDF
    http://www.sap-img.com/smartforms/smart-006.htm
    http://www.sap-img.com/smartforms/smartforms-faq-part-two.htm
    Re: Need FAQ's
    check most imp link
    http://www.sapbrain.com/ARTICLES/TECHNICAL/SMARTFORMS/smartforms.html
    step by step good ex link is....
    http://smoschid.tripod.com/How_to_do_things_in_SAP/How_To_Build_SMARTFORMS/How_To_Build_SMARTFORMS.html
    Reward all helpfull answers
    Regards
    Omkar

  • What is the use of  keyword SCAN ABAP-SOURCE

    Hello experts,
    what is the use of scan abap-source. please explain. what is tokens, statements, levels in that.

    Hi
    <b>SCAN</b>
    This statement is for internal use only.
    It cannot be used in application programs.
    <b>SCAN ABAP-SOURCE itab1 ...TOKENS INTO itab2
                           ...STATEMENTS INTO itab3.</b>
    Parts marked with " ..." are interchangeable
    <b>Addition 1</b>
    ... FROM n1
    <b>Addition 2</b>
    ... TO   n2
    Breaks down the source code table itab1 into tokens not from start to finish, but only from line n1 to line n2.
    The additions FROM n1 and TO n2 must, in this order, follow the specification of the source code table itab1.
    When using the start specification n1, use the addition WITHOUT TRMAC to ensure that there are no unnecessary database accesses to the table TRMAC.
    The end specification n2 is treated as "soft", i.e. a statement that begins on a line <= n2, but ends only on a line > n2, is returned completely.
    If the end specification n2 is split in a chain statement, only the split part up to the next comma is returned completely, not the entire chain statement up to the next period.
    Negative line specifications are not allowed and result in a runtime error.
    A line specification of 0 amounts essentially to no specification.
    If n1 number of lines in source code table, the scanner is not called (SY-SUBRC = 2).
    If n1 > n2 and n2 > 0, the scanner is not called (SY-SUBRC = 2).
    <b>
    Addition 3</b>
    ... KEYWORDS FROM itab4
    Does not return all statements, only those specified in the key word table itab4.
    If the key word table is empty (i.e. it contains 0 lines), all the statements are selected.
    The lines of the key word table are treated as a character field.
    To select a Native-SQL-statement or a macro definition, you can specify the pseudo key words EXEC_SQL or DEFINE_MACRO. It makes no difference whether the statements EXEC or DEFINE occur as well. Native SQL statements and macro definitions are returned as one statement (of type E or M even if the expansion of a macro definition results in more than one statement.
    If the key word table contains a blank line, blank statements are also selected.
    <b>Addition 4</b>
    ... LEVELS INTO itab5
    Stores details about each edited source code unit (source code table itab1 itself, expanded include-programs, expanded macro definitions) in the level table itab5.
    Specification of a level table makes sense only with the addition WITH INCLUDES.
    The level table itab5 must have the structure SLEVEL.
    The fields of the structure SLEVEL - and consequently the columns of the level table itab5 have the following meaning:
    TYPE
    Type of source code unit with the following possible values:
    P (Program)
    D (Internal DEFINE macro)
    R (Macro from table TRMAC)
    NAME
    Name of source code unit (name of include program, macro name)
    DEPTH
    Current nesting depth of source code unit (>= 1)
    LEVEL
    Index of superior (i.e. including or calling) source code unit in the level table (>= 1, if DEPTH >= 2, otherwise 0)
    STMNT
    Index of superior (i.e. including or calling) statement in the statement table (>= 1, if DEPTH >= 2, otherwise 0)
    FROM
    Index of first statement of source code unit in the statement table (>= 1)
    TO
    Index of last statement of source code unit in the statement table (>= 1)
    If the source code unit contains include programs or macro calls, the line range [ FROM, TO] in the statement table also covers the statements in subordinate source code units.
    <b>Addition 5</b>
    ...  STRUCTURES INTO itab6
    Details of the construction of the source text table are given in the structure table itab6.
    The structure table itab6 must have the structure SSTRUC.
    The fields in SSTRUC (which are also the columns of structure table itab6) have the following meanings:
    TYPE
    Type of the structure with possible values:
    P (Beginning of the source code)
    R (Subroutine)
    M (Macro, EXEC SQL)
    I (Loop)
    A (Case distinction)
    C (Condition in a case distinction)
    J (Goto command)
    D (Structured declaration)
    E (Event)
    S (Follow-on from simple structured statement)
    STMNT_TYPE
    The statement type of the beginning of the structure. The values are listed in the type pool SCAN in structure SCAN_STRUC_STMNT_TYPE.
    KEY_START
    Flags whether the start of the structure is described semantically ('X' if there is a special statement, otherwise ' ').
    KEY_END
    Flags whether the end of the structure is described semantically ('X' if there is a special statement, otherwise blank).
    STMNT_FROM
    Index of the first statement of the structure in the statement table itab3.
    STMNT_TO
    Index of the last statement of the structure in the statement table itab3.
    Index of the first substructure of the structure in structure table itab6.
    STRUC_TO
    Index of the last substructure of the structure in structure table itab6.
    BACK
    Index of the structure in the structure table itab6 that contains the structure as a substructure (0 if the structure is the root structure of a structure tree).
    <b>Addition 6</b>
    ... OVERFLOW INTO c1
    The addition is only allowed and required if the token table itab2 has the structure STOKEN or STOKEX.
    If a token is too large to be stored in the token table in the field STR, it is placed in the overflow area c1. The offset of the token in the overflow area then lies in the token table in the field OFF1.
    <b>Addition 7</b>
    ... WITH ANALYSIS
    Breaks down each token t = a+b(c) according to the logic of the RSYN key word >ANALY into its three components a, b and c.
    Offset and length of components a, b and c are stored in the fields LEN1, OFF2, LEN2, OFF3, and LEN3 in the token table. (The offset of OFF1 is always 0 and therefore not required.)
    If you specify the addition WITH ANALYSIS, the token table itab2 must have the structure STOKESX, so that the fields LEN1, OFF2, LEN2, OFF3 and LEN3 are available.
    If the token table has the structure STOKEX, you must consider the following:
    If the whole token exists in the token table, the offset specifications are relative to the token start. If the token is in the overflow area c1, the offset specifications are relative to the start of the overflow area.
    <b>Addition 8</b>
    ... WITH COMMENTS
    Returns comments also, with each individual comment representing a token. The system additionally stores entries for each full block of comments in the table itab3, differentiating between comments that occur within statements and those that occur at program level. In itab3, an entry for a comment within a statement always comes before the statement containing the comment.
    <b>Example</b>
    Look at the following program fragment. The preceding numbers are the indexes of the tokens.
    1    * An example  *
    2    * with scattered comments
    6    MOVE
    3    * Inserted comment 1
    7    X
    4    *  Inserted comment 2
    8    TO
    9    Y
    5    * Inserted comment 3
    SCAN then enters the following values for the components TYPE, FROM and TO (in this order from left to right) into itab3.
    'P' 1 2
      'S' 3 5
      'K' 6 9
    If the addition ... WITH COMMENTS is used, the table itab2 must have the line type STOKES or STOKESX.
    <b>Addition 9</b>
    ... WITH INCLUDES
    Also breaks down subordinate source code units (included programs, called macros) into tokens.
    You should normally combine the addition WITH INCLUDES with the addition LEVELS INTO itab5.
    If (at least) one included program does not exist, SY-SUBRC is set to 1 and the relevant INCLUDE statement is flagged in the statement table itab3 by the statement type J (instead of I), but the breakdown process continues. The level table itab5 contains no entry for include-programs that do not exist.
    If you combine WITH INCLUDES with WITHOUT TRMAC , TRMAC-Macros are not expanded because the system does not recognize them as subordinate source code units.
    When macro calls are expanded, no position specifications are available. The corresponding fields in the token table itab2 and the statement table itab3 are then set to 0.
    <b>Addition 10</b>
    ... WITH TYPE-POOLS
    This addition has the same effect as the WITH INCLUDES addition, except that with the former include programs belonging to type groups are broken down into tokens.
    <b>Addition 11</b>
    .. WITH LIST TOKENIZATION
    Tokens of the form (a1, a2, a3) are not returned as tokens but broken down into the elementary components.
    <b>Addition 12</b>
    ... WITHOUT TRMAC
    If a statement begins neither with an ABAP/4 key word nor with a DEFINE macro, the system does not check whether this is a TRMAC macro, but assumes an unknown statement. (Unknown statements are flagged in the statement table itab3 with a U in the field TYPE.)
    To avoid unnecessary database accesses to the table TRMAC, you should use the addition WITHOUT TRMAC whenever you assume that the source code to be scanned contains unknown statements. Unknown statements are particularly likely to occur if you use the addition FROM n1, because the scanner does not start at the beginning of the source code, but from a specified point.
    If you use WITHOUT TRMAC with WITH INCLUDES, TRMAC macros are not expanded because the system does not recognize them as subordinate source code units.
    <b>Addition 13</b>
    ... PROGRAM FROM c2
    <b>Addition 14</b>
    ... INCLUDE INTO c3
    <b>Addition 15</b>
    ... MESSAGE INTO c4
    <b>Addition 16</b>
    ... WORD    INTO c5
    <b>Addition 17</b>
    ... LINE    INTO n3
    <b>Addition 18</b>
    ... OFFSET  INTO n4
    The above additions have the same meaning as those for the
    SYNTAX-CHECK: statement: c2 is an input field for a program name to be assigned to the source code, while the fields c3, c4, c5, n3 and n4 are output fields in case an error occurs.
    To be able to analyze errors without modifying programs, use the additions INCLUDE, MESSAGE, WORD, LINE and OFFSET. These provide information about the errors which have occurred.
    <b>Variant 2</b>
    SCAN AND CHECK ABAP-SOURCE itab1 ...RESULT INTO itab2.
    Parts marked with " ..." are interchangeable
    <b>Extras:</b>
    1. ... PROGRAM FROM c1 2. ... INCLUDE INTO c2
    3. ... MESSAGE INTO c3
    4. ... WORD    INTO c4
    5. ... LINE    INTO n1
    6. ... OFFSET  INTO n2
    The syntax of the program in table itab1 is checked. During the check, all of the information from the program, such as statement structures, statements, tokens, data objects, types and do on are placed into the result field. This field must have the type SYSCH_RESULT, which is defined in type group SYSCH. You must therefore declare type group SYSCH in your ABAP-program using a TYPE-POOLS statement.
    &ABAP_ADDITION _1&
    ... PROGRAM FROM c1
    &ABAP_ADDITION _2&
    ... INCLUDE INTO c1
    &ABAP_ADDITION _3&
    ... MESSAGE INTO c3
    &ABAP_ADDITION _4&
    ... WORD    INTO c4
    &ABAP_ADDITION _5&
    ... LINE    INTO n1
    &ABAP_ADDITION _6&
    ... OFFSET  INTO n2
    The above additions have the same effect as the corresponding additions in the statement SYNTAX-CHECK: c1 is an input field for a program name to be assigned to the source code, the fields c2, c3, c4, n1 and n2 are output fields, used when errors occur.
    To enable you to analyze errors without having to modify the program, you should specify the INCLUDE, MESSAGE, WORD, LINE and OFFSET additions for the information about the error that occurred.
    <b>Reward if usefull</b>

  • The "Use Selection of Structure Elements" Option in RSRT Query Properties

    Hi, does anyone know the side effect of enabling this option for all BEx Queries? The help states the following: "The Use Selection of Structure Elements option can be selected for any query; however, it is only useful in some cases. In queries, selections are frequently based on one or more characteristics in the columns, or more precisely, in the structure elements. One or more of these structure elements are often filtered in the BEx Analyzer or in BEx Web applications. If you do not select the Use Selection of Structure Elements option, these dynamic (structure element) selections are not transferred to the database. Normally, the data for the entire structure or for both structures is then read from the database." It sounds to me that there is no harm in checking this flag all the time, but what is confusing is the default state of this option; i.e. unchecked.
    I would appreciate if someone can clarify the downside of checking this flag.
    Thanks,
    Mohamed Judi

    Hello Michael,
    Checking this simple property helps improve performance in situations where there are many Restricted Key Figures and other calculations in the Query Definition
    If analysis of the query performance indicates very high EVENTID 3200 times, and/or the FEMS number is very high try enabling this property and check performance.
    Checking this ensures the structure elements are sent to the database for processing.
    Check the below link: Page 14
    http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/006b1374-8f91-2d10-fe9c-f9fa12e2f595?QuickLink=index&overridelayout=true&48747879633011
    Thanks,
    Vinay

Maybe you are looking for

  • Photo names and thumb names don't match

    Apologies if this issue exists and I haven't spotted it. I have looked. Working on iPhoto 5.0 on a G3 iBook, photos held on an external 60gb LaCie drive. My basic issue is that the names of my photos and the names of thumbs do not always match. The t

  • Is it possible to change the text alert tone on an iPhone 5s to a custom tone?

    Hi, Just wondering if there is any way to add a custom tone for when a text arrives? I want to use 'i've got to get a message to you' Gerald Sorry, just found the answer. Message was edited by: Warmbells

  • Customized Payslip for India payroll

    Hi all, I am trying to create a new customized payslip using SAP HR FORMS for India payroll. Via which i can provide customized payslip with different fonts, sizes & logo inclusion also. (which all can be done in SMARTFORMS) I have used HRFORMS t cod

  • Master data load for 0COSTCENTER (Cost Center) failing

    Hi Experts I have a master data load for 0COSTCENTER (Cost Center). The Load has started failing from a couple of days at DTP. (R) Filter Out New Records with the Same Key       (G) Starting Processing...       (R) Dump: ABAP/4 processor: DBIF_RSQL_S

  • Dual Layer DVD suggestions?

    Well, I just caught my knee on my dvd tray and snapped it off. "Kneedless" to say, I'm not real happy! But I was thinking of getting a dual layer anyway. I scanned past posts and it seems the Pioneer 110 had made some users happy. Are you still happy