[HR-PY] Querying PNP LDB infotype - wise
Hello !
I got a question about optimizing data fetching from LDB.
Nowdays i do something like :
INFOTYPES: 0657.
GET pernr.
LOOP AT P0657 WHERE somefield IN criteria.
"do stuff here
ENDLOOP.
Problem with this approach is Preformance - i only want to process records that have IT0657 entry - but since no select options are given on screen GET pernr fetches every personal number - is there any way to restrict that ?
i know i could do SELECT to db and then insert its results as LDB params to loop only on the relevant records - problem with that is that my Selection Options regarding PERNR in LDB get lost that way - is there something more accurate ?
Can P0657 be queried with OpenSQL as usual ?
Yes.
i guess with mode N the only diffrence between LDB and physical DB is that LDB results are filtered by provided selection screen ?
Correct
Does PNP have any other nodes than PERNR ? how do i know what nodes i can use ?
Go to SE36-> type in PNP -> here you have all nodes available in PNP -> select PERNR and choose table icon
or
Go to SE11-> structure PERNR
All these fields are transported during GET PERNR event, so always try to restrict them to those which you really need
Can you please give some example of such query - it's my 1st approach to LDBs and i dont know how to deal with it exactly.
SELECT-OPTIONS so FOR field.
INFOTYPES: 0657 mode n. "table empty at GET pernr event.
GET PERNR FIELDS pernr ....
SELECT field field2 field3 FROM PA0657 into corresponding fields of table PA0657
where pernr = pernr-pernr
and field in so.
if sy-dbcnt = 0.
"entry exists
else.
"no entry
REJECT. "reject EE and proceed to next node -> here next PERNR
endif.
This could help a litte bit with performamance but I think the best would be filtering at LDB level, so using select options for payrol area, company code, org unit, cost center etc (all Emoplyees processing should really never been performed, because it is time intensive) . Also giving dates PNPBEGDS and PNPENDDS restricts picking EEs to those who are at least one day active (PA0000-stat2 = 3) within this date range. On the other hand, PNPBEGDA and PNPENDDA only restrict fetching infotype table, so here it is of no relevance as we instructed it not to do it (mode N).
Regards
Marcin
Similar Messages
-
Custom infotype will also come in PNP Ldb
Hi Friends-
If we create a custom infotype which is starting from 9 eg 9001 , then if we use PNP LDB would this Ldb provide me data for thsi custom infotype also apart from all PA standard infotype ?
Regards
MeetaHello Meeta,
It will not be a part of PA Info types.
Yes, you will be able to get values of the custom info type in the GET PERNR and END-OF-SELECTION loop as you get values for other standard info types. For this you need to declare the custom info type same as you declare info types for which you want data in your program.
Hope it helps.
Thanks,
Jayant -
RE:pnp LDB selection screen problem
hi,
hi friends iam facing one problem regarding hr ABAP selection screen ,in my program iam using PNP LDB for bonus details report
i have using selection screen declaration present for single selection.
SELECTION-SCREEN BEGIN OF BLOCK B3 WITH FRAME TITLE TEXT-006.
SELECT-OPTIONS: S_ABKRS FOR P0001-ABKRS NO INTERVALS NO-EXTENSION,
S_WERKS FOR P0001-WERKS NO INTERVALS NO-EXTENSION,
S_BTRTL FOR P0001-BTRTL NO INTERVALS NO-EXTENSION,
S_PERSG FOR P0001-PERSG NO INTERVALS NO-EXTENSION,
S_PERSK FOR P0001-PERSK NO INTERVALS NO-EXTENSION.
SELECTION-SCREEN END OF BLOCK B3.
based on this selection iam fetching the information from infotypes using macros.
now my requirement is iam fetch the information for multiple selections means like payroll areas z1,z2 and z3 payroll informations
should be fetching once. pls any body knows solution please give me reply.
thanks & regards,
mgrao.hi jain thanks for your reply, iam already created report category and assigned my report. here iam giving my report selection
declerations fully below.
S E L E C T I O N S C R E E N *
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001. " DECLEARED REPORT CODE LEVEL
SELECT-OPTIONS: S_DATE FOR SY-DATUM NO-EXTENSION. "Bonus for Financial Year
PARAMETERS: P_BDATE TYPE SY-DATUM OBLIGATORY, "Bous payed as on
P_WKDAYS TYPE CHAR6. "No.of Working Days
SELECTION-SCREEN END OF BLOCK B1.
*SELECTION-SCREEN BEGIN OF BLOCK B3 WITH FRAME TITLE TEXT-006. " COMMENTED report level TAKING FROM LDB PNP
*SELECT-OPTIONS: S_ABKRS FOR P0001-ABKRS NO INTERVALS NO-EXTENSION, " Payroll area
S_WERKS FOR P0001-WERKS NO INTERVALS NO-EXTENSION, Personnel area
S_BTRTL FOR P0001-BTRTL NO INTERVALS NO-EXTENSION, Personnel sub area
S_PERSG FOR P0001-PERSG NO INTERVALS NO-EXTENSION,
S_PERSK FOR P0001-PERSK NO INTERVALS NO-EXTENSION.
*SELECTION-SCREEN END OF BLOCK B3.
SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT-002. "REPORT CODE LEVEL SELECTION
PARAMETERS: P_FORMCP TYPE PIN_RATE, " char6, "Form C %
P_FORMEP TYPE PIN_RATE, " char6, "Exgratia %
P_FORMBP TYPE PIN_RATE. " char6 . "Bonus %
SELECTION-SCREEN END OF BLOCK B2.
SELECTION-SCREEN BEGIN OF BLOCK B4 WITH FRAME TITLE TEXT-004.
PARAMETERS: L_REPORT TYPE ZHRD_FORMC AS LISTBOX VISIBLE LENGTH 40 OBLIGATORY . Report for list box 1 form c
SELECTION-SCREEN END OF BLOCK B4. 2 exgratia
the above selection is iam used first, now iam commented BLOCK B3 SELECTION PARAMETERS and taking the parameters from REPORT CATEGORY ASSINGN MENT.
MY PROBLEM is if i select one payroll area example z1 it showing all pay roll employees bonus details it is not filter the remaining payroll areas my requirement is what are the payrolls iam selecting those pay roll area details only displaying.
data fetching from INFOTYPES 0001,0002,0021 AND 9150 FOR BONUS DETAILS and out put is classical report format.
please kindly give the reply if you knows the solution.
thanks & regards ,
mgr. -
Which include i can use instead of PNP LDB
Hi Friends -
Which standard include i can use for PNP LDB ?
am working in abap webdynpro and need to use some macro like rp_provide_from_last but for them we have to use pnp ldb and in abap webdynpro we can't define LDBs so i need the standard Include prog which can fulfill my requirment ..
Pls share your inputs on this.
Regards
MeetaHi Txs for your quick turn,
could you pls tell me what is wrong in my this code ,
include DBPNPMAC .
INFOTYPES 0000.
DATA: pnp-sw-found,
pnp-sy-tabix like sy-tabix.
parameters : p_begda like pa0001-begda,
p_endda like pa0001-endda.
START-OF-SELECTION.
RP_PROVIDE_FROM_LAST p0000 space p_begda p_endda .
if PNP-SW-FOUND = 1 .
write : / p0000-pernr,p0000-begda,p0000-endda.
endif.
end-of-selection.
am not getting any output but if i use LDB pnp and get pernr i will get ..
but i cant use LDB pls suggest me what i shd do ?
Regards
Meeta -
Hi,
can anybody provide me demo code for using PNP ldb?
abctables pernr.
infotypes 0002.
data: begin of itab occurs 0,
vorna like pa0002-vorna,
end of itab.
data wa like line of itab.
*write 'abc'.
get pernr.
provide * from p0002
BETWEEN PNPbegda AND PNPENDDA.
move p0002-vorna to itab-vorna.
append itab.
clear itab.
endprovide.
end-of-selection.
loop at itab.
write:/ itab-vorna.
endloop. -
Hi,
Can anyone please give me the information about the follwing issue : How can i create a Adhoc query for JRP infotypes (IT 1000, 1001& 1002 etc).
Requested you to please help me in this regard.
Thanks & Regards,
Nagafirst go to Sq02
On the left hand side there is a field by the name of infoset.
Give any appropriate name. Then click on create button.
then a screen will appear , write the name. In data source field click on Logical Database . Here you have to select PNPCE, PAP, PNP according to your requirement.
If you want to create Query on anything related to applicant select PAP. If ur query is based on Master data select PNPCE.
After selecting click on tick mark (green in colour) which is given below. A screen with different folders of infotypes will appear. Select the required infotypes which you want accoridng to your requirement. Then click on tick mark again.
Then click on generate button (red & white in colour) (3rd button from the left). A screen will appear with the name
create object directory entry. Here you have to click on local object button.. you will now see that the system haas generated a Message saying "Infoset------- generated.
In sq02 there is a button with the name Role/User Group Assignment . Assign the user group out here.
Then go to SQ01, click on infoset query. Select ur user group. You can see the name of the query which you have created. -
HR-ABAP: Defaulting Radio Button on Selection Screen of PNP LDB
Hi all,
I am using PNP LDB (Logical Database) for program which is used for Payroll Results.
Now I have a requirement wherein it is necessary to select 'Up to today' as default on the selection screen.
We are having 4.7C version of SAP. I tried following code in INITIALIZATION event:
Initializing Selection Screen Data Selection Option to 'Up To Today'
INITIALIZATION:
MOVE: 'X' TO pnptimr4, " This is the option which I want as Default selection.
space TO pnptimr1,
space TO pnptimr2,
space TO pnptimr3,
space TO pnptimr5,
space TO pnptimr6.
But still I dont see this Radiobutton getting selected as Default selection while running the program.
By Default it selects Option : 'Other Period' (pnptimr6).
Any Idea how to resolve this ??
Regards,
Avinashhi...
When the INITIALIZATION event occurs, you can set default values for the selection screen.
The fields for the data selection are defined in structure QPPNP.
Possible values for field PNPTIMED are:
D = Today (key date)
M = Current month
Y = Current year
P = To current date
F = From today (from current date)
The person selection fields are defined in include program DBPNPSEL. They are internal tables that must be filled using APPEND.
so in intialization you have to write code as
PNPTIMED : P.
so up date will be defaulted in selection screen.
award points if helpful. -
Dear friends,
Is it possible to generate SAP Query on Custom Infotypes.
As I am trying them and while creating Infogroup on my custom Infotype fields, It is not getting generated.
Could you please suggest how to proceed.
Thanks in Advance,
Regards,
Satya.hi,
I think its not possible to fetch custom infotype fields using SAP Query....ask your abap consultant to write a simple report...that wil do.... -
How to avoid default selection screen in HR interfaces(using pnp ldbs)
How to avoid default selection screen in HR interfaces(using pnp ldbs)
Dear Rakesh,
The report category is used to change the selection screen of programs that use the 'PNP' logical database.
See links bellow:
http://www.sapdevelopment.co.uk/hr/hr_repcat.htm
http://help.sap.com/saphelp_erp2005/helpdata/en/15/229357553611d3967f00a0c9306433/frameset.htm
Report categories for selection screen in HR programming
Also visit the following blog:
/people/alvaro.tejadagalindo/blog/2006/02/19/how-to-deal-with-hr-payroll-reports
Regards,
Naveen. -
Create a screen by teh help of pnp ldb
hi expert ,
i have a file ( new hire file )
New Hire file: This interface program will be scheduled to run in the background and all the mandatory fields will be defaulted as shown below. End date will be defaulted with system current date and Begin date will be defaulted with CURRENT DATE 7 DAYS. The selection criteria can be changed for testing purposes and can be further be extended by using the logical database PNP. A report category should be created for LDB PNP. but i don't find MOLGA in pa0001 , so please give the code for this screen.
Screen Field Description
TYPE Reference Field Comments
S_MOLGA Country key Select option PA0001-MOLGA Mandatory. Default with 10
S_PERSG Employee group Select option PA0001-PERSG Mandatory. Default with 1
S_PERNR Employee Select option PA0001-PERNR Optional
P_BEGDA Begin date Parameter SY-DATUM Mandatory. Default with SY-DATUM 7
P_ENDDA End date Parameter SY-DATUM Mandatory. Default with SY-DATUM
thanks.Hi
You have to create a separate HR report Category in the report of PNP LDB and use
From the program attributes after assigning the LDB PNP you will get the Report Category in the down.
click on it
and check for the related fields
and you can modify the report category by making some fields disable so that you will get the required fields on the selection screen.
MOLGA is not there in PA0001
it is there in T500L,T500T, T500P and HRP1005 tables
take from it
<b>Reward points for useful Answers</b>
Regards
Anji -
URGENT( PNP LDB SELECTION SCREEN )
hiiiii,
can anyone tell about the field PNPDISBD of pnp LDB in sap-hr , and why it is used. Is There any field on selection screen related to this when we use pnp LDB.Hi,
PNPDISBD is nothing but a date.
Go to SE38 and open the report SAPDBPNP.
And search for the field PNPDISBD then you will come to know its functionality. -
Hi ,
How to omit few fields in data selection period of pnp selection screen.You can disable the selection screen element in at selection screen output event.
Ex: The following code has been written for one of the FI related ldb.
Check the field names of pnp ldb in debugging mode and use it.
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF SCREEN-GROUP3 = 'IXS'.
SCREEN-ACTIVE = '0'.
SCREEN-INVISIBLE = 1.
MODIFY SCREEN.
CONTINUE.
ELSEIF SCREEN-GROUP4 = '023'.
SCREEN-ACTIVE = '0'.
SCREEN-INVISIBLE = 1.
MODIFY SCREEN.
CONTINUE.
ELSEIF SCREEN-NAME = 'DD_BUKRS-LOW'.
SCREEN-REQUIRED = '1'.
MODIFY SCREEN.
CONTINUE.
ELSEIF SCREEN-NAME = 'DD_BUKRS-HIGH'.
SCREEN-ACTIVE = '0'.
SCREEN-INVISIBLE = 1.
MODIFY SCREEN.
CONTINUE.
ELSEIF ( SCREEN-GROUP3 = 'VPU'
AND SCREEN-GROUP4 = '007' ).
SCREEN-ACTIVE = '0'.
SCREEN-INVISIBLE = 1.
MODIFY SCREEN.
CONTINUE.
ELSEIF SCREEN-NAME = 'DUEDATE1'.
SCREEN-INPUT = 0.
MODIFY SCREEN.
CONTINUE.
ENDIF.
ENDLOOP. -
Reg:Modification of HR Report Category in PNP LDB.
Hi All,
My requirement is to modify the selection screen of PNP LDB, in the report category we used to give the required selection screen.suppose i want to use the Report category as HRIN0000 and want to hide payroll area.
please help me about this.
Thanks in Advance
Regards
SrinivasHi,
Go to Tcode SE36 -->LDB PNP >Extras>Select view
Dispaly the function group.If it does not exit create a new function group and assign the fields need to be displayed
Field that have no fuction can be suppresed in the output.
I hope this may helpfull.
Thanks,
AMS -
Hi Abapers,
I have used Standard PNP LDB in selection screen of my report, there is one button called 'org. structure' in standard Screen if u observe.. now my requirement is to create a new button 'SBU' just like the existing one. by clicking on this button i should get modal dialog box where hierarchy should be displayed which is similar to org. structure...
kindly help me... its urgent.....Hi Premraj ,
Open the program in SE80 and there you can see the screen no 1000 , this is your selection screen.
Go to this screen and add the new button you want to add , and in the PAI of the screen add a new module where you can do your processing and display the resulting screen.
Regards
Arun -
Hi guys,
Is that possible to show hidden fields from PNP LDB, before user have to make any interference? I mean, when I execute program related to PNP, on selection screen at first time I get, for example, werks that is not on standard showing. I have tried "modify screen" strategy but it did not work.
Thanks anyway.Hi.
Try using a variant.
First create the layout you want to display, the variant.
Then save it.
Call the variant in the source code.
Don't forget to create the variant all over again, when you migrate from one enviroment to another. The variants are not transportable.
after creating the variant, in the selection screen, paste this code in your report,
and replace /GERAL with your variant name.
DATA gs_variant LIKE disvariant.
clear gs_variant .
gs_variant-report = sy-repid.
gs_variant-variant = '/GERAL1'. "the name of the variant must begin with /
hope it solves it.
Filipe Guerra
Maybe you are looking for
-
Hi, all, I am working on a form that was previously made in Excel. I wanted to remake this in an expandable pdf fillable so that I can add the accessibiltiy information to the form. The first link is to the static pdf converted from Excel here: https
-
Can't change MAC address of my wireless card on Windows XP
Dear Forum Members, I have recently bought a notebook, Lenovo IdeaPad G550L (I haven't found section for the G series here on the forum) and would like to use its WiFi adapter (BCM4310 according to Everest) with explicitly changed MAC address. I inst
-
I want to diaplay my records from the databasewith 10 records per page. i l
i want to diaplay my records from the databasewith 10 records per page. i learned that it can be done through pagination . Please can anyone there help me and give me the code of how to page my records in my jsp pages I have small code ,but its not w
-
How do you create a clickable QT movie that opens a URL in a browser
Hi, I'd like to create a stand-alone, downloadable QuickTime movie that -- when you click on it -- opens up a Web page in the viewer's web browser. I just read this article about HREF tracks, but I didn't find it to be specific enough to be much help
-
Time Machine requests more storage than needed!
Starting standard backup Backing up to: /Volumes/TM_Backup/Backups.backupdb No pre-backup thinning needed: 1.94 GB requested (including padding), 109.41 GB available Copied 2539 files (265.1 MB) from volume Snow_Leopard. Copied 2547 files (265.1 MB)