What is control tables in abap hr?what is the purpose?

what is control tables in abap hr?what is the purpose?

These are the screen elements used to display tabular data they can be called
as screen tables( like STEP LOOP).To use table control we have to create it on the screen using SCREEN PAINTER(SE51) and declare a control variable of TYPE TABLEVIEW using CONTROLS statement in the ABAP program. We have to use LOOP .. ENDLOOP statement in both PBO and PAI with or without AT int_table parameter. IF AT int_table parameter is not used than we have to place a MODULE call between the LOOP...ENDLOOP statement to fill the screen table rows from the ABAP program in PBO and program our own scrolling functions
using OK_CODE field.
Having a parallel loop(at screen table rows & int table rows) by using parameter
AT int_table makes the ABAP code simple.
A special structure of type CXTAB_CONTROL is used to set/get various
attributes of table control at runtime like CURRENT_LINE ,TOP_LINE.
ABAP declaration
CONTROLS: tab_con TYPE TABLEVIEW USING SCREEN nnnn
Here tab_con is the same name we used in screen for the table control.
This ABAP statement will declare a control variable that will be used to access
the table control , and set it's various attributes like number of fixed columns(tab_con-FIXED_COLS) ,total number of records it will display(tab_con-LINES).It is of type CXTAB_CONTROL and is a deep structure(structure containing structures).
REFRESH CONTROL tab_con FROM SCREEN nnnn
This ABAP statement will initialize the table control on the screen nnnn to its initial values.
PBO processingI
n PBO we have to use the screen LOOP ...ENDLOOP statement , with or without
intenal table.
LOOP WITH CONTROL tab_con.
MODULE fill_tab_con.
ENDLOOP.
Here a module should be called between the loop endloop statement to transfer
data from th ABAP program to the screen table through a structure.This module
should use the CURRENT_LINE attribute of the table control variable to get the
current screen table record index to read the data from the internal table into a work area.
e.g.
READ TABLE int_table INDEX tab_con-CURRENT_LINE
The record read will be placed in the header line of the internal table and will be available to the similarly named screen fields or if these are different it can be written explicitly. e.g.
screen_field_name = int_table-field_name
LOOP AT int_table INTO workarea WITH CONTROL tab_con CURSOR i FROM
n1 TO n2.
ENDLOOP.
Here the module call is not required to fill the screen table.The CURSOR parameter is a integer of type I indicating which absolute internal table line
should be the first to display on the table control .FROM n1 TO n2 can be used
to restrict the starting line and ending line number of the internal table , they are of type SY-TABIX.
In both cases before the LOOP statement a module should be called which
is generally for setting of status ,in which we should fill the LINES attribute
(tab_con-LINES ) of the control with the total number of internal table records,doing this ensures correct and automatic scrolling.
The ABAP statement DESCRIBE TABLE int_table LINES lines can be used
to get the total lines in an int table.
PAI Processing
We have to use LOOP ... ENDLOOP in PAI so that data can transfer fro table control to ABAP program. If we want to write changes to the data we should
call a module between the LOOP ... ENDLOOP. The MODULE call to process user commands (SY-UCOM) should be called after the ENDLOOP statement.
e.g.
PROCESS AFTER INPUT
MODULE mod AT EXIT-COMMAND.
LOOP AT itab_table or LOOP "depending on whether we are using AT int_table
MODULE modify_int_table.
ENDLOOP.
MODULE user_command.
In the MODULE call modify_int_table we can use
MODIFY int_table FROM workarea INDEX tab_con-CURRENT_LINE
or we can use
int_table-field_name = screen_field_name.
Thanks
Please Reward points if helpful.
Edited by: Richa Khosla on Mar 28, 2008 7:38 AM

