KR100574886B1 - Method of arranging standard record for edi - Google Patents

Method of arranging standard record for edi Download PDF

Info

Publication number
KR100574886B1
KR100574886B1 KR1019990068007A KR19990068007A KR100574886B1 KR 100574886 B1 KR100574886 B1 KR 100574886B1 KR 1019990068007 A KR1019990068007 A KR 1019990068007A KR 19990068007 A KR19990068007 A KR 19990068007A KR 100574886 B1 KR100574886 B1 KR 100574886B1
Authority
KR
South Korea
Prior art keywords
data
electronic document
standard
standard data
record area
Prior art date
Application number
KR1019990068007A
Other languages
Korean (ko)
Other versions
KR20010060010A (en
Inventor
염용섭
황미화
Original Assignee
주식회사 케이티
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 케이티 filed Critical 주식회사 케이티
Priority to KR1019990068007A priority Critical patent/KR100574886B1/en
Publication of KR20010060010A publication Critical patent/KR20010060010A/en
Application granted granted Critical
Publication of KR100574886B1 publication Critical patent/KR100574886B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/151Transformation
    • G06F40/157Transformation using dictionaries or tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0864Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using pseudo-associative means, e.g. set-associative or hashing

Abstract

1. 청구범위에 기재된 발명이 속한 기술분야1. TECHNICAL FIELD OF THE INVENTION

본 발명은 전자문서변환을 위한 표준자료 배치 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것임.The present invention relates to a method for arranging standard data for converting electronic documents and a computer-readable recording medium having recorded thereon a program for realizing the method.

2. 발명이 해결하려고 하는 기술적 과제2. The technical problem to be solved by the invention

본 발명은, EDI 표준 데이터들을 해싱(hashing) 알고리즘에 따라 분산 배치하는 전자문서변환을 위한 표준자료 배치 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하고자 함.An object of the present invention is to provide a method of distributing standard data for distributing EDI standard data according to a hashing algorithm, and a computer-readable recording medium recording a program for realizing the method.

3. 발명의 해결방법의 요지 3. Summary of Solution to Invention

본 발명은, 전자문서변환을 위한 표준 자료에 대해 프라이머리 키를 대상으로 한 해싱결과 값에 따라 삽입 레코드 영역을 결정하고 상기 레코드 영역에 이미 저장된 자료가 있는지를 확인하는 제 1 단계; 상기 제 1 단계의 확인 결과, 저장된 자료가 있으면 오버플로 영역에 상기 표준 자료를 삽입하고 상기 레코드 영역의 자료로부터 연결고리를 가지도록 하는 제 2 단계; 및 상기 제 1 단계의 확인 결과, 저장된 자료가 없으면 상기 레코드 영역에 상기 표준 자료를 삽입하는 제 3 단계를 포함함.The present invention includes a first step of determining an insertion record area according to a hashing result value for a primary key with respect to standard data for electronic document conversion, and checking whether there is already stored data in the record area; A second step of inserting the standard data into the overflow area and having a link from the data in the record area if there is stored data as a result of the checking in the first step; And a third step of inserting the standard data into the record area if there is no stored data as a result of the checking of the first step.

4. 발명의 중요한 용도4. Important uses of the invention

본 발명은 전자문서변환 등에 이용됨.The present invention is used for electronic document conversion and the like.

전자문서변환, EDI, 키값, 해싱, 표준자료, 자료 배치Electronic Document Conversion, EDI, Key Value, Hashing, Standard Data, Data Placement

Description

전자문서변환을 위한 표준자료 배치 방법{METHOD OF ARRANGING STANDARD RECORD FOR EDI} Standard data placement method for electronic document conversion {METHOD OF ARRANGING STANDARD RECORD FOR EDI}             

도 1 은 일반적인 컴퓨터의 구성예시도.1 is an exemplary configuration diagram of a general computer.

도 2 는 일반적인 전자문서의 루프 구조에 대한 설명예시도.2 is an exemplary view illustrating a loop structure of a general electronic document.

도 3 은 일반적인 전자문서의 일예시도.3 is an exemplary view of a general electronic document.

도 4 는 본 발명에 이용되는 테이블 레코드 구조의 일예시도.4 is an exemplary view of a table record structure used in the present invention.

도 5 는 본 발명에 이용되는 해싱함수 연산에 대한 설명예시도.5 is an illustrative example of hashing function calculation used in the present invention.

도 6 은 본 발명에 따른 전자문서변환을 위한 표준자료 배치 방법에 쓰이는 테이블 구조의 일실시예 설명도.6 is a diagram illustrating an embodiment of a table structure used in a method of arranging standard data for converting an electronic document according to the present invention.

도 7 은 본 발명에 따른 테이블에의 접근 과정에 대한 일실시예 흐름도.7 is a flow diagram of one embodiment of a process for accessing a table in accordance with the present invention.

*도면의 주요 부분에 대한 부호의 설명* Explanation of symbols for the main parts of the drawings

101 : 중앙 처리 장치 102 : 제어장치101: central processing unit 102: controller

103 : 연산장치 104 : 주기억장치103: arithmetic unit 104: main memory

105 : 보조기억장치 106 : 입력장치105: auxiliary memory device 106: input device

107 : 출력 장치107: output device

본 발명은 전자문서변환을 위한 표준자료 배치 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것으로, 특히 해싱테이블을 이용하여 기존의 문서변환용 데이터베이스(DB : DataBase)가 갖고 있는 자료증가에 따른 접근시간의 증가로 인한 문서변환기의 성능저하를 없앤 전자문서변환을 위한 표준자료 배치 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것이다. The present invention relates to a method of arranging standard data for electronic document conversion and a computer-readable recording medium recording a program for realizing the method. In particular, an existing database for document conversion using a hashing table (DB: DataBase) The present invention relates to a method of arranging a standard data for converting an electronic document and to a computer-readable recording medium recording a program for realizing the method.

도 1 은 일반적인 컴퓨터의 구성예시도이다.1 is an exemplary configuration diagram of a general computer.

전자문서변환을 위한 표준자료 배치는 컴퓨터에서 수행되는데, 컴퓨터는 중앙 처리 장치(101), 제어 장치(102), 연산 장치(103), 주 기억 장치(104), 보조 기억 장치(105), 입력 장치(106) 및 출력 장치(107)를 구비한다.Standard data placement for electronic document conversion is performed on a computer, which includes a central processing unit 101, a control unit 102, a computing unit 103, a main storage unit 104, an auxiliary storage unit 105, and an input. Device 106 and output device 107.

그 동작을 살펴보면, 연산 장치(103)와 제어 장치(102)가 컴퓨터 처리의 중심이 되므로 이들을 합하여 중앙 처리 장치(101)라 하며, 부수되는 입력 장치(106), 보조 기억 장치(105) 및 출력 장치(107) 등을 주변 장치라 한다. 주 기억 장치는 중앙 처리 장치(101)와 주변 장치사이에서 자료나 정보 이동을 가능하게 하는 고속 기억 장치이다.Looking at the operation, since the arithmetic unit 103 and the control unit 102 becomes the center of computer processing, these are collectively referred to as the central processing unit 101, and the accompanying input device 106, auxiliary storage device 105, and output The device 107 and the like are called peripheral devices. The main memory device is a high speed memory device that enables data or information movement between the central processing unit 101 and a peripheral device.

중앙 처리 장치(101)는 본 발명의 전체적인 제어를 수행하는 장치로서, 기억 장치(주 기억 장치 또는 보조 기억 장치)에 저장된 프로그램의 명령을 한줄씩 꺼내 어 해독하고 실행을 위한 제어를 수행한다.The central processing unit 101 is a device for performing the overall control of the present invention. The central processing unit 101 retrieves, deciphers, and deciphers commands of a program stored in a storage device (main storage device or auxiliary storage device), and performs control for execution.

기억 장치(주 기억 장치, 보고 기억 장치)는 본 발명의 프로그램 내용이나 본 발명의 입,출력 자료를 저장하고, 처리가 끝난후 출력 결과를 저장하고 있는 장치이다.The memory device (main memory device, report memory device) is a device that stores the program contents of the present invention and the input / output data of the present invention, and stores the output result after the processing is completed.

입력 장치(106)는 본 발명을 구동시키기 위한 사용자 입력이나, 수행 도중의 사용자 입력을 받아들이는 장치이다.The input device 106 is a device that receives a user input for driving the present invention or a user input during execution.

출력 장치(107)는 본 발명이 수행 도중 출력하는 결과들을 사용자에게 출력시키는 매체 역할을 하는 장치이다.The output device 107 is a device that serves as a medium for outputting the results output by the present invention to the user.

다음에서는 본 발명의 이해를 돕기 위하여 전자문서교환(EDI : Electronic Data Interchange)의 정의, 도입 효과와 EDI를 구성하는 EDI 문서표준, EDI 통신표준, EDI 하드웨어에 대해 설명한다.The following describes the definition, introduction effect, and EDI document standard, EDI communication standard, and EDI hardware of Electronic Data Interchange (EDI) to facilitate understanding of the present invention.

EDI란 상업용 거래문서 및 행정문서 등을 거래 당사자가 합의한 표준에 따라 컴퓨터로 처리 가능하도록 구조화된 전자문서로 변환하여 컴퓨터 통신망을 통하여 상호교환하여 업무를 처리하는 새로운 정보 전달방식을 말한다. EDI is a new information transfer method that converts commercial transaction documents and administrative documents into electronic documents structured to be processed by computers in accordance with the standards agreed upon by the trading parties, and exchanges them through computer communication networks.

EDI표준이란 EDI 방식으로 교환되는 대상인 전자문서의 내용과 구조(문서표준) 및 통신방법(통신표준) 등에 관한 규칙을 말하는 것으로서, 국제적으로 합의된 "UN/EDIFACT" 문서표준과 국제전기통신연합-통신부(ITU-T : Telecommunication part of International Telecommunication Union) X.435 통신표준이 있다. The EDI standard refers to the rules on the contents and structure (document standard) and communication method (communication standard) of electronic documents that are exchanged by the EDI method, and is an internationally agreed "UN / EDIFACT" document standard and the International Telecommunication Union. Telecommunication part of International Telecommunication Union (ITU-T) There is X.435 communication standard.

EDI 전자문서변환시스템(Tanslator)은 응용시스템이 생성한 사설 데이터화일(DF : Data File)을 매핑과 변환과정을 거쳐 "UN/EDIFACT" 표준 전자문 서 구조로 이루어진 EDI 인터체인지화일(IC : InterChange file)을 생성하거나 그 역의 동작으로 사설 데이터화일을 생성하는 변환 시스템이다. 일반적으로 EDI 문서변환시스템은 "UN/EDIFACT"의 제반 구문규칙을 준수하여 변환을 수행하며, 크게 나누어 송신변환시스템, 수신변환시스템, 매핑시스템 그리고 표준데이터관리 시스템으로 이루어져 있다.The EDI Electronic Document Conversion System (Tanslator) maps and converts a private data file (DF: Data File) created by an application system. ), Or vice versa. In general, the EDI document conversion system performs the conversion in accordance with the general syntax rules of "UN / EDIFACT". The EDI document conversion system is composed of a transmission conversion system, a reception conversion system, a mapping system, and a standard data management system.

