Debugging of LDB's
Hi Gurus,
I am new to LDB's and not able to debug the ldb.My problem is ,i have one ldb statement in a program.when i am executing the program in debug mode i am directly getting values from that statement.But i want to go inside to see from where it is picking the data.I already tried by putting breakpoint inside of that ldb.But no use.So could anybody please let me know the ways of debugging an ldb.
Regards,
Rakesh.
Use /hs to use system debugging.
Regards
Similar Messages
-
Can we debug the LDB PNP, if so how? How to change the selection screen of LDB.
Hi,
Please follow
Go to transaction SPRO -> Personnel Management ->Human Resources Inforamtion system -> HIS -> Reporting ->
Adjust the standard selection screen -> Create Report Categories.
I hope if this meet your requirement, please award suitable points and close the thread.
Regards,
Irfan Hussain -
Facing Problem while Debugging a custom report using LDB
Hi Gurus,
I have requirement to modify a custom report program related to FI. This program used Logical database ZDF ( Copied original DDF) for data fetching.
when i am trying to see the data in debugging mode, its not allowing to check in start-of-selection event. only in the initialization & end-of-selection i could able to debug.
when i put breakpoint in initialization, it is allowing to see the flow till a Get Event occurs in the code, once a Get event occur the debugger is coming out and displaying the report.
If anybody faced this kind of problem when debugging a report using LDB, please share how you resolved it. If there are any other ways to debug a program of this kind please help me.
Thanks,
NandaHi Amith,
I checked that way also, i put break point in database program of the copied LDB, but its not allowing to check the flow in that program also.
Please suggest any other ways.
Thanks,
Nanda -
Hi Experts,
By mistake the HR Report Category "HRINCLMS" in LDB selection screen was changed. Now I am trying to change the same but it is not allowing.
After executing the "HINCREMS" program.In standard program, The selection screen 1st block should be KEY DATE with fields TODAY and OTHER KEY DATE . But due to some changes it is showing PAYROLL PERIOD BLOCK with fields CURRENT PERIOD and OTHER PERIOD(remining blocks are coming correctly).
This is because in the HR Report Category "HRINCLMS" the person selection period should be KEY DATE. But defaultly it is taking as NO ENTRY and I am not able to edit the person selection period it is not in editable mode.
Its effecting whole hr screen. Please can any one help me to resolve the problem.
Thanks,
Shafi.And what you said is also right.
This is a tricky one, and I don't know but maybe it is a bug. I tried modifying it in my development system and as soon as i hit enter the value of Person Selection Period is toggling automatically to 'No entry'. So, in my opinion you have two options here:
1) Modify the value via debugging. In this case you have to go to SE16 and display the record for RECPL => HRINCLMS and then set the value for XXXPS to 1
2) The other way is choosing the following options:
a) Data Selection Period = Key Date
b) Person selection period = No entry
c) Payroll Area = No entry
Best Regards
Edited by: Jose Maria Otero on Nov 24, 2011 11:28 AM -
REPORT yjsample4 .
tables : bsik, t001.
START-OF-SELECTION.
GET BSIK.
IF bsik IS NOT INITIAL.
APPEND bsik TO g_t_bsik.
ENDIF.
END-OF-SELECTION.
SELECT * FROM bsik INTO TABLE g_t_bsik1 WHERE lifnr IN kd_lifnr.
LOOP AT g_t_bsik.
cnt = cnt + 1.
WRITE:/ cnt, g_t_bsik-bukrs, g_t_bsik-belnr.
ENDLOOP.
In above program attributes please assign LDB name as KDF and keep break point at REPORT yjsample4 . If we go through debugging mode it is going into three function modules and doing some validations and giving the records in output. which are not same if we select the same from SELECT * FROM bsik INTO TABLE g_t_bsik1 WHERE lifnr IN kd_lifnr.
Can any body help me. What is happennig? I need to remove LDB(Avoiding LDB usage) and need to replace with SELECT statement...Hi
KDF is Vendor Database.
Note
The report SAPDBKDF controls access to the vendor data base from a Financial Accounting point of view. Since the program only contains physical accesss routines for the logical data base, it cannot be started separately.
Technical documentation
In the standard system, a basic selection screen (screen number 1000) and 4 screen variants are delivered for the logical data base SAPDBKDF. The basic selection screen contains all available data base selections. If you make changes to data base selections (for example, defining a new selection parameter or extending the vendor number to 10 characters), then this screen is regenerated automatically by the system. It can then be used immediately by all reports that use the logical data base DDF. Screen variants are available in reporting by entering the screen number in the attributes.
Available fields
The available fields on a screen are indicated with an 'X'.
Selection screen variant
Field name 1000 900 901 902 903
Vendor number X X X X X
Company code X X X X X
Fiscal year X X X X
Key date of OIs X X
Clearing date X X
Table selection
In order to improve performance, individual tables can be excluded from selection. The following fields can be set in the application report at the time of INITIALIZATION or at the START OF SELECTION:
B0SG-XAGSL (blank as a default): if this field is set, then only A and B segments are read; in this case, only A segments for which there are no B segments are selected - this is normally not the case.
B0SG-XBNKL ('X' as a default): if this field is left blank, then the bank data is not read.
B0SG-XSTDL ('X' as a default): if this field is left blank, then the tax data is not read.
B0SG-XMNDL ('X' as a default): if this field is left blank, then the dunning data is not read.
Authorization checks
account type authorization (F_BKPF_KOA)
company code authorization (F_LFA1_BUK, F_BKPF_BUK)
account authorization (F_LFA1_BEK) -
hi experts,
i m developing a hr report using pnp ldb,no doubt with the help of this ldb we get standard selection screen but here what i want that in this selection screen only payroll area and personel number sud come for this what sud i do for changing the selection screen......plz help me...Hi,
In at selection-screen output, you try loop at screen.Inside that if screen-name is
PNPABKRS, then make screen-active = 1 otherwise, screen-active = 0.Simlarly in debugging you find out the lables for the input fields and then make it as active.
tables pernr.
at selection-screen output.
loop at screen.
if screen-name CS 'PNPABKRS'.
screen-active = 1.
else.
screen-active = 0.
endif.
modify screen.
endloop.endloop. -
Regarding LDB selection screen
Hi All,
I copied a standard LDB program "RCATSCMP".
I have a date fields in selection screen.
When i debuged the standard program i am getting the date values PN-BEGDA and PN-ENDDA.
but when iam debugging my program iam not getting any values for these fields.
How to get these values.
Thanks in Advance
kiran iHi Kiran,
Please check the attributes of the copied program
and see whether it has logical data base 'PNP' is
there are not.
Thanks & Regards,
Siri. -
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. -
If I use a LDB in the Attributes of the Program what happens?
Hi friends,
I have to modify a standard program RFRECPSFA410. which i need to add some more fields in the output layout. It is a standard program. In the attributes of the program he used the LDB name RECN. And while debugging i found that the program is calling logical database. How it is calling I could not understand. And I need to add the fields in the Output Lay out. How can I add?Hi
LDB - Logical Database are special ABAP programs that retrieve data and make it available to application programs. The most common use of logical databases is still to read data from database tables by linking them to executable ABAP programs. They provide selction-screen, authority-check etc.
For detailed information see the following links:
Overview:
http://help.sap.com/saphelp_nw04/helpdata/en/60/183d78163011d2953c0000e8353423/frameset.htm
Using Logical Databases:
http://help.sap.com/saphelp_nw04/helpdata/en/60/183d78163011d2953c0000e8353423/frameset.htm
Regards
Surya. -
The program Ive been given to 'enhance' uses a logical database. I tried to argue that a 40 min response time was reasonable but they are not buying it. (we have to try right?)
Nearly 98% of the time used by this program is in database access.
I followed the generated code though using debug and there are areas that can be improved. But this is all SAP generated code of course.
Does anyone have any pointers on how I can 'copy and change' or even rebuild an LDB?why would you rebuild the LDB? There are other things you can do first.
Since you debugged the program already you know what tables are
accessed...
and possible keys (structure). Now I would investigate whether there are
any issues
with the table in the DB (e.g. ORACLE statistics out-of-date/wrong). Any
issues with
related buffers...
Then, knowing the keys and their structure check whether it is necessary
to create indexes
on the table(s) to allow faster access....
Then there are "hints" that could be set to allow ORACLE access tables
in a specific way...
I would look deeper into those possibilities than trying to rebuild a
LDB....
regards,
satish. -
Peculiar problem in LDB ADA with company code selection
<h5>Hello Colleagues, </h5>
Faced a peculiar problem with company code selections in LDB ADA. Entered depreciation area, dep posting perios, lower and higher value of company code and would like to except few companies from selections. On pressing extension button, error message "Depreciation area 01 is not defined in chart of depreciation" is popping up and not allowing to provide exceptions for company codes. But working well in development systems. We are using ECC 6.0 systems and in both systems we have same lines of code for SAPDBADA.
During debug, found that in development system, control coming to initial statements after PAI event. But in other systems, control skips few initial commands after PAI and directly jumps to later commands. Due to this FNAME parameter in PAI subroutine setting with '*' in other systems and 'BUKRS' in dev system.
Could anybody give me some thoughts of why system behaving differently?
Thanks and Regards,
PrasanthSome - or most? - ODBC driver, especially MS for SQLServer and Access, don't support these advanced JDBC features.
Like the messages says: they are optional features, and the driver doesn't implement them.
A good news:
you don't need them.
Just go through your ResultSets only forward by next(), and do all inserts, updates and deletes with executeUpdate() and SQL commands. -
Hello Gurus,
I am working on a Report on ASSET ACTIVITY BY DATE RANGE .
The program is copied from std. program S_ALR_87011990.
The above std. program displays for the whole financial year. This is modified for a particalar period range in the new leveraged program.
My question is in the below code.
We are fetching data using LDB ADA. The statement "GET anlcv" works fine here, I mean Sy-subrc is 0 and anlcv structure has some data in it.
When it comes to statement "GET anepv" in the below code, we are not getting any data into that structure and sy-subrc NE 0. Then it is skipping all the get statements and directly going to statement " PERFORM abga_simulieren.".
My logic lies in between this Get statement and the perform statement. When i see it in debugging mode my statement is not executed at all.
What needs to be done. Please anyone help me.
GET anlcv.
CHECK select-options.
MOVE anlcv TO sav_anlcv.
GET anepv.
CHECK select-options.
Nur Bewegungen des Jahres des Berichtsdatums durchlassen.
CHECK anepv-bzdat GE sav_gjbeg.
CHECK anepv-bzdat IN so_bzdat. "Added for SIR-3132
Bewegungen in SAV_ANEPV sammeln.
MOVE anepv TO sav_anepv.
APPEND sav_anepv.
GET anlb LATE.
Check auf Bestandskonto bei Gruppensummen erst hier, wegen
fehlender Abgänge/Umbuchungen
IF NOT summb IS INITIAL.
IF NOT anlav-ktansw IN so_ktanw.
REJECT 'ANLAV'.
ENDIF.
ENDIF.
ANLCV aus Save-Area zurueckholen.
CHECK NOT sav_anlcv-anln1 IS INITIAL.
MOVE sav_anlcv TO anlcv.
Abg-Simu: Abgang simulieren.
PERFORM abga_simulieren.
Promise to reward points
Regards
MacDear Raymond,
I tried debugging the FM but it is not stopping at the perform you mentioned.
Then I opted for CALL FUNCTION 'LDB_CALL_LDB_PROCESS' starting new task v_task_id.
If I don't use "starting new task v_task_id" it gives dump at the following part of 'LDB_CALL_LDB_PROCESS' , stating Result table incompatible.
CALL FUNCTION 'LDB_CALLBACK'
DESTINATION 'BACK'
TABLES
CALLBACK_TAB = G_CALLBACK
RESULTS = RESULTS
LDBNODES = I_LDBS.
But if I use CALL FUNCTION 'LDB_CALL_LDB_PROCESS' starting new task v_task_id then it does n't give me any results.
Kindly help.
Regards,
Vikas -
Authorization for LDB PNPCE &PNPPS and table T77S0
Hi folks ,
Im working on a very interesting requirement , I have developed an Ad hoc query , which is reading IT0019 ( Monitoring dates infotype ) with field called task type . I take a test login and give task type which is equal = w . When I was running that query in test login to see security is in place or not . I found that whenever theres two recs in IT0019 with task type W 9 which test login has authorization and W2 ( which test login doesnt have authorization ) its not pulling up any record . its giving no data . to make sure I again went in to Infotype IT0019 and delete the task type (W2 : the one which test login doesnt have authorization ) . then I run the query . it pull up one record . So my question is how can I handle this situation in Adhoc query . I mean logically speaking it should pull up at least one record for which it has authorization . I am using LDB PNPCE .
Moreover , I debug the query and I came to know its reading the the table T77S0 using class : CL_HR_T77S0.
I read the about table (T77S0) , another question if I set another entry in the table with PNPPS and AUTSW. Will it works . Can I control it?
http://help.sap.com/saphelp_erp2005/helpdata/en/84/49ba3b3bf00152e10000000a114084/content.htm
Thanks,
SKHello Amit,
you have to run the "copy" action ,while changing OM objects. then only it will effect in IT 0001
if you will click on change then it will not update in PA.
so click on Copy then do the changes and save it. it will update IT 0001.
We had the same issue. if you get any solution then let me know.
OR
Will you try running RHINTE30 Report
do batch input session and run it via SM35
Thanks and Regards
Jaydeep Jadhav -
Which Syntax is best to read an infotype using PNPCE LDB ?
Hi experts,
Which syntax is best to read an infotype when we use PNPCE LDB.
Thanks.
reddyHi Iredy,
if you need to read an infotype records of the particular employee, you can use Macro RP-READ-INFOTYPE (Parameters: PERNR, INFTY, BEGDA, ENDDA)
Macro definition you can find in table TRMAC.
For RP-READ-INFOTYPE is definition as follows:
RP-READ-INFOTYPE 001 ****************************************
RP-READ-INFOTYPE 002 * RP-READ-INFOTYPE *
RP-READ-INFOTYPE 003 ****************************************
RP-READ-INFOTYPE 004 * PARAMETERS: *
RP-READ-INFOTYPE 005 * PERNR REQUESTED PERSONALNUMBER*
RP-READ-INFOTYPE 006 * INFTY REQUESTED INFOTYPNUMBER *
RP-READ-INFOTYPE 007 * INFTY-TABLE OUTPUT-TABLE LIKE PNNNN*
RP-READ-INFOTYPE 008 * BEGDA REQUESTED INTERVAL-BEGIN*
RP-READ-INFOTYPE 009 * ENDDA REQUESTED INTERVAL-END *
RP-READ-INFOTYPE 010 ****************************************
RP-READ-INFOTYPE 011 *SET DEBUGGING INTERRUPT ON *
RP-READ-INFOTYPE 012 PERFORM READ-INFOTYPE(SAPDBPNP) *
RP-READ-INFOTYPE 013 TABLES &3 *
RP-READ-INFOTYPE 014 USING &1 '&2' &4 &5
RP-READ-INFOTYPE 015 *SET DEBUGGING INTERRUPT OFF *
It means that the macro is performing read-infotype which is defined in include DBPNPF03 of the SAPDBPNP. -
Hi Gurus....
Iam using Standard logical database DDF for customer payment. by using one print program. in my print program i wrote GET BKPF
after that i wrote CHECK BKPF-BELNR IN DOcument.
problem was wtaht ever i given document number is available in BKPF table but
ldb returns other than that velue....
how to debugg the logicaldatabases (LDB)
urgent please
nagarajuHi Nagaraju,
I think there is no way to debug LDBs.
Regards,
Satish
Maybe you are looking for
-
You can have a semicolon in a file or folder name on your hard disk, but if you have files/folders that contain semicolons on a DVD, they are not readable. Finder silently ignores such files/folders, so if you copy a DVD to (say) your desktop, then y
-
Basics of SD,Finance,SCM,Operations required in SAP BI implementation
Hi, Can some one help me in getting some basic material to understand the following modules: SD,Finance,SCM,Operations Many Thanks, Sravani
-
I am using The latest version of i Tunes 8 on a Dell with Windows XP. I added a bunch of audio books and used Google to find the artwork. On disk one of one of the audio books it shows the correct artwork for the first track, and then it shows the ar
-
I have DONE almost everything but i think this is more than just hardware problems...! I also have done the steps in Linc Davis's comment on the issue: https://discussions.apple.com/message/16909296#16909296 and the results (kinnda seem personal but
-
Issue with same order being modified in multiple sessions upon simultaneous multiple login.
Hi, I am facing a issue in the following scenario. 1. User logs into the site from firefox and chrome browsers with the same login credentials simultaneously. 2. From Firefox session, the user removes some items from his cart. 3. Now the user refresh