Logical Database (PNPCE) , selection screen hide.
Hi Gurus,
i have couple of questions related to logical database pnpce.
1.Since i know logical database has there own selection screen , my requirement is i want to add my custom fields to the selection screen other than what is provided is it possible or not.
2. i want to hide the selection screen of the logical database, but i do want to create my own in which i will be declaring some select options of the standard logical database screen has, like pernr, organisation unit, etc, how do i communicate the entered data with the logical database if i dont use the logical database standard selection screen, hope i could able to explain my problem, please see into my problem and let me know thanks in advance,
hussaini
Hussain,
LDB have standard selection screens, if at all you want to customize those standard selection screen you would have to define a report category for your program. You`ll have to configure in the spro settings for your corresponding report category.
If you would like to declare your own selection criteria, you can very well do it and these criteria are visible below the standard selection criteria. You can process these elements in your program and not in the LDB standard program. Use the normal selection screen events in your program for processing your selection criteria.
Hope this info is helpful, reward points if convinced.
Regards
Similar Messages
-
FBL5N - Logical databases - Dyanamic selection screen fields
I am trying to insert "Profit center" from BSEG table of Logical database DDF into the dynamic selection screen of FBL5N.
Procedure I followed:
Program -> Attributes -> Logical database -> Extras -> Selection views.
Interestingly when I add "Profit center" from BSID table instead of BSEG, it appears on dynamic selection screen. But this is not working for BSEG. I have no clue why this is so? If someone can help me in this regard, that would be great.
P.S: I can not insert Profit center from BSID table as BSEG contains profit center values and BSID is not storing the same info.Rob,
Below is the BSEG contents:
Company code Document Number Customer Profit Center
1000 1800001111 0000100006
1000 1800001111 0000000401
BSID contents:
Company code Customer Document Number Profit Center
1000 0000100006 1800001111
As BSID stores customer info, I believe only line item that has customer info is stored here.
I guess, that is the reason.
I will try the option told by prev post. Will keep you guys posted.
Thanks,
Phani -
How to use a logical database's selection screen elements
Hi all,
I have used the logical db, pnp, in my report, however when I want to select data about a personel , ie. her name surname plans-positions, how will I join the two tables pa0001 and logical db? and the table t528t - text for plans?
Thanks.Hi Deniz,
First of all give Logical database PNP in program attributes(Goto->Attributes).
In program write the following code.
Infotypes : 0000,
0001.
start-of-selection.
get pernr.
rp-provide-from-last p0000 space pn-begda pn-endda.
if pnp-sw-found = '1'.
w_itab-pernr = p0001-pernr.
else.
reject.
endif.
rp-provide-from-last p0001 space pn-begda pn-endda.
if pnp-sw-found = '1'.
w_itab-vorna = p0001-plans.--->position
else.
reject.
endif.
rp-provide-from-last p0002 space pn-begda pn-endda.
if pnp-sw-found = '1'.
w_itab-vorna = p0002-vorna. -
>first name
w_itab-nachn = p0001-nachn.--->last name
else.
reject.
endif.
append w_itab to t_itab.
end-of-selection.
Dont forget to reward points if found useful.
Thanks,
Satyesh -
How to pass a default value in selection screen of logical database pnpce
Dear All,
Can any one tell me how to pass a default value in selection screen of logical database pnpce .
Regards
Rakesh SinghHi Rakesh,
Go to SE36 (logical database Builder).First enter PNPCE in Logical Database and press documentation,here you will get the details of exactly what is PNPCE and how it works.After that select selections in subojects in se36 only and enter display ,there you have the include from where you acn get the idea.
Regards,
Rahul -
How to display selection screen of logical database on a screen
Hi Experts,
I create a screen 100, how do I display a selection screen of logical database on this screen.
Thanks!
Anthonyhi
if u are making HR report then goto attribute -> Logical database -> write PNPCE to create in build selection scree.
regards,
Abhilash -
How to extend dynamic selection for Logical Database PNPCE
Hi All,
I need to extend dynamic selection for Logical Database PNPCE. Can someone able to help with steps?
Thanks
RanjithHi All,
I need to extend dynamic selection for Logical Database PNPCE. Can someone able to help with steps?
Thanks
Ranjith -
Logical Database PNPCE and inherited Sub Area
Hi,
I have asked this in the HR forum but no response......
I have a report using Logical Database PNPCE to find some values from a couple of info types. When I select a unit (from the 'OrgStructure' button at the top of the screen), say 111, and all its sub-units with no selections in the selection screen, I get one person displayed. This is correct and this person is in a sub-unit 3 levels down (unit 333).
I then added a selection to only display people in units with Personnel SubArea 'OTEC'. Now I get no results output. When I look in PPOME, I can see that unit 333 has Personnel SubArea 'OTEC' but it is inherited from '111'.
In PP01, unit 111 has an Account Assignment entry (Info Type 1008) but 333 does not.
Does anyone know how to report on this?
Is there a flag somewhere that tells the LDB to check for inherited units?
If not, any ideas if there is a function out there to find the superior unit for these sub-units?
Thanks.Thanks,
I am aware of that FM but how do I find the parent unit in a clever fashion?
The structure could have multiple levels e.g.
Unit 1 - Unit 2a - Unit3a......
- Unit 2b
- Unit 2c
Unit 1 is the parent and all the below units inherit from it.
The LDB is looping through an internal table with a list of the units. It finds Unit 1 but not the rest.
So, when the LDB is looking for Unit 3a, how does it know that Unit 1 is the parent?
If I use that FM, I think I would have to look for all units above it and see if there is an Info Type 1008 exists. Seems like a lot of processing for something that should be simple?
Kroc. -
HR Reporing Payroll using Logical Database PNPCE
Hi ALL
Can any body explain me how can we do HR Payroll reporing using logical database PNPCE.
In the program attibutes as mentioned we need to scee 900 for payroll reporting, but when I use PNPCE I cant see that screen in the Dropdown.
can any body help me with this.
regards
AJcheck this program..
REPORT ZHR_PAYROLL_EX1
MESSAGE-ID ZZ
LINE-SIZE 132
LINE-COUNT 64(2)
NO STANDARD PAGE HEADING .
T A B L E S *
TABLES : PA0001 , "Infotype 0001
PCL1, "HR Cluster 1
PCL2, "HR Cluster 2
T549A, "Payroll Accounting Areas
T549Q. "Payroll Periods
I N C L U D E S *
*--Standard Include for US Payroll
INCLUDE RPC2RUU0. "Cluster RD data definition
INCLUDE RPC2CD00. "Cluster CD Data-Definition
INCLUDE RPC2CA00. "Cluster CA Data-Definition
INCLUDE RPC2RX00. "Cluster RF data definition internat. part
INCLUDE RPPPXD00. "Data definition buffer PCL1/PCL2
INCLUDE RPPPXD10. "Common part buffer PCL1/PCL2
INCLUDE RPPPXM00. "Buffer handling routine
INTERNAL TABLES
*Internal Table to Hold data from PA0001
DATA : BEGIN OF I_0001 OCCURS 0,
PERNR LIKE PA0001-PERNR, "Personnel Number
END OF I_0001.
*Internal Table to Hold data from PA0001
DATA : BEGIN OF I_FINAL OCCURS 0,
PERNR LIKE PA0001-PERNR, "Personnel Number
GAMNT LIKE PC207-BETRG, "Gross Amount
NTAMT LIKE PC207-BETRG, "Net Amount
PAYDT LIKE PC261-PAYDT, "Pay Date
RUNDT LIKE PC261-RUNDT, "Run Date
VORNA LIKE PA0002-VORNA, "First Name
NACHN LIKE PA0002-NACHN, "Last Name
END OF I_FINAL.
*Internal Table to Hold data from PA0002
DATA : BEGIN OF I_0002 OCCURS 0,
PERNR LIKE PA0002-PERNR, "Personnel Number
VORNA LIKE PA0002-VORNA, "First Name
NACHN LIKE PA0002-NACHN, "Last Name
END OF I_0002.
Control record type
TYPES : BEGIN OF T_T569V,
ABKRS LIKE T569V-ABKRS, "Personnel Area
PABRJ LIKE T569V-PABRJ, "Accounting year
PABRP LIKE T569V-PABRP, "Accounting period
STATE LIKE T569V-STATE, "Status of Control Record
ADRUN LIKE T569V-ADRUN, "HR: Special payroll run
END OF T_T569V.
STRUCTURES
DATA : WA_T569V TYPE T_T569V. " Work area for t569v
DATA
DATA : V_PABRJ LIKE T569V-PABRJ, "Accounting year
V_PABRP LIKE T569V-PABRP, "Accounting period
V_BEGDA LIKE SY-DATUM, "Begin Date
V_ENDDA LIKE SY-DATUM, "End Date
V_FPPER(6) TYPE C, "For Period
V_SEQNR LIKE PC261-SEQNR. "Sequence Number
SELECTION SCREEN
Selectio Screen Block for Employee Selection.
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
SELECT-OPTIONS : S_PERNR FOR PA0001-PERNR, "Pernr
S_DATE FOR SY-DATUM. "Date
SELECTION-SCREEN END OF BLOCK B1.
START-OF-SELECTION
START-OF-SELECTION.
*Get Data from pa0001
PERFORM GET_DATA_FROM_0001.
*Get Data from pa0001
PERFORM GET_DATA_FROM_0002.
*Get CHAD Details
PERFORM GET_PAYDATA.
END-OF-SELECTION
END-OF-SELECTION.
IF NOT I_FINAL[] IS INITIAL.
*Print the Final Report.
PERFORM PRINT_REPORT.
ENDIF.
T O P O F P A G E
TOP-OF-PAGE.
Display Header
PERFORM DISPLAY_HEADER.
S U B - R O U T I N E S
*& Form get_data_from_0001
Get Data from 0001
FORM GET_DATA_FROM_0001.
SELECT PERNR "Personnel Number
FROM PA0001
INTO TABLE I_0001
WHERE PERNR IN S_PERNR AND
ENDDA >= S_DATE-LOW AND
BEGDA <= S_DATE-HIGH .
IF SY-SUBRC = 0.
SORT I_0001 BY PERNR.
ENDIF.
ENDFORM. " get_data_from_0001
*& Form get_data_from_0002
Get Data from 0002
FORM GET_DATA_FROM_0002.
SELECT PERNR "Personnel Number
VORNA
NACHN
FROM PA0002
INTO TABLE I_0002
WHERE PERNR IN S_PERNR AND
ENDDA >= S_DATE-LOW AND
BEGDA <= S_DATE-HIGH .
IF SY-SUBRC = 0.
SORT I_0002 BY PERNR.
ENDIF.
ENDFORM. " get_data_from_0002
*& Form populate_chad_coinage_table
text
FORM GET_PAYDATA.
LOOP AT I_0001.
READ TABLE I_0002 WITH KEY PERNR = I_0001-PERNR BINARY SEARCH.
IF SY-SUBRC = 0.
I_FINAL-VORNA = I_0002-VORNA.
I_FINAL-NACHN = I_0002-NACHN.
ENDIF.
Read Result Directory for Payroll Results for a Employee.
PERFORM CU_READ_RGDIR.
Get Sequence Number & Associated Payroll Results.
PERFORM GET_PAYROLL_RESULTS.
ENDLOOP.
ENDFORM. " get_paydata
*& Form cu_read_rgdir
Reag rgdir to get the results with conty grouping 'TD'
FORM CU_READ_RGDIR.
DATA : V_MOLGA LIKE T500L-MOLGA ."Country Grouping
*Call function module to get Results
CALL FUNCTION 'CU_READ_RGDIR'
EXPORTING
PERSNR = I_0001-PERNR
IMPORTING
MOLGA = V_MOLGA
TABLES
IN_RGDIR = RGDIR
EXCEPTIONS
NO_RECORD_FOUND = 1
OTHERS = 2.
SORT RGDIR BY SEQNR.
ENDFORM. " cu_read_rgdir
*& Form get_payroll_results
Get Sequence number
FORM GET_PAYROLL_RESULTS.
LOOP AT RGDIR WHERE SRTZA = 'A' AND
VOID IS INITIAL AND
REVERSAL IS INITIAL AND
OUTOFSEQ IS INITIAL AND
PAYDT IN S_DATE.
V_SEQNR = RGDIR-SEQNR.
*-- Macro Call for Germany
RP-INIT-BUFFER.
RX-KEY-PERNR = I_0001-PERNR.
RX-KEY-SEQNO = V_SEQNR.
RP-IMP-C2-RU.
LOOP AT RT WHERE LGART = '/559'.
I_FINAL-PERNR = I_0001-PERNR.
I_FINAL-GAMNT = RT-BETRG.
I_FINAL-PAYDT = RGDIR-PAYDT.
I_FINAL-RUNDT = RGDIR-RUNDT.
APPEND I_FINAL.
CLEAR I_FINAL.
ENDLOOP.
ENDLOOP.
ENDFORM. "get_payroll_results
*& Form display_header
Display Header
FORM DISPLAY_HEADER .
FORMAT COLOR 1.
ULINE.
WRITE:/1 SY-VLINE,
(15) 'Empl Number',
SY-VLINE,
(20) 'First Name',
SY-VLINE,
(20) 'Last Name',
SY-VLINE,
(15) 'Pay Date',
SY-VLINE,
(15) 'Run Date',
SY-VLINE,
(25) 'Gross Amount',
132 SY-VLINE.
ULINE.
FORMAT COLOR OFF.
ENDFORM. " display_header
*& Form print_report
Display Report
FORM PRINT_REPORT .
LOOP AT I_FINAL.
WRITE:/1 SY-VLINE,
(15) I_FINAL-PERNR,
SY-VLINE,
(20) I_FINAL-VORNA,
SY-VLINE,
(20) I_FINAL-NACHN,
SY-VLINE,
(15) I_FINAL-PAYDT,
SY-VLINE,
(15) I_FINAL-RUNDT,
SY-VLINE,
(25) I_FINAL-GAMNT,
132 SY-VLINE.
ULINE.
ENDLOOP.
SKIP 2.
WRITE:/1 'Period Begin Date:',(25) V_BEGDA.
WRITE:/1 'Period End Date:',(25) V_ENDDA.
ENDFORM. " print_report -
Hi, I have problem in using logical database pnpce.
When using the logical database pnpce, it already has it's own default selection screen.
The default for the upper block of the selection screen(payroll period) is:
reporting period: today
What do i have to do if i want to set the default selection screen into
period: current payroll period
Many thanks.Hi ,
You can get selection-options by pressing F1 then technical attributes .
Then in AT SELECTION-SCREEN OUTPUT event you write the following code ---
AT SELECTION-SCREEN OUTPUT / INITIALIZATION.
select_option_name-sign = 'I'.
select_option_name-sign = 'EQ'.
select_option_name-sign = sy-datum.
append select_option_name .
Regards
Pinaki
Edited by: Pinaki Mukherjee on Feb 9, 2009 5:56 AM -
Regarding Logical database and select statement..
Hi
Experts.
i would like to know the diff b/w logical data base & select statement while using report.
wt is the use of logical databases in R/3. is there any advantage used in the reports.
Thanks & Regards..
Spandana.Dear Spandana,
Go through the below description of LDB. I hope you wil get a fair amount of idea.
SAP comes loaded with all the extras. Among the extras that are most helpful to IT managers are all the access routines needed to pull any business object that managers can think of out of SAP databases. However, SAP has not thought of everything where your particular applications are concerned. SAP organizes its standard database tables to service business units based on conventional business applications. Itu2019s likely your business requires something new, perhaps even something exotic. In that case, you will need to create a new database, using information from different places. Basically, you need a logical database. You need to create a virtual business data object repository consisting of a new kind of record or table that suits your purposes. In addition, the repository should be composed of information that is actually stored in a number of different locations, none of them necessarily logically associated with one another. Letu2019s take a closer look at creating logical databases.
A case for a logical database
Suppose my company manufactures widgets of the most obscure variety, and they are components of other widgets. I sell my widgets as raw material for the more sophisticated widgets built by others, but in some cases I actually partner with other manufacturers in creating yet another class of widget. Now, in my world, I consequently have customers who are also partners. I sell to them and I partner with them in manufacturing and distribution. Also, I need an application that uses both of these dual-use relationships.
Essentially, I have a customer database and a partner database. Neither contains records that are structured to contain the identifying particulars of the other. Thus, I need a hybrid database that gives me tables detailing these hybrid relationships. What can I do? I can go the long way around and write a new database, pulling information from both and creating new objects with a customized program that I write by hand. However, this process is cumbersome and contains maintenance issues. On the other hand, I can use SAPu2019s logical database facility, create my logical database in a couple of minutes, and have no maintenance issues at all.
Logical database structures
There are three defining entities in an SAP logical database. You must be clear on all three in order to create and use one.
u2022 Table structure: Your logical database includes data from specified tables in SAP. There is a hierarchy among these tables defined by their foreign keys (all known to SAP), and you are going to define a customized relationship between select tables. This structure is unique and must be defined and saved.
u2022 Data selection: You may not want or need every item in the referenced tables that contributes to your customized database. There is a selection screen that permits you to pick and choose.
u2022 Database access programming: Once youu2019ve defined your logical database, SAP will generate the access subroutines needed to pull the data in the way you want it pulled.
Creating your own logical database
ABAP/4 (Advanced Business Application Programming language, version 4) is the language created by SAP for implementation and customization of its R/3 system. ABAP/4 comes loaded with many predefined logical databases that can construct and table just about any conventional business objects you might need in any canned SAP application. However, you can also create your own logical databases to construct any custom objects you care to define, as your application requires in ABAP/4. Hereu2019s a step-by-step guide:
1. Call up transaction SLDB (or transaction SE36). The path you want is Tools | ABAP Workbench | Development | Programming Environment | Logical Databases. This screen is called Logical Database Builder.
2. Enter an appropriate name in the logical database name field. You have three options on this screen: Create, Display, and Change. Choose Create.
3. Youu2019ll be prompted for a short text description of your new logical database. Enter one. Youu2019ll then be prompted to specify a development class.
4. Now comes the fun part! You must specify a root node, or a parent table, as the basis of your logical database structure. You can now place subsequent tables under the root table as needed to assemble the data object you want. You can access this tree from this point forward, to add additional tables, by selecting that root node and following the path Edit | Node | Create. Once youu2019ve saved the structure you define in this step, the system will generate the programming necessary to access your logical database. The best part is you donu2019t have to write a single line of code.
Watch out!
The use of very large tables will degrade the performance of a logical database, so be aware of that trade-off. Remember that some tables in SAP are very complex, so they will be problematic in any user-defined logical database.
Declaring a logical database
Hereu2019s another surprising feature of logical databases: You do not assign them in your ABAP/4 Code. Instead, the system requires that you specify logical databases as attributes. So when you are creating a report, have your logical database identifier (the name you gave it) on hand when you are defining its attributes on the Program Attributes screen. The Attributes section of the screen (the lower half) will include a Logical database field, where you can declare your logical database.
Logical databases for increasing efficiency
Why else would you want to create a logical database? Consider that the logical databases already available to you begin with a root node and proceed downward from there. If the data object you wish to construct consists of items that are all below the root node, you can use an existing logical database program to extract the data, then trim away what you donu2019t want using SELECT statementsu2014or you can increase the speed of the logical database program considerably by redefining the logical database for your object and starting with a table down in the chain. Either way, youu2019ll eliminate a great deal of overhead.
Regards
Arindam -
Hi
I have created a custom OM infotype 9910 which will data with Object ID either 'O' (Org Unit) or S (Position) .
I am using Logical database PNPCE in my report. I have declared the infotype at the declaration part with infotypes 9910 statement
When the get peras event is triggered in program the table p9910 is not filled with values even though there is record in HRP9910 with Object ID 'S' for the employee position who i am interested in.
I think there is some link missing. For the OM infotype records to be filled during get peras event do i need to give any other selection value like evaluation path or i have to use a different event. Please advice
Suitable answers will be rewarded
Thanks,
KasiI don't think PNPCE does anything with HRP infotypes. PNPCE is all about PA data since PERNR is the main key. Logical DB PCH is the one that deals with HRP Infotypes.
-
How to create a new selection screen IN LOGICAL DATABASE PNPCE
how to create a new selection screen LDBS PNPCE
Hello Ankit,
Do you want to create a new selection screen in LDB PNPCE, or do you want to create a new selection screen in one of your reports using LDB PNPCE?
For later (which is more common), you can use HR Report Category.
Hope this helps.
Best Regards,
Biraju Rajyaguru -
Logical Database - PNPCE - Hide 'Org Structure' 'Search Help' etc buttons
Hi,
We have created a report by making a z copy of RCATS_APPROVE_ACTIVITIES. In the Z version we need to hide the buttons on the titlebar of the selection screen.
Buttons are
- Org Structure
- Search Help
- Dynamic Selection
- Selection Fields.
Can you please suggest if I can do something from the code ?
Regards,
Chiranjeevi.Hi,
Thanks for your suggestion. However, there is no title bar method that we can modify to remove the buttons. I have created a Z report Category by copying the existing one and made the modifications.
In that we can hide/display UI elements which are displayed by Logical Database.
Regards,
Chiranjeevi. -
Enhancement to logical database PNPCE
Dear all,
my client wants to include a few z_tables to the standard selection screen and output in their ad hoc reporting infoset in HR.
Is there a way to include z_fields to the standard selection screen (PNPCE) as well as output of the ad hoc reporting infoset?
Thanks for your response.
Cross post locked
Edited by: Rob Burbank on May 11, 2009 2:56 PMHi Tony,
You wont be adding the Z table directly.Instead you will be
enhancing the structure PNNNN_AF with the fields from ur Z table.You need to create the Customozing Include CI_PNNNN_AF for this.
You have three steps to go follow :
1. Definition of additional fields in DDIC - Enhance structure PNNNN_AF.
2. Create coding for additional field - In this step, you Create a Function Module and
write logic to populate the values from ur Z table.
3. Determine Data Retrieval Routines and Standard Add'l Fields.- You need to maintain
the newly created FM name in the database view T770AF.
Finally, You can integrate the additional fields into existing InfoSets using the path
InfoSet --> other Functions --> Update HR Additional Fields.
You will get a better idea once you go thru the SPRO Node documentation. Please let me know if you need any further Info.
Mahesh -
ABAP - HR Logical Database PNPCE
Hi everyone,
Can anybody help me regarding lofical databse PNPCE used in HR abap.
If u have any information regarding the same,please provide.
Thanks.
SandyHi sandeep,
1. PNPCE is just like the original/last
PNP
2. PNPCE has extra fields for selection
on selection-screen.
3. It has got extra events as compared to PNP
GET PERSON, GET GROUP, and GET PERAS
4. For more info,
goto SLDB tcode.
Type PNPCE
5. choose radiobutton for 'Documentation'
press 'Display'
6. There u will find lot of information.
regards,
amit m.
Maybe you are looking for
-
Macbook Pro 13 inch stuck while turning ON and heat up
Hi, My MBP 13 inch (Snow Leaopard 10.6.8) is stuck at start upp with grey apple logo (no spinning gear). I think this problem started after I tried to turn ON my MBP with an external dongle connected to USB port (I didnt notice it is connected). Whil
-
Radeon 9800 AIW pro compatability?
Anybody know of any compatability issues w/ATI/radeon 9800 AIW pro and 865PE NEO-2 FIS2R mobo's during POST??? See my other thread, I'm having a hell of a time getting my new system to pass POST and get to bios screen, monitor stays in standby, am
-
Adobe Acrobat 5.0.5 autoplay fails to initialise.
Following a new installation of Windows XP SP3 I cannot reinstall Acrobat 5.0.5 from the CD autoplay or from a copied version of the CD on the hard disk. It installed fine a few years ago and the disk has been protected and unused since so no reason
-
Max number of incoming / outgoing connections
we couldn't telnet to box and it crashed after sometime. Need to find out if there any config parameter that sets number of max connections allowed inbound/outbound in solaris 10.
-
How far is this true? Very IMPORTANT!!!
I saw this on bitpipe.com web site. How far is this true? (search for ideabundle on this site and you can go to the actual website of Giga...) Following is a QUOTE (ie. an extract) "In this IdeaBundle, Giga Analysts look at the foundation of Oracles