현재 도로, 항만, 철도등의 사회 간접자본과 마찬가지로 정보통신은 전 산업분야에 막대한 영향을 끼치고 있으며 기업 및 국가경쟁력을 결정짖는 중요한 척도가 되고 있다. 그 중에서도 종이없는 거래라는 새로운 비지니스 방식을 제공하는 전자문서교환(EDI : Electronic Data Interchange)은 전세계 기업들의 경쟁력 확보에 필수적인 수단으로 등장하고 있다. 종래의 팩스 및 전자우편은 송수자간에 상호 합의되지 않은 비정형화 데이터를 사람이 읽을 수 있는 형태로 표현하여 전자적으로 전송하지만 표준화된 형태가 아니므로 수신자가 수신 데이터를 이용하기 위해서는 수신 자료를 재가공하거나 컴퓨터에 재입력해야 한다. 이는 사람대사람(man-to-man) 통신타입을 가정하고 있기 때문이다. 즉, 사람의 개입이 필수적일 수 밖에 없다.At present, like social indirect capital such as roads, ports and railways, ICT has an enormous impact on all industries and is an important measure of corporate and national competitiveness. Among them, Electronic Data Interchange (EDI), which provides a new business method of paperless transactions, has emerged as an essential means of securing competitiveness for companies around the world. Conventional faxes and e-mails transmit unformatted data that is not mutually agreed upon by the sender in human-readable form and transmit it electronically, but it is not a standardized form. You must retype it on your computer. This is because it assumes a man-to-man communication type. In other words, human intervention is indispensable.

그러나, 컴퓨터대컴퓨터(computer-to-computer) 통신타입을 가정하고 있는 EDI 시스템에서는 상기 팩스 및 전자우편과는 다르게 컴퓨터 응용프로그램에 의해 생성(Generation)된 데이터들은 EDI 표준전자문서 형태로 전자문서변환(Encoding)되어 수신 시스템에 전자적으로 전달되고, 이는 다시 수신 컴퓨터의 전자문서 변환시스템에 의해 "UN/EDIFACT" 전자문서 구문규칙에 따라 해석(Interpretation) 즉, 역변환(Decoding)되고 응용프로그램이 처리할 수 있는 형태로 가공해 주므로써 기업과 기업간에 거래문서 교환을 사림의 개입이 없이 컴퓨터에 의해 이루어질 수 있게해 준다.However, in an EDI system that assumes a computer-to-computer communication type, data generated by a computer application program, unlike fax and e-mail, is converted into an EDI standard electronic document. Is encoded and delivered electronically to the receiving system, which is then interpreted by the receiving computer's electronic document conversion system according to the "UN / EDIFACT" electronic document syntax rules, that is, inversely decoded and processed by the application. By processing it in a form that allows it to be exchanged, business documents can be exchanged between computers by computers without any intervention.

이렇게 각 기업들의 정보 시스템을 연결해주는 EDI 시스템은 컴퓨터 허드웨어, 소프트웨어, 지정학적 위치, 시간대, 통신 설비등의 제한을 받지 않고 EDI 문서표준 및 통신표준에 따른 문서를 생성하고 해석할 수 있는 소프트웨어만 있으면 누구나 전세계 어느곳에나, 언제나, 어느 거래처에게나 종이없는 전자 문서를 전송할 수 있다. 즉, EDI의 범위는 매우 넓어서 수직적 정보 흐름 뿐만 아니라 업종간, 산업간의 수평적 정보 흐름, 나아가 국가간 국제 정보 흐름을 가능케한다.The EDI system that connects each company's information system is limited to computer hardware, software, geopolitical location, time zone, and communication facilities, and only software that can generate and interpret documents according to EDI document standards and communication standards. Anyone can send paperless electronic documents to any customer, anywhere, anytime, anywhere in the world. In other words, the scope of EDI is very wide, enabling not only vertical information flow but also horizontal information flow between industries and industries, and also international information flow between countries.

따라서, 기존의 전화, 우편, 팩스등 전통적인 문서 처리 방식으로는 데이터가 반복되어 입력되므로 업무 처리 시간이 지연되고 재입력에 의한 데이터의 정확도가 낮아지고 많은 시간과 인력이 소모되며, 업무 진행 및 처리가 비효율적이며 복잡하나 EDI 시스템을 이용하므로써 재고 비용, 운송 비용, 데이터 오류 감소등의 비용 절감과, 업무 능률 향상, 고객 서비스 향상, 거래처와의 관계 증진, 국제 경쟁력 향상의 효과를 얻을 수 있다.Therefore, the data is repeatedly input in the conventional document processing methods such as telephone, mail, and fax, so that the processing time is delayed, the accuracy of data by re-input is decreased, and the time and manpower are consumed. Although inefficient and complex, the use of EDI systems can reduce costs such as inventory costs, transportation costs, and data errors, improve work efficiency, improve customer service, improve relationships with customers, and improve international competitiveness.

상기와 같은 EDI 시스템이 실현되기 위해서는 송수신자간에 교환되는 전자문서에 대한 표준이 있어야 한다. 각 기업에서 사용되는 문서의 양식은 각각 다르기 때문에 문서의 호환성을 유지시키기 위해서는 교환할 전자문서의 내용 및 구조에 관한 제반 표준이 필요하다.In order to realize such an EDI system, there should be a standard for electronic documents exchanged between a transmitter and a receiver. Since the format of documents used by each company is different, in order to maintain the compatibility of documents, various standards regarding the content and structure of electronic documents to be exchanged are required.

