문서 처리

이 빠른 시작에서는 Document AI API의 일괄 처리 기능을 사용하여 소스 버킷의 문서(인보이스)를 처리하고 대상 버킷에 처리된 문서(JSON 파일)를 저장하는 방법을 보여줍니다.

시작하기 전에

이 빠른 시작을 실행하기 전에 직접 또는 관리자가 다음 기본 요건을 완료했는지 확인합니다.

  • Google Cloud 프로젝트에 Document AI API가 사용 설정되어 있는지 확인합니다.

    API 라이브러리로 이동

  • Document AI Workbench에서 INVOICE_PROCESSOR 유형의 프로세서를 만듭니다. 자세한 내용은 프로세서 만들기 및 관리를 참조하세요.

  • Cloud Storage에서 처리할 인보이스를 저장할 소스 버킷을 만들고 이 버킷에 인보이스를 배치합니다. 자세한 내용은 버킷 만들기를 참조하세요.

  • Cloud Storage에서 처리된 파일을 저장할 대상 버킷을 만듭니다.

문서 처리를 위한 프로그램 만들기

  1. SAP 시스템에서 SE38 트랜잭션을 사용하여 커스텀 네임스페이스(예: Z 또는 Y)에 실행 가능한 프로그램을 만듭니다.

    1. SAP GUI에서 트랜잭션 코드 SE38을 입력합니다.

    2. 프로그램 필드에 프로그램 이름을 입력합니다(예: ZDEMO_DOCUMENT_AI).

    3. 만들기를 클릭합니다.

    4. 프로그램 속성을 지정합니다.

      1. 제목 필드에 프로그램 제목을 입력합니다(예: Process invoices).

      2. 유형 필드에서 Executable Program을 선택합니다.

      3. 저장을 클릭합니다.

    5. 프로그램을 로컬 객체로 저장합니다.

    6. ABAP 편집기에서 다음 코드를 추가합니다.

      **********************************************************************
      *  Copyright 2023 Google LLC                                         *
      *                                                                    *
      *  Licensed under the Apache License, Version 2.0 (the "License");   *
      *  you may not use this file except in compliance with the License.  *
      *  You may obtain a copy of the License at                           *
      *      https://www.apache.org/licenses/LICENSE-2.0                   *
      *  Unless required by applicable law or agreed to in writing,        *
      *  software distributed under the License is distributed on an       *
      *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,      *
      *  either express or implied.                                        *
      *  See the License for the specific language governing permissions   *
      *  and limitations under the License.                                *
      **********************************************************************
      
      REPORT zr_qs_process_documents.
      
      * data declarations
      DATA:
        lv_p_projects_id   TYPE string,
        lv_p_locations_id  TYPE string,
        lv_p_processors_id TYPE string,
        ls_input           TYPE /goog/cl_documentai_v1=>ty_017.
      
      TRY.
      
      * open http connection
          DATA(lo_client) = NEW /goog/cl_documentai_v1( iv_key_name = 'DEMO_DOC_PROCESSING' ).
      
      * populate relevant parameters
          lv_p_projects_id  = 'PROJECT_ID'.
          lv_p_locations_id = 'LOCATION_ID'.
          lv_p_processors_id = 'PROCESSOR_ID'.
          ls_input-input_documents-gcs_prefix-gcs_uri_prefix = 'SOURCE_BUCKET_URI'.
          ls_input-document_output_config-gcs_output_config-gcs_uri = 'TARGET_BUCKET_URI'.
      
      * call api method
          CALL METHOD lo_client->batch_process_processors
            EXPORTING
              iv_p_projects_id   = lv_p_projects_id
              iv_p_locations_id  = lv_p_locations_id
              iv_p_processors_id = lv_p_processors_id
              is_input           = ls_input
            IMPORTING
              es_output          = DATA(ls_output)
              ev_ret_code        = DATA(lv_ret_code)
              ev_err_text        = DATA(lv_err_text)
              es_err_resp        = DATA(ls_err_resp).
      
          IF lo_client->is_success( lv_ret_code ).
            MESSAGE 'Success' TYPE 'S'.
          ELSE.
            MESSAGE lv_err_text TYPE 'E'.
          ENDIF.
      
      * close http connection
          lo_client->close( ).
      
        CATCH /goog/cx_sdk INTO DATA(lo_exception).
          MESSAGE lo_exception->get_text( ) TYPE 'E'.
      ENDTRY.
      

      다음을 바꿉니다.

      • DEMO_DOC_PROCESSING: 클라이언트 키 이름입니다.
      • PROJECT_ID: Google Cloud 프로젝트의 ID입니다.
      • LOCATION_ID: 프로세서의 위치입니다.
      • PROCESSOR_ID: 프로세서의 ID입니다.
      • SOURCE_BUCKET_URI: 소스 문서 처리를 위해 유지되는 Cloud Storage 버킷 폴더의 URI입니다.
      • TARGET_BUCKET_URI: 처리된 문서(JSON 파일)를 저장할 Cloud Storage 버킷의 URI입니다.
  2. SE38에서 애플리케이션을 실행합니다.

  3. 결과를 확인하려면 다음 단계를 따르세요.

    1. Google Cloud 콘솔에서 Cloud Storage 버킷 페이지로 이동합니다.

    2. 대상 버킷을 엽니다. 처리된 문서는 JSON 파일 형식으로 저장됩니다.

다음 단계