LDB General Qn :
While creating a LDB..
a screen appears asking
Nodes for which free selections are to be generated
Nodes for which field selections are to be generated.
what does this mean ??
Hi
Hope it will help you.
Reward if help.
A logical database is a special ABAP/4 program which combines the contents of certain database tables. You can link a logical database to an ABAP/4 report program as an attribute. The logical database then supplies the report program with a set of hierarchically structured table lines which can be taken from different database tables.
LDB offers an easy-to-use selection screens. You can modify the pre-generated selection screen to your needs. It offers check functions to check whether user input is complete, correct, and plausible. It offers reasonable data selections. It contains central authorization checks for data base accesses. Enhancements such as improved performance immediately apply to all report programs that use the logical database.
Less coding s required to retrieve data compared to normal internel tables.
Tables used LDB are in hierarchial structure.
Mainly we used LDBs in HR Abap Programming.
Where all tables are highly inter related so LDBs can optimize the performance there.
Check this Document. All abt LDB's
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.highlightedcontent?documenturi=%2flibrary%2fabap%2fabap-code-samples%2fldb+browser.doc
GO THROUGH LINKS -
http://www.sap-basis-abap.com/saptab.htm
http://help.sap.com/saphelp_nw04/helpdata/en/9f/db9bfa35c111d1829f0000e829fbfe/content.htm
http://help.sap.com/saphelp_nw04/helpdata/en/9f/db9b5e35c111d1829f0000e829fbfe/frameset.htm
http://help.sap.com/saphelp_nw04/helpdata/en/c6/8a15381b80436ce10000009b38f8cf/frameset.htm
/people/srivijaya.gutala/blog/2007/03/05/why-not-logical-databases
Re: **LDB**
www.sapbrain.com/FAQs/TECHNICAL/SAP_ABAP_Logical_Database_FAQ.html
www.sap-img.com/abap/abap-interview-question.htm
www.sap-img.com/abap/quick-note-on-design-of-secondary-database-indexes-and-logical-databases.htm
http://help.sap.com/saphelp_nw04/helpdata/en/9f/db9b5e35c111d1829f0000e829fbfe/content.htm
http://help.sap.com/saphelp_nw2004s/helpdata/en/9f/db9bb935c111d1829f0000e829fbfe/content.htm
Gothru the blog which provides info on LDB's:
/people/srivijaya.gutala/blog/2007/03/05/why-not-logical-databases
Sample code
TABLES: SPFLI,
SFLIGHT,
SBOOK,
SCARR.
START-OF-SELECTION.
GET SPFLI.
WRITE:/ u2019SPFLI: u2019, SPFLI-CARRID, SPFLI-CONNID,
SPFLI-AIRPFROM, SPFLI-AIRPTO.
GET SFLIGHT.
WRITE:/ u2019 SFLIGHT: u2019, SFLIGHT-CARRID, SFLIGHT-CONNID, SFLIGHT-FLDATE.
GET SBOOK.
WRITE:/ u2019 SBOOK: u2019, SBOOK-CARRID, SBOOK-CONNID,
SBOOK-FLDATE, SBOOK-BOOKID.
GET SFLIGHT LATE.
WRITE:/ u2019 GET SFLIGHT LATE: u2019, SFLIGHT-FLDATE.
Similar Messages
-
LIST LDB'S CONCERNED TO THE DIFFERNENT PARTS OF HR MODULE LIKE PP,PA,OM ,PLEASE
Hi Raghunandan,
SAP HR Transaction Codes
Master Data
PA10 - Personnel file
PA20 - Display HR Master Data
PA30 - Maintain HR Master Data
PA40 - Personnel Events
PA41 - Change Hiring Data
PA42 - Fast Data Entry for Events
PRMD - Maintain HR Master Data
PRMF - Travel Expenses : Feature TRVFD
PRML - Set Country Grouping via Popup
PRMM - Personnel Events
PRMO - Travel Expenses : Feature TRVCO
PRMP - Travel Expenses : Feature TRVPA
PRMS - Display HR Master Data
PRMT - Update Match code
PS03 - Info type Overview
PS04 - Individual Maintenance of Info types
Time Management
PA51 - Display Time Data
PA53 - Display Time Data
PA61 - Maintain Time Data
PA62 - List Entry of Additional Data
PA63 - Maintain Time Data
PA64 - Calendar Entry
PA70 - Fast Data Entry
PA71 - Fast Entry of Time Data
PBAB - Maintain Vacancy assignments
PT01 - Create Work Schedule
PT02 - Change Work Schedule
PT03 - Display Work Schedule
Payroll
PC00 - Run Payroll
PC10 - Payroll menu USA
PE00 - Starts Transactions PE01 PE02 PE03
PE01 - Schemas
PE02 - Calculation Rules
PE03 - Features
PE04 - Create functions and Operations
PE51 - HR form editor
PRCA - Payroll Calendar
PRCT - Current Settings
PRCU - Printing checks USA
PRD1 - Create DME
SM31 - Maintain Table
SM12 - Locked Secessions
TSTC - Table Look up
SPRO - IMG
SE16 - Data Browser (Table Reports)
PP03 - PD Tables
PPOM - Change Org Unit
PO13 - Maintain Positions
PO03 - Maintain Jobs
Benefits
PA85 - Benefits - Call RPLBEN11
PA86 - Benefits - Call RPLBEN07
PA87 - Benefits - Call RPLBEN09
PA89 - COBRA Administration
PA90 - Benefits Enrollment
PA91 - Benefits - Forms
PA92 - Benefits Tables - Maintain
PA93 - Benefits Tables - Display
PA94 - Benefits - Access Reporting Tree
PA95 - Benefits IMG - Jump to Views
PA96 - Benefits reporting
PA97 - Salary Administration - Matrix
PA98 - Salary Administration
PA99 - Compensation Admin - rel. Changes
PACP - HR-CH : Pension fund, interface
General Reporting
PM00 - Menu for HR Reports
PM01 - Dialogs in HR - Create Custom info types
PRFO - Standard Form
PSVT - Dynamic Tools Menu
PAR1 - Flexible Employee Data
PAR2 - Employee List
Organizational Management
PPOM - Change org Unit
PO03 - Maintain Jobs
P013 - Maintain Position
PO10 - Maintain Organizational Unit
PP01 - Maintain Plan Data (menu-guided)
PP02 - Maintain Plan Data (Open)
PP03 - Maintain Plan Data (Event-guided)
PP05 - Number Ranges
PP06 - Number Ranges Maintenance HR Data
PP07 - Tasks/Descriptions
PP69 - Choose Text for Organizational Unit
PP90 - Setup Organization
PP01 - Change Cost Center Assignment
PP02 - Display Cost Center Assignment
PP03 - Change Reporting Structure
PP04 - Display Reporting Structure
PP05 - Change Object indicators (O/S)
PP06 - Change Object indicators OS
PPOA - Display Menu Interface (with dyn.)
PPOC - Create Organizational Unit
PPOM - Maintain Organizational Plan
PPOS - Display Organizational Plan
PQ01 - Events for Work Center
PQ02 - Events for Training Program
PQ03 - Events for Job
PQ04 - Events for Business Event Type
PQ06 - Local Events
PQ07 - Resource Events
PQ08 - Events for External Person
PQ09 - Events for Business Event Group
PQ10 - Events for Organizational Unit
PQ11 - Events for Qualification
PQ12 - Resource Type Events
PQ13 - Events for Position
PQ14 - Events for Task
PQ15 - Events for Company
PSO5 - PD : Administration Tool
PSOA - Work Center Reporting
PSOC - Job Reporting
PSOG - Org Mgmt General Reporting
PSO1 - Tools Integration PA-PD
PSOO - Organizational Unit Reporting
PSOS - Position Reporting
PSOT - Task Reporting
Recruitment
PB10 - Initial Entry of applicant master data
PB20 - Display applicant master data
PB30 - Maintain applicant master data
PB40 - Applicant events
PB50 - Display applicant actions
PB60 - Maintain Applicant Actions
PB80 - Evaluate Vacancies
PBA0 - Evaluate Advertisements
PBA1 - Applicant Index
PBA2 - List of applications
PBA3 - Applicant vacancy assignment list
PBA4 - Receipt of application
Infotype tabes :0000,0001,0002,0006,0007,4000,40001,40002 etc
DB Tables :PA0000,PA0001,PA0006,PA0007 etc
****Reward points if found useful
Regards,
Naresh -
Getting results from LDB (Logical Database)
Hi All,
I have a requirement where i need to pass LDB results to external application. It can be any LDB. Like in SE36 we put the LDB name and execute and final results are shown in ALV. I dont need it to display in ALV but from my custom program, need that output table which stores these results.
I tried using LDB_PROCESS but that need custom subroutine names to pass in that, i tried passing the same and results also came but thing is every logical database will have different tables in that, it'll be impossible to create those many subroutine to handle each and every table. So i need a generalized solution like se36 processes the data for any LDB.
Is anyone knows how can i achieve this?
Regards
Munish Garg
9041793217Hello
Generally any LDB will have a event which triggers the data to be populated in the tables/memory. Now these data retrieval is written in a sub-routine "Perform PUT_<eventnamt>". So any LDB will have the sub-routine named "PUT_<eventname>" in its main program. May be you can create the sub-routine name dynamically using this method.
Regards
Ranganath -
Want to have own selection screen in HR-ABAP report using LDB
Hi experts,
I am working on HR-ABAP report using LDB pnp and infotypes..But, here we get the built in selection criterion..but I want my own selection screen to be displayed..whats the solution for this??? Is it possible to create my own selection screen instead of default one..and how???
Please help me..its very urgent..Hi,
chk this out:
Create Report Categories
In this step, you define the report categories and determine the layout
of the standard selection screen for these report categories. You can
create report categories for programs or queries that are based on the
PNP or PNPCE logical databases.
The definition of report categories is divided into two sections:
o In the Change Report Category view, you define general attributes
such as sort order, input fields for date, and so on.
o In the Change Selection Criteria view, you define which selection
fields of the logical database should be avaliable on the selection
screen.
Example
You want to set up your system so that your employees can only start
evaluation reports for Payroll if they use a payroll area. Within a
payroll area, you should be able to select according to personnel
number. Additional selection criteria should not be possible and you
should not be allowed to enter a sort sequence.
Standard settings
The standard system already contains report categories. You can find the
attributes of the report categories in the table.
Note the following five report categories in particular:
o Report category ' ' is the SAP default report category for
programs that are based on the PNP logical database.
o Report category PNPCE is the SAP default category for programs that
are based on the PNPCE logical database.
o Report category '00000000' is the customer-specific default category
for programs that are based on the PNP logical database.
o Report category '0PNPCE' is the customer-specific default category
for programs that are based on the PNPCE logical database.
o Report category __X2001 is the default category for Queries that
are based on an InfoSet of the PNP LDB.
o Report category QUEPNPCE is the default category for queries that
are based on an InfoSet of the PNPCE LDB.
The default report categories are used when a report is called if
the report has not been assigned a report category.
Parameters and Options for Report Categories of the LDB PNP and PNPCE
Parameters and Options in Screen Area General Data
If you activate this parameter, you can only enter data on the data
selection period if you use reports that have been assigned. The
same date entries are then used for the person selection as for the
date selection.
o Matchcode allowed
If you activate this parameter, you have use of a Matchcode
pushbutton (search help) if you use reports that have been assigned.
This pushbutton enables you to perform the person selection.
o Sort allowed
If you activate this parameter, you have use of a Sort pushbutton if
you use report that have been assigned. This pushbutton enables you
to define a sort order before you execute the report.
o Organizational structure allowed
If you activate this parameter, you have use of an Org.Structure
pushbutton if you use reports that have been assigned. This
pushbutton enables you to perform the person selection.
Note:
For more information about these options, see the online
documentation under this path:
SAP Library -> Human Resources -> Reporting in Human Resources
Management -> Standard HR Reports -> Report Selection Screen in
Human Resources Management.
Parameters and Options in Screen Areas Data Selection Period/Person
Selection Period/Payroll Area/Period/Year
o Options for data selection period and person selection period (key
date and so on)
Here you define which options for date and person selection are
available for reports that have been assigned.
o Options for payroll area/period/year
Here you define which options for selection using payroll
area/period/year are available for reports that have been assigned.
Parameters and Options in Screen Area Selection View
o Type/Name
This parameter enables you to use selection views to define report
categories. You use the selection view selected here to determine
which fields are available in the Dynamic Selectionsy.
Note:
You create selection views for the PNP and PNPCE logical databases
in the Object Navigator (SE80):
1. Start the Object Navigator (SE80)
2. Choose Workbench -> Edit Object.
3. Choose the More... tab page and the Selection view on this tab
page.
4. Choose Create.
5. In the Create Selection View dialog box, choose the For any
tables option.
6. In the Name of view field, enter a name for your selection view.
7. In the Tables dialog box, enter the name of the table from which
you want to use fields.
Note:
When you enter the table name, observe the naming convention in
Personnel Administration:
Infotype number: nnnn -> table name: PAnnnn
8. Choose Continue.
9. In the Functional groups area, define functional groups by
assigning a name and a number.
10. Assign fields from the selected tables to the functional groups
by entering the number of the desired functional group in front of
each field.
11. Save your entries.
For more information about adjusting the dynamic selections using
your own selection views, see the online documentation under the
following menu path:
SAP Library -> Human Resources -> Reporting in Human Resources
Management -> HR Standard Reports -> Report Selection Screen in
Human Resources Management -> Enhancing the Selection Screen -
Dynamic Selections.
If you do not want to offer dynamic selections, make the following
settings:
- LDB PNP: In the Selection view field, enter PNP_NO_FREE_SEL.
- LDB PNPCE: Leave the Selection view field empty.
Parameters and Options in Screen Area Data Selection Period/Person
Selection Period/Payroll Area/Period/Year
o Available input parameters, date or period entry (today, key date,
all, and so on), and standard value.
Using the Standard value option, you define which of the selected
options is shown.
Parameters and Options in Screen Area CE Selection Fields
o CE selection fields (external person ID, grouping reason, grouping
value)
Using the options in this area, you define whether the external
person Id, grouping reason, or grouping value are available on the
selection screen.
Note:
These parameters are only relevant for you if you implement
Concurrent Employment (see also note 517071).
Parameters and Options in Screen Area Selection view
o Dynamic selections as dialog box
If this switch is set, you can call the dynamic selections as a
dialog box.
o Dynamic selections active
If this switch is set, the dynamic selections of the logical
database are active at the start of the report.
Note that the following combinations are possible for the last two
options mentioned:
Dyn.Sel. as dialog box/Dyn.Sel. active: inactive/inactive
Dyn.Sel. as dialog box/Dyn.Sel. active: inactive/active
Dyn.Sel. as dialog box/Dyn.Sel. active: active/inactive
Activities
1. Choose Edit -> New entries.
2. Enter an abbreviation and a long text for the report category.
The customer name range for report categories is 0-9.
3. Select the For the PNPCE logical database checkbox, if you want to
create a report category for a program or for queries of the PNPCE
logical database.
4. In the General Data screen area, choose the desired options.
If you want to use selection IDs, you must have first created and
grouped selection Ids. The IMG path to do this is given in the
parameter description section.
5. In the Data selection period/person selection period or Selection
period screen area, choose the desired options.
6. In the Selection view screen area, choose the desired options.
7. In the CE selection fields screen area, choose the desired (only
possible for report categories of the LDB PNPCE).
8. Save your entries.
9. Choose the subactivity Permitted selection criteria.
10. Choose Edit -> New entries.
11. In the Select option field, use the input help to select each field
that should be available on the selection screen.
12. Select the checkbox in the 1.page column, if you want this selection
field to be available directly when you call the selection screen.
Further notes
13. If you want to copy entries, you still have to enter the selection
parameters again in the subsequent screen.
o If you create the report category '000000000', a selection screen is
generated according to report category '00000000'for all reports for
which a report category has not explicitly been assigned.
Assign Report Categories
In this step, you assign a report category to your reports.
Example
You have created your own report, for example ZPCTEST1, and would like
it to have the selection screen that corresponds to that of the
evaluation report for Payroll, which is assigned to report category
'__M00001'.
Assign report category '__M00001' to the report.
Requirements
You must have defined the Report Categories.
Standard settings
SAP Standard Reports:
In the standard system, reports are assigned a report category. If you
want to override these assignments, perform the activities described
here. If you want to assign report categories to standard reports using
SE38, this represents a modification.
Customer-Specific Reports:
For reports you have developed yourself, you can either assign report
categories by performing the activities described here or directly in SE38.
Recommendation
Only assign a report category if you have created your own reports or if
the selection screens in the standard system do not meet your
requirements.
Activities
1. Choose Edit -> New entries.
2. Perform the required assignment using the Program name and Report
category fields.
3. Save your entries.
reward if helpful
regards,
madhumitha -
Selection screen versions in LdB
The following questions are related to SAP delivered LdBs that are not for HR.
a) Do you know where the selection screen versions for a delivered LdB are stored?
b) Can additional selection versions be created /delivered selection screen versions modified? Or the authorization for doing the changes is generally not provided.
Thank you much,
Fred.
Edited by: Fred Myer on Jan 30, 2008 11:16 PM
Guys, any help?Hi,
Try declaring some global variable in the data delclaration event, and pass the values these variable at selection screen, and use them wherever required.
Regards,
Santhosh. -
Can I use LDB in a WDA !?
Can I use LDB in a WDA !?
Just like we do in a HR ABAP program with PNP or PCH .
and get the infotype data with Get PERNR .
If the LDB doesn't work in WDA again,
Is there any other special tools in WDA for HR develop !?!?!?
Thanks a lot.Hi Wang,
Here in my project what we are doing to read the infotype is see the code whcih will give clear idea.
Here in my example i am reading the infortype 221.
<b>Code:</b>
method GET_221_DATA .
This method gets the 0221 data by calling the model component.
The dataset retrieved is then mapped to the Do_Not_Change node.
DATA:
lt_infotype_datasets TYPE /kyk/s_paitf_dataset_tab,
lv_temp TYPE string. " to hold the fieldname in a string type
DATA lo_nd_node_it0221structure TYPE REF TO if_wd_context_node.
DATA lo_el_node_it0221structure TYPE REF TO if_wd_context_element.
DATA ls_node_it0221structure TYPE wd_this->element_node_it0221structure.
declarations for 0221 data
DATA:
ls_infotype_dataset TYPE /kyk/s_paitf_dataset,
it_ui_structure TYPE /kyk/t_dataset_uistructure,
wa_ui_structure TYPE /kyk/s_dataset_uistructure,
wa_field_structure TYPE /kyk/s_value_of_field,
wa_field_structure1 TYPE /kyk/s_value_of_field,
it_field_structure TYPE /kyk/t_value_of_field.
DATA:
l_ref_interfacecontroller TYPE REF TO /kyk/iwci_c_pa_model,
l_componentinterface TYPE REF TO if_wd_component_usage.
l_componentinterface = wd_this->wd_cpuse_model( ).
IF l_componentinterface->has_active_component( ) IS INITIAL.
l_componentinterface->create_component( ).
ENDIF.
l_ref_interfacecontroller = wd_this->wd_cpifc_model( ).
ls_node_it0221structure-begda = '18000101'.
ls_node_it0221structure-endda = '99991231'.
ls_node_it0221structure-pernr = PERNR.
l_ref_interfacecontroller->readinfty(
EXPORTING
begda = ls_node_it0221structure-begda " Begda
endda = ls_node_it0221structure-endda " Endda
infty = '0221' " Infty
pernr = ls_node_it0221structure-pernr " Persno
subty = '*' " Subty
IMPORTING
patif_dataout = lt_infotype_datasets " /kyk/s_Paitf_Dataset_Tab
delete lt_infotype_datasets where subty ne 'YAWA' and subty ne 'YANA'.
navigate from <CONTEXT> to <NODE_IT0221STRUCTURE> via lead selection
lo_nd_node_it0221structure = wd_context->get_child_node( name = wd_this->wdctx_node_it0221structure ).
*--- first loop at infotype dataset
LOOP AT lt_infotype_datasets INTO ls_infotype_dataset.
it_ui_structure = ls_infotype_dataset-uifields.
lo_el_node_it0221structure = lo_nd_node_it0221structure->create_element( ).
lo_nd_node_it0221structure->bind_element( new_item = lo_el_node_it0221structure set_initial_elements
= abap_false ).
*---set lead selection
lo_nd_node_it0221structure->set_lead_selection( lo_el_node_it0221structure ).
**---second loop at uifieldstructure
LOOP AT it_ui_structure INTO wa_ui_structure where structurename eq 'HCMT_BSP_PA_CA_R0221'.
it_field_structure = wa_ui_structure-fieldvalues.
*--- Do not read if STATUS is not 'X'
READ TABLE it_field_structure WITH KEY fieldname = 'ADJRN' INTO wa_field_structure1.
IF wa_field_structure1-fieldvalue <> 'X'.
lo_nd_node_it0221structure->remove_element( lo_el_node_it0221structure ).
ELSE.
*---third loop at fieldstructure
LOOP AT it_field_structure INTO wa_field_structure.
Set all the general attribute values
lv_temp = wa_field_structure-fieldname.
CALL METHOD lo_el_node_it0221structure->set_attribute
EXPORTING
value = wa_field_structure-fieldvalue
name = lv_temp.
ENDLOOP.
ENDIF.
ENDLOOP.
ENDLOOP.
endmethod.
Warm Regards,
Vijay -
Can i make changes to standered ldb to z ldb.
Hi Friends ,
Presently iam working with sales tax register , inthe attributes section logical database is mentioned as BRF(document segmet) , the data is retrived according to document no ,and posting date .
now i need to retrive the data according to vendor wise , my doubt is, can i copy the logical database to z ldb and make changes to it , root node for this ldb is bosg . when i am trying to make changes inthe report it is not effecting in any wayz ,. please try to give me the solution , for retriving the data according to vendor wise. in the report the ldb is called by keyword get.Hi,
pardon - it is only spare information you gave.
A report is linked to a ldb by its properties.
Moreover you can use a ldb by function ldb_process.
Perhaps there is another way without changing the ldb.
First fill an internal table with data you need.
After that sort it and do your processing.
Separating I/O from processing is a good approach in general.
With kind regards
Walter Habich -
Hii All,
Any one pls send me some interview ques on LDBs??
Regards,
KavithaHi Kavitha,
pls find here some general ques for interview,
1. Preparation of the data records by the L.D.B and reading of the data records in the actual report are accomplished with the command pair Put and Get.
2. The three main elements of LDB are Structure, Selections, and Database Program.
3. In LDB what determines hierarchy of the tables?
Structure.
4. In general what are the two ways in which one can retrieve data from tables?
Using Select statements, Database Program.
5. With LDB one can modify the pre-generated selection screen to their needs (T/F).
Yes.
6. Logical databases are programs that read data from Database tables (Dictionary Structures).
7. The event Get<table name> LATE process all tables that are hierarchically superior to the <table name>. (True/False)
False. It processes all tables that are hierarchically inferior to the <table name>.
8. The Database Program of LDB is a collection of SUBROUTINES, which selects data and passes it to the report.
9. The layout of the Database program is determined by both Structure and Selections.
10. The order in which data is made available to the report depends on Structure of the LDB.
11. Apart from the structure and selections of the LDB the GET statements in the report determines the behavior of the database at runtime.
12. Node at the highest level in the structure is known as Root.
13. There can be more than one node at the highest level in the structure. (T/F)
False. One can define only one node at the highest level in the structure on LDB.
14. All nodes in the structure of LDB need not be defined in the ABAP/4 Dictionary (T/F).
False. One has to define all nodes in the Dictionary or one has to select all nodes that are defined in the Dictionary.
15. It is not possible to use ABAP/4 Dictionary Structures without an underlying database using LDB. (T/F)
True. One can use additionally related tables, along with the tables defined in the structure of LDB.
16. Dynamic selections allow the user to define further selections for database access in addition to the selection criteria already defined in the LDB selections.
17. Check statement can be used along with the event GET in the report for checking the selections, which are not table-specific values.
18. In sense of Database Management System (DBMS) LOGICAL DATABASE is a database Structure. (T/F).
False.
19. It is not necessary to maintain the Parent-Child relationship between the tables in Logical Database Structure. (T/F)
False. One has to maintain the Parent-Child relationship.
20. Is it possible to extract data from tables without using the event GET in the report with an appropriate LDB. (T/F).
False. One can extract data from tables using Select statements in a report, though the report is having a LDB attribute.
21. What sorts of tables one can se in designing the hierarchy of a LDB?
Tables, which are having Foreign Key relations.
22. A report program, which uses only SELECT statements, is called SQL Report.
23. One cannot use SELECT statements in a report program linked to a Logical Database (T/F). False.
24. Is it true that the Logical Database reads the data from the database tables using Select Statements (T/F).
Yes. We are coding that in Database part of LDB.
25. In a report with an LDB attribute, you do not have to define how the information should be retrieved from the database tables, but only how the data should be represented on the screen. (T/F).
True.
26. One can use the event GET in a report without LDB attribute. (T/F).
False.
27. The last character of the LDB name denotes Application.
28. The structure of Logical Databases reflects the Foreign Key dependencies of hierarchical tables in the SAP system.
29. It is mandatory that for each table in the LDB hierarchy there should exist one GET statement in the report. (T/F).
False. It is not necessary.
30. What happens if a report does not contain a GET statement for a particular node of a Logical Database.
Process will transfer to the next event.
31. In a Logical Database, one can define input fields on the selection screen with Select-Options and Parameters statements.
32. Suppose a logical database program contains the following lines:
SELECT-OPTIONS CONNID FOR SPFLI-CONNID.
PARAMETERS CARRID LIKE SFLIGHT-CARRID FOR TABLE SFLIGHT.
What will be the output, for the above two statements?
Only select-options connid for spfli-carrid will be displayed on the screen.
33. Consider a report with F1S attribute, what will be the output for the following code. Whether you will get the data from spfli and sflight or not, with corresponding tables statement,
GET SPFLI.
GET SFLIGHT.
Write:/ spfli-carrid, spfli-connid, sflight-fldate, sbook-bookid.
Yes, you will get the data from spfli and sflight.
34. Consider a report with F1S attribute, what will be the output of the following code. Whether you will get the data from sbook or not, with corresponding tables statement.
GET SPFLI.
GET SFLIGHT.
Write:/ spfli-carrid, spfli-connid, sflight-fldate, sbook-bookid.
You cannot extract data from sbook.
35. Identify any errors in the following code and correct the same, and what will be the output. If there exists corresponding tables statement, for spfli, sflight, sbook.
GET SPFLI.
GET SBOOK.
Write:/ spfli-carrid, spfli-connid, sflight-fldate, sbook-bookid, sbook-class.
No syntax errors. You will get data from all the three tables.
36. Does the following two statements do the same task? If so which one takes less time and which one is recommended.
Select * from spfli where spfli-carrid = LH and spfli-connid = 400.
Endselect.
Select * from spfli. Check: spfli-carrid = LH and spflid-connid = 400.
Endselect.
-Yes they will do the same task. Second Select statement takes less time and is recommended.
37. If you want to improve the response time (time to access data) Logical Databases permits you to achieve this using VIEWS.
38. Is there any upper limit (max) to the possible number of nodes in a logical database structure? If so what is the limit?
Yes, there is an upper limit for defining number of nodes in a Logical Database Structure.
Maximum nodes = 1200 / length where length = max. Length of name in the structure.
39. In the structure of Logical Database nodes at different levels are displayed in the same columns. (T/F) If false what types of nodes are displayed in the same columns. If true what type of nodes are not displayed in the same columns.
False. Nodes at same levels are displayed in the same columns.
40. What are the advantages of Logical Databases?
It offers an easy-to-use selection screens. You can modify the pre-generated selection screen to your needs. It offers check functions to check whether user input is complete, correct, and plausible. It offers reasonable data selections. It contains central authorization checks for data base accesses. Enhancements such as improved performance immediately apply to all report programs that use the logical database.
41. Though all the ABAP/4 Dictionary Structures that exists in the structure of the LDB, being defined in Database Program, we are defining the Dictionary Structures in the Report. What is the reason for such declaration?
By declaring so we are providing work areas for data passing between Logical Database and Report. In addition, the logical database configures the selection screen depending on the selection of database tables.
42. Is it mandatory to declare all the tables in Report by the key word tables for all the tables that exist in the structure of LDB, and are being defined in the Database part of LDB.
No, It is not mandatory to declare all tables in report.
<b>
Rewards points if useful</b>
rgrds
shazia -
LDB PNP authorization check authorization object
Hi,
I have used LDB PNP for HR reports.
We are using the authority check also, but the problem is all the records/data for all the people is being read by the report where some of the people data should not have been read as they belong to some other personal area that the role of the executer (user).
Hence it appears that authorization check is not working properly.
Following is how I am using it, Please suggest corrections or alternate way to correct this issue.
rp-provide-from-last p0002 space gwa_outlist-begda
gwa_outlist-begda.
IF pnp-sw-found NE '1' OR
pnp-sw-auth-skipped-record EQ '1'.
EXIT.
ELSE.
ls_tab-vorna = p0002-vorna.
ls_tab-nachn = p0002-nachn.
ENDIF.
Please reply with the corrections ore alterations,
Thanks in advance.
Akash.Hi,
(1)
Actually, if you're wirting report with PNP LDB, you do NOT need to do this hard-coded auth checking at all. Because the LDB abap code behind PNP has already do this job for you.
So all you need to do is to ask you HR consultant or Basis consultant to modify the authority config of certain ROLE with t-code PFCG, and then assign that ROLE to certain user with t-code SU01.
ABAP code behind PNP will automatically verify the current user according to his ROLE setting.
(2)
In some case you do not work with LDB report, then you need to do the authority check by yourself. General function AUTHORITY_CHECK is what you need. AUTHORITY_CHECK do the authority check by means of Authority Object.Belows are authority objects used in HR module(you can also see in PFCG if technial name switched on):
P_ORGIN HR: Master Data
PLOG Personnel Planning
P_PCLX HR: Clusters
P_TCODE HR: Transaction codes
Sample of checking personal area:
CALL FUNCTION 'AUTHORITY_CHECK'
EXPORTING
FIELD1 = ' PERSA'
OBJECT = 'P_ORGIN'
USER = 'SAPSUPPORT1'
VALUE1 = 'Z001'
EXCEPTIONS
USER_DONT_EXIST = 1
USER_IS_AUTHORIZED = 2
USER_NOT_AUTHORIZED = 3
USER_IS_LOCKED = 4
OTHERS = 5.
IF SY-SUBRC NE 2.
MESSAGE E001(01) RAISING AUTH_FAILED.
ENDIF.
Reward if helpful pls! -
LDB PNP authorization check at record level - rp_provide_from_last
hi,
i am using LDB PNP,
I am using macro 'rp-provide-from-last' .
I neeed to place a authorization check so that the user of the program should only be allowed to view records of the people which comes under the same personnel area as of the user of the program.
Can you please guide me on how to implement this?
thanks in advance,
akash.Hi,
(1)
Actually, if you're wirting report with PNP LDB, you do NOT need to do this hard-coded auth checking at all. Because the LDB abap code behind PNP has already do this job for you.
So all you need to do is to ask you HR consultant or Basis consultant to modify the authority config of certain ROLE with t-code PFCG, and then assign that ROLE to certain user with t-code SU01.
ABAP code behind PNP will automatically verify the current user according to his ROLE setting.
(2)
In some case you do not work with LDB report, then you need to do the authority check by yourself. General function AUTHORITY_CHECK is what you need. AUTHORITY_CHECK do the authority check by means of Authority Object.Belows are authority objects used in HR module(you can also see in PFCG if technial name switched on):
P_ORGIN HR: Master Data
PLOG Personnel Planning
P_PCLX HR: Clusters
P_TCODE HR: Transaction codes
Sample of checking personal area:
CALL FUNCTION 'AUTHORITY_CHECK'
EXPORTING
FIELD1 = ' PERSA'
OBJECT = 'P_ORGIN'
USER = 'SAPSUPPORT1'
VALUE1 = 'Z001'
EXCEPTIONS
USER_DONT_EXIST = 1
USER_IS_AUTHORIZED = 2
USER_NOT_AUTHORIZED = 3
USER_IS_LOCKED = 4
OTHERS = 5.
IF SY-SUBRC NE 2.
MESSAGE E001(01) RAISING AUTH_FAILED.
ENDIF.
Reward if helpful pls! -
SDF LDB doesnt pick up documents posted in specific ledger
Hello,
I have created a new G/L account 999998 in Q43/700 system and enabled 'Clearing specific to ledger groups'. I created a new ledger C2 and assigned it to the ledger group C2. I have also made a posting to this new G/L account. The table FAGLBSIS contains the entries of the posted document 8900000002/cl99/2009. When I execute the program RFCLLIB02 (general ledger for Chile and peru) with the ledger as C2 in the selection screen, the document is not picked up. The event GET BKPF doesn't pick up this document. I am using SDF as the LDB. I am not sure why the document is not picked up? Have I missed any setting? Please help !
Best Regards,
Vittalkesari GI got the root cause behind this problem. The SDF LDB cannot pick up the documents posted in specific non-leading ledger.
The ledger selection of the SDF refers to the balances which can be displayed by the logical database.
Therefore the ledger restriction is also stored in the area of the selection screen for the balances.
Also the SDF only works from a document side for accounts which are u2018line itemu2019 or u2018open itemu2019 managed. -
Can i use select statements in LDB
Hai All,
Can i use select statements and internal table in a LDB program.
my requirement is that if i enter company code , fiscal year and reporting periods.
generally fiscal year will be jan to dec.but in my requirement the fiscal year is apr of previous year to march of currentyear.
so as i require the last years data can iuse select statement in that ldb program or is there any solution for this.
Thanks in Advance
kiranHi Kiran,
To retrive records from ldb you have to use the
GET <node> statement. This will invoke the selection screen of the node. An alternate solution is to use the function module LDB_PROCESS.
Please see the following link for help and example
http://help.sap.com/saphelp_nw04/helpdata/en/64/237f8cd43711d1950b0000e8353423/content.htm
Thanks
Vinod -
I have been writing ABAP for some time. Now I have been asked to write technical specs fro my offshore team. I have a dilemma, to retrive data from PNP and PCH, should I recommend them to use it or should I ask for a FM approach. Which one is right?
I know both of them will get data out and with LDB we get standard screen and authorization but if performance is concerned which option is better. If it depends on volume of data, roughly what is that volume.
Can someone also help me writing tech specs. I came across very bad stuff when I was coding. Just want to know what are the important stuff that has to be there in specs so that an advanced user as well as a developer can understand.
Thanks all for your time
AbaperECC 6.0 is an Unicode compliant system.So, you might get warnings while using Macros but thats ok as SAP has not come up with an alternatives for that.
We can do those things by putting lots of Select statements there. But I will prefer to go with LDB as this will take care of lots of stuffs, like validation, screens & data extraction.
Its not the payroll data but we can extract general Employee data also with the help of LDB PNP (Get PERNR).
SAP has come up with PNPCE to extend the functions of PNP and make it more useful with current scenarios. You can get more information in SE36->Documentation.
Regards,
Amit -
Generally when creating a Word file from either a Mac or Win7 pc and opening it on two different machines (either one first) it always prompts that the file is open and will be opened as read only.
However opening a CSS file does not prompt that it is already open on or from any machine which is causing code edits to be lost.
What we found from out testing:
- The file can be saved from one user to the server and WILL NOT PROMPT on other machines until the saving machine has the Dreamweaver program closed completely
- The file can be closed and Dreamweaver minimised to the launch bar but it still will not register on other machines that it has been changed.
- Also, until the Dreamweaver program is closed on the machines, it will continue to open it's saved version of the file.
Example Scenario:
- User 1 opens test.css (which is 2000 lines) and adds some code to the end of the file to bring it up to 2500 lines
- Meanwhile User 2 opens test.css as well (opens as 2000 lines as User 1’s edits have not yet been saved) and adds in code to bring it to 2300 lines
- User 1 saves his file and closes it - but Dreamweaver is still open.
- User 2 also saves his file and leaves Dreamweaver open.
- The server will report the size and last edit of the file the same as User 2 as he was the last person to save it (and if you open from the Win7 Machine it will show as User 2’s 2300 line version)
- If User 1 then open's the file again (from either the 'recent' in Dreamweaver OR clicking on the file directly in Finder...which version opens.... The version that User 1 saved! Not the true version on the server, but the version that User 1 edited and saved with 2500 lines in it.
- Same for User 2, he will open 'his' version with 2300 lines in.
Other information:
- Files are opened directly from the server
- Sometimes the users will save incrementally and re-open
- Most of the time users will save incrementally and keep the files open
- The users will never not save incrementally and just save when closing the file once finished
- The users are usually working on the files all day
- It is always the bottom lines of code that are lost. It could be a case of the two versions being mixed up and cutting off the newly added lines based on the line count (possibly).
It is as if Dreamweaver is holding a cache of the version locally and then only properly looking back to the server when it has been completely closed. It is very difficult to see how the server is causing such an impact on these files, there are very few logs which are giving any indication to the root cause of the problems.
Anyone know if this is a known issue?
Is there a way that there can be a featured implemented on the server that doesn't allow another user to open a file if it is already open on another machine?
ThanksYour server file handling has nothing, and really nothing to do with Adobe software. If files don't get locked for (over-)writing and/or lose connection to the program opening them, then your server is misconfigured. It's as plain and simple and that. Anything from "known file types"/ file associations not being set correctly, MIME types being botched, crooked user privileges and file permissions, missing Mac server extensions, delayed file writing on the server, generic network timeout issues and what have you. Either way, you have written a longwinded post with no real value since you haven't bothered to provide any proper technical info, most notably about the alleged server. Either way, the only way you can "fix" it is by straightening out your server and network configuration, not some magic switch in Adobe's software.
Mylenium -
At home I have a HP PC, netbook and Sony laptop with no connection issues. Last year I bought an iPad 1 for my wife. This year I bought an iPad 2 for myself. However, only one iPad can connect to the wifi home network at a time. If I am using the iPad2 then the iPad1 fails to connect to the internet. if the iPad1 is being used then the iPad2 cannot connect. I tried resetting iPad network settings for both, reset router, and updated both iPads to latest software/firmware yesterday. Right now the only iPad that shows any connection is the iPad1. The iPad2 does not see the home network or any other outside network. Any suggestions or ideas on how to resolve this? It is odd the network issues only affect the iPad's.
@dananova,
It sounds like you need to either increase the number of dynamic IP addresses your router will hand out or change some of your devices to static IP addresses.
Check the router manual on how to change the dynamic IP range of your router. If you don't have a manual, you can go to Belkin's website and download it.
To change the IP address of your iPads to static addresses, go to Settings > Wi-Fi and tap the ">" next to the name of your wireless network. DHCP should be highlighted. Write down the all the settings on the screen. Next tap the Static button. Enter the exact same information that you copied from the DHCP screen with the exception of the last 3 digits of the IP address. Enter a new 3 digit number in this spot. Generally the original IP address will end with a low number such as 009, so pick a number that is not that low but less than 255. I would suggest a range of 240 to 250, unless the original IP range falls near this range. Also make sure you use a different 3 digits for each device you set to use a static IP address.
Maybe you are looking for
-
Open in Tabs always replaces all other open tabs ?
This is unacceptable. Suppose I have 5 open tabs and then I pres Open in Tabs (this command is available on the Toolbar when I create collections) This will close down all the 5 open tabs and replace them with the tabs in the folder!! I want to keep
-
Setting up Time Capsule for backup only on existing wireless network
I have a wireless network already set up with a NetGear wireless router. Cable plugs into router, router connected via ethernet cable to my Power Mac G5 desktop, plus 2 PC laptops in the house also connect wirelessly to the home network via this rout
-
No thumbnails for some .mov files Bridge CS5
I'm using Bridge CS5 to organise some video which has been digitised from a sony camera in File Maker Pro X. My operating system is Mac OS X. I have Quicktime player 10.1 and have just checked for updates. Some of my .mov files show thumbnails which
-
My macbook storage has almost been eaten up & has been slowed down considerably due to this problem.
-
Problem in Loading - Invalid Report File Path
Post Author: a_Mohammad CA Forum: .NET Im using CR which came as a bundle with VS2005. I deployed my ASP.NET project on online server. Sometimes, When users try to load the reports, they got an error says "Invalid Report File Path" appears at the top