diff options
| author | dujinkim <dujin.kim@dtsolution.co.kr> | 2025-06-05 01:55:33 +0000 |
|---|---|---|
| committer | dujinkim <dujin.kim@dtsolution.co.kr> | 2025-06-05 01:55:33 +0000 |
| commit | 4239461f2364c016753fcfabe431a858f356b6d7 (patch) | |
| tree | 11d7fdfb5319fe6e625dee291bd77327ef80b79a | |
| parent | 610d3bccf1cb640e2a21df28d8d2a954c2bf337e (diff) | |
| parent | ccd6515000e36b02a52c2f8cd26bcc553d5e7326 (diff) | |
(merge) 스키마 변경사항 머지 처리 (OCR - SOAP)
| -rw-r--r-- | app/api/(S-ERP)/(MDG)/IF_MDZ_EVCP_MODEL_MASTER/route.ts | 927 | ||||
| -rw-r--r-- | db/schema/MDG/modelMaster.ts | 178 | ||||
| -rw-r--r-- | db/schema/index.ts | 5 | ||||
| -rw-r--r-- | db/schema/vendors.ts | 647 | ||||
| -rw-r--r-- | public/wsdl/IF_MDZ_EVCP_CUSTOMER_MASTER.wsdl | 240 | ||||
| -rw-r--r-- | public/wsdl/IF_MDZ_EVCP_DEPARTMENT_CODE.wsdl | 61 | ||||
| -rw-r--r-- | public/wsdl/IF_MDZ_EVCP_EMPLOYEE_MASTER.wsdl | 275 | ||||
| -rw-r--r-- | public/wsdl/IF_MDZ_EVCP_EMPLOYEE_REFERENCE_MASTER.wsdl | 39 | ||||
| -rw-r--r-- | public/wsdl/IF_MDZ_EVCP_EQUP_MASTER.wsdl | 128 | ||||
| -rw-r--r-- | public/wsdl/IF_MDZ_EVCP_MATERIAL_MASTER_PART.wsdl | 142 | ||||
| -rw-r--r-- | public/wsdl/IF_MDZ_EVCP_MATERIAL_MASTER_PART_RETURN.wsdl | 29 | ||||
| -rw-r--r-- | public/wsdl/IF_MDZ_EVCP_MODEL_MASTER.wsdl | 221 | ||||
| -rw-r--r-- | public/wsdl/IF_MDZ_EVCP_ORGANIZATION_MASTER.wsdl | 239 | ||||
| -rw-r--r-- | public/wsdl/IF_MDZ_EVCP_PROJECT_MASTER.wsdl | 109 | ||||
| -rw-r--r-- | public/wsdl/IF_MDZ_EVCP_VENDOR_MASTER.wsdl | 245 | ||||
| -rw-r--r-- | public/wsdl/P2MD3007_AO.wsdl | 1 |
16 files changed, 3178 insertions, 308 deletions
diff --git a/app/api/(S-ERP)/(MDG)/IF_MDZ_EVCP_MODEL_MASTER/route.ts b/app/api/(S-ERP)/(MDG)/IF_MDZ_EVCP_MODEL_MASTER/route.ts new file mode 100644 index 00000000..6c73cf08 --- /dev/null +++ b/app/api/(S-ERP)/(MDG)/IF_MDZ_EVCP_MODEL_MASTER/route.ts @@ -0,0 +1,927 @@ +import { XMLParser } from "fast-xml-parser"; +import { readFileSync } from "fs"; +import { NextRequest, NextResponse } from "next/server"; +import { join } from "path"; +import db from "@/db/db"; +import { MATL, DESC, PLNT, UNIT, CLASSASGN, CHARASGN } from "@/db/schema/MDG/modelMaster"; +import { eq } from "drizzle-orm"; + +// 요청 데이터 인터페이스 정의 +interface RequestData { + materials: Material[]; +} + +// 애플리케이션 내부 데이터 모델 (XML 필드와 1:1 매핑) +interface Material { + matnr?: string; // Material Number + mbrsh?: string; // Industry Sector + mtart?: string; // Material Type + lvorm?: string; // Deletion flag + meins?: string; // Base Unit of Measure + matkl?: string; // Material Group + bismt?: string; // Old Material Number + spart?: string; // Division + prdha?: string; // Product Hierarchy + mstae?: string; // Cross-plant Material Status + mstde?: string; // Cross-distribution-chain Material Status + brgew?: string; // Gross Weight + gewei?: string; // Weight Unit + ntgew?: string; // Net Weight + volum?: string; // Volume + voleh?: string; // Volume Unit + groes?: string; // Size/dimensions + laeng?: string; // Length + breit?: string; // Width + hoehe?: string; // Height + meabm?: string; // Unit of Dimension + magrv?: string; // Material Group: Packaging Materials + vhart?: string; // Packaging Material Type + zzname?: string; // Material Name (Custom) + zzspec?: string; // Material Specification (Custom) + zzdesc?: string; // Material Description (Custom) + zzmmtyp?: string; // Material Type (Custom) + zzregdt?: string; // Registration Date (Custom) + zzregtm?: string; // Registration Time (Custom) + zzregus?: string; // Registration User (Custom) + zzappdt?: string; // Approval Date (Custom) + zzapptm?: string; // Approval Time (Custom) + zzappus?: string; // Approval User (Custom) + zzlamdt?: string; // Last Modified Date (Custom) + zzlamtm?: string; // Last Modified Time (Custom) + zzlamus?: string; // Last Modified User (Custom) + zzprflg?: string; // Process Flag (Custom) + zzdokar?: string; // Document Type (Custom) + zzdoknr?: string; // Document Number (Custom) + zzdoktl?: string; // Document Part (Custom) + zzdokvr?: string; // Document Version (Custom) + descriptions?: Description[]; + plants?: Plant[]; + units?: Unit[]; + classAssignments?: ClassAssignment[]; + characteristicAssignments?: CharacteristicAssignment[]; +} + +interface Description { + matnr?: string; // Material Number + spras?: string; // Language Key + maktx?: string; // Material Description +} + +interface Plant { + matnr?: string; // Material Number + werks?: string; // Plant + lvorm?: string; // Deletion Flag + mmsta?: string; // Plant-specific Material Status + mmstd?: string; // Plant-specific Material Status Valid From + zzmtarp?: string; // Custom Field + zzregdt?: string; // Registration Date (Custom) + zzregtm?: string; // Registration Time (Custom) + zzregus?: string; // Registration User (Custom) + zzlamdt?: string; // Last Modified Date (Custom) + zzlamtm?: string; // Last Modified Time (Custom) + zzlamus?: string; // Last Modified User (Custom) + zzprflg?: string; // Process Flag (Custom) +} + +interface Unit { + matnr?: string; // Material Number + meinh?: string; // Unit of Measure + umrez?: string; // Numerator for Conversion to Base UoM + umren?: string; // Denominator for Conversion to Base UoM + laeng?: string; // Length + breit?: string; // Width + hoehe?: string; // Height + meabm?: string; // Unit of Dimension + volum?: string; // Volume + voleh?: string; // Volume Unit + brgew?: string; // Gross Weight + gewei?: string; // Weight Unit +} + +interface ClassAssignment { + matnr?: string; // Material Number + class?: string; // Class + klart?: string; // Class Type +} + +interface CharacteristicAssignment { + matnr?: string; // Material Number + class?: string; // Class + klart?: string; // Class Type + atnam?: string; // Characteristic Name + atwrt?: string; // Characteristic Value + atflv?: string; // Value From + atawe?: string; // Value To + atflb?: string; // Description + ataw1?: string; // Additional Value + atbez?: string; // Characteristic Description + atwtb?: string; // Characteristic Value Description +} + +// SOAP XML 데이터 구조 인터페이스 +// XML 기준 대문자 필드명 사용 +interface MatlXML { + MATNR?: string; + MBRSH?: string; + MTART?: string; + LVORM?: string; + MEINS?: string; + MATKL?: string; + BISMT?: string; + SPART?: string; + PRDHA?: string; + MSTAE?: string; + MSTDE?: string; + BRGEW?: string; + GEWEI?: string; + NTGEW?: string; + VOLUM?: string; + VOLEH?: string; + GROES?: string; + LAENG?: string; + BREIT?: string; + HOEHE?: string; + MEABM?: string; + MAGRV?: string; + VHART?: string; + ZZNAME?: string; + ZZSPEC?: string; + ZZDESC?: string; + ZZMMTYP?: string; + ZZREGDT?: string; + ZZREGTM?: string; + ZZREGUS?: string; + ZZAPPDT?: string; + ZZAPPTM?: string; + ZZAPPUS?: string; + ZZLAMDT?: string; + ZZLAMTM?: string; + ZZLAMUS?: string; + ZZPRFLG?: string; + ZZDOKAR?: string; + ZZDOKNR?: string; + ZZDOKTL?: string; + ZZDOKVR?: string; + DESC?: DescXML[]; + PLNT?: PlntXML[]; + UNIT?: UnitXML[]; + CLASSASGN?: ClassAsgnXML[]; + CHARASGN?: CharAsgnXML[]; +} + +interface DescXML { + MATNR?: string; + SPRAS?: string; + MAKTX?: string; +} + +interface PlntXML { + MATNR?: string; + WERKS?: string; + LVORM?: string; + MMSTA?: string; + MMSTD?: string; + ZZMTARP?: string; + ZZREGDT?: string; + ZZREGTM?: string; + ZZREGUS?: string; + ZZLAMDT?: string; + ZZLAMTM?: string; + ZZLAMUS?: string; + ZZPRFLG?: string; +} + +interface UnitXML { + MATNR?: string; + MEINH?: string; + UMREZ?: string; + UMREN?: string; + LAENG?: string; + BREIT?: string; + HOEHE?: string; + MEABM?: string; + VOLUM?: string; + VOLEH?: string; + BRGEW?: string; + GEWEI?: string; +} + +interface ClassAsgnXML { + MATNR?: string; + CLASS?: string; + KLART?: string; +} + +interface CharAsgnXML { + MATNR?: string; + CLASS?: string; + KLART?: string; + ATNAM?: string; + ATWRT?: string; + ATFLV?: string; + ATAWE?: string; + ATFLB?: string; + ATAW1?: string; + ATBEZ?: string; + ATWTB?: string; +} + +// SOAP Body에 대한 데이터 타입 정의 +interface SoapBodyData { + [key: string]: unknown; + IF_MDZ_EVCP_MODEL_MASTERReq?: Record<string, unknown>; + 'tns:IF_MDZ_EVCP_MODEL_MASTERReq'?: Record<string, unknown>; + 'ns1:IF_MDZ_EVCP_MODEL_MASTERReq'?: Record<string, unknown>; + 'p0:IF_MDZ_EVCP_MODEL_MASTERReq'?: Record<string, unknown>; + MATL?: MatlXML[]; +} + +function serveWsdl() { + try { + const wsdlPath = join(process.cwd(), 'public', 'wsdl', 'IF_MDZ_EVCP_MODEL_MASTER.wsdl'); + const wsdlContent = readFileSync(wsdlPath, 'utf-8'); + + return new NextResponse(wsdlContent, { + headers: { + 'Content-Type': 'text/xml; charset=utf-8', + }, + }); + } catch (error) { + console.error('Failed to read WSDL file:', error); + return new NextResponse('WSDL file not found', { status: 404 }); + } +} + +export async function GET(request: NextRequest) { + const url = new URL(request.url); + if (url.searchParams.has('wsdl')) { + return serveWsdl(); + } + + return new NextResponse('Method Not Allowed', { status: 405 }); +} + +// WSDL 기반의 SOAP 요청 (데이터 전송건) 처리하기 (HTTP) +export async function POST(request: NextRequest) { + const url = new URL(request.url); + if (url.searchParams.has('wsdl')) { + return serveWsdl(); + } + + try { + // 요청 본문 (MDZ 데이터)를 가져오기 + const body = await request.text(); + + // 요청 로깅 + console.log('Request Body 일부:', body.substring(0, 200) + (body.length > 200 ? '...' : '')); + + // XML 파서 설정하기 + const parser = new XMLParser({ + ignoreAttributes: false, + attributeNamePrefix: '@_', + parseAttributeValue: false, // 값 조작 방지 + trimValues: true, + isArray: (name: string) => { + return ['MATL', 'DESC', 'PLNT', 'UNIT', 'CLASSASGN', 'CHARASGN'].includes(name); + }, + parseTagValue: false, // 값 조작 방지 + allowBooleanAttributes: true, + }); + + // XML 파싱하기 + const parsedData = parser.parse(body); + + // 디버깅용 - 최상위 구조 확인 + console.log('XML root keys:', Object.keys(parsedData)); + + // 재할당 가능한 변수 선언 + let requestData = null; + + // 가능한 경로 확인 + if (parsedData?.['soap:Envelope']?.['soap:Body']) { + const soapBody = parsedData['soap:Envelope']['soap:Body']; + requestData = extractRequestData(soapBody); + } else if (parsedData?.['SOAP:Envelope']?.['SOAP:Body']) { + const soapBody = parsedData['SOAP:Envelope']['SOAP:Body']; + requestData = extractRequestData(soapBody); + } else if (parsedData?.['Envelope']?.['Body']) { + const soapBody = parsedData['Envelope']['Body']; + requestData = extractRequestData(soapBody); + } else if (parsedData?.['soapenv:Envelope']?.['soapenv:Body']) { + const soapBody = parsedData['soapenv:Envelope']['soapenv:Body']; + requestData = extractRequestData(soapBody); + } else if (parsedData?.['IF_MDZ_EVCP_MODEL_MASTERReq']) { + requestData = parsedData['IF_MDZ_EVCP_MODEL_MASTERReq']; + console.log('Found direct IF_MDZ_EVCP_MODEL_MASTERReq data'); + } else if (parsedData?.['ns1:IF_MDZ_EVCP_MODEL_MASTERReq']) { + requestData = parsedData['ns1:IF_MDZ_EVCP_MODEL_MASTERReq']; + console.log('Found direct ns1:IF_MDZ_EVCP_MODEL_MASTERReq data'); + } else if (parsedData?.['p0:IF_MDZ_EVCP_MODEL_MASTERReq']) { + requestData = parsedData['p0:IF_MDZ_EVCP_MODEL_MASTERReq']; + console.log('Found direct p0:IF_MDZ_EVCP_MODEL_MASTERReq data'); + } else { + // 루트 레벨에서 MATL을 직접 찾기 + if (parsedData?.MATL) { + requestData = parsedData; + console.log('Found MATL data at root level'); + } else { + // 다른 모든 키에 대해 확인 + for (const key of Object.keys(parsedData)) { + const value = parsedData[key]; + // 데이터 구조가 맞는지 확인 (MATL이 있는지) + if (value && value.MATL) { + requestData = value; + console.log(`Found data in root key: ${key}`); + break; + } + + // 키 이름에 IF_MDZ_EVCP_MODEL_MASTERReq가 포함되어 있는지 확인 + if (key.includes('IF_MDZ_EVCP_MODEL_MASTERReq')) { + requestData = value; + console.log(`Found data in root key with matching name: ${key}`); + break; + } + } + } + } + + if (!requestData) { + console.error('Could not find valid request data in the received payload'); + console.error('Received XML structure:', JSON.stringify(parsedData, null, 2)); + throw new Error('Missing request data - could not find IF_MDZ_EVCP_MODEL_MASTERReq or MATL data'); + } + + // 데이터 유효성 검증 + console.log('Validating request data structure:', + `MATL: ${requestData.MATL ? 'found' : 'not found'}` + ); + + // 샘플 데이터 로깅 + if (requestData.MATL && Array.isArray(requestData.MATL) && requestData.MATL.length > 0) { + console.log('First MATL sample:', JSON.stringify(requestData.MATL[0], null, 2)); + } + + // 데이터 구조 정규화 - MDZ 데이터를 우리 애플리케이션 모델로 변환 + const normalizedData: RequestData = { + materials: transformMatlData(requestData.MATL) + }; + + // 기본 유효성 검사 - 필수 필드 확인 + for (const material of normalizedData.materials) { + if (!material.matnr) { + throw new Error('Missing required field: matnr in material'); + } + } + + // 데이터베이스 저장 + await saveToDatabase(normalizedData); + + console.log(`Processed ${normalizedData.materials.length} materials`); + + // XML 응답 생성 + const xmlResponse = `<?xml version="1.0" encoding="UTF-8"?> +<soap:Envelope + xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" + xmlns:tns="http://60.101.108.100/api/IF_MDZ_EVCP_MODEL_MASTER/"> + <soap:Body> + </soap:Body> +</soap:Envelope>`; + + return new NextResponse(xmlResponse, { + headers: { + 'Content-Type': 'text/xml; charset=utf-8', + }, + }); + } catch (error: unknown) { + console.error('API Error:', error); + + // XML 에러 응답 + const errorResponse = `<?xml version="1.0" encoding="UTF-8"?> +<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> + <soap:Body> + <soap:Fault> + <faultcode>soap:Server</faultcode> + <faultstring>${error instanceof Error ? ('[from eVCP]: ' + error.message) : 'Unknown error'}</faultstring> + </soap:Fault> + </soap:Body> +</soap:Envelope>`; + + return new NextResponse(errorResponse, { + status: 500, + headers: { + 'Content-Type': 'text/xml; charset=utf-8', + }, + }); + } +} + +// SOAP Body나 루트에서 요청 데이터 추출하는 헬퍼 함수 +function extractRequestData(data: SoapBodyData): Record<string, unknown> | null { + if (!data) return null; + + if (data['IF_MDZ_EVCP_MODEL_MASTERReq']) { + return data['IF_MDZ_EVCP_MODEL_MASTERReq'] as Record<string, unknown>; + } else if (data['tns:IF_MDZ_EVCP_MODEL_MASTERReq']) { + return data['tns:IF_MDZ_EVCP_MODEL_MASTERReq'] as Record<string, unknown>; + } else if (data['ns1:IF_MDZ_EVCP_MODEL_MASTERReq']) { + return data['ns1:IF_MDZ_EVCP_MODEL_MASTERReq'] as Record<string, unknown>; + } else if (data['p0:IF_MDZ_EVCP_MODEL_MASTERReq']) { + return data['p0:IF_MDZ_EVCP_MODEL_MASTERReq'] as Record<string, unknown>; + } + + // 다른 키 검색 + for (const key of Object.keys(data)) { + if (key.includes('IF_MDZ_EVCP_MODEL_MASTERReq')) { + return data[key] as Record<string, unknown>; + } + } + + // MATL이 직접 있는 경우 + if (data.MATL && Array.isArray(data.MATL)) { + return data; + } + + return null; +} + +// XML MATL 데이터를 내부 Material 형식으로 변환하는 함수 +function transformMatlData(matlData: MatlXML[]): Material[] { + if (!matlData || !Array.isArray(matlData)) { + return []; + } + + return matlData.map(matl => { + const material: Material = { + matnr: matl.MATNR, + mbrsh: matl.MBRSH, + mtart: matl.MTART, + lvorm: matl.LVORM, + meins: matl.MEINS, + matkl: matl.MATKL, + bismt: matl.BISMT, + spart: matl.SPART, + prdha: matl.PRDHA, + mstae: matl.MSTAE, + mstde: matl.MSTDE, + brgew: matl.BRGEW, + gewei: matl.GEWEI, + ntgew: matl.NTGEW, + volum: matl.VOLUM, + voleh: matl.VOLEH, + groes: matl.GROES, + laeng: matl.LAENG, + breit: matl.BREIT, + hoehe: matl.HOEHE, + meabm: matl.MEABM, + magrv: matl.MAGRV, + vhart: matl.VHART, + zzname: matl.ZZNAME, + zzspec: matl.ZZSPEC, + zzdesc: matl.ZZDESC, + zzmmtyp: matl.ZZMMTYP, + zzregdt: matl.ZZREGDT, + zzregtm: matl.ZZREGTM, + zzregus: matl.ZZREGUS, + zzappdt: matl.ZZAPPDT, + zzapptm: matl.ZZAPPTM, + zzappus: matl.ZZAPPUS, + zzlamdt: matl.ZZLAMDT, + zzlamtm: matl.ZZLAMTM, + zzlamus: matl.ZZLAMUS, + zzprflg: matl.ZZPRFLG, + zzdokar: matl.ZZDOKAR, + zzdoknr: matl.ZZDOKNR, + zzdoktl: matl.ZZDOKTL, + zzdokvr: matl.ZZDOKVR, + }; + + // DESC 항목 처리 + if (matl.DESC && Array.isArray(matl.DESC)) { + material.descriptions = matl.DESC.map((desc: DescXML) => ({ + matnr: desc.MATNR, + spras: desc.SPRAS, + maktx: desc.MAKTX + })); + } + + // PLNT 항목 처리 + if (matl.PLNT && Array.isArray(matl.PLNT)) { + + material.plants = matl.PLNT.map((plnt: PlntXML) => ({ + matnr: plnt.MATNR, + werks: plnt.WERKS, + lvorm: plnt.LVORM, + mmsta: plnt.MMSTA, + mmstd: plnt.MMSTD, + zzmtarp: plnt.ZZMTARP, + zzregdt: plnt.ZZREGDT, + zzregtm: plnt.ZZREGTM, + zzregus: plnt.ZZREGUS, + zzlamdt: plnt.ZZLAMDT, + zzlamtm: plnt.ZZLAMTM, + zzlamus: plnt.ZZLAMUS, + zzprflg: plnt.ZZPRFLG + })); + } + + // UNIT 항목 처리 + if (matl.UNIT && Array.isArray(matl.UNIT)) { + material.units = matl.UNIT.map((unit: UnitXML) => ({ + matnr: unit.MATNR, + meinh: unit.MEINH, + umrez: unit.UMREZ, + umren: unit.UMREN, + laeng: unit.LAENG, + breit: unit.BREIT, + hoehe: unit.HOEHE, + meabm: unit.MEABM, + volum: unit.VOLUM, + voleh: unit.VOLEH, + brgew: unit.BRGEW, + gewei: unit.GEWEI + })); + } + + // CLASSASGN 항목 처리 + if (matl.CLASSASGN && Array.isArray(matl.CLASSASGN)) { + material.classAssignments = matl.CLASSASGN.map((cls: ClassAsgnXML) => ({ + matnr: cls.MATNR, + class: cls.CLASS, + klart: cls.KLART + })); + } + + // CHARASGN 항목 처리 + if (matl.CHARASGN && Array.isArray(matl.CHARASGN)) { + material.characteristicAssignments = matl.CHARASGN.map((char: CharAsgnXML) => ({ + matnr: char.MATNR, + class: char.CLASS, + klart: char.KLART, + atnam: char.ATNAM, + atwrt: char.ATWRT, + atflv: char.ATFLV, + atawe: char.ATAWE, + atflb: char.ATFLB, + ataw1: char.ATAW1, + atbez: char.ATBEZ, + atwtb: char.ATWTB + })); + } + + return material; + }); +} + +// 데이터베이스 저장 함수 +async function saveToDatabase(data: RequestData) { + console.log(`데이터베이스 저장 함수가 호출됨. ${data.materials.length}개의 자재 데이터 수신.`); + + try { + // 트랜잭션으로 모든 데이터 처리 + await db.transaction(async (tx) => { + for (const material of data.materials) { + if (!material.matnr) { + console.warn('자재번호(MATNR)가 없는 항목 발견, 건너뜁니다.'); + continue; + } + + // 1. MATL 테이블 Upsert + await tx.insert(MATL) + .values({ + MATNR: material.matnr, + MBRSH: material.mbrsh || null, + MTART: material.mtart || null, + LVORM: material.lvorm || null, + MEINS: material.meins || null, + MATKL: material.matkl || null, + BISMT: material.bismt || null, + SPART: material.spart || null, + PRDHA: material.prdha || null, + MSTAE: material.mstae || null, + MSTDE: material.mstde || null, + BRGEW: material.brgew || null, + GEWEI: material.gewei || null, + NTGEW: material.ntgew || null, + VOLUM: material.volum || null, + VOLEH: material.voleh || null, + GROES: material.groes || null, + LAENG: material.laeng || null, + BREIT: material.breit || null, + HOEHE: material.hoehe || null, + MEABM: material.meabm || null, + MAGRV: material.magrv || null, + VHART: material.vhart || null, + ZZNAME: material.zzname || null, + ZZSPEC: material.zzspec || null, + ZZDESC: material.zzdesc || null, + ZZMMTYP: material.zzmmtyp || null, + ZZREGDT: material.zzregdt || null, + ZZREGTM: material.zzregtm || null, + ZZREGUS: material.zzregus || null, + ZZAPPDT: material.zzappdt || null, + ZZAPPTM: material.zzapptm || null, + ZZAPPUS: material.zzappus || null, + ZZLAMDT: material.zzlamdt || null, + ZZLAMTM: material.zzlamtm || null, + ZZLAMUS: material.zzlamus || null, + ZZPRFLG: material.zzprflg || null, + ZZDOKAR: material.zzdokar || null, + ZZDOKNR: material.zzdoknr || null, + ZZDOKTL: material.zzdoktl || null, + ZZDOKVR: material.zzdokvr || null, + }) + .onConflictDoUpdate({ + target: MATL.MATNR, + set: { + MBRSH: material.mbrsh || null, + MTART: material.mtart || null, + LVORM: material.lvorm || null, + MEINS: material.meins || null, + MATKL: material.matkl || null, + BISMT: material.bismt || null, + SPART: material.spart || null, + PRDHA: material.prdha || null, + MSTAE: material.mstae || null, + MSTDE: material.mstde || null, + BRGEW: material.brgew || null, + GEWEI: material.gewei || null, + NTGEW: material.ntgew || null, + VOLUM: material.volum || null, + VOLEH: material.voleh || null, + GROES: material.groes || null, + LAENG: material.laeng || null, + BREIT: material.breit || null, + HOEHE: material.hoehe || null, + MEABM: material.meabm || null, + MAGRV: material.magrv || null, + VHART: material.vhart || null, + ZZNAME: material.zzname || null, + ZZSPEC: material.zzspec || null, + ZZDESC: material.zzdesc || null, + ZZMMTYP: material.zzmmtyp || null, + ZZREGDT: material.zzregdt || null, + ZZREGTM: material.zzregtm || null, + ZZREGUS: material.zzregus || null, + ZZAPPDT: material.zzappdt || null, + ZZAPPTM: material.zzapptm || null, + ZZAPPUS: material.zzappus || null, + ZZLAMDT: material.zzlamdt || null, + ZZLAMTM: material.zzlamtm || null, + ZZLAMUS: material.zzlamus || null, + ZZPRFLG: material.zzprflg || null, + ZZDOKAR: material.zzdokar || null, + ZZDOKNR: material.zzdoknr || null, + ZZDOKTL: material.zzdoktl || null, + ZZDOKVR: material.zzdokvr || null, + updatedAt: new Date(), + } + }); + + // 2. 하위 테이블 데이터 처리 (Upsert) + // DESC 테이블 데이터 처리 + if (material.descriptions && material.descriptions.length > 0) { + // 기존 데이터 조회 (해당 자재의 모든 설명) + const existingDescs = await tx.select().from(DESC) + .where(eq(DESC.MATNR, material.matnr)); + + // 설명 데이터 매핑 + const existingDescsMap = new Map( + existingDescs.map(desc => [`${desc.MATNR}-${desc.SPRAS}`, desc]) + ); + + for (const desc of material.descriptions) { + if (!desc.matnr && !material.matnr) continue; // 자재번호 필수 + + const matnr = desc.matnr || material.matnr; + const spras = desc.spras || ''; + const key = `${matnr}-${spras}`; + + if (existingDescsMap.has(key)) { + // 기존 데이터 업데이트 + await tx.update(DESC) + .set({ + MAKTX: desc.maktx || null, + updatedAt: new Date() + }) + .where(eq(DESC.id, existingDescsMap.get(key)!.id)); + } else { + // 신규 데이터 삽입 + await tx.insert(DESC).values({ + MATNR: matnr, + SPRAS: desc.spras || null, + MAKTX: desc.maktx || null, + }); + } + } + } + + // PLNT 테이블 데이터 처리 + if (material.plants && material.plants.length > 0) { + // 기존 데이터 조회 + const existingPlants = await tx.select().from(PLNT) + .where(eq(PLNT.MATNR, material.matnr)); + + // 플랜트 데이터 매핑 + const existingPlantsMap = new Map( + existingPlants.map(plant => [`${plant.MATNR}-${plant.WERKS}`, plant]) + ); + + for (const plant of material.plants) { + if (!plant.matnr && !material.matnr) continue; // 자재번호 필수 + if (!plant.werks) continue; // 플랜트 코드 필수 + + const matnr = plant.matnr || material.matnr; + const werks = plant.werks; + const key = `${matnr}-${werks}`; + + if (existingPlantsMap.has(key)) { + // 기존 데이터 업데이트 + await tx.update(PLNT) + .set({ + LVORM: plant.lvorm || null, + MMSTA: plant.mmsta || null, + MMSTD: plant.mmstd || null, + ZZMTARP: plant.zzmtarp || null, + ZZREGDT: plant.zzregdt || null, + ZZREGTM: plant.zzregtm || null, + ZZREGUS: plant.zzregus || null, + ZZLAMDT: plant.zzlamdt || null, + ZZLAMTM: plant.zzlamtm || null, + ZZLAMUS: plant.zzlamus || null, + ZZPRFLG: plant.zzprflg || null, + updatedAt: new Date() + }) + .where(eq(PLNT.id, existingPlantsMap.get(key)!.id)); + } else { + // 신규 데이터 삽입 + await tx.insert(PLNT).values({ + MATNR: matnr, + WERKS: werks, + LVORM: plant.lvorm || null, + MMSTA: plant.mmsta || null, + MMSTD: plant.mmstd || null, + ZZMTARP: plant.zzmtarp || null, + ZZREGDT: plant.zzregdt || null, + ZZREGTM: plant.zzregtm || null, + ZZREGUS: plant.zzregus || null, + ZZLAMDT: plant.zzlamdt || null, + ZZLAMTM: plant.zzlamtm || null, + ZZLAMUS: plant.zzlamus || null, + ZZPRFLG: plant.zzprflg || null, + }); + } + } + } + + // UNIT 테이블 데이터 처리 + if (material.units && material.units.length > 0) { + // 기존 데이터 조회 + const existingUnits = await tx.select().from(UNIT) + .where(eq(UNIT.MATNR, material.matnr)); + + // 단위 데이터 매핑 + const existingUnitsMap = new Map( + existingUnits.map(unit => [`${unit.MATNR}-${unit.MEINH}`, unit]) + ); + + for (const unit of material.units) { + if (!unit.matnr && !material.matnr) continue; // 자재번호 필수 + if (!unit.meinh) continue; // 단위 코드 필수 + + const matnr = unit.matnr || material.matnr; + const meinh = unit.meinh; + const key = `${matnr}-${meinh}`; + + if (existingUnitsMap.has(key)) { + // 기존 데이터 업데이트 + await tx.update(UNIT) + .set({ + UMREZ: unit.umrez || null, + UMREN: unit.umren || null, + LAENG: unit.laeng || null, + BREIT: unit.breit || null, + HOEHE: unit.hoehe || null, + MEABM: unit.meabm || null, + VOLUM: unit.volum || null, + VOLEH: unit.voleh || null, + BRGEW: unit.brgew || null, + GEWEI: unit.gewei || null, + updatedAt: new Date() + }) + .where(eq(UNIT.id, existingUnitsMap.get(key)!.id)); + } else { + // 신규 데이터 삽입 + await tx.insert(UNIT).values({ + MATNR: matnr, + MEINH: meinh, + UMREZ: unit.umrez || null, + UMREN: unit.umren || null, + LAENG: unit.laeng || null, + BREIT: unit.breit || null, + HOEHE: unit.hoehe || null, + MEABM: unit.meabm || null, + VOLUM: unit.volum || null, + VOLEH: unit.voleh || null, + BRGEW: unit.brgew || null, + GEWEI: unit.gewei || null, + }); + } + } + } + + // CLASSASGN 테이블 데이터 처리 + if (material.classAssignments && material.classAssignments.length > 0) { + // 기존 데이터 조회 + const existingClassAsgns = await tx.select().from(CLASSASGN) + .where(eq(CLASSASGN.MATNR, material.matnr)); + + // 클래스 할당 데이터 매핑 + const existingClassAsgnsMap = new Map( + existingClassAsgns.map(cls => [`${cls.MATNR}-${cls.CLASS}-${cls.KLART}`, cls]) + ); + + for (const cls of material.classAssignments) { + if (!cls.matnr && !material.matnr) continue; // 자재번호 필수 + if (!cls.class || !cls.klart) continue; // 클래스 및 유형 필수 + + const matnr = cls.matnr || material.matnr; + const clsVal = cls.class; + const klart = cls.klart; + const key = `${matnr}-${clsVal}-${klart}`; + + if (!existingClassAsgnsMap.has(key)) { + // 클래스 할당은 기본키 자체가 변경되는 경우가 드물어 신규 삽입만 처리 + await tx.insert(CLASSASGN).values({ + MATNR: matnr, + CLASS: clsVal, + KLART: klart, + }); + } + } + } + + // CHARASGN 테이블 데이터 처리 + if (material.characteristicAssignments && material.characteristicAssignments.length > 0) { + // 기존 데이터 조회 + const existingCharAsgns = await tx.select().from(CHARASGN) + .where(eq(CHARASGN.MATNR, material.matnr)); + + // 특성 할당 데이터 매핑 + const existingCharAsgnsMap = new Map( + existingCharAsgns.map(char => + [`${char.MATNR}-${char.CLASS}-${char.KLART}-${char.ATNAM}`, char] + ) + ); + + for (const char of material.characteristicAssignments) { + if (!char.matnr && !material.matnr) continue; // 자재번호 필수 + if (!char.class || !char.klart || !char.atnam) continue; // 클래스, 유형, 특성명 필수 + + const matnr = char.matnr || material.matnr; + const clsVal = char.class; + const klart = char.klart; + const atnam = char.atnam; + const key = `${matnr}-${clsVal}-${klart}-${atnam}`; + + if (existingCharAsgnsMap.has(key)) { + // 기존 데이터 업데이트 + await tx.update(CHARASGN) + .set({ + ATWRT: char.atwrt || null, + ATFLV: char.atflv || null, + ATAWE: char.atawe || null, + ATFLB: char.atflb || null, + ATAW1: char.ataw1 || null, + ATBEZ: char.atbez || null, + ATWTB: char.atwtb || null, + updatedAt: new Date() + }) + .where(eq(CHARASGN.id, existingCharAsgnsMap.get(key)!.id)); + } else { + // 신규 데이터 삽입 + await tx.insert(CHARASGN).values({ + MATNR: matnr, + CLASS: clsVal, + KLART: klart, + ATNAM: atnam, + ATWRT: char.atwrt || null, + ATFLV: char.atflv || null, + ATAWE: char.atawe || null, + ATFLB: char.atflb || null, + ATAW1: char.ataw1 || null, + ATBEZ: char.atbez || null, + ATWTB: char.atwtb || null, + }); + } + } + } + } + }); + + console.log(`${data.materials.length}개의 자재 데이터 처리 완료.`); + return true; + } catch (error) { + console.error('데이터베이스 저장 중 오류 발생:', error); + throw error; + } +} diff --git a/db/schema/MDG/modelMaster.ts b/db/schema/MDG/modelMaster.ts new file mode 100644 index 00000000..360989f9 --- /dev/null +++ b/db/schema/MDG/modelMaster.ts @@ -0,0 +1,178 @@ +import { pgTable, serial, varchar, timestamp } from "drizzle-orm/pg-core"; +import { relations } from "drizzle-orm"; + +/** + * 접근법 1: WSDL과 동일하게 DB 테이블/컬럼명 및 변수 이름 만들기 + * - 모든 테이블/컬럼명이 SAP 시스템의 네이밍을 그대로 유지 + * - 개발자가 SAP 시스템에 익숙하다면 이해하기 쉬움 + * - SAP 문서와 비교하기 쉬움 + */ + +// 자재 마스터 테이블 (MATL) +export const MATL = pgTable("MATL", { + id: serial("id").primaryKey(), + MATNR: varchar("MATNR", { length: 18 }).notNull().unique(), // Material Number (자재 번호) (PK) + MBRSH: varchar("MBRSH", { length: 1 }), // Industry Sector (산업 부문) + MTART: varchar("MTART", { length: 4 }), // Material Type (자재 유형) + LVORM: varchar("LVORM", { length: 1 }), // Deletion flag (삭제 플래그) + MEINS: varchar("MEINS", { length: 3 }), // Base Unit of Measure (기본 단위) + MATKL: varchar("MATKL", { length: 9 }), // Material Group (자재 그룹) + BISMT: varchar("BISMT", { length: 18 }), // Old material number (기존 자재 번호) + SPART: varchar("SPART", { length: 2 }), // Division (부문) + PRDHA: varchar("PRDHA", { length: 18 }), // Product hierachy (제품 계층) + MSTAE: varchar("MSTAE", { length: 2 }), // Material Status (자재 상태) + MSTDE: varchar("MSTDE", { length: 8 }), // Date from which the cross-plant material status is (자재 상태 유효 날짜) + BRGEW: varchar("BRGEW", { length: 13 }), // Gross weight (총 중량) + GEWEI: varchar("GEWEI", { length: 3 }), // Weight Unit (중량 단위) + NTGEW: varchar("NTGEW", { length: 13 }), // Net Weight (순 중량) + VOLUM: varchar("VOLUM", { length: 13 }), // Volume (체적) + VOLEH: varchar("VOLEH", { length: 3 }), // Volume Unit (체적 단위) + GROES: varchar("GROES", { length: 32 }), // Size/dimensions (크기/치수) + LAENG: varchar("LAENG", { length: 13 }), // Length (길이) + BREIT: varchar("BREIT", { length: 13 }), // Width (너비) + HOEHE: varchar("HOEHE", { length: 13 }), // Height (높이) + MEABM: varchar("MEABM", { length: 3 }), // Unit of Dimension for Length/Width/Height (치수 단위) + MAGRV: varchar("MAGRV", { length: 4 }), // Material Group: Packaging Materials (포장 자재 그룹) + VHART: varchar("VHART", { length: 4 }), // Packaging Material Type (포장 자재 유형) + ZZNAME: varchar("ZZNAME", { length: 40 }), // Material Name (자재 이름) + ZZSPEC: varchar("ZZSPEC", { length: 255 }), // Specification (자재 사양) + ZZDESC: varchar("ZZDESC", { length: 255 }), // Description (자재 설명) + ZZMMTYP: varchar("ZZMMTYP", { length: 1 }), // Material Master Type (자재 마스터 유형) + ZZREGDT: varchar("ZZREGDT", { length: 8 }), // Registered Date (등록 날짜) + ZZREGTM: varchar("ZZREGTM", { length: 6 }), // Registered Time (등록 시간) + ZZREGUS: varchar("ZZREGUS", { length: 12 }), // Registerd User (등록 사용자) + ZZAPPDT: varchar("ZZAPPDT", { length: 8 }), // Approval Date (승인 날짜) + ZZAPPTM: varchar("ZZAPPTM", { length: 6 }), // Approval Time (승인 시간) + ZZAPPUS: varchar("ZZAPPUS", { length: 12 }), // Approval User (승인 사용자) + ZZLAMDT: varchar("ZZLAMDT", { length: 8 }), // Last Modified Date (최종 수정 날짜) + ZZLAMTM: varchar("ZZLAMTM", { length: 6 }), // Last Modified Time (최종 수정 시간) + ZZLAMUS: varchar("ZZLAMUS", { length: 12 }), // Last Modified User (최종 수정 사용자) + ZZPRFLG: varchar("ZZPRFLG", { length: 1 }), // CRUD Status (처리 플래그) + ZZDOKAR: varchar("ZZDOKAR", { length: 3 }), // Document Type (문서 유형) + ZZDOKNR: varchar("ZZDOKNR", { length: 25 }), // Document Number (문서 번호) + ZZDOKTL: varchar("ZZDOKTL", { length: 3 }), // Document Part (문서 부분) + ZZDOKVR: varchar("ZZDOKVR", { length: 2 }), // Document Version (문서 버전) + createdAt: timestamp("created_at").defaultNow().notNull(), + updatedAt: timestamp("updated_at").defaultNow().notNull(), +}); + +// 자재 설명 테이블 (DESC) +export const DESC = pgTable("DESC", { + id: serial("id").primaryKey(), + MATNR: varchar("MATNR", { length: 18 }).notNull(), // Material Number (자재 번호) (FK) + SPRAS: varchar("SPRAS", { length: 1 }), // Language (언어) + MAKTX: varchar("MAKTX", { length: 40 }), // Material Description (Short Text) (자재 설명) + createdAt: timestamp("created_at").defaultNow().notNull(), + updatedAt: timestamp("updated_at").defaultNow().notNull(), +}); + +// 플랜트별 자재 데이터 테이블 (PLNT) +export const PLNT = pgTable("PLNT", { + id: serial("id").primaryKey(), + MATNR: varchar("MATNR", { length: 18 }).notNull(), // Material Number (자재 번호) (FK) + WERKS: varchar("WERKS", { length: 4 }), // Plant (플랜트) + LVORM: varchar("LVORM", { length: 1 }), // Deletion Flag (삭제 플래그) + MMSTA: varchar("MMSTA", { length: 2 }), // Plant-Specific Material Status (플랜트별 자재 상태) + MMSTD: varchar("MMSTD", { length: 8 }), // Date from which the plant-specific material status (플랜트별 자재 상태 유효 날짜) + ZZMTARP: varchar("ZZMTARP", { length: 4 }), // Plant Material Type (플랜트 자재 유형) + ZZREGDT: varchar("ZZREGDT", { length: 8 }), // Registered Dated (등록 날짜) + ZZREGTM: varchar("ZZREGTM", { length: 6 }), // Registered Time (등록 시간) + ZZREGUS: varchar("ZZREGUS", { length: 12 }), // Registered USER (등록 사용자) + ZZLAMDT: varchar("ZZLAMDT", { length: 8 }), // Last Modified Date (최종 수정 날짜) + ZZLAMTM: varchar("ZZLAMTM", { length: 6 }), // Last Modified Time (최종 수정 시간) + ZZLAMUS: varchar("ZZLAMUS", { length: 12 }), // Last Modified User (최종 수정 사용자) + ZZPRFLG: varchar("ZZPRFLG", { length: 1 }), // CRUD Status (처리 플래그) + createdAt: timestamp("created_at").defaultNow().notNull(), + updatedAt: timestamp("updated_at").defaultNow().notNull(), +}); + +// 단위 테이블 (UNIT) +export const UNIT = pgTable("UNIT", { + id: serial("id").primaryKey(), + MATNR: varchar("MATNR", { length: 18 }).notNull(), // Material Number (자재 번호) (FK) + MEINH: varchar("MEINH", { length: 3 }), // Alternative Unit of Measure for Stockkeeping Unit (대체 단위) + UMREZ: varchar("UMREZ", { length: 5 }), // Numerator for Conversion to Base Units of Measure (기본 단위 변환 분자) + UMREN: varchar("UMREN", { length: 5 }), // Denominator for conversion to base units of measure (기본 단위 변환 분모) + LAENG: varchar("LAENG", { length: 13 }), // Length (길이) + BREIT: varchar("BREIT", { length: 13 }), // Width (너비) + HOEHE: varchar("HOEHE", { length: 13 }), // Height (높이) + MEABM: varchar("MEABM", { length: 3 }), // Unit of Dimension for Length/Width/Height (치수 단위) + VOLUM: varchar("VOLUM", { length: 13 }), // Volume (체적) + VOLEH: varchar("VOLEH", { length: 3 }), // Volume unit (체적 단위) + BRGEW: varchar("BRGEW", { length: 13 }), // Gross Weight (총 중량) + GEWEI: varchar("GEWEI", { length: 3 }), // Weight Unit (중량 단위) + createdAt: timestamp("created_at").defaultNow().notNull(), + updatedAt: timestamp("updated_at").defaultNow().notNull(), +}); + +// 클래스 할당 테이블 (CLASSASGN) +export const CLASSASGN = pgTable("CLASSASGN", { + id: serial("id").primaryKey(), + MATNR: varchar("MATNR", { length: 18 }).notNull(), // Material Number (자재 번호) (FK) + CLASS: varchar("CLASS", { length: 18 }), // Class number (클래스 번호) + KLART: varchar("KLART", { length: 3 }), // Class Type (클래스 유형) + createdAt: timestamp("created_at").defaultNow().notNull(), + updatedAt: timestamp("updated_at").defaultNow().notNull(), +}); + +// 특성 할당 테이블 (CHARASGN) +export const CHARASGN = pgTable("CHARASGN", { + id: serial("id").primaryKey(), + MATNR: varchar("MATNR", { length: 18 }).notNull(), // Material Number (자재 번호) (FK) + CLASS: varchar("CLASS", { length: 18 }), // Class number (클래스 번호) + KLART: varchar("KLART", { length: 3 }), // Class Type (클래스 유형) + ATNAM: varchar("ATNAM", { length: 30 }), // Characteristic Name (특성 이름) + ATWRT: varchar("ATWRT", { length: 30 }), // Characteristic Value (특성 값) + ATFLV: varchar("ATFLV", { length: 16 }), // Internal floating point from (내부 실수값 시작) + ATAWE: varchar("ATAWE", { length: 3 }), // Unit of Measurement (측정 단위) + ATFLB: varchar("ATFLB", { length: 16 }), // Internal floating point value to (내부 실수값 끝) + ATAW1: varchar("ATAW1", { length: 3 }), // Unit of Measurement (측정 단위) + ATBEZ: varchar("ATBEZ", { length: 30 }), // 특성내역 (특성 설명) + ATWTB: varchar("ATWTB", { length: 30 }), // 특성값내역 (특성 값 설명) + createdAt: timestamp("created_at").defaultNow().notNull(), + updatedAt: timestamp("updated_at").defaultNow().notNull(), +}); + +// 관계 정의 +export const MATLRelations = relations(MATL, ({ many }) => ({ + descriptions: many(DESC), + plants: many(PLNT), + units: many(UNIT), + classAssignments: many(CLASSASGN), + characteristicAssignments: many(CHARASGN), +})); + +export const DESCRelations = relations(DESC, ({ one }) => ({ + material: one(MATL, { + fields: [DESC.MATNR], + references: [MATL.MATNR], + }), +})); + +export const PLNTRelations = relations(PLNT, ({ one }) => ({ + material: one(MATL, { + fields: [PLNT.MATNR], + references: [MATL.MATNR], + }), +})); + +export const UNITRelations = relations(UNIT, ({ one }) => ({ + material: one(MATL, { + fields: [UNIT.MATNR], + references: [MATL.MATNR], + }), +})); + +export const CLASSASGNRelations = relations(CLASSASGN, ({ one }) => ({ + material: one(MATL, { + fields: [CLASSASGN.MATNR], + references: [MATL.MATNR], + }), +})); + +export const CHARASGNRelations = relations(CHARASGN, ({ one }) => ({ + material: one(MATL, { + fields: [CHARASGN.MATNR], + references: [MATL.MATNR], + }), +})); diff --git a/db/schema/index.ts b/db/schema/index.ts index 5c0b3135..38a27393 100644 --- a/db/schema/index.ts +++ b/db/schema/index.ts @@ -15,4 +15,7 @@ export * from './basicContractDocumnet'; export * from './procurementRFQ'; export * from './setting'; export * from './techSales'; -export * from './ocr';
\ No newline at end of file +export * from './ocr'; + +// MDG SOAP 수신용 +export * from './MDG/modelMaster' diff --git a/db/schema/vendors.ts b/db/schema/vendors.ts index 60b40f21..9b860746 100644 --- a/db/schema/vendors.ts +++ b/db/schema/vendors.ts @@ -3,7 +3,6 @@ import { pgTable, serial, varchar, text, timestamp, boolean, integer ,pgView} f import { items, materials } from "./items"; import { sql, eq, relations } from "drizzle-orm"; import { users } from "./users"; -import { vendorPQSubmissions } from "./pq"; // vendorTypes 테이블 생성 @@ -20,6 +19,7 @@ export const vendorTypes = pgTable("vendor_types", { export const vendors = pgTable("vendors", { id: serial("id").primaryKey(), vendorName: varchar("vendor_name", { length: 255 }).notNull(), + // 벤더 코드 유니크 아니어도 괜찮은지? vendorCode: varchar("vendor_code", { length: 100 }), taxId: varchar("tax_id", { length: 100 }).notNull(), address: text("address"), @@ -65,301 +65,10 @@ export const vendors = pgTable("vendors", { createdAt: timestamp("created_at").defaultNow().notNull(), updatedAt: timestamp("updated_at").defaultNow().notNull(), - // --- [시작] Oracle DB 추가 필드들 (CMCTB_VENDOR_GENERAL 기준) --- - accountGroup: varchar("account_group", { length: 4 }), // ACNT_GRP - 계정그룹 - accountGroupType: varchar("account_group_type", { length: 2 }), // ACNT_GRP_TP - 계정그룹종류 - customerCode: varchar("customer_code", { length: 10 }), // CSTM_CD - 고객코드 - postingHoldIndicator: varchar("posting_hold_indicator", { length: 1 }), // PST_HOLD_ORDR - 전기보류지시자 - purchaseHoldIndicator: varchar("purchase_hold_indicator", { length: 1 }), // PUR_HOLD_ORDR - 구매보류지시자 - holdReason: varchar("hold_reason", { length: 200 }), // HOLD_CAUS - 보류사유 - deleteIndicator: varchar("delete_indicator", { length: 1 }), // DEL_ORDR - 삭제지시자 - companyId: varchar("company_id", { length: 6 }), // CO_ID - 법인ID - businessType: varchar("business_type", { length: 90 }), // BIZTP - 사업유형 - industryType: varchar("industry_type", { length: 90 }), // BIZCON - 산업유형 - registrationDate: varchar("registration_date", { length: 8 }), // REG_DT - 등록일자 - registrationTime: varchar("registration_time", { length: 6 }), // REG_DTM - 등록시간 - registrarId: varchar("registrar_id", { length: 13 }), // REGR_ID - 등록자 - approvalDate: varchar("approval_date", { length: 8 }), // AGR_DT - 승인일자 - approvalTime: varchar("approval_time", { length: 6 }), // AGR_TM - 승인시간 - approverId: varchar("approver_id", { length: 13 }), // AGR_R_ID - 승인자ID - changeDate: varchar("change_date", { length: 8 }), // CHG_DT - 변경일자 - changeTime: varchar("change_time", { length: 6 }), // CHG_TM - 변경시간 - changerId: varchar("changer_id", { length: 13 }), // CHGR_ID - 변경자ID - nationCode: varchar("nation_code", { length: 3 }), // NTN_CD - 국가코드 - representativeTelNumber: varchar("representative_tel_number", { length: 30 }), // REP_TEL_NO - 대표전화번호 - representativeFaxNumber: varchar("representative_fax_number", { length: 31 }), // REP_FAX_NO - 대표FAX번호 - businessRegistrationNumber: varchar("business_registration_number", { length: 10 }), // BIZR_NO - 사업자번호 - corporateRegistrationNumberOracle: varchar("corporate_registration_number_oracle", { length: 18 }), // CO_REG_NO - 법인등록번호 - taxCode4: varchar("tax_code_4", { length: 54 }), // TX_CD_4 - 세금번호4 - companyEstablishmentDate: varchar("company_establishment_date", { length: 8 }), // CO_INST_DT - 설립일자 - vendorType: varchar("vendor_type", { length: 2 }), // VNDR_TP - 구매처유형 - globalTopCode: varchar("global_top_code", { length: 11 }), // GBL_TOP_CD - GLOBALTOP코드 - globalTopName: varchar("global_top_name", { length: 120 }), // GBL_TOP_NM - GLOBALTOP명 - domesticTopCode: varchar("domestic_top_code", { length: 11 }), // DMST_TOP_CD - 국내TOP코드 - domesticTopName: varchar("domestic_top_name", { length: 120 }), // DMST_TOP_NM - 국내TOP명 - businessUnitCode: varchar("business_unit_code", { length: 11 }), // BIZ_UOM_CD - 사업단위코드 - businessUnitName: varchar("business_unit_name", { length: 120 }), // BIZ_UOM_NM - 사업단위명 - dunsNumber: varchar("duns_number", { length: 11 }), // DNS_NO - DUNS번호 - interfaceDate: varchar("interface_date", { length: 8 }), // IF_DT - 인터페이스일자 - interfaceTime: varchar("interface_time", { length: 6 }), // IF_TM - 인터페이스시간 - interfaceStatus: varchar("interface_status", { length: 1 }), // IF_STAT - 인터페이스상태 - interfaceMessage: varchar("interface_message", { length: 100 }), // IF_MSG - 인터페이스메시지 - title: varchar("title", { length: 45 }), // TTL - 타이틀 - vatRegistrationNumber: varchar("vat_registration_number", { length: 20 }), // VAT_REG_NO - 부가세등록번호 - giroVendorIndicator: varchar("giro_vendor_indicator", { length: 1 }), // GIRO_VNDR_ORDR - 지로VENDOR지시자 - vendorName1: varchar("vendor_name_1", { length: 120 }), // VNDRNM_1 - Vendor명1 - vendorName2: varchar("vendor_name_2", { length: 120 }), // VNDRNM_2 - VENDOR명2 - vendorName3: varchar("vendor_name_3", { length: 120 }), // VNDRNM_3 - VENDOR명3 - vendorName4: varchar("vendor_name_4", { length: 120 }), // VNDRNM_4 - VENDOR명4 - vendorNameAbbreviation1: varchar("vendor_name_abbreviation_1", { length: 60 }), // VNDRNM_ABRV_1 - VENDOR명약어1 - vendorNameAbbreviation2: varchar("vendor_name_abbreviation_2", { length: 60 }), // VNDRNM_ABRV_2 - VENDOR명약어2 - potentialVendorCode: varchar("potential_vendor_code", { length: 10 }), // PTNT_VNDRCD - 잠재VENDOR코드 - address1: varchar("address_1", { length: 120 }), // ADR_1 - 주소1 - address2: varchar("address_2", { length: 512 }), // ADR_2 - 주소2 - qualityManagerName: varchar("quality_manager_name", { length: 60 }), // QLT_CHRGR_NM - 품질담당자명 - qualityManagerTelNumber: varchar("quality_manager_tel_number", { length: 30 }), // QLT_CHRGR_TELNO - 품질담당자전화번호 - qualityManagerEmail: varchar("quality_manager_email", { length: 241 }), // QLT_CHRGR_EMAIL - 품질담당자이메일 - subWorkplaceSequence: varchar("sub_workplace_sequence", { length: 16 }), // SB_WKA_SEQ - SUB작업장순서 - overlapCauseCode: varchar("overlap_cause_code", { length: 2 }), // OVLAP_CAUS_CD - 중복사유코드 - documentType: varchar("document_type", { length: 3 }), // DOC_TP - 문서유형 - documentNumber: varchar("document_number", { length: 25 }), // DOC_NO - 문서번호 - partialDocument: varchar("partial_document", { length: 3 }), // PTN_DOC - 부분문서 - documentVersion: varchar("document_version", { length: 2 }), // DOC_VER - 문서버전 - inboundFlag: varchar("inbound_flag", { length: 1 }), // INB_FLAG - 인바운드플래그 - deleteHoldIndicator: varchar("delete_hold_indicator", { length: 1 }), // DEL_HOLD_ORDR - 삭제보류지시자 - purchaseHoldDate: varchar("purchase_hold_date", { length: 8 }), // PUR_HOLD_DT - 구매보류일자 - postBox: varchar("post_box", { length: 30 }), // POBX - 사서함 - internationalLocationCheckNumber: integer("international_location_check_number"), // INTL_LCTN_CHK_NUM - 국제LOCATION점검숫자 - withholdingTaxGenderKey: varchar("withholding_tax_gender_key", { length: 1 }), // SRCETX_RP_SEX_KEY - 원천세의무자성별키 - vendorContractManager1: varchar("vendor_contract_manager_1", { length: 105 }), // VNDR_CNRT_CHRGR_1 - VENDOR계약담당자1 - vendorContractManager2: varchar("vendor_contract_manager_2", { length: 105 }), // VNDR_CNRT_CHRGR_2 - VENDOR계약담당자2 - representativeResidentNumber: varchar("representative_resident_number", { length: 13 }), // REPR_RESNO - 대표생년월일 - companyVolume: varchar("company_volume", { length: 1 }), // CO_VLM - 기업규모 - // --- [끝] Oracle DB 추가 필드들 (CMCTB_VENDOR_GENERAL 기준) --- -}); - -// ------- [시작] MDZ 인터페이스 목적 테이블 추가 ------------- - -// 벤더 업무그룹 테이블 (CMCTB_VENDOR_GRP 대응) -export const vendorBusinessGroups = pgTable("vendor_business_groups", { - id: serial("id").primaryKey(), - vendorId: integer("vendor_id").notNull().references(() => vendors.id), - businessGroupCode: varchar("business_group_code", { length: 3 }).notNull(), // BIZ_GRP_CD - 업무그룹코드 - createdDate: varchar("created_date", { length: 8 }), // CRTE_DT - 생성일자 - createdTime: varchar("created_time", { length: 6 }), // CRTE_TM - 생성시간 - creatorId: varchar("creator_id", { length: 13 }), // CRTER_ID - 생성자ID - changeDate: varchar("change_date", { length: 8 }), // CHG_DT - 변경일자 - changeTime: varchar("change_time", { length: 6 }), // CHG_TM - 변경시간 - changerId: varchar("changer_id", { length: 13 }), // CHGR_ID - 변경자ID - createdAt: timestamp("created_at").defaultNow().notNull(), - updatedAt: timestamp("updated_at").defaultNow().notNull(), -}); - -// 사내협력사 벤더 테이블 (CMCTB_VENDOR_INCO 대응) -export const vendorInternalPartners = pgTable("vendor_internal_partners", { - id: serial("id").primaryKey(), - vendorId: integer("vendor_id").notNull().references(() => vendors.id), - vendorName: varchar("vendor_name", { length: 120 }), // VNDRNM - VENDOR코명 - representativeName: varchar("representative_name", { length: 30 }), // REPR_NM - 대표자명 - partnerType: varchar("partner_type", { length: 1 }), // PRTNR_GB - 협력사구분 - internalPartnerCode: varchar("internal_partner_code", { length: 3 }), // INCO_PRTNR_CD - 사내협력사코드 - internalPartnerWorkplace1: varchar("internal_partner_workplace_1", { length: 1 }), // INCO_PRTNR_WKA_1 - 사내협력사작업장1 - internalPartnerWorkplace2: varchar("internal_partner_workplace_2", { length: 1 }), // INCO_PRTNR_WKA_2 - 사내협력사작업장2 - internalPartnerWorkplace3: varchar("internal_partner_workplace_3", { length: 1 }), // INCO_PRTNR_WKA_3 - 사내협력사작업장3 - jobTypeCode: varchar("job_type_code", { length: 2 }), // JBTYPE_CD - 직종코드 - jobTypeCode2: varchar("job_type_code_2", { length: 2 }), // JBTYPE_CD_2 - 직종코드2 - individualCorporateType: varchar("individual_corporate_type", { length: 2 }), // INDV_CO_GB - 개인법인구분 - internalFoundationYn: varchar("internal_foundation_yn", { length: 1 }), // INCO_FOND_YN - 사내창립유무 - dockNumber: varchar("dock_number", { length: 25 }), // DOCK_NO - 도크번호 - companyInputDate: varchar("company_input_date", { length: 8 }), // OCMP_INP_DT - 당사투입일자 - internalWithdrawalDate: varchar("internal_withdrawal_date", { length: 8 }), // INCO_DUSE_DT - 사내철수일자 - industrialInsurancePremiumRate: integer("industrial_insurance_premium_rate"), // INDST_INS_PMRAT - 산재보험요율 - contractPerformanceGuarantee: integer("contract_performance_guarantee"), // CNRT_PFRM_GRAMT - 계약이행보증금 - wageRate: integer("wage_rate"), // WGE_RAT - 임금율 - correspondingDepartmentCode1: varchar("corresponding_department_code_1", { length: 30 }), // CRSPD_DEPTCD_1 - 해당부서코드1 - correspondingDepartmentCode2: varchar("corresponding_department_code_2", { length: 30 }), // CRSPD_DEPTCD_2 - 해당부서코드2 - correspondingTeamBelonging: varchar("corresponding_team_belonging", { length: 100 }), // CRSPD_TEAM_BLNG - 해당팀소속 - internalPartnerItem1: varchar("internal_partner_item_1", { length: 120 }), // INCO_PRTNR_ITM_1 - 사내협력사종목1 - internalPartnerItem2: varchar("internal_partner_item_2", { length: 120 }), // INCO_PRTNR_ITM_2 - 사내협력사종목2 - officeLocation: varchar("office_location", { length: 240 }), // OFC_LOC - 사무실위치 - representativeCompanyCareer: varchar("representative_company_career", { length: 300 }), // REP_OCMP_CARR - 대표당사경력 - internalWithdrawalReason: varchar("internal_withdrawal_reason", { length: 600 }), // INCO_DUSE_CAUS - 사내철수사유 - telephoneNumber: varchar("telephone_number", { length: 30 }), // TEL_NO - 전화번호 - address1: varchar("address_1", { length: 200 }), // ADR1 - 주소 - address2: varchar("address_2", { length: 200 }), // ADR2 - 상세주소 - oldVendorCode: varchar("old_vendor_code", { length: 10 }), // OLD_VNDRCD - 이전 VENDOR코드 - treeNumber: varchar("tree_number", { length: 1 }), // TREE_NUM - 하위 VENDOR 갯수 - createdDate: varchar("created_date", { length: 8 }), // CRTE_DT - 생성일자 - createdTime: varchar("created_time", { length: 6 }), // CRTE_TM - 생성시간 - createdUserId: varchar("created_user_id", { length: 13 }), // CRTE_USR_ID - 생성사용자ID - changeDate: varchar("change_date", { length: 8 }), // CHG_DT - 수정일자 - changeTime: varchar("change_time", { length: 6 }), // CHG_TM - 수정시간 - changeUserId: varchar("change_user_id", { length: 13 }), // CHG_USR_ID - 수정사용자ID - upperJobType: varchar("upper_job_type", { length: 2 }), // UPR_JBTYPE - 직종단가 - supplierBusinessPlaceCode: varchar("supplier_business_place_code", { length: 4 }), // ZBYBP - 공급받는자 종사업장 식별코드 - remark: varchar("remark", { length: 4000 }), // RMK - 비고 - withdrawalPlanYn: varchar("withdrawal_plan_yn", { length: 1 }), // WDL_PLN_YN - 철수예정유무 - wageDelayOccurrence: varchar("wage_delay_occurrence", { length: 8 }), // WGE_DELY_DVL - 임금체불발생 - escrowYn: varchar("escrow_yn", { length: 1 }), // ESCROW_YN - 에스크로가입유무 - createdAt: timestamp("created_at").defaultNow().notNull(), - updatedAt: timestamp("updated_at").defaultNow().notNull(), + // VENDOR_GENERAL 테이블은 별도 테이블로 분리함 }); -// 벤더 구매조직 테이블 (CMCTB_VENDOR_PORG 대응) -export const vendorPurchaseOrganizations = pgTable("vendor_purchase_organizations", { - id: serial("id").primaryKey(), - vendorId: integer("vendor_id").notNull().references(() => vendors.id), - purchaseOrgCode: varchar("purchase_org_code", { length: 4 }).notNull(), // PUR_ORG_CD - 구매조직 - purchaseOrderCurrency: varchar("purchase_order_currency", { length: 5 }), // PUR_ORD_CUR - 구매오더통화 - paymentTerms: varchar("payment_terms", { length: 4 }), // SPLY_COND - 지급조건 - deliveryTerms1: varchar("delivery_terms_1", { length: 3 }), // DL_COND_1 - 인도조건1 - deliveryTerms2: varchar("delivery_terms_2", { length: 90 }), // DL_COND_2 - 인도조건2 - calculationSchemaGroup: varchar("calculation_schema_group", { length: 2 }), // CALC_SHM_GRP - 계산스키마그룹 - grBasedInvoiceVerification: varchar("gr_based_invoice_verification", { length: 1 }), // GR_BSE_INVC_VR - GR기준송장검증 - automaticPurchaseOrderIndicator: varchar("automatic_purchase_order_indicator", { length: 1 }), // AT_PUR_ORD_ORDR - 자동구매오더지시자 - purchaseHoldIndicator: varchar("purchase_hold_indicator", { length: 1 }), // PUR_HOLD_ORDR - 구매보류지시자 - deleteIndicator: varchar("delete_indicator", { length: 1 }), // DEL_ORDR - 삭제지시자 - interfaceDate: varchar("interface_date", { length: 8 }), // IF_DT - 인터페이스일자 - interfaceTime: varchar("interface_time", { length: 6 }), // IF_TM - 인터페이스시간 - interfaceStatus: varchar("interface_status", { length: 1 }), // IF_STAT - 인터페이스상태 - interfaceMessage: varchar("interface_message", { length: 100 }), // IF_MSG - 인터페이스메시지 - orderConfirmationRequestIndicator: varchar("order_confirmation_request_indicator", { length: 1 }), // ORD_CNFM_REQ_ORDR - 오더확인요청지시자 - salesManagerName: varchar("sales_manager_name", { length: 120 }), // SALE_CHRGR_NM - 영업담당자명 - vendorTelephoneNumber: varchar("vendor_telephone_number", { length: 30 }), // VNDR_TELNO - VENDOR전화번호 - confirmationControlKey: varchar("confirmation_control_key", { length: 4 }), // CNFM_CTL_KEY - 확정제어키 - purchaseHoldDate: varchar("purchase_hold_date", { length: 8 }), // PUR_HOLD_DT - 구매보류일자 - purchaseHoldReason: varchar("purchase_hold_reason", { length: 120 }), // PUR_HOLD_CAUS - 구매보류사유 - createdAt: timestamp("created_at").defaultNow().notNull(), - updatedAt: timestamp("updated_at").defaultNow().notNull(), -}); - -// 벤더 대표자 이메일 테이블 (CMCTB_VENDOR_REPREMAIL 대응) -export const vendorRepresentativeEmails = pgTable("vendor_representative_emails", { - id: serial("id").primaryKey(), - vendorId: integer("vendor_id").notNull().references(() => vendors.id), - addressNumber: varchar("address_number", { length: 10 }), // ADR_NO - 주소번호 - representativeSequence: varchar("representative_sequence", { length: 3 }).notNull(), // REPR_SER - 대표자순번 - validStartDate: varchar("valid_start_date", { length: 8 }).notNull(), // VLD_ST_DT - 유효시작일자 - emailAddress: varchar("email_address", { length: 241 }), // EMAIL_ADR - 이메일주소 - interfaceDate: varchar("interface_date", { length: 8 }), // IF_DT - 인터페이스일자 - interfaceTime: varchar("interface_time", { length: 6 }), // IF_TM - 인터페이스시간 - interfaceStatus: varchar("interface_status", { length: 1 }), // IF_STAT - 인터페이스상태 - interfaceMessage: varchar("interface_message", { length: 100 }), // IF_MSG - 인터페이스메시지 - createdAt: timestamp("created_at").defaultNow().notNull(), - updatedAt: timestamp("updated_at").defaultNow().notNull(), -}); - -// 벤더 대표자 팩스 테이블 (CMCTB_VENDOR_REPRFAX 대응) -export const vendorRepresentativeFaxes = pgTable("vendor_representative_faxes", { - id: serial("id").primaryKey(), - vendorId: integer("vendor_id").notNull().references(() => vendors.id), - addressNumber: varchar("address_number", { length: 10 }), // ADR_NO - 주소번호 - representativeSequence: varchar("representative_sequence", { length: 3 }).notNull(), // REPR_SER - 대표자순번 - validStartDate: varchar("valid_start_date", { length: 8 }).notNull(), // VLD_ST_DT - 유효시작일자 - nationCode: varchar("nation_code", { length: 3 }), // NTN_CD - 국가코드 - faxNumber: varchar("fax_number", { length: 30 }), // FAXNO - 팩스번호 - faxExtensionNumber: varchar("fax_extension_number", { length: 10 }), // FAX_ETS_NO - 팩스내선번호 - interfaceDate: varchar("interface_date", { length: 8 }), // IF_DT - 인터페이스일자 - interfaceTime: varchar("interface_time", { length: 6 }), // IF_TM - 인터페이스시간 - interfaceStatus: varchar("interface_status", { length: 1 }), // IF_STAT - 인터페이스상태 - interfaceMessage: varchar("interface_message", { length: 100 }), // IF_MSG - 인터페이스메시지 - createdAt: timestamp("created_at").defaultNow().notNull(), - updatedAt: timestamp("updated_at").defaultNow().notNull(), -}); - -// 벤더 대표자 전화번호 테이블 (CMCTB_VENDOR_REPRTEL 대응) -export const vendorRepresentativeTelephones = pgTable("vendor_representative_telephones", { - id: serial("id").primaryKey(), - vendorId: integer("vendor_id").notNull().references(() => vendors.id), - addressNumber: varchar("address_number", { length: 10 }), // ADR_NO - 주소번호 - representativeSequence: varchar("representative_sequence", { length: 3 }).notNull(), // REPR_SER - 대표자순번 - validStartDate: varchar("valid_start_date", { length: 8 }).notNull(), // VLD_ST_DT - 유효시작일자 - nationCode: varchar("nation_code", { length: 3 }), // NTN_CD - 국가코드 - telephoneNumber: varchar("telephone_number", { length: 30 }), // TELNO - 전화번호 - extensionNumber: varchar("extension_number", { length: 10 }), // ETX_NO - 내선번호 - mobileIndicator: varchar("mobile_indicator", { length: 1 }), // HP_ORDR - 핸드폰지시자 - interfaceDate: varchar("interface_date", { length: 8 }), // IF_DT - 인터페이스일자 - interfaceTime: varchar("interface_time", { length: 6 }), // IF_TM - 인터페이스시간 - interfaceStatus: varchar("interface_status", { length: 1 }), // IF_STAT - 인터페이스상태 - interfaceMessage: varchar("interface_message", { length: 100 }), // IF_MSG - 인터페이스메시지 - createdAt: timestamp("created_at").defaultNow().notNull(), - updatedAt: timestamp("updated_at").defaultNow().notNull(), -}); - -// 벤더 대표자 URL 테이블 (CMCTB_VENDOR_REPRURL 대응) -export const vendorRepresentativeUrls = pgTable("vendor_representative_urls", { - id: serial("id").primaryKey(), - vendorId: integer("vendor_id").notNull().references(() => vendors.id), - addressNumber: varchar("address_number", { length: 10 }), // ADR_NO - 주소번호 - representativeSequence: varchar("representative_sequence", { length: 3 }).notNull(), // REPR_SER - 대표자순번 - validStartDate: varchar("valid_start_date", { length: 8 }).notNull(), // VLD_ST_DT - 유효시작일자 - url: varchar("url", { length: 2048 }), // URL - URL - interfaceDate: varchar("interface_date", { length: 8 }), // IF_DT - 인터페이스일자 - interfaceTime: varchar("interface_time", { length: 6 }), // IF_TM - 인터페이스시간 - interfaceStatus: varchar("interface_status", { length: 1 }), // IF_STAT - 인터페이스상태 - interfaceMessage: varchar("interface_message", { length: 100 }), // IF_MSG - 인터페이스메시지 - createdAt: timestamp("created_at").defaultNow().notNull(), - updatedAt: timestamp("updated_at").defaultNow().notNull(), -}); - -// 벤더 세금번호 테이블 (CMCTB_VENDOR_TAXNUM 대응) -export const vendorTaxNumbers = pgTable("vendor_tax_numbers", { - id: serial("id").primaryKey(), - vendorId: integer("vendor_id").notNull().references(() => vendors.id), - taxNumberCategory: varchar("tax_number_category", { length: 4 }).notNull(), // TX_NO_CTG - 세금번호범주 - businessPartnerTaxNumber: varchar("business_partner_tax_number", { length: 20 }), // BIZ_PTNR_TX_NO - 사업파트너세금번호 - interfaceDate: varchar("interface_date", { length: 8 }), // IF_DT - 인터페이스일자 - interfaceTime: varchar("interface_time", { length: 6 }), // IF_TM - 인터페이스시간 - interfaceStatus: varchar("interface_status", { length: 1 }), // IF_STAT - 인터페이스상태 - interfaceMessage: varchar("interface_message", { length: 100 }), // IF_MSG - 인터페이스메시지 - createdAt: timestamp("created_at").defaultNow().notNull(), - updatedAt: timestamp("updated_at").defaultNow().notNull(), -}); - -// 벤더 파트너역할 테이블 (CMCTB_VENDOR_VFPN 대응) -export const vendorPartnerFunctions = pgTable("vendor_partner_functions", { - id: serial("id").primaryKey(), - vendorId: integer("vendor_id").notNull().references(() => vendors.id), - purchaseOrgCode: varchar("purchase_org_code", { length: 4 }).notNull(), // PUR_ORG_CD - 구매조직 - vendorSubNumber: varchar("vendor_sub_number", { length: 6 }).notNull(), // VNDR_SUB_NO - VENDOR서브번호 - plantCode: varchar("plant_code", { length: 4 }).notNull(), // PLNT_CD - 플랜트코드 - partnerFunction: varchar("partner_function", { length: 2 }).notNull(), // PTNR_SKL - 파트너기능 - partnerCounter: varchar("partner_counter", { length: 3 }).notNull(), // PTNR_CNT - 파트너카운터 - otherReferenceVendorCode: varchar("other_reference_vendor_code", { length: 10 }), // ETC_REF_VNDRCD - 기타참조VENDOR코드 - defaultPartnerIndicator: varchar("default_partner_indicator", { length: 1 }), // BSE_PTNR_ORDR - 기본파트너지시자 - interfaceDate: varchar("interface_date", { length: 8 }), // IF_DT - 인터페이스일자 - interfaceTime: varchar("interface_time", { length: 6 }), // IF_TM - 인터페이스시간 - interfaceStatus: varchar("interface_status", { length: 1 }), // IF_STAT - 인터페이스상태 - interfaceMessage: varchar("interface_message", { length: 100 }), // IF_MSG - 인터페이스메시지 - createdAt: timestamp("created_at").defaultNow().notNull(), - updatedAt: timestamp("updated_at").defaultNow().notNull(), -}); - -// 벤더 원천세 테이블 (CMCTB_VENDOR_WHTHX 대응) -export const vendorWithholdingTax = pgTable("vendor_withholding_tax", { - id: serial("id").primaryKey(), - vendorId: integer("vendor_id").notNull().references(() => vendors.id), - companyCode: varchar("company_code", { length: 4 }).notNull(), // CO_CD - 회사코드 - withholdingTaxType: varchar("withholding_tax_type", { length: 2 }).notNull(), // SRCE_TX_TP - 원천세유형 - withholdingTaxRelatedIndicator: varchar("withholding_tax_related_indicator", { length: 1 }), // SRCE_TX_REL_ORDR - 원천세관련지시자 - recipientType: varchar("recipient_type", { length: 2 }), // RECIP_TP - 수취인유형 - withholdingTaxIdentificationNumber: varchar("withholding_tax_identification_number", { length: 16 }), // SRCE_TX_IDENT_NO - 원천세식별번호 - withholdingTaxCode: varchar("withholding_tax_code", { length: 2 }), // SRCE_TX_NO - 원천세코드 - exemptionCertificateNumber: varchar("exemption_certificate_number", { length: 15 }), // DCHAG_CERT_NO - 면제증명서번호 - exemptionRate: integer("exemption_rate"), // DCHAG_RAT - 면제율 - exemptionStartDate: varchar("exemption_start_date", { length: 8 }), // DCHAG_ST_DT - 면제시작일자 - exemptionEndDate: varchar("exemption_end_date", { length: 8 }), // DCHAG_ED_DT - 면제종료일 - exemptionReason: varchar("exemption_reason", { length: 200 }), // DCHAG_CAUS - 면제사유 - interfaceDate: varchar("interface_date", { length: 8 }), // IF_DT - 인터페이스일자 - interfaceTime: varchar("interface_time", { length: 6 }), // IF_TM - 인터페이스시간 - interfaceStatus: varchar("interface_status", { length: 1 }), // IF_STAT - 인터페이스상태 - interfaceMessage: varchar("interface_message", { length: 100 }), // IF_MSG - 인터페이스메시지 - createdAt: timestamp("created_at").defaultNow().notNull(), - updatedAt: timestamp("updated_at").defaultNow().notNull(), -}); - -// ------- [끝] MDZ 인터페이스 목적 테이블 추가 ------------- - +// eVCP 내 연락처로 오라클 측과는 무관... export const vendorContacts = pgTable("vendor_contacts", { id: serial("id").primaryKey(), vendorId: integer("vendor_id").notNull().references(() => vendors.id), @@ -466,19 +175,6 @@ export type VendorWithAttachments = Vendor & { export type VendorItemsView = typeof vendorItemsView.$inferSelect export type VendorMaterialsView = typeof vendorMaterialsView.$inferSelect -// ------- [시작] MDG 대응을 위한 새로운 테이블 타입 정의 ------------- -export type VendorBusinessGroup = typeof vendorBusinessGroups.$inferSelect -export type VendorInternalPartner = typeof vendorInternalPartners.$inferSelect -export type VendorPurchaseOrganization = typeof vendorPurchaseOrganizations.$inferSelect -export type VendorRepresentativeEmail = typeof vendorRepresentativeEmails.$inferSelect -export type VendorRepresentativeFax = typeof vendorRepresentativeFaxes.$inferSelect -export type VendorRepresentativeTelephone = typeof vendorRepresentativeTelephones.$inferSelect -export type VendorRepresentativeUrl = typeof vendorRepresentativeUrls.$inferSelect -export type VendorTaxNumber = typeof vendorTaxNumbers.$inferSelect -export type VendorPartnerFunction = typeof vendorPartnerFunctions.$inferSelect -export type VendorWithholdingTax = typeof vendorWithholdingTax.$inferSelect -// ------- [끝] MDG 대응을 위한 새로운 테이블 타입 정의 ------------- - export const vendorCandidates = pgTable("vendor_candidates", { id: serial("id").primaryKey(), @@ -745,3 +441,340 @@ export const vendorsWithTypesView = pgView("vendors_with_types").as((qb) => { // You can also create interfaces for the view export type VendorWithType = typeof vendorsWithTypesView.$inferSelect; + + +// ------------------------------------------------------------------------------------------------ + +// ------- [시작] MDG 인터페이스 목적 테이블 추가 (이미 인터페이스한 레거시 DB에서 직접 가져옴) ------------- + +export const vendorMdgGenerals = pgTable("vendor_mdg_generals", { + id: serial("id").primaryKey(), + vendorCode: varchar("vendor_code", { length: 100 }), + accountGroup: varchar("account_group", { length: 4 }), // ACNT_GRP - 계정그룹 + accountGroupType: varchar("account_group_type", { length: 2 }), // ACNT_GRP_TP - 계정그룹종류 + customerCode: varchar("customer_code", { length: 10 }), // CSTM_CD - 고객코드 + postingHoldIndicator: varchar("posting_hold_indicator", { length: 1 }), // PST_HOLD_ORDR - 전기보류지시자 + purchaseHoldIndicator: varchar("purchase_hold_indicator", { length: 1 }), // PUR_HOLD_ORDR - 구매보류지시자 + holdReason: varchar("hold_reason", { length: 200 }), // HOLD_CAUS - 보류사유 + deleteIndicator: varchar("delete_indicator", { length: 1 }), // DEL_ORDR - 삭제지시자 + companyId: varchar("company_id", { length: 6 }), // CO_ID - 법인ID + businessType: varchar("business_type", { length: 90 }), // BIZTP - 사업유형 + industryType: varchar("industry_type", { length: 90 }), // BIZCON - 산업유형 + registrationDate: varchar("registration_date", { length: 8 }), // REG_DT - 등록일자 + registrationTime: varchar("registration_time", { length: 6 }), // REG_DTM - 등록시간 + registrarId: varchar("registrar_id", { length: 13 }), // REGR_ID - 등록자 + approvalDate: varchar("approval_date", { length: 8 }), // AGR_DT - 승인일자 + approvalTime: varchar("approval_time", { length: 6 }), // AGR_TM - 승인시간 + approverId: varchar("approver_id", { length: 13 }), // AGR_R_ID - 승인자ID + changeDate: varchar("change_date", { length: 8 }), // CHG_DT - 변경일자 + changeTime: varchar("change_time", { length: 6 }), // CHG_TM - 변경시간 + changerId: varchar("changer_id", { length: 13 }), // CHGR_ID - 변경자ID + nationCode: varchar("nation_code", { length: 3 }), // NTN_CD - 국가코드 + representativeTelNumber: varchar("representative_tel_number", { length: 30 }), // REP_TEL_NO - 대표전화번호 + representativeFaxNumber: varchar("representative_fax_number", { length: 31 }), // REP_FAX_NO - 대표FAX번호 + businessRegistrationNumber: varchar("business_registration_number", { length: 10 }), // BIZR_NO - 사업자번호 + corporateRegistrationNumberOracle: varchar("corporate_registration_number_oracle", { length: 18 }), // CO_REG_NO - 법인등록번호 + taxCode4: varchar("tax_code_4", { length: 54 }), // TX_CD_4 - 세금번호4 + companyEstablishmentDate: varchar("company_establishment_date", { length: 8 }), // CO_INST_DT - 설립일자 + vendorType: varchar("vendor_type", { length: 2 }), // VNDR_TP - 구매처유형 + globalTopCode: varchar("global_top_code", { length: 11 }), // GBL_TOP_CD - GLOBALTOP코드 + globalTopName: varchar("global_top_name", { length: 120 }), // GBL_TOP_NM - GLOBALTOP명 + domesticTopCode: varchar("domestic_top_code", { length: 11 }), // DMST_TOP_CD - 국내TOP코드 + domesticTopName: varchar("domestic_top_name", { length: 120 }), // DMST_TOP_NM - 국내TOP명 + businessUnitCode: varchar("business_unit_code", { length: 11 }), // BIZ_UOM_CD - 사업단위코드 + businessUnitName: varchar("business_unit_name", { length: 120 }), // BIZ_UOM_NM - 사업단위명 + dunsNumber: varchar("duns_number", { length: 11 }), // DNS_NO - DUNS번호 + interfaceDate: varchar("interface_date", { length: 8 }), // IF_DT - 인터페이스일자 + interfaceTime: varchar("interface_time", { length: 6 }), // IF_TM - 인터페이스시간 + interfaceStatus: varchar("interface_status", { length: 1 }), // IF_STAT - 인터페이스상태 + interfaceMessage: varchar("interface_message", { length: 100 }), // IF_MSG - 인터페이스메시지 + title: varchar("title", { length: 45 }), // TTL - 타이틀 + vatRegistrationNumber: varchar("vat_registration_number", { length: 20 }), // VAT_REG_NO - 부가세등록번호 + giroVendorIndicator: varchar("giro_vendor_indicator", { length: 1 }), // GIRO_VNDR_ORDR - 지로VENDOR지시자 + vendorName1: varchar("vendor_name_1", { length: 120 }), // VNDRNM_1 - Vendor명1 + vendorName2: varchar("vendor_name_2", { length: 120 }), // VNDRNM_2 - VENDOR명2 + vendorName3: varchar("vendor_name_3", { length: 120 }), // VNDRNM_3 - VENDOR명3 + vendorName4: varchar("vendor_name_4", { length: 120 }), // VNDRNM_4 - VENDOR명4 + vendorNameAbbreviation1: varchar("vendor_name_abbreviation_1", { length: 60 }), // VNDRNM_ABRV_1 - VENDOR명약어1 + vendorNameAbbreviation2: varchar("vendor_name_abbreviation_2", { length: 60 }), // VNDRNM_ABRV_2 - VENDOR명약어2 + potentialVendorCode: varchar("potential_vendor_code", { length: 10 }), // PTNT_VNDRCD - 잠재VENDOR코드 + address1: varchar("address_1", { length: 120 }), // ADR_1 - 주소1 + address2: varchar("address_2", { length: 512 }), // ADR_2 - 주소2 + qualityManagerName: varchar("quality_manager_name", { length: 60 }), // QLT_CHRGR_NM - 품질담당자명 + qualityManagerTelNumber: varchar("quality_manager_tel_number", { length: 30 }), // QLT_CHRGR_TELNO - 품질담당자전화번호 + qualityManagerEmail: varchar("quality_manager_email", { length: 241 }), // QLT_CHRGR_EMAIL - 품질담당자이메일 + subWorkplaceSequence: varchar("sub_workplace_sequence", { length: 16 }), // SB_WKA_SEQ - SUB작업장순서 + overlapCauseCode: varchar("overlap_cause_code", { length: 2 }), // OVLAP_CAUS_CD - 중복사유코드 + documentType: varchar("document_type", { length: 3 }), // DOC_TP - 문서유형 + documentNumber: varchar("document_number", { length: 25 }), // DOC_NO - 문서번호 + partialDocument: varchar("partial_document", { length: 3 }), // PTN_DOC - 부분문서 + documentVersion: varchar("document_version", { length: 2 }), // DOC_VER - 문서버전 + inboundFlag: varchar("inbound_flag", { length: 1 }), // INB_FLAG - 인바운드플래그 + deleteHoldIndicator: varchar("delete_hold_indicator", { length: 1 }), // DEL_HOLD_ORDR - 삭제보류지시자 + purchaseHoldDate: varchar("purchase_hold_date", { length: 8 }), // PUR_HOLD_DT - 구매보류일자 + postBox: varchar("post_box", { length: 30 }), // POBX - 사서함 + internationalLocationCheckNumber: integer("international_location_check_number"), // INTL_LCTN_CHK_NUM - 국제LOCATION점검숫자 + withholdingTaxGenderKey: varchar("withholding_tax_gender_key", { length: 1 }), // SRCETX_RP_SEX_KEY - 원천세의무자성별키 + vendorContractManager1: varchar("vendor_contract_manager_1", { length: 105 }), // VNDR_CNRT_CHRGR_1 - VENDOR계약담당자1 + vendorContractManager2: varchar("vendor_contract_manager_2", { length: 105 }), // VNDR_CNRT_CHRGR_2 - VENDOR계약담당자2 + representativeResidentNumber: varchar("representative_resident_number", { length: 13 }), // REPR_RESNO - 대표생년월일 + companyVolume: varchar("company_volume", { length: 1 }), // CO_VLM - 기업규모 +}) + +// 벤더 업무그룹 테이블 (CMCTB_VENDOR_GRP 대응) +export const vendorBusinessGroups = pgTable("vendor_business_groups", { + id: serial("id").primaryKey(), // postgres 인공키 + vendorCode: varchar("vendor_code", { length: 10 }).notNull().references(() => vendors.vendorCode), // VNDRCD - 벤더코드 (키) 이고, SAP에서는 VARCHAR10 이다. + businessGroupCode: varchar("business_group_code", { length: 3 }).notNull(), // BIZ_GRP_CD - 업무그룹코드 + createdDate: varchar("created_date", { length: 8 }), // CRTE_DT - 생성일자 + createdTime: varchar("created_time", { length: 6 }), // CRTE_TM - 생성시간 + creatorId: varchar("creator_id", { length: 13 }), // CRTER_ID - 생성자ID + createdAt: timestamp("created_at").defaultNow().notNull(), + updatedAt: timestamp("updated_at").defaultNow().notNull(), +}); + +// 사내협력사 벤더 테이블 (CMCTB_VENDOR_INCO 대응) +export const vendorInternalPartners = pgTable("vendor_internal_partners", { + id: serial("id").primaryKey(), + vendorCode: varchar("vendor_code", { length: 10 }).notNull().references(() => vendors.vendorCode), // VNDRCD - 벤더코드 (키) 이고, SAP에서는 VARCHAR10 이다. + vendorName: varchar("vendor_name", { length: 120 }), // VNDRNM - VENDOR코명 + representativeName: varchar("representative_name", { length: 30 }), // REPR_NM - 대표자명 + partnerType: varchar("partner_type", { length: 1 }), // PRTNR_GB - 협력사구분 + internalPartnerCode: varchar("internal_partner_code", { length: 3 }), // INCO_PRTNR_CD - 사내협력사코드 + internalPartnerWorkplace1: varchar("internal_partner_workplace_1", { length: 1 }), // INCO_PRTNR_WKA_1 - 사내협력사작업장1 + internalPartnerWorkplace2: varchar("internal_partner_workplace_2", { length: 1 }), // INCO_PRTNR_WKA_2 - 사내협력사작업장2 + internalPartnerWorkplace3: varchar("internal_partner_workplace_3", { length: 1 }), // INCO_PRTNR_WKA_3 - 사내협력사작업장3 + jobTypeCode: varchar("job_type_code", { length: 2 }), // JBTYPE_CD - 직종코드 + jobTypeCode2: varchar("job_type_code_2", { length: 2 }), // JBTYPE_CD_2 - 직종코드2 + individualCorporateType: varchar("individual_corporate_type", { length: 2 }), // INDV_CO_GB - 개인법인구분 + internalFoundationYn: varchar("internal_foundation_yn", { length: 1 }), // INCO_FOND_YN - 사내창립유무 + dockNumber: varchar("dock_number", { length: 25 }), // DOCK_NO - 도크번호 + companyInputDate: varchar("company_input_date", { length: 8 }), // OCMP_INP_DT - 당사투입일자 + internalWithdrawalDate: varchar("internal_withdrawal_date", { length: 8 }), // INCO_DUSE_DT - 사내철수일자 + industrialInsurancePremiumRate: integer("industrial_insurance_premium_rate"), // INDST_INS_PMRAT - 산재보험요율 + contractPerformanceGuarantee: integer("contract_performance_guarantee"), // CNRT_PFRM_GRAMT - 계약이행보증금 + wageRate: integer("wage_rate"), // WGE_RAT - 임금율 + correspondingDepartmentCode1: varchar("corresponding_department_code_1", { length: 30 }), // CRSPD_DEPTCD_1 - 해당부서코드1 + correspondingDepartmentCode2: varchar("corresponding_department_code_2", { length: 30 }), // CRSPD_DEPTCD_2 - 해당부서코드2 + correspondingTeamBelonging: varchar("corresponding_team_belonging", { length: 100 }), // CRSPD_TEAM_BLNG - 해당팀소속 + internalPartnerItem1: varchar("internal_partner_item_1", { length: 120 }), // INCO_PRTNR_ITM_1 - 사내협력사종목1 + internalPartnerItem2: varchar("internal_partner_item_2", { length: 120 }), // INCO_PRTNR_ITM_2 - 사내협력사종목2 + officeLocation: varchar("office_location", { length: 240 }), // OFC_LOC - 사무실위치 + representativeCompanyCareer: varchar("representative_company_career", { length: 300 }), // REP_OCMP_CARR - 대표당사경력 + internalWithdrawalReason: varchar("internal_withdrawal_reason", { length: 600 }), // INCO_DUSE_CAUS - 사내철수사유 + telephoneNumber: varchar("telephone_number", { length: 30 }), // TEL_NO - 전화번호 + address1: varchar("address_1", { length: 200 }), // ADR1 - 주소 + address2: varchar("address_2", { length: 200 }), // ADR2 - 상세주소 + oldVendorCode: varchar("old_vendor_code", { length: 10 }), // OLD_VNDRCD - 이전 VENDOR코드 + treeNumber: varchar("tree_number", { length: 1 }), // TREE_NUM - 하위 VENDOR 갯수 + createdDate: varchar("created_date", { length: 8 }), // CRTE_DT - 생성일자 + createdTime: varchar("created_time", { length: 6 }), // CRTE_TM - 생성시간 + createdUserId: varchar("created_user_id", { length: 13 }), // CRTE_USR_ID - 생성사용자ID + changeDate: varchar("change_date", { length: 8 }), // CHG_DT - 수정일자 + changeTime: varchar("change_time", { length: 6 }), // CHG_TM - 수정시간 + changeUserId: varchar("change_user_id", { length: 13 }), // CHG_USR_ID - 수정사용자ID + upperJobType: varchar("upper_job_type", { length: 2 }), // UPR_JBTYPE - 직종단가 + supplierBusinessPlaceCode: varchar("supplier_business_place_code", { length: 4 }), // ZBYBP - 공급받는자 종사업장 식별코드 + remark: varchar("remark", { length: 4000 }), // RMK - 비고 + withdrawalPlanYn: varchar("withdrawal_plan_yn", { length: 1 }), // WDL_PLN_YN - 철수예정유무 + wageDelayOccurrence: varchar("wage_delay_occurrence", { length: 8 }), // WGE_DELY_DVL - 임금체불발생 + escrowYn: varchar("escrow_yn", { length: 1 }), // ESCROW_YN - 에스크로가입유무 + createdAt: timestamp("created_at").defaultNow().notNull(), + updatedAt: timestamp("updated_at").defaultNow().notNull(), +}); + +// 벤더 구매조직 테이블 (CMCTB_VENDOR_PORG 대응) +export const vendorPurchaseOrganizations = pgTable("vendor_purchase_organizations", { + id: serial("id").primaryKey(), + vendorCode: varchar("vendor_code", { length: 10 }).notNull().references(() => vendors.vendorCode), // VNDRCD - 벤더코드 (키) 이고, SAP에서는 VARCHAR10 이다. + purchaseOrgCode: varchar("purchase_org_code", { length: 4 }).notNull(), // PUR_ORG_CD - 구매조직 + purchaseOrderCurrency: varchar("purchase_order_currency", { length: 5 }), // PUR_ORD_CUR - 구매오더통화 + paymentTerms: varchar("payment_terms", { length: 4 }), // SPLY_COND - 지급조건 + deliveryTerms1: varchar("delivery_terms_1", { length: 3 }), // DL_COND_1 - 인도조건1 + deliveryTerms2: varchar("delivery_terms_2", { length: 90 }), // DL_COND_2 - 인도조건2 + calculationSchemaGroup: varchar("calculation_schema_group", { length: 2 }), // CALC_SHM_GRP - 계산스키마그룹 + grBasedInvoiceVerification: varchar("gr_based_invoice_verification", { length: 1 }), // GR_BSE_INVC_VR - GR기준송장검증 + automaticPurchaseOrderIndicator: varchar("automatic_purchase_order_indicator", { length: 1 }), // AT_PUR_ORD_ORDR - 자동구매오더지시자 + purchaseHoldIndicator: varchar("purchase_hold_indicator", { length: 1 }), // PUR_HOLD_ORDR - 구매보류지시자 + deleteIndicator: varchar("delete_indicator", { length: 1 }), // DEL_ORDR - 삭제지시자 + interfaceDate: varchar("interface_date", { length: 8 }), // IF_DT - 인터페이스일자 + interfaceTime: varchar("interface_time", { length: 6 }), // IF_TM - 인터페이스시간 + interfaceStatus: varchar("interface_status", { length: 1 }), // IF_STAT - 인터페이스상태 + interfaceMessage: varchar("interface_message", { length: 100 }), // IF_MSG - 인터페이스메시지 + orderConfirmationRequestIndicator: varchar("order_confirmation_request_indicator", { length: 1 }), // ORD_CNFM_REQ_ORDR - 오더확인요청지시자 + salesManagerName: varchar("sales_manager_name", { length: 120 }), // SALE_CHRGR_NM - 영업담당자명 + vendorTelephoneNumber: varchar("vendor_telephone_number", { length: 30 }), // VNDR_TELNO - VENDOR전화번호 + confirmationControlKey: varchar("confirmation_control_key", { length: 4 }), // CNFM_CTL_KEY - 확정제어키 + purchaseHoldDate: varchar("purchase_hold_date", { length: 8 }), // PUR_HOLD_DT - 구매보류일자 + purchaseHoldReason: varchar("purchase_hold_reason", { length: 120 }), // PUR_HOLD_CAUS - 구매보류사유 + createdAt: timestamp("created_at").defaultNow().notNull(), + updatedAt: timestamp("updated_at").defaultNow().notNull(), +}); + +// 벤더 대표자 이메일 테이블 (CMCTB_VENDOR_REPREMAIL 대응) +export const vendorRepresentativeEmails = pgTable("vendor_representative_emails", { + id: serial("id").primaryKey(), + vendorCode: varchar("vendor_code", { length: 10 }).notNull().references(() => vendors.vendorCode), // VNDRCD - 벤더코드 (키) 이고, SAP에서는 VARCHAR10 이다. + addressNumber: varchar("address_number", { length: 10 }), // ADR_NO - 주소번호 + representativeSequence: varchar("representative_sequence", { length: 3 }).notNull(), // REPR_SER - 대표자순번 + validStartDate: varchar("valid_start_date", { length: 8 }).notNull(), // VLD_ST_DT - 유효시작일자 + emailAddress: varchar("email_address", { length: 241 }), // EMAIL_ADR - 이메일주소 + interfaceDate: varchar("interface_date", { length: 8 }), // IF_DT - 인터페이스일자 + interfaceTime: varchar("interface_time", { length: 6 }), // IF_TM - 인터페이스시간 + interfaceStatus: varchar("interface_status", { length: 1 }), // IF_STAT - 인터페이스상태 + interfaceMessage: varchar("interface_message", { length: 100 }), // IF_MSG - 인터페이스메시지 + createdAt: timestamp("created_at").defaultNow().notNull(), + updatedAt: timestamp("updated_at").defaultNow().notNull(), +}); + +// 벤더 대표자 팩스 테이블 (CMCTB_VENDOR_REPRFAX 대응) +export const vendorRepresentativeFaxes = pgTable("vendor_representative_faxes", { + id: serial("id").primaryKey(), + vendorCode: varchar("vendor_code", { length: 10 }).notNull().references(() => vendors.vendorCode), // VNDRCD - 벤더코드 (키) 이고, SAP에서는 VARCHAR10 이다. + addressNumber: varchar("address_number", { length: 10 }), // ADR_NO - 주소번호 + representativeSequence: varchar("representative_sequence", { length: 3 }).notNull(), // REPR_SER - 대표자순번 + validStartDate: varchar("valid_start_date", { length: 8 }).notNull(), // VLD_ST_DT - 유효시작일자 + nationCode: varchar("nation_code", { length: 3 }), // NTN_CD - 국가코드 + faxNumber: varchar("fax_number", { length: 30 }), // FAXNO - 팩스번호 + faxExtensionNumber: varchar("fax_extension_number", { length: 10 }), // FAX_ETS_NO - 팩스내선번호 + interfaceDate: varchar("interface_date", { length: 8 }), // IF_DT - 인터페이스일자 + interfaceTime: varchar("interface_time", { length: 6 }), // IF_TM - 인터페이스시간 + interfaceStatus: varchar("interface_status", { length: 1 }), // IF_STAT - 인터페이스상태 + interfaceMessage: varchar("interface_message", { length: 100 }), // IF_MSG - 인터페이스메시지 + createdAt: timestamp("created_at").defaultNow().notNull(), + updatedAt: timestamp("updated_at").defaultNow().notNull(), +}); + +// 벤더 대표자 전화번호 테이블 (CMCTB_VENDOR_REPRTEL 대응) +export const vendorRepresentativeTelephones = pgTable("vendor_representative_telephones", { + id: serial("id").primaryKey(), + vendorCode: varchar("vendor_code", { length: 10 }).notNull().references(() => vendors.vendorCode), // VNDRCD - 벤더코드 (키) 이고, SAP에서는 VARCHAR10 이다. + addressNumber: varchar("address_number", { length: 10 }), // ADR_NO - 주소번호 + representativeSequence: varchar("representative_sequence", { length: 3 }).notNull(), // REPR_SER - 대표자순번 + validStartDate: varchar("valid_start_date", { length: 8 }).notNull(), // VLD_ST_DT - 유효시작일자 + nationCode: varchar("nation_code", { length: 3 }), // NTN_CD - 국가코드 + telephoneNumber: varchar("telephone_number", { length: 30 }), // TELNO - 전화번호 + extensionNumber: varchar("extension_number", { length: 10 }), // ETX_NO - 내선번호 + mobileIndicator: varchar("mobile_indicator", { length: 1 }), // HP_ORDR - 핸드폰지시자 + interfaceDate: varchar("interface_date", { length: 8 }), // IF_DT - 인터페이스일자 + interfaceTime: varchar("interface_time", { length: 6 }), // IF_TM - 인터페이스시간 + interfaceStatus: varchar("interface_status", { length: 1 }), // IF_STAT - 인터페이스상태 + interfaceMessage: varchar("interface_message", { length: 100 }), // IF_MSG - 인터페이스메시지 + createdAt: timestamp("created_at").defaultNow().notNull(), + updatedAt: timestamp("updated_at").defaultNow().notNull(), +}); + +// 벤더 대표자 URL 테이블 (CMCTB_VENDOR_REPRURL 대응) +export const vendorRepresentativeUrls = pgTable("vendor_representative_urls", { + id: serial("id").primaryKey(), + vendorCode: varchar("vendor_code", { length: 10 }).notNull().references(() => vendors.vendorCode), // VNDRCD - 벤더코드 (키) 이고, SAP에서는 VARCHAR10 이다. + addressNumber: varchar("address_number", { length: 10 }), // ADR_NO - 주소번호 + representativeSequence: varchar("representative_sequence", { length: 3 }).notNull(), // REPR_SER - 대표자순번 + validStartDate: varchar("valid_start_date", { length: 8 }).notNull(), // VLD_ST_DT - 유효시작일자 + url: varchar("url", { length: 2048 }), // URL - URL + interfaceDate: varchar("interface_date", { length: 8 }), // IF_DT - 인터페이스일자 + interfaceTime: varchar("interface_time", { length: 6 }), // IF_TM - 인터페이스시간 + interfaceStatus: varchar("interface_status", { length: 1 }), // IF_STAT - 인터페이스상태 + interfaceMessage: varchar("interface_message", { length: 100 }), // IF_MSG - 인터페이스메시지 + createdAt: timestamp("created_at").defaultNow().notNull(), + updatedAt: timestamp("updated_at").defaultNow().notNull(), +}); + +// 벤더 세금번호 테이블 (CMCTB_VENDOR_TAXNUM 대응) +export const vendorTaxNumbers = pgTable("vendor_tax_numbers", { + id: serial("id").primaryKey(), + vendorCode: varchar("vendor_code", { length: 10 }).notNull().references(() => vendors.vendorCode), // VNDRCD - 벤더코드 (키) 이고, SAP에서는 VARCHAR10 이다. + taxNumberCategory: varchar("tax_number_category", { length: 4 }).notNull(), // TX_NO_CTG - 세금번호범주 + businessPartnerTaxNumber: varchar("business_partner_tax_number", { length: 20 }), // BIZ_PTNR_TX_NO - 사업파트너세금번호 + interfaceDate: varchar("interface_date", { length: 8 }), // IF_DT - 인터페이스일자 + interfaceTime: varchar("interface_time", { length: 6 }), // IF_TM - 인터페이스시간 + interfaceStatus: varchar("interface_status", { length: 1 }), // IF_STAT - 인터페이스상태 + interfaceMessage: varchar("interface_message", { length: 100 }), // IF_MSG - 인터페이스메시지 + createdAt: timestamp("created_at").defaultNow().notNull(), + updatedAt: timestamp("updated_at").defaultNow().notNull(), +}); + +// 벤더 파트너역할 테이블 (CMCTB_VENDOR_VFPN 대응) +export const vendorPartnerFunctions = pgTable("vendor_partner_functions", { + id: serial("id").primaryKey(), + vendorCode: varchar("vendor_code", { length: 10 }).notNull().references(() => vendors.vendorCode), // VNDRCD - 벤더코드 (키) 이고, SAP에서는 VARCHAR10 이다. + purchaseOrgCode: varchar("purchase_org_code", { length: 4 }).notNull(), // PUR_ORG_CD - 구매조직 + vendorSubNumber: varchar("vendor_sub_number", { length: 6 }).notNull(), // VNDR_SUB_NO - VENDOR서브번호 + plantCode: varchar("plant_code", { length: 4 }).notNull(), // PLNT_CD - 플랜트코드 + partnerFunction: varchar("partner_function", { length: 2 }).notNull(), // PTNR_SKL - 파트너기능 + partnerCounter: varchar("partner_counter", { length: 3 }).notNull(), // PTNR_CNT - 파트너카운터 + otherReferenceVendorCode: varchar("other_reference_vendor_code", { length: 10 }), // ETC_REF_VNDRCD - 기타참조VENDOR코드 + defaultPartnerIndicator: varchar("default_partner_indicator", { length: 1 }), // BSE_PTNR_ORDR - 기본파트너지시자 + interfaceDate: varchar("interface_date", { length: 8 }), // IF_DT - 인터페이스일자 + interfaceTime: varchar("interface_time", { length: 6 }), // IF_TM - 인터페이스시간 + interfaceStatus: varchar("interface_status", { length: 1 }), // IF_STAT - 인터페이스상태 + interfaceMessage: varchar("interface_message", { length: 100 }), // IF_MSG - 인터페이스메시지 + createdAt: timestamp("created_at").defaultNow().notNull(), + updatedAt: timestamp("updated_at").defaultNow().notNull(), +}); + +// 벤더 원천세 테이블 (CMCTB_VENDOR_WHTHX 대응) +export const vendorWithholdingTax = pgTable("vendor_withholding_tax", { + id: serial("id").primaryKey(), + vendorCode: varchar("vendor_code", { length: 10 }).notNull().references(() => vendors.vendorCode), // VNDRCD - 벤더코드 (키) 이고, SAP에서는 VARCHAR10 이다. + companyCode: varchar("company_code", { length: 4 }).notNull(), // CO_CD - 회사코드 + withholdingTaxType: varchar("withholding_tax_type", { length: 2 }).notNull(), // SRCE_TX_TP - 원천세유형 + withholdingTaxRelatedIndicator: varchar("withholding_tax_related_indicator", { length: 1 }), // SRCE_TX_REL_ORDR - 원천세관련지시자 + recipientType: varchar("recipient_type", { length: 2 }), // RECIP_TP - 수취인유형 + withholdingTaxIdentificationNumber: varchar("withholding_tax_identification_number", { length: 16 }), // SRCE_TX_IDENT_NO - 원천세식별번호 + withholdingTaxCode: varchar("withholding_tax_code", { length: 2 }), // SRCE_TX_NO - 원천세코드 + exemptionCertificateNumber: varchar("exemption_certificate_number", { length: 15 }), // DCHAG_CERT_NO - 면제증명서번호 + exemptionRate: integer("exemption_rate"), // DCHAG_RAT - 면제율 + exemptionStartDate: varchar("exemption_start_date", { length: 8 }), // DCHAG_ST_DT - 면제시작일자 + exemptionEndDate: varchar("exemption_end_date", { length: 8 }), // DCHAG_ED_DT - 면제종료일 + exemptionReason: varchar("exemption_reason", { length: 200 }), // DCHAG_CAUS - 면제사유 + interfaceDate: varchar("interface_date", { length: 8 }), // IF_DT - 인터페이스일자 + interfaceTime: varchar("interface_time", { length: 6 }), // IF_TM - 인터페이스시간 + interfaceStatus: varchar("interface_status", { length: 1 }), // IF_STAT - 인터페이스상태 + interfaceMessage: varchar("interface_message", { length: 100 }), // IF_MSG - 인터페이스메시지 + createdAt: timestamp("created_at").defaultNow().notNull(), + updatedAt: timestamp("updated_at").defaultNow().notNull(), +}); + +// ------- [끝] MDG 인터페이스 목적 테이블 추가 ------------- + +// ------- [시작] MDG 대응을 위한 새로운 테이블 타입 정의 ------------- +export type VendorBusinessGroup = typeof vendorBusinessGroups.$inferSelect +export type VendorInternalPartner = typeof vendorInternalPartners.$inferSelect +export type VendorPurchaseOrganization = typeof vendorPurchaseOrganizations.$inferSelect +export type VendorRepresentativeEmail = typeof vendorRepresentativeEmails.$inferSelect +export type VendorRepresentativeFax = typeof vendorRepresentativeFaxes.$inferSelect +export type VendorRepresentativeTelephone = typeof vendorRepresentativeTelephones.$inferSelect +export type VendorRepresentativeUrl = typeof vendorRepresentativeUrls.$inferSelect +export type VendorTaxNumber = typeof vendorTaxNumbers.$inferSelect +export type VendorPartnerFunction = typeof vendorPartnerFunctions.$inferSelect +export type VendorWithholdingTax = typeof vendorWithholdingTax.$inferSelect +// ------- [끝] MDG 대응을 위한 새로운 테이블 타입 정의 ------------- + +// vendors 통합 뷰 - id 하나로 모든 마이그레이션 정보 확인 +export const vendorComprehensiveView = pgView("vendor_comprehensive_view").as((qb) => { + return qb + .select({ + evcpId: vendors.id, + evcpVendorName: vendors.vendorName, + evcpTaxId: vendors.taxId, + mdgBusinessRegistrationNumber: vendorMdgGenerals.businessRegistrationNumber, + + + }) + .from(vendors) + .leftJoin(vendorMdgGenerals, eq(vendors.vendorCode, vendorMdgGenerals.vendorCode)) + .leftJoin(vendorBusinessGroups, eq(vendors.vendorCode, vendorBusinessGroups.vendorCode)) + .leftJoin(vendorInternalPartners, eq(vendors.vendorCode, vendorInternalPartners.vendorCode)) + .leftJoin(vendorPurchaseOrganizations, eq(vendors.vendorCode, vendorPurchaseOrganizations.vendorCode)) + .leftJoin(vendorRepresentativeEmails, eq(vendors.vendorCode, vendorRepresentativeEmails.vendorCode)) + .leftJoin(vendorRepresentativeFaxes, eq(vendors.vendorCode, vendorRepresentativeFaxes.vendorCode)) + .leftJoin(vendorRepresentativeTelephones, eq(vendors.vendorCode, vendorRepresentativeTelephones.vendorCode)) + .leftJoin(vendorRepresentativeUrls, eq(vendors.vendorCode, vendorRepresentativeUrls.vendorCode)) + .leftJoin(vendorTaxNumbers, eq(vendors.vendorCode, vendorTaxNumbers.vendorCode)) + .leftJoin(vendorPartnerFunctions, eq(vendors.vendorCode, vendorPartnerFunctions.vendorCode)) + .leftJoin(vendorWithholdingTax, eq(vendors.vendorCode, vendorWithholdingTax.vendorCode)) +}) + +export type VendorComprehensiveView = typeof vendorComprehensiveView.$inferSelect + diff --git a/public/wsdl/IF_MDZ_EVCP_CUSTOMER_MASTER.wsdl b/public/wsdl/IF_MDZ_EVCP_CUSTOMER_MASTER.wsdl new file mode 100644 index 00000000..94708281 --- /dev/null +++ b/public/wsdl/IF_MDZ_EVCP_CUSTOMER_MASTER.wsdl @@ -0,0 +1,240 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<!-- WSDL: [송신] S-ERP MDZ CUSTOMER MASTER <-> [수신] eVCP 품질서버(60.101.108.100) -->
+<!-- Program ID: IF_MDZ_EVCP_CUSTOMER_MASTER -->
+<!-- 운영시 WSDL 변경해 추가 작성 필요 -->
+<wsdl:definitions targetNamespace="http://60.101.108.100/api/IF_MDZ_EVCP_CUSTOMER_MASTER/"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
+ <wsdl:types>
+ <xsd:schema targetNamespace="http://60.101.108.100/api/IF_MDZ_EVCP_CUSTOMER_MASTER/"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:p0="http://60.101.108.100/api/IF_MDZ_EVCP_CUSTOMER_MASTER/">
+ <xsd:element name="IF_MDZ_EVCP_CUSTOMER_MASTERReq" type="p0:IF_MDZ_EVCP_CUSTOMER_MASTERReq" nillable="true"/>
+ <xsd:complexType name="IF_MDZ_EVCP_CUSTOMER_MASTERReq">
+ <xsd:sequence>
+ <xsd:element name="BP_HEADER" type="p0:BP_HEADER" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="BP_HEADER">
+ <xsd:sequence>
+ <xsd:element name="BP_HEADER" type="xsd:string"/>
+ <xsd:element name="ADDRESS" type="p0:ADDRESS" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="BP_TAXNUM" type="p0:BP_TAXNUM" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="BP_CUSGEN" type="p0:BP_CUSGEN" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="ADDRESS">
+ <xsd:sequence>
+ <xsd:element name="ADDRNO" type="xsd:string"/>
+ <xsd:element name="AD_POSTAL" type="p0:AD_POSTAL" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="AD_TEL" type="p0:AD_TEL" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="AD_FAX" type="p0:AD_FAX" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="AD_URL" type="p0:AD_URL" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="AD_EMAIL" type="p0:AD_EMAIL" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="AD_POSTAL">
+ <xsd:sequence>
+ <xsd:element name="NATION" type="xsd:string"/>
+ <xsd:element name="POST_CODE1" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="POST_CODE2" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CITY1" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CITY2" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="REGION" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TITLE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SORT1" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SORT2" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="NAME1" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="NAME2" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="NAME3" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="NAME4" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="LANGU" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="STREET" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="HOUSE_NUM1" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="COUNTRY" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PO_BOX" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TRANSPZONE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TAXJURCODE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TIME_ZONE" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="AD_TEL">
+ <xsd:sequence>
+ <xsd:element name="CONSNUMBER" type="xsd:string"/>
+ <xsd:element name="DATE_FROM" type="xsd:string"/>
+ <xsd:element name="COUNTRY" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TEL_NUMBER" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TEL_EXTENS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="R3_USER" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="AD_FAX">
+ <xsd:sequence>
+ <xsd:element name="CONSNUMBER" type="xsd:string"/>
+ <xsd:element name="DATE_FROM" type="xsd:string"/>
+ <xsd:element name="COUNTRY" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="FAX_NUMBER" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="FAX_EXTENS" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="AD_URL">
+ <xsd:sequence>
+ <xsd:element name="CONSNUMBER" type="xsd:string"/>
+ <xsd:element name="DATE_FROM" type="xsd:string"/>
+ <xsd:element name="URI_ADDR" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="AD_EMAIL">
+ <xsd:sequence>
+ <xsd:element name="CONSNUMBER" type="xsd:string"/>
+ <xsd:element name="DATE_FROM" type="xsd:string"/>
+ <xsd:element name="SMTP_ADDR" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="BP_TAXNUM">
+ <xsd:sequence>
+ <xsd:element name="TAXTYPE" type="xsd:string"/>
+ <xsd:element name="TAXNUM" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="BP_CUSGEN">
+ <xsd:sequence>
+ <xsd:element name="ZVATREG" type="p0:ZVATREG" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="ZTAXIND" type="p0:ZTAXIND" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="ZCOMPANY" type="p0:ZCOMPANY" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="ZSALES" type="p0:ZSALES" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="KUNNR" type="xsd:string"/>
+ <xsd:element name="KTOKD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="NIELS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="LOEVM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VBUND" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZBA" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="J_1KFREPRE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="J_1KFTBUS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="J_1KFTIND" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="STCD1" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="STCD2" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="STCD3" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="STCD4" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="STCEG" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="LIFNR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="UWAER" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="UMJAH" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="JMZAH" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="JMJAH" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="GFORM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="KATR1" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="KDKG1" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ANRED" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PUGRP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="UMSAT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SPERR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="NODEL" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="AUFSD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="FAKSD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="LIFSD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZFTGT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZFTGTNM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZFTDT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZFTDTNM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZFTBU" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZFTBUNM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZDUNS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZORT01_C" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZREASON" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZSUBSEQ_C" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZORT02_C" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZSTRAS_C" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZREGDT_C" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZREGTM_C" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZREGUS_C" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZAPPDT_C" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZAPPTM_C" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZAPPUS_C" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZLAMDT_C" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZLAMTM_C" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZLAMUS_C" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZCRMCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZINBFLGC" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZBRSCH_C" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZSTCDT_C" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SPRAS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZDOKAR_C" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZDOKNR_C" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZDOKTL_C" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZDOKVR_C" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="ZVATREG">
+ <xsd:sequence>
+ <xsd:element name="LAND1" type="xsd:string"/>
+ <xsd:element name="STCEG" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="ZTAXIND">
+ <xsd:sequence>
+ <xsd:element name="ALAND" type="xsd:string"/>
+ <xsd:element name="TATYP" type="xsd:string"/>
+ <xsd:element name="TAXKD" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="ZCOMPANY">
+ <xsd:sequence>
+ <xsd:element name="BUKRS" type="xsd:string"/>
+ <xsd:element name="AKONT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZUAWA" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="FDGRV" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZWELS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZTERM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZAHLS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="LOEVM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SPERR" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="ZSALES">
+ <xsd:sequence>
+ <xsd:element name="ZCPFN" type="p0:ZCPFN" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="VKORG" type="xsd:string"/>
+ <xsd:element name="VTWEG" type="xsd:string"/>
+ <xsd:element name="SPART" type="xsd:string"/>
+ <xsd:element name="BZIRK" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VKBUR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VKGRP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="KDGRP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="AWAHR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="WAERS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="KURST" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="KALKS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VERSG" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VSBED" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ANTLF" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="INCO1" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="INCO2" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZTERM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="KTGRD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="LOEVM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="KONDA" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="LPRIO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PLTYP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VWERK" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="AUFSD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="LIFSD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="FAKSD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="KZAZU" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="ZCPFN">
+ <xsd:sequence>
+ <xsd:element name="PARVW" type="xsd:string"/>
+ <xsd:element name="PARZA" type="xsd:string"/>
+ <xsd:element name="DEFPA" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="KUNN2" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:schema>
+ </wsdl:types>
+ <wsdl:message name="process">
+ <wsdl:part name="IF_MDZ_EVCP_CUSTOMER_MASTERReq" element="p7:IF_MDZ_EVCP_CUSTOMER_MASTERReq"
+ xmlns:p7="http://60.101.108.100/api/IF_MDZ_EVCP_CUSTOMER_MASTER/"/>
+ </wsdl:message>
+ <wsdl:message name="processResponse"/>
+</wsdl:definitions>
\ No newline at end of file diff --git a/public/wsdl/IF_MDZ_EVCP_DEPARTMENT_CODE.wsdl b/public/wsdl/IF_MDZ_EVCP_DEPARTMENT_CODE.wsdl new file mode 100644 index 00000000..c83d7711 --- /dev/null +++ b/public/wsdl/IF_MDZ_EVCP_DEPARTMENT_CODE.wsdl @@ -0,0 +1,61 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<wsdl:definitions targetNamespace="http://60.101.108.100/api/IF_MDZ_EVCP_DEPARTMENT_CODE/"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
+ <wsdl:types>
+ <xsd:schema targetNamespace="http://60.101.108.100/api/IF_MDZ_EVCP_DEPARTMENT_CODE/"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:p0="http://60.101.108.100/api/IF_MDZ_EVCP_DEPARTMENT_CODE/">
+ <xsd:element name="IF_MDZ_EVCP_DEPARTMENT_CODEReq" type="p0:IF_MDZ_EVCP_DEPARTMENT_CODEReq" nillable="true"/>
+ <xsd:complexType name="IF_MDZ_EVCP_DEPARTMENT_CODEReq">
+ <xsd:sequence>
+ <xsd:element name="CMCTB_DEPT_MDG" type="p0:CMCTB_DEPT_MDG" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="CMCTB_DEPT_MDG">
+ <xsd:sequence>
+ <xsd:element name="DEPTCD" type="xsd:string"/>
+ <xsd:element name="CORPCD" type="xsd:string"/>
+ <xsd:element name="COMPCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PDEPTCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CCCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PCCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BICD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="WERKS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BIZAREA" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="GNCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DHEMPID" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VALIDFROMDT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VALIDTODT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DEPTLVL" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DEPTPOSNO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DEPTNM" type="p0:DEPTNM" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="COMPNM" type="p0:COMPNM" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="CORPNM" type="p0:CORPNM" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="DEPTNM">
+ <xsd:sequence>
+ <xsd:element name="SPRAS" type="xsd:string"/>
+ <xsd:element name="DEPTNM" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="COMPNM">
+ <xsd:sequence>
+ <xsd:element name="SPRAS" type="xsd:string"/>
+ <xsd:element name="COMPNM" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="CORPNM">
+ <xsd:sequence>
+ <xsd:element name="SPRAS" type="xsd:string"/>
+ <xsd:element name="CORPNM" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:schema>
+ </wsdl:types>
+ <wsdl:message name="process">
+ <wsdl:part name="IF_MDZ_EVCP_DEPARTMENT_CODEReq" element="p4:IF_MDZ_EVCP_DEPARTMENT_CODEReq"
+ xmlns:p4="http://60.101.108.100/api/IF_MDZ_EVCP_DEPARTMENT_CODE/"/>
+ </wsdl:message>
+ <wsdl:message name="processResponse"/>
+</wsdl:definitions>
\ No newline at end of file diff --git a/public/wsdl/IF_MDZ_EVCP_EMPLOYEE_MASTER.wsdl b/public/wsdl/IF_MDZ_EVCP_EMPLOYEE_MASTER.wsdl new file mode 100644 index 00000000..c6a6327f --- /dev/null +++ b/public/wsdl/IF_MDZ_EVCP_EMPLOYEE_MASTER.wsdl @@ -0,0 +1,275 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<wsdl:definitions targetNamespace="http://60.101.108.100/api/IF_MDZ_EVCP_EMPLOYEE_MASTER/"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
+ <wsdl:types>
+ <xsd:schema targetNamespace="http://60.101.108.100/api/IF_MDZ_EVCP_EMPLOYEE_MASTER/"
+ xmlns:p0="http://60.101.108.100/api/IF_MDZ_EVCP_EMPLOYEE_MASTER/"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+ <xsd:element name="IF_MDZ_EVCP_EMPLOYEE_MASTERReq" type="p0:IF_MDZ_EVCP_EMPLOYEE_MASTERReq" nillable="true"/>
+ <xsd:complexType name="IF_MDZ_EVCP_EMPLOYEE_MASTERReq">
+ <xsd:sequence>
+ <xsd:element name="CMCTB_EMP_MDG" type="p0:CMCTB_EMP_MDG" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="CMCTB_EMP_MDG">
+ <xsd:sequence>
+ <xsd:element name="EMPID" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SINGLEID" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="EPID" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="NAME" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ENGNAME" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="EMPTYPE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DEPTCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PDEPTCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="COMPCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CORPCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="GNCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BICD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="KTL_EMP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BIZAREA" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="WORKPLC" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PAYPLC" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="COUNTRYCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="JOBCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="JOBDUTYCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="JOBGRDCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="GJOBCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="GJOBDUTYCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="GJOBGRDCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="LVABSENCE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="RETIRE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DISPATCH" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DPSTARTDT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DEPENDDT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ORGDEPTCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ORGPDEPCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ORGCOMPCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ORGCORPCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ORGBICD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="OKTL_EMPL" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VALFROMDT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VALTODT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DHJOBGRDCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DHNAME" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DHSINGLID" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SOCIALID" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SOCIALID_DECR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SEX" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="EMAIL" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TELNUM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MBPHONE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="EMPADR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PSTLCODE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="WFREQUIRE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="HRMANAGE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SINGLRQ" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SOJRNEMP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ADDRCNTRY" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="FORIGNFLG" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="USEDSYS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="JOBCLASS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TMPJDIV" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CSFROMDT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CSTODT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CTIROLE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="IDNO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BSCADDR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DTLADDR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DTLADDR2" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZBUKRS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZPRFLG" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ERNAM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ERDAT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ERZET" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="AENAM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="AEDAT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="AEZET" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DEL" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DEPTCODE" type="p0:DEPTCODE" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="DEPTNM" type="p0:DEPTNM" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="PDEPTNM" type="p0:PDEPTNM" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="COMPNM" type="p0:COMPNM" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="CORPNM" type="p0:CORPNM" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="GNNM" type="p0:GNNM" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="BINM" type="p0:BINM" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="KTLNM" type="p0:KTLNM" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="BANM" type="p0:BANM" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="COUNTRYNM" type="p0:COUNTRYNM" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="JOBNM" type="p0:JOBNM" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="JOBDUTYNM" type="p0:JOBDUTYNM" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="JOBGRDNM" type="p0:JOBGRDNM" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="ORGDEPTNM" type="p0:ORGDEPTNM" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="ORGPDEPNM" type="p0:ORGPDEPNM" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="ORGCOMPNM" type="p0:ORGCOMPNM" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="ORGCORPNM" type="p0:ORGCORPNM" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="ORGBICDNM" type="p0:ORGBICDNM" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="OKTLNM" type="p0:OKTLNM" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="DHJOBGDNM" type="p0:DHJOBGDNM" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="GJOBNM" type="p0:GJOBNM" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="GJOBDUTYNM" type="p0:GJOBDUTYNM" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="GJOBGRDNM" type="p0:GJOBGRDNM" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="GJOBGRDTYPE" type="p0:GJOBGRDTYPE" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="DEPTCODE">
+ <xsd:sequence>
+ <xsd:element name="PCCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="WERKS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PCCDNM" type="p0:PCCDNM" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="PCCDNM">
+ <xsd:sequence>
+ <xsd:element name="SPRAS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="KTEXT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="LTEXT" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="DEPTNM">
+ <xsd:sequence>
+ <xsd:element name="SPRAS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DEPTNM" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="PDEPTNM">
+ <xsd:sequence>
+ <xsd:element name="SPRAS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DEPTNM" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="COMPNM">
+ <xsd:sequence>
+ <xsd:element name="SPRAS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="COMPNM" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="CORPNM">
+ <xsd:sequence>
+ <xsd:element name="SPRAS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CORPNM" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="GNNM">
+ <xsd:sequence>
+ <xsd:element name="SPRAS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="GNNM" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="BINM">
+ <xsd:sequence>
+ <xsd:element name="SPRAS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BINM" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="KTLNM">
+ <xsd:sequence>
+ <xsd:element name="SPRAS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="LTEXT" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="BANM">
+ <xsd:sequence>
+ <xsd:element name="SPRAS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="GTEXT" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="COUNTRYNM">
+ <xsd:sequence>
+ <xsd:element name="SPRAS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="COUNTRYNM" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="JOBNM">
+ <xsd:sequence>
+ <xsd:element name="SPRAS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="JOBNM" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="JOBDUTYNM">
+ <xsd:sequence>
+ <xsd:element name="SPRAS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="JOBDUTYNM" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="JOBGRDNM">
+ <xsd:sequence>
+ <xsd:element name="SPRAS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="JOBGRDNM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="JOBGRDTYPE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ISEXECUT" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="ORGDEPTNM">
+ <xsd:sequence>
+ <xsd:element name="SPRAS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DEPTNM" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="ORGPDEPNM">
+ <xsd:sequence>
+ <xsd:element name="SPRAS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DEPTNM" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="ORGCOMPNM">
+ <xsd:sequence>
+ <xsd:element name="SPRAS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="COMPNM" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="ORGCORPNM">
+ <xsd:sequence>
+ <xsd:element name="SPRAS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CORPNM" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="ORGBICDNM">
+ <xsd:sequence>
+ <xsd:element name="SPRAS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BINM" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="OKTLNM">
+ <xsd:sequence>
+ <xsd:element name="SPRAS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="LTEXT" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="DHJOBGDNM">
+ <xsd:sequence>
+ <xsd:element name="SPRAS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="JOBGRDNM" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="GJOBNM">
+ <xsd:sequence>
+ <xsd:element name="SPRAS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="GJOBNM" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="GJOBDUTYNM">
+ <xsd:sequence>
+ <xsd:element name="SPRAS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="GJOBDUTYNM" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="GJOBGRDNM">
+ <xsd:sequence>
+ <xsd:element name="SPRAS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="GJOBGRDNM" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="GJOBGRDTYPE">
+ <xsd:sequence>
+ <xsd:element name="JOBGRDTYPE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ISEXECUT" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:schema>
+ </wsdl:types>
+ <wsdl:message name="process">
+ <wsdl:part name="IF_MDZ_EVCP_EMPLOYEE_MASTERReq" element="p12:IF_MDZ_EVCP_EMPLOYEE_MASTERReq"
+ xmlns:p12="http://60.101.108.100/api/IF_MDZ_EVCP_EMPLOYEE_MASTER/"/>
+ </wsdl:message>
+ <wsdl:message name="processResponse"/>
+</wsdl:definitions>
\ No newline at end of file diff --git a/public/wsdl/IF_MDZ_EVCP_EMPLOYEE_REFERENCE_MASTER.wsdl b/public/wsdl/IF_MDZ_EVCP_EMPLOYEE_REFERENCE_MASTER.wsdl new file mode 100644 index 00000000..792cc375 --- /dev/null +++ b/public/wsdl/IF_MDZ_EVCP_EMPLOYEE_REFERENCE_MASTER.wsdl @@ -0,0 +1,39 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<wsdl:definitions targetNamespace="http://60.101.108.100/api/IF_MDZ_EVCP_EMPLOYEE_REFERENCE_MASTER/"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
+ <wsdl:types>
+ <xsd:schema targetNamespace="http://60.101.108.100/api/IF_MDZ_EVCP_EMPLOYEE_REFERENCE_MASTER/"
+ xmlns:p0="http://60.101.108.100/api/IF_MDZ_EVCP_EMPLOYEE_REFERENCE_MASTER/"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+ <xsd:element name="IF_MDZ_EVCP_EMPLOYEE_REFERENCE_MASTERReq" type="p0:IF_MDZ_EVCP_EMPLOYEE_REFERENCE_MASTERReq" nillable="true"/>
+ <xsd:complexType name="IF_MDZ_EVCP_EMPLOYEE_REFERENCE_MASTERReq">
+ <xsd:sequence>
+ <xsd:element name="CMCTB_EMP_REF_MDG_IF" type="p0:CMCTB_EMP_REF_MDG_IF" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="CMCTB_EMP_REF_MDG_IF">
+ <xsd:sequence>
+ <xsd:element name="GRPCD" type="xsd:string"/>
+ <xsd:element name="CORPCD" type="xsd:string"/>
+ <xsd:element name="MAINCD" type="xsd:string"/>
+ <xsd:element name="VALIDFROMDT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VALIDTODT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ADTL_01" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ADTL_02" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="NAME" type="p0:NAME" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="NAME">
+ <xsd:sequence>
+ <xsd:element name="SPRAS" type="xsd:string"/>
+ <xsd:element name="NAME" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:schema>
+ </wsdl:types>
+ <wsdl:message name="process">
+ <wsdl:part name="IF_MDZ_EVCP_EMPLOYEE_REFERENCE_MASTERReq" element="p5:IF_MDZ_EVCP_EMPLOYEE_REFERENCE_MASTERReq"
+ xmlns:p5="http://60.101.108.100/api/IF_MDZ_EVCP_EMPLOYEE_REFERENCE_MASTER/"/>
+ </wsdl:message>
+ <wsdl:message name="processResponse"/>
+</wsdl:definitions>
\ No newline at end of file diff --git a/public/wsdl/IF_MDZ_EVCP_EQUP_MASTER.wsdl b/public/wsdl/IF_MDZ_EVCP_EQUP_MASTER.wsdl new file mode 100644 index 00000000..c9969ebf --- /dev/null +++ b/public/wsdl/IF_MDZ_EVCP_EQUP_MASTER.wsdl @@ -0,0 +1,128 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<wsdl:definitions targetNamespace="http://60.101.108.100/api/IF_MDZ_EVCP_EQUP_MASTER/"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
+ <wsdl:types>
+ <xsd:schema targetNamespace="http://60.101.108.100/api/IF_MDZ_EVCP_EQUP_MASTER/"
+ xmlns:p0="http://60.101.108.100/api/IF_MDZ_EVCP_EQUP_MASTER/"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+ <xsd:element name="IF_MDZ_EVCP_EQUP_MASTERReq" type="p0:IF_MDZ_EVCP_EQUP_MASTERReq" nillable="true"/>
+ <xsd:complexType name="IF_MDZ_EVCP_EQUP_MASTERReq">
+ <xsd:sequence>
+ <xsd:element name="MATL" type="p0:MATL" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="MATL">
+ <xsd:sequence>
+ <xsd:element name="MATNR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MBRSH" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MTART" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="LVORM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MEINS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MATKL" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BISMT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SPART" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PRDHA" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MSTAE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MSTDE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BRGEW" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="GEWEI" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="NTGEW" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VOLUM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VOLEH" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="GROES" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="LAENG" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BREIT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="HOEHE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MEABM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MAGRV" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VHART" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZNAME" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZSPEC" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZDESC" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZREGDT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZREGTM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZREGUS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZAPPDT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZAPPTM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZAPPUS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZLAMDT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZLAMTM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZLAMUS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZPRFLG" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DESC" type="p0:DESC" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="PLNT" type="p0:PLNT" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="UNIT" type="p0:UNIT" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="CLASSASGN" type="p0:CLASSASGN" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="CHARASGN" type="p0:CHARASGN" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="DESC">
+ <xsd:sequence>
+ <xsd:element name="MATNR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SPRAS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MAKTX" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="PLNT">
+ <xsd:sequence>
+ <xsd:element name="MATNR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="WERKS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="LVORM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MMSTA" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MMSTD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZMTARP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZREGDT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZREGTM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZREGUS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZLAMDT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZLAMTM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZLAMUS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZPRFLG" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="UNIT">
+ <xsd:sequence>
+ <xsd:element name="MATNR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MEINH" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="UMREZ" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="UMREN" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="LAENG" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BREIT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="HOEHE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MEABM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VOLEH" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VOLUM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BRGEW" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="GEWEI" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="CLASSASGN">
+ <xsd:sequence>
+ <xsd:element name="MATNR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CLASS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="KLART" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="CHARASGN">
+ <xsd:sequence>
+ <xsd:element name="MATNR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CLASS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="KLART" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ATNAM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ATWRT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ATFLV" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ATAWE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ATFLB" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ATAW1" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ATBEZ" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ATWTB" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:schema>
+ </wsdl:types>
+ <wsdl:message name="process">
+ <wsdl:part name="IF_MDZ_EVCP_EQUP_MASTERReq" element="p9:IF_MDZ_EVCP_EQUP_MASTERReq"
+ xmlns:p9="http://60.101.108.100/api/IF_MDZ_EVCP_EQUP_MASTER/"/>
+ </wsdl:message>
+ <wsdl:message name="processResponse"/>
+</wsdl:definitions>
\ No newline at end of file diff --git a/public/wsdl/IF_MDZ_EVCP_MATERIAL_MASTER_PART.wsdl b/public/wsdl/IF_MDZ_EVCP_MATERIAL_MASTER_PART.wsdl new file mode 100644 index 00000000..548f8cf4 --- /dev/null +++ b/public/wsdl/IF_MDZ_EVCP_MATERIAL_MASTER_PART.wsdl @@ -0,0 +1,142 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<wsdl:definitions targetNamespace="http://60.101.108.100/api/IF_MDZ_EVCP_MATERIAL_MASTER_PART/"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
+ <wsdl:types>
+ <xsd:schema targetNamespace="http://60.101.108.100/api/IF_MDZ_EVCP_MATERIAL_MASTER_PART/"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:p0="http://60.101.108.100/api/IF_MDZ_EVCP_MATERIAL_MASTER_PART/">
+ <xsd:element name="IF_MDZ_EVCP_MATERIAL_MASTER_PARTReq" type="p0:IF_MDZ_EVCP_MATERIAL_MASTER_PARTReq" nillable="true"/>
+ <xsd:complexType name="IF_MDZ_EVCP_MATERIAL_MASTER_PARTReq">
+ <xsd:sequence>
+ <xsd:element name="MATL" type="p0:MATL" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="MATL">
+ <xsd:sequence>
+ <xsd:element name="MATNR" type="xsd:string"/>
+ <xsd:element name="MBRSH" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MTART" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="LVORM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MEINS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MATKL" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BISMT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SPART" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PRDHA" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MSTAE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MSTDE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BRGEW" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="GEWEI" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="NTGEW" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VOLUM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VOLEH" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="GROES" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="LAENG" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BREIT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="HOEHE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MEABM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MAGRV" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VHART" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZSMID" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZMRC" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZNAME" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZSPEC" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZDESC" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZMMTYP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZREGDT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZREGTM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZREGUS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZAPPDT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZAPPTM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZAPPUS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZLAMDT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZLAMTM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZLAMUS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZPRFLG" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZCERT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZPRCD_SCV_CTLP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZREP_DIA_UOM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZREP_DIA" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZREP_ITM_MATL" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZINSP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZPJT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZREPMAT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZPLMID" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZACT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZSTL" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DESC" type="p0:DESC" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="PLNT" type="p0:PLNT" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="UNIT" type="p0:UNIT" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="CLASSASGN" type="p0:CLASSASGN" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="CHARASGN" type="p0:CHARASGN" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="DESC">
+ <xsd:sequence>
+ <xsd:element name="MATNR" type="xsd:string"/>
+ <xsd:element name="SPRAS" type="xsd:string"/>
+ <xsd:element name="MAKTX" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="PLNT">
+ <xsd:sequence>
+ <xsd:element name="WERKS" type="xsd:string"/>
+ <xsd:element name="MATNR" type="xsd:string"/>
+ <xsd:element name="LVORM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MMSTA" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MMSTD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZMTARP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZREGDT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZREGTM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZREGUS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZLAMDT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZLAMTM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZLAMUS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZPRFLG" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="UNIT">
+ <xsd:sequence>
+ <xsd:element name="MEINH" type="xsd:string"/>
+ <xsd:element name="MATNR" type="xsd:string"/>
+ <xsd:element name="UMREZ" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="UMREN" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="LAENG" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BREIT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="HOEHE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MEABM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VOLUM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VOLEH" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BRGEW" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="GEWEI" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="CLASSASGN">
+ <xsd:sequence>
+ <xsd:element name="MATNR" type="xsd:string"/>
+ <xsd:element name="CLASS" type="xsd:string"/>
+ <xsd:element name="KLART" type="xsd:string"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="CHARASGN">
+ <xsd:sequence>
+ <xsd:element name="MATNR" type="xsd:string"/>
+ <xsd:element name="CLASS" type="xsd:string"/>
+ <xsd:element name="KLART" type="xsd:string"/>
+ <xsd:element name="ATNAM" type="xsd:string"/>
+ <xsd:element name="ATWRT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ATFLV" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ATAWE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ATFLB" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ATAW1" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ATBEZ" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ATWTB" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:schema>
+ </wsdl:types>
+ <wsdl:message name="process">
+ <wsdl:part name="IF_MDZ_EVCP_MATERIAL_MASTER_PARTReq" element="p10:IF_MDZ_EVCP_MATERIAL_MASTER_PARTReq"
+ xmlns:p10="http://60.101.108.100/api/IF_MDZ_EVCP_MATERIAL_MASTER_PART/"/>
+ </wsdl:message>
+ <wsdl:message name="processResponse"/>
+</wsdl:definitions>
\ No newline at end of file diff --git a/public/wsdl/IF_MDZ_EVCP_MATERIAL_MASTER_PART_RETURN.wsdl b/public/wsdl/IF_MDZ_EVCP_MATERIAL_MASTER_PART_RETURN.wsdl new file mode 100644 index 00000000..330f3474 --- /dev/null +++ b/public/wsdl/IF_MDZ_EVCP_MATERIAL_MASTER_PART_RETURN.wsdl @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<wsdl:definitions targetNamespace="http://60.101.108.100/api/IF_MDZ_EVCP_MATERIAL_MASTER_PART_RETURN/"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
+ <wsdl:types>
+ <xsd:schema targetNamespace="http://60.101.108.100/api/IF_MDZ_EVCP_MATERIAL_MASTER_PART_RETURN/"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:p0="http://60.101.108.100/api/IF_MDZ_EVCP_MATERIAL_MASTER_PART_RETURN/">
+ <xsd:element name="IF_MDZ_EVCP_MATERIAL_MASTER_PART_RETURNReq" type="p0:IF_MDZ_EVCP_MATERIAL_MASTER_PART_RETURNReq" nillable="true"/>
+ <xsd:complexType name="IF_MDZ_EVCP_MATERIAL_MASTER_PART_RETURNReq">
+ <xsd:sequence>
+ <xsd:element name="CMCTB_MAT_BSE" type="p0:CMCTB_MAT_BSE" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="CMCTB_MAT_BSE">
+ <xsd:sequence>
+ <xsd:element name="MAT_CD" type="xsd:string"/>
+ <xsd:element name="MAT_ID" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="IF_STAT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="IF_MSG" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:schema>
+ </wsdl:types>
+ <wsdl:message name="process">
+ <wsdl:part name="IF_MDZ_EVCP_MATERIAL_MASTER_PART_RETURNReq" element="p14:IF_MDZ_EVCP_MATERIAL_MASTER_PART_RETURNReq"
+ xmlns:p14="http://60.101.108.100/api/IF_MDZ_EVCP_MATERIAL_MASTER_PART_RETURN/"/>
+ </wsdl:message>
+ <wsdl:message name="processResponse"/>
+</wsdl:definitions>
\ No newline at end of file diff --git a/public/wsdl/IF_MDZ_EVCP_MODEL_MASTER.wsdl b/public/wsdl/IF_MDZ_EVCP_MODEL_MASTER.wsdl new file mode 100644 index 00000000..ca9ea25f --- /dev/null +++ b/public/wsdl/IF_MDZ_EVCP_MODEL_MASTER.wsdl @@ -0,0 +1,221 @@ +<?xml version="1.0" encoding="UTF-8"?> +<wsdl:definitions targetNamespace="http://60.101.108.100/api/IF_MDZ_EVCP_MODEL_MASTER/" + xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"> + <wsdl:types> + <xsd:schema targetNamespace="http://60.101.108.100/api/IF_MDZ_EVCP_MODEL_MASTER/" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:p0="http://60.101.108.100/api/IF_MDZ_EVCP_MODEL_MASTER/"> + <xsd:element name="IF_MDZ_EVCP_MODEL_MASTERReq" type="p0:IF_MDZ_EVCP_MODEL_MASTERReq" nillable="true"/> + <xsd:complexType name="IF_MDZ_EVCP_MODEL_MASTERReq"> + <xsd:sequence> + <xsd:element name="MATL" type="p0:MATL" minOccurs="0" maxOccurs="unbounded"/> + </xsd:sequence> + </xsd:complexType> + <xsd:complexType name="MATL"> + <xsd:sequence> + <!-- Material Number | CHAR 18--> + <xsd:element name="MATNR" type="xsd:string" minOccurs="0"/> + <!-- Industry Sector | CHAR 1 --> + <xsd:element name="MBRSH" type="xsd:string" minOccurs="0"/> + <!-- Material Type | CHAR 4 --> + <xsd:element name="MTART" type="xsd:string" minOccurs="0"/> + <!-- Deletion flag | CHAR 1 --> + <xsd:element name="LVORM" type="xsd:string" minOccurs="0"/> + <!-- Base Unit of Measure | UNIT 3 --> + <xsd:element name="MEINS" type="xsd:string" minOccurs="0"/> + <!-- Material Group | CHAR 9 --> + <xsd:element name="MATKL" type="xsd:string" minOccurs="0"/> + <!-- Old material number | CHAR 18 --> + <xsd:element name="BISMT" type="xsd:string" minOccurs="0"/> + <!-- Division | CHAR 2 --> + <xsd:element name="SPART" type="xsd:string" minOccurs="0"/> + <!-- Product hierachy | CHAR 18 --> + <xsd:element name="PRDHA" type="xsd:string" minOccurs="0"/> + <!-- Material Status | CHAR 2 --> + <xsd:element name="MSTAE" type="xsd:string" minOccurs="0"/> + <!-- Date from which the cross-plant material status is | CHAR 2 --> + <xsd:element name="MSTDE" type="xsd:string" minOccurs="0"/> + <!-- Gross weight | QUAN 13 --> + <xsd:element name="BRGEW" type="xsd:string" minOccurs="0"/> + <!-- Weight Unit | UNIT 3 --> + <xsd:element name="GEWEI" type="xsd:string" minOccurs="0"/> + <!-- Net Weight | QUAN 13 --> + <xsd:element name="NTGEW" type="xsd:string" minOccurs="0"/> + <!-- Volume | QUAN 13,3 --> + <xsd:element name="VOLUM" type="xsd:string" minOccurs="0"/> + <!-- Volume Unit | UNIT 3 --> + <xsd:element name="VOLEH" type="xsd:string" minOccurs="0"/> + <!-- Size/dimensions | CHAR 32 --> + <xsd:element name="GROES" type="xsd:string" minOccurs="0"/> + <!-- Length | QUAN 13,1 --> + <xsd:element name="LAENG" type="xsd:string" minOccurs="0"/> + <!-- Width | QUAN 13,1 --> + <xsd:element name="BREIT" type="xsd:string" minOccurs="0"/> + <!-- Height | QUAN 13,1 --> + <xsd:element name="HOEHE" type="xsd:string" minOccurs="0"/> + <!-- Unit of Dimension for Length/Width/Height | UNIT 3--> + <xsd:element name="MEABM" type="xsd:string" minOccurs="0"/> + <!-- Material Group: Packaging Materials | CHAR 4--> + <xsd:element name="MAGRV" type="xsd:string" minOccurs="0"/> + <!-- Packaging Material Type | CHAR 4 --> + <xsd:element name="VHART" type="xsd:string" minOccurs="0"/> + <!-- Material Name | CHAR 40 --> + <xsd:element name="ZZNAME" type="xsd:string" minOccurs="0"/> + <!-- Specification | CHAR 255 --> + <xsd:element name="ZZSPEC" type="xsd:string" minOccurs="0"/> + <!-- Description | CHAR 255 --> + <xsd:element name="ZZDESC" type="xsd:string" minOccurs="0"/> + <!-- Material Master Type | CHAR 1 --> + <xsd:element name="ZZMMTYP" type="xsd:string" minOccurs="0"/> + <!-- Registered Date DATS 8 --> + <xsd:element name="ZZREGDT" type="xsd:string" minOccurs="0"/> + <!-- Registered Time | TIMS 6 --> + <xsd:element name="ZZREGTM" type="xsd:string" minOccurs="0"/> + <!-- Registerd User | CHAR 12 --> + <xsd:element name="ZZREGUS" type="xsd:string" minOccurs="0"/> + <!-- Approval Date | DATS 8 --> + <xsd:element name="ZZAPPDT" type="xsd:string" minOccurs="0"/> + <!-- Approval Time | TIMS 6 --> + <xsd:element name="ZZAPPTM" type="xsd:string" minOccurs="0"/> + <!-- Approval User | CHAR 12 --> + <xsd:element name="ZZAPPUS" type="xsd:string" minOccurs="0"/> + <!-- Last Modified Date | DATS 8 --> + <xsd:element name="ZZLAMDT" type="xsd:string" minOccurs="0"/> + <!-- Last Modified Time | TIMS 6 --> + <xsd:element name="ZZLAMTM" type="xsd:string" minOccurs="0"/> + <!-- Last Modified User | CHAR 12 --> + <xsd:element name="ZZLAMUS" type="xsd:string" minOccurs="0"/> + <!-- CRUD Status | CHAR 1 --> + <xsd:element name="ZZPRFLG" type="xsd:string" minOccurs="0"/> + <!-- Document Type | CHAR 3 --> + <xsd:element name="ZZDOKAR" type="xsd:string" minOccurs="0"/> + <!-- Document Number | CHAR 25 --> + <xsd:element name="ZZDOKNR" type="xsd:string" minOccurs="0"/> + <!-- Document Part | CHAR 3 --> + <xsd:element name="ZZDOKTL" type="xsd:string" minOccurs="0"/> + <!-- Document Version | CHAR 2 --> + <xsd:element name="ZZDOKVR" type="xsd:string" minOccurs="0"/> + <!-- DESC [1:N] --> + <xsd:element name="DESC" type="p0:DESC" minOccurs="0" maxOccurs="unbounded"/> + <!-- PLNT [1:N] --> + <xsd:element name="PLNT" type="p0:PLNT" minOccurs="0" maxOccurs="unbounded"/> + <!-- UNIT [1:N] --> + <xsd:element name="UNIT" type="p0:UNIT" minOccurs="0" maxOccurs="unbounded"/> + <!-- CLASSASGN [1:N] --> + <xsd:element name="CLASSASGN" type="p0:CLASSASGN" minOccurs="0" maxOccurs="unbounded"/> + <!-- CHARASGN [1:N] --> + <xsd:element name="CHARASGN" type="p0:CHARASGN" minOccurs="0" maxOccurs="unbounded"/> + </xsd:sequence> + </xsd:complexType> + <xsd:complexType name="DESC"> + <xsd:sequence> + <!-- Material Number | CHAR 18 --> + <xsd:element name="MATNR" type="xsd:string" minOccurs="0"/> + <!-- Language CHAR 1 --> + <xsd:element name="SPRAS" type="xsd:string" minOccurs="0"/> + <!-- Material Description (Short Text) | CHAR 40 --> + <xsd:element name="MAKTX" type="xsd:string" minOccurs="0"/> + </xsd:sequence> + </xsd:complexType> + <xsd:complexType name="PLNT"> + <xsd:sequence> + <!-- Material Number | CHAR 18 --> + <xsd:element name="MATNR" type="xsd:string" minOccurs="0"/> + <!-- Plant | CHAR 4--> + <xsd:element name="WERKS" type="xsd:string" minOccurs="0"/> + <!-- Deletion Flag | CHAR 4--> + <xsd:element name="LVORM" type="xsd:string" minOccurs="0"/> + <!-- Plant-Specific Material Status | CHAR 2 --> + <xsd:element name="MMSTA" type="xsd:string" minOccurs="0"/> + <!-- Date from which the plant-specific material status | DATS 8 --> + <xsd:element name="MMSTD" type="xsd:string" minOccurs="0"/> + <!-- Plant Material Type | CHAR 4 --> + <xsd:element name="ZZMTARP" type="xsd:string" minOccurs="0"/> + <!-- Registered Dated | DATS 8 --> + <xsd:element name="ZZREGDT" type="xsd:string" minOccurs="0"/> + <!-- Registered Time | TIMS 6 --> + <xsd:element name="ZZREGTM" type="xsd:string" minOccurs="0"/> + <!-- Registered USER | CHAR 12 --> + <xsd:element name="ZZREGUS" type="xsd:string" minOccurs="0"/> + <!-- Last Modified Date | DATS 8 --> + <xsd:element name="ZZLAMDT" type="xsd:string" minOccurs="0"/> + <!-- Last Modified Time | TIMS 6 --> + <xsd:element name="ZZLAMTM" type="xsd:string" minOccurs="0"/> + <!-- Last Modified User | CHAR 12 --> + <xsd:element name="ZZLAMUS" type="xsd:string" minOccurs="0"/> + <!-- CRUD Status | CHAR 1 --> + <xsd:element name="ZZPRFLG" type="xsd:string" minOccurs="0"/> + </xsd:sequence> + </xsd:complexType> + <xsd:complexType name="UNIT"> + <xsd:sequence> + <!-- Material Number | CHAR 18 --> + <xsd:element name="MATNR" type="xsd:string" minOccurs="0"/> + <!-- Alternative Unit of Measure for Stockkeeping Unit | UNIT 3 --> + <xsd:element name="MEINH" type="xsd:string" minOccurs="0"/> + <!-- Numerator for Conversion to Base Units of Measure | DEC 5--> + <xsd:element name="UMREZ" type="xsd:string" minOccurs="0"/> + <!-- Denominator for conversion to base units of measure | DEC 5--> + <xsd:element name="UMREN" type="xsd:string" minOccurs="0"/> + <!-- Length | QUAN 13 --> + <xsd:element name="LAENG" type="xsd:string" minOccurs="0"/> + <!-- Width | QUAN 13 --> + <xsd:element name="BREIT" type="xsd:string" minOccurs="0"/> + <!-- Height | QUAN 13 --> + <xsd:element name="HOEHE" type="xsd:string" minOccurs="0"/> + <!-- Unit of Dimension for Length/Width/Height | unit 3 --> + <xsd:element name="MEABM" type="xsd:string" minOccurs="0"/> + <!-- Volume | QUAN 13 --> + <xsd:element name="VOLUM" type="xsd:string" minOccurs="0"/> + <!-- Volume unit | UNIT 3 --> + <xsd:element name="VOLEH" type="xsd:string" minOccurs="0"/> + <!-- Gross Weight | QUAN 13 --> + <xsd:element name="BRGEW" type="xsd:string" minOccurs="0"/> + <!-- Weight Unit | UNIT 3--> + <xsd:element name="GEWEI" type="xsd:string" minOccurs="0"/> + </xsd:sequence> + </xsd:complexType> + <xsd:complexType name="CLASSASGN"> + <xsd:sequence> + <!-- Material Number | CHAR 18 --> + <xsd:element name="MATNR" type="xsd:string" minOccurs="0"/> + <!-- Class number | CHAR 18 --> + <xsd:element name="CLASS" type="xsd:string" minOccurs="0"/> + <!-- Class Type | CHAR 3 --> + <xsd:element name="KLART" type="xsd:string" minOccurs="0"/> + </xsd:sequence> + </xsd:complexType> + <xsd:complexType name="CHARASGN"> + <xsd:sequence> + <!-- Material Number | CHAR 18 --> + <xsd:element name="MATNR" type="xsd:string" minOccurs="0"/> + <!-- Class number | CHAR 18 --> + <xsd:element name="CLASS" type="xsd:string" minOccurs="0"/> + <!-- Class Type | CHAR 3 --> + <xsd:element name="KLART" type="xsd:string" minOccurs="0"/> + <!-- Characteristic Name | CHAR 30 --> + <xsd:element name="ATNAM" type="xsd:string" minOccurs="0"/> + <!-- Characteristic Value | CHAR 30 --> + <xsd:element name="ATWRT" type="xsd:string" minOccurs="0"/> + <!-- Internal floating point from | FLTP 16 --> + <xsd:element name="ATFLV" type="xsd:string" minOccurs="0"/> + <!-- Unit of Measurement | UNIT 3--> + <xsd:element name="ATAWE" type="xsd:string" minOccurs="0"/> + <!-- Internal floating point value to | FLTP 16 --> + <xsd:element name="ATFLB" type="xsd:string" minOccurs="0"/> + <!-- Unit of Measurement | UNIT 3 --> + <xsd:element name="ATAW1" type="xsd:string" minOccurs="0"/> + <!-- 특성내역 | VARC 30 --> + <xsd:element name="ATBEZ" type="xsd:string" minOccurs="0"/> + <!-- 특성값내역 | VARC 30 --> + <xsd:element name="ATWTB" type="xsd:string" minOccurs="0"/> + </xsd:sequence> + </xsd:complexType> + </xsd:schema> + </wsdl:types> + <wsdl:message name="process"> + <wsdl:part name="IF_MDZ_EVCP_MODEL_MASTERReq" element="p8:IF_MDZ_EVCP_MODEL_MASTERReq" + xmlns:p8="http://60.101.108.100/api/IF_MDZ_EVCP_MODEL_MASTER/"/> + </wsdl:message> + <wsdl:message name="processResponse"/> +</wsdl:definitions>
\ No newline at end of file diff --git a/public/wsdl/IF_MDZ_EVCP_ORGANIZATION_MASTER.wsdl b/public/wsdl/IF_MDZ_EVCP_ORGANIZATION_MASTER.wsdl new file mode 100644 index 00000000..7d671835 --- /dev/null +++ b/public/wsdl/IF_MDZ_EVCP_ORGANIZATION_MASTER.wsdl @@ -0,0 +1,239 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<wsdl:definitions targetNamespace="http://60.101.108.100/api/IF_MDZ_EVCP_ORGANIZATION_MASTER/"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
+ <wsdl:types>
+ <xsd:schema targetNamespace="http://60.101.108.100/api/IF_MDZ_EVCP_ORGANIZATION_MASTER/"
+ xmlns:p0="http://60.101.108.100/api/IF_MDZ_EVCP_ORGANIZATION_MASTER/"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+ <xsd:element name="IF_MDZ_EVCP_ORGANIZATION_MASTER" type="p0:IF_MDZ_EVCP_ORGANIZATION_MASTERReq" nillable="true"/>
+ <xsd:complexType name="IF_MDZ_EVCP_ORGANIZATION_MASTERReq">
+ <xsd:sequence>
+ <xsd:element name="items1" type="p0:HRHMTB_CCTR" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
+ <xsd:element name="items2" type="p0:HRHMTB_PCTR" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
+ <xsd:element name="items3" type="p0:HRHMTB_ZBUKRS" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
+ <xsd:element name="items4" type="p0:HRHMTB_ZEKGRP" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
+ <xsd:element name="items5" type="p0:HRHMTB_ZEKORG" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
+ <xsd:element name="items6" type="p0:HRHMTB_ZGSBER" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
+ <xsd:element name="items7" type="p0:HRHMTB_ZLGORT" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
+ <xsd:element name="items8" type="p0:HRHMTB_ZSPART" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
+ <xsd:element name="items9" type="p0:HRHMTB_ZVKBUR" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
+ <xsd:element name="items10" type="p0:HRHMTB_ZVKGRP" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
+ <xsd:element name="items11" type="p0:HRHMTB_ZVKORG" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
+ <xsd:element name="items12" type="p0:HRHMTB_ZVSTEL" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
+ <xsd:element name="items13" type="p0:HRHMTB_ZVTWEG" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
+ <xsd:element name="items14" type="p0:HRHMTB_ZWERKS" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="HRHMTB_CCTR">
+ <xsd:sequence>
+ <xsd:element name="CCTR" type="xsd:string"/>
+ <xsd:element name="DATBI" type="xsd:string"/>
+ <xsd:element name="KOKRS" type="xsd:string"/>
+ <xsd:element name="ABTEI" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BKZER" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BKZKP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BKZKS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BKZOB" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BUKRS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DATAB" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="KHINR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="FUNC_AREA" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="GSBER" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="KOSAR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MGEFL" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PKZER" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PKZKP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PKZKS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PRCTR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TXJCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VERAK" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VERAK_USE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VMETH" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="WAERS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZBRANCH" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZDELETE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZFCTRI" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZSECCODE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZSEGMENT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ANRED" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="NAME1" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="NAME2" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="NAME3" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="NAME4" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ORT01" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ORT02" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="STRAS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PFACH" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PSTLZ" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PSTL2" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="REGIO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SPRAS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TELBX" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TELF1" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TELF2" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TELFX" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TELTX" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TELX1" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DATLT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DRNAM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="LAND1" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TEXT" type="p0:TEXT" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="TEXT">
+ <xsd:sequence>
+ <xsd:element name="LANGU" type="xsd:string"/>
+ <xsd:element name="KTEXT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="LTEXT" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="HRHMTB_PCTR">
+ <xsd:sequence>
+ <xsd:element name="PCTR" type="xsd:string"/>
+ <xsd:element name="KOKRS" type="xsd:string"/>
+ <xsd:element name="DATBI" type="xsd:string"/>
+ <xsd:element name="ABTEI" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="LOCK_IND" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VERAK" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VERAK_USE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SEGMENT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TXJCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DATAB" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="KHINR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZDELETE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TEXT" type="p0:TEXT" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="HRHMTB_ZBUKRS">
+ <xsd:sequence>
+ <xsd:element name="ZBUKRS" type="xsd:string"/>
+ <xsd:element name="ZZBUTXT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZCITY" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZCOUNTRY" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CURR_BUKR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZLANGU" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZDELETE" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="HRHMTB_ZEKGRP">
+ <xsd:sequence>
+ <xsd:element name="ZEKGRP" type="xsd:string"/>
+ <xsd:element name="ZZEKNAM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZEKTEL" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZTELFX" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZTEL_NUM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZEMPNUM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZSINGLE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZDELETE" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="HRHMTB_ZEKORG">
+ <xsd:sequence>
+ <xsd:element name="ZEKORG" type="xsd:string"/>
+ <xsd:element name="ZZEKOTX" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZDELETE" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="HRHMTB_ZGSBER">
+ <xsd:sequence>
+ <xsd:element name="ZGSBER" type="xsd:string"/>
+ <xsd:element name="ZZDELETE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TEXT" type="p0:TEXT2" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="TEXT2">
+ <xsd:sequence>
+ <xsd:element name="LANGU" type="xsd:string"/>
+ <xsd:element name="TXTMI" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="HRHMTB_ZLGORT">
+ <xsd:sequence>
+ <xsd:element name="ZLGORT" type="xsd:string"/>
+ <xsd:element name="ZWERKS" type="xsd:string"/>
+ <xsd:element name="ZZLGOBE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZDELETE" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="HRHMTB_ZSPART">
+ <xsd:sequence>
+ <xsd:element name="ZSPART" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZDELETE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TEXT" type="p0:TEXT3" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="TEXT3">
+ <xsd:sequence>
+ <xsd:element name="LANGU" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TXTMI" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="HRHMTB_ZVKBUR">
+ <xsd:sequence>
+ <xsd:element name="ZVKBUR" type="xsd:string"/>
+ <xsd:element name="CTRY_SOFF" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="LANG_SOFF" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZDELETE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TEXT" type="p0:TEXT3" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="HRHMTB_ZVKGRP">
+ <xsd:sequence>
+ <xsd:element name="ZVKGRP" type="xsd:string"/>
+ <xsd:element name="ZZDELETE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TEXT" type="p0:TEXT3" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="HRHMTB_ZVKORG">
+ <xsd:sequence>
+ <xsd:element name="ZVKORG" type="xsd:string"/>
+ <xsd:element name="ZZWAERS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZVKOKL" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZKUNNR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZBOAVO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZDELETE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TEXT" type="p0:TEXT3" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="HRHMTB_ZVSTEL">
+ <xsd:sequence>
+ <xsd:element name="ZVSTEL" type="xsd:string"/>
+ <xsd:element name="AZON_VSTE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ALAN_VSTE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZFABKL" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZLAZBS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZRIZBS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZLAZZT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZRIZZT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CTRY_SHPT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="LANG_SHPT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZDELETE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TEXT" type="p0:TEXT3" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="HRHMTB_ZVTWEG">
+ <xsd:sequence>
+ <xsd:element name="ZVTWEG" type="xsd:string"/>
+ <xsd:element name="ZZDELETE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TEXT" type="p0:TEXT3" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="HRHMTB_ZWERKS">
+ <xsd:sequence>
+ <xsd:element name="ZWERKS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZNAME1" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZNAME2" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZFABKL" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CTRY_PLNT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="LANG_PLNT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZZDELETE" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:schema>
+ </wsdl:types>
+ <wsdl:message name="process">
+ <wsdl:part name="IF_MDZ_EVCP_ORGANIZATION_MASTER" element="p6:IF_MDZ_EVCP_ORGANIZATION_MASTER"
+ xmlns:p6="http://60.101.108.100/api/IF_MDZ_EVCP_ORGANIZATION_MASTER/"/>
+ </wsdl:message>
+ <wsdl:message name="processResponse"/>
+</wsdl:definitions>
\ No newline at end of file diff --git a/public/wsdl/IF_MDZ_EVCP_PROJECT_MASTER.wsdl b/public/wsdl/IF_MDZ_EVCP_PROJECT_MASTER.wsdl new file mode 100644 index 00000000..16e16680 --- /dev/null +++ b/public/wsdl/IF_MDZ_EVCP_PROJECT_MASTER.wsdl @@ -0,0 +1,109 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<wsdl:definitions targetNamespace="http://60.101.108.100/api/IF_MDZ_EVCP_PROJECT_MASTER/"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
+ <wsdl:types>
+ <xsd:schema targetNamespace="http://60.101.108.100/api/IF_MDZ_EVCP_PROJECT_MASTER/"
+ xmlns:p0="http://60.101.108.100/api/IF_MDZ_EVCP_PROJECT_MASTER/"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+ <xsd:element name="IF_MDZ_EVCP_PROJECT_MASTERReq" type="p0:IF_MDZ_EVCP_PROJECT_MASTERReq" nillable="true"/>
+ <xsd:complexType name="IF_MDZ_EVCP_PROJECT_MASTERReq">
+ <xsd:sequence>
+ <xsd:element name="CMCTB_PROJ_MAST" type="p0:CMCTB_PROJ_MAST" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="CMCTB_PROJ_MAST">
+ <xsd:sequence>
+ <xsd:element name="PROJ_NO" type="xsd:string"/>
+ <xsd:element name="PROJ_DSC" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PROJ_GB" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PROJ_DTL_TP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PROJ_PROF" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PROJ_WBS_TP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="INQY_NO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="INQY_SEQ" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="NTTP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CHN_PROJ_TP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="RLTD_PROJ" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DIGT_PDT_GRP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="WP_PROJ_TP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TOT_CNRT_CNT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PROJ_ETC_TP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="IF_STAT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SRC_SYS_ID" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PRGS_STAT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DEL_YN" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="OWN_1" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="OWN_NM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="OWN_AB" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DL_CSTM_CD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PDT_LVL_4" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CNRT_DT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="STDT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CNRT_DL_DT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="AS_GRNT_PRD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="RL_DL_DT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SA_DT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SERS_NO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="REF_NO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="GOV" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CLS_1" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DL_BF_PROJ_NM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="IMO_NO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DIST_PATH" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SALE_ORG_CD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SALE_GRP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BIZLOC_CD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MNG_ACOT_DMN" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CO_CD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BIZ_DMN" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PLNT_CD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PRCTR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CNRT_CNTN_YN" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CNRT_RESV_YN" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PROJ_PRGS_YN" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SKND" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SHTYPE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SYS_ACOT_CLSD_DT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SHTYPE_UOM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PROJ_SCP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MSHIP_NO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="LOA" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MN_ENGN_TP_CD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SPD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="GT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BP_DL_DT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SHTYPE_GRP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DOCK_CD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PROJ_CRTE_REQ_EMPNO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PROJ_CRTE_REQ_DT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SERS_YN" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="IO_GB" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CSTM_PO_NO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="GENT_CNT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ORDR_GRNT_PRD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ORDR_GRNT_FN_DT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="FIN_GRNT_FN_DT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DSN_CHRGR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TYPE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PRO_PROJ_NO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BIZCLS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CLS_2" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SHTYPE_CD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PROJ_DL_PLN_DT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PROJ_DL_RT_DT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TOT_AREA" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="EXMPT_AREA" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="EXMPT_RAT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="QM_CLS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="NEW_MC_YN" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="GRNT_STDT" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:schema>
+ </wsdl:types>
+ <wsdl:message name="process">
+ <wsdl:part name="IF_MDZ_EVCP_PROJECT_MASTERReq" element="p13:IF_MDZ_EVCP_PROJECT_MASTERReq"
+ xmlns:p13="http://60.101.108.100/api/IF_MDZ_EVCP_PROJECT_MASTER/"/>
+ </wsdl:message>
+ <wsdl:message name="processResponse"/>
+</wsdl:definitions>
\ No newline at end of file diff --git a/public/wsdl/IF_MDZ_EVCP_VENDOR_MASTER.wsdl b/public/wsdl/IF_MDZ_EVCP_VENDOR_MASTER.wsdl new file mode 100644 index 00000000..99c681f0 --- /dev/null +++ b/public/wsdl/IF_MDZ_EVCP_VENDOR_MASTER.wsdl @@ -0,0 +1,245 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<wsdl:definitions targetNamespace="http://60.101.108.100/api/IF_MDZ_EVCP_VENDOR_MASTER/"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
+ <wsdl:types>
+ <xsd:schema targetNamespace="http://60.101.108.100/api/IF_MDZ_EVCP_VENDOR_MASTER/"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns="http://60.101.108.100/api/IF_MDZ_EVCP_VENDOR_MASTER/">
+ <xsd:element name="IF_MDZ_EVCP_VENDOR_MASTERReq" type="IF_MDZ_EVCP_VENDOR_MASTERReq" nillable="true"/>
+ <xsd:complexType name="ADDRESS">
+ <xsd:sequence>
+ <xsd:element name="ADDRNO" type="xsd:string"/>
+ <xsd:element name="AD_POSTAL" type="AD_POSTAL" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="AD_TEL" type="AD_TEL" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="AD_FAX" type="AD_FAX" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="AD_URL" type="AD_URL" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="AD_EMAIL" type="AD_EMAIL" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="AD_EMAIL">
+ <xsd:sequence>
+ <xsd:element name="REPR_SER" type="xsd:string"/>
+ <xsd:element name="VLD_ST_DT" type="xsd:string"/>
+ <xsd:element name="EMAIL_ADR" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="AD_FAX">
+ <xsd:sequence>
+ <xsd:element name="REPR_SER" type="xsd:string"/>
+ <xsd:element name="VLD_ST_DT" type="xsd:string"/>
+ <xsd:element name="NTN_CD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="FAXNO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="FAX_ETS_NO" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="AD_POSTAL">
+ <xsd:sequence>
+ <xsd:element name="INTL_ADR_VER_ID" type="xsd:string"/>
+ <xsd:element name="CITY_ZIP_NO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="POBX_ZIP_NO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ADR_1" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ADR_2" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="REGN_CD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TTL" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VNDRNM_ABRV_1" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VNDRNM_ABRV_2" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VNDRNM_1" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VNDRNM_2" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VNDRNM_3" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VNDRNM_4" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="LANG_KEY" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ETC_ADR_1" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ETC_ADR_2" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="NTN_CD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="POBX" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TRANS_ZONE" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TAX_JRDT_ZONE_CD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ADR_TMZ" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="AD_TEL">
+ <xsd:sequence>
+ <xsd:element name="REPR_SER" type="xsd:string"/>
+ <xsd:element name="VLD_ST_DT" type="xsd:string"/>
+ <xsd:element name="NTN_CD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TELNO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ETX_NO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="HP_ORDR" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="AD_URL">
+ <xsd:sequence>
+ <xsd:element name="REPR_SER" type="xsd:string"/>
+ <xsd:element name="VLD_ST_DT" type="xsd:string"/>
+ <xsd:element name="URL" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="BP_COMPNY">
+ <xsd:sequence>
+ <xsd:element name="CO_CD" type="xsd:string"/>
+ <xsd:element name="CTL_ACNT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SRT_KEY" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PLN_GRP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BF_VNDRCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SPLY_COND" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="OVLAP_INVC_ORDR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SPLY_MTHD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SPLY_HOLD_ORDR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PST_HOLD_ORDR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DEL_ORDR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SRCE_TX_NTN_CD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MIN_ORDR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SPRT_SPLY_ORDR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TRD_BANK_SHRT_KEY" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="IATA_BIC_GB" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="REP_TP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="LOGST_VNDR_TP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CSTM_VNDR_CLR_ORDR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SRCE_TX_CD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VNDR_ACNT_NO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VNDR_CHRGR_NM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ACOT_CHRGR_TELNO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="AUTH_GRP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="FIN_IR_CALC_DT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="FIN_IR_ACT_DT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ACOT_CHRGR_FAXNO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MK_CHRGR_EMAIL" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MEMO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="MOFFC_ACNT_NO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BP_WHTAX" type="BP_WHTAX" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="BP_HEADER">
+ <xsd:sequence>
+ <xsd:element name="VNDRCD" type="xsd:string"/>
+ <xsd:element name="ADDRESS" type="ADDRESS" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="BP_TAXNUM" type="BP_TAXNUM" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="BP_VENGEN" type="BP_VENGEN" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="BP_PORG">
+ <xsd:sequence>
+ <xsd:element name="PUR_ORG_CD" type="xsd:string"/>
+ <xsd:element name="PUR_ORD_CUR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SPLY_COND" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DL_COND_1" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DL_COND_2" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CALC_SHM_GRP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="GR_BSE_INVC_VR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ORD_CNFM_REQ_ORDR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="AT_PUR_ORD_ORDR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PUR_HOLD_ORDR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DEL_ORDR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SALE_CHRGR_NM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VNDR_TELNO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CNFM_CTL_KEY" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PUR_HOLD_DT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PUR_HOLD_CAUS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ZVPFN" type="ZVPFN" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="BP_TAXNUM">
+ <xsd:sequence>
+ <xsd:element name="TX_NO_CTG" type="xsd:string"/>
+ <xsd:element name="BIZ_PTNR_TX_NO" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="BP_VENGEN">
+ <xsd:sequence>
+ <xsd:element name="VNDRNO" type="xsd:string"/>
+ <xsd:element name="ACNT_GRP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CSTM_CD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PST_HOLD_ORDR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PUR_HOLD_ORDR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="HOLD_CAUS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DEL_ORDR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CO_ID" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TTL" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="REPR_NM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BIZTP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BIZCON" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="REPR_RESNO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BIZR_NO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CO_REG_NO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="TX_CD_4" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VAT_REG_NO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DEL_HOLD_ORDR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="GBL_TOP_CD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="GBL_TOP_NM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DMST_TOP_CD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DMST_TOP_NM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BIZ_UOM_CD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BIZ_UOM_NM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DNS_NO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="GIRO_VNDR_ORDR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="FIR_NM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="VNDRNM_1" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="REP_TEL_NO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="REG_DT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="REG_TM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="REGR_ID" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="AGR_DT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="AGR_TM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="AGR_R_ID" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CHG_DT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CHG_TM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CHGR_ID" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PTNT_VNDRCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ADR_1" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ADR_2" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="ACNT_GRP_TP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="QLT_CHRGR_NM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="QLT_CHRGR_TELNO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="QLT_CHRGR_EMAIL" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SB_WKA_SEQ" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="OVLAP_CAUS_CD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DOC_TP" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DOC_NO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PTN_DOC" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DOC_VER" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="INB_FLAG" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="PUR_HOLD_DT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="INTL_LCTN_CHK_NUM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SRCETX_RP_SEX_KEY" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="CO_VLM" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BP_COMPNY" type="BP_COMPNY" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="BP_PORG" type="BP_PORG" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="BP_WHTAX">
+ <xsd:sequence>
+ <xsd:element name="SRCE_TX_TP" type="xsd:string"/>
+ <xsd:element name="SRCE_TX_REL_ORDR" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SRCE_TX_IDENT_NO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="SRCE_TX_NO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DCHAG_CERT_NO" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DCHAG_RAT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DCHAG_ST_DT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DCHAG_ED_DT" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="DCHAG_CAUS" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="RECIP_TP" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="IF_MDZ_EVCP_VENDOR_MASTERReq">
+ <xsd:sequence>
+ <xsd:element name="BP_HEADER" type="BP_HEADER" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="ZVPFN">
+ <xsd:sequence>
+ <xsd:element name="VNDR_SUB_NO" type="xsd:string"/>
+ <xsd:element name="PLNT_NO" type="xsd:string"/>
+ <xsd:element name="PTNR_SKL" type="xsd:string"/>
+ <xsd:element name="PTNR_CNT" type="xsd:string"/>
+ <xsd:element name="ETC_REF_VNDRCD" type="xsd:string" minOccurs="0"/>
+ <xsd:element name="BSE_PTNR_ORDR" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:schema>
+ </wsdl:types>
+ <wsdl:message name="process">
+ <wsdl:part name="IF_MDZ_EVCP_VENDOR_MASTERReq" element="p11:IF_MDZ_EVCP_VENDOR_MASTERReq"
+ xmlns:p11="http://60.101.108.100/api/IF_MDZ_EVCP_VENDOR_MASTER/"/>
+ </wsdl:message>
+ <wsdl:message name="processResponse"/>
+</wsdl:definitions>
\ No newline at end of file diff --git a/public/wsdl/P2MD3007_AO.wsdl b/public/wsdl/P2MD3007_AO.wsdl new file mode 100644 index 00000000..7d2fb695 --- /dev/null +++ b/public/wsdl/P2MD3007_AO.wsdl @@ -0,0 +1 @@ +<?xml version="1.0" encoding="UTF-8"?><wsdl:definitions name="P2MD3007_AO" targetNamespace="http://shi.samsung.co.kr/P2_MD/MDZ" xmlns:p1="http://shi.samsung.co.kr/P2_MD/MDZ" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"><wsdl:documentation/><wsp:UsingPolicy wsdl:required="true"/><wsp:Policy wsu:Id="OP_P2MD3007_AO"/><wsdl:types><xsd:schema targetNamespace="http://shi.samsung.co.kr/P2_MD/MDZ" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://shi.samsung.co.kr/P2_MD/MDZ"><xsd:element name="MT_P2MD3007_S" type="P2MD3007_S"/><xsd:complexType name="P2MD3007_S"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/VersionID">8dd6f9a22c9611f0c16f0000007e145f</xsd:appinfo></xsd:annotation><xsd:sequence><xsd:element name="SUPPLIER_MASTER" minOccurs="0" maxOccurs="unbounded"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d4812ba2c9611f0c61232a76e607ae9</xsd:appinfo></xsd:annotation><xsd:complexType><xsd:sequence><xsd:element name="BP_HEADER" type="xsd:string"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d4761f62c9611f0945a32a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="ZZSRMCD" type="xsd:string"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d4761f72c9611f0a18232a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="SORT1" type="xsd:string"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d4761f82c9611f0ccc232a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="NAME1" type="xsd:string"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d4761f92c9611f0b09b32a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="NAME2" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d4761fa2c9611f0c88832a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="NAME3" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d4786cc2c9611f0a7a632a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="NAME4" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d4786cd2c9611f0c53232a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="KTOKK" type="xsd:string"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d4786ce2c9611f0c4bd32a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="ZTYPE" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d4786cf2c9611f0cfbb32a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="VBUND" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d4786d02c9611f082ca32a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="J_1KFREPRE" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d4786d12c9611f0809e32a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="J_1KFTBUS" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d4786d22c9611f0a0fa32a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="J_1KFTIND" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d4786d32c9611f0817332a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="VQMGRP" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d4786d42c9611f09f1532a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="VTELNO" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d4786d52c9611f0a37c32a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="VEMAIL" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d47ad122c9611f0c6dc32a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="ZZCNAME1" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d47ad132c9611f0c9e332a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="ZZCNAME2" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d47ad142c9611f0847332a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="ZZTELF1_C" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d47ad152c9611f0864f32a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="MASTERFLAG" type="xsd:string"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d47ad162c9611f0806532a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="IBND_TYPE" type="xsd:string"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d47ad172c9611f0b65332a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="ZZVNDTYP" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d47ad182c9611f0baef32a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="ZZREQID" type="xsd:string"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d47ad192c9611f0824832a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="ZZIND01" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d47ad1a2c9611f099b732a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="ADDRNO" type="xsd:string"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d47ad1b2c9611f0acd832a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="NATION" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d47ad1c2c9611f0bda932a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="COUNTRY" type="xsd:string"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d47d80e2c9611f08e5632a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="LANGU" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d47d80f2c9611f0c57932a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="POST_CODE1" type="xsd:string"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d47d8102c9611f0c5fc32a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="CITY1" type="xsd:string"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d47d8112c9611f0af0332a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="CITY2" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d47d8122c9611f0823032a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="REGION" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d47d8132c9611f08e2332a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="STREET" type="xsd:string"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d47d8142c9611f0cd1632a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="CONSNUMBER" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d47d8152c9611f0cc6732a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="TEL_NUMBER" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d47d8162c9611f0c29732a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="TEL_EXTENS" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d4807492c9611f0a9d032a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="R3_USER" type="xsd:string"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d48074a2c9611f08aca32a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="FAX_NUMBER" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d48074b2c9611f0b93d32a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="FAX_EXTENS" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d48074c2c9611f0ae3132a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="URI_ADDR" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d48074d2c9611f0beed32a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="SMTP_ADDR" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d48074e2c9611f0a81432a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="TAXTYPE" type="xsd:string"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d48074f2c9611f0b99d32a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="TAXNUM" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d4807502c9611f0a02a32a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="BP_TX_TYP" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d4807512c9611f0c2c432a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="STCD3" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d4807522c9611f0ae1c32a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element><xsd:element name="ZZIND03" type="xsd:string" minOccurs="0"><xsd:annotation><xsd:appinfo source="http://sap.com/xi/TextID">8d4812b92c9611f08f8332a76e607ae9</xsd:appinfo></xsd:annotation></xsd:element></xsd:sequence></xsd:complexType></xsd:element></xsd:sequence></xsd:complexType></xsd:schema></wsdl:types><wsdl:message name="MT_P2MD3007_S"><wsdl:documentation/><wsdl:part name="MT_P2MD3007_S" element="p1:MT_P2MD3007_S"/></wsdl:message><wsdl:portType name="P2MD3007_AO"><wsdl:documentation/><wsdl:operation name="P2MD3007_AO"><wsdl:documentation/><wsp:Policy><wsp:PolicyReference URI="#OP_P2MD3007_AO"/></wsp:Policy><wsdl:input message="p1:MT_P2MD3007_S"/></wsdl:operation></wsdl:portType><wsdl:binding name="P2MD3007_AOBinding" type="p1:P2MD3007_AO"><soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/><wsdl:operation name="P2MD3007_AO"><soap:operation soapAction="http://sap.com/xi/WebService/soap1.1" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/><wsdl:input><soap:body use="literal" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/></wsdl:input></wsdl:operation></wsdl:binding><wsdl:service name="P2MD3007_AOService"><wsdl:port name="P2MD3007_AOPort" binding="p1:P2MD3007_AOBinding"><soap:address location="http://shii8dvddb01.hec.serp.shi.samsung.net:50000/sap/xi/engine?type=entry&version=3.0&Sender.Service=P2038_D&Interface=http%3A%2F%2Fshi.samsung.co.kr%2FP2_MD%2FMDZ%5EP2MD3007_AO&QualityOfService=ExactlyOnce" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/></wsdl:port></wsdl:service></wsdl:definitions>
\ No newline at end of file |
