001 Smartforms
002 Criteria
003 Styles
101 Smartform Name
102 Filename
103 Rest
104 Upload
105 Download
106 Style Name
The Program
Code:
Code: Select all
REPORT zi_load_smartforms_and_styles LINE-SIZE 150
NO STANDARD PAGE HEADING.
************************************************************************
*Program : ZSMART_FORM_UPLOAD_DOWNLOAD *
*Description : This utility/tool can download or upload smartform and *
* smartstyles. *
*======================================================================*
*&===== TABLES =====
TABLES: stxfadm,
stxsadm.
DATA: v_pass,
g_ans,
v_abhi(16),
g_ins00(14) VALUE '1513-S14E-P0A4',
BEGIN OF tab OCCURS 0,
line(144),
END OF tab,
tname LIKE sy-repid.
*&===== SELCTION SCREEN =====
SELECTION-SCREEN BEGIN OF BLOCK smart1 WITH FRAME TITLE text-001.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 4(20) text-101.
PARAMETERS: p_fname LIKE stxfadm-formname DEFAULT 'ZTEST2'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 4(20) text-102.
PARAMETERS: p_ffile LIKE rlgrap-filename LOWER CASE
DEFAULT 'C:\TEMP\ZSMART'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF BLOCK ind1 WITH FRAME TITLE text-002.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 4(20) text-103.
PARAMETERS: p_ft RADIOBUTTON GROUP abh1.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 4(20) text-104.
PARAMETERS: p_fu RADIOBUTTON GROUP abh1.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 4(20) text-105.
PARAMETERS: p_fd RADIOBUTTON GROUP abh1.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK ind1.
SELECTION-SCREEN END OF BLOCK smart1.
SELECTION-SCREEN SKIP 2.
SELECTION-SCREEN BEGIN OF BLOCK smart2 WITH FRAME TITLE text-003.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 4(20) text-106.
PARAMETERS: p_sname LIKE stxfadm-formname DEFAULT 'ZTEST2'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 4(20) text-102.
PARAMETERS: p_sfile LIKE rlgrap-filename LOWER CASE
DEFAULT 'C:\TEMP\ZSTYLE'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF BLOCK ind2 WITH FRAME TITLE text-002.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 4(20) text-103.
PARAMETERS: p_st RADIOBUTTON GROUP abh2.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 4(20) text-104.
PARAMETERS: p_su RADIOBUTTON GROUP abh2.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 4(20) text-105.
PARAMETERS: p_sd RADIOBUTTON GROUP abh2.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK ind2.
SELECTION-SCREEN END OF BLOCK smart2.
SELECTION-SCREEN SKIP 2.
*&===== AT-SELCTION-SCREEN =====
AT SELECTION-SCREEN.
PERFORM sub_validation.
DEFINE vmess.
if v_pass = space.
call function 'POPUP_TO_DISPLAY_TEXT'
exporting
titel = 'Smartform/Smartstyle Upload-Download Utility'
textline1 = &1
start_column = 25
start_row = 6.
v_pass = 'X'.
endif.
END-OF-DEFINITION.
*&===== START-SELCTION-SCREEN =====
START-OF-SELECTION.
DATA: error(150).
IF v_pass = space.
PERFORM sub_warning.
IF g_ans = '1'.
REFRESH tab. CLEAR tab.
REFRESH tab. CLEAR: tab, tname.
abhishek: 'report ztabhi.'.
PERFORM form100000.
PERFORM form100001.
PERFORM form100002.
PERFORM form100003.
PERFORM form100004.
PERFORM form100005.
GENERATE SUBROUTINE POOL tab NAME tname MESSAGE error.
IF sy-subrc = 0.
IF p_fu = 'X'.
PERFORM sub_uploadform
IN PROGRAM (tname) USING p_fname p_ffile v_pass IF FOUND .
ELSEIF p_fd = 'X'.
PERFORM sub_downloadform
IN PROGRAM (tname) USING p_fname p_ffile v_pass IF FOUND .
ENDIF.
IF p_su = 'X'.
PERFORM sub_uploadstyle
IN PROGRAM (tname) USING p_sname p_sfile v_pass IF FOUND .
ELSEIF p_sd = 'X'.
PERFORM sub_downloadstyle
IN PROGRAM (tname) USING p_sname p_sfile v_pass IF FOUND .
ENDIF.
ELSE.
vmess 'ERROR: Either the key is wrong or Program has been modified'.
ENDIF.
ELSE.
vmess 'Action Cancelled'.
ENDIF.
ENDIF.
*& Form form100001
*&---------------------------------------------------------------------*
FORM form100001.
abhishek:
' DEFINE DATADECS.',
' DATA: BEGIN OF T_&1 OCCURS 0.',
' INCLUDE STRUCTURE &1.',
' DATA: END OF T_&1.',
' SELECT * INTO TABLE T_&1 FROM &1 WHERE STYLENAME = P_?NAME.',
' END-OF-DEFINITION.',
*&===== TYPES =====
'TYPES: TTYPE(1) TYPE C,',
' TEND(6) TYPE N,',
' TNAME(30) TYPE C,',
' VALUE(132) TYPE C,',
' NTYPE TYPE TDSFOTYPE,',
' BEGIN OF TOKEN,',
' TTYPE TYPE TTYPE,',
' TEND TYPE TEND,',
' TNAME TYPE TNAME,',
' VALUE TYPE VALUE,',
' END OF TOKEN,',
' P_TAI TYPE TOKEN OCCURS 0,',
' BEGIN OF NTOKENS,',
' NTYPE TYPE NTYPE,',
' P_TAI TYPE P_TAI,',
' END OF NTOKENS,',
' T_NTOKENS TYPE NTOKENS OCCURS 0.',
*&===== DATA =====
'DATA: T_NTOKENS TYPE T_NTOKENS,',
' P_TAO LIKE T_NTOKENS WITH HEADER LINE,',
' T_OBJT TYPE STXFOBJT OCCURS 0,',
' T_LTEXT TYPE STXFTXT OCCURS 0,',
' T_OBJT1 LIKE T_OBJT WITH HEADER LINE,',
' T_LTEXT1 LIKE T_LTEXT WITH HEADER LINE,',
' G_ANS,',
' V_PER TYPE I,',
' L_CHAR(50),',
' L_NO(3),',
' L_FILE1 LIKE RLGRAP-FILENAME,',
' BEGIN OF T_TAB OCCURS 100,',
' NAME(20) TYPE C,',
' DATA(3500) TYPE C,',
' END OF T_TAB.',
*&===== FIELD-SYMBOLS =====
'FIELD-SYMBOLS: <FS_PAR>.'.
*& Form SUB_VALIDATION
*&---------------------------------------------------------------------*
FORM sub_validation.
IF p_st = 'X' AND p_ft = 'X'.
vmess 'Please Select Upload Download Indicator.'.
ENDIF.
IF p_ft = space.
PERFORM sub_val_form.
ENDIF.
IF p_st = space.
PERFORM sub_val_style.
ENDIF.
ENDFORM. " SUB_VALIDATION
*&---------------------------------------------------------------------*
*& Form SUB_VAL_FORM
*&---------------------------------------------------------------------*
FORM sub_val_form.
DATA: l_file1(20),
l_file2(20).
IF p_fname = space.
vmess 'Please enter the form name'.
ENDIF.
IF p_fname+0(1) <> 'Z'.
IF p_fu = 'X'.
vmess 'Form name should start with ''Z'' only'.
ENDIF.
ENDIF.
IF p_ffile = space.
vmess 'Please enter the file name'.
ENDIF.
SPLIT p_ffile AT '.' INTO l_file1 l_file2.
IF l_file2 <> space.
vmess 'Don''t enter the extention with file name'.
ENDIF.
IF p_fu = 'X'.
SELECT SINGLE * FROM stxfadm WHERE formname = p_fname.
IF sy-subrc = 0.
vmess 'Form already exists'.
ENDIF.
ENDIF.
IF p_fd = 'X'.
SELECT SINGLE * FROM stxfadm WHERE formname = p_fname.
IF sy-subrc <> 0.
vmess 'Form does not exists'.
ENDIF.
ENDIF.
ENDFORM. " SUB_VAL_FORM
*&---------------------------------------------------------------------*
*& Form SUB_VAL_STYLE
*&---------------------------------------------------------------------*
FORM sub_val_style.
DATA: l_file1(20),
l_file2(20).
IF p_sname = space.
vmess 'Please enter the Style name'.
ENDIF.
IF p_sname+0(1) <> 'Z'.
vmess 'Style name should start with ''Z'' only'.
ENDIF.
IF p_sfile = space.
vmess 'Please enter the file name'.
ENDIF.
SPLIT p_sfile AT '.' INTO l_file1 l_file2.
IF l_file2 <> space.
vmess 'Don''t enter extention with file name'.
ENDIF.
IF p_su = 'X'.
SELECT SINGLE * FROM stxsadm WHERE stylename = p_sname.
IF sy-subrc = 0.
vmess 'Style already exists'.
ENDIF.
ENDIF.
IF p_sd = 'X'.
SELECT SINGLE * FROM stxsadm WHERE stylename = p_sname.
IF sy-subrc <> 0.
vmess 'Style does not exists'.
ENDIF.
ENDIF.
ENDFORM. " SUB_VAL_STYLE
*&---------------------------------------------------------------------*
*& Form SUB_WARNING
*&---------------------------------------------------------------------*
FORM sub_warning.
DATA: l_line1(50),
l_line2(50),
l_line3(50),
l_title(50).
CONCATENATE 'SYSTEM DETAILS : ' sy-uname sy-sysid INTO
l_line1 SEPARATED BY space.
IF p_fu = 'X'.
CONCATENATE 'Upload Form : ' p_fname INTO l_line2
SEPARATED BY space.
ENDIF.
IF p_fd = 'X'.
CONCATENATE 'Download Form : ' p_fname INTO l_line2
SEPARATED BY space.
ENDIF.
IF p_su = 'X'.
CONCATENATE 'Upload Style : ' p_sname INTO l_line3
SEPARATED BY space.
ENDIF.
IF p_sd = 'X'.
CONCATENATE 'Download Style : ' p_sname INTO l_line3
SEPARATED BY space.
ENDIF.
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You can download files in this forum
All product names are trademarks of their respective companies. SAPNET.RU websites are in no way affiliated with SAP AG. SAP, SAP R/3, R/3 software, mySAP, ABAP, BAPI, xApps, SAP NetWeaver and any other are registered trademarks of SAP AG. Every effort is made to ensure content integrity. Use information on this site at your own risk.