EDI시스템에 적용되는 표준에는 크게 문서표준과 통신표준이 있다. 문서표준 은 유엔 유럽경제위원회(UN/ECE)를 중심으로 표준이 제정, 공표되었으며, 통신표준은 ITU-T(구 CCITT)와 "ISO"를 중심으로 표준이 제정 공표되었다. 현재 유엔에서는 국제 문서표준으로 "UN/EDIFACT"를 발표하였고(1987), ITU-T에서는 국제통신표준으로 X.435권고안을 제정 발표하였다.There are two major standards for EDI systems: document standards and communication standards. The document standards were established and published around the UN European Economic Commission (UN / ECE), and the telecommunication standards were published around ITU-T (formerly CCITT) and "ISO". Currently, the United Nations has published "UN / EDIFACT" as an international document standard (1987), and the ITU-T has issued X.435 Recommendation as an international telecommunication standard.

"UN/EDIFACT(UN/EDI for Adiministration,Commercial,Transportation)"란 행정,상역,운송 데이터의 전자적 교환을 위한 국제연합규칙이다. 이는 구조화된 데이터의 전자적 교환을 위해 국제적으로 합의된 표준,디렉토리,메시지설계 가이드라인으로 구성되어 있다."UN / EDIFACT (UN / EDI for Adiministration, Commercial, Transportation)" is a United Nations rule for the electronic exchange of administrative, commercial, and transport data. It consists of internationally agreed standards, directories and message design guidelines for the electronic exchange of structured data.

이 규칙은 "UN"의 기구내에서 권장되고 있는데, "UN"의 유럽 경제위원회(UN/ECE)가 유엔거래데이터 교환목록(UNTDID : United Nations Trade Data Interchange Directory)로 승인, 공표하였으며, 합의된 절차에 따라 유지, 개선된다.This rule is recommended within the Organization of the United Nations, which has been approved and published by the United Nations Economic Commission for Europe (UN / ECE) on the United Nations Trade Data Interchange Directory (UNTDID). It is maintained and improved according to the procedure.

"UN"의 유럽경제위원회(UN/ECE)는 "UN" 경제사회위원회에 설치된 5개의 지역위원회 중의 하나이다. 유럽경제위는 그 명칭에도 불구하고 유럽은 물론 북미지역도 포함하고 있다.The UN Economic Commission for Europe (UN / ECE) is one of five regional committees established in the Economic and Social Commission for the United Nations. The European Economic Commission, despite its name, includes not only Europe but also North America.

"UN/ECE"는 34개의 회원국가외에도, "UN/ECE"회의의 각 주제별로 관심이있는 "UN"의 어떤 회원국도 참석할 수 있다. "UN/ECE"의 제4실무작업반(Working Part 4:이하 UN/ECE WP.4)은 "국제무역 절차 간소화 업무" 를 담당하고 있으며, 무역개발위원회의 산하기관이다."UN / ECE" may attend any Member State of "UN" interested in each subject of the "UN / ECE" Conference, in addition to the 34 Member States. Working Part 4: UN / ECE WP.4 of the UN / ECE is responsible for "simplifying the international trade process" and is affiliated with the Trade Development Council.

제4실무작업반은 데이터요소와 자동 데이터교환 담당전문가(GE.1)와 제절차 와 문서화 담당전문가(GE.2)들로 구성되어있다. The fourth working group is composed of data elements, experts in automatic data exchange (GE.1) and experts in procedures and documentation (GE.2).

UN/ECE의 WP.4와 WP.4 소속의 데이터요소와 자동데이터교환 담당 전문가 모임은 각 지역별("CMEA"국가,"EEC" 및 "EFTA"국가,카나다,미국,호주,뉴질랜드)로 개발작업을 조정할 "UN/EDIFACT" 리포터(Rapporteurs)를 선임하였다.UN / ECE's WP.4 and WP.4 data elements and automatic data exchange expert groups are developed in each region ("CMEA" country, "EEC" and "EFTA" country, Canada, USA, Australia and New Zealand). "UN / EDIFACT" Rapporteurs were appointed to coordinate the work.

"UN/EDIFACT"의 내용은 다음과 같은 요소들로 구성되어있다.The content of "UN / EDIFACT" consists of the following elements:

o 구문규칙 (Syntax Rules,ISO 9735)Syntax Rules (ISO 9735)

o 메시지 설계지침 (Message Design Guidelines)o Message Design Guidelines

o 구문 구현지침 (Syntax Implementation Guidelines)Syntax Implementation Guidelines

o 데이터요소 사전 (Data Element Directory : EDED)o Data Element Directory (EDED)

o 복합요소 사전 (Composite Element Directory : EDCD)o Composite Element Directory (EDCD)

o 세그먼트 사전 (Segment Directory : EDSD)Segment Directory (EDSD)

o 코드 리스트 (Code List)o Code List

o 표준 메시지 사전 (UN Standard Message(UNSM)Directory : EDMD)o UN Standard Message (UNSM) Directory: EDMD

o 원격전송에 의한 거래 데이터 교환절차의 통일규칙(UNCID)Uniform Rules for the Transaction Data Exchange Procedure by Remote Transmission

o 관련 해설자료Related Commentary

"UN/EDIFACT"에서 사용될 수 있는 문자집합은 다음과 같이 2개의 집합으로 분류된다. Character sets that can be used in "UN / EDIFACT" are classified into two sets as follows.

"UN/EDIFACT"에서 사용되는 문자 집합은 A와 B가 있다. 문자 집합 A를 사용하는 메시지를 A 레벨, 문자 집합 B를 사용하는 메시지를 B 레벨의 메시지라 한다. 단 문자 집합 B를 사용할 때는 양자간에 합의가 있어야 한다. The character sets used in "UN / EDIFACT" are A and B. A message using the character set A is called an A level, and a message using the character set B is called a B level. However, when using character set B, there must be agreement between them.

o 문자 집합 Ao character set A

영문자(대문자) A 부터 ZAlphabetic (uppercase) A to Z

숫자 0 부터 9Numbers 0 to 9

한글 각 음절Hangul syllables

기타 문자 . , - ( ) / =Other characters. ,-() / =

예약 문자 ' + : ?Reserved character '+:?

텔렉스전송에는 사용할수 없는 문자 ! " % & * ; < >Characters not available for telex transmission! "% &*; <>

o 문자 집합 B(텔렉스 전송에는 사용할 수 없음)o Character set B (not available for telex transfers)

영문자(대문자) A 부터 ZAlphabetic (uppercase) A to Z

영문자(소문자) a 부터 zLowercase letters a through z

숫자 0 부터 9Numbers 0 to 9

한글 각 음절Hangul syllables

기타 문자 . , - ( ) / =Other characters. ,-() / =

' + : ?                                 '+:?

, ! " % & * ; < >                   ,! "% &*; <>

예약 문자 IS4 IS3 IS1(인쇄되지 않는 문자)Reserved Characters IS4 IS3 IS1 (nonprintable characters)

"UN/EDIFACT" 표준 전자문서를 필요 없는 부분을 전송하지 않는 유연 양식(flexible format)으로 나타내기 위해서는 데이터 엘리먼트나 세그먼트의 시작과 끝을 표시할 수 있어야 한다.In order to represent a "UN / EDIFACT" standard electronic document in a flexible format that does not transmit unnecessary parts, it must be able to mark the beginning and end of a data element or segment.

"UN/EDIFACT"에서 구분자는 이러한 용도로 사용하며 문자 집합에 따라 서로 다른 문자를 사용한다. 구분자의 이름과 사용하는 문자는 다음과 같다.In "UN / EDIFACT", the delimiter serves this purpose and uses different characters depending on the character set. The name of the separator and the characters used are as follows.

l 세그먼트 종결 부호 ( ·:윗쉼표) : 세그먼트의 끝을 나타낸다. 이 뒤에 나오는 태그는 바로 뒤의 세그먼트 이름을 나타낸다.l segment terminator (·: comma) indicates the end of the segment. The tag following it represents the segment name immediately following it.

l 세그먼트 태그와 데이터 엘리먼트 분리 부호( + ) : 세그먼트 태그와 그 뒤의 데이터를 분리할 때와 세그먼트 안에서 독립 데이터 엘리먼트들을 서로 분리할 때 사용한다.Segment tag and data element separator (+): Used to separate the segment tag and the data after it, and to separate independent data elements within a segment.

l 구성 데이터 엘리먼트 분리 부호( : ) : 복합 데이터 엘리먼트 안에서 구성데이터 엘리먼트를 서로 분리할 때 사용한다. l Configuration data element separator (:): Used to separate configuration data elements from each other within a composite data element.

