Study flow for abap
Hello,
i have been learning abap for almost 2 months now and I have been doing a lot of in book tutorials. I was wondering are if there were any resources or study flow that needs to be followed. Like in java the persons first program is a hello world print statement , which is followed by loops , data structures, oops , etc. and also there are boat loads of practice exercises on the web . I was just wondering if such a thing or place exists on the web for abap. As I am planning to write the taw10 certification , I just wanted to make sure I well equipped for the exam and future interviews .
THanks,
venkata
Hi Venkata,
As same as every language, ABAP also have the flow of learning from basic to advance. If you are studying for the certification, I hope you should have four different books in the following order.
SAP/ABAP Basics
ABAP Workbench Fundamentals
Introduction to Dictionary
Data Objects in ABAP Dictionary
Performance when accessing Tables
Input Checks
Object Dependencies
Changing Tables
Views and Maintenance Dialogs
Search Help
Introduction to Screen Programming
Program Interface
Screen Elements for Input/Output
Screen Elements: Subscreen and Tabstrip Controls
OOABAP/ABAP Objects and Application Area
Introduction to Object Oriented Programming
Object Oriented concepts and Programming Techniques
Object Oriented Repository Objects
Exception Handling
Shared Objects
Dynamic Programming
ABAP Objects and Application Area
Changing SAP Standard System
Enhancing Dictionary Elements
Enhancing using Customer Exit
Business Add-Ins
Modifications
Enhancements
Webdynpro - Introduction
Webdynpro - Controllers
User Interface
Controller and Context Programming
Regards
Rajkumar Narasimman
Similar Messages
-
Latest study material for ABAP certification exam code C_TAW12_04
Hi All,
Please provide latest study material for ABAP certification-C_TAW12_04 exam. They have changed the syllabus and exam pattern this year. Please provide the information about it.Hi All,
Please provide the required material. -
Regarding studying for ABAP HANA
Hello Gurus,
I have been working as a ABAP SRM techno-Functional Consultant for 5 years. Now I feel like to switch into something new and increase my knowledge. Can someone help me regarding learning of HANA for ABAP. Also can SAP HANA somehow be used in SRM. Will HANA provide me something more towards my carrier.
Thanks
Gaurav GautamHey Jasmin,
I loved your last line
Confucius: “You cannot open a book without learning something.”
And thanks for this guidance.
Also would like to share , I found few video tutorial, might help someone
Video Tutorials about ABAP for SAP HANA
And I will look forward to learn HANA. And as you mentioned
yes, yes, and yes .
an inspiring line with yes ++. we do have application logics but based on business requirement so I can't say on that.But it will surely help me a lot.
BR
// Gaurav Gautam -
Hello,
i have been learning abap for almost 2 months now and I have been doing a lot of in book tutorials. I was wondering are if there were any resources or study flow that needs to be followed. Like in java the persons first program is a hello world print statement , which is followed by loops , data structures, oops , etc. and also there are boat loads of practice exercises on the web . I was just wondering if such a thing or place exists on the web for abap. As I am planning to write the taw10 certification , I just wanted to make sure I well equipped for the exam and future interviews .
THanks,
venkataHi Venkata,
Getting Started with ABAP Application Development as mentioned above is a good place to begin the ABAP.
You can visit my web-site for some basic help on step by step tutorials with screenshots on specific ABAP topics. It also have separate Question and Answers and Downloads section as you wanted. -
Using the Execute Preloaded Option for ABAP Dataflows in SAP BODS
Hello All,
This is regarding the use of Advanced Option in SAP Application Type (ECC) Datastore settings in SAP BODS 4.2, where there are two options to select from for ABAP Execution Option property: (1)Generate and Execute and (2) Execute Preloaded. Since our ECC client is often locked by BASIS team even on DEV environment, we would like to make use of the second option 'Execute Preloaded' so that we could extract the data from ECC tables without having to ask the BASIS team to unlock the ECC client every time before extraction.
The problem is that we are getting an error upon generating and uploading the ABAP program to ECC client. I have searched the blogs and so far I have only found that there are certain ABAP programs or function modules that come with SAP BODS which need to be installed by BASIS team on ECC side to allow the ABAP dataflows to be generated and uploaded to ECC server. I would appreciate it if anyone could provide a list of which function modules BASIS needs to install on ECC or a blog that provides details around using this option.
So far, from the SAP BODS designer, we are performing below steps but getting an error upon generating and uploading the ABAP dataflow program:
1. Create a test ABAP Dataflow using SAP ECC datastore. Provide the ABAP program options.
2. Right click, select Generate ABAP Program.
3. Once the ABAP Program Generation Dialog box appears, check the box "Upload Generated Program".
4. Upon clicking OK, we are getting the following error:
The ABAP program <ZRTEST01> for ABAP data flow <RT_TEST_R3> (datastore <R3_DS>) was not uploaded: < RFC CallReceive error <Function /BODS/RFC_ABAP_INSTALL_AND_RUN: RFC_ABAP_MESSAGE- Exception condition "NOT_SUPPORTED_BY_GUI" trigger[SAP NWRFC 720][SAP Partner ### ][clientname][servername][accountname][4103]>. >.
Any help would be greatly appreciated.
Thanks,
RizwanAll,
The BASIS team reviewed steps provided in the BODS document and attempted to install the Function Modules but now none of the BODS jobs would work. All BODS jobs are being terminted with the Syntax Error error when extracting data from ECC using ABAP dataflows:
17740 16404 R3C-150412 06/17/2014 9:38:46 AM |Data flow RT_DF_TEST_PC207
17740 16404 R3C-150412 06/17/2014 9:38:46 AM RFC CallReceive error <Function /BODS/RFC_ABAP_INSTALL_AND_RUN: RFC_ABAP_RUNTIME_FAILURE-(Exception_Key: SYNTAX_ERROR)- Syntax
17740 16404 R3C-150412 06/17/2014 9:38:46 AM error in program /BODS/SAPLBODS .[SAP NWRFC 720][SAP Partner 740 ][DEV1][Server][account][4103]>.
22052 20572 R3C-150412 06/17/2014 9:38:46 AM |Data flow RT_DF_TEST_PC207
22052 20572 R3C-150412 06/17/2014 9:38:46 AM RFC CallReceive error <Function /BODS/RFC_ABAP_INSTALL_AND_RUN: RFC_ABAP_RUNTIME_FAILURE-(Exception_Key: SYNTAX_ERROR)- Syntax
22052 20572 R3C-150412 06/17/2014 9:38:46 AM error in program /BODS/SAPLBODS .[SAP NWRFC 720][SAP Partner 740 ][DEV1][Server][account][4103]>. -
How can we use TABLE CONTROL in BDC and WORK FLOW of ABAP.
how can we use TABLE CONTROL in BDC and WORK FLOW of ABAP.?
please explain the important questions.How to deal with table control / step loop in BDC
Steploop and table contol is inevitable in certain transactions. When we run BDC for such transactions, we will face the situation: how many visible lines of steploop/tablecontrol are on the screen? Although we can always find certain method to deal with it, such as function code 'NP', 'POPO', considering some extreme situation: there is only one line visible one the screen, our BDC program should display an error message. (See transaction 'ME21', we you resize your screen to let only one row visible, you can not enter mutiple lines on this screen even you use 'NP')
Now with the help of Poonam on sapfans.com developement forum, I find a method with which we can determine the number of visible lines on Transaction Screen from our Calling BDC program. Maybe it is useless to you, but I think it will give your some idea.
Demo ABAP code has two purposes:
1. how to determine number of visible lines and how to calculte page number;
(the 'calpage' routine has been modify to meet general purpose usage)
2. using field symbol in BDC program, please pay special attention to the difference in Static ASSIGN and Dynamic ASSIGN.
Now I begin to describe the step to implement my method:
(I use transaction 'ME21', screen 121 for sample,
the method using is Call Transation Using..)
Step1: go to screen painter to display the screen 121, then we can count the fixed line on this screen, there is 7 lines above the steploop and 2 lines below the steploop, so there are total 9 fixed lines on this screen. This means except these 9 lines, all the other line is for step loop. Then have a look at steploop itselp, one entry of it will occupy two lines.
(Be careful, for table control, the head and the bottom scroll bar will possess another two fixed lines, and there is a maximum number for table line)
Now we have : FixedLine = 9
LoopLine = 2(for table control, LoopLine is always equal to 1)
Step2: go to transaction itself(ME21) to see how it roll page, in ME21, the first line of new page is always occupied by the last line of last page, so it begin with index '02', but in some other case, fisrt line is empty and ready for input.
Now we have: FirstLine = 0
or FirstLine = 1 ( in our case, FirstLine is 1 because the first line of new page is fulfilled)
Step3: write a subroutine calcalculating number of pages
(here, the name of actual parameter is the same as formal parameter)
global data: FixedLine type i, " number of fixed line on a certain screen
LoopLine type i, " the number of lines occupied by one steploop item
FirstLine type i, " possbile value 0 or 1, 0 stand for the first line of new " scrolling screen is empty, otherwise is 1
Dataline type i, " number of items you will use in BDC, using DESCRIBE to get
pageno type i, " you need to scroll screen how many times.
line type i, " number of lines appears on the screen.
index(2) type N, " the screen index for certain item
begin type i, " from parameter of loop
end type i. " to parameter of loop
*in code sample, the DataTable-linindex stands for the table index number of this line
form calpage using FixedLine type i (see step 1)
LoopLine type i (see step 1)
FirstLine type i (see step 2)
DataLine type i ( this is the item number you will enter in transaction)
changing pageno type i (return the number of page, depends on run-time visible line in table control/ Step Loop)
changing line type i.(visible lines one the screen)
data: midd type i,
vline type i, "visible lines
if DataLine eq 0.
Message eXXX.
endif.
vline = ( sy-srows - FixedLine ) div LoopLine.
*for table control, you should compare vline with maximum line of
*table control, then take the small one that is min(vline, maximum)
*here only illustrate step loop
if FirstLine eq 0.
pageno = DataLine div vline.
if pageno eq 0.
pageno = pageno + 1.
endif.
elseif FirstLine eq 1.
pageno = ( DataLine - 1 ) div ( vline - 1 ) + 1.
midd = ( DataLine - 1 ) mod ( vline - 1).
if midd = 0 and DataLine gt 1.
pageno = pageno - 1.
endif.
endif.
line = vline.
endform.
Step4 write a subroutine to calculate the line index for each item.
form calindex using Line type i (visible lines on the screen)
FirstLine type i(see step 2)
LineIndex type i(item index)
changing Index type n. (index on the screen)
if FirstLine = 0.
index = LineIndex mod Line.
if index = '00'.
index = Line.
endif.
elseif FirstLine = 1.
index = LineIndex mod ( Line - 1 ).
if ( index between 1 and 0 ) and LineIndex gt 1.
index = index + Line - 1.
endif.
if Line = 2.
index = index + Line - 1.
endif.
endif.
endform.
Step5 write a subroutine to calculate the loop range.
form calrange using Line type i ( visible lines on the screen)
DataLine type i
FirstLine type i
loopindex like sy-index
changing begin type i
end type i.
If FirstLine = 0.
if loopindex = 1.
begin = 1.
if DataLine <= Line.
end = DataLine.
else.
end = Line.
endif.
elseif loopindex gt 1.
begin = Line * ( loopindex - 1 ) + 1.
end = Line * loopindex.
if end gt DataLine.
end = DataLine.
endif.
endif.
elseif FirstLine = 1.
if loopindex = 1.
begin = 1.
if DataLine <= Line.
end = DataLine.
else.
end = Line.
endif.
elseif loop index gt 1.
begin = ( Line - 1 ) * ( loopindex - 1 ) + 2.
end = ( Line - 1 ) * ( loopindex - 1 ) + Line.
if end gt DataLine.
end = DataLine.
endif.
endif.
endif.
endform.
Step6 using field sysbol in your BDC, for example: in ME21, but you should calculate each item will correponding to which index in steploop/Table Control
form creat_bdc.
field-symbols: <material>, <quan>, <indicator>.
data: name1(14) value 'EKPO-EMATN(XX)',
name2(14) value 'EKPO-MENGE(XX)',
name3(15) value 'RM06E-SELKZ(XX)'.
assign: name1 to <material>,
name2 to <quan>,
name3 to <indicator>.
do pageno times.
if sy-index gt 1
*insert scroll page ok_code"
endif.
perform calrange using Line DataLine FirstLine sy-index
changing begin end.
loop at DataTable from begin to end.
perform calindex using Line FirstLine DataTable-LineIndex changing Index.
name1+11(2) = Index.
name2+11(2) = Index.
name3+12(2) = Index.
perform bdcfield using <material> DataTable-matnr.
perform bdcfield using <quan> DataTable-menge.
perform bdcfield using <indicator> DataTable-indicator.
endloop.
enddo.
An example abap program of handling Table Control during bdc programming.
REPORT zmm_bdcp_purchaseorderkb02
NO STANDARD PAGE HEADING LINE-SIZE 255.
Declaring internal tables *
*-----Declaring line structure
DATA : BEGIN OF it_dummy OCCURS 0,
dummy(255) TYPE c,
END OF it_dummy.
*-----Internal table for line items
DATA : BEGIN OF it_idata OCCURS 0,
ematn(18), "Material Number.
menge(13), "Qyantity.
netpr(11), "Net Price.
werks(4), "Plant.
ebelp(5), "Item Number.
END OF it_idata.
*-----Deep structure for header data and line items
DATA : BEGIN OF it_me21 OCCURS 0,
lifnr(10), "Vendor A/c No.
bsart(4), "A/c Type.
bedat(8), "Date of creation of PO.
ekorg(4), "Purchasing Organisation.
ekgrp(3), "Purchasing Group.
x_data LIKE TABLE OF it_idata,
END OF it_me21.
DATA : x_idata LIKE LINE OF it_idata.
DATA : v_delimit VALUE ','.
DATA : v_indx(3) TYPE n.
DATA : v_fnam(30) TYPE c.
DATA : v_count TYPE n.
DATA : v_ne TYPE i.
DATA : v_ns TYPE i.
*include bdcrecx1.
INCLUDE zmm_incl_purchaseorderkb01.
Search help for file *
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
CALL FUNCTION 'F4_FILENAME'
EXPORTING
program_name = syst-cprog
dynpro_number = syst-dynnr
IMPORTING
file_name = p_file.
START-OF-SELECTION.
To upload the data into line structure *
CALL FUNCTION 'WS_UPLOAD'
EXPORTING
filename = p_file
filetype = 'DAT'
TABLES
data_tab = it_dummy.
Processing the data from line structure to internal tables *
REFRESH:it_me21.
CLEAR :it_me21.
LOOP AT it_dummy.
IF it_dummy-dummy+0(01) = 'H'.
v_indx = v_indx + 1.
CLEAR it_idata.
REFRESH it_idata.
CLEAR it_me21-x_data.
REFRESH it_me21-x_data.
SHIFT it_dummy.
SPLIT it_dummy AT v_delimit INTO it_me21-lifnr
it_me21-bsart
it_me21-bedat
it_me21-ekorg
it_me21-ekgrp.
APPEND it_me21.
ELSEIF it_dummy-dummy+0(01) = 'L'.
SHIFT it_dummy.
SPLIT it_dummy AT v_delimit INTO it_idata-ematn
it_idata-menge
it_idata-netpr
it_idata-werks
it_idata-ebelp.
APPEND it_idata TO it_me21-x_data.
MODIFY it_me21 INDEX v_indx.
ENDIF.
ENDLOOP.
To open the group *
PERFORM open_group.
To populate the bdcdata table for header data *
LOOP AT it_me21.
v_count = v_count + 1.
REFRESH it_bdcdata.
PERFORM subr_bdc_table USING: 'X' 'SAPMM06E' '0100',
' ' 'BDC_CURSOR' 'EKKO-LIFNR',
' ' 'BDC_OKCODE' '/00',
' ' 'EKKO-LIFNR' it_me21-lifnr,
' ' 'RM06E-BSART' it_me21-bsart,
' ' 'RM06E-BEDAT' it_me21-bedat,
' ' 'EKKO-EKORG' it_me21-ekorg,
' ' 'EKKO-EKGRP' it_me21-ekgrp,
' ' 'RM06E-LPEIN' 'T'.
PERFORM subr_bdc_table USING: 'X' 'SAPMM06E' '0120',
' ' 'BDC_CURSOR' 'RM06E-EBELP',
' ' 'BDC_OKCODE' '/00'.
MOVE 1 TO v_indx.
*-----To populate the bdcdata table for line item data
LOOP AT it_me21-x_data INTO x_idata.
CONCATENATE 'EKPO-EMATN(' v_indx ')' INTO v_fnam.
PERFORM subr_bdc_table USING ' ' v_fnam x_idata-ematn.
CONCATENATE 'EKPO-MENGE(' v_indx ')' INTO v_fnam.
PERFORM subr_bdc_table USING ' ' v_fnam x_idata-menge.
CONCATENATE 'EKPO-NETPR(' v_indx ')' INTO v_fnam.
PERFORM subr_bdc_table USING ' ' v_fnam x_idata-netpr.
CONCATENATE 'EKPO-WERKS(' v_indx ')' INTO v_fnam.
PERFORM subr_bdc_table USING ' ' v_fnam x_idata-werks.
v_indx = v_indx + 1.
PERFORM subr_bdc_table USING: 'X' 'SAPMM06E' '0120',
' ' 'BDC_CURSOR' 'RM06E-EBELP',
' ' 'BDC_OKCODE' '/00'.
ENDLOOP.
PERFORM subr_bdc_table USING: 'X' 'SAPMM06E' '0120',
' ' 'BDC_CURSOR' 'RM06E-EBELP',
' ' 'BDC_OKCODE' '=BU'.
PERFORM bdc_transaction USING 'ME21'.
ENDLOOP.
PERFORM close_group.
End of selection event *
END-OF-SELECTION.
IF session NE 'X'.
*-----To display the successful records
WRITE :/10 text-001. "Sucess records
WRITE :/10 SY-ULINE(20).
SKIP.
IF it_sucess IS INITIAL.
WRITE :/ text-002.
ELSE.
WRITE :/ text-008, "Total number of Succesful records
35 v_ns.
SKIP.
WRITE:/ text-003, "Vendor Number
17 text-004, "Record number
30 text-005. "Message
ENDIF.
LOOP AT it_sucess.
WRITE:/4 it_sucess-lifnr,
17 it_sucess-tabix CENTERED,
30 it_sucess-sucess_rec.
ENDLOOP.
SKIP.
*-----To display the erroneous records
WRITE:/10 text-006. "Error Records
WRITE:/10 SY-ULINE(17).
SKIP.
IF it_error IS INITIAL.
WRITE:/ text-007. "No error records
ELSE.
WRITE:/ text-009, "Total number of erroneous records
35 v_ne.
SKIP.
WRITE:/ text-003, "Vendor Number
17 text-004, "Record number
30 text-005. "Message
ENDIF.
LOOP AT it_error.
WRITE:/4 it_error-lifnr,
17 it_error-tabix CENTERED,
30 it_error-error_rec.
ENDLOOP.
REFRESH it_sucess.
REFRESH it_error.
ENDIF.
CODE IN INCLUDE.
Include ZMM_INCL_PURCHASEORDERKB01
DATA: it_BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE.
DATA: it_MESSTAB LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.
DATA: E_GROUP_OPENED.
*-----Internal table to store sucess records
DATA:BEGIN OF it_sucess OCCURS 0,
msgtyp(1) TYPE c,
lifnr LIKE ekko-lifnr,
tabix LIKE sy-tabix,
sucess_rec(125),
END OF it_sucess.
DATA: g_mess(125) type c.
*-----Internal table to store error records
DATA:BEGIN OF it_error OCCURS 0,
msgtyp(1) TYPE c,
lifnr LIKE ekko-lifnr,
tabix LIKE sy-tabix,
error_rec(125),
END OF it_error.
Selection screen
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS session RADIOBUTTON GROUP ctu. "create session
SELECTION-SCREEN COMMENT 3(20) text-s07 FOR FIELD session.
SELECTION-SCREEN POSITION 45.
PARAMETERS ctu RADIOBUTTON GROUP ctu. "call transaction
SELECTION-SCREEN COMMENT 48(20) text-s08 FOR FIELD ctu.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 3(20) text-s01 FOR FIELD group.
SELECTION-SCREEN POSITION 25.
PARAMETERS group(12). "group name of session
SELECTION-SCREEN COMMENT 48(20) text-s05 FOR FIELD ctumode.
SELECTION-SCREEN POSITION 70.
PARAMETERS ctumode LIKE ctu_params-dismode DEFAULT 'N'.
"A: show all dynpros
"E: show dynpro on error only
"N: do not display dynpro
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 48(20) text-s06 FOR FIELD cupdate.
SELECTION-SCREEN POSITION 70.
PARAMETERS cupdate LIKE ctu_params-updmode DEFAULT 'L'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 3(20) text-s03 FOR FIELD keep.
SELECTION-SCREEN POSITION 25.
PARAMETERS: keep AS CHECKBOX. "' ' = delete session if finished
"'X' = keep session if finished
SELECTION-SCREEN COMMENT 48(20) text-s09 FOR FIELD e_group.
SELECTION-SCREEN POSITION 70.
PARAMETERS e_group(12). "group name of error-session
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 51(17) text-s03 FOR FIELD e_keep.
SELECTION-SCREEN POSITION 70.
PARAMETERS: e_keep AS CHECKBOX. "' ' = delete session if finished
"'X' = keep session if finished
SELECTION-SCREEN END OF LINE.
PARAMETERS:p_file LIKE rlgrap-filename.
at selection screen *
AT SELECTION-SCREEN.
group and user must be filled for create session
IF SESSION = 'X' AND
GROUP = SPACE. "OR USER = SPACE.
MESSAGE E613(MS).
ENDIF.
create batchinput session *
FORM OPEN_GROUP.
IF SESSION = 'X'.
SKIP.
WRITE: /(20) 'Create group'(I01), GROUP.
SKIP.
*----open batchinput group
CALL FUNCTION 'BDC_OPEN_GROUP'
EXPORTING
CLIENT = SY-MANDT
GROUP = GROUP
USER = sy-uname.
WRITE:/(30) 'BDC_OPEN_GROUP'(I02),
(12) 'returncode:'(I05),
SY-SUBRC.
ENDIF.
ENDFORM. "OPEN_GROUP
end batchinput session *
FORM CLOSE_GROUP.
IF SESSION = 'X'.
*------close batchinput group
CALL FUNCTION 'BDC_CLOSE_GROUP'.
WRITE: /(30) 'BDC_CLOSE_GROUP'(I04),
(12) 'returncode:'(I05),
SY-SUBRC.
ELSE.
IF E_GROUP_OPENED = 'X'.
CALL FUNCTION 'BDC_CLOSE_GROUP'.
WRITE: /.
WRITE: /(30) 'Fehlermappe wurde erzeugt'(I06).
ENDIF.
ENDIF.
ENDFORM. "CLOSE_GROUP
Start new transaction according to parameters *
FORM BDC_TRANSACTION USING TCODE TYPE ANY.
DATA: L_SUBRC LIKE SY-SUBRC.
*------batch input session
IF SESSION = 'X'.
CALL FUNCTION 'BDC_INSERT'
EXPORTING
TCODE = TCODE
TABLES
DYNPROTAB = it_BDCDATA.
WRITE: / 'BDC_INSERT'(I03),
TCODE,
'returncode:'(I05),
SY-SUBRC,
'RECORD:',
SY-INDEX.
ELSE.
REFRESH it_MESSTAB.
CALL TRANSACTION TCODE USING it_BDCDATA
MODE CTUMODE
UPDATE CUPDATE
MESSAGES INTO it_MESSTAB.
L_SUBRC = SY-SUBRC.
WRITE: / 'CALL_TRANSACTION',
TCODE,
'returncode:'(I05),
L_SUBRC,
'RECORD:',
SY-INDEX.
ENDIF.
Message handling for Call Transaction *
perform subr_mess_hand using g_mess.
*-----Erzeugen fehlermappe
IF L_SUBRC <> 0 AND E_GROUP <> SPACE.
IF E_GROUP_OPENED = ' '.
CALL FUNCTION 'BDC_OPEN_GROUP'
EXPORTING
CLIENT = SY-MANDT
GROUP = E_GROUP
USER = sy-uname
KEEP = E_KEEP.
E_GROUP_OPENED = 'X'.
ENDIF.
CALL FUNCTION 'BDC_INSERT'
EXPORTING
TCODE = TCODE
TABLES
DYNPROTAB = it_BDCDATA.
ENDIF.
REFRESH it_BDCDATA.
ENDFORM. "BDC_TRANSACTION
Form subr_bdc_table *
text
-->P_0220 text *
-->P_0221 text *
-->P_0222 text *
FORM subr_bdc_table USING VALUE(P_0220) TYPE ANY
VALUE(P_0221) TYPE ANY
VALUE(P_0222) TYPE ANY.
CLEAR it_bdcdata.
IF P_0220 = ' '.
CLEAR it_bdcdata.
it_bdcdata-fnam = P_0221.
it_bdcdata-fval = P_0222.
APPEND it_bdcdata.
ELSE.
it_bdcdata-dynbegin = P_0220.
it_bdcdata-program = P_0221.
it_bdcdata-dynpro = P_0222.
APPEND it_bdcdata.
ENDIF.
ENDFORM. " subr_bdc_table
Form subr_mess_hand *
text *
-->P_G_MESS text *
FORM subr_mess_hand USING P_G_MESS TYPE ANY.
LOOP AT IT_MESSTAB.
CALL FUNCTION 'FORMAT_MESSAGE'
EXPORTING
ID = it_messtab-msgid
LANG = it_messtab-msgspra
NO = it_messtab-msgnr
v1 = it_messtab-msgv1
v2 = it_messtab-msgv2
IMPORTING
MSG = P_G_MESS
EXCEPTIONS
OTHERS = 0.
CASE it_messtab-msgtyp.
when 'E'.
it_error-error_rec = P_G_MESS.
it_error-lifnr = it_me21-lifnr.
it_error-tabix = v_count.
APPEND IT_ERROR.
when 'S'.
it_sucess-sucess_rec = P_G_MESS.
it_sucess-lifnr = it_me21-lifnr.
it_sucess-tabix = v_count.
APPEND IT_SUCESS.
endcase.
ENDLOOP.
Describe table it_sucess lines v_ns.
Describe table it_error lines v_ne.
ENDFORM. " subr_mess_hand
Also refer
http://sap.ittoolbox.com/groups/technical-functional/sap-dev/bdc-table-control-668404
and
http://www.sap-img.com/abap/bdc-example-using-table-control-in-bdc.htm
Regards,
srinivas
<b>*reward for useful answers*</b> -
Do we need to be in unicode to use webdynpro for abap in ECC6 ?
Hello,
we study migration to SAPR3 46C SR2 to ECC6.
a question is: Do we need to be in unicode to use webdynpro for abap in ECC6 ?
Our SAPR3 are in non unicode
thanksThe problem, if you backend system is not unicode, can be, that user with the browser accessing the Webdynpro page, can enter data of any codepage (because browser is Unicode), the data will then be stored with a wrong codepage in the system and will be destroyed.
Additionally all successor versions of ERP will be Unicode only.
And on top of that, if you plan to use Java components (such as a portal), the backend must be Unicode (see Note 975768 - Deprecation of Java features with non-Unicode Backend).
Markus -
Detail business flow for sd and mm
any body have the business flow for the sd and mm . please give me the link............if other modules also these ple pass the link ......
link: [http://www.sap-basis-abap.com/sd/sap-sd-processing-flow.htm]
link: [http://www.sap-basis-abap.com/mm/sap-mm-tables-link.htm]
link: [www.sap-img.com]
regards.
santhosh reddy
<REMOVED BY MODERATOR>
Edited by: Alvaro Tejada Galindo on Jan 30, 2008 2:39 PM -
Functional knowlwdge for abap/xi developer
hi
i am new to sap. I am learning abap and xi. I was asked a couple of times what are the modules you are comfortable in. please guide me where i can get the functional overview of the different modules necessary in a abap developer perspective. please send me any documents to my email at
[email protected]
thanking you all in anticipation eagerly waiting for help
pavanGo to wwww.google.com ( search flow of SD in SAP ) flow of HR in SAP ) flow of abc module in SAP .
Dont mind , but it always good to search your self again first . I mean finding in google.com , and SDN .. Most of the time youll definitely get answer .
Peoples asked about functional knowledge , because if you know the flows you can understand the business process and write good program and also give input . You can also see different angles of 1 view. I must say its not obligatory for ABAP`er but it always a Plus point
Thanks and Good luck !!
Saquib -
Webdynpro for ABAP call non-SAP webservice
Hi,
We have a WAS 7.0 ABAP only, Can we use webdynpro for ABAP to call a Notes's webservice or Weblogic's webservice.
Where can I get the document link?
Edited by: Jeff Lien on Jan 8, 2008 10:47 AM
Edited by: Jeff Lien on Jan 8, 2008 10:49 AMHi this will help u.
Web Dynpro ABAP
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/db22242d-0701-0010-28a2-aeaa1fefd706
Hope that the following also helps you.
Web Dynpro for ABAP (WD4A, WDA) is the SAP standard UI technology for developing Web
applications in the ABAP environment. It consists of a runtime environment and a graphical
development environment with special Web Dynpro tools that are integrated in the ABAP
Workbench (SE80).
Web Dynpro offers the following advantages for application developers:
The use of declarative and graphical tools significantly reduces the implementation
effort
Web Dynpro supports a structured design process
Strict separation between layout and business data
Reuse and better maintainability by using components
The layout and navigation is easily changed using the Web Dynpro tools
Stateful applications are supported that is, if the page is changed and the required
data remains intact so that you can access it at any time throughout the entire
application context.
Note that stateless applications are not possible.
Automatic data transport using data binding
Automatic input check
Automatic operation of the Web Dynpro application using the keyboard
User interface accessibility is supported
Full integration in the reliable ABAP development environment
Web Dynpro Architecture
Definition
Web Dynpro is the SAP NetWeaver programming model for user interfaces (UIs).
The Web Dynpro model is based on the Model View Controller paradigm, and has the
following features that build on the classic dynpro model:
Clear separation of business logic and display logic
Uniform metamodel for all types of user interfaces
Execution on a number of client platforms.
Extensive platform independence of interfaces
Structure
Metamodel Concept
Web Dynpro provides support for developing Web representation of a business application.
You use specific tools to describe the properties of a Web Dynpro application in the form of
Web Dynpro metadata. The necessary source code is then generated automatically and
executed at runtime. In addition to the events offered by the framework, you can also define
your own events for a Web Dynpro application. However, the event handling must always be
programmed in separate source code areas which are executed automatically when the event
is triggered at runtime.
In Web Dynpro, each user interface is always made up of the same basic elements. These
elements of the metamodel can be statically declared using Web Dynpro tools.
It is also possible to implement elements of the metamodel at runtime and to change them or
reintegrate them at runtime. Using these implementations, you can make any changes or
enhancements to a user interface that has been created by declarative methods by
generating new interface structures at runtime.
This means that you can combine declarative processes and the implementation of source
code.
Graphical Development Tools
To support this declarative concept, both the SAP NetWeaver Developer Studio and the
ABAP Workbench contain a range of Web Dynpro tools. You can therefore generate a large
proportion of a Web Dynpro application using the tools provided, without having to create your
own source code. This applies to the following parts of the application:
Data flow between the front end and back end
Layout of the user interface
Properties of user interface elements
The Web Dynpro tools enable you to create source text areas manually within generated
source texts. These areas are not changed if the source code is regenerated.
Separation of Business and Application Logic
Using Web Dynpro enables a clear separation of business logic and display logic. A Web
Dynpro application runs on the front end and has local or remote access to the back end
system via a service. This means that the display logic is contained in the Web Dynpro
application, while the business logic and the persistence of the business objects run in the
back end system. The following options are currently available for connecting Web Dynpro
applications and the back-end system:
An interface generated using adaptive RFC, through which BAPIs of an SAP system
can be called
An interface for calling Web services
A self-generated interface
The source code required for connecting the Web Dynpro application can be generated
from a UML definition of the Web Dynpro interface. A UML definition can be imported
into the Web Dynpro tools as an XML file.
Conversion of the Model-View-Controller
Conversion of the Model-View-Controller Programming Model
Every Web Dynpro application is structured according to the Model View Controller
programming model:
The model forms the interface to the back end system and thus enables the
Web Dynpro application access to data.
The view is responsible for the representation of the data in the browser.
The controller lies between the view and the model. The controller formats
the model data to be displayed in the view, processes the user entries made by the
user, and returns them to the model.
/people/thomas.jung/blog/2006/06/20/web-dynpro-abap-demonstration-videos
http://help.sap.com/saphelp_nw04s/helpdata/en/77/3545415ea6f523e10000000a155106/frameset.htm
with regards,
Hema.
pls give points if helpful. -
Comparison between WebDynpro for ABAP vs. WebDynpro for Java ??
Hi,
Can someone tell me when should we go for WebDynpro for ABAP and when WebDynpro for Java. Is there any link where SAP recommends the one for the other.
Thanks in advance
Regards
MukeshHi Mukesh,
Both are having its own strengths!! )
I think it all depends on your project requirement and the availabel resources.
If the developer is good in OOPs ABAP then he must go for Web Dynpro ABAP. But if anyone is good in JAVA then that person should go for Web Dynpro JAVA.
*In Short almost all Features supported in webdynpro ABAP are also Possible in webdynpro Java.
1] Webdynpro Java
Supports,
webservice
RFC Models
Accessing Portal information in Java
Easy sending E-mail
Strictly follows MVC architecture which seperate Business logic and Process flow.
Webdynpro Java is webbased programming model to develop SAP Applications.
Easy to learn
Easy to integrate in Enter prise portals.
Dynanamic Programming
*Easy access to R/3 Via RFC technology (Models)
2] Web Dynpro ABAP
As the name suggests Web Dynpro for ABAP uses exactly the same meta model as its cousin Web Dynpro for Java. A Web Dynpro component, a Web Dynpro view, a Web Dynpro model, a Web Dynpro controller have the same semantics both for ABAP and Java. The main difference is the designtime environment, the development infrastructure and the runtime environment.
The designtime environment is properly embedded in the ABAP Workbench where Web Dynpro artifacts are simply a new category like BSP applications or classical dynpro based applications before. Also no surprises regarding the development infrastructure. The correction and transport system keeps track on all changes that are done, versions them and helps to propagate the Web Dynpro application from development to production like you would do with ordinary BSP or dynpro-based applications.
Last not least the execution platform is the ABAP server that produces application content ready to be integrated in the NetWeaver Portal seamlessly. Features like portal eventing can be used between applications written in ABAP or applications developed with Java.
Hope this helps and solve your Problem
Cheers,
Darshna. -
FICO overveiw docs for ABAP consultants
hi
can any one
send me FICO overview documents, which are very help for ABAP consultants. if any one will send it , i will get a great help from ur side, because
i am new to the FICO, and iam not the finance background, so iam facing lot of problems
thanks & regards
narendraFI Financial Accounting
designed for automated management and external reporting of general ledger, accounts receivable, accounts payable and other sub-ledger accounts with a user defined chart of accounts. As entries are made relating to sales production and payments journal entries are automatically posted. This connection means that the "books" are designed to reflect the real situation.
The FI module has 8 sub modules:
FI-GL
General Ledger Accounting
FI-LC
Consolidation
FI-AP
Accounts Payable
FI-AR
Accounts Receivable
FI-BL
Bank Accounting
FI-AA
Asset Accounting
FI-SL
Special Purpose Ledger
FI-FM
Funds Management
CO Controlling
represents the company's flow of cost and revenue. It is a management instrument for organizational decisions. It too is automatically updated as events occur.
The CO module has following sub modules:
CO-OM
Overhead Costing (Cost Centers, Activity Based Costing, Internal Order Costing)
CO-PA
Profitability Analysis
CO-PC
Product Cost Controlling
for tables check out link..
http://www.sapgenie.com/abap/tables_fi.htm
Take a look at this.
http://www.sap-img.com/sap-fi.htm
Please chcek this link and go to SAP R/3 Enterprise Application Components ->
Cross-Application Components -> Financial.
http://help.sap.com/saphelp_470/helpdata/en/e1/8e51341a06084de10000009b38f83b/frameset.htm -
Web Dynpro for ABAP: Tutorial 2 - BAPI Usage
Hi ,
I am new in WD for ABAP and i trying to finish tutorials from SDN. The Second tutorial
"Web Dynpro for ABAP: Tutorial 2 -BAPI Usage" is giving me headache .I was following the tutorial in a letter ,
but the table is not filled d after I hit "search" button. Does someone had same experience and possible solution.
Thanks
ChrisActually in this application the data that is required is flowing. So I have tried making the import parameters as the controller attributes in spite of context node in the service call. Then it passes the data into the import parameters as WD_THIS->KUNNR.
But still when I am debugging the data is not coming. What could be the issue. -
Floor Plan Manager Technique in Web Dynpro for ABAP
Hi Experts,
Road map technique and Floor Plan Manager Technique, both are same or different.
I need to develop a web dynpro application based on Floor Plan Manager Technique. can I develop this application in WebDynpro for ABAP. If so please help me how to use Floor Plan Manager Technique in Web Dynpro for ABAP.
I don't have knowledge in java, so i cann't develop this application in web dypro for java.
Please help me.
Thanks & Regards
Sridhar>Road map technique and Floor Plan Manager Technique, both are same or different.
They are different. The FloorPlan Manager is a tool for constructing WD applications with a similar layout and user interface. There are two different floor plans currently - the OIF - Object Instance Floorplan and the GAF - Guided Activity Floorplan. The OIF is for the editing of a single business object. It allows for things like the nesting of header and item details. The GAF, on the other hand, uses a road map to walk you through an activity - much like a Guided Procedure. The FloorPlan Manager is very powerful because it can be configured using component and application configuration - allowing you to plug in different UI Building Blocks (UIBB) as Web Dynpro Components or Views. You can change the roadmap, for instance, adding a new step by just chaning this configuration and not having to touch the code. Consistency between applications is also a major stregth of the FloorPlan Manager.
The Road Map is just a UI element in WD. It can be used to create your own custom applications.
>can I develop this application in WebDynpro for ABAP
Sure. The Floorplan manager has been available for WDA since SPS13. Have a look at the packages APB_FPM_DEMO and ABP_FPM_TEST for examples of how to build components designed for the FloorPlan Manager.
Admittedly there aren't a whole lot of documents available on the subject yet. Some eLearning is being worked on now. There are going to be some workshops at TechEd on the subject:
https://wiki.sdn.sap.com/wiki/display/Community/BringitallTogetherwithFPM%28FloorplanManager%29forWebDynpro+ABAP
The best thing to do right now is to study the demo applications SAP provides. -
Dear Gurus,
I have been a Junior SAP SD consultant over the past year and wish to extand my knowledge in ABAP to be more independant in my work. I want to be able to create reports/ queries/ and be able to play with other functionalities.
I can only study from home at the moment as I have limited time due to an ongoing project. I have very limited budget too as I work in one of the poorest country in Europe where salaries are very low.
Could anyone advise me/ put me in the right direction? Does anyone know/ recommend a specific academy or training center I can contact? I am also whilst home studying, looking for one on one coaching with a tutor/ mentor.
Your help is greatly appreciated.
Regards
ChrisThis is not the correct forum to post this and as said by Keshav post it in [suggestions and comments forum|SCN Support;.
Maybe you are looking for
-
How can I get passed the set up page?
I used Time machine from my old computer and used the external hard drive to plug in my new pro. I'm not sure if I just had a lot to put on the pro that it is taking so long, but it's been sitting on the "Thank You. Your Mac is set up and ready to us
-
Purchase Order in reference to contract
Hi, Does anyone know whether i can create purchase order in reference to purchase contract via BAPI? or any other methods? Thanks
-
My used postpaid moto g was accidentally activated on verizon while I was trying to activate it on the tracfone boyp program. The phone was activated on tracfone but I could not dial the number *22890 to finish the activation. The setup wizard on th
-
Taxes on unplanned delivery cost MIRO / MIR7
Dear Experts , I am getting tax calculated on the unplanned delivery costs that i put in the invoice verification - MIR7/MIRO . The unplanned delivery cost is distributed among the line items . I want that no tax should be calculated on unplanned del
-
UOM issue of SR that push from third party integrated software into SAP
Dear SAP Expert/Guru, Would like to seek for your advise what is to be done to check the issue of different UOM created in SR when push from thrid party intrgration software into SAP. The material only being maintained 1 UOM which is PKT however, whe