欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 美食 > 获取上传至DMS服务器上文件的URL

获取上传至DMS服务器上文件的URL

2025/10/24 3:31:32 来源:https://blog.csdn.net/zjj960908/article/details/143279739  浏览:    关键词:获取上传至DMS服务器上文件的URL
  • 文件上传
     DATA: lv_class    TYPE toadv-doc_type,lv_objectid TYPE sapb-sapobjid.CALL FUNCTION 'ZARCHIV_CREATE_DIALOG_META'EXPORTINGarchiv_id                = 'Z1'               "内容存储库IDar_object                = 'ZALLFILES'        "文档类型
*         DEL_DATE                 = ' '
*         NOTE                     = ' 'object_id                = lv_objectid          "对象标识sap_object               = 'BUS1001' "T_ZTFILE001-SAP_OBJECT "对象类型
*         FILE                     = pv_pathdocument_class           = lv_class           "文档类,后缀名
*         COMMIT_FLAG              = ' '
*         VSCAN_PROFILE            = '/SCMS/KPRO_CREATE'
*         FILE_DESCR_POP_SUP       = ' 'IMPORTINGarchiv                   = lv_archiv_id       "内容存储库IDarchiv_doc_id            = lv_archiv_doc_id   "文档IDdocumentclass            = lv_documentclass   "文档类
*         TABLES
*         OUTDOCTAB                =CHANGINGinfiletab                = lt_fileEXCEPTIONSerror_archiv             = 1error_communicationtable = 2error_connectiontable    = 3error_kernel             = 4error_parameter          = 5error_scanqueue          = 6canceled_by_user         = 7blocked_by_policy        = 8OTHERS                   = 9.IF sy-subrc <> 0.IF sy-subrc = 1.MESSAGE '选择的文件不存在'(029) TYPE 'S' DISPLAY LIKE 'E'.ELSE.MESSAGE '上传失败,请重新上传文件'(030) TYPE 'S' DISPLAY LIKE 'E'.ENDIF.ENDIF.
  • 文件下载
  
CALL METHOD cl_gui_frontend_services=>file_save_dialogEXPORTINGdefault_extension    = lv_doc_type1       "默认保存文件格式default_file_name    = lv_filename   "默认文件名称CHANGINGfilename             = lc_filename   "默认文件名称path                 = lc_path       "文件路径fullpath             = lc_fullpath   "文件路径EXCEPTIONScntl_error           = 1error_no_gui         = 2not_supported_by_gui = 3OTHERS               = 4.CALL FUNCTION 'ARCHIVOBJECT_GET_TABLE'EXPORTINGarchiv_id       = 'Z1'document_type   = lv_doc_typearchiv_doc_id   = gs_matnritem-zfileguidIMPORTINGbinlength       = lv_lenthTABLESbinarchivobject = lt_bin.lv_input_length =  lv_lenth.CALL FUNCTION 'SCMS_BINARY_TO_XSTRING'EXPORTINGinput_length = lv_input_lengthIMPORTINGbuffer       = lv_fileTABLESbinary_tab   = lt_binEXCEPTIONSfailed       = 1OTHERS       = 2.cl_gui_frontend_services=>gui_download(EXPORTINGfilename                  = iv_filenamefiletype                  = 'BIN'bin_filesize              = xstrlen( lv_file )CHANGINGdata_tab                  = lt_data[]EXCEPTIONSOTHERS = 1).IF sy-subrc <> 0.MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4 RAISING download_error.ENDIF.
  • 获取文件URL
 CALL FUNCTION 'SCMS_AO_URL_READ'EXPORTINGarc_id        = archiv_iddoc_id        = archiv_doc_idcomp_id       = ' 'document_type = document_classloc_info      = 'F'http_url_only = 'X'IMPORTINGurl           = absolute_uriEXCEPTIONSOTHERS        = 1.IF sy-subrc <> 0.MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgnoWITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4 RAISING others .ENDIF.

    ARCHIVOBJECT_GET_URI

生成URL的时候 SCMS_URL_GENERATE会调用SCMS_URL_SIGN函数这是其中默认这是了URL的生效时间为两小时

如果需要失效时间延长会设置URL永久有效, 可以去修改函数SCMS_URL_GENERATE的参数DURATION 或EXPIRATION ,DURATION最大时间是999999,若需要永久有效,则需要设置EXPIRATION的时间,这时系统会忽略DURATION的参数,

具体可参考:2501205 - 如何修改内容服务器 URL 中的过期参数 - SAP for Me

 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词