ABAP中對上傳文件和下載文件的一般檢查_第1頁
ABAP中對上傳文件和下載文件的一般檢查_第2頁
ABAP中對上傳文件和下載文件的一般檢查_第3頁
ABAP中對上傳文件和下載文件的一般檢查_第4頁
ABAP中對上傳文件和下載文件的一般檢查_第5頁
免費預(yù)覽已結(jié)束,剩余12頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

ABAP中對上傳文件和下載文件的一般檢查ABAP中對上傳文件和下載文件的一般檢查ABAP中對上傳文件和下載文件的一般檢查V:1.0精細整理,僅供參考ABAP中對上傳文件和下載文件的一般檢查日期:20xx年X月ABAP中對上傳文件和下載文件的一般檢查文件檢查的一般方法。實用。設(shè)計一些通用模塊,和使用方法。1,首先對要上傳的文件進行存在檢查。(在ATSELECTION-SCREEN事件下完成)CALLMETHODCL_GUI_FRONTEND_SERVICES=>FILE_EXISTEXPORTINGFILE=LW_FILERECEIVINGRESULT=LW_RESULTEXCEPTIONSCNTL_ERROR=1ERROR_NO_GUI=2WRONG_PARAMETER=3NOT_SUPPORTED_BY_GUI=4OTHERS=5.IFSY-SUBRC<>0.SETCURSORFIELD'P_UPFILE'."カーソルをセット*-----システムメッセージ出力MESSAGEIDSY-MSGIDTYPE'E'NUMBERSY-MSGNOWITHSY-MSGV1SY-MSGV2SY-MSGV3SY-MSGV4.ENDIF.*-----チェック結(jié)果判定IFLW_RESULT<>CNS_TRUE."ファイル存在しないSETCURSORFIELD'P_UPFILE'."カーソルをセット*-----MSG:アップロードファイル&1は存在しませんMESSAGEE116(ZNKCC1)WITHP_UPFILE.ENDIF.2,對于指定下載到本地的文件,首先,將屏幕上輸入的路徑和文件名分隔開來,(在ATSELECTION-SCREEN事件下完成)*-----CALL汎用モジュールCALLFUNCTION'SO_SPLIT_FILE_AND_PATH'EXPORTINGFULL_NAME=P_ERFILEIMPORTINGSTRIPPED_NAME=W_FILEFILE_PATH=P_O_PATHEXCEPTIONSX_ERROR=1OTHERS=2.IFSY-SUBRC<>0.SETCURSORFIELD'P_ERFILE'."カーソルをセット*-----システムメッセージ出力MESSAGEIDSY-MSGIDTYPE'E'NUMBERSY-MSGNOWITHSY-MSGV1SY-MSGV2SY-MSGV3SY-MSGV4.ENDIF.其次,檢查分隔得到的文件路徑(路徑是否存在)。(在ATSELECTION-SCREEN事件下完成)CALLMETHODCL_GUI_FRONTEND_SERVICES=>DIRECTORY_EXISTEXPORTINGDIRECTORY=LW_PATHRECEIVINGRESULT=LW_RESULTEXCEPTIONSCNTL_ERROR=1ERROR_NO_GUI=2WRONG_PARAMETER=3NOT_SUPPORTED_BY_GUI=4OTHERS=5.IFSY-SUBRC<>0.SETCURSORFIELD'P_ERFILE'."カーソルをセットMESSAGEIDSY-MSGIDTYPE'S'NUMBERSY-MSGNOWITHSY-MSGV1SY-MSGV2SY-MSGV3SY-MSGV4.ENDIF.3,實現(xiàn)對上傳文件的檢索幫助。(在ATSELECTION-SCREENONVALUE-REQUESTFORP_UPFILE.事件下完成)CALLMETHODCL_GUI_FRONTEND_SERVICES=>FILE_OPEN_DIALOGEXPORTINGWINDOW_TITLE=LW_TITLE"ファイル選択CHANGINGFILE_TABLE=LTD_FILERC=LW_RETURN"リターン値USER_ACTION=LW_ACTION"動作結(jié)果EXCEPTIONSFILE_OPEN_DIALOG_FAILED=1CNTL_ERROR=2ERROR_NO_GUI=3NOT_SUPPORTED_BY_GUI=4OTHERS=5.*-----リターンコード判定IFSY-SUBRC<>0."メソッド失敗時SETCURSORFIELD'P_UPFILE'."カーソルをセット*-----システムメッセージ出力MESSAGEIDSY-MSGIDTYPE'S'NUMBERSY-MSGNOWITHSY-MSGV1SY-MSGV2SY-MSGV3SY-MSGV4.RETURN.ENDIF.*-----結(jié)果情報判定IFLW_RETURN<0.RETURN."選択畫面へ戻るENDIF.*-----結(jié)果情報判定IFLW_ACTION=0.*-----[選択ファイルテーブル]の1件目を[アップロードファイル名]設(shè)定READTABLELTD_FILEINTOLTH_FILEINDEX1.*-----リターンコード判定IFSY-SUBRC=0.P_UPFILE=LTH_FILE-FILENAME.ENDIF.ENDIF.4,對下載的文件的檢索幫助的實現(xiàn)同3。5,對下載的文件是保存幫助處理。CALLMETHODCL_GUI_FRONTEND_SERVICES=>FILE_SAVE_DIALOGEXPORTINGWINDOW_TITLE=LW_TITLE"エラー出力ファイル選択CHANGINGFILENAME=LW_FILENAME"ファイル名PATH=LW_PATH"パース名FULLPATH=LW_FULLPATH"ファイルパース名USER_ACTION=LW_ACTION"動作結(jié)果EXCEPTIONSCNTL_ERROR=1ERROR_NO_GUI=2NOT_SUPPORTED_BY_GUI=3OTHERS=4.*-----リターンコード判定IFSY-SUBRC<>0."CALLメソッド失敗時SETCURSORFIELD'P_ERFILE'."カーソルをセット*-----システムメッセージ出力MESSAGEIDSY-MSGIDTYPE'S'NUMBERSY-MSGNOWITHSY-MSGV1SY-MSGV2SY-MSGV3SY-MSGV4.RETURN."選択畫面へ戻るENDIF.*-----結(jié)果情報判定IFLW_ACTION=0.*-----[ファイルパース名]を[選択畫面-エラーファイル名]に設(shè)定するP_ERFILE=LW_FULLPATH.ENDIF.6.另外的情況,屏幕上輸入下載文件指定路徑和文件名后,先檢查該文件是否存在,如果存在,則需要彈出對話框,提醒用戶是否覆蓋原文件。(在ATSELECTION-SCREENONVALUE-REQUESTFORP_DOFILE.事件下完成)*-----エラーファイルの存在チェックCALLMETHODCL_GUI_FRONTEND_SERVICES=>FILE_EXISTEXPORTINGFILE=LW_FILE"ファイルRECEIVINGRESULT=LW_RESULT"チェック結(jié)果EXCEPTIONSCNTL_ERROR=1ERROR_NO_GUI=2WRONG_PARAMETER=3NOT_SUPPORTED_BY_GUI=4OTHERS=5.*-----リターンコード判定IFSY-SUBRC<>0."CALLメソッド失敗時SETCURSORFIELD'P_ERFILE'."カーソルをセット*-----システムメッセージ出力MESSAGEIDSY-MSGIDTYPE'E'NUMBERSY-MSGNOWITHSY-MSGV1SY-MSGV2SY-MSGV3SY-MSGV4.ENDIF.提示是否覆蓋原文件:*-----CALL汎用モジュールCALLFUNCTION'POPUP_TO_CONFIRM'EXPORTINGTITLEBAR=TEXT-006"確認TEXT_QUESTION=TEXT-007"質(zhì)問テキストTEXT_BUTTON_1=TEXT-008"はいTEXT_BUTTON_2=TEXT-009"いいえDEFAULT_BUTTON='1'"カーソル位置DISPLAY_CANCEL_BUTTON='X'"取消押ボタンSTART_COLUMN=25"POPUPの開始列START_ROW=6"POPUPの開始行IMPORTINGANSWER=LW_ANSWER"リターンコードEXCEPTIONSTEXT_NOT_FOUND=1OTHERS=2.*-----リターンコード判定IFSY-SUBRC<>0."CALLモジュール失敗時*-----システムメッセージ出力MESSAGEIDSY-MSGIDTYPE'S'NUMBERSY-MSGNOWITHSY-MSGV1SY-MSGV2SY-MSGV3SY-MSGV4.LEAVELIST-PROCESSING.ENDIF.*-----結(jié)果情報判定IFLW_ANSWER='2'"いいえOR中止ボタン押下ORLW_ANSWER='A'.LEAVELIST-PROCESSING."選択畫面へ戻るENDIF.示例:REPORTZLEI_FILE_CHECK.*----------------------------------------------------------------------**WORKS*----------------------------------------------------------------------*DATA:W_FILETYPESTRING."ファイル名*----------------------------------------------------------------------**CONSTANTS*----------------------------------------------------------------------*CONSTANTS:CNS_TRUE(1)TYPECVALUE'X'."TRUE*----------------------------------------------------------------------**PARAMETERS*----------------------------------------------------------------------*PARAMETERS:P_UPFILELIKERLGRAP-FILENAME,"UploadfileP_ERFILELIKERLGRAP-FILENAME."Downloadfile*----------------------------------------------------------------------**ATSELECTION-SCREEN*----------------------------------------------------------------------*ATSELECTION-SCREEN.*-----アップロードファイルの存在チェックPERFORMFRM_CHECK_UPFILE_EXIST.*-----エラーファイルのチェックPERFORMFRM_CHECK_ERFILE.*----------------------------------------------------------------------**ATSELECTION-SCREENONVALUE-REQUEST*----------------------------------------------------------------------*ATSELECTION-SCREENONVALUE-REQUESTFORP_UPFILE.*-----アップロードファイルの検索ヘルプPERFORMFRM_SEARCH_UPFILE.ATSELECTION-SCREENONVALUE-REQUESTFORP_ERFILE.*-----エラー出力ファイルの検索ヘルプPERFORMFRM_SAVE_ERFILE.*&---------------------------------------------------------------------**&FormFRM_CHECK_UPFILE_NAME*&---------------------------------------------------------------------**アップロードファイルの存在チェック*----------------------------------------------------------------------*FORMFRM_CHECK_UPFILE_EXIST.DATA:LW_FILETYPESTRING,"ファイルLW_RESULTTYPEC."チェック結(jié)果LW_FILE=P_UPFILE.CALLMETHODCL_GUI_FRONTEND_SERVICES=>FILE_EXISTEXPORTINGFILE=LW_FILERECEIVINGRESULT=LW_RESULTEXCEPTIONSCNTL_ERROR=1ERROR_NO_GUI=2WRONG_PARAMETER=3NOT_SUPPORTED_BY_GUI=4OTHERS=5.IFSY-SUBRC<>0.SETCURSORFIELD'P_UPFILE'."カーソルをセット*-----システムメッセージ出力MESSAGEIDSY-MSGIDTYPE'E'NUMBERSY-MSGNOWITHSY-MSGV1SY-MSGV2SY-MSGV3SY-MSGV4.ENDIF.*-----チェック結(jié)果判定IFLW_RESULT<>CNS_TRUE."ファイル存在しないSETCURSORFIELD'P_UPFILE'."カーソルをセット*-----MSG:アップロードファイル&1は存在しませんMESSAGEE116(ZNKCC1)WITHP_UPFILE.ENDIF.ENDFORM."FRM_CHECK_UPFILE_EXIST*&---------------------------------------------------------------------**&FormFRM_CHECK_ERFILE*&---------------------------------------------------------------------**エラーファイルのチェック*----------------------------------------------------------------------*FORMFRM_CHECK_ERFILE.DATA:LW_PATHTYPERLGRAP-FILENAME."パス*-----エラーファイルの切りのチェックPERFORMFRM_SPLIT_ERFILE_PATHCHANGINGLW_PATH.*-----エラーファイルのパスのチェックPERFORMFRM_CHECK_DIRECTORY_EXISTUSINGLW_PATH.*-----エラーファイルの存在のチェックPERFORMFRM_CHECK_ERFILE_EXIST.ENDFORM."FRM_CHECK_ERFILE*&---------------------------------------------------------------------**&FormFRM_SPLIT_ERFILE_PATH*&---------------------------------------------------------------------**エラーファイルの切りのチェック*----------------------------------------------------------------------**<--P_O_PATHパス(CHANGINGパラメータ)*----------------------------------------------------------------------*FORMFRM_SPLIT_ERFILE_PATHCHANGINGP_O_PATHTYPERLGRAP-FILENAME.*-----CALL汎用モジュールCALLFUNCTION'SO_SPLIT_FILE_AND_PATH'EXPORTINGFULL_NAME=P_ERFILEIMPORTINGSTRIPPED_NAME=W_FILEFILE_PATH=P_O_PATHEXCEPTIONSX_ERROR=1OTHERS=2.IFSY-SUBRC<>0.SETCURSORFIELD'P_ERFILE'.&quo

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論