1 해제 부호( ? ) : 문자 집합 A를 사용할 때 구분자로 쓰이는 문자를 일반 데이터로 쓰고 싶을 때 그 문자 앞에 사용한다.1 Release sign (?): When character set A is used, the character used as delimiter is used before the character when you want to use it as general data.

"UN/EDIFACT"에서 데이터 엘리먼트(Data Element)는 마치 언어에서 단어와 같은 역할을 하는 것으로 크게 단순데이터 엘리먼트(Simple Data Element)와 복합데이터 엘리먼트(Composite Data Element)로 나눌 수 있다.In "UN / EDIFACT", a data element acts like a word in a language and can be roughly divided into a simple data element and a composite data element.

단순 데이터 엘리먼트(Simple Data Element)는 자신의 데이터 엘리먼트 만으로 의미가 충분히 정해지므로 부연자 또는 한정자가 필요없는 데이터 엘리먼트를 말한다.A simple data element refers to a data element that does not need a paraphrase or qualifier because its meaning is fully defined by its own data element.

예) 3207 국가 코드 an3 id Ex) 3207 country code an3 id

설명: ISO 3166에 지정된 국가명 또는 기타Description: Country or other name specified in ISO 3166

지리적인 이름에 대한 식별자        Identifier for geographic name

그러나, 자신의 데이터 엘리먼트만으로는 의미가 완전히 정해지지 않기 때문에 부연 설명을 위한 한정사(Qualifier)를 필요로 하는 엘리먼트를 한정 데이터 엘리먼트(Qualified Data Element)라 한다. However, since the meaning is not completely determined only by its own data elements, an element that requires a qualifier for explanation is referred to as a qualified data element.

예) 6063 수량 n..15, nEx) 6063 Quantity n..15, n

설명 : 수량의 수치값        Description: Numerical value of quantity

위의 예에서 보면 수량의 수치값이 무엇인지 알 수가 없으므로 부연 설명이 필요하다. 예를 들면 수량의 수치값이 '10'일 때 한정사에서 '114'(승객 수)라든지 '115'(승무원 수)라고 부연 설명을 해주어야 수량의 의미가 확실해질 것이다. 이처럼 한정 데이터 엘리먼트의 속성을 상술해 주는 데이터 엘리먼트가 한정사이다.In the above example, it is not possible to know what the numerical value of the quantity is. For example, when the numerical value of the quantity is '10', the definition of '114' (number of passengers) or '115' (number of crews) in the qualifier will make it clear. As described above, the data element that specifies the attribute of the limited data element is a qualifier.

예) 6063 수량 한정사 an..3Ex) 6063 Quantity Qualifier an..3

설명: 수량에 특정 의미를 부여하는 코드        Description: A code that gives a specific meaning to quantities

복합 데이터 엘리먼트는 개념적으로 관련되어 있는 단일 데이터 엘리먼트들의 집합으로 이루어진 데이터 엘리먼트이다. 이때 복합 데이터 엘리먼트안의 단일 데이터 엘리먼트를 구성 데이터 엘리먼트라고 한다. "UN/EDIFACT"에서 복합 데이터 엘리먼트는 반드시 대문자 'S' 또는 'C' 로 시작된다. A composite data element is a data element that consists of a set of single data elements that are conceptually related. In this case, a single data element in the composite data element is called a configuration data element. In "UN / EDIFACT" a composite data element must start with an uppercase letter 'S' or 'C'.

아래의 예는 세개의 구성 데이터 엘리먼트들로 이루어진 복합 데이터 엘리먼트이다. 이 복합 데이터 엘리먼트를 사용할 때는 필수적으로 선언된 '6060 수량' 은 반드시 사용하여야 하나 선택적으로 선언된 '6063 수량 한정사'나 '6411 측정 단위 한정사'의 경우는 사용하지 않아도 된다. The following example is a composite data element consisting of three configuration data elements. When using this composite data element, the mandatory declared '6060 quantity' must be used but not optionally the '6063 quantity qualifier' or the '6411 unit of measure qualifier'.

예) C186 수량 세부 사항Ex) C186 quantity details

내용: 6063 수량 한정사 C an..3 id        Content: 6063 Quantity Qualifier C an..3 id

6060 수량 M n..15 n                6060 Quantity M n..15 n

6411 측정 단위 한정사 C an..3 id                6411 Unit of measure Qualifier C an..3 id

복합 데이터 엘리먼트 중에서 S로 시작하는 S001 부터 S010 까지의 복합 데이터 엘리먼트를 서비스 데이터 엘리먼트라고 한다. 이들은 전송에 관련된 내용을 나타내는 데이터 엘리먼트들이다.Among the composite data elements, composite data elements starting with S from S001 to S010 are called service data elements. These are data elements representing content related to the transmission.

"UN/EDIFACT"의 "ISO 7372/UNTDED"에서 기술되어있는 데이터 엘리먼트의 자료표현은 다음과 같다.The data representation of the data elements described in "ISO 7372 / UNTDED" in "UN / EDIFACT" is as follows:

a 영문자a letter

n 숫자n number

an 영문자/숫자 혼용an alphanumeric mixture

a3 3개의 영문자(고정길이)a3 3 alphabetic characters (fixed length)

n3 3개의 숫자(고정길이)n3 3 numbers (fixed length)

an3 3개의 영문자/숫자 혼용(고정길이)an3 3 alphanumeric characters (fixed length)

a..3 3개의 영문자 까지(가변길이)a..3 Up to 3 alphabetic characters (variable length)

n..3 최대 3개의 숫자(가변길이)n..3 Up to 3 numbers (variable length)

an..3 최대 3개의 영문자/숫자 혼용(가변길이)an..3 Up to 3 alphanumeric characters (variable length)

M 필수적인 엘리먼트 속성M Required Element Attributes

C 선택적인 엘리먼트 속성C optional element attributes

"UN/EDIFACT"에서 세그먼트(Segment)는 서로 관련된 데이터 엘리먼트(단순, 복합 데이터 엘리먼트)들이 모여 이룬 의미있는 집합을 세그먼트라 한다. 각 세그먼트는 유일한 3글자의 태그로 구분되어야 하며 그 구조가 사전에 정의되어야 한다. In "UN / EDIFACT", a segment is a segmented set of meaningful data elements (simple, complex data elements). Each segment must be separated by a unique three letter tag and its structure must be defined in advance.

하나의 세그먼트는 다음의 4가지 요소로 구성된다.One segment consists of four elements:

o 세그먼트 태그 (Tag) : 세그먼트 형태 식별자o segment tag: segment type identifier

o 데이터 요소 구분자 (Separators)o Data element separators

o 단순 또는 복합 데이터 요소 (Simple or Composite Data Element)o simple or composite data element

o 세그먼트 종결자 (Terminator)o segment terminator

예) CUX+BUF:IN'Ex) CUX + BUF: IN '

CUX : "통화" 세그먼트의 태그CUX: Tag of "Call" segment

+ : 구분자+: Separator

BEF : 데이터요소 "통화코드"의 값BEF: value of the data element "currency code"

: : 복합 데이터요소 내의 데이터요소 구분자:: Data element delimiters within complex data elements

IN : 송장(Invoice)메시지 상의 금액에 적용되는 통화임을 나타IN: Indicates the currency applied to the amount on the invoice message.

내는 통화코드의 한정사 Qualifier of the currency code

' : 세그먼트 종결자': Segment terminator

세그먼트는 크게 데이터 세그먼트(Data Segment)와 서비스 세그먼트(Service Segment)로 나눌 수 있다.Segments can be roughly divided into data segments and service segments.

데이터 세그먼트는 사용자가 실제로 전송하고자하는 자료를 포함하는 세그먼 트로서 반드시 영문자 "UN"으로 시작되지 않는 세그먼트 태그를 갖는다.A data segment is a segment that contains the data that the user actually wants to send and has a segment tag that does not necessarily begin with the letter "UN".

예)Yes)

CUX 통화 세그먼트 CUX call segment

설명 : 문서에서 사용되는 통화를 기술하며 환율과 관계된 내용을 기술Description: Describes the currency used in the document and describes the exchange rate.

C180 참조 통화 MC180 Reference Currency M

6345 통화 코드 M a3 id6345 currency code M a3 id

6343 통화 한정사 C an..3 id6343 Currency Qualifier C an..3 id