Similar Messages

  • What is the purpose of TABLE MAINTENANCE GENERATOR IN ABAP DDIC

    CAN ANY EXPLAIN ME
    1.what is the purpose of TABLE MAINTENANCE GENERATOR IN ABAP DDIC?
    2. AND THE CONTENTS IN ITS TABS.
    KINDLY LET ME KNOW.IT IS URGENT
    <REMOVED BY MODERATOR>
    Edited by: Alvaro Tejada Galindo on Feb 28, 2008 11:42 AM

    Go to SE11, give the table name and click on change. Then Go to utilities--> Table maintenance generator.
    In the table maintenance generator screen, we should give Authorization Group, Function Group name (Function Group name can be same as table name), Maintenance type can be one step or two step, usually we will create with one step. we should give maintenance screen number. After clicking on create button, a table maintenance generator will be created.
    To check it go to SM30 . In SM30, we find display, Maintain options.
    We can view the table contents by choosing Display and we can create table entries by choosing Maintain.
    Why we have to go for Table maintenance generator, when we can edit the table by SE16 or SE11, utilities->create entries?
    In the production system, end-users will not be having access to transaction codes like SE11 and SE16. Developers will not be having access to many transaction codes including the above two.
    To view the contents of the database table, we will use SE16n in Production system. Please find out the difference between SE16 and SE16n.All these authorizations will be maintained by BASIS team, by creating access profiles.
    So in order to edit or create the contents of a database table, we should go for table maintenance generator. In real time, authorizations will be maintained in production system. (even in development and Test systems to some extent).
    There is an audit like Sarbanes-Oxley Act for American clients, where every thing will be audited by government agency. To know more about SOX, use the links on the right hand side of this page.
    The second reason is, we can edit or create multiple entries at a time, using table maintenance generator.
    Apart from that we have options like 'Enter conditions' in table maintenance screen SM30. Please try to find out the use of those, by creating an example.Table Maintenance generator: Difference between one step and two steps.
    While creating table maintenance generator, we find below options:
    1. When we choose one step, we have to give the screen number in Overview Screen field.
    2. When we choose two step, we have to give both overview screen number and single screen number.
    You can give any number for screen. Don’t give 1000 screen number. As this number is reserved for selection screen.
    When we choose two step, two screens will be created for table maintenance. For single step only one screen will be created.
    When we choose two step, table maintenance will work as follows:
    Go to SM30, give the table name for which you have created table maintenance-
    Overview screen will be displayed. To create entries, when you click on ‘new entries’.
    Another screen will be displayed, where you give input and save.
    You can enter one record at a time.
    We use single step generally, as it is user friendly.
    To completely understand the difference and above points please do exercise by creating table maintenance generator in both ways (using single step and two step).
    <REMOVED BY MODERATOR>
    regards,
    Balaji
    Edited by: Alvaro Tejada Galindo on Feb 28, 2008 11:42 AM

  • While defining a columnar table, what is the purpose of column store type

    Hi folks
    I have two questions related to columnar table definition.
    1. What is the purpose of column store type.
    While defining a columnar table, what is the purpose of column store type (STRING ,CS_FIXEDSTRING,CS_INT etc) , when I define a table using the UI I see that the column is showing STRING but when I goto EXPORT SQL it does not show.  Is this mandatory or optional ?
    2.VARCHAR Vs. CHAR - In the UI when I create the table I do not see the CHAR option , but I do see lot of discussion where people are using CHAR for defining the columnar table. Not sure why UI dropdown does not show it. I also read that we should avoid using VARCHAR as those columns are not compressed, is that true, I thought the column store gives compression for all the columns. Are there certain columns which cannot be compressed .
    Please let me know where I can find more information about these two questions.
    Poonam

    Hi Poonam
    the CS_-data types are the data types that are used internally in the column store. They can be supplied but it is not at all required or recommended to do so.
    SAP HANA will automatically use the correct CS_-data type for every SQL data type in your table definitions.
    To be very clear about this: don't use the CS_-data types directly. Just stick to the SQL data types.
    Concerning VARCHAR vs CHAR: fixed character data types are not supported anymore and don't show up anymore in the documentation.
    I have no idea why you believe that VARCHAR columns are not compressed but this is just a myth.
    create column table charcompr (fchar char(20), vchar varchar(20));
    insert into charcompr (
        select lpad ('x', to_int (rand()*20), 'y'), null from objects cross join objects);
    -- same data into both columns
    update charcompr set vchar = fchar;
    -- perform the delta merge and force a compression optimization
    merge delta of charcompr;
    update charcompr with parameters ('OPTIMIZE_COMPRESSION' ='FORCE');
    -- check the memory requirements
    select COLUMN_NAME, MEMORY_SIZE_IN_TOTAL, UNCOMPRESSED_SIZE, COUNT, DISTINCT_COUNT, COMPRESSION_TYPE
    from m_cs_columns where table_name ='CHARCOMPR'
    COLUMN_NAME    MEMORY_SIZE_IN_TOTAL    UNCOMPRESSED_SIZE   COUNT   DISTINCT_COUNT  COMPRESSION_TYPE
    FCHAR       3661                    70285738            6692569 20              RLE
    VCHAR       3661                    70285738            6692569 20              RLE
    We see: compression and memory requirements are the same for both fixed and variable character sizes.
    - Lars

  • What is the purpose or functions of these tables?

    Dear Experts,
    Briefly, could you explain what is the purpose or function of these tables:
    1. INOB - link between internal number and object. Is internal number = internal order number? related to project? purpose?
    2. AUSP -  Characteristic values - what characteristics? all? purpose?
    3. CABN - Characteristic : what is the purpose of this table?
    4. KLAH - Class header data : what is purpose of Class ?
    Are these cross-application like MM+SD etc or application area-specific eg MM only?
    Sorry, but i have no strong functional knowledge in these aspects. Please enlighten me.
    Thanks in advance.
    regards
    Bass

    1. INOB - link between internal number and object. Is internal number = internal order number? related to project? purpose?
    It is a linking table for internal number and object for characterstics tables.It is not relate to project.
    2. AUSP - Characteristic values - what characteristics? all? purpose?
    It will show what are the objects in class and internal characterstics.Details it will not show and it shows only numbers
    For e.gSuppose you have provided some values in Characterstics like qty 10,20..and colour ...red ,while..,Sytem will show these details in this table.
    3. CABN - Characteristic : what is the purpose of this table?
    It will show the type of characterstic is this numeric or  character
    4. KLAH - Class header data : what is purpose of Class ?
    This is also linking table.Thease are cross application tables MM+SD +PP as charactersics used in all process.

  • What is the purpose of this (?=) ?

    hi friends...
    I am practising the WDA programs...
    in that they hav used this code
    data wd_table type ref to cl_wd_table.
    wd_table ?= view->get_element( 'TABLE' ).
    wd_this->table_control ?= wd_table->_method_handler.
    wd_this->table_control->set_key_attribute_name( 'MATNR' ).
    i don't know why they used this code...
    here  ( ?= ) what is the purpose of this ?= ?
    what is the purpose of this class cl_wd_table ?
    i am not clear with all statement, can you guide me..
    i am waiting for ur reply
    regards
    Deva

    ?= this is called downcast or narrow casting operator in abap.
    The purpose of this is assignment between reference variables in which the static type of the target varible more specific than the static type of the source varible.
    Check this link, hope it helps !
    [https://help.sap.com/saphelp_nw70ehp1/helpdata/en/c3/225b5f54f411d194a60000e8353423/frameset.htm]
    Radhika.

  • OIM: What is the purpose of "Update" while editing group memberships

    Hi,
    This is when you lookup a user's Resource Profile and go to "Edit" link. The process form shows up along with a drop down to edit the group memberships. When we select one of the choices such as "Groups" another window pops up where we could add more entires into the child form. In this form there is an "Update" column with a radio button besides a "Remove" column. What is the purpose of this "Update" column? We can add or delete child entries but what does update do? Is there a way to remove this selection altogether?
    Thanks in advance

    Update I can see used for a cases where you have multiple columns on a child table entry and want to change one of them. Strictly speaking, you can update a single column child table rather than delete and insert also. Access policies always do insert and delete actions, but you will want to implement an update task as well if you expect anyone to be editing child tables on resources directly.

  • Function module: why do we use FM and what is the purpose of using FM

    hi,
       Can any please explain. Why do we use FM?
                                           What is the purpose of using FM ?
                                           Where we are using FM and for what tables in R/3 ?
    I could be thankful to you if any one answer above questions.
    Arun

    Hi,
      We go for creating FM when there is a chance of using the same code in different reports in R/3.
    Suppose I have a requirement say, to display the Payer Name for every sale order.
    This is most common requirement in any project.
    You can create a FM say READ_CUSTOMER_NAME in SE37.
    Write a select statement from the table VBAP to fetch the Payer Name based on the Sales Order.
    Now you can activate the FM and it is ready to be used across all the reports in R/3.
    Need : To avoid redundant coding and to modularize the code.
    If you want to see the list of Standard FMs, got SE37 --> press F4 and you'll get all the SAP standard FMs.
    For customized FMs (User defined), type Z* or Y* and press F4.
    Hope this helps a bit !!!
    Regards,
    Balaji V

  • What is the purpose of using cash sales doc type?

    what is the purpose of using cash sales doc type?

    You can go through the link
    http://help.sap.com/saphelp_46c/helpdata/en/70/a7853478616434e10000009b38f83b/frameset.htm
    Update from help.sap.com
    Cash sales is an order type for when the customer orders, picks up and pays for the goods immediately. The delivery is processed as soon as the order has been entered. A cash invoice can be printed immediately from the order and billing is related to the order. Receivables do not occur for the customer as they do for rush or standard orders, because the invoice amount is posted directly to a cash account.
    Process Flow
    In the standard system, sales document type BV is saved for cash sales with immediate delivery type BV.
    When the sales employee creates a cash sale, the system automatically proposes the current date as the date for delivery and billing. Once the order has been posted, a delivery with type BV is created immediately in the background and the system prints a document that is used as an invoice for the customer.
    The invoice papers are controlled with output type RD03, contained in the output determination procedure for order type BV.
    If the customer has already received the goods, this delivery should not be relevant for picking. If the customer is to pick the goods up from a warehouse, the delivery should be relevant for picking. If the goods are to be sent, this can be processed by maintaining the delivery in the usual way.
    The system automatically creates a resource-related billing index which updates the billing due list. Billing document BV is created as the system processes the billing due list, but an invoice is not printed.
    Once the customer has received the goods and is satisfied with them, the transaction is considered to be complete. We recommend that you post goods issue in the background using a program designed specifically for this purpose. You can then bill the transaction.
    The cash sale can only be billed if the order quantity is the same as the goods issue quantity. If this is not the case, you need to adjust the cash sale document so that the delivered quantity and the quantity to be billed match.
    You use an order-related collective billing process to bill the cash sale, but an invoice is not printed. The sales order number is used as the reference for the accounting document, created in Financial Accounting.
    Dealing with Problems and Complaints
    If the transaction does not run smoothly, manual intervention is necessary. For example, if the required quantity of goods is not found in the warehouse, you need to adjust the delivery quantity. Equally, if the customer is not prepared to pay the agreed price, because, for example, the goods are scratched, you can change the price in the cash sale document.
    In extreme cases, you can delete the entire transaction, starting with the delivery.
    If the delivery is damaged before it is picked up but after it is paid for and there is no replacement stock, you can initiate a subsequent delivery.
    If you make changes to the cash sale, you can issue a new cash sale invoice using the repeat printout function.
    Creating a Cash Sale
    In the initial screen, choose Logistics ® Sales and distribution ® Sales.
    Choose Order ® Create.
    Enter the order type for cash sales (BV in the standard system) and, if necessary, the organizational data.
    The values for sales organization, distribution channel and the division are usually proposed from user-defined parameters. Entries for the sales office and the sales group are optional.
    Choose Enter.
    Enter the following data:
    – Customer number of the sold-to party
    – Material numbers
    – Order quantities for the materials
    Choose Enter.
    If the system carries out an availability check and finds that there is insufficient stock for an order item to be delivered on the requested date, it displays a screen on which you can choose between several delivery proposals. Normally, in a cash sale, you only sell the quantity you can deliver on the spot.
    Save your document.
    The system automatically processes the delivery in the background and prints out a cash sale invoice. The amount of the sale is processed later in an order-related billing transaction. The amount is posted to financial accounting, using the order number as reference. Because this is a cash sale, no invoice is produced during the billing run.

  • What is the purpose of  BAPI_SALESORDER_SIMULATE

    Hi Experts,
        can u please call me what is the purpose of BAPI_SALESORDER_SIMULATE.
    Thanks in Advance

    Hi,
    <b>Functionality</b>
    This method has the same interface definition as the BAPI_SALESORDER_CREATEFROMDAT1 function but differs from it in that here the sales order is not updated.
    Here you can determine availability and pricing. This data is displayed in the ORDER_ITEMS_OUT table.
    Even you can look at the Documentation of bapi in SE37
    Regards
    Sudheer

  • What is the purpose of Destination Function on Submit Button?(Doesn't work)

    Hi Gurus,
    There is a property "Destination Function" on Submit buttons.
    What is the purpose of this field.
    I tried setting some values here expecting following behavior in order:
    1. Process Form Request will get executed.
    2. User will be navigated to the OAF page related to the Destination Function.
    Destination Function property probably point to setInvokeFunction method of the OASubmitButtonBean.
    Please advise on this.
    Thanks and Regards,
    Prince

    Question 2. What is the purpose of View Instance on Submit Button? Is it there for BoundValues? Any examples how can we use this?
    Question 3. Related to Question 2, What is the purpose of View Instance and View Attribute on Button?

  • What is the purpose of open/close connection data socket?

    Hello everyone,
    I am writing and reading values in OPC Server through data socket. What is the purpose of open/close connection data socket when writing /reading a value?  Without the open/close connection element, it still work correctly. I am writing values in the server thru event stucture.I do not need any buffered reading or writing. What will happen if I didnt not use the open/close connection? Maybe it may cause some problems in my program which i didnt realise? 
    And I have attached an example of my program. Thanks
    Yehchia
    Attachments:
    Test Event.vi ‏11 KB

    Hi YehChia,
    I was talking about something like that:
    1. Not good. since with every iteration the DS connection needs to be opened and closed.
    2. Good. Since you open the connection only once then do the reads and close it afterwords.
    Christian

  • IPod Touch Newbie: What is the purpose of the iTunes app on my iPod Touch?

    What is the purpose of the iTunes app on my iPod Touch?
    All it does is connect to the iTunes store if I'm near a WiFi connection. It appears to be useful only for impulse purchasing of media. So why is it not named "iTunes Store"? It appears to have no other function.
    Also, to listen to my iTunes music on iPod Touch I have to click on the Music button...not the iTunes app. What logic is that?
    Also, iTunes has synced a movie for me, but I have no clue how to view it on the iPod Touch. It doesn't appear in iTunes on the iPod Touch, and there is no "Movie" button anywhere. What am I missing? I can't find it anywhere.

    For purchasing music, downloading podcasts,etc.
    http://manuals.info.apple.com/enUS/iPod_touch_3.1_UserGuide.pdf

  • What is the purpose of Multiproviders???

    Hi Everyone,
    I am currently trying to create a multiprovider.
    I have read the SAP documentation but I still do not understand in what circumstances should I create a multiprovider for reporting.
    Would appreciate if anyone can provide details on what is the purpose of multiproviders?
    Assuming I have the following scenario, should I create a multiprovider for reporting?
    Infocube A:-
    Characteristic
    - Employee Number
    - Cal Month/Year
    - Shift Type
    Key Figure
    - Hours
    Infocube B:-
    Characteristic
    - Employee Number
    - Cal Month/Year
    Key Figure
    - Amount
    I need to report on both the key figures for each employee and what is the shift type of the employee for the specific cal month/year. The employee number, cal month/year and shift type will be used as selection parameters.
    I am thinking of creating a multiprovider for this reporting need but I think there will be some problems.
    For example:
    1) If I input the employee number and shift type as selection parameters, the amount column will be empty when the report is displayed.
    2) If I input on the employee nunmber, then I'll be able to see both the key figures when the report is displayed but the data are on different lines which does not make sense to users.
    Emp ID   Shift Type    Cal Mth/Yr   Hours     Amount
    200001   Shift         05.2006       10 
    200001   Not assigned  05.2006                 1000
    Only if I don't show the shift type column, then the record will be display in a single line.
    How can I rectify such a problem.
    Please advise.
    Thanks.
    Shunhui.

    Hi,
    A MultiProvider is a type of InfoProvider that combines data from a number of InfoProviders and makes it available for reporting purposes. The MultiProvider does not itself contain any data. Its data comes entirely from the InfoProviders on which it is based. These InfoProviders are connected to one another by a union operation.
    InfoProviders and MultiProviders are the objects or views that are relevant for reporting.
    Multiprovider - used when we want to report on chracteristics and keyfigures that are in different data targets.
    http://help.sap.com/saphelp_nw04/helpdata/en/52/1ddc37a3f57a07e10000009b38f889/frameset.htm
    Thanks
    DST

  • What is the purpose of Defining a requirement in the procedure?

    Hi
    I have a query related to the Output type .
    What is the purpose of Defining a requirement in the procedure?
    And where shall we code for a new requirement and also what shall we code in it?
    Thanks

    <b>Requirement Use</b>
    If the requirement is fulfilled (SY-SUBRC = 0), then output determination also takes into consideration output type or the access sequence, for which the requirement has been specified.
    <u><b>Output determination:</b></u>
    An object that checks whether the application data (for example, data determined in Customizing) corresponds to the condition records.
    If this is the case, one or several messages are "found," which can then be processed (for example, sent electronically).
    The condition records are searched for according to a predefined hierarchy in message determination.
    After defining a new requirement no say 604 for billing pricing procedure and activating it, the standard sap system creates a routine with the no: 604 specifically for billing. So the name of the program automatically created by SAP will have the naming convention something like RV64A604. then you need an access key to go to the change mode for writing any logic. Then just put a break-point and then execute VF01 or VF04, then the cursor position directly goes into this routine, where the pricing structures KOMK and KOMP have the visibility. So based on the values flowing inside this structures, you can probably code that suites the business requirements.
    there are some useful transactions like VOFM for maintaining the requirements and formulaes for a pricing procedure.
    For viewing the requirements in the procedure you can also go to V/08 transaction.
    Lakshminarayanan
    P.S. Reward points for all helpful answers.

  • What is the purpose of the chain (lock symbol) between a solid color layer and its vector mask?

    What is the purpose of the chain (lock symbol) between a solid color layer and its vector mask in the layer panel when creating shape layers with a shape tool? I'm just curious when locking or unlocking the solid color layer and its vector mask can make a difference.

    I don't understand what you said and your shape layer looks different then mine using CS5.
    When the chain is deselected, I can't do anything with the move tool on the shape layer. This is the only difference I can find. Making the solid color uniform or not doesn't change anything.
    Your example shows that you moved the position of the solid color, how did you do that? I can create a solid color layer and change its uniform look by applying an effect like gradient but I can't move the solid color itself around. How is this possible?

Maybe you are looking for