summaryrefslogtreecommitdiff
path: root/public/wsdl/품질/IF_ECC_EVCP_PR_INFORMATION.wsdl
blob: fb23f7ce5dfd92dfef11fb66b23819521fd8c2c8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
<?xml version="1.0" encoding="UTF-8"?>
<!-- WSDL: eVCP 품질서버(60.101.108.101) <> S-ERP ECC PR 정보 인터페이스 -->
<!-- Program ID: IF_ECC_EVCP_PR_INFORMATION -->
<!-- 인터페이스 정의서의 필드명을 그대로 사용했습니다 (동일하게 스키마 구성 예정) -->
<wsdl:definitions name="IF_ECC_EVCP_PR_INFORMATION" targetNamespace="http://60.101.108.101/"
  xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
  xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
  xmlns:tns="http://60.101.108.101/"
  xmlns:xsd="http://www.w3.org/2001/XMLSchema">

  <!-- 1) 데이터 타입(XSD) 정의 -->
  <wsdl:types>
    <xsd:schema attributeFormDefault="unqualified" elementFormDefault="unqualified"
      targetNamespace="http://60.101.108.101/"
      xmlns:xs="http://www.w3.org/2001/XMLSchema"
      xmlns:tns="http://60.101.108.101/">

      <!-- 1.1) 최상위 Request 복합타입 -->
      <xs:complexType name="IF_ECC_EVCP_PR_INFORMATIONReq">
        <xs:sequence>
          <!-- 전체 요청의 생성/삭제 구분 -->
          <xs:element name="CHG_GB" type="xs:string"/>
          <!-- Header 레코드 집합 -->
          <xs:element name="T_BID_HEADER" type="tns:T_BID_HEADER" maxOccurs="unbounded" minOccurs="0"/>
          <!-- Item  레코드 집합 -->
          <xs:element name="T_BID_ITEM"   type="tns:T_BID_ITEM"   maxOccurs="unbounded" minOccurs="0"/>
        </xs:sequence>
      </xs:complexType>

      <!-- 1.2) Header 테이블 구조 (SEQ 1~8) -->
      <xs:complexType name="T_BID_HEADER">
        <xs:sequence>
          <xs:element name="ANFNR"         type="xs:string"/>
          <xs:element name="WERKS"         type="xs:string" minOccurs="0"/>
          <xs:element name="EKORG"         type="xs:string" minOccurs="0"/>
          <xs:element name="EKGRP"         type="xs:string" minOccurs="0"/>
          <xs:element name="ZBSART"        type="xs:string"/>
          <xs:element name="ZRFQ_TRS_DT"   type="xs:string" minOccurs="0"/>
          <xs:element name="ZRFQ_TRS_TM"   type="xs:string" minOccurs="0"/>
        </xs:sequence>
      </xs:complexType>

      <!-- 1.3) Item 테이블 구조 (SEQ 9~38) -->
      <xs:complexType name="T_BID_ITEM">
        <xs:sequence>
          <xs:element name="ANFNR"        type="xs:string"/>
          <xs:element name="ANFPS"        type="xs:string"/>
          <xs:element name="BANFN"        type="xs:string"/>
          <xs:element name="BANPO"        type="xs:string"/>
          <xs:element name="ZREQ_FN"      type="xs:string" minOccurs="0"/>
          <xs:element name="ZREQ_PO"      type="xs:string" minOccurs="0"/>
          <xs:element name="PERNR"        type="xs:string" minOccurs="0"/>
          <xs:element name="MATNR"        type="xs:string" minOccurs="0"/>
          <xs:element name="TXZ01"        type="xs:string" minOccurs="0"/>
          <xs:element name="MATKL"        type="xs:string" minOccurs="0"/>
          <xs:element name="PSPID"        type="xs:string" minOccurs="0"/>
          <xs:element name="POSID"        type="xs:string" minOccurs="0"/>
          <xs:element name="MENGE"        type="xs:string" minOccurs="0"/>
          <xs:element name="MEINS"        type="xs:string" minOccurs="0"/>
          <xs:element name="BPRME"        type="xs:string" minOccurs="0"/>
          <xs:element name="BRGEW"        type="xs:string" minOccurs="0"/>
          <xs:element name="GEWEI"        type="xs:string"  minOccurs="0"/>
          <xs:element name="LFDAT"        type="xs:string"  minOccurs="0"/>
          <xs:element name="PREIS"        type="xs:string" minOccurs="0"/>
          <xs:element name="WAERS1"       type="xs:string"  minOccurs="0"/>
          <xs:element name="PEINH"        type="xs:string" minOccurs="0"/>
          <xs:element name="KNTTP"        type="xs:string"  minOccurs="0"/>
          <xs:element name="AUFNR"        type="xs:string"  minOccurs="0"/>
          <xs:element name="ZRSLT_AMT"    type="xs:string" minOccurs="0"/>
          <xs:element name="WAERS2"       type="xs:string"  minOccurs="0"/>
          <xs:element name="ZCON_NO_PO"   type="xs:string"  minOccurs="0"/>
          <xs:element name="EBELP"        type="xs:string"  minOccurs="0"/>
          <xs:element name="DISMM"        type="xs:string"  minOccurs="0"/>
          <xs:element name="KOSTL"        type="xs:string"  minOccurs="0"/>
          <xs:element name="SAKTO"        type="xs:string"  minOccurs="0"/>
        </xs:sequence>
      </xs:complexType>

      <!-- 1.4) 수신 시스템 응답 구조 (SEQ 39~40) -->
      <!-- EV_TYPE 값 S:Success, E:Error -->
      <xs:simpleType name="EV_TYPE_Type">
        <xs:restriction base="xs:string">
          <xs:enumeration value="S"/>
          <xs:enumeration value="E"/>
        </xs:restriction>
      </xs:simpleType>

      <xs:complexType name="IF_ECC_EVCP_PR_INFORMATIONRes">
        <xs:sequence>
          <xs:element name="EV_TYPE"    type="tns:EV_TYPE_Type"/>
          <xs:element name="EV_MESSAGE" type="xs:string" minOccurs="0"/>
        </xs:sequence>
      </xs:complexType>

      <!-- 1.5) Element 래퍼 -->
      <xs:element name="IF_ECC_EVCP_PR_INFORMATIONReq" type="tns:IF_ECC_EVCP_PR_INFORMATIONReq"/>
      <xs:element name="IF_ECC_EVCP_PR_INFORMATIONRes" type="tns:IF_ECC_EVCP_PR_INFORMATIONRes"/>
    </xsd:schema>
  </wsdl:types>

  <!-- 2) 메시지 정의: SOAP 요청/응답에서 사용되는 래퍼(Message)로, XSD에서 정의한 Element를 연결 -->
  <wsdl:message name="process">
    <wsdl:part name="IF_ECC_EVCP_PR_INFORMATIONReq" element="tns:IF_ECC_EVCP_PR_INFORMATIONReq"/>
  </wsdl:message>

  <wsdl:message name="processResponse">
    <wsdl:part name="IF_ECC_EVCP_PR_INFORMATIONRes" element="tns:IF_ECC_EVCP_PR_INFORMATIONRes"/>
  </wsdl:message>

  <!-- 3) 포트타입 정의: 실제 Operation(메서드) 집합을 선언하고, 각 Operation별로 사용될 메시지를 매핑 -->
  <wsdl:portType name="IF_ECC_EVCP_PR_INFORMATION">
    <wsdl:operation name="process">
      <wsdl:input  name="process"          message="tns:process"/>
      <wsdl:output name="processResponse"  message="tns:processResponse"/>
    </wsdl:operation>
  </wsdl:portType>

  <!-- 4) 바인딩 정의 (SOAP Document/Literal): 포트타입을 HTTP+SOAP 프로토콜에 연결하고, 메시지 인코딩 방식을 명시 -->
  <wsdl:binding name="IF_ECC_EVCP_PR_INFORMATIONServiceSoapBinding" type="tns:IF_ECC_EVCP_PR_INFORMATION">
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
    <wsdl:operation name="process">
      <soap:operation soapAction="" style="document"/>
      <wsdl:input name="process">
        <soap:body use="literal"/>
      </wsdl:input>
      <wsdl:output name="processResponse">
        <soap:body use="literal"/>
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>

  <!-- 5) 실제 서비스 엔드포인트 정의: 물리적인 URL 주소(soap:address)를 포함해 클라이언트가 호출할 대상 포트를 지정 -->
  <wsdl:service name="IF_ECC_EVCP_PR_INFORMATIONService">
    <wsdl:port name="IF_ECC_EVCP_PR_INFORMATIONPort" binding="tns:IF_ECC_EVCP_PR_INFORMATIONServiceSoapBinding">
      <soap:address location="http://60.101.108.101/api/IF_ECC_EVCP_PR_INFORMATION"/>
    </wsdl:port>
  </wsdl:service>
</wsdl:definitions>