Beruflich Dokumente
Kultur Dokumente
CHAIN.
FIELD:ztender-loc_type,
ztender-rec_type,
ztender-share_type,
ztender-cat_type1.
FIELD:ztender-cat_type.
FIELD:ztender-offer_no.
FIELD:ztender-offer_thru.
MODULE field_validation .
ENDCHAIN.
MODULE user_command_0100.
MODULE get_data. " GET DATA FROM TABLE ON : ZT02
PROCESS ON VALUE-REQUEST.
FIELD: ztender-enq_no MODULE enq_help . " Eng F4 help
FIELD: ztender-company_name MODULE cmp_help . " Cmp F4 Help
TOP:
*&---------------------------------------------------------------------*
*& Include ZTENDER_REPORT_TOP Module Pool ZTENDER_REPORT
*&
*&---------------------------------------------------------------------*
PROGRAM ztender_report.
TABLES: ztender .
BEGIN OF ty_enq_no,
cat_type1 TYPE ztender-cat_type1,
cat_type TYPE ztender-cat_type,
offer_no TYPE ztender-offer_no,
offer_thru TYPE ztender-offer_thru,
enq_no TYPE ztender-enq_no,
END OF ty_enq_no.
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
**** TEXT EDITOR DECLARATION
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
**** WRAPPING TEXT DECLARATION
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
*********** F4 HELP DECLARATION
BEGIN OF ty_cmpf4,
cmp_name TYPE c LENGTH 90,
cmp_city TYPE c LENGTH 30,
cmp_pin TYPE c LENGTH 7,
END OF ty_cmpf4.
*INITIALIZATION.
*ztender-country = 'INDIA'.
*ztender-LOC_TYPE = 'DOMESTIC'.
*ztender-REC_TYPE = 'DIRECT'.
*ztender-SHARE_TYPE = 'ON-SHARE'.
*ztender-CAT_TYPE1 = 'INDIA'.
*ztender-country = 'INDIA'.
*ztender-country = 'INDIA'.
*&---------------------------------------------------------------------*
*& Include ZTENDER_REPORT_O01
*&---------------------------------------------------------------------*
*&---------------------------------------------------------------------*
*& Module STATUS_0100 OUTPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE status_0100 OUTPUT.
SET PF-STATUS 'ZTNDR_PF' .
CASE sy-tcode .
WHEN 'ZT01'.
SET TITLEBAR 'ZTNDR_TITLE'.
WHEN 'ZT02'.
SET TITLEBAR 'ZTNDR_TITLE_EDIT'.
ENDCASE.
CASE sy-tcode .
WHEN 'ZT01'.
lv_ztender = ztender .
SELECT cat_type1
cat_type
offer_no
FROM ztender INTO wa_box1
UP TO 1 ROWS
WHERE cat_type1 EQ lv_ztender-cat_type1
ORDER BY offer_no DESCENDING.
ENDSELECT.
ELSEIF lv_ztender-cat_type1 NE 'BUD' AND sy-ucomm EQ 'FC1'.
SELECT cat_type1
cat_type
offer_no
FROM ztender INTO wa_box1
UP TO 1 ROWS
WHERE cat_type1 EQ lv_ztender-cat_type1 AND
cat_type EQ lv_ztender-cat_type
ORDER BY offer_no DESCENDING.
ENDSELECT.
ENDIF.
CASE sy-ucomm.
WHEN 'FC1'.
PERFORM last_no.
SET CURSOR FIELD 'ZTENDER-OFFER_NO'.
CLEAR: ztender-offer_no, ztender-offer_thru .
WHEN 'FC2'.
IF ztender-cat_type1 EQ 'BUD'.
PERFORM last_no.
SET CURSOR FIELD 'ZTENDER-OFFER_NO'.
CLEAR: ztender-offer_no, ztender-offer_thru.
ELSE.
WHEN 'ZT02'.
CASE sy-ucomm.
WHEN 'FC1'.
SET CURSOR FIELD 'ZTENDER-OFFER_NO'.
WHEN 'FC2'.
IF ztender-cat_type1 EQ 'BUD'.
SET CURSOR FIELD 'ZTENDER-OFFER_NO'.
ELSE.
SET CURSOR FIELD 'ZTENDER-CAT_TYPE'.
ENDIF.
WHEN 'FC3'.
SET CURSOR FIELD 'ZTENDER-ENQ_NO'.
ENDCASE.
ENDCASE.
ENDMODULE. " DATA_SELECT OUTPUT
*&---------------------------------------------------------------------*
*& Module INITILIZE_VALUE OUTPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE initilize_value OUTPUT.
IF sy-tcode EQ 'ZT01'.
IF ztender-country IS INITIAL.
ztender-country = 'INDIA'.
ENDIF.
IF ztender-loc_type IS INITIAL.
ztender-loc_type = 'DOMESTIC'.
ENDIF.
IF ztender-rec_type IS INITIAL.
ztender-rec_type = 'IN-DIRECT'.
ENDIF.
IF ztender-share_type IS INITIAL.
ztender-share_type = 'ON-SHORE'.
ENDIF.
LOOP AT SCREEN .
IF ztender-cat_type1 EQ 'BUD' AND screen-group2 EQ 'G3'.
screen-invisible = 1.
MODIFY SCREEN.
ENDIF.
IF sy-tcode EQ 'ZT01'.
CASE screen-group1.
WHEN 'G1'.
screen-invisible = 1.
MODIFY SCREEN.
ENDCASE.
ELSEIF sy-tcode EQ 'ZT02'.
CASE screen-name .
WHEN 'NO'.
screen-invisible = 1.
MODIFY SCREEN.
WHEN 'ZTENDER-OFFER_THRU' OR
'ZTENDER-LOC_TYPE' OR
'ZTENDER-REC_TYPE' OR
'ZTENDER-SHARE_TYPE' .
screen-input = 0.
MODIFY SCREEN.
ENDCASE.
ENDIF.
ENDLOOP.
IF sy-tcode EQ 'ZT02'.
ztender = lv_ztender.
LOOP AT SCREEN .
CASE screen-group1.
WHEN 'G2'.
screen-input = 0.
MODIFY SCREEN.
WHEN 'G1'.
IF screen-name EQ 'GET_DATA'.
screen-input = 0.
MODIFY SCREEN.
ENDIF.
ENDCASE.
ENDLOOP.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
CLEAR: ztender.
ENDIF.
PERFORM initilize_container.
* PERFORM create_container.
* CASE sy-ucomm .
*
* WHEN 'OK_CODE'.
* PERFORM initilize_container.
* PERFORM create_container.
* """"""""""" set text at screen Method """"""""""
*
** CALL METHOD g_editor1->set_text_as_r3table
** EXPORTING
** table = g_mytable1
** EXCEPTIONS
** error_dp = 1
** error_dp_create = 2
** OTHERS = 3.
** IF sy-subrc <> 0.
*** MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*** WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
** ENDIF.
*
** WHEN 'REFRESH'.
** PERFORM initilize_container.
** PERFORM create_container.
*
* WHEN OTHERS.
*********** INITIALIZE CONTAINER ************
* PERFORM initilize_container.
* PERFORM create_container.
* ENDCASE.
*&---------------------------------------------------------------------*
*& Include ZTENDER_REPORT_I01
*&---------------------------------------------------------------------*
*&---------------------------------------------------------------------*
*& Module USER_COMMAND_0100 INPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE user_command_0100 INPUT.
CASE sy-ucomm.
CLEAR: lv_ztender.
****"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
* ******************* START
********************* WORK DESCRIPTION USING CUSTOM CONTENIER
********************* CREATED BY : SURAJIT MONDAL
********************* CREATED ON : 21 / 03 / 2017
********************* REPORT : ZTENDER_REPORT
PERFORM getdata_contenier.
****""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
ztender-mandt = sy-mandt .
MODIFY ztender.
lv_ztender = ztender .
IF sy-tcode EQ 'ZT01'.
IF sy-subrc EQ 0.
ENDCASE.
CASE sy-ucomm.
PERFORM field_validation.
PERFORM offer_no_validate.
ENDCASE.
SELECT cat_type1
cat_type
offer_no
offer_thru
enq_no
FROM ztender INTO TABLE it_enq_no
WHERE cat_type1 EQ ztender-cat_type1 AND
cat_type EQ ztender-cat_type .
* OFFER_NO EQ ZTENDER-OFFER_NO .
* OFFER_THRU EQ ZTENDER-CAT_TYPE.
ELSE.
sy-subrc = 0 .
MESSAGE 'No Data found on that Catgory Type ' TYPE 'I'.
ENDIF.
ELSE.
MESSAGE 'Please select Catgory Type ' TYPE 'I'.
ENDIF.
IF sy-tcode EQ 'ZT02'.
IF sy-ucomm EQ 'OK_CODE' OR sy-ucomm EQ 'GET_DATA'.
CLEAR: lv_ztender.
ENDSELECT.
ENDIF.
ENDIF.
ENDIF.
ENDMODULE. " GET_DATA INPUT
*&---------------------------------------------------------------------*
*& Module CC_GET_DATA INPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
*MODULE cc_get_data INPUT.
*
*
** if sy-ucomm eq 'SAVE' OR sy-ucomm eq 'SUB'.
*
* CLEAR: lv_ztender.
*
** ******************* START
********************** WORK DESCRIPTION USING CUSTOM CONTENIER
********************** CREATED BY : SURAJIT MONDAL
********************** CREATED ON : 07 / 03 / 2017
********************** REPORT : ZTENDER_REPORT
*
* CALL METHOD g_editor1->get_text_as_r3table
** EXPORTING
** only_when_modified = FALSE
* IMPORTING
* table = g_mytable "" HOLD DESCRIPTION DATA
** is_modified =
* EXCEPTIONS
* error_dp = 1
* error_cntl_call_method = 2
* error_dp_create = 3
* potential_data_loss = 4
* OTHERS = 5
*.
* IF sy-subrc <> 0.
* MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
* WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
* ENDIF.
**ENDIF.
*
*
*ENDMODULE. " CC_GET_DATA INPUT
*&---------------------------------------------------------------------*
*& Module CMP_HELP INPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE cmp_help INPUT.
REFRESH: it_cmpname,it_return,it_cmpf4,it_dfies,it_mapping,it_dynpread.
CLEAR: wa_cmpname, wa_cmpf4,wa_dfies,wa_mapping,wa_dynpread,it_return.
ENDLOOP.
ENDIF.
IF sy-subrc EQ 0 AND NOT it_cmpf4 IS INITIAL.
CASE wa_dfies-fieldname.
WHEN 'COMPANY_NAME'.
wa_dfies-scrtext_m = 'Company Name'.
wa_dfies-position = 1.
wa_dfies-offset = 0.
MODIFY it_dfies FROM wa_dfies.
CLEAR:wa_dfies.
WHEN 'CITY'.
wa_dfies-scrtext_m = 'City'.
wa_dfies-position = 2.
wa_dfies-offset = 180.
MODIFY it_dfies FROM wa_dfies.
CLEAR:wa_dfies.
WHEN 'PINCODE'.
wa_dfies-scrtext_m = 'Pincode'.
wa_dfies-position = 3.
wa_dfies-offset = 240.
MODIFY it_dfies FROM wa_dfies.
CLEAR:wa_dfies.
WHEN OTHERS.
DELETE it_dfies INDEX sy-tabix .
CLEAR:wa_dfies.
ENDCASE.
ENDLOOP.
* DELETE ADJACENT DUPLICATES FROM it_dfies.
wa_mapping-fldname = 'PINCODE'.
wa_mapping-dyfldname = 'ZTENDER-PINCODE'.
APPEND wa_mapping TO it_mapping.
wa_dynpread-fieldname = 'ZTENDER-COMPANY_NAME'.
wa_dynpread-fieldvalue = wa_cmpname-cmp_name .
APPEND wa_dynpread TO it_dynpread.
CLEAR: wa_dynpread.
wa_dynpread-fieldname = 'ZTENDER-CONTACT_PER_NAME'.
wa_dynpread-fieldvalue = wa_cmpname-cmp_cnt_per .
APPEND wa_dynpread TO it_dynpread.
CLEAR: wa_dynpread.
wa_dynpread-fieldname = 'ZTENDER-CONTACT_PER_EMAI'.
wa_dynpread-fieldvalue = wa_cmpname-cmp_email .
APPEND wa_dynpread TO it_dynpread.
CLEAR: wa_dynpread.
wa_dynpread-fieldname = 'ZTENDER-CMPNY_ADDR1'.
wa_dynpread-fieldvalue = wa_cmpname-cmp_add1 .
APPEND wa_dynpread TO it_dynpread.
CLEAR: wa_dynpread.
wa_dynpread-fieldname = 'ZTENDER-CMPNY_ADDR2'.
wa_dynpread-fieldvalue = wa_cmpname-cmp_add2 .
APPEND wa_dynpread TO it_dynpread.
CLEAR: wa_dynpread.
wa_dynpread-fieldname = 'ZTENDER-POST_OFFIC'.
wa_dynpread-fieldvalue = wa_cmpname-cmp_post .
APPEND wa_dynpread TO it_dynpread.
CLEAR: wa_dynpread.
wa_dynpread-fieldname = 'ZTENDER-CITY'.
wa_dynpread-fieldvalue = wa_cmpname-cmp_city .
APPEND wa_dynpread TO it_dynpread.
CLEAR: wa_dynpread.
wa_dynpread-fieldname = 'ZTENDER-STATE'.
wa_dynpread-fieldvalue = wa_cmpname-cmp_state.
APPEND wa_dynpread TO it_dynpread.
CLEAR: wa_dynpread.
wa_dynpread-fieldname = 'ZTENDER-PINCODE'.
wa_dynpread-fieldvalue = wa_cmpname-cmp_pin.
APPEND wa_dynpread TO it_dynpread.
CLEAR: wa_dynpread.
wa_dynpread-fieldname = 'ZTENDER-COUNTRY'.
wa_dynpread-fieldvalue = wa_cmpname-cmp_cntry .
APPEND wa_dynpread TO it_dynpread.
CLEAR: wa_dynpread.
wa_dynpread-fieldname = 'ZTENDER-WEB_ADDRESS'.
wa_dynpread-fieldvalue = wa_cmpname-cmp_web.
APPEND wa_dynpread TO it_dynpread.
CLEAR: wa_dynpread.
wa_dynpread-fieldname = 'ZTENDER-CONTACT_PER_PH_1'.
wa_dynpread-fieldvalue = wa_cmpname-cmp_cnt_ph.
APPEND wa_dynpread TO it_dynpread.
CLEAR: wa_dynpread.
wa_dynpread-fieldname = 'ZTENDER-CONTACT_PER_PH_2'.
wa_dynpread-fieldvalue = wa_cmpname-cmp_cnt_mob.
APPEND wa_dynpread TO it_dynpread.
CLEAR: wa_dynpread.
IF sy-tcode EQ 'ZT01'.
IF ztender-loc_type IS INITIAL.
MESSAGE 'PLEASE SELECT LOCATION TYPE......' TYPE 'E'.
ENDIF.
IF ztender-rec_type IS INITIAL.
MESSAGE 'PLEASE SELECT RECEIVING TYPE......' TYPE 'E'.
ENDIF.
IF ztender-share_type IS INITIAL.
MESSAGE 'PLEASE SELECT SHARE TYPE......' TYPE 'E'.
ENDIF.
ENDIF.
IF ztender-cat_type1 IS INITIAL.
MESSAGE 'PLEASE SELECT PROPOSAL TYPE- MAIN-CAT......' TYPE 'E'.
ENDIF.
CLEAR: wa_box1,count,strlen,l_val.
l_val = ztender-offer_no+count(1).
strlen = STRLEN( ztender-offer_no ).
count = count + 1 .
l_val = ztender-offer_no+count(1).
ENDWHILE.
CLEAR: l_string,wa_g_mytable,wa_line.
REFRESH: g_mytable,it_line.
* PERFORM initilize_container. " Refresh the Custom Contenier And Initilize again
* PERFORM create_container. " CREATE CONTAINER AGAIN
IF g_mytable IS NOT INITIAL.
IF l_string IS INITIAL.
l_string = wa_g_mytable .
ELSE.
CLEAR: wa_g_mytable .
ENDLOOP.
IF sy-subrc <> 0.
ENDIF.
*
**2. create EDITOR CONTROL
*
** TEXT EDITOR CONTROL
*
CREATE OBJECT g_editor1
EXPORTING
style = 0
wordwrap_mode = '2' "CL_GUI_TEXTEDIT=>WORDWRAP_AT_FIXED_POSITION "WORDWRAP_AT_WINDOWBORDER
wordwrap_position = 135
wordwrap_to_linebreak_mode = cl_gui_textedit=>true
parent = r_dock_container
EXCEPTIONS
error_cntl_create = 1
error_cntl_init = 2
error_cntl_link = 3
error_dp_create = 4
gui_type_not_supported = 5
OTHERS = 6.
IF sy-subrc <> 0.
ENDIF.
**
***3. set STATUS BAR
**
*** TO SET STATUS BAR
***
CALL METHOD g_editor1->set_statusbar_mode
EXPORTING
statusbar_mode = 0
EXCEPTIONS
error_cntl_call_method = 1
invalid_parameter = 2
OTHERS = 3.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
ENDIF.
**
***4.set TOOL BAR
**
** TO SET TOOLBAR
IF sy-subrc <> 0.
ENDIF.
CLEAR: l_string.
REFRESH: it_line,g_mytable1 .
CONCATENATE lv_ztender-work_descrip_1
lv_ztender-work_descrip_2
lv_ztender-work_descrip_3
lv_ztender-work_descrip_4 INTO l_string SEPARATED BY space.
LOOP AT it_line INTO wa_line WHERE l_line IS NOT INITIAL. " set data to custom container
wa_g_mytable1-l_line = wa_line-l_line .
APPEND wa_g_mytable1 TO g_mytable1 . " set data to custom container Table
ENDLOOP.
* PERFORM initilize_container.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDIF.