Page таңдаңыз

ABAP жүйесінде PDF жүктеп салу

by | Jun 3, 2018 | ABAP бағдарламалары

Home » SAP » ABAP » ABAP бағдарламалары » ABAP жүйесінде PDF жүктеп салу

кіріспе – Бұл жазбаның бөлігі ABAP бағдарламалары сериясы.

Бұл мақалада сіз pdf файлының орнын қалай алуға болатынын, pdf файлын abap бағдарламасында xstring түріне қалай түрлендіру керектігін және ABAP бағдарламасында pdf файлын жүктеп салуды орындау үшін GUI_UPLOAD функционалдық модулін қалай пайдалану керектігін үйренесіз.

кіріспе

пайдалану арқылы PDF жүктеп салу үшін ABAP Бағдарлама үшін сізге файлдың орнын және pdf файлын алу керек. Бұл файлды түрлендіру керек XSTRING. Төменде көрсетілген кодта біз ішкі кестедегі деректерді алу үшін GUI_UPLOAD функция модулін қолдандық.

ABAP ішіне PDF жүктеп салу бағдарламасы

параметрлер: p_file түрі жолдың кіші әріптері.
 деректер: gs_store_file түрі z1127582_upload,"z1127582_upload — PDF файлын және басқа қатысты деректерді gt_content түріндегі tdline, len түріндегі i, xstr_content түрі xstring стандартты кестесін сақтауға арналған кесте.
 ДЕРЕКТЕР: w_filename TYPE жолы, " Файл атауы w_length TYPE i, lt_file_table TYPE файл кестесі, lv_filelength TYPE i, lv_rc TYPE i, lv_filename TYPE жолы, w_pdf_data TYPE xstring, LT_stringOFLEad PDF көмегімен xstring, lt_raw 255 файлын жасау ADS' (<-- ол осылай * SM59-да анықталған) lo_pdfobj TYPE REF TO if_fp_pdf_object МӘН БАСТАУЫ, xslt_message TYPE жолы, exc TYPE REF TO cx_root.
 p_file ҮШІН МӘН-СҰРАУ БОЙЫНША ТАҢДАУ ЭКРАНЫНДА.
 f4_help_for_file ОРЫНДАУ.
 іріктеудің басталуы.
 «Файлды ішкі кесте шақыру функциясына жүктеп салыңыз 'GUI_UPLOAD' экспорттау файл атауы = p_file filetype = 'BIN' импорттау файл ұзындығы = len кестелер data_tab = gt_content ерекше жағдайлар file_open_error = 1 file_read_error = 2 no_batch = 3 gui_transfer = 4 gui_transfer = 5 in_transfer =_6 =_7 8 bad_data_format = 9 header_not_allowed = 10 separator_not_allowed = 11 header_too_long = 12 unknown_dp_error = 13 кіруге_қабылданбаған = 14 dp_out_of_memory = 15 disk_full = 16 dp_timeout = 17.
 егер sy-subrc <> 0 болса.
 «Файлды жүктеп салу мүмкін емес» хабары «E» түріндегі.
 эндиф.
 ""SCMS_BINARY_TO_XSTRING" xstring шақыру функциясына екілік ITAB түрлендіру input_length экспорттау = len * FIRST_LINE = 0 * LAST_LINE = 0 импорттау буфер = xstr_content кестелері binary_tab = gt_content ерекше жағдайлар орындалмады = 1 басқа = 2 .
 егер sy-subrc <> 0 болса.
 «Екілік файлды xstring түріне түрлендіру мүмкін емес» хабары 'E' түрі.
 эндиф.
 gs_store_файлын тазалаңыз.
 gs_store_file-filename = p_file.
 gs_store_file-file_content = xstr_content.
 "Кестеге файлды кірістіру gs_store_file ішінен z1127582_upload кірістіріңіз.
 егер sy-subrc бастапқы болса.
 «Сәтті жүктеп салынды» хабары «S» түрін береді.
 басқа.
 «Жүктеп салу орындалмады» хабары «E» түріндегі.
 эндиф.
 FORM f4_help_for_file.
 ҚОҢЫРАУ ӘДІСІ cl_gui_frontend_services=>file_open_dialog ӨЗГЕРТІЛУ file_table = lt_file_table rc = lv_rc * USER_ACTION = * FILE_ENCODING = ЕРЕКШЕЛІКТЕР file_open_dialog_failed = 1 cntl_error = i_2 cntl_error = i_3_қолдау жоқ =i_4 =i_5 қатесі жоқ.
 IF sy-subrc <> 0.
 * ХАБАРЛАМА ID SY-MSGID ТҮРІ SY-MSGTY НӨМІРІ SY-MSGNO * SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
 ENDIF.
 * ОҚУ КЕСТЕСІ lt_file_table * lv_filename INTO * INDEX 1.
 TABLE lt_file_table INTO p_file INDEX 1.
 IF sy-subrc EQ 0 болса.
 lv_filename = p_file.
 ENDIF.
 cl_gui_frontend_services => gui_upload (FILENAME экспорттау = lv_filename файл түрі = 'БСН «Екілік импорт filelength = lv_filelength ӨЗГЕРМЕЛІ data_tab = lt_rawtab EXCEPTIONS file_open_error = 1 file_read_error = 2 no_batch = 3 gui_refuse_filetransfer = 4 invalid_type = 5 no_authority = 6 Unknown_Error = 7 bad_data_format = 8 header_not_allowed = 9 separator_no_allowed = 10 header_too_long = 11 unknown_dp_error = 12 access_denied = 13 dp_of_of_memory = 14 disk_full = 15 dp_timeout = 16 not_supported_by_gui = 17 error_no_guiS = БАСҚА 18).

 

Түсіндіру

Бастапқыда біз айнымалыларды үш бөліктен анықтадық:

  • Параметр: p_file, ол жол түріндегі және файлдың орнын сақтайды
  • gs_store_file, gt_content, len, xstr_content: файлға қатысты деректер, яғни файл қайда сақталады, мазмұн қалай сақталады, файл ұзындығы және мазмұн түрі.
  • Айнымалылардың үшінші жинағы PDF файлының мазмұнының егжей-тегжейімен айналысады. Бұл мәліметтер кестеде сақталатын және түрі «gs_store_file» үстінде жасалған ішкі кесте болып табылады.

Қолданылатын функционалдық модуль:

  • SCMS_BINARY_TO_XSTRING
  • GUI_UPLOAD

ABAP жүйесінде жүктеп салу арқылы кестеде нақты нені сақтау керек:

  1. PDF файлының орны
  2. PDF файл атауы
  3. Файл түрі
  4. X-STRING файлы деректері [Бұл x-жолына түрлендірілетін нақты файл]

Кейінірек біз әртүрлі функциялық модульдерді шақырдық. Біз кодтың өзінде тиісті түсініктеме қостық.

автор

0 Пікірлер

Пікір қалдыру

Сіздің электрондық пошта мекенжайы емес жарияланады. Міндетті өрістер таңбаланған *

Бұл сайт спамның төмендеуі үшін Akismet пайдаланады. Деректеріңіздің қалай өңделетінін біліңіз.

автор