‎2006 Jun 08 7:40 AM
Hi all,
Iam new to Module programming .
I have table control that contains 3 input fields .
in one field i need to put search help.
in 2nd i need to validate.
after giving input values .
i need to display output data in remaing fields.
Thanks,Rayeez
‎2006 Jun 08 7:48 AM
Hi,
check these demo's
<b>DEMO_DYNPRO_TABCONT_LOOP
DEMO_DYNPRO_TABCONT_LOOP_AT
DEMO_DYNPRO_TABLE_CONTROL_1
DEMO_DYNPRO_TABLE_CONTROL_2
RSDEMO_TABLE_CONTROL
RSDEMO02</b>
Regards
vijay
‎2006 Jun 08 8:03 AM
Hi,
send me ur email id. I hav some good docs on module programming.
also chk this links:
DIALOG Programming:
http://www.allsaplinks.com/dialog_programming.html
http://www.sapbrain.com/TUTORIALS/default.html
http://www.sappoint.com/abap/spmp.pdf
http://www.sap-img.com/abap.htm
http://www.sapdevelopment.co.uk/dialog/dialoghome.htm
http://help.sap.com/saphelp_erp2004/helpdata/en/52/670ba2439b11d1896f0000e8322d00/frameset.htm
rgds,
latheesh
Message was edited by: Latheesh Kaduthara
‎2006 Jun 08 9:20 AM
Hi latheesh,
My mail Id rayeezshaik@yahoo.co.in.
Thanks & Regards,
Rayeez
‎2006 Jun 08 10:10 AM
‎2006 Jun 08 8:09 AM
Hi rayeezuddin shaik,
<b>1</b>.
Start Screen Flow logic like this.
PROCESS BEFORE OUTPUT.
*----
MODULE status_2000.
PROCESS AFTER INPUT.
FIELD i_hrdata-pernr MODULE check_pernr.
<b>Check_pernr module is for Validatatin</b>
MODULE user_command_2000.
<b> user_command_2000 is for populating other fields </b>
PROCESS ON VALUE-REQUEST .
************************
FIELD i_hrdata-docn1 MODULE for_docn1_f4_help.
<b>for_docn1_f4_help is for Search help</b>
&----
text
----
MODULE check_pernr INPUT.
DATA :w_hrdata_1 LIKE i_hrdata .
IF sy-ucomm = 'SAVE' OR
sy-ucomm = 'CHECK' OR
sy-ucomm = 'START'.
READ TABLE i_it0002 WITH KEY mark = 'X'.
IF i_it0002-mark = 'X'.
IF NOT i_hrdata IS INITIAL.
IF NOT i_hrdata-pernr IS INITIAL.
SELECT SINGLE pernr
FROM pa0003
INTO pa0003
WHERE pernr = i_hrdata-pernr.
IF sy-subrc = 0.
MESSAGE e303(me) WITH 'Employee already existed'.
ELSE.
READ TABLE i_hrdata INTO w_hrdata_1
WITH KEY pernr = i_hrdata-pernr.
IF w_hrdata_1-pernr = i_hrdata-pernr.
IF w_hrdata_1-applnno = i_hrdata-applnno.
ELSE.
MESSAGE e303(me)
WITH 'Employee' i_hrdata-pernr 'already assigned to Appln'
w_hrdata_1-applnno .
ENDIF.
ENDIF.
ENDIF.
ELSE.
IF i_it0002-mark = 'X'.
MESSAGE e303(me)
WITH 'Employee number should not be blank in HR inputs details'.
ENDIF.
ENDIF.
ELSE.
MESSAGE e303(me)
WITH 'Employee number should not be blank in HR inputs details'.
ENDIF.
ENDIF.
ENDIF.
CLEAR w_hrdata_1.
ENDMODULE. " check_pernr INPUT
MODULE for_docn1_f4_help INPUT.
DATA :BEGIN OF i_num OCCURS 0 ,
data(5),
text(20),
END OF i_num.
DATA:l_choice LIKE sy-tabix.
CLEAR i_num[].
CLEAR i_num.
CASE cap_ictyp.
WHEN 'F2'.
i_num-data = 'P1'.
i_num-text = 'Employment Pass'.
APPEND i_num.
CLEAR i_num.
i_num-data = 'P2'.
i_num-text = 'Employment Pass'.
APPEND i_num.
CLEAR i_num.
i_num-data = 'Q1'.
i_num-text = 'Employment Pass'.
APPEND i_num.
CLEAR i_num.
i_num-text = 'Employment Pass'.
i_num-data = 'Q2'.
APPEND i_num.
CLEAR i_num.
i_num-data = 'S'.
i_num-text = 'Employment Pass'.
APPEND i_num.
CLEAR i_num.
WHEN 'F1'.
i_num-data = 'R1'.
i_num-text = 'Work Permit'.
APPEND i_num.
CLEAR i_num.
i_num-data = 'R2'.
i_num-text = 'Work Permit'.
APPEND i_num.
CLEAR i_num.
WHEN OTHERS..
ENDCASE.
IF NOT i_num[] IS INITIAL.
CALL FUNCTION 'POPUP_WITH_TABLE_DISPLAY'
EXPORTING
endpos_col = 75
endpos_row = 43
startpos_col = 55
startpos_row = 35
titletext = 'IC types'
IMPORTING
choise = l_choice
TABLES
valuetab = i_num
EXCEPTIONS
break_off = 1
OTHERS = 2.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ELSE.
READ TABLE i_num INDEX l_choice.
IF sy-subrc = 0.
i_hrdata-docn1 = i_num-data.
ENDIF.
ENDIF.
ENDIF.
ENDMODULE. " for_docn1_f4_help INPUT
MODULE user_command_2000 INPUT.
okcode = sy-ucomm.
CLEAR sy-ucomm.
CASE okcode.
*----
Fetching appln data
WHEN 'FETCH'.
PERFORM for_fetching_applndata.
*----
Saving data after changes
WHEN 'SAVE'.
PERFORM for_save.
*----
Checking for data consistency
WHEN 'CHECK'.
PERFORM for_check.
*----
Deleting Applicant details
WHEN 'DELETE'.
PERFORM for_delete.
*----
Selecting all Applns to process
WHEN 'SELECT'.
PERFORM for_select_all.
*----
Deselecting all Applns to process
WHEN 'DESELECT'.
PERFORM for_deselect_all.
*----
Starting processing
WHEN 'START'.
PERFORM for_create_emp.
*----
Calling previous screen
WHEN 'BACK' OR 'CANCEL'.
PERFORM for_back_cancel.
ENDCASE.
ENDMODULE. " user_command_2000 INPUT
<b>2</b>.
Use F4IF_FIELD_VALUE_REQUEST this Function module to get shown values on F4 help.
<b>3</b>.
Best documentation for this is
http://help.sap.com/saphelp_47x200/helpdata/en/d3/2e974d35c511d1829f0000e829fbfe/frameset.htm
<b>Thanks,
Venkat.O</b>