data dictnary faqs
TRANSCRIPT
-
8/3/2019 Data Dictnary FAQS
1/31
Data dictionary questions
Posted in May 17, 2009 5:27 pmh. Admin
Q. Whats the full form of ECC?
Ans: Enterprice Central Component.
Q. Whats the full form of IDES?
Ans: Internet Demonstration and Evaluation System.
Q. Whats ABAP dictionary and its role in SAP?
Ans: ABAP dictionary is the central information base for the developers. This manages
all definitions(metadata) required for different applications in SAP. ABAP dictionary is
completely integrated into ABAP development workbench. All other component ofABAP development workbench can access the data definitions(meta data) stored in the
data dictionary.
Role: ABAP data dictionary supports
definition of user-defined types (data elements, structures, table types). structure of database objects (tables, indexes and views) can also be defined.
These user-defined types/objects are then automatically created in the underlying
relational database using the above data definitions. The ABAP dictionary also provides tools for editing screen fields (e.g., for
assigning a field an input help i.e. F4 help). Data dictionary ensures data integrity, consistency and security.
Q. What are the main object types of ABAP dictionary?
Ans: The object types of ABAP dictionary can be of following type:
Tables : Tables are defined in the ABAP Dictionary independently of the
database.
A table having the same structure is then created from this table definition in the
underlying database.
Views : are logical views on more than one table. The structure of the view isdefined in the ABAP Dictionary. A view on the database can then be created from
this structure. Types (elements, structures, table types) : Types are created in ABAP programs.
The structure of a type can be defined globally in ABAP programs. Changes to a
type automatically take effect in all the programs using the type.
-
8/3/2019 Data Dictnary FAQS
2/31
Lock objects :are used to synchronize access to the same data by more than one
user. Function modules that can be used in application programs are generated
from the definition of a lock object in the ABAP Dictionary. Domains : Different fields having the same technical type can be combined in
domains. Domain defines the value range of all table fields and structure
components that refer to this domain. Data element : The ABAP Dictionary also contains the information displayed
with the F1 and F4 help for a field in an input template. The documentation about
the field is created for a data element. Input help : The list of possible input values that appears for the input help is
created by a foreign key or a search help.
Q. Note on SAP tables(defining through ABAP dictionary).
Ans: Tables are definedindependently of the database in ABAP dictionary. The fields ofthe table are defined with their (Database-independent) data types and lengths. Using the
table definitions stored in the ABAP dictionary, a table is automatically created in the
physical database(when the table is activated).
Q. What are the components of a table definition.
Ans:
Table fields : For table fields, field names and data types are defined.
Foreign keys: Relationship between the table and the other tables are defined.
Technical settings : Data class and size category defines that what type of table
to be created and how much space required. Indexes : Secondary indexes are created for a table for faster data selection.
Again following are defined for a table fields:
Field name can be of maximum 16 characters in a table and must start with a
letter. Key flag determines if a field should be the table key.
Field type depicts the data type of the field in the ABAP dictionary.
Field length denotes the number of valid places in the field. Decimal places Number of places after decimal point for float type value.
Short text describes the business meaning of the field.
Also fields from other structures can be added to the table definition as include.
Q. How data Type, field Length and short Text of any field is assigned?
Ans: i. Data type, field length (and if necessary decimal places) short text can be directlyassigned to a field in the table definition.
ii. Data element can be assigned to a field so that data type, field length (and decimal
-
8/3/2019 Data Dictnary FAQS
3/31
places) are automatically determined from the domain of the data element. The short
description of the data element is then assigned to the field as a short text.
Q. What are the assignment options to the field?
Ans: i. Direct assignment of data types, field length, short text to a field.
ii. Data element assignment to a field.
iii. An input check(check table) for a field can be defined with a foreign key.
iv. A search help can be assigned to a field.
v. Reference field or reference table must be specified for a table field that holds currency
or quantity type value.
Q. Whats reference table and reference field?
Ans: Reference table is specified for fields containing quantities(data type QUAN) orcurrency(Data type CURR).This reference table must contain a field with the format for
the currency key (data type CUKY) or unit of measure (data type UNIT). This field is
called the reference field of the output field. The reference field can also reside in thetable itself.
E.g.: TAB1 contains the field PRICE which holds price values. Field UNIT containscurrency key for PRICE.
So,TAB1 is the reference table for field PRICE and UNIT is the reference field for field
PRICE.
Q. Whats table include?
Ans: In addition to listing the individual fields in a table or structure, fields from anotherstructure can be included as includes.
Q. Whats named include?
Ans: If an include is added to define a database table or database structure, a name can be
assigned to that included (included substructure). The group of fields of that include can
be addressed as a whole in ABAP application programs with a group name which iscalled as named include.
E.g.:We can access field of a table/ structure in the ABAP application program in the
following manner:
1. - < FIELD NAME>
2. - -
-
8/3/2019 Data Dictnary FAQS
4/31
3. -
Q. Give an example of nested include.
Ans: Structure S1 may include structure S2 and again S2 may include S3.
Q.Whats the maximum depth of nested includes in a table?Ans: Maximum depth is 9 i.e. maximum 9 structures can be included in a table/structure.
Q. Whats the number of characters limit for field name?
Ans: A field name may not have more than 16 characters in a table, but in a structure
maximum 30 characters are allowed for a field name.
Q. What are foreign keys?
Ans: Relationships between tables are defined in the ABAP dictionary by creating
foreign keys.
Q. Whare are the uses of foreign keys in SAP?
Ans:
Using foreign keys(as main table-field is linked with check table), input valuecheck for any input field can be done.
Foreign keys can also be used to link several tables.Explaination on foreign keys:
Suppose, tab1(Foreign key table or dependent table) contains the following fields:fld1(primary key), fld2, fld3, fld4, fld5 and Tab2(Referenced table) contains the
following fields: fld6(primary key), fld7(primary key), fld8, fld9 and tab1-fld2 is
connected to tab2-fld5, tab1-fld4 is connected to tab2-fld6Therefore, fld2 and fld4fields of the table tab1 are called as foreign key fields to the table tab2 and tab2 iscalled as check table orreferenced table.
Q. What are foreign key fields?
Ans: One field of the foreign key table corresponds to each key field of the check table.
That field of the is called as foreign key field.
Uses: A foreign key permits assigning data records in the foreign key table and check
table. One record of the foreign key table uniquely identifies a record of the check table
(using the value entries in the foreign key fields of the foreign key table).
Q. Whats check table?
Ans: Check table is maintained at field level for data validation.
Q. Whats check field?
-
8/3/2019 Data Dictnary FAQS
5/31
Ans: One of the foreign key field is marked as the check field. This depicts that the
foreign key relationship is maintained for that field. When a value is entered for that
check field in the table, input validation checking is done i.e. a checking is done thatwhether the inserted value exists in the check table or not. If doesnt exist then system
rejects the entry else input validation check for that field is successful.
Q. Whats generic and constant foreign keys?
Q. Whats cardinality?
Q. What are the types of foreign key fields?
Q. What are text table?
Q. What is technical settings of a table?What are the important parameters to be
mentioned within it?
Q. Whats data class?
Ans: Data class is that which allows the table to get automatically assigned under specific
tablespace/dbspace during table creation in the SAP database i.e. dataclass determines
that under which table space/dbspace the table will be stored.
Q. How many types of data classes are there in SAP?
Data classes are mainly of three types(for application tables):
i.Choose APPL0(master data) for data that is frequently accessed but rarelyupdated/changed.
ii.Choose APPL1(transaction data) for data that is frequently changed.iii.Choose APPL2(organizational data) for customizing data that is defined/entered
during system installation and rarely changed.
The other two types of data classes are:USR and USR1(for customers own development
purpose).
Q. Whats size category?
Ans: The Size category is used to defined the space requirement for the table in thedatabase.
Q. How many types of size category are there in SAP?
Ans: There are five size categories. Size category from 0 to 4 can be choosen for thetables. A certain fixed memory size is assigned to each category in the SAP database.
-
8/3/2019 Data Dictnary FAQS
6/31
Q. Whats the utility of size category?
Ans:During table creation, the SAP system reserves an initial space i.e. an initial extent)
in the database.If in any case more space is needed, then additional memory is addedaccording to the mentioned size category for that table. correct size category prevents the
creation of a large number of small extents for a table i.e. prevents memory wastage.
Q. Whats buffering?
Q. How buffers are filled up?
Q. What are the different buffering types?
Q. What are the different buffering permissions?
Q. How database tables are buffered?
Q. Whats logging?
Q. How many tables are there in SAP?
Ans: i. Transparent tables, ii. Pool tables, iii. Cluster tables.
Q. What is transparent table?
Ans: The tables which create 1-to-1 correspondence between the table definition in the
ABAP data dictionary and the table definition in the physical database are called as
transparent tables in SAP.
Q. Give examples of transparent table.
Ans: VBAK, VBAP, KNA1 etc.
Q. What is table pool?
Ans: Table pool is a table in the SAP database in which many pool tables are assigned.
Q. What are pool tables?
Ans: Tables assigned to a table pool are called as pool tables.
Q. What are table clusters?
Ans: Table cluster is a table in the SAP database in which many cluster tables are stored.
Q. What are clustered tables?
-
8/3/2019 Data Dictnary FAQS
7/31
Ans: Tables assigned to a Table cluster are called as clustered tables.
Q. Uses of table pool or table cluster.
Ans: Table pool or table cluster is used to store SAPs internal control information
(screen sequences, program parameters, temporary data, continuous texts such asdocumentation).
Q. Example of table cluster and cluster tables.
Ans: i. The table cluster RFBLG holds data for five transparent tables i.e. BSEC, BSED,
BSEG, BSES and BSET.
ii. Other examples of table clusters are CDCLS, CDHDR, RFBLG, DOKCLU, DOKTL
.
Q. What are the differences between transparent and cluster/pool tables?
Ans: i. A transparent table has 1-to-1 cardinality between the table definition in the data
dictionary and in the table definition of sap database whereas cluster/pool tables havemany-to-1 cardinality between the table definition in the data dictionary and in the table
definition of sap database.
ii. Transparent tables are accessible both by Open and native SQL statements whereastable pool/cluster tables are accessible only by open SQL but never by native SQL.
iii. Transparent tables can store table relevant data whereas table pool or cluster tables
can store only system data/ application data based on the transparent tables.
Q. What are tabs under the maintenance screen of the ABAP data dictionary
screen?
Ans: There are five tabs under ABAP dictionary.
i.Attributes,
ii.Delivery & maintenance,
iii. Fields,iv. Entry help/check,
v. Currency/Quantity fields.
Q. What is delivery class?
Ans: We need to insert an delivery class value while creating customized table in SAPthrough the transaction code SE11. Delivery class is that which regulates the transport of
the tables data records (during SAP installations, SAP software upgrade, client copies,
and data transport to other SAP system). SAP and its customers have different write types
-
8/3/2019 Data Dictnary FAQS
8/31
depending on the variety of delivery class. If Delivery class is A, it depicts that the
application table for master and transaction data changes only rarely.
Q. How many types of delivery classes are there in SAP?
Ans: There are following delivery classes:
i. A: Application table (master and transaction data) is maintained by the customersusing application transaction.
ii. C: Customer table. Data is maintained only by the customer.
iii. L: Table for storing temporary data.
iv. G: Customer table, new data records can be inserted but may not overwrite or delete
existing ones.
v. E: System table with its own namespaces for customer entries.
vi. S: System table, data changes have the status of program changes i.e. System table
for programs nature. Maintained only by SAP. E.g.: Codes for SAP transactions.
vii. W: System table for system operation and maintenance. Table contents aremaintained by
maintenance transactions. E.g.: function module table.
Q. What are the differences between domain and data element?
Ans: i.Domain depicts the technical attributes of a field (its data type, field length, no. of
decimal places, appreance on the sreen) of a SAP database table. Whereas data elementdenotes the semantic attributes(short description, label names) for a field.
ii.Data elements are directly attaced to the fields of SAP database tables and each data
element has an underlying domain within it. Whereas domains are not directly attached to
the fields and a single domain can be under many data elements.
iii.Within domain value range of a field can be described. Whereas within the data
element parameter id and search help for a particular field can be assigned.
Q. Whats value table?
Ans: Value table is maintained at domain level in SAP. During domain creation, value
range of the domain is defined by specifying value table. Suppose for a particulardomain, its value table holds the values A, B, Z. So whenever the domain will be
used, system will allow to use these values only.
-
8/3/2019 Data Dictnary FAQS
9/31
Interview Question on BDC
What is BDC- its use, and how to use it?
It is Batch Data conversion used for transferring some data other than sap into sap ... thisis also a work of an ABAPer.
What is "UTS" Or may be it is "UST", something called Unit test?
Use: After developing any object we should write a test case proving that the object isworking properly or not. This is done by the ABAPer. This is UNIT TEST CASE.
In BDC how can we handle Table Controls?
When you do your recording you will have a tab for Next line or Insert. You have to
capture that in your recording. If your transaction code doesn't have that in the recordingthen you have to set up a page down (=P+) and loop it based on the line entries u c on teh
screen.
Suppose we are transfer data through BDC from leagacy to SAP and their is some
duplicate data in legacy system but we don't want this in SAP system .So how can
we check that this data is already exist?
In BDC you would have all your legacy data in an internal table. Use Delete Adjacent
dulpicates syntax to delete duplicate entries.
Can we use two transaction code in one BDC like XK01 & XD01 if yes how?
Yes, we can do that by combining the two bdc program codes together. Then youperform the program routine accordingly. However, it will make your BDC program
very long and complex.
How can we handle errors in Function Module?
Exceptions is used to handle errors.
Can we use Session method & Call transaction both in one BDC if yes please give
me example and scenerio where we use this?
You start your dataload using Call Transaction and if any errors occur push all thoseerrors in a session so that your dataload takes place uninterrupted and you can processs ur
errors later.
52 How do you find the information on the current screen ?
Status command from any menu.The information on the current screen can be found by
System
-
8/3/2019 Data Dictnary FAQS
10/31
53 How do you save data in BDC tables ?
The data in BDC tables is saved by using the field name BDC_OKCODE and field
value of /11
54 What is the last entry in all BDC tables ?
In all BDC tables, the last entry is to save the data by using the field nameBDC_OKCODE and a field value of /11.
55 What is a multiple line field ?
A multiple line field is a special kind of field which allows the user to enter multiple lines
of data into it.
56 How do you populate data into a multiple line field ?
To populate data into a multiple line field, an index is added to the field name to indicate
which line is to be populated by the BDC session (Line index ).
57 Write the BDC table structure.BDC table structure
FIELD TYPE DESCRIPTION
Program CHAR(8) Program name of transaction
DynPro CHAR(4) Screen number of transaction
DynBegin CHAR(1) Indicator for new screen
Fnam CHAR(35) Name of database field fromScreen
Fval CHAR(80) Value to submit to field
58 Does the CALL TRANSACTION method allow multiple transactions to be
processed by SAP ?
No. The CALL TRANSACTION method allows only a single transaction to be processedby SAP.
59 Does the BDC_INSERT function allow multiple transactions to be processed by
SAP ?
Yes.
60 What is the syntax for CALL TRANSACTION ?
CALL TRANSACTION trans [ using bdctab MODE mode ].
Three possible entries are there for MODE.
A - show all screensE - show only screens with errors
N - show no screens
Which mode of CALL TRANSACTION method allows background processing ?N is the only mode that allows background processing.
61 Is it possible to use CALL TRANSACTION without a BDC table ?
Yes, it is possible to use CALL TRANSACTION without a BDC table. In such case,
-
8/3/2019 Data Dictnary FAQS
11/31
the current program is suspended, the transaction specified is brought up, and a user must
enter the data into the screens.
62 What is TCODE ?
TCODE is the transaction code for the transaction that should be used to process the data
in the BDC table being inserted.
63 What are the function modules that need to be called from BDC program to
submit the transactions for processing ?
- BDC_OPEN_GROUP
- BDC_INSERT
- BDC_CLOSE_GROUP
64 How many sessions will be opened using BDC_OPEN_GROUP ?
Only one session can be created using the BDC_OPEN_GROUP functon.
65 What is BATCH INPUT or BDC ?The SAP system offers two primary methods (BDC SESSION METHOD, CALL
TRANSACTION METHOD) for transferring data into the system from other systemsand Non-SAP systems. These two methods are collectively called as BATCH INPUT
or Batch Data Communication (BDC).
66 What are the advantages in Batch Input ?
The Batch Input ensures Data integrity.
No manual interaction is required during Data transfer.
67 What is the functionality of Classical Batch Input ?
In Classical Batch Input an ABAP/4 program reads the external data that is to be
entered in the SAP system and stores the data in a Batch Input session. This sessionstores the actions that are required to enter your data using normal SAP transactions.
68 Which Function Modules are used in Classical Batch Input ?
BDC_OPEN_GROUP , BDC_INSERT, BDC_CLOSE_GROUP.
69 What is Synchronous Database update ?
During the processing no transaction is stored until the previous transaction has been
written to the Database. This is called Synchronous Database update.
70 What are the differences between CALL TRANSACTION and BATCH INPUT
SESSION ?
- The most important aspects of the batch session interface are:
- Asynchronous processing
- Transfers data for multiple transactions- Synchronous database update
During processing, no transaction is started until the previous transaction has been
written to the database.
- A batch input processing log is generated for each session
-
8/3/2019 Data Dictnary FAQS
12/31
- Sessions cannot be generated in parallel
The most important aspects of the CALL TRANSACTION USING interface are:
- Synchronous processing- Transfers data for a single transaction
- Synchronous and asynchronous database updating both possible
The program specifies which kind of updating is desired.- Separate LUW for the transaction
The system performs a database commit immediately before and after the CALL
TRANSACTION USING statement.No batch input processing log is generated
71 What are the types of Batch Input ?
Classical Batch InputCall Transaction
Call Dialog
72 What is BDC_OKCODE ?The command field is identified by a special name in batch input called BDC_OKCODE.
This name is constant and always identifies the command field.
73 How can we execute a function in a BDC session ?
We can execute a function in a transaction by entering the function code or function key
number in the command field of an SAP session. A function key number must beprefixed with the / (slash) character. A function code must be prefixed with the =
character.
Example:BDCDATA-FNAM = 'BDC_OKCODE'
BDCDATA-FVAL = '=UPDA'
74 How can we position the cursor on a particular field ?
BDCDATA-FNAM = BDC_CURSOR
BDCDATA-FVAL =
75 Who are Dialog users and who are Background users ?
Dialog users are normal interactive users in the SAP system. Background users are user
master records that are specially defined for providing authorizations for backgroundprocessing jobs.
76 What is the use of BDC_INSERT ?
We add a transaction to a Batch Input Session by using this function.
77 What are the update modes in CALL TRANSACTION ?
S : Synchronous
A : Asynchrnous
L : Local
-
8/3/2019 Data Dictnary FAQS
13/31
78 What does the message parameter indicates ?
The message parameter indicates there all system messages issued during a CALL
TRANSACTION are written into the internal table . The internal table must have thestructure of BDCMSGCOLL.
79 What is Direct Input ?To enhance the batch input procedure, the system offers the direct input technique
especially for transferring large amount of data. This technique doesnt create sessions
but stores the data directly. The direct input programs must be executed in the background only. To maintain and start these programs, use program RBMVSHOW or the
transaction BMVO.
80 What are the features of Recording Function ?
recording transaction runs
creating batch input sessions from the recorded transaction runs.
Generating a batch input program from the recorded data.
81 What is synchrnous database update ?
During the processing, no transaction is stored until the previous transaction has beenwritten to the database. This is called Synchronous database update.
82 How do you set up batch process?
Data analysis: Analyze the data that is to be transferred to the SAP System.||
Generate SAP structures: Generate SAP data structures for incorporation into your data
export program.||
Develop transfer program: You can write the program in ABAP/4 or as an external
program.||
Create sequential file: Export the data that is to be transferred, to a sequential file.
||Create batch input program: ABAP/4 batch input program that will read the data to be
transferred from the sequential file.
||
Process batch input data: Process the data and add it to the SAP System. You can do thiseither by:
batch-input session method or Call transaction method.
||Analyse results: Check that all data has been successfully processed.
||
Analyse Error session: Correct and re-process erroneous data.
83 Where do you use BDC?
transferring data from another system when you install your SAP System
regularly transferring data that is captured by a non-SAP system in your company into the
-
8/3/2019 Data Dictnary FAQS
14/31
SAP System. Assume, for example, that data collection in some areas of your company
is still performed by a non-SAP system. You can still consolidate all of your data in the
SAP System by exporting the data from the other system and reading it into the SAPSystem with batch input.
You can also use batch input to transfer data between two R/3 Systems. However, there
are more direct methods for doing this, such as RFC (remote function calls).
84 What has to be done to the packed fields before submitting to a BDC session?
Declare these fields in the internal table as characters and the length of the field should besame as the field length of the field's data element. This internal table is used to hold the
data fetched from the sequential file using WS-upload function module
What is LSMW
The LSMW is a cross-application component (CA) of the SAP R/3 System.
The tool has interfaces with the Data Transfer Center and with batch input and direct
input processing as well as standard interfaces BAPI and IDoc in R/3.
The LSMW comprises the following main functions:Read data (legacy data in spreadsheet tables and/or sequential files).
Function Read data replaces and enhances functions Spreadsheet interface and Hostinterface of LSMW version 1.0. You can use any combination out of PC and server
files now.
Convert data (from the source into the target format).
Import data (to the database used by the R/3 application).
-
8/3/2019 Data Dictnary FAQS
15/31
Monday, September 3, 2007
Smart forms Frequently Asked Questions
Forcing a page break within table loop
Create a loop around the table. Put a Command node before the table in the loop that
forces a NEWPAGE on whatever condition you want. Then only loop through a subset of
the internal table (based on the conditions in the Command node) of the elements in theTable node.
Font style and Font size
Goto Transaction SMARTSTYLES.
There you can create Paragraph formats etc just like in sapscript.
Then in your window under OUTPUT OPTIONS you include this SMARTSTYLE anduse the Paragraph and character formats.
Line in Smartform
Either you can use a window that takes up the width of your page and only has a heightof 1 mm.
Then you put a frame around it (in window output options).Thus you have drawn a box but it looks like a line.
Or you can just draw "__" accross the page and play with the fonts so that it joins each
UNDER_SCORE.
Difference between 'forminterface' and 'global definitions' in global settings of
smart forms
The Difference is as follows.
To put it very simply:
Form Interface is where you declare what must be passed in and out of the smartform (in
from the print program to the smartform and out from the smartform to the printprogram).
http://saplab.blogspot.com/2007/09/smart-forms-frequently-asked-questions.htmlhttp://saplab.blogspot.com/2007/09/smart-forms-frequently-asked-questions.html -
8/3/2019 Data Dictnary FAQS
16/31
Global defs. is where you declare data to be used within the smartform on a global scope.
ie: anything you declare here can be used in any other node in the form.
Smartforms function module name
Once you have activated the smartform, go to the environment -> function module name.There you can get the name of funtion module name.
The key thing is the program that calls it. for instance, the invoice SMARTFORM
LB_BIL_INVOICE is ran by the program RLB_INVOICE.
This program uses another FM to determine the name of the FM to use itself. The keything is that when it calls this FM (using a variable to store the actual name), that the
parameters match the paramters in your smartform.
Another thing to note is that the FM name will change wherever the SF is transported to.
So you need to use the FM to determine the name of the SF.
Here is the code that can be use to determine the internal name of the function module:
Code:
if sf_label(1) '/'. " need to resolve by name
move sf_label to externalname.
call function 'SSF_FUNCTION_MODULE_NAME'
exporting
formname = externalnameimporting
fm_name = internalnameexceptions
no_form = 1
no_function_module = 2others = 3.
if sy-subrc 0.
message 'e427'.
endif.move internalname to sf_label.
endif.
It checks to see if the sf_label starts with a '/', which is how the internal names start. if it
does, the name has already been converted. If not, it calls the FM and converts the name.
You would then CALL FUNCTION sf_label.
Smartforms FAQ Part Two
-
8/3/2019 Data Dictnary FAQS
17/31
Smartforms output difference
Problem with Smartforms: in a certain form for two differently configured printers,
there seem to be a difference in the output of characters per inch (the distance
between characters which gives a layout problem - text in two lines instead of one.
It happens when the two printers having different Printer Controls' if you go to SPADMenu (Spool Administrator Menu) you can see the difference in the Printer Control and
if you make the Printer control setting for both the printers as same. then it will be ok.and also u have to check what is the device type used for both the output devices.
SmartForms Output to PDF
There is a way to download smartform in PDF format.
Please do the following:1. Print the smartform to the spool.
2. Note the spool number.
3. Download a PDF file (Acrobat Reader) version of the spool by running Program
RSTXPDFT4 and entering thenoted spool number.
SmartForm Doublesided printing question
Your customer wants your PO SmartForm to be able to print "Terms and
Conditinos" on the back side of each page. They don't want to purchase pre-printed
forms with the company's logo on the front and terms & conditions on the back.
Now this presents an interesting problem.
Has anyone else ever had a request like this? If for example there was a 3 page PO
to be printed, they want 3 pieces of paper, the front side of each to containe the PO
information (page 1, 2, and 3) and the back side of each piece of paper to containg
the static "Terms & Conditions" information.Anyone have a clue how to force this out?
Easy - page FRONT lists page CONTACTS as next page and CONTACTS lists FRONT
as next page. Since CONTACTS does not contain a MAIN window, it will print thecontacts info and then continue on to FRONT for the rest of the main items. Additionally,
set print mode on FRONT to D (duplex) and set CONTACTS to 'blank' (for both resource
name and print mode - this is the only way to get to the back of the page).
Transport Smart Forms
How does one transport SMARTFORM? SE01?
How do you make sure that both, the SMARTFORM & it's function module gets
transported? Or does the FM with same name gets generated automatically in the
transported client?
A smartform is transported no differently than any other object. if it is assigned to a
development class that is atteched to a transport layer, it will be transported.
The definition is transported, and when called, the function module is regenerated.This leads to an interetsing situation. On the new machine, it is very likely the function
http://saplab.blogspot.com/2007/09/smart-forms-frequently-asked-questions.htmlhttp://saplab.blogspot.com/2007/09/smart-forms-frequently-asked-questions.htmlhttp://saplab.blogspot.com/2007/09/smart-forms-frequently-asked-questions.htmlhttp://saplab.blogspot.com/2007/09/smart-forms-frequently-asked-questions.html -
8/3/2019 Data Dictnary FAQS
18/31
module name will be different than the name on the source system. Make sure, before
you call the function module, you resolve the external name to the internal name using
the 'SSF_FUNCTION_MODULE_NAME' function module.Typically, generate the SF, then use the pattern to being in the interface. Then change the
call function to use the name you get back from the above function module.
Smartforms: protect lines in main window.
How to protect lines in the main window from splitting between pages?
It was easy with SAPscript, but how to do it with SF's. For 4.7 version if you are using
tables, there are two options for protection against line break:
- You can protect a line type against page break.
- You can protect several table lines against page break for output in the main area.
Protection against page break for line types
- Double-click on your table node and choose the Table tab page.
- Switch to the detail view by choosing the Details pushbutton.- Set the Protection against page break checkbox in the table for the relevant line type.
Table lines that use this line type are output on one page.
Protection against page break for several table lines
- Expand the main area of your table node in the navigation tree.- Insert a file node for the table lines to be protected in the main area.
- If you have already created table lines in the main area, you can put the lines that you
want to protect again page break under the file using Drag&Drop. Otherwise, create the
table lines as subnodes of the file.- Choose the Output Options tab page of the file node and set the Page Protection option.
All table lines that are in the file with the Page Protection option set are output on onepage.
In 4.6, Alternatively in a paragraph format use the Page protection attribute to determine
whether or not to display a paragraph completely on one page. Mark it if you want to
avoid that a paragraph is split up by a page break. If on the current page (only in the main
window) there is not enough space left for the paragraph, the entire paragraph appears onthe next page.
http://saplab.blogspot.com/2007/09/smart-forms-frequently-asked-questions.htmlhttp://saplab.blogspot.com/2007/09/smart-forms-frequently-asked-questions.html -
8/3/2019 Data Dictnary FAQS
19/31
ABAP interview questions and answersBy admin | May 2, 2005
Thanks to the reader who sent in this question set:
1. What is an ABAP data dictionary?- ABAP 4 data dictionary describes thelogical structures of the objects used in application development and shows how
they are mapped to the underlying relational database in tables/views.
2. What are domains and data element?- Domains:Domain is the central objectfor describing the technical characteristics of an attribute of an business objects. It
describes the value range of the field. Data Element: It is used to describe the
semantic definition of the table fields like description the field. Data elementdescribes how a field can be displayed to end-user.
3. What is foreign key relationship?- A relationship which can be defined between
tables and must be explicitly defined at field level. Foreign keys are used toensure the consistency of data. Data entered should be checked against existing
data to ensure that there are now contradiction. While defining foreign key
relationship cardinality has to be specified. Cardinality mentions how many
dependent records or how referenced records are possible.4. Describe data classes.- Master data: It is the data which is seldomly changed.
Transaction data: It is the data which is often changed. Organization data: It is a
customizing data which is entered in the system when the system is configuredand is then rarely changed. System data:It is the data which R/3 system needs for
itself.
5. What are indexes?- Indexes are described as a copy of a database table reduced
to specific fields. This data exists in sorted form. This sorting form ease fastaccess to the field of the tables. In order that other fields are also read, a pointer to
the associated record of the actual table are included in the index. Yhe indexes are
activated along with the table and are created automatically with it in thedatabase.
6. Difference between transparent tables and pooled tables.- Transparent tables:
Transparent tables in the dictionary has a one-to-one relation with the table indatabase. Its structure corresponds to single database field. Table in the database
has the same name as in the dictionary. Transparent table holds application data.
Pooled tables. Pooled tables in the dictionary has a many-to-one relation with thetable in database. Table in the database has the different name as in the dictionary.
Pooled table are stored in table pool at the database level.7. What is an ABAP/4 Query?- ABAP/4 Query is a powerful tool to generate
simple reports without any coding. ABAP/4 Query can generate the following 3
simple reports: Basic List: It is the simple reports. Statistics: Reports with
statistical functions like Average, Percentages. Ranked Lists: For analytical
reports. - For creating a ABAP/4 Query, programmer has to create user group anda functional group. Functional group can be created using with or without logical
http://www.techinterviews.com/author/admin/http://www.techinterviews.com/author/admin/ -
8/3/2019 Data Dictnary FAQS
20/31
database table. Finally, assign user group to functional group. Finally, create a
query on the functional group generated.
8. What is BDC programming?- Transferring of large/external/legacy data intoSAP system using Batch Input programming. Batch input is a automatic
procedure referred to as BDC(Batch Data Communications).The central
component of the transfer is a queue file which receives the data vie a batch inputprograms and groups associated data into sessions.
9. What are the functional modules used in sequence in BDC?- These are the 3
functional modules which are used in a sequence to perform a data transfersuccessfully using BDC programming: BDC_OPEN_GROUP - Parameters like
Name of the client, sessions and user name are specified in this functional
modules. BDC_INSERT - It is used to insert the data for one transaction into a
session. BDC_CLOSE_GROUP - This is used to close the batch input session.10. What are internal tables?- Internal tables are a standard data type object which
exists only during the runtime of the program. They are used to perform table
calculations on subsets of database tables and for re-organising the contents of
database tables according to users need.11. What is ITS? What are the merits of ITS?- ITS is a Internet Transaction
Server. ITS forms an interface between HTTP server and R/3 system, whichconverts screen provided data by the R/3 system into HTML documents and vice-
versa. Merits of ITS: A complete web transaction can be developed and tested in
R/3 system. All transaction components, including those used by the ITS outside
the R/3 system at runtime, can be stored in the R/3 system. The advantage ofautomatic language processing in the R/3 system can be utilized to language-
dependent HTML documents at runtime.
12. What is DynPro?- DynPro is a Dynamic Programming which is a combination ofscreen and the associated flow logic Screen is also called as DynPro.
13. What are screen painter and menu painter?- Screen painter: Screen painter is a
tool to design and maintain screen and its elements. It allows user to create GUIscreens for the transactions. Attributes, layout, filed attributes and flow logic are
the elements of Screen painter. Menu painter: Menu painter is a tool to design the
interface components. Status, menu bars, menu lists, F-key settings, functions andtitles are the components of Menu painters. Screen painter and menu painter both
are the graphical interface of an ABAP/4 applications.
14. What are the components of SAP scripts?- SAP scripts is a word processing
tool of SAP which has the following components: Standard text. It is like astandard normal documents. Layout sets. - Layout set consists of the following
components: Windows and pages, Paragraph formats, Character formats. Creating
forms in the R/3 system. Every layout set consists of Header, paragraph, andcharacter string. ABAP/4 program.
15. What is ALV programming in ABAP? When is this grid used in ABAP? -
ALV is Application List viewer. Sap provides a set of ALV (ABAP LISTVIEWER) function modules which can be put into use to embellish the output of
a report. This set of ALV functions is used to enhance the readability and
functionality of any report output. Cases arise in sap when the output of a report
contains columns extending more than 255 characters in length. In such cases, this
-
8/3/2019 Data Dictnary FAQS
21/31
set of ALV functions can help choose selected columns and arrange the different
columns from a report output and also save different variants for report display.
This is a very efficient tool for dynamically sorting and arranging the columnsfrom a report output. The report output can contain up to 90 columns in the
display with the wide array of display options.
16. What are the events in ABAP/4 language?- Initialization, At selection-screen,Start-of-selection, end-of-selection, top-of-page, end-of-page, At line-selection,
At user-command, At PF, Get, At New, At LAST, AT END, AT FIRST.
17. What is CTS and what do you know about it?- The Change and TransportSystem (CTS) is a tool that helps you to organize development projects in the
ABAP Workbench and in Customizing, and then transport the changes between
the SAP Systems and clients in your system landscape. This documentation
provides you with an overview of how to manage changes with the CTS andessential information on setting up your system and client landscape and deciding
on a transport strategy. Read and follow this documentation when planning your
development project.
18. What are logical databases? What are the advantages/ dis-advantages oflogical databases?- To read data from a database tables we use logical database.
A logical database provides read-only access to a group of related tables to anABAP/4 program. Advantages: i)check functions which check that user input is
complete, correct,and plausible. ii)Meaningful data selection. iii)central
authorization checks for database accesses. iv)good read access performance
while retaining the hierarchical data view determined by the application logic. disadvantages: i)If you donot specify a logical database in the program attributes,the
GET events never occur. ii)There is no ENDGET command,so the code block
associated with an event ends with the next event statement (such as another GETor an END-OF-SELECTION).
19. What is a batch input session?- BATCH INPUT SESSION is an intermediate
step between internal table and database table. Data along with the action is storedin session ie data for screen fields, to which screen it is passed, program name
behind it, and how next screen is processed.
20. How to upload data using CATT ?- These are the steps to be followed toUpload data through CATT: Creation of the CATT test case & recording the
sample data input. Download of the source file template. Modification of the
source file. Upload of the data from the source file.
21. What is Smart Forms?- Smart Forms allows you to create forms using agraphical design tool with robust functionality, color, and more. Additionally, all
new forms developed at SAP will be created with the new Smart Form solution.
22. How can I make a differentiation between dependent and independent data?-Client dependent or independent transfer requirements include client specific or
cross client objects in the change requests. Workbench objects like SAPscripts are
client specific, some entries in customizing are client independent. If you displaythe object list for one change request, and then for each object the object
attributes, you will find the flag client specific. If one object in the task list has
this flag on, then that transport will be client dependent.
-
8/3/2019 Data Dictnary FAQS
22/31
23. What is the difference between macro and subroutine?- Macros can only be
used in the program the are defined in and only after the definition are expanded
at compilation / generation. Subroutines (FORM) can be called from both theprogram the are defined in and other programs . A MACRO is more or less an
abbreviation for some lines of code that are used more than once or twice. A
FORM is a local subroutine (which can be called external). A FUNCTION is(more or less) a subroutine that is called external. Since debugging a MACRO is
not really possible, prevent the use of them (Ive never used them, but seen them
in action). If the subroutine is used only local (called internal) use a FORM. If thesubroutine is called external (used by more than one program) use a FUNCTION.
-
8/3/2019 Data Dictnary FAQS
23/31
Questionwhat are the differences between scripts & smart
forms?
Question Submitted By :: E.bhanuprakashI also faced this Question!! Rank Answer
Posted By Re: what are the differences between scripts & smart forms? Answer
# 1
Multiple Page format is available in smartforms
whereas in
sapscripts not possible.
It is possible to a smartform without MAIN Window.
Lables Cannot generated in smartforms.
Smartform generate a fUNCTION Module when it
getactivated
Is This Answer Correct ? 24 Yes 5 No
0
GuestRe: what are the differences between scripts & smart forms? Answer
# 2
1.Sapscript is Client dependent
Smartform is Client independent.
2.Sapscript can uploaded/Downloaded whereassmartforms cannot.
3.protect/endprotect command in sapscript will
not work in smartforms
4.Transaction for sapscript is SE71
For smartform - SMARTFORMS
Is This Answer Correct ? 20 Yes 8 No
0
Ajay
Re: what are the differences between scripts & smart forms? Answer
# 3sapscripts are clinet dependent. smartforms r
independent.
http://www.allinterview.com/viewpost/3453.htmlhttp://www.allinterview.com/viewpost/4989.htmlhttp://www.allinterview.com/viewpost/17370.htmlhttp://www.allinterview.com/viewpost/3453.htmlhttp://www.allinterview.com/viewpost/4989.htmlhttp://www.allinterview.com/viewpost/17370.html -
8/3/2019 Data Dictnary FAQS
24/31
sapscripts allows only black and white texts.
smartforms'
texts can be written in various colors.
Sapscripts has repeated transfer of control. There is
notransfer of control b/w prg. and form in smartforms.
There is an option to print a mixture of portrait and
landscape format in smartforms. but this feature is
not
available in sapscript.
Sapscripts allows more than one main window.
Smartforms
allows only one main widown on pagge.
Text elements in sapscripts allow if..else,
case..endcase,
etc.. commands but not smartforms.
pages and windows are defined separately and then
combined
to form pagewindows in sapscripts. all windows are
automatically pagewindows in smartforms.
Windows are: main, var, const windows in sapscripts.
main, secondary, copies and final windows in
smartforms.
Is This Answer Correct ? 21 Yes 3 No
0
Veena
Re: what are the differences between scripts & smart forms? Answer
# 4
smartdorms we can upload and download using utilities
upload/download .
where as in scripts we cannot
http://www.allinterview.com/viewpost/234441.htmlhttp://www.allinterview.com/viewpost/234441.html -
8/3/2019 Data Dictnary FAQS
25/31
SAP ABAP Smart forms Interview faqs
1)How can I insert symbols in Smartforms?
Select the Text node.
Change Editor (Click the button above Check near the Editor)
Go to menu Include->Characters->SAP Symbols
Choose the SAP symbol that you want to insert.
2)I have a smartform which works fine in DEV. After trasnsporting it to PROD,
there is no Function module generated for this smartform. As a result my program
dumps in PROD?
The Smartform that is created in the Development may not have the same name in the
Production server. So it is always advised to use the Function ModuleSSF_FUNCTION_MODULE_NAME to get the Function Module name by passing theSmartform name.
DATA: fm_name TYPE rs38l_fnam.
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTINGformname = 'ZSMARTFORM'
IMPORTING
fm_name = fm_nameEXCEPTIONS
no_form = 1
no_function_module = 2OTHERS = 3.
IF sy-subrc 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgnoWITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
CALL FUNCTION fm_name
EXCEPTIONSformatting_error = 1
internal_error = 2
send_error = 3
user_canceled = 4OTHERS = 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.
3)How can I make the Smartforms to choose a printer name by default?In the CALL FUNCTION of the Smartform Function Module, set the output options
http://www.cinterviews.com/2010/07/sap-abap-smart-forms-interview-faqs.htmlhttp://www.cinterviews.com/2010/07/sap-abap-smart-forms-interview-faqs.html -
8/3/2019 Data Dictnary FAQS
26/31
parameter to set the printer name.
The output options is of the type SSFCOMPOP which contains the field TDDEST. Set
the TDDEST field to your default printer name.
4)How can I make the Smartforms to display a print preview by default without
displaying the popup for print parameters?
In the SSF_OPEN function module,Set the OUTPUT OPTIONS paramter TDDEST to your printer name.
Set the CONTROL PARAMETERS and control parameters as shown below,
control-preview = 'X'.control-no_open = 'X'.
control-no_close = 'X'.
control-no_dialog = 'X'.
control-device = 'PRINTER'.control_parameters-no_dialog = 'X'.
control_parameters-no_open = 'X'.
control_parameters-no_close = 'X'.
OUTPUT_OPTIONS-TDDEST = 'PRINTER NAME'.OUTPUT_OPTIONS-TDNOPRINT = 'X'.
CALL FUNCTION 'SSF_OPEN'EXPORTING
output_options = output_options
control_parameters = control
user_settings = ' 'EXCEPTIONS
formatting_error = 1
internal_error = 2send_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.
5)How can I display the total number of pages in Smartforms?
Use SFSY-FORMPAGES to display the total number of pages in the Smartforms
&SFSY-PAGE&
Current page number
&SFSY-FORMPAGE&
Total number of pages in the currently formatted layout set
&SFSY-JOBPAGE&
Total number of pages in the currently formatted print request
&SFSY-COPYCOUNT&
Original-1,1st copy-2
&SFSY-DATE&
Date
&SFSY-TIME&
-
8/3/2019 Data Dictnary FAQS
27/31
Time
&SFSY-USERNAME&
Username
6)I'm using the variable SFSY-FORMPAGES, I get a star "*" instead of the total
number of pages.?
There may not be enough space in the window to display the variable, either increase thewindow dimensions or condense the spaces using &SFSY-FORMPAGES(C)
7)What are the various text formatting options in Smartforms?
&symbol(Z)&
Omit Leading Zeros
&symbol(S)&
Omit Leading Sign
&symbol()&
Display Leading Sign to the Right
&symbol(C)&Compress Spaces
&symbol(.N)&
Display upto N decimal places
&symbol(T)&
Omit thousands separator
&symbol(R)&
Right justified
&symbol(I)&
Suppress output of the initial value
8)How can I provide a background shading to the table?
In the Table Painter, you can specify the color and shading for the table lines.
Where can I provide the input parameters to the smartform?
The input parameters for the smartform can be defined in Global Settings->Form
Interface.
The Associated Type must be defined in the ABAP Dictionary.
Where can I define my own global types for the smartform?
The global types(within the smartform) can be defined in Global Settings->Global
Definitions->Types
The types defined here will be global through the entire smartform.Also the form routines can be defined Global Settings->Global Definitions->Form
Routines
I have defined my own Program Lines, where I have used a global variable
G_TEXT. I get an error G_TEXT is not defined?
Whenever using the global variables in the Program Lines, enter the variable name in
Input Parameters if you are going to use(read) the variable. If you are going to bothread/write the variable value enter the same in Output Parameters.
I have created a table node for display. Where can I check the condition which must
satisfy to display the table?
The conditions can be defined in the Conditions tab. In smartforms all the nodes have a
-
8/3/2019 Data Dictnary FAQS
28/31
condition tab where you can specify the condition to be satisfied to access the node.
How can I define Page Protect in Smartforms?
To define Page Protect for a node go to the Output options and check the Page Protectioncheckbox.
What is the difference between Template and Table in Smartforms?
The Template contains a fixed number of rows and columns, where the output is fixed.The Table can have variable number of rows
Where can I define the paragraph and character format for the smartforms?
The paragraph and character format for the smartforms can be defined in the transactionSMARTSTYLES
How to add watermark to smartform output?
Go to the properties of 'PAGE', tab 'Background Picture'. Add the grapic image name
here.
-
8/3/2019 Data Dictnary FAQS
29/31
ABAP Interview questions on ABAP reports
Posted in May 3, 2009 2:43 pmh. Admin
Q.1) What are SAP reports?
Ans: SAP Reports are event-driven programs using ABAP/4 programming langugage.These reports are used to fetch business-specific data from SAP standard databases under
specified selection criteria, fetched data is processed to display result on output screen.
User develop SAP report object on ABAP editor using the standard SAP transactionSE38.
Q.2)What are types of reports?
Ans: i.Simple report and ii.Interactive report.
Q.3) What are ABAP report types?
Ans: ABAP report types are of 7 types. ABAP report types are available in reports
attributes screen.i.Executable program,
ii.Function group (containing function modules) ,
iii. Include ,iv. Interface pool ,
v. Class pool,
vi. Module pool,vii. Subroutine pool.
Q.4)What are the steps involved in interactive report?
Ans: i. Basic list is displayed.
ii.Case 1: User double clicks on any key figure to get more detailed data on it
Case 2: User presses on any customized toolbar button so that another specified processis performed or corresponding event is trigerred.
Q.5)How many lists can be displayed through an interactive report?
Ans: Maximum 21 lists can be displayed(1 basic list+ 20 secondary lists).
Q.6)What are the events in classical and interactive reports?
Ans: EVENTS IN A CLASSICAL REPORT:
1. INITIALIZATION.2. AT SELECTION-SCREEN OUTPUT.
-
8/3/2019 Data Dictnary FAQS
30/31
3. AT SELECTION-SCREEN/.
4. START-OF-SELECTION.
OUTPUT EVENTS(5, 6):5. TOP-OF-PAGE.
6. END-OF-PAGE.7. END-OF-SELECTION.
EVENTS IN AN INTERACTIVE REPORT:
In addition of the above, the following events are possible in case of Interactive Reports.i.Top of page during line selection.
ii.At line-selection.
iii.At pF.iv.At user-command.
[P.N.: For detailed notes on events : http://www.abapguide.com/notes/events-in-report/]
Q.7)what is the event that will be triggered first in an ABAP report?
Ans: Initialization event is triggered first if user executes an ABAP report. But if the
program is of type 1, M, F, or S; then LOAD-OF-PROGRAM is trigerred first and thenINITIALIZATION event.
( Note: The purpose of load of program is to load the program into system memory so
that the program can be executed.)
Q.8)What are the events in dialog program?
Ans:i.PBO : Process Before Outputii.PAI : Process After Input
iii.POH : Process on Help
iv.POV : Process on Value Request
Q.9)What are the differences between simple and interactive ABAP reports?
Ans: A simple ABAP report allows the user to interact with the whole business-result
data.
In case of interactive reports user can interact with specific result data at a time.
Q.10)Mention the steps involved in case of displaying data of an interactive report?
Ans: i. Execute the report
ii. Click on the specific key field to display data of the secondary list.
Or, click on application toolbar button or any screen button for required data display.
-
8/3/2019 Data Dictnary FAQS
31/31