C182 목표 통화 CC182 target currency C

6345 통화 코드 M a3 id6345 currency code M a3 id

6343 통화 한정사 C an..3 id 6343 Currency Qualifier C an..3 id

5402 환율 C n..12 n5402 exchange rate C n..12 n

6341 외환 시장 코드 C an3 id6341 Forex Market Code C an3 id

C034 시차 CC034 Parallax C

2005 날짜/시간 한정사 C an..3 id2005 Date / Time Qualifier C an..3 id

2001 날짜 코드 C n6 n2001 date code C n6 n

2002 시간 C n4 n2002 time C n4 n

2461 시간대 코드 C an3 an2461 time zone code C an3 an

서비스 세그먼트는 "UN"으로 시작하는 세그먼트 태그를 갖는 세그먼트들로서 "UN/EDIFACT" 메시지 구성에 반드시 사용되어야 하는 필수 세그먼트(UNA,UNS 세그 먼트는 경우에 따라 사용하지 않을 수 있음)들이다. 데이터 세그먼트와는 달리 제어(Control)용으로 사용되는 서비스 세그먼트는 인터체인지와 메시지의 시작과 끝을 구분하거나, 선택적으로 사용될 수 있는 기능그룹의 시작과 끝 등을 구분하기 위해 사용된다.Service segments are segments with segment tags that begin with "UN" and are required segments (UNA, UNS segments may not be used in some cases) that must be used to construct a "UN / EDIFACT" message. Unlike data segments, service segments used for control are used to distinguish between the start and end of interchanges and messages, or to identify the start and end of functional groups that can be optionally used.

"UN/EDIFACT"에서 사용되는 서비스 세그먼트들은 아래와 같다.The service segments used in "UN / EDIFACT" are as follows.

UNB 인터체인지 헤더 : 인터체인지 시작 세그먼트UNB Interchange Header: Interchange Start Segment

UNZ 인터체인지 트레일러 : 인터체인지 종료 세그먼트UNZ Interchange Trailer: Interchange End Segments

UNG 기능적 그룹 헤더 : 기능적 그룹의 시작 세그먼트UNG functional group header: the starting segment of a functional group

UNE 기능적 그룹 트레일러 : 기능적 그룹의 종료 세그먼트UNE functional group trailer: end segment of functional group

UNH 메시지 헤더 : 메시지의 시작 세그먼트UNH message header: start segment of the message

UNT 메시지 트레일러 : 메시지의 종료 세그먼트UNT message trailer: end segment of a message

UNS 부문 통제 : 메시지의 표제,내역,요약 부문 분리UNS sector control: separate message headings, history, and summary sections

UNA 서비스 스트링 통지 : 인터체인지에 사용된 구분자 세그먼트UNA Service String Notification: Delimiter Segment Used for Interchange

예) UNB 인터체인지 헤더 Ex) UNB interchange header

기능 : 인터체인지의 시작을 표시하고 전송에 필요하거나, 문서변환(Translation)에 필요한 제어 데이터를 포함.Function: Marks the beginning of the interchange and contains the control data necessary for the transfer or translation.

S001 구문 식별자 MS001 Syntax Identifier M

0001 구문 식별자 M a40001 Syntax identifier M a4

0002 구문 개정 번호 M n10002 Syntax revision number M n1

S002 인터체인지 송신자 MS002 Interchange Sender M

0004 송신자 식별 M an..350004 Sender Identification M an..35

0007 식별 코드 한정사 C an..4 0007 Identification Code Qualifier C an..4

0008 반송 주소 C an..140008 Return Address C an..14

S003 인터체인지 수신자 MS003 Interchange Recipient M

...                ...

S004 작성 날짜 및 시간 MS004 Creation Date and Time M

...                ...

S005 수신자 참조, 암호 CS005 Recipient Reference, Password C

...                ...

0026 적용 참조 C an..14 0026 Application Reference C an..14

0029 처리 우선순위 코드 C a10029 Processing Priority Code C a1

0031 수령 통지 요구 C n10031 Receipt notification request C n1

0032 통신 협정 식별자 C an..350032 Communication Agreement Identifier C an..35

0035 시험 표시자 C n10035 test indicator C n1

"UN/EDIFACT" 표준 전자문서는 다음과 같이 크게 3 부분으로 구분 지울 수 있다.The "UN / EDIFACT" standard electronic document can be divided into three parts as follows.

각 데이터 세그먼트는 메시지를 구성하고 있는 일련의 세그먼트들내의 특정한 자리에 위치하고 있고, 메시지내의 다음 세부문 안에 나타날 수 있다.Each data segment is located at a specific position in the series of segments that make up the message, and can appear in the next detail statement in the message.

표제부문(Heading Section) : Heading Section:

이 부문에서 나타나는 세그먼트는 메시지 전체와 관련되어 있다.The segments that appear in this section relate to the entire message.

내역부문(Detail Section) : Detail Section:

이 부문에서 나타나는 세그먼트는 사용자가 상대방에게 전달하고자하는 상세한 정보에만 관련이 있으며 표제부문에 서 정의된 어떤 유사한 지침에 우선한다.Segments appearing in this section relate only to the detailed information the user wishes to convey to the other party and take precedence over any similar guidelines defined in the heading section.

요약부문(Summary Section) : Summary Section:

요약부문에서는 메시지(예,송장,주문서 등)상의 총액,라인 수 등과같은 총계 또는 통제 정보용 세그먼트들만 나타난다.In the summary section, only segments for total or control information appear, such as the total amount in the message (eg invoice, order, etc.), the number of lines, etc.

"UN/EDIFACT"에서 메시지 루프는 동일한 세그먼트 형태가 메시지내의 2개 이상의 부문, 예를들어 표제부문과 내역부문에 중복되어 나타날 수 있으며, 일부 세그먼트들은 메시지 내의 특정위치에서 정해진 회수만큼 반복 사용될 수 있다. 상태(status) 즉 필수적이냐 선택적이냐하는 것과 세그먼트 형태의 최대 반복 회수는 메시지 구조내에 표시된다.In "UN / EDIFACT" a message loop may appear duplicated in the same segment type in two or more sections in the message, for example, the heading section and the description section, and some segments may be used repeatedly for a specified number of times at a particular location in the message. Status, i.e. required or optional, and the maximum number of iterations in the form of segments are indicated in the message structure.

한 메시지내에서 기능적으로 관련된 세그먼트들의 특정 그룹들이 반복될 수 있으며 불필요시 생략될 수 있다. 이 세그먼트 그룹들을 "루프(loop)"라고 한다. 특정 위치의 루프의 최대 반복회수는 메시지 구조내에 표시된다.Certain groups of functionally related segments in a message may be repeated and omitted if unnecessary. These segment groups are called "loops". The maximum number of iterations of a loop at a particular location is indicated in the message structure.

도 2 는 일반적인 전자문서의 루프 구조에 대한 설명예시도이다.2 is an exemplary view illustrating a loop structure of a general electronic document.

도 2 를 통해 전자문서의 루프 구조를 보여주고 있으며, 루프 구조의 의미는 다음과 같다.2 illustrates a loop structure of an electronic document, and the meaning of the loop structure is as follows.

세그먼트 그룹 1 : 세그먼트 AAA와 세그먼트 그룹 2, 3을 포함하는 구조로 이루어져 있으며, 루프상태(status)가 선택적(conditional)이므로 생략될 수 도 있다. 그러나, 사용된다면 최대 10번까지 반복될 수 있다.Segment group 1: It is composed of a structure including segment AAA and segment groups 2 and 3, and may be omitted because the loop status is conditional. However, it can be repeated up to 10 times if used.

세그먼트 그룹 2 : 세그먼트 BBB와 세그먼트 CCC로 이루어졌으며, 세그먼트 그룹 1 이 반복될 때마다 세그먼트 그룹 2 는 루프상태가 필수적(mandatory)이므로 생략될 수 없고, 반드시 최소 2번은 반복되어 사용되어야 한다. 세그먼트 그룹 2 가 반복될 때에는 BBB는 반드시 사용되여야 하며, CCC는 생략될 수도 있고 사용된다면 매 반복시 마다 2 번까지 반복될 수 있다.Segment Group 2: Segment BBB and Segment CCC. Each time segment group 1 is repeated, segment group 2 cannot be omitted because the loop state is mandatory and must be used at least twice. When segment group 2 is repeated, the BBB must be used, and the CCC can be omitted or, if used, up to two times in each iteration.

