다음을 통해 공유


인바운드 및 아웃바운드 배송 주문 사용 예

메모

Azure Active Directory는 이제 Microsoft Entra ID입니다. 자세히 알아보기

이 문서에서는 메시지 처리를 통해 인바운드 및 아웃바운드 배송 주문을 생성하는 방법을 보여 주는 예제 시나리오를 제공합니다. USMF 예시 법인(회사)과 연결된 표준 샘플 데이터를 사용합니다.

생성 프로세스를 테스트하는 방법

메시지를 통해 인바운드 및 아웃바운드 배송 주문 생성 프로세스를 시도하려면 소스 시스템 레코드에 대해 수동 아웃바운드 배송 주문 메시지 생성 활성화수동 인바운드 배송 주문 메시지 생성 활성화 옵션을 로 설정합니다. 그런 다음 아웃바운드 배송 주문 메시지인바운드 배송 주문 메시지 페이지에서 직접 배송 주문 메시지를 생성할 수 있습니다.

예제 메시지를 게시하는 또 다른 빠른 방법은 OData(Open Data Protocol) 요청을 사용하는 것입니다.

두 가지 예 모두에서 Microsoft Dynamics 365 Supply Chain Management의 메시지 프로세서는 메시지를 처리하고 창고 시스템에서 주문을 생성합니다.

메시지를 통해 배송 주문 생성 프로세스를 완전히 건너뛰려면 소스 시스템에 대해 수동 인바운드 배송 주문 생성 활성화수동 아웃바운드 배송 주문 생성 활성화 설정을 허용하여 주문 페이지에서 직접 인바운드 배송 주문 및 아웃바운드 배송 주문을 생성할 수 있습니다.

인바운드 및 아웃바운드 배송 주문 메시지 모두에 동일한 메시지 구조 논리가 적용됩니다.

  • 주문 헤더

    • 주문 라인 1

    • 주문 라인 2

    • 주문 라인 n

  • 완료

메시지 생성과 인벤토리 및 제품 마스터 데이터 통합을 위한 HTTP 요청의 더 많은 예를 보려면 GitHub의 dynamics365scm-warehouse 저장소로 이동하세요.

전제 조건

Supply Chain Management 환경을 사용하여 이 예를 진행하려면 먼저 다음 방법으로 시스템을 준비해야 합니다.

  • 버전 요구 사항을 확인하고 창고 관리 전용 모드 활성화 및 구성에 설명된 대로 기능을 활성화합니다.
  • 표준 데모 데이터가 설치된 시스템에서 작업하고 USMF 법인을 선택합니다.
  • 소스 시스템 페이지에서 레코드를 하나 이상 설정합니다. 이 예제 시나리오에서는 소스 시스템 필드가 ERP로 설정된 소스 시스템을 설정했다고 가정합니다. 자세한 내용은 소스 시스템 구성을 참조하세요.
  • 숫자 시퀀스 설정에 설명된 대로 필요한 숫자 시퀀스를 설정합니다.

예제를 위한 인증 설정

Microsoft Entra ID 애플리케이션 페이지에서, 외부 소스에서 Supply Chain Management 환경과 상호 작용하는 동안 인증에 사용되는 클라이언트에 Admin 사용자를 할당합니다. 또는 기본 창고 시스템 통합 운영자 역할과 같이 통합 메시지에 대한 인증 액세스 권한이 있는 다른 사용자를 할당합니다. 동일한 사용자를 제품 마스터 데이터 가져오기의 일부로 사용하는 경우, 제품 마스터 데이터 엔터티와 관련된 더 많은 권한을 창고 시스템 통합 운영자 역할에 추가해야 합니다.

OData를 통해 엔티티를 게시할 때, 엔터티를 게시할 회사와 사용자의 기본 회사가 일치하는지 또는 요청 페이로드 메시지에 회사(dataAreaId 값)가 지정되어 있는지 확인해야 합니다. 어느 쪽이든, 배송 주문 메시지는 회사(dataAreaId 값)가 지정되어야 완료될 수 있습니다.

배송 주문 메시지 만들기

간단한 인바운드 배송 주문 메시지의 예

InboundShipmentOrderMessages 인바운드 배송 주문 헤더 메시지의 경우 최소한 다음 데이터를 제공해야 합니다.

  • MessageId: M1
  • dataAreaId: USMF(선택 사항, 기본 인증 사용자 회사에 따라 다름)
  • SourceSystemId: ERP
  • OrderNumber: IO1
  • ReceivingWarehouseId: 51

변수를 사용하는 경우 InboundShipmentOrderMessages 메시지는 다음 예와 같습니다.

