2008 June 30 Lesson Learned
2:11 AMSomethings to pin point:-
1. Sometimes the problem is not in the program but the is the logic.
2. For Loop command it is best to clear or reinitialized the attribute or variable
3. For the debug mode there is a table option key into it and see the result. The data inside could be helpful. "syst"
4. Always press F1 for more information. From that you can go SE37 to get more technical help F1 AGAIN!
5. The system example is the best (This is what i notice from doing BAdi)
6. Sometimes only the new debugger will work for newer type of programs.
7. There are many ways to test a program.
a. Front-End = Portal - Applicant And Approval
b. Back-End = Admind running a program or using APPcreate
8. ALWAYS DOUBLE CLICK. Into those area that you do not know.
9. Look for keywords. If you are changing a area try see modiy. Or if you are changing an area it could be some place which have specific name.
PS : i could be wrong so please advised Thanks in advance ^_^
2008 Jun 27 How to check Transport
6:38 PMclick on the Lorry Symbol.
click on the destination server.
Find the Transport number
check on the symbol
- > triangle (transported [text label ready to be transported again])
- > Green Tick (transported)
- > Green Square (means ready to be transported)
- > Red Square (error)
2008 Jun 25 How to check position ID
5:30 AM1. Tcode (SE16) -> HRP1001 [ObjectType(P),ObjectID(00064744).RSIGN(B),RELAT(008)] Execute
2. Copy the SOBID(51650769)
3. Tcode (OPP01) -> [OBJECTID(51650769)] -> Select POSITION -> Click OverView(button) -> OverView Shift08
4. Check the relationship (z02 - Bussiness Structure (new)) OR (rel ) ( 003 - Legal Structure (old)) There is a OR will have to confirm with user
5. Choose the ORG ID Z02 -> 516 507 68 (answer!)
2008 June 25 How to Create BAdi
5:20 AMAdviced by Pak Nanang,Wai Meng and Radi.
TCode(TransactionCode)
SE18 - DisplayBAdi
SE19 - CreateBAdi
Deduction is within a standard SAP program there are places we can customized to our own requirements. The places are called user exit.
For my current limited knowledge:-
1. BAdi TCode - se19,se18
2. Dynamic Action
Been guided to do BAdi in two different ways.
1. SE19 -> Create Implementation -> Choose classic BAdi(Select from the list z* find) -> Press Create Impl. -> Choose the new name + The App Name. Then Change and Save the method you modify added.
2. OOAM -> Goto -> Enhancement (this is the place where you can find the list of BAdi related to PMS only so you do not need to search for z*) -> Choose classic BAdi
Why some programmers use se19 instead of ooam this is because they might want to us another BAdi which can do the desire value or behavior.
For the enhancement
The tcode use is
SE19 ( to create ),
OOAM ( to view the layout and put the BAdi inside the PMS form - Functional Changes),
phap_admin_pa ( to execute the app ).
Appcreate ( to run the app but in more web based )
Guide was given by Wai Meng to find the coordinates in the forms ( using the debug mode - create a break point - look into the table (t_body) and find the unique Row and column Id)
Guide given by Pak Nanang was basically on how to create the BAdi and placement.
Guide given by Radi was basically the logic and the place to pin point the score value to be use by the Badi.
----------------------------------------------------
TCODE Picked Up
PFTC_DIS - workflow
SE91 - Message (havent test)
TABLE
T9B03 - The Value and coordinate use by the BAdi
Notes : I could be wrong any SAPIAN out there if i am wrong in any of my post please do voice out Thanks in advance
More How to and Tips :
https://www.sdn.sap.com/irj/sdn/thread?tstart=0&threadID=767077
http://searchsap.techtarget.com/tip/0,289483,sid21_gci1276392,00.html
PCH Logical Database calling a PNP logical database
8:50 PMExample
proceed = 'Y'.
*CHECK EMPLOYMENT STATUS (ACTION INFOTYPE).
clear i0000. refresh i0000.
call function 'HR_READ_INFOTYPE'
exporting
pernr = temp_02-pfno
infty = '0000'
begda = pchbegda
endda = pchendda
tables
infty_tab = i0000.
loop at i0000.
if empstat <> space and not i0000-stat2 in empstat.
proceed = 'N'.
endif. "empstat <> space and not i0000-stat2 in empstat.
exit.
endloop. "at i0000.
if sy-subrc ne 0.
proceed = 'N'.
endif. "sy-subrc ne 0.
Example
ZDLLBMW001
Information provided by Siti Sarah
SELECTION SCREEN (Variable)
7:19 PMPARAMETERS: zClmty Like zitab-clmty DEFAULT
'3015'.
SELECT-OPTIONS: ZCLMTY FOR ZITAB-CLMTY DEFAULT '3015'. "adh2008 958
The differences between the both selection is that the top is a single value while the one below is a range type of selection.
This has a affect on the SQL or syntax that you are going to use. Example for the one above
START-OF-SELECTION.
SELECT * FROM ZCLAIM_I
WHERE CLMTY EQ zClmty.
SELECT * FROM ZCLAIM_I
WHERE CLMTY IN zClmty.
This information was provided by Miss Koh
2008 June 17 PMS 2.15pm 05.30pm
5:15 AMTransfer Knowledge on PMS
BAdi
For the non executive therae will be no changes.
MXXXX Financial period is from 1 July – 31 June (next year)
BAdi (based from explaination)
The SAP flow where there are UserEXIT (this is the place where we can change).
BAdi is one of the UserEXIT
So when ever there is a UPGRADE programmers should be there if there will be any overwriting to the customized changes.
Transaction Codes – SE19
(Changing BAdi) (implementation – it will implement the changes to a new BAdi almost like copy)
Transaction Codes – SE18
To View BAdi
- Implementation is a change not copy
- Best to create one template to call 1 BAdi
- Funtional to provide field or matrix
- Changes are mostly made in interface
Transaction Codes – Appcreate
To run an application
Table – T9B03
Table where the matrix of the PMS is stored (Exceed,SE…)
Exercised : To Debug PMS BADI
User ID:CSN005
Password: virus123
Data:
BADI implementation : ZRHAP00_DOC_DEF_DV01
Method : DEFAULT_PERIOD
- Goto transaction SE19, set a break point within the method ‘DEFAULT_PERIOD’
- Execute transaction APPCREATE to execute the Appraisal, pick any template.
- The Debugger should be triggered
Exercised : To Create BADI implementation PMS BADI
Data :
a) BADI Name : HRHAP00_TMPL_RESTR
BADI implementation : Z HRHAP00_TMPL_RESTR
Method : APPRAISER_GET_LIST
b) BADI Name : HRHAP00_VAL_DET
BADI implementation : Z HRHAP00_VAL_DET
Method : VALUE_DETERMINATION
- Go to transaction SE19 key in the BADI Name. then create Implementaion on these BADI. Then Create implementation on for these BADI
- Pick a method to enhance, put some coding that interacts with the importing parameter. Within your method output an information message.
- Activate your implemented BADI
- Debug your BADI implementation for via APPCREATE, the BADI is triggered once you key in a a value in the Appraisal template.
How to change your ABAP EDITOR
10:43 PMChoose utilities -> Setting
Choose
- Front-End Editor (New)
- Upper-/Lowercase Cobnversion in Disp Mode
This new screen is the best where they will give you new screen and there are help every where. Almost like Visual Basic or VBnet. This tips is from SiMou Miss Chin
Variable Size and Coordinate
5:56 AMgbdat(8) TYPE c VALUE 'Birth Dt',
gbdat(10) TYPE c VALUE 'Birth Dt'
Coordination
MOVE otab-gbdat+6(2) TO o_dsn-gbdat+0(2).
o_dsn-gbdat+2(1) = '/'.
MOVE otab-gbdat+4(2) TO o_dsn-gbdat+3(2).
o_dsn-gbdat+5(1) = '/'.
MOVE otab-gbdat+0(4) TO o_dsn-gbdat+6(4).
This to make sure the data given out is like 31/12/9999
Append and Sort by SiMou Chin
5:52 AMit_techdate-date = dj_rec-dat01.
it_techdate = dj_rec-dat01.
append it_techdate.
clear it_techdate.
This is how to sort
sort it_techdate by date descending.
loop at it_techdate.
itab-djoined = it_techdate-date.
exit.
endloop.
---------------------------------
changes made
DATA: BEGIN OF dj_temp_rec OCCURS 0,
datejoined LIKE p0000-begda,
END OF dj_temp_rec.
append
dj_temp_rec-datejoined = dj_rec-dat01.
dj_temp_rec = dj_rec-dat01.
append dj_temp_rec.
clear dj_temp_rec.
* itab-djoined = dj_rec-dat01.
* EXIT.
Sorting
sort dj_temp_rec by datejoined descending.
loop at dj_temp_rec.
itab-djoined = dj_temp_rec-datejoined.
exit.
endloop.
Transaction Codes
5:44 AMsm21 - logs error
pa03 - payroll lock to release 'period'
smartform - creating smart form
se37 - view program
se38 - change and view program
pa20 - view infotype
pa30 - change and view infotype
spro - change overview
su01 - List ID user
se10 - To see transport number
stms - check transport
se11 - Check table with structure
se16 - Check table
SAP and Me
5:43 AMI know the url seems to be obscene but what the heck it is like that.
Anyway there shoud be many updates here so and SAP-ian if you want to drop any comment i am ever willing to listen.
Thanks in advance ^_^