세그먼트 그룹 3 : 세그먼트 DDD와 세그먼트 EEE로 이루어졌으며 세그먼트 그룹 1 이 반복될 때마다 세그먼트 그룹 3은 루프상태가 선택적(conditional)이므로 생략될 수 있다. 그러나 사용된다면 세그먼트 DDD는 반드시 사용되어야 하며, 세그먼트 EEE는 생략될 수도 있고, 사용된다면 세그먼트 EEE는 최대 9번까지 매 반복시 마다 반복될 수 있다.Segment group 3: It is composed of segment DDD and segment EEE. When segment group 1 is repeated, segment group 3 can be omitted because the loop state is conditional. However, if used, the segment DDD must be used, and the segment EEE may be omitted or, if used, the segment EEE may be repeated up to nine times in each iteration.

도 3 은 일반적인 전자문서의 일예시도이다.3 is an exemplary view of a general electronic document.

일반적으로 전자문서는 도 3 에 도시된 바와 같은 구조를 갖게 된다.In general, an electronic document has a structure as shown in FIG. 3.

상기한 설명을 바탕으로 하여 종래의 기술을 살펴보면, 종래에는 문서변환용 테이블들이 갖고있는 표준자료 증가에 따른 접근 처리 시간의 증가로 인하여 전자문서변환기의 성능이 저하되는 문제점이 있었다.Looking at the prior art based on the above description, there is a conventional problem that the performance of the electronic document converter is degraded due to the increase of the access processing time according to the increase in the standard data that the document conversion tables have.

이에 대해 자세히 설명하면 다음과 같다.This will be described in detail below.

전자문서변환 시스템은 국제적으로 인정된 표준 전자문서에 대한 자료를 데이터베이스나 특정 자료구조 형태로 가지고 있다가, 사용자가 입력한 업무관련 응용데이터와 결합시켜 표준규격(UN/EDIFACT ISO9735구문규칙)에 맞는 EDI 전자문서를 생성하거나, 역으로 수신된 EDI 표준전자문서로부터 응용 데이터를 발췌하는 기 능을 수행한다. 이런 변환 과정에서 표준 전자문서 관련 자료구조는 매우 큰 영향을 미치게 된다. 표준 자료의 접근시간에 따라, 문서변환 시스템 전체의 성능이 좌우될 수 있는 매우 중요한 요소라 할 수 있다.The electronic document conversion system holds data on internationally recognized standard electronic documents in the form of a database or a specific data structure, and combines them with the work-related application data entered by the user to meet the standards (UN / EDIFACT ISO9735 syntax). It generates EDI electronic document or reversely extracts application data from received EDI standard electronic document. During this conversion, the standard electronic document-related data structures have a great impact. Depending on the access time of the standard data, the performance of the entire document conversion system can be a very important factor.

종래에 나와있는 전자문서변환 시스템들에서는 표준자료의 관리를 위해 "ISAM", 또는 상용 데이터베이스(DB : DataBase)를 이용하여 실현하였다. 상용DB를 이용하면 따로 DB를 제작해야하는 불편함이 없지만, 범용이라는 특성상 전자문서변환시스템에 최적화되어있지 못하기 때문에 최고의 성능을 내지 못하는 문제점이 있었다.Conventional electronic document conversion systems have been realized using "ISAM" or a commercial database (DB: DataBase) for the management of standard data. When using a commercial DB, there is no inconvenience to produce a separate DB, but due to the nature of general purpose, because it is not optimized for the electronic document conversion system, there was a problem that does not give the best performance.

또한, 검색 엔진에 따라 자료의 증가에 따른 접근시간의 증가로 인해 전자문서변환 시스템의 성능저하를 나타내게 되는 문제점 있었다. 왜냐하면, 일반적인 자료의 탐색에 있어서 자료의 증가는 자료증가율의 제곱만큼의 검색시간 증가를 가져오기 때문이다.In addition, according to the search engine, there is a problem in that the performance of the electronic document conversion system due to the increase of the access time increases with the increase of the data. This is because, in general data search, the increase of the data increases the search time by the square of the data growth rate.

본 발명은, 상기한 바와 같은 문제점을 해결하기 위하여 안출된 것으로, EDI 표준 데이터들을 해싱(hashing) 알고리즘에 따라 분산 배치하는 전자문서변환을 위한 표준자료 배치 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는데 그 목적이 있다.
SUMMARY OF THE INVENTION The present invention has been made to solve the above problems, and records a standard data arranging method for electronic document conversion in which EDI standard data are distributed according to a hashing algorithm, and a program for realizing the method. Its purpose is to provide a computer readable recording medium.

상기 목적을 달성하기 위한 본 발명은, 전자문서교환(EDI : Electronic Data Interchange) 시스템에 적용되는 전자문서변환을 위한 표준자료 배치 방법에 있어서, 전자문서변환을 위한 표준 자료에 대해 프라이머리 키를 대상으로 한 해싱결과 값에 따라 삽입 레코드 영역을 결정하고 상기 레코드 영역에 이미 저장된 자료가 있는지를 확인하는 제 1 단계; 상기 제 1 단계의 확인 결과, 저장된 자료가 있으면 오버플로 영역에 상기 표준 자료를 삽입하고 상기 레코드 영역의 자료로부터 연결고리를 가지도록 하는 제 2 단계; 및 상기 제 1 단계의 확인 결과, 저장된 자료가 없으면 상기 레코드 영역에 상기 표준 자료를 삽입하는 제 3 단계를 포함하는 것을 특징으로 한다.In order to achieve the above object, the present invention provides a method of disposing a standard data for electronic document conversion applied to an electronic data interchange (EDI) system. A first step of determining an insertion record area according to the hashing result value and checking whether there is already stored data in the record area; A second step of inserting the standard data into the overflow area and having a link from the data in the record area if there is stored data as a result of the checking in the first step; And a third step of inserting the standard data into the record area if there is no stored data as a result of the checking of the first step.

또한, 본 발명은, 컴퓨터에, 전자문서변환을 위한 표준 자료에 대해 프라이머리 키를 대상으로 한 해싱결과 값에 따라 삽입 레코드 영역을 결정하고 상기 레코드 영역에 이미 저장된 자료가 있는지를 확인하는 제 1 기능; 상기 제 1 기능의 확인 결과, 저장된 자료가 있으면 오버플로 영역에 상기 표준 자료를 삽입하고 상기 레코드 영역의 자료로부터 연결고리를 가지도록 하는 제 2 기능; 및 상기 제 1 기능의 확인 결과, 저장된 자료가 없으면 상기 레코드 영역에 상기 표준 자료를 삽입하는 제 3 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.In addition, the present invention provides a first computer for determining an insertion record area according to a hashing result value for a primary key with respect to standard data for electronic document conversion, and checking whether there is already stored data in the record area. function; A second function of inserting the standard data into an overflow area and having a link from the data in the record area if there is stored data as a result of the checking of the first function; And a computer-readable recording medium having recorded thereon a program for realizing a third function of inserting the standard data into the record area if there is no stored data as a result of confirming the first function.

본 발명은 일반 범용 컴퓨터에 적용되는 방법에 있어서, 표준 전자문서 구성 데이터들을 세그먼트들과 루프, 그리고 엘리먼트들의 상관관계 정보를 테이블 구조로 조직하므로써 전자문서 변환을 효율적으로 지원함을 특징으로 한다.The present invention is characterized in that the electronic document conversion is efficiently supported by organizing standard electronic document configuration data into segments in a table structure of segments, loops, and elements.

본 발명에서는 해싱알고리즘과 테이블타입 자료구조를 이용하여 표준 데이터들을 관리하므로써 자료의 증가로인한 접근시간의 증가가 거의 없는 전자문서변환 전용 테이블을 구축하는 방법을 이용하여 표준 데이터 구조를 전자문서구조에 맞도록 최적화시켜서 전자문서변환에 가장 적절한 형태를 갖추었다. 즉, 한번의 해싱함수 계산만 있으면 자료가 저장되어있는 레코드의 인덱스를 얻을 수 있으므로 아무리 자료가 많더라도 일정한 상수적인 접근시간을 보장할 수 있는것이다. In the present invention, the standard data structure is converted into the electronic document structure by using a method of constructing an electronic document conversion-only table with little increase in access time due to data increase by managing the standard data using a hashing algorithm and a table type data structure. Optimized to fit, it is the most suitable form for electronic document conversion. In other words, if one hashing function is calculated, the index of the record where the data is stored can be obtained. Therefore, even if there is a lot of data, a constant access time can be guaranteed.