POST {{resource}}/data/InboundShipmentOrderMessages
{
"MessageId": "{{MessageId}}",
"dataAreaId": "{{dataAreaId}}",
"SourceSystemId": "{{SourceSystem}}",
"OrderNumber": "{{OrderNumber}}",
"ReceivingWarehouseId": "{{Warehouse}}"
}

InboundShipmentOrderLineMessages 메시지는 다음 예와 같이 보이게 됩니다.

POST {{resource}}/data/InboundShipmentOrderLineMessages
{
"MessageId": "{{MessageId}}",
"dataAreaId": "{{dataAreaId}}",
"SourceSystemId": "{{SourceSystem}}",
"OrderNumber": "{{OrderNumber}}",
"OrderLineNumber": 1,
"ItemNumber": "A0001",
"ExpectedQuantity": 10,
"ExpectedUnitSymbol": "Pcs"
}

메시지를 커밋하려면 헤더와 라인에 대한 완전한 메시지를 게시합니다. 완전한 메시지는 다음 예와 같이 보이게 됩니다.

POST {{resource}}/data/InboundShipmentOrderMessages(MessageId='{{MessageId}}', dataAreaId='{{dataAreaId}}',SourceSystemId='{{SourceSystem}}', OrderNumber='{{OrderNumber}}')/Microsoft.Dynamics.DataEntities.Complete?cross-company=true

참고

dataAreaId 값은 릴리스된 헤더 및 라인 메시지와 일치하는 키의 일부로 사용됩니다. 따라서 dataAreaId 값이 지정되어야 합니다. 접미사 ?cross-company=true는 회사가 Microsoft Entra ID 애플리케이션 페이지에 설정된 사용자의 기본 회사와 다른 메시지에만 필요합니다.

간단한 아웃바운드 배송 주문 메시지의 예

OutboundShipmentOrderMessages 아웃바운드 배송 주문 헤더 메시지의 경우 최소한 다음 데이터를 제공해야 합니다.

  • MessageId: M2
  • dataAreaId: USMF(선택 사항, 기본 인증 사용자 회사에 따라 다름)
  • SourceSystemId: ERP
  • OrderNumber: OO1
  • ShipFromWarehouseId: 51
  • ConsigneeName 또는 ReceiverName: Microsoft
  • ConsigneeCountryRegionId 또는 ReceiverCountryRegionId: USA

변수를 사용하는 경우 OutboundShipmentOrderMessages 메시지는 다음 예와 같습니다.

POST {{resource}}/data/OutboundShipmentOrderMessages
{
"MessageId": "{{MessageId}}",
"dataAreaId": "{{dataAreaId}}",
"SourceSystemId": "{{SourceSystem}}",
"OrderNumber": "{{OrderNumber}}",
"ShipFromWarehouseId": "{{Warehouse}}",
"ConsigneeName": "{{ConsigneeName}}",
"ConsigneeCountryRegionId": "{{ConsigneeCountryRegionId}}"
}

OutboundShipmentOrderLineMessages 메시지는 다음 예와 같이 보이게 됩니다.

POST {{resource}}/data/OutboundShipmentOrderLineMessages
{
"MessageId": "{{MessageId}}",
"dataAreaId": "{{dataAreaId}}",
"SourceSystemId": "{{SourceSystem}}",
"OrderNumber": "{{OrderNumber}}",
"OrderLineNumber": 1,
"ItemNumber": "A0001",
"OrderedQuantity": 10,
"OrderedUnitSymbol": "Pcs"
}

메시지를 커밋하려면 헤더에 대한 완전한 메시지를 게시합니다. 완전한 메시지는 다음 예와 같이 보이게 됩니다.

POST {{resource}}/data/OutboundShipmentOrderMessages(MessageId='{{MessageId}}', dataAreaId='{{dataAreaId}}',SourceSystemId='{{SourceSystem}}', OrderNumber='{{OrderNumber}}')/Microsoft.Dynamics.DataEntities.Complete?cross-company=true

참고

dataAreaId 값은 릴리스된 헤더 및 라인 메시지와 일치하는 키의 일부로 사용됩니다. 따라서 dataAreaId 값이 지정되어야 합니다. 접미사 ?cross-company=true는 회사가 Microsoft Entra ID 애플리케이션 페이지에 설정된 사용자의 기본 회사와 다른 메시지에만 필요합니다.

배송 주문에 대한 메시지 프로세서 메시지

두 문서를 메시지 대기열으로 가져온 후에 메시지 프로세서를 사용하여 이를 처리하고 실제 인바운드 및 아웃바운드 배송 주문을 생성해야 합니다.