또한, 전자문서 구조와 테이블의 구조를 일치시켜 문서명, 문서 구조, 세그먼트, 복합요소, 데이터요소를 각각의 테이블로 구성하여 테이블1, 테이블2, 테이블3, 테이블4, 테이블5로 구성하였고, 코드리스트의 경우 데이터량이 많으므로 표준(국제표준, 국내표준, 사내표준)에 따라 각각 테이블6, 테이블7, 테이블8로 구성하였다. In addition, the document name, document structure, segment, compound element, and data element were composed of each table by matching the structure of the electronic document and the table, and composed of Table 1, Table 2, Table 3, Table 4, and Table 5. In the case of lists, because of the large amount of data, Table 6, Table 7, and Table 8 were composed according to standards (international, domestic, and in-house standards).

상술한 목적, 특징들 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명한다.The above objects, features and advantages will become more apparent from the following detailed description taken in conjunction with the accompanying drawings. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 4 는 본 발명에 이용되는 테이블 레코드 구조의 일예시도이다.4 is an exemplary view of a table record structure used in the present invention.

각각의 테이블은 도 4 와 같은 구조의 레코드들의 집합으로 이루어져있다.Each table consists of a set of records of the structure shown in FIG.

각각의 레코드는 프라이머리 키를 대상으로 하는 해싱함수의 결과 값에 따라 해당 삽입 레코드 번호가 결정되고, 그 레코드에 해당되는 물리적 위치에 삽입되게 된다. 해싱함수 연산방법은 하기의 도 5 와 같다. For each record, the corresponding insertion record number is determined according to the result value of the hashing function for the primary key, and inserted at the physical location corresponding to the record. The hashing function calculation method is as shown in FIG. 5.

도 5 는 본 발명에 이용되는 해싱함수 연산에 대한 설명예시도이다.5 is an illustrative example of hashing function calculation used in the present invention.

입력된 키값을 대상으로하여 복합요소 테이블인 경우는 30진법, 그 외에는 36진법으로 변환한 수를 해싱함수 결과값으로 사용하는 것이다. 이러한 방법으로 구성된 테이블은 실제 도 6 과 같은 형태로 저장되어진다. In the case of a compound element table for the input key value, the number converted to hexadecimal notation and hexadecimal notation is used as a hashing function result. The table configured in this way is actually stored in the form as shown in FIG.

도 6 은 본 발명에 따른 전자문서변환을 위한 표준자료 배치 방법에 쓰이는 테이블 구조의 일실시예 설명도이다.6 is a diagram illustrating an embodiment of a table structure used in a method of arranging standard data for converting an electronic document according to the present invention.

각각의 레코드에서 맨 앞의 한 바이트는 그 레코드의 유효성 유무를 표시해 준다. '1'은 비어있는 레코드를 의미하고, '2'는 유효한 레코드, '3'은 삭제된 레코드를 의미한다. The first byte in each record indicates whether the record is valid. '1' means empty records, '2' means valid records and '3' means deleted records.

그러므로, 해싱함수 결과값으로 레코드를 읽어올 때, 우선 이 플랙을 확인하여 유효한 레코드일 경우에만 레코드를 읽어와야 한다. 삭제된 레코드를 '3'으로 표시해 놓는 이유는 삭제동작을 취소할 경우 이 플랙만 다시 '2'로 고치는 동작으로 간단하게 동작취소를 할 수 있기 때문이다. Therefore, when reading a record as a result of a hashing function, first check this flag to read the record only if it is a valid record. The reason why the deleted record is marked as '3' is that if you cancel the delete operation, you can simply cancel the operation by changing the flag back to '2'.

해싱테이블의 특성상 자료가 많아지게 되면, 동일한 해싱함수 결과값을 갖는 자료들이 발생(collison)하게 된다. 이런 경우는 각 테이블 고유의 베이스 값으로 결정되는 기본 레코드 영역 이외의 오버플로(overflow) 영역에 자료가 저장되어지고, 기본영역의 데이터로부터 연결고리(link)를 가지게 된다. Due to the nature of the hashing table, if more data is available, data with the same hashing result will be collated. In this case, data is stored in an overflow area other than the basic record area determined by the base value unique to each table, and has a link from the data in the basic area.

동일한 해싱결과값을 가지는 자료가 계속 많아지면 계속 오버플로(overflow) 영역에 자료가 저장되어 기본영역에서부터 연결고리를 따라 오버플로(overflow) 영역을 계속 탐색해야하는 오버헤드(overhead)가 많이 발생하게 되고, 이것도 무시하지 못하게 된다. 이런 경우는 해싱함수의 히트율(Hit ratio)을 검사하여 가장 적절 한 크기, 즉 오버플로(overflow) 영역을 최소로 줄이면서, 기본영역의 빈공간을 최소로하는 테이블 크기를 산출하고, 이때의 테이블 크기를 테이블의 베이스 값으로 설정하므로써 항상 최상의 성능을 낼 수 있도록 테이블을 최적의 크기로 조절할 수 있다. If more data have the same hashing result, the data is continuously stored in the overflow area, which incurs a lot of overhead to keep searching the overflow area along the link from the basic area. This will not be ignored. In this case, the hit ratio of the hashing function is examined to calculate the table size that minimizes the most suitable size, that is, the overflow area, while minimizing the empty space of the basic area. By setting the table size to the base value of the table, you can adjust the table to the optimal size for the best performance at all times.

도 6 에서의 테이블은 베이스가 100으로 첫 번째 라인부터 100번째 라인까지는 기본영역이고, 101번째 라인부터는 오버플로(overflow)영역이 된다. The table in FIG. 6 has a base of 100 and is a basic area from the first line to the 100th line, and becomes an overflow area from the 101st line.

기본영역에는 사용되지 않은, 즉 플랙이 '1'인 레코드가 존재할 수 있지만 overflow영역에는 플랙이 '2' 또는 '3'으로 표시된 레코드들만이 존재하게 된다.There may be records in the default area that are not used, i.e. with a flag of '1', but only those records with a flag of '2' or '3' in the overflow area.

도 7 은 본 발명에 따른 테이블에의 접근 과정에 대한 일실시예 흐름도이다.7 is a flowchart of an embodiment of an access procedure to a table according to the present invention.

본 발명의 테이블에의 접근 과정은 도 5 와 같고 이의 설명은 다음과 같다.The process of accessing the table of the present invention is shown in FIG. 5 and the description thereof is as follows.

1) 우선 조회하려는 자료에 따라 테이블번호가 결정되어진다.1) First, the table number is decided according to the data to be searched.

2) 조회하려는 내용의 키값을 이용하여 해싱함수를 연산한다. 2) Calculate hashing function by using key value of the content to search.

3) 해싱함수 결과값을 인덱스로 이용하여 테이블에서 한 레코드를 추출한다.3) Extract a record from a table using the hashing result as an index.

4) 추출된 레코드가 찾고자하는 내용이면 종료.4) Exit if the extracted record is what you are looking for.

5) 아니면 레코드 끝에서 연결된 오버플로(overflow) 영역의 인덱스를 얻는다.5) Otherwise, get the index of the overflow region that is connected at the end of the record.

6) 오버플로(overflow)영역에서 레코드를 추출한다.6) Extract the record from the overflow area.

7) 4)~6)을 종료할 때까지 반복한다.7) Repeat until you finish 4) ~ 6).

이를 도면의 흐름에 따라 설명하면 다음과 같다.This will be described according to the flow of the drawings.

우선, 테이블을 초기화가 수행된(701) 다음에 테이블로의 경로 정보를 획득 한다(702). 그리고, 테이블 번호, 베이스 등의 스키마 정보를 획득하고(703), 키값을 이용하여 해싱함수의 연산을 수행한다(704).First, the table is initialized (701) and then path information to the table is obtained (702). Then, schema information such as a table number and a base is obtained (703), and a hashing operation is performed using the key value (704).

해싱함수 결과값을 인덱스로 이용하여 테이블에서 한 레코드를 추출하여(705), 플랙 비트를 확인한다(706). 플랙 비트의 값이 1이면 에러 처리하고(707), 플랙 비트의 값이 2이면 기존에 있던 키값과 새로이 찾아진 키값을 비교하여(708), 서로 매치되는지를 검사한다(709). 검사 결과, 매치되지 않으면 레코드 끝에서 연결된 오버플로 영역의 인덱스를 얻어(710), 해싱함수 결과값을 인덱스로 이용하여 테이블에서 한 레코드를 추출하는 과정(705)부터 반복 수행한다.Using the hashing result as an index, one record is extracted from the table (705), and the flag bit is checked (706). If the flag bit value is 1, an error process is performed (707). If the flag bit value is 2, an existing key value is compared with a newly found key value (708), and a check is made (709). If the result of the check is not matched, an index of the overflow region that is connected at the end of the record is obtained (710), and a process of extracting one record from the table using the hashing function result value as an index is repeated.

검사 결과, 매치되면 레코드값을 버퍼에 넣고(711), 포인터의 값이 0이라 연결된 다른 자료가 없는지를 확인한다(712). 확인 결과, 0이면 종료하고, 0이 아니면 레코드 끝에서 연결된 오버플로 영역의 인덱스를 얻는 과정(710)부터 반복 수행한다.As a result of the check, if there is a match, the record value is put into the buffer (711), and the value of the pointer is 0, so that there is no other data connected (712). As a result of the check, if it is 0, the process is terminated. If it is not 0, the process is repeatedly performed in step 710 of obtaining an index of the overflow region connected at the end of the record.

플랙 비트를 확인한 결과, 플랙 비트가 3이면 레코드 끝에서 연결된 오버플로 영역의 인덱스를 얻는 과정(710)부터 반복 수행한다.As a result of checking the flag bit, if the flag bit is 3, the process repeats from step 710 of obtaining an index of the overflow region connected at the end of the record.

이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하다는 것이 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 명백할 것이다.The present invention described above is not limited to the above-described embodiments and the accompanying drawings, and various substitutions, modifications, and changes are possible in the art without departing from the technical spirit of the present invention. It will be clear to those of ordinary knowledge.

상기한 바와 같은 본 발명은, EDI 표준 데이터들을 여러개의 테이블에 해싱 알고리즘에 따라 분산 배치하므로써, 기존의 문서변환용 테이블들이 갖고 있는 표준자료 증가에 따른 접근 처리시간의 증가로 인한 전자문서 변환기의 성능저하를 없애는 효과가 있다. According to the present invention as described above, by distributing EDI standard data in a plurality of tables according to a hashing algorithm, the performance of the electronic document converter due to the increase of the access processing time according to the increase of the standard data of the existing document conversion tables. It is effective to eliminate the degradation.

또한, 본 발명은, EDI 전자문서변환에 소요되는 시간을 최소화하고, 전자문서변환 소프트웨어가 변환대상 문서 구조의 변화에 따른 영향을 받지 않고 효율적으로 변환을 수행할 수 있도록 하는 효과가 있다.In addition, the present invention has the effect of minimizing the time required for EDI electronic document conversion, and enables the electronic document conversion software to perform the conversion efficiently without being affected by the change of the conversion target document structure.

Claims (3)

전자문서교환(EDI : Electronic Data Interchange) 시스템에 적용되는 전자문서변환을 위한 표준자료 배치 방법에 있어서,In the standard data placement method for the electronic document conversion applied to the Electronic Data Interchange (EDI) system, 전자문서변환을 위한 표준 자료에 대해 프라이머리 키를 대상으로 한 해싱결과 값에 따라 삽입 레코드 영역을 결정하고 상기 레코드 영역에 이미 저장된 자료가 있는지를 확인하는 제 1 단계;A first step of determining an insertion record area according to a hashing result value of a primary key with respect to standard data for electronic document conversion, and checking whether there is already stored data in the record area; 상기 제 1 단계의 확인 결과, 저장된 자료가 있으면 오버플로 영역에 상기 표준 자료를 삽입하고 상기 레코드 영역의 자료로부터 연결고리를 가지도록 하는 제 2 단계; 및A second step of inserting the standard data into the overflow area and having a link from the data in the record area if there is stored data as a result of the checking in the first step; And 상기 제 1 단계의 확인 결과, 저장된 자료가 없으면 상기 레코드 영역에 상기 표준 자료를 삽입하는 제 3 단계 A third step of inserting the standard data into the record area if there is no stored data as a result of the checking of the first step 를 포함하는 전자문서변환을 위한 표준자료 배치 방법.Standard data placement method for electronic document conversion comprising a. 제 1 항에 있어서,The method of claim 1, 상기 레코드 영역이나 상기 오버플로 영역은,The record area or the overflow area, 유효성 유무 표시 필드를 두어 상기 영역이 비어있는지, 유효한 자료가 들어있는지 또는 삭제된 자료가 들어있는지를 표시하는 것을 특징으로 하는 전자문서변환을 위한 표준자료 배치 방법. And a validity indication field to indicate whether the area is empty, contains valid data, or contains deleted data. 컴퓨터에,On your computer, 전자문서변환을 위한 표준 자료에 대해 프라이머리 키를 대상으로 한 해싱결과 값에 따라 삽입 레코드 영역을 결정하고 상기 레코드 영역에 이미 저장된 자료가 있는지를 확인하는 제 1 기능;A first function of determining an insertion record area according to a hashing result value for a primary key with respect to standard data for electronic document conversion, and checking whether there is already data stored in the record area; 상기 제 1 기능의 확인 결과, 저장된 자료가 있으면 오버플로 영역에 상기 표준 자료를 삽입하고 상기 레코드 영역의 자료로부터 연결고리를 가지도록 하는 제 2 기능; 및A second function of inserting the standard data into an overflow area and having a link from the data in the record area if there is stored data as a result of the checking of the first function; And 상기 제 1 기능의 확인 결과, 저장된 자료가 없으면 상기 레코드 영역에 상기 표준 자료를 삽입하는 제 3 기능A third function of inserting the standard data into the record area if there is no stored data as a result of the checking of the first function 을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.A computer-readable recording medium having recorded thereon a program for realizing this.
KR1019990068007A 1999-12-31 1999-12-31 Method of arranging standard record for edi KR100574886B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990068007A KR100574886B1 (en) 1999-12-31 1999-12-31 Method of arranging standard record for edi

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990068007A KR100574886B1 (en) 1999-12-31 1999-12-31 Method of arranging standard record for edi

Publications (2)

Publication Number Publication Date
KR20010060010A KR20010060010A (en) 2001-07-06
KR100574886B1 true KR100574886B1 (en) 2006-04-27

Family

ID=19635095

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990068007A KR100574886B1 (en) 1999-12-31 1999-12-31 Method of arranging standard record for edi

Country Status (1)

Country Link
KR (1) KR100574886B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020045304A (en) * 2000-12-08 2002-06-19 정상철 A storage method for large amount of product information

Also Published As

Publication number Publication date
KR20010060010A (en) 2001-07-06

Similar Documents

Publication Publication Date Title
US7243120B2 (en) Transaction-based enterprise application integration (EAI) and development system
US5909570A (en) Template mapping system for data translation
US7293006B2 (en) Computer program for storing electronic files and associated attachments in a single searchable database
CN104126192B (en) Time management formula email message
CN109086046A (en) A kind of front-end code automatic generation method and system based on interface specification document
CN1987925A (en) Complex front platform of financial system and transfering method transaction data
EP1374084A2 (en) Email to database import utility
JP2000066823A (en) Method for converting text corresponding to one keyboard mode into text corresponding to different keyboard mode
CN106326352A (en) Universal interface design method and system in butt joint with plurality of service systems
WO1992022033A1 (en) Active messaging system
CN110378778A (en) Multi-data source account checking method, system, electronic equipment and storage medium
CN110135829A (en) It directly keeps accounts the data processing method and device of judgement for cross-border inward remittance
US20070094278A1 (en) Data transfer services
CN101316296A (en) Method and system for managing generation of multiple electronic work orders
US6490718B1 (en) System and method for processing electronic data interchange using a graphical representation
KR100574886B1 (en) Method of arranging standard record for edi
CN108664546A (en) Xml data structure conversion method and device
CN108364042A (en) A kind of invoice management method, device and business platform
CN115033599B (en) Graph query method, system and related device based on multi-party security
CN104679736A (en) Translation system allowing statistics of simple mistakes
CN101996161B (en) A kind of old version data processing method of electronic document and device
US20060248443A1 (en) System and method for exporting spreadsheet data
KR100250120B1 (en) Electronic documents system
KR100250119B1 (en) Mapping method of electronic documents system
CN109284292A (en) A kind of generation method of mobile operation list generates system and relevant apparatus

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20100409

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee