KR101944973B1 - Method and system for sharing user-defined Enterprise Resource Planning function and computing system performing the same - Google Patents
Method and system for sharing user-defined Enterprise Resource Planning function and computing system performing the same Download PDFInfo
- Publication number
- KR101944973B1 KR101944973B1 KR1020160157996A KR20160157996A KR101944973B1 KR 101944973 B1 KR101944973 B1 KR 101944973B1 KR 1020160157996 A KR1020160157996 A KR 1020160157996A KR 20160157996 A KR20160157996 A KR 20160157996A KR 101944973 B1 KR101944973 B1 KR 101944973B1
- Authority
- KR
- South Korea
- Prior art keywords
- file
- user
- sql
- source package
- function
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
Abstract
기업 등 ERP 소프트웨어를 사용하는 사용자가 직접 개발한 자신의 업무 프로세스에 적합한 사용자 정의 ERP 펑션을 용이하게 타인과 공유할 수 있도록 하는 방법 및 시스템이 개시된다. 본 발명의 일 측면에 따르면, 사용자 정의 ERP(Enterprise Resource Planning) 펑션(function) 공유 방법으로서, 사용자 정의 ERP 펑션 공유 시스템이, 복수의 공유자 단말로부터 적어도 하나의 SQL 파일 및 디자인 파일을 포함하며 소정의 ERP 사용자 정의 펑션에 상응하는 소스 패키지를 수신하는 단계-상기 SQL 파일은, 데이터베이스를 조작하기 위한 SQL(Structured Query Language) 쿼리를 저장하는 파일이며, 상기 디자인 파일은 상기 사용자 정의 ERP 펑션의 화면을 구성하는 적어도 하나의 컨트롤의 속성에 관한 정보를 저장하는 파일이며, 상기 사용자 정의 ERP 펑션의 화면을 구성하는 컨트롤 중 적어도 일부는 상기 적어도 하나의 SQL 파일에 포함된 특정 쿼리에 매핑되는 컨트롤임-, 상기 사용자 정의 ERP 펑션 공유 시스템이, 상기 복수의 공유자 단말로부터 수신되는 소스 패키지를 소정의 저장소에 저장하는 단계, 상기 사용자 정의 ERP 펑션 공유 시스템이, 사용자 단말로 상기 저장소에 저장된 소스 패키지의 리스트를 제공하는 단계 및 상기 사용자 단말의 다운로드 요청에 응답하여, 상기 저장소에 저장된 소스 패키지 중 상기 사용자 단말에서 선택한 대상 소스 패키지를 상기 사용자 단말로 전송하는 단계를 포함하는 사용자 정의 ERP 펑션 공유 방법이 제공된다.A method and system for enabling a user using an ERP software, such as a company, to easily share a user-defined ERP function developed for a user's own business process with others easily. According to an aspect of the present invention, there is provided a method of sharing a user defined ERP function, wherein a user defined ERP function sharing system includes at least one SQL file and a design file from a plurality of sharer terminals, Receiving a source package corresponding to an ERP user defined function, wherein the SQL file is a file for storing a Structured Query Language (SQL) query for manipulating a database, the design file configuring a screen of the user defined ERP function Wherein at least some of the controls constituting the screen of the user defined ERP function are mapped to a specific query included in the at least one SQL file, Wherein the user-defined ERP function sharing system comprises: Wherein the user-defined ERP function sharing system comprises the steps of: providing a list of source packages stored in the repository to a user terminal; and in response to a download request of the user terminal, And transmitting the selected source package selected by the user terminal to the user terminal.
Description
본 발명은 사용자 정의 ERP 펑션 공유 방법 및 시스템에 관한 것이다. 보다 상세하게는 기업 등 ERP 소프트웨어를 사용하는 사용자가 직접 개발한 자신의 업무 프로세스에 적합한 사용자 정의 ERP 펑션을 용이하게 타인과 공유할 수 있도록 하는 방법 및 시스템에 관한 것이다.The present invention relates to a user-defined ERP function sharing method and system. More particularly, the present invention relates to a method and system for enabling a user using an ERP software, such as a company, to easily share a user-defined ERP function developed for a user's own business process with others.
전사적 자원 관리(Enterprise Resource Planning)은 기업의 경영 및 관리에 관한 업무를 위한 컴퓨터 시스템 또는 이러한 시스템에 설치되는 패키지 소프트웨어로서, ERP를 취급하는 대표적인 회사는 SAP, 오라클 등이 있으며, 국내에는 대표적으로 더존을 들 수 있다. 한편 기업이 ERP 서비스를 제공받기 위해서는 기업 내의 사용자 단말에 ERP 소프트웨어가 설치되어야 할 뿐만 아니라 해당 기업의 각종 정보가 저장되는 데이터베이스가 구축되어야 한다.Enterprise Resource Planning (ERP) is a computer system for business management and management, or package software installed in such systems. Representative companies that handle ERP are SAP and Oracle. In Korea, . Meanwhile, in order for an enterprise to receive an ERP service, a database must be established in which not only ERP software should be installed in a user terminal in the enterprise, but also various information of the company is stored.
기업은 ERP 시스템을 통해 회계, 인사, 급여, 영업, 무역, 구매, 자재, 생산, 외주, 서비스, 경영정보 등을 효율적으로 관리할 수 있다. 또한 기업은 ERP 시스템을 도입함으로써 관리 부서간의 정보시스템이 다를 때 일어나는 비효율성을 줄이고 원활한 회사의 자원 관리를 이끌어 냄으로써 생산성을 극대화할 수 있게 된다. 또한 ERP는 기업의 다양한 정보를 체계적으로 파악하고 관리할 수 있다는 장점을 제공할 수 있다.Through the ERP system, companies can efficiently manage accounting, personnel, salary, sales, trade, purchasing, materials, production, outsourcing, service and management information. Also, by introducing ERP system, companies can maximize productivity by reducing inefficiency caused by different information system between management departments and leading to smooth company resource management. In addition, ERP can provide the advantage of systematically identifying and managing various information of the company.
각 기업은 저마다 고유한 비즈니스 프로세스를 가지고 있으며, 서로 다른 기업 경영 전략을 가지고 있으므로 ERP 소프트웨어는 일반적인 패키지 소프트웨어와 달리 적용될 기업의 특성이나 비즈니스 프로세스, 워크 플로우에 적합하도록 커스터마이징 될 필요가 있다. 종래에는 여러 기업에 맞춤형 ERP 시스템을 구축하기 위해서는 각각의 기업 별로, 해당 기업의 요구사항이나 비즈니스 프로세스 등을 분석하고, 이를 토대로 해당 기업에 적용될 맞춤형 ERP 소프트웨어를 개발해야 했으므로 각 기업에 적합하도록 커스터마이징된 ERP 시스템을 구축하기 위해서는 많은 시간과 비용이 요구되었다. 또한 높은 비용으로 인해 규모가 크지 않은 기업은 ERP 시스템을 도입하기가 대단히 어려운 실정이다.Since each company has its own business process and has different corporate management strategies, ERP software needs to be customized to suit the characteristics of the enterprise, business process, and workflow to be applied, unlike general package software. Traditionally, in order to build a customized ERP system for various companies, it has been necessary to analyze the requirements and business processes of each company, and to develop customized ERP software to be applied to the companies based on the analysis. Accordingly, It took a lot of time and money to build an ERP system. In addition, companies that are not large in size due to high costs are very difficult to introduce ERP systems.
본 발명이 해결하고자 하는 기술적 과제는 데이터베이스 모델링, 상기 데이터베이스를 조작하기 위한 SQL 퀴리 및 UI를 통합적으로 개발할 수 있도록 하는 통합 개발 환경을 제공하고, 이를 통해 기업에 적합하게 커스터마이징된 ERP 개별 펑션을 용이하게 생성할 수 있도록 하고, 이를 통해 사용자가 직접 개발한 ERP 펑션을 용이하게 타인과 공유할 수 있도록 하는 방법 및 시스템을 제공하는 것이다.An object of the present invention is to provide an integrated development environment capable of integrally developing database modeling, SQL query and UI for manipulating the database, thereby facilitating customized ERP individual functions suitable for the enterprise The present invention provides a method and system for allowing a user to easily share an ERP function developed by a user with other users through the user interface.
본 발명의 일 측면에 따르면, 사용자 정의 ERP(Enterprise Resource Planning) 펑션(function) 공유 방법으로서, 사용자 정의 ERP 펑션 공유 시스템이, 복수의 공유자 단말로부터 적어도 하나의 SQL 파일 및 디자인 파일을 포함하며 소정의 ERP 사용자 정의 펑션에 상응하는 소스 패키지를 수신하는 단계-상기 SQL 파일은, 데이터베이스를 조작하기 위한 SQL(Structured Query Language) 쿼리를 저장하는 파일이며, 상기 디자인 파일은 상기 사용자 정의 ERP 펑션의 화면을 구성하는 적어도 하나의 컨트롤의 속성에 관한 정보를 저장하는 파일이며, 상기 사용자 정의 ERP 펑션의 화면을 구성하는 컨트롤 중 적어도 일부는 상기 적어도 하나의 SQL 파일에 포함된 특정 쿼리에 매핑되는 컨트롤임-, 상기 사용자 정의 ERP 펑션 공유 시스템이, 상기 복수의 공유자 단말로부터 수신되는 소스 패키지를 소정의 저장소에 저장하는 단계, 상기 사용자 정의 ERP 펑션 공유 시스템이, 사용자 단말로 상기 저장소에 저장된 소스 패키지의 리스트를 제공하는 단계 및 상기 사용자 단말의 다운로드 요청에 응답하여, 상기 저장소에 저장된 소스 패키지 중 상기 사용자 단말에서 선택한 대상 소스 패키지를 상기 사용자 단말로 전송하는 단계를 포함하는 사용자 정의 ERP 펑션 공유 방법이 제공된다.According to an aspect of the present invention, there is provided a method of sharing a user defined ERP function, wherein a user defined ERP function sharing system includes at least one SQL file and a design file from a plurality of sharer terminals, Receiving a source package corresponding to an ERP user defined function, wherein the SQL file is a file for storing a Structured Query Language (SQL) query for manipulating a database, the design file configuring a screen of the user defined ERP function Wherein at least some of the controls constituting the screen of the user defined ERP function are mapped to a specific query included in the at least one SQL file, Wherein the user-defined ERP function sharing system comprises: Wherein the user-defined ERP function sharing system comprises the steps of: providing a list of source packages stored in the repository to a user terminal; and in response to a download request of the user terminal, And transmitting the selected source package selected by the user terminal to the user terminal.
일 실시예에서, 상기 사용자 정의 ERP 펑션 공유 시스템이, 상기 복수의 공유자 단말로부터 수신되는 소스 패키지를 소정의 저장소에 저장하는 단계는, 상기 소스 패키지에 상응하는 사용자 정의 ERP 펑션이 미리 정의된 복수의 카테고리 중 어디에 속하는지를 판단하는 단계 및 상기 상기 소스 패키지를 그에 상응하는 사용자 정의 ERP 펑션이 속하는 카테로리로 분류하여 상기 저장소에 저장하는 단계를 포함할 수 있다.In one embodiment, the step of storing the source packages received from the plurality of sharer terminals in a predetermined repository by the user-defined ERP function sharing system comprises the steps of: storing a plurality of predefined user-defined ERP functions corresponding to the source packages Category, and storing the source package in the repository by categorizing the source package into a category to which the corresponding user-defined ERP function belongs.
일 실시예에서, 상기 소스 패키지에 상응하는 사용자 정의 ERP 펑션이 미리 정의된 복수의 카테고리 중 어디에 속하는지를 판단하는 단계는, 상기 소스 패키지에 포함된 적어도 하나의 SQL 파일 또는 상기 소스 패키지에 포함된 디자인 파일을 분석하는 단계 및 분석 결과에 기초하여 상기 소스 패키지에 상응하는 사용자 정의 ERP 펑션이 상기 복수의 카테고리 중 어디에 속하는지를 판단하는 단계를 포함할 수 있다.In one embodiment, determining which of the plurality of predefined categories the user defined ERP function corresponding to the source package belongs to comprises determining at least one SQL file included in the source package or a design included in the source package Analyzing the file, and determining, based on the analysis result, where in the plurality of categories the user-defined ERP function corresponding to the source package belongs.
일 실시예에서, 상기 사용자 단말은, 소스 패키지 업로드 방법 및 소스 패키지 다운로드 방법을 수행하되, 상기 소스 패키지 업로드 방법은, 상기 사용자 단말에 저장된 적어도 하나의 소스 패키지의 리스트 중 적어도 일부 항목을 선택하는 기능을 제공하는 소스 패키지 업로드 UI를 제공하는 단계 및 상기 소스 패키지 업로드 UI를 통해 선택된 항목에 상응하는 소스 패키지를 상기 사용자 정의 ERP 펑션 공유 시스템으로 전송하는 단계를 포함하고, 상기 소스 패키지 다운로드 방법은, 상기 사용자 정의 ERP 펑션 공유 시스템으로부터 상기 저장소에 저장된 소스 패키지의 리스트를 수신하는 단계, 수신된 소스 패키지 리스트 중 적어도 일부 항목을 선택하는 기능을 제공하는 소스 패키지 다운로드 UI를 제공하는 단계 및 상기 소스 패키지 다운로드 UI를 통해 선택된 항목에 상응하는 소스 패키지를 상기 사용자 정의 ERP 펑션 공유 시스템으로부터 수신하는 단계를 포함할 수 있다.In one embodiment, the user terminal performs a source package upload method and a source package download method, the method comprising: selecting at least some items from a list of at least one source package stored in the user terminal, And transmitting the source package corresponding to the selected item through the source package upload UI to the user-defined ERP function sharing system, wherein the source package download method comprises the steps of: Receiving a list of source packages stored in the repository from a user-defined ERP function sharing system; providing a source package download UI providing a function of selecting at least some items of the received source package list; Through It may include receiving a source package corresponding to the selected item from the user-defined function shared ERP system.
일 실시예에서, 상기 사용자 단말은, 상기 사용자 정의 ERP 펑션 공유 시스템으로부터 상기 대상 소스 패키지를 수신한 다음, 상기 대상 소스 패키지에 상응하는 사용자 정의 ERP 펑션 생성 방법을 수행하고, 상기 대상 소스 패키지에 상응하는 사용자 정의 ERP 펑션 생성 방법은, ERD 파일에 상응하는 UI오브젝트, 상기 대상 소스 패키지에 포함된 적어도 하나의 SQL 파일 각각에 상응하는 UI 오브젝트 및 상기 대상 소스 패키지에 포함된 디자인 파일에 상응하는 UI 오브젝트를 포함하는 컨테이너 UI를 제공하는 단계-여기서, 상기 ERD 파일은, 데이터베이스에 저장된 테이블의 속성 및 각 테이블 간의 관계를 모델링한 정보를 저장하는 파일임-, 상기 ERD 파일에 상응하는 UI 오브젝트가 선택되는 경우, 상기 ERD 파일을 편집하기 위한 ERD 파일 편집 기능을 제공하는 단계, 상기 적어도 하나의 SQL 파일 중 어느 하나에 상응하는 UI 오브젝트가 선택되는 경우, 선택된 UI 오브젝트에 상응하는 SQL 파일을 편집하기 위한 SQL 파일 편집 기능을 제공하는 단계, 상기 디자인 파일에 상응하는 UI 오브젝트가 선택되는 경우, 상기 디자인 파일을 편집하기 위한 디자인 파일 편집 기능을 제공하는 단계 및 상기 적어도 하나의 SQL 파일 및 상기 디자인 파일에 기초하여 상기 사용자 정의 ERP 펑션을 제공하는 단계를 포함하는 사용자 정의 ERP 펑션 공유 방법을 수행할 수 있다..In one embodiment, the user terminal receives the target source package from the user-defined ERP function sharing system, and then performs a user-defined ERP function generation method corresponding to the target source package, A UI object corresponding to an ERD file, a UI object corresponding to each of at least one SQL file included in the target source package, and a UI object corresponding to a design file included in the target source package, Wherein the ERD file is a file that stores information on attributes of a table stored in a database and information on relationships between the tables, a UI object corresponding to the ERD file is selected , An ERD file editing function for editing the ERD file Providing an SQL file editing function for editing an SQL file corresponding to a selected UI object when a UI object corresponding to one of the at least one SQL file and the at least one SQL file is selected; Providing a design file editing function for editing the design file and providing the user defined ERP function based on the at least one SQL file and the design file, You can perform the sharing method.
본 발명의 다른 일 측면에 따르면, 데이터 처리장치에 설치되며 상술한 방법을 수행하기 위하여 기록매체에 저장된 컴퓨터 프로그램이 제공된다.According to another aspect of the present invention, a computer program installed in a data processing apparatus and stored in a recording medium for performing the above-described method is provided.
본 발명의 다른 일 측면에 따르면, 적어도 하나의 프로세서, 상기 프로세서에 의하여 실행되는 컴퓨터 프로그램을 저장하는 메모리를 포함하는 사용자 정의 ERP 펑션 공유 시스템으로서, 상기 컴퓨터 프로그램은, 상기 프로세서에 의해 실행되는 경우 상기 사용자 정의 ERP 펑션 공유 시스템이 상술한 사용자 정의 ERP 펑션 공유 방법을 수행하도록 하는 사용자 정의 ERP 펑션 공유 시스템이 제공된다.According to another aspect of the present invention there is provided a user defined ERP function sharing system comprising at least one processor and a memory for storing a computer program executed by the processor, There is provided a user-defined ERP function sharing system for allowing a user-defined ERP function sharing system to perform the above-described user-defined ERP function sharing method.
본 발명의 일 실시예에 따르면, 데이터베이스 모델링, 상기 데이터베이스를 조작하기 위한 SQL 퀴리 및 UI를 통합적으로 개발할 수 있도록 하는 통합 개발 환경을 제공하고, 이를 통해 기업에 적합하게 커스터마이징된 ERP 개별 펑션을 생성할 수 있도록 하는 방법 및 시스템을 제공할 수 있다.According to an embodiment of the present invention, an integrated development environment for integrally developing database modeling, SQL query and UI for manipulating the database is provided, and an ERP individual function customized for the enterprise is created And to provide a system and method for enabling the system to do so.
또한 사용자가 직접 개발한 ERP 펑션을 용이하게 타인과 공유할 수 있도록 하는 방법 및 시스템을 제공할 수 있다.In addition, it is possible to provide a method and a system for allowing a user to easily share the developed ERP function with others.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1a는 본 발명의 일 실시예에 따른 사용자 정의 ERP 펑션 생성 방법의 동작 환경을 나타내는 도면이다.
도 1b는 본 발명의 일 실시예에 따른 사용자 단말의 구성을 개략적으로 나타낸 블록도이다.
도 2는 본 발명의 일 실시예에 따른 사용자 단말이 사용자 정의 ERP 펑션을 생성하는 과정을 간략하게 도시한 도면이다.
도 3은 본 발명의 일 실시예에 따른 사용자 단말이 제공하는 통합 개발 환경의 UI의 일 예를 도시한 도면이다.
도 4는 프로젝트 윈도우의 일 예를 도시한 도면이다.
도 5는 데이터베이스 탐색 윈도우의 일 예를 도시한 도면이다.
도 6은 본 발명의 일 실시예에 따른 생성 시스템이 ERD 파일 편집 기능을 수행하는 과정을 개략적으로 도시한 흐름도이다.
도 7은 ERD 파일 편집 UI의 일 예를 도시한 도면이다.
도 8은 본 발명의 일 실시예에 따른 사용자 단말이 SQL 파일 편집 기능을 수행하는 과정을 개략적으로 도시한 흐름도이다.
도 9는 SQL 파일 편집 UI의 일 예를 도시한 도면이다.
도 10은 본 발명의 일 실시예에 따른 사용자 단말이 디자인 파일 편집 기능을 수행하는 과정을 개략적으로 도시한 흐름도이다.
도 11은 디자인 파일 편집 UI의 일 예를 도시한 도면이다.
도 12는 도구상자 윈도우의 일 예를 도시한 도면이다.
도 13은 속성 윈도우의 일 예를 도시한 도면이다.
도 14는 스크립트 윈도우의 일 예를 도시한 도면이다.
도 15a 내지 도 15e는 SQL 매핑 UI의 일 예를 도시한 도면이다.
도 16은 SQL과 컨트롤간의 매핑 과정을 개략적으로 나타내는 흐름도이다.
도 17은 본 발명의 일 실시예에 따른 사용자 정의 ERP 펑션 공유 시스템과 사용자 단말에 의해 사용자 정의 ERP 펑션이 공유되는 과정의 일 예를 도시한 도면이다.
도 18은 소스 패키지 업로드 UI의 일 예를 도시한 도면이다.
도 19는 소스 패키지 다운로드 UI의 일 예를 도시한 도면이다.BRIEF DESCRIPTION OF THE DRAWINGS A brief description of each drawing is provided to more fully understand the drawings recited in the description of the invention.
1A is a diagram illustrating an operation environment of a method for generating a user-defined ERP function according to an embodiment of the present invention.
1B is a block diagram schematically illustrating a configuration of a user terminal according to an embodiment of the present invention.
FIG. 2 is a view illustrating a process of generating a user-defined ERP function by a user terminal according to an exemplary embodiment of the present invention. Referring to FIG.
3 is a diagram illustrating an example of a UI of an integrated development environment provided by a user terminal according to an embodiment of the present invention.
4 is a diagram showing an example of a project window.
5 is a diagram showing an example of a database search window.
6 is a flowchart schematically illustrating a process of the ERD file editing function performed by the generating system according to the embodiment of the present invention.
7 is a diagram showing an example of an ERD file editing UI.
8 is a flowchart schematically illustrating a process of a user terminal performing an SQL file editing function according to an embodiment of the present invention.
9 is a diagram showing an example of an SQL file editing UI.
10 is a flowchart schematically illustrating a process of a user terminal performing a design file editing function according to an embodiment of the present invention.
11 is a diagram showing an example of a design file editing UI.
12 is a view showing an example of a tool box window.
13 is a diagram showing an example of an attribute window.
14 is a diagram showing an example of a script window.
15A to 15E are views showing an example of the SQL mapping UI.
16 is a flowchart schematically showing a mapping process between SQL and control.
FIG. 17 is a diagram illustrating an example of a process in which a user-defined ERP function is shared by a user-defined ERP function sharing system and a user terminal according to an embodiment of the present invention.
18 is a diagram showing an example of a source package upload UI.
19 is a diagram showing an example of a source package download UI.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.BRIEF DESCRIPTION OF THE DRAWINGS The present invention is capable of various modifications and various embodiments, and specific embodiments are illustrated in the drawings and described in detail in the detailed description. It is to be understood, however, that the invention is not to be limited to the specific embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.The terms first, second, etc. may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. The terminology used in this application is used only to describe a specific embodiment and is not intended to limit the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise.
본 명세서에 있어서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.In this specification, the terms "comprises" or "having" and the like refer to the presence of stated features, integers, steps, operations, elements, components, or combinations thereof, But do not preclude the presence or addition of features, numbers, steps, operations, components, parts, or combinations thereof.
또한, 본 명세서에 있어서는 어느 하나의 구성요소가 다른 구성요소로 데이터를 '전송'하는 경우에는 상기 구성요소는 상기 다른 구성요소로 직접 상기 데이터를 전송할 수도 있고, 적어도 하나의 또 다른 구성요소를 통하여 상기 데이터를 상기 다른 구성요소로 전송할 수도 있는 것을 의미한다. 반대로 어느 하나의 구성요소가 다른 구성요소로 데이터를 '직접 전송'하는 경우에는 상기 구성요소에서 다른 구성요소를 통하지 않고 상기 다른 구성요소로 상기 데이터가 전송되는 것을 의미한다.Also, in this specification, when any one element 'transmits' data to another element, the element may transmit the data directly to the other element, or may be transmitted through at least one other element And may transmit the data to the other component. Conversely, when one element 'directly transmits' data to another element, it means that the data is transmitted to the other element without passing through another element in the element.
이하, 첨부된 도면들을 참조하여 본 발명의 실시예들을 중심으로 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.Hereinafter, the present invention will be described in detail with reference to the embodiments of the present invention with reference to the accompanying drawings. Like reference symbols in the drawings denote like elements.
도 1a는 본 발명의 일 실시예에 따른 사용자 정의 ERP 펑션 생성 방법의 동작 환경을 나타내는 도면이다. 도1a를 참조하면 복수의 사용자 단말(100-1 내지 100-N) 및 사용자 정의 ERP 펑션 공유 시스템(200; 이하, '공유 시스템'이라고 함)은 유/무선 네트워크를 통해 연결되어 본 발명의 일 실시예에 따른 사용자 정의 ERP 펑션 생성 방법을 수행할 수 있다. 상기 복수의 사용자 단말(100-1 내지 100-N)은 상기 공유 시스템(200)을 통하여 ERP 사용자 정의 펑션에 상응하는 소스 패키지를 공유할 수 있다.1A is a diagram illustrating an operation environment of a method for generating a user-defined ERP function according to an embodiment of the present invention. Referring to FIG. 1A, a plurality of user terminals 100-1 to 100-N and a user-defined ERP function sharing system 200 (hereinafter referred to as a "shared system") are connected through a wired / wireless network, A user-defined ERP function generation method according to an embodiment can be performed. The plurality of user terminals 100-1 to 100-N may share a source package corresponding to an ERP user-defined function through the
예를 들어 각각의 사용자 단말(100-1 내지 100-N)은 사용자 정의 ERP 펑션에 상응하는 소스 패키지를 생성할 수 있으며 이를 타인과 공유하기 위하여 상기 공유 시스템(200)으로 업로드할 수 있다. 이하에서는 소스 패키지를 업로드하는 사용자 단말을 공유자 단말이라고 칭하기로 한다.For example, each user terminal 100-1 through 100-N may create a source package corresponding to a user-defined ERP function and upload it to the
업로드된 소스 패키지는 소정의 저장소(210)에 저장될 수 있다. 상기 저장소(210)는 상기 공유 시스템(200)으로 업로드되는 소스 패키지를 저장하는 장치일 수 있다. 상기 저장소(210)는 데이터베이스 혹은 메모리 장치일 수 있다. 상기 저장소(210)는 상기 공유 시스템(200)에 포함되는 요소일 수도 있으나 이에 한정되는 것은 아니며, 도 1a에 도시된 바와 같이 상기 공유 시스템(200)과 분리된 물리적 장치일 수 있다.The uploaded source package may be stored in a
한편, 각각의 사용자 단말(100-1 내지 100-N)는 상기 공유 시스템(200)의 저장소(210)에 저장된 복수의 소스 패키지 중 일부를 다운로드할 수 있다.On the other hand, each of the user terminals 100-1 to 100-N may download a part of a plurality of source packages stored in the
상기 사용자 단말(100)은 휴대전화, 위성전화, 무선전화, SIP(Session Initiation Protocol), WLL(Wireless Local Loop) 스테이션, 스마트폰, 타블렛 PC, PDA(Personal Digital Assistant) 등의 핸드헬드 장치, 데스크 탑이나 랩탑을 포함할 수 있다.The
상기 공유 시스템(200)은 본 발명의 기술적 사상을 구현하기 위해 필요한 하드웨어 리소스(resource) 및/또는 소프트웨어를 구비할 수 있으며, 반드시 하나의 물리적인 구성요소를 의미하거나 하나의 장치를 의미하는 것은 아니다. 즉, 상기 공유 시스템(200)은 본 발명의 기술적 사상을 구현하기 위해 구비되는 하드웨어 및/또는 소프트웨어의 논리적인 결합을 의미할 수 있으며, 필요한 경우에는 서로 이격된 장치에 설치되어 각각의 기능을 수행함으로써 본 발명의 기술적 사상을 구현하기 위한 논리적인 구성들의 집합으로 구현될 수도 있다. 또한, 상기 공유 시스템(200)은 본 발명의 기술적 사상을 구현하기 위한 각각의 기능 또는 역할별로 별도로 구현되는 구성들의 집합을 의미할 수도 있다.The
상기 공유 시스템(200)은 다수의 모듈의 형태로 구현될 수 있다. 예를 들면, 상기 공유 시스템(200)은 네트워크를 통해 각종 사용자 단말(100-1 내지 100-N)과 통신할 수 있는 적어도 하나의 통신 모듈이나 상기 공유 시스템(200)의 주요 기능을 수행하고 상기 공유 시스템(200)에 포함된 다른 구성요소의 기능 및/또는 리소스를 제어하고 할 수 있는 제어모듈, 각종 정보를 저장할 수 있는 저장모듈, 사용자와 인터페이싱할 수 있는 입출력모듈 등을 포함할 수 있다. 상기 공유 시스템(200)에 포함된 각종 모듈은 서로 다른 물리적 장치에 위치할 수도 있고, 동일한 물리적 장치에 위치할 수도 있다. The
본 명세서에서 모듈이라 함은, 본 발명의 기술적 사상을 수행하기 위한 하드웨어 및 상기 하드웨어를 구동하기 위한 소프트웨어의 기능적, 구조적 결합을 의미할 수 있다. 예컨대, 상기 모듈은 소정의 코드와 상기 소정의 코드가 수행되기 위한 하드웨어 리소스의 논리적인 단위를 의미할 수 있으며, 반드시 물리적으로 연결된 코드를 의미하거나, 한 종류의 하드웨어를 의미하는 것은 아님은 본 발명의 기술분야의 평균적 전문가에게는 용이하게 추론될 수 있다.Herein, a module may mean a functional and structural combination of hardware for carrying out the technical idea of the present invention and software for driving the hardware. For example, the module may mean a logical unit of a predetermined code and a hardware resource for executing the predetermined code, and it does not necessarily mean a physically connected code or a kind of hardware. Can be easily deduced to the average expert in the field of < / RTI >
도 1b는 본 발명의 일 실시예에 따른 사용자 단말(100)의 구성을 개략적으로 나타낸 블록도이다.도 1b를 참조하면, 상기 사용자 단말(100)은 사용자 정의 ERP 펑션 생성 모듈(110; 이하, '생성 모듈'이라고 함), 상기 사용자 정의 ERP 펑션 구동 모듈(120; 이하, '구동 모듈'이라고 함) 및 사용자 정의 ERP 펑션 공유 모듈(140; 이하, '공유 모듈'이라고 함)을 포함할 수 있다.1B is a block diagram schematically showing a configuration of a
경우에 따라서는 상기 사용자 단말(100)은 본 발명의 기술적 사상을 구현하기 위해 필요한 각종 데이터, 기업의 각종 정보를 저장하는 DB(130)을 더 포함할 수도 있다.In some cases, the
도 1b에서는 DB(130)가 상기 사용자 단말(100)에 포함되는 형태의 예를 도시하고 있으나, 다른 실시예에서는 이와 달리, DB(130)가 상기 사용자 단말(100)과 물리적으로 분리된 별도의 시스템의 형태로 구현될 수도 있다. 이 경우 상기 사용자 단말(100)과 DB(130)는 네트워크를 통해 연결되어 각종 데이터나 정보를 송수신할 수 있다. 또한 구현 예에 따라 상기 사용자 단말(100)는 상기 사용자 단말(100)에 포함되거나 네트워크를 통해 연결되는 복수의 DB와 연동되어 동작할 수도 있다.1B illustrates an example in which the
본 명세서에서 DB(DataBase)라 함은, 적어도 하나의 테이블로 구현될 수도 있으며, 상기 DB에 저장된 정보를 검색, 저장, 및 관리하기 위한 별도의 DBMS(Database Management System)을 더 포함하는 의미로 사용될 수도 있다. 또한, 링크드 리스트(linked-list), 트리(Tree), 관계형 DB의 형태 등 다양한 방식으로 구현될 수 있으며, 상기 DB(130)에 저장될 정보를 저장할 수 있는 모든 데이터 저장매체 및 데이터 구조를 포함하는 의미로 사용될 수 있다.In this specification, a DB (DataBase) may be implemented by at least one table, and may further include a separate DBMS (Database Management System) for searching, storing, and managing information stored in the DB It is possible. In addition, it may be implemented in various ways such as a linked-list, a tree, a relational DB, etc., and includes all data storage media and data structures capable of storing information to be stored in the
상기 생성 모듈(110)은 사용자 정의 ERP 펑션을 생성하거나 기 생성된 사용자 정의 ERP 펑션을 편집하는 기능을 수행할 수 있다. 상기 구동 모듈(120)은 상기 생성 모듈(110)에 의해 생성된 사용자 정의 ERP 펑션을 구동하여 사용자에게 상기 사용자 정의 ERP 펑션을 제공할 수 있다. 상기 공유모듈(140)은 상기 생성모듈(110)에 의해 생성된 사용자 정의 ERP 펑션을 상기 공유 시스템(200)으로 업로드 하여 타인에게 공유할 수 있으며, 타인에 의해 공유된 사용자 정의 ERP 펑션을 상기 공유 시스템(200)으로부터 다운로드할 수 있다.The
상기 생성 모듈(110), 구동 모듈(120) 및 상기 공유모듈(140) 은 각각 독립된 물리적 장치의 형태로 구현될 수 있다. 또는 구현 예에 따라 상기 모듈(110, 120, 140)은 하나의 물리적 장치로 구현될 수도 있다. 후자의 경우, 세 모듈(110, 120, 140)은 각각 논리적으로 구분된 별도의 소프트웨어로 구성될 수 있으며, 하나의 통합된 소프트웨어의 형태로 구현될 수도 있다.The
이하에서는 이해의 편의를 위하여 본 발명의 기술적 사상에 따른 사용자 정의 ERP 펑션의 생성 기능은 상기 생성 모듈(110)에 의해 수행되고, 생성된 사용자 정의 ERP 펑션을 구동하는 기능은 상기 구동 모듈(110)에 의해 수행되고, 사용자 정의 ERP 펑션 공유 기능은 상기 공유 모듈(140)에 의해 수행되는 것으로 설명하지만, 구현 예에 따라서는 도 1b과 는 달리, 상기 사용자 단말(100)은 본 발명의 기술적 사상에 따른 사용자 정의 ERP 펑션 생성 기능, 생성된 사용자 정의 ERP 펑션 구동 기능, 및 사용자 정의 ERP 펑션 공유 기능을 복합적으로 수행하는 하나의 시스템으로 구현될 수도 있다.Hereinafter, for the sake of convenience, the function of generating the user-defined ERP function according to the technical idea of the present invention is performed by the
사용자 정의 ERP 펑션은 ERP 시스템에 통합될 수 있으며, 그 자체로 독자적인 의미를 가지는 단위 기능일 수 있다. 사용자 정의 ERP 펑션은 DB(130)에 저장된 기업 정보를 관리, 조작, 이용, 분석하는 기능을 수행할 수 있다. 사용자가 이러한 기능을 수행할 수 있도록 커스터마이징된 UI(User Interface)를 제공할 수 있다. 즉 사용자는 사용자 정의 ERP 펑션이 제공하는 UI를 통해 DB(130)에 저장된 기업 정보를 관리, 조작, 이용, 분석할 수 있다.The user-defined ERP function can be integrated into the ERP system and can be a unit function that has its own meaning. The user-defined ERP function can manage, manipulate, use, and analyze enterprise information stored in the
사용자 정의 ERP 펑션의 예로 전표입력, 장부관리, 계정증감관리, 채권연령분석/관리, 결산관리, 제무제표, 자금/예산관리, 예산대비사용분석, 고정자산관리, 부가세신고관리, 금융계좌관리 등), 인사관리, 근태관리, 급여관리, 사회보험관리, 연말정산관리, 퇴직정산관리, 세무신고관리, 소득별전표처리, 일용직관리, 국내판매계획수립/관리, 견적/주문처리, 의뢰/검사관리, 출고/반품처리, 매출공헌도분석, 납품/배송관리, 임시출고/위탁관리, 매출정산, 전자세금계산서처리, 수금/채권관리, 채권연령분석, 수출계획수립/관리, 오더관리, 출고처리, 매출정산, 선적관리, 품의/발주처리, 선적/입고관리, 수입비용처리, 미착정산처리, 수입원가배부, MPS, 소요자재산출, 청구품의/발주, 입고의뢰/검사, 임시입고관리, 매입정산/회계, 지급/채무관리, 재고관리(LOT), 생산계획수립/관리, 자체생산관리, 혼함공정관리, 부산물/해체관리, 임가공생산관리, 투입지시관리, 외주생산관리, 서비스접수/처리, 서비스채권관리, 재무/손익분석, 손익/이익분석, 주요자금분석, 물류/생선요약분석, 특성별매출분석, 계절/분기별생산실적분석, 특성별근태분석, 급여/상여시뮬레이션, 계약관리, 현장관리, 도급/기성관리, 작업일보, 전도금/미지급관리, 노무장비관리, 마감정산관리, 노무신고관리, 외주기성관리, 원가손익관리 등을 들 수 있으나, 이 외에도 다양한 기능이 있을 수 있음은 물론이다.Examples of user-defined ERP functions are: input of documents, bookkeeping, account change management, bond age analysis / management, settlement management, statement of accounts, fund / budget management, budget use analysis, fixed asset management, , Personnel management, time and attendance management, salary management, social insurance management, year-end settlement management, retirement settlement management, tax report management, income slip processing, daily staff management, domestic sales planning establishment / management, Sales management, sales / settlement management, sales tax settlement, electronic tax bill processing, collection / bond management, bond age analysis, export planning establishment / management, order management, It is also possible to calculate the amount of goods to be delivered to the buyer through the process of sales settlement, shipment management, goods / order processing, shipment / receipt management, import cost processing, Accounting, Payments / Debt Management, Inventory Control (LOT) , Production planning / management, own production management, mixed process management, byproduct / disassembly management, production control of production, input instruction management, outsourced production management, service reception / processing, service bond management, financial / profit analysis, profit / profit analysis , Analysis of major funds, analysis of logistics / fish, analysis of sales by characteristics, analysis of seasonal and quarterly production results, analysis of characteristics by characteristics, salary / bonus simulation, contract management, field management, It is also possible to have a variety of other functions, such as unpaid management, labor equipment management, finishing settlement management, labor report management, outsourced management, and cost benefit management.
도 1b에 도시된 바와 같이, 상기 사용자 단말(100)은 상기 공유 시스템(200)과 네트워크를 통해 연결되어 본 발명의 기술적 사상을 구현하는데 필요한 각종 정보, 데이터, 신호 및/또는 메시지를 송수신할 수 있다.As shown in FIG. 1B, the
상기 사용자 단말(100)은 사용자 정의 ERP 펑션 생성 기능을 통해 생성된 결과물을 상기 공유 시스템(200)으로 전송할 수 있으며, 상기 공유 시스템(200)은 다른 사용자들이 원하는 경우 이를 제공(전송)할 수 있다. 즉, 상기 공유 시스템(200)은 각각의 사용자들이 업로드한 사용자 정의 ERP 펑션을 다른 사용자와 공유할 수 있도록 하는 역할을 수행할 수 있다.The
상기 ERP 펑션 생성 기능을 통해 생성되는 결과물은 ERP 파일, 적어도 하나의 SQL 파일, 디자인 파일을 포함할 수 있으며, 실시예에 따라서는 리포트 파일을 더 포함할 수도 있다.The result generated through the ERP function generation function may include an ERP file, at least one SQL file, and a design file, and may further include a report file according to an embodiment.
상기 ERD 파일은, DB(130)에 저장되는 테이블의 속성 및 각 테이블 간의 관계를 모델링한 정보를 저장하는 파일일 수 있다.The ERD file may be a file that stores information on attributes of a table stored in the
ERD(Entity Relationship Diagram)란 가장 데이터 모델링을 하는 기법이며, 이 기법은 간단한 도형(사각형, 타원형, 다이아몬드 형 등)을 사용해 데이터의 구조와 관계에 대해 표현하며 데이터 개체 간의 관계 및 속성을 도형화하는 도구로서 가장 보편적으로 사용된다. 사용자는 ERD를 이용하여 데이터베이스의 관계를 도식으로 표현함으로써 이를 시각적으로 쉽게 이해할 수 있다. ERD의 구성요소로는 개체(Entity), 관계(Relationship), 속성(Attribute)이 있다. 개체는 데이터베이스에 저장할 정보의 주체 혹은 대상으로 분리된 물체 하나를 표현하는 것이다. 데이터베이스 모델링에서는 데이터베이스에 저장된 하나의 테이블이 하나의 개체일 수 있다. 관계는 두 개 이상의 개체들이 어떻게 서로 연관되어 있는지 나타낸다. 속성은 개체 또는 관계에 대한 특성을 기술하는 데이터 항목이며, 각 개체를 유일하게 식별할 수 있는 속성을 키 속성이라 한다.ERD (Entity Relationship Diagram) is the most data modeling technique. It uses simple shapes (rectangle, ellipse, diamond type, etc.) to express the structure and relationship of data. It is most commonly used as a tool. The user can visually understand the relationship of the database by using the ERD. The components of an ERD are Entity, Relationship, and Attribute. An entity is a representation of a separate entity as the subject or object of information to be stored in the database. In database modeling, a table stored in a database can be an object. A relationship indicates how two or more entities are related to each other. An attribute is a data item describing a characteristic of an entity or a relation. An attribute that uniquely identifies each entity is called a key property.
상기 SQL 파일은, 상기 DB(130)를 조작하기 위한 SQL(Structured Query Language) 퀴리를 저장하는 파일일 수 있다. 각각의 SQL 파일은 1 이상의 SQL 쿼리를 저장할 수 있다.The SQL file may be a file storing Structured Query Language (SQL) queries for manipulating the
SQL은 데이터베이스 관리 시스템(DBMS)의 데이터를 관리하기 위해 설계된 특수 목적의 프로그래밍 언어로서, 데이터베이스에 저장된 자료의 검색과 관리, 데이터베이스 스키마 생성과 수정, 데이터베이스 객체 접근 조정 관리 등을 하기 위한 쿼리를 작성하는데 이용될 수 있다. SQL 명령어는 각 기능에 따라 데이터조작(DML), 데이터정의(DDL), 데이터제어(DCL) 3가지로 분류될 수 있다. 데이터 조작(DML)은 데이터베이스에 있는 데이터를 변형하거나 검색하기 위하여 사용되는 명령어로 INSERT(데이터 추가), UPDATE(데이터 업데이트), DELETE(데이터 삭제), SELECT(데이터 검색) 등이 있다. 데이터 정의(DDL)는 데이터를 담고 있는 테이블 등의 구조를 변형하기 위하여 사용되는 명령어로CREATE(테이블 등 생성), DROP(테이블 등 제거), ALTER(테이블 등 구조 변경) 등이 있다. 데이터 제어(DCL)는 데이터베이스에 접근할 수 있는 권한을 부여하거나 철회하는 명령어로GRANT(사용자권한 부여), REVOKE(사용자권한 취소) 등이 있다.SQL is a special purpose programming language designed to manage data in a database management system (DBMS). It is used to create queries for searching and managing data stored in a database, creating and modifying database schemas, and managing database object access Can be used. SQL commands can be classified into three types according to their functions: data manipulation (DML), data definition (DDL), and data control (DCL). Data manipulation (DML) is a command used to transform or retrieve data in a database, such as INSERT (add data), UPDATE (update data), DELETE (delete data), SELECT (retrieve data). Data Definition (DDL) is a command that is used to transform a structure such as a table that contains data, such as CREATE (Create Table), DROP (Remove Table), and ALTER (Change Table, etc.). Data control (DCL) is a command that grants or revokes the authority to access the database, such as GRANT (user authorization) and REVOKE (user revocation).
상기 디자인 파일은 사용자 정의 ERP 펑션의 화면을 구성하는 적어도 하나의 컨트롤의 속성에 관한 정보를 저장하는 파일일 수 있다. 여기서 컨트롤은 정보를 표시하거나 사용자로부터 정보를 입력을 받는 등 사용자와의 인터렉션을 수행할 수 있는 UI 오브젝트일 수 있다.The design file may be a file that stores information about attributes of at least one control that constitutes a screen of a user-defined ERP function. Here, the control may be a UI object capable of performing an interaction with a user such as displaying information or receiving information from a user.
한편, 상기 사용자 정의 ERP 펑션의 화면을 구성하는 컨트롤 중 적어도 일부는 상기 적어도 하나의 SQL 파일에 포함된 특정 쿼리에 매핑되는 컨트롤일 수 있으며, 이하에서는 이러한 컨트롤을 그리드 컨트롤이라고 칭하기로 한다.At least a part of the controls constituting the screen of the user-defined ERP function may be a control mapped to a specific query included in the at least one SQL file. Hereinafter, such a control will be referred to as a grid control.
상기 리포트 파일은 리포트 전자문서를 구성하는 복수의 컨트롤의 속성에 관한 정보 및 각 컨트롤에 바인딩된 데이터에 관한 정보를 포함할 수 있다.The report file may include information on attributes of a plurality of controls constituting a report electronic document and information on data bound to each control.
도 2는 본 발명의 일 실시예에 따른 생성 모듈(110)이 사용자 정의 ERP 펑션을 생성하는 과정을 간략하게 도시한 도면이다.FIG. 2 is a view illustrating a process of generating a user-defined ERP function by the
도 2를 참조하면, 상기 생성 모듈(110)은 ERD 파일에 상응하는 UI 오브젝트, 적어도 하나의 SQL 파일 각각에 상응하는 UI 오브젝트 및 디자인 파일에 상응하는 UI 오브젝트를 포함하는 컨테이너 UI를 제공할 수 있으며(S110), 사용자는 컨테이너 UI에 포함된 UI 오브젝트 중 어느 하나를 선택할 수 있다(S120).2, the
상기 ERD 파일에 상응하는 UI 오브젝트가 선택되는 경우, 상기 생성 모듈(110)은 상기 ERD 파일을 편집하기 위한 ERD 파일 편집 기능을 제공할 수 있다(S130).If a UI object corresponding to the ERD file is selected, the
상기 SQL 파일에 상응하는 UI 오브젝트가 선택되는 경우, 상기 생성 모듈(110)은 상기 SQL 파일을 편집하기 위한 SQL 파일 편집 기능을 제공할 수 있다(S140).If a UI object corresponding to the SQL file is selected, the
상기 디자인 파일에 상응하는 UI 오브젝트가 선택되는 경우, 상기 생성 모듈(110)은 상기 디자인 파일을 편집하기 위한 ERD 파일 편집 기능을 제공할 수 있다(S150).If a UI object corresponding to the design file is selected, the
한편, 상기 생성 모듈(110)은 사용자가 사용자 지정 ERP 펑션을 생성하고 커스터마이징할 수 있도록 통합 개발 환경을 제공할 수 있다. 제공된 통합 개발 환경을 이용하여 사용자는 사용자 지정 ERP 펑션을 구동하는데 필요한 ERD 파일, SQL 파일, 디자인 파일, 리포트 파일을 생성하거나 편집할 수 있다.Meanwhile, the
사용자는 상기 생성 모듈(110)을 통하여 복수의 사용자 지정 ERP 펑션을 생성할 수 있다, 이때 복수의 사용자 지정 ERP 펑션은 각각 그에 상응하는 하나의 프로젝트로 관리될 수 있다. 각각의 프로젝트는 적어도 하나의 SQL 파일 및 디자인 파일을 포함하는 패키지 혹은 컨테이너일 수 있다.A user can create a plurality of user-specified ERP functions through the
복수의 프로젝트가 존재하는 경우에도 ERD 파일은 1개일 수 있다. 이 경우 상기 복수의 프로젝트에 의해 생성되는 복수의 사용자 지정 ERP 펑션은 1개의 공통된 ERD 파일을 이용할 수 있다.Even if there are multiple projects, there can be only one ERD file. In this case, a plurality of user-specified ERP functions generated by the plurality of projects can use one common ERD file.
이하에서는 사용자가 통합 개발환경을 통해 사용자 지정 ERP 펑션을 생성/편집하는 방법에 관하여 보다 상세하게 설명하기로 한다.Hereinafter, a method for a user to create / edit a custom ERP function through an integrated development environment will be described in detail.
도 3은 상기 생성 모듈(110)이 제공하는 통합 개발 환경의 UI의 일 예를 도시한 도면이다.3 is a diagram illustrating an example of a UI of an integrated development environment provided by the
도 3을 참조하면, 상기 통합 개발 환경 UI(1000)는 메뉴(1100), 프로젝트 윈도우(1200), 데이터베이스 탐색 윈도우(1300), 편집기 윈도우(1400), 도구상자 윈도우(1500), 속성 윈도우(1600), 스크립트 윈도우(1700)을 포함할 수 있다.3, the integrated
메뉴(1100)는 복수의 아이콘을 포함할 수 있으며, 각각의 아이콘은 새 프로젝트 생성, 파일 열기, 파일 저장, 복사, 붙이기를 비롯한 사용자가 자주 사용하는 기능을 실행하기 위한 UI 오브젝트일 수 있다.The
상기 프로젝트 윈도우(1200)는 ERD 파일에 상응하는 UI 오브젝트(예를 들면, 아이콘), 적어도 하나의 SQL 파일 각각에 상응하는 UI 오브젝트 및 디자인 파일에 상응하는 UI 오브젝트를 포함하는 컨테이너 UI일 수 있다.The
도 4는 프로젝트 윈도우(1200)의 일 예를 도시한 도면이다.4 is a diagram showing an example of a
도 4에 도시된 바와 같이, 상기 프로젝트 윈도우(1200)에는 ERD 파일에 상응하는 UI 오브젝트(1211)가 표시될 수 있으며, 사용자에 의해 상기 ERD 파일에 상응하는 UI 오브젝트(1211)가 선택되는 경우(예를 들면, 해당 UI 오브젝트가 클릭, 더블클릭, 터치되는 경우 등) 상기 생성 모듈(110)은 상기 ERD 파일을 편집하기 위한 ERD 파일 편집 기능을 제공할 수 있다. 상기 생성 모듈(110)은 ERD 파일 편집 기능을 제공하기 위하여 상기 편집기 윈도우(1400)에 ERD 파일을 편집하기 위한 UI를 디스플레이할 수 있으며 사용자는 편집기 윈도우(1400)에 표시된 UI 상에서 ERD 파일을 편집할 수 있다.4, a
상기 ERD 파일에 상응하는 UI 오브젝트(1211)는 ERD 컨테이너 UI 오브젝트(1210)의 하위레벨로 표시될 수 있다. 사용자는 ERD 컨테이너 UI 오브젝트(1210)와 소정의 방식으로 상호작용하여 새로운 ERD 파일을 생성할 수 있으며, 새로 생성된 ERD 파일에 상응하는 UI 오브젝트는 ERD 컨테이너 UI 오브젝트(1210)의 하위레벨로 추가될 수 있다. 이때 새로 생성된 ERD 파일은 아무런 정보도 포함하지 않는 빈(blank) 파일일 수 있다.The
상기 프로젝트 윈도우(1200)에는 적어도 하나의 프로젝트 각각에 상응하는 UI 오브젝트(1201, 1202, 1203)가 표시될 수 있으며, 각각의 프로젝트는 서로 다른 사용자 정의 ERP 펑션에 대응될 수 있다.In the
상술한 바와 같이 각 프로젝트는 적어도 하나의 SQL 파일 및 디자인 파일, 적어도 하나의 리포트 파일을 포함하는 컨테이너일 수 있으며, 상기 프로젝트 윈도우(1200)에는 각각의 프로젝트(예를 들면, 1202)에 속하는 적어도 하나의 SQL 파일 각각에 상응하는 UI 오브젝트(1221, 1222), 적어도 하나의 리포트 파일 각각에 상응하는 UI 오브젝트(1231), 디자인 파일에 상응하는 UI 오브젝트(1241)가 표시될 수 있다.As described above, each project may be a container including at least one SQL file and a design file, at least one report file, and the
적어도 하나의 SQL 파일 각각에 상응하는 UI 오브젝트(1221, 1222)는 SQL 컨테이너 UI 오브젝트(1220)의 하위레벨로 표시될 수 있다. 사용자는 SQL 컨테이너 UI 오브젝트(1220)와 소정의 방식으로 상호작용하여 새로운 SQL 파일을 생성할 수 있으며, 새로 생성된 SQL 파일에 상응하는 UI 오브젝트는 SQL 컨테이너 UI 오브젝트(1220)의 하위레벨로 추가될 수 있다. 이때 새로 생성된 SQL 파일은 아무런 정보도 포함하지 않는 빈 파일일 수 있다.UI objects 1221 and 1222 corresponding to at least one SQL file may be displayed at a lower level of the SQL
적어도 하나의 리포트 파일 각각에 상응하는 UI 오브젝트(1231)는 리포트 컨테이너 UI 오브젝트(1230)의 하위레벨로 표시될 수 있다. 사용자는 리포트 컨테이너 UI 오브젝트(1230)와 소정의 방식으로 상호작용하여 새로운 리포트 파일을 생성할 수 있으며, 새로 생성된 리포트 파일에 상응하는 UI 오브젝트는 리포트 컨테이너 UI 오브젝트(1230)의 하위레벨로 추가될 수 있다. 이때 새로 생성된 리포트 파일은 아무런 정보도 포함하지 않는 빈 파일일 수 있다.A
한편, 사용자에 의해 상기 적어도 하나의 SQL 파일 중 어느 하나에 상응하는 UI 오브젝트(예를 들면, 1221)가 선택되는 경우, 상기 생성 모듈(110)은 선택된 UI 오브젝트(1221)에 상응하는 SQL 파일을 편집하기 위한 SQL 파일 편집 기능을 제공할 수 있다. 상기 생성 모듈(110)은 SQL 파일 편집 기능을 제공하기 위하여 상기 편집기 윈도우(1400)에 SQL 파일을 편집하기 위한 UI를 디스플레이할 수 있으며 사용자는 편집기 윈도우(1400)에 표시된 UI 상에서 SQL 파일을 편집할 수 있다.Meanwhile, when a UI object (for example, 1221) corresponding to any one of the at least one SQL file is selected by the user, the
또한 사용자에 의해 상기 적어도 하나의 리포트 파일 중 어느 하나(예를 들어 1231)에 상응하는 UI 오브젝트가 선택되는 경우, 상기 생성 모듈(110)은 리포트 전자문서를 편집하기 위한 리포트 편집 UI를 제공할 수 있다. 상기 생성 모듈(110)은 리포트 파일 편집 기능을 제공하기 위하여 상기 편집기 윈도우(1400)에 리포트 파일을 편집하기 위한 UI를 디스플레이할 수 있으며 사용자는 편집기 윈도우(1400)에 표시된 UI 상에서 리포트 파일을 편집할 수 있다.Also, when a UI object corresponding to one of the at least one report files (for example, 1231) is selected by the user, the
또한 사용자에 의해 디자인 파일에 상응하는 UI 오브젝트가(1241)가 선택되는 경우, 상기 생성 모듈(110)은 상기 디자인 파일을 편집하기 위한 디자인 파일 편집 기능을 제공할 수 있다. 상기 생성 모듈(110)은 디자인 파일 편집 기능을 제공하기 위하여 상기 편집기 윈도우(1400)에 디자인 파일을 편집하기 위한 UI를 디스플레이할 수 있으며 사용자는 편집기 윈도우(1400)에 표시된 UI 상에서 디자인 파일을 편집할 수 있다.Also, when a
한편, 사용자는 특정 프로젝트에 상응하는 UI 오브젝트(예를 들면, 1202)와 소정의 방식으로 상호작용하여 새로운 디자인 파일을 생성할 수 있으며, 새로 생성된 디자인 파일에 상응하는 UI 오브젝트는 상기 프로젝트에 상응하는 UI 오브젝트(1202)의 하위레벨로 추가될 수 있다. 이때 새로 생성된 디자인 파일은 아무런 정보도 포함하지 않는 빈 파일일 수 있다.Meanwhile, the user can interact with the UI object corresponding to the specific project (for example, 1202) in a predetermined manner to generate a new design file, and the UI object corresponding to the newly created design file corresponds to the project The
위에서는 상기 생성 모듈(110)이 통합 개발 환경 UI(1000)에 포함된 편집기 윈도우(1400)상에 각각의 파일 편집 기능을 제공하는 예에 관하여 설명하였으나, 실시예에 따라서 상기 생성 모듈(110)은 각각의 파일 편집 기능에 상응하는 별도의 애플리케이션을 실행할 수 있으며, 이 경우 사용자는 실행된 애플리케이션 상에서 각각의 파일을 편집할 수도 있다.Although the above description has been made with respect to an example in which the
도 5는 데이터베이스 탐색 윈도우(1300)의 일 예를 도시한 도면이다.5 is a diagram showing an example of the
도 5에 도시된 바와같이, 데이터베이스 탐색 윈도우(1300)에는 상기 사용자 단말(100) 또는 상기 생성 모듈(110)과 연결된 DB(130)에 상응하는 UI 오브젝트(1310, 1320)를 포함할 수 있다.As shown in FIG. 5, the
상기 UI 오브젝트(예를 들어, 1310)는 하위레벨로 적어도 하나의 스키마를 나타내는 UI 오브젝트(1311 내지 1313)를 가질 수 있다. 스키마는 데이터베이스에서 자료의 구조, 자료의 표현 방법, 자료 간의 관계를 형식 언어로 정의한 구조 또는 하나의 네임스페이스로서, 테이블, 저장 프로시저 등 개체들을 포함하는 컨테이너를 의미할 수 있다. 따라서 특정 스키마를 나타내는 UI 오브젝트의 하위레벨에 해당 스키마에 포함된 테이블이나 저장 프로시저 등 각 개체에 대응되는 UI 오브젝트를 가질 수 있다.The UI object (e.g., 1310) may have UI objects (1311 to 1313) indicating at least one schema at a lower level. A schema can be a container that contains objects such as tables, stored procedures, and the like in a database, a structure that defines the structure of data, a method of expressing data, a structure that defines the relationship between data in a format language, or a namespace. Therefore, a UI object corresponding to each object such as a table or a stored procedure included in the corresponding schema at a lower level of the UI object indicating a specific schema can be provided.
테이블은 각 데이터들을 저장하는 항목인 필드들로 구성된 데이터의 집합체를 의미하며, 하나의 데이터베이스는 여러 개의 테이블로 구성될 수 있다. 저장 프로시저 또는 스토어드 프로시저(stored procedure)는 일련의 쿼리를 마치 하나의 함수처럼 실행하기 위한 쿼리의 집합이며, 데이터베이스에 대한 일련의 작업을 정리한 절차를 데이터베이스 관리 시스템에 저장한 것으로, 영구저장모듈(Persistent Storage Module)이라고도 불린다.A table means a collection of data composed of fields that are items for storing each data, and one database can be composed of several tables. A stored procedure or a stored procedure is a set of queries for executing a series of queries as if they were a single function. It stores the procedures for organizing a series of operations on the database in a database management system. Also called a module (Persistent Storage Module).
편집기 윈도우(1400)에는 사용자가 선택한 파일의 종류에 따라 그에 상응하는 편집 UI가 표시될 수 있다.In the
도 6은 상기 생성 모듈(110)이 ERD 파일 편집 기능을 수행하는 과정을 개략적으로 도시한 흐름도이다.FIG. 6 is a flowchart schematically illustrating a process of the ERD file editing function of the
도 6을 참조하면, 사용자가 ERD 파일에 상응하는 오브젝트를 선택한 경우, 상기 생성 모듈(110)은 ERD 파일 편집 UI를 제공할 수 있다(S131). 일 실시예에서, 상기 생성 모듈(110)은 상기 편집기 윈도우(1400)에 ERD 파일 편집 UI를 표시할 수 있다. 이때 상기 ERD 파일 편집 UI는 데이터베이스 테이블의 구조를 나타내는 테이블 구조 UI 오브젝트 및 테이블 간의 관계를 나타내는 관계 UI 오브젝트를 포함할 수 있다.Referring to FIG. 6, if the user selects an object corresponding to the ERD file, the
이후 상기 생성 모듈(110)은 상기 ERD 파일 편집 UI 상에서 사용자의 입력에 따라 테이블 스키마 및 테이블 스키마간의 관계를 변경할 수 있으며(S132). 변경이 완료된 경우, 변경된 테이블 구조 및 테이블간의 관계를 상기 ERD 파일에 반영할 수 있다(S133)Then, the
이하에서는 도 7을 참조하여, 도 6의 과정을 보다 상세히 설명한다.Hereinafter, the process of FIG. 6 will be described in more detail with reference to FIG.
상기 생성 모듈(110)은 사용자가 선택한 ERD 파일 오브젝트에 상응하는 ERD 파일의 내용에 기초하여 상기 편집기 윈도우(1400)를 통해 ERD 파일 편집 UI(2000)를 제공할 수 있다.The
도 7은 ERD 파일 편집 UI(2000)의 일 예를 도시한 도면이다.7 is a diagram showing an example of the ERD
도 7에 도시된 바와 같이 ERD 파일 편집 UI(2000)는 신규 테이블 생성하기 위한 버튼, 신규 관계 생성 버튼, 변경된 사항을 DB(130)에 반영하기 위한 버튼을 포함하는 툴바UI(2100)를 포함할 수 있다. 또한 상기 ERD 파일 편집 UI(2000)는 데이터베이스 테이블의 구조를 나타내는 테이블 구조 UI 오브젝트(예를 들어, 2210, 2220, 2230)) 및 테이블 간의 관계를 나타내는 관계 UI 오브젝트(예를 들어, 2310, 2320)를 포함할 수 있다.7, the ERD
테이블 구조 UI 오브젝트(2210, 2220, 2230)에는 테이블에 포함된 각각의 컬럼 정보가 표시될 수 있다. The table structure UI objects 2210, 2220, and 2230 may display the respective column information included in the table.
관계 UI 오브젝트(2310, 2320)는 두 개의 테이블 구조 UI 오브젝트(2100, 2110)를 연결하는 선의 형태일 수 있다. 관계 UI 오브젝트는 두 테이블 간의 관계가 식별관계 혹은 비식별관계인가에 따라 서로 다른 형태(예를 들면, 실선이나 점선)로 표현될 수 있다.The relationship UI objects 2310 and 2320 may be in the form of lines connecting the two table
상기 생성 모듈(110)은 상기 ERD 파일 편집 UI 상에서 사용자의 입력에 따라 테이블 구조 및 테이블 구조간의 관계를 변경할 수 있다.The
사용자는 ERD 파일 편집 UI(2000) 상에 신규 테이블 UI 오브젝트를 생성할 수 있다.The user can create a new table UI object on the ERD
사용자는 DB(130)에 기 생성되어 있는 테이블에 상응하는 UI 오브젝트를 생성할 수 있다. 이를 위하여 사용자는 상술한 데이터베이스 탐색 창(1300)에 표시된 특정 테이블에 상응하는 UI 오브젝트를 선택하거나, 상기 ERD 파일 편집 UI(2000) 상으로 드래그 앤 드랍하는 등의 명령을 입력할 수 있으며, 그에 대한 응답으로 상기 생성 모듈(110)은 상기 ERD 파일 편집 UI(2000)에 해당 테이블에 상응하는 신규 테이블 UI 오브젝트를 생성할 수 있다. 또는 사용자는 상기 ERD 파일 편집 UI(2000)가 제공하는 신규 테이블 생성UI를 선택하여 새로운 테이블에 상응하는 UI 오브젝트를 생성할 수도 있다.The user can create a UI object corresponding to the table created in the
한편, 사용자는 ERD 파일 편집 UI(2000) 상에 존재하는 테이블 UI 오브젝트를 삭제하거나 해당 테이블 UI 오브젝트를 통하여 테이블의 구조를 변경(예를 들어, 컬럼의 추가/삭제/변경 혹은 테이블의 속성 변경)할 수도 있다.Meanwhile, the user deletes the table UI object existing on the ERD
또한 사용자는 ERD 파일 편집 UI(2000) 상에 존재하는 테이블 UI 오브젝트간의 관계를 나타내는 새로운 관계 UI 오브젝트를 생성할 수 있다. 예를 들어 사용자는 상기 ERD 파일 편집 UI(2000)가 제공하는 신규 관계 생성을 위한 버튼을 선택한 후, 관계를 맺고자 하는 두 테이블을 선택함으로써 선택한 두 테이블간의 관계를 나타내는 새로운 관계 UI 오브젝트를 생성할 수 있다.The user can also create a new relationship UI object that indicates the relationship between the table UI objects existing on the ERD
한편, 사용자는 ERD 파일 편집 UI(2000) 상에 존재하는 관계 UI 오브젝트를 삭제하거나, 관계 UI 오브젝트를 통하여 관계 정보를 변경할 수도 있다.On the other hand, the user can delete the related UI object existing on the ERD
한편 위와 같은 과정을 통해 데이터베이스 모델링이 변경 후, 예를 들어 사용자가 소정의 저장 버튼을 누른 경우, 상기 생성 모듈(110)은 변경된 테이블 스키마 및 테이블 스키마간의 관계를 상기 ERD 파일에 반영할 수 있다.After the database modeling is changed through the above process, for example, when the user presses a predetermined storage button, the
또한 상기 생성 모듈(110) 변경된 테이블 스키마 및 테이블 스키마간의 관계 DB(130)에 반영하여 DB(130)의 테이블 구조를 변경하거나 새로운 테이블을 추가하거나 기존의 테이블을 삭제할 수 있다.In addition, the
도 8은 상기 생성 모듈(110)이 SQL 파일 편집 기능을 수행하는 과정을 개략적으로 도시한 흐름도이다.FIG. 8 is a flowchart schematically illustrating a process of the
도 8을 참조하면, 사용자가 SQL 파일에 상응하는 오브젝트를 선택한 경우, 상기 생성 모듈(110)은 SQL 편집 UI를 제공할 수 있다(S141). 일 실시예에서, 상기 생성 모듈(110)은 상기 편집기 윈도우(1400)에 SQL 편집 UI를 표시할 수 있다.Referring to FIG. 8, if the user selects an object corresponding to the SQL file, the
이후 상기 생성 모듈(110)은 상기 SQL 편집 UI 상에서 사용자의 입력에 따라 SQL 쿼리를 변경할 수 있으며(S142). 변경이 완료된 경우, 변경된 쿼리를 상기 SQL 파일에 반영할 수 있다(S143).Then, the
이하에서는 도 9를 참조하여, 도 8의 과정을 보다 상세히 설명한다.Hereinafter, the process of FIG. 8 will be described in more detail with reference to FIG.
사용자가 SQL 파일에 상응하는 오브젝트를 선택한 경우, 상기 편집기 윈도우(1400)에는 SQL 파일 편집 UI(3000)가 표시될 수 있다. 즉, 상기 생성 모듈(110)은 상기 편집기 윈도우(1400)를 통해 사용자가 선택한 SQL 파일 오브젝트에 상응하는 SQL 파일의 내용이 표시된 SQL 파일 편집 UI(3000)를 제공할 수 있다.If the user selects an object corresponding to the SQL file, the SQL
도 9는 SQL 파일 편집 UI(3000)의 일 예를 도시한 도면이다.9 is a diagram showing an example of the SQL
도 9에 도시된 바와 같이, 상기 SQL 파일 편집 UI(3000)는 연결할 DB를 선택하기 위한 UI, 해당 DB와 연결을 수행하기 위한 버튼, 연결을 해제하기 위한 버튼, 작성된 쿼리가 Insert 또는 Update인지를 선택하기 위한 UI를 포함하는 툴바UI(3100)를 포함할 수 있다.9, the SQL
또한 상기 SQL 파일 편집 UI(3000)는 쿼리를 작성하기 위한 편집 UI(3200)를 포함할 수 있으며, 사용자는 편집 UI(3200) 상에서 SQL 쿼리를 작성하거나 편집할 수 있다. 사용자는 쿼리 작성 시 파라미터 변수명을 포함할 수 있다. 예를 들어 파라미터 변수명은 '@변수명'의 형태일 수 있다. 파라미터 변수명은 아래에서 설명할 펑션 화면 편집 UI상의 컨트롤과 쿼리를 연동하는데 이용될 수 있다. 그러기 위하여 디자인 파일에 포함된 컨트롤 중 적어도 일부는 상기 파라미터 변수명과 매핑될 수 있다. 한편, 추후 상기 SQL 쿼리가 실행될 경우, 상기 파라미터 변수명에 매핑된 컨트롤에 입력된 데이터는 상기 SQL 쿼리에 입력에 입력될 수 있다. 보다 정확하게는 상기 SQL 쿼리의 파라미터 변수명에 상기 파라미터 변수명에 매핑된 컨트롤에 입력된 데이터가 할당될 수 있다.In addition, the SQL
상기 툴바UI(3200)는 작성된 쿼리를 실행하기 위한 버튼을 포함할 수 있으며, 상기 SQL 파일 편집UI(3000)은 그 실행 결과가 표시되는 결과 표시 UI(3300)를 포함할 수도 있다. 결과 표시 UI (3300)상에는 테이블의 구조 및 쿼리에 의해 조회되는 데이터가 표시될 수 있다.The
한편 위와 같은 과정을 통해 SQL 쿼리가 변경이 완료되면, 예를 들어 사용자가 소정의 저장 버튼을 누른 경우, 상기 생성 모듈(110)은 변경된 SQL 쿼리를 상기 SQL 파일에 반영할 수 있다.Meanwhile, when the SQL query is changed through the above process, for example, when the user presses a predetermined storage button, the
도 10은 상기 생성 모듈(110)이 디자인 파일 편집 기능을 수행하는 과정을 개략적으로 도시한 흐름도이다.10 is a flowchart schematically illustrating a process of the
도 10을 참조하면, 사용자가 디자인 파일에 상응하는 오브젝트를 선택한 경우, 상기 생성 모듈(110)은 디자인 파일 편집 UI를 제공할 수 있다(S151). 일 실시예에서, 상기 생성 모듈(110)은 상기 편집기 윈도우(1400)에 디자인 파일 편집 UI를 표시할 수 있다.Referring to FIG. 10, when the user selects an object corresponding to the design file, the
이후 상기 생성 모듈(110)은 상기 디자인 파일 편집 UI 상에서 사용자의 입력에 따라 상기 사용자 정의 ERP 펑션의 화면을 구성하는 컨트롤 및 각 컨트롤의 속성을 변경할 수 있다(S152). In step S152, the
이후 상기 생성 모듈(110)은 변경된 상기 사용자 정의 ERP 펑션의 화면을 구성하는 컨트롤, 변경된 각 컨트롤의 속성, 변경된 컨트롤과 쿼리간의 매핑 정보를 상기 디자인 파일에 반영할 수 있다(S153).In step S153, the
이하에서는 도 11 내지 도 14를 참조하여, 도 10의 과정을 보다 상세히 설명한다.Hereinafter, the process of FIG. 10 will be described in more detail with reference to FIGS. 11 to 14. FIG.
사용자가 디자인 파일에 상응하는 오브젝트를 선택한 경우, 상기 편집기 윈도우(1400)에는 디자인 파일 편집 UI가 표시될 수 있다. 즉, 상기 생성 모듈(110)은 사용자가 선택한 디자인 파일 오브젝트에 상응하는 디자인 파일에 기초하여 상기 편집기 윈도우(1400)를 통해 디자인 파일 편집 UI를 제공할 수 있다.If the user selects an object corresponding to the design file, a design file editing UI may be displayed in the
도 11은 디자인 파일 편집 UI(4000)의 일 예를 도시한 도면이다.11 is a diagram showing an example of the design
상기 디자인 파일 편집 UI(4000)에는 디자인 파일에 기 정의되어 있는 각종 컨트롤(예를 들어, 4010 내지 4040)이 표시될 수 있다.Various controls (for example, 4010 to 4040) previously defined in the design file can be displayed in the design
사용자는 디자인 파일 편집 UI(4000)에 표시된 컨트롤을 삭제하거나 배치를 변경하거나 크기와 같은 외형적 요소를 변형할 수 있다.The user can delete the controls displayed in the design
또한 사용자는 디자인 파일 편집 UI(4000)에 새로운 컨트롤을 추가할 수도 있다. 이를 위하여 상기 생성 모듈(110)은 각종 컨트롤을 선택할 수 있는 도구 상자 윈도우(1500)을 제공할 수 있다. 도 12는 도구상자 윈도우(1500)의 일 예를 도시한 도면이다.The user may also add a new control to the design
도 12에 도시된 바와 같이, 도구상자 윈도우(1500)는 다양한 형태의 컨트롤을 포함할 수 있으며 사용자는 원하는 컨트롤을 선택하거나 디자인 파일 편집 UI(4000)로 드래그 앤 드랍하여 해당 컨트롤을 디자인 파일 편집 UI(4000)에 배치할 수 있다.As shown in FIG. 12, the
한편, 상기 도구상자 윈도우(1500)에는 각종 컨트롤이 소정의 분류기준에 따라 특정한 카테고리로 분류되어 있을 수 있다. 예를 들어, 도 2f에 도시된 바와 같이 GUI에서 일반적으로 이용되는 공용 컨트롤(1510), ERP 분야에서 특수하게 사용되는 비즈니스 컨트롤(1520), 데이터 컨트롤(1530), 화면의 레이아웃을 구성하며 다른 컨트롤의 컨테이너 역할을 수행하는 레이아웃 컨트롤(1550), 팝업 컨트롤(1570) 등으로 구분될 수 있다.Meanwhile, in the
특히 데이터 컨트롤 카테고리(1530)에 속하는 컨트롤(이하, '데이터 컨트롤'이라고 함)은 SQL 쿼리에 의해 조회되는 데이터를 표시하는 기능을 수행할 수 있다. 데이터 컨트롤은 SQL 쿼리에 의해 조회되는 데이터 표의 형식으로 표시하는 플렉스 그리드(Flex Grid), 피봇테이블 형식으로 표시하는 피봇 그리드(Pivot Grid), 차트의 형식으로 표시하는 차트 그리드(Chard Grid)가 있을 수 있다. 이 외에도 다양한 형태의 데이터 컨트롤이 있을 수 있다. 플렉스 그리드의 일 예로 도 11의 데이터 컨트롤(4040)을 들 수 있다.In particular, a control belonging to the data control category 1530 (hereinafter, referred to as a 'data control') can perform a function of displaying data inquired by an SQL query. A data control can have a Flex Grid that displays in the form of a data grid that is queried by an SQL query, a Pivot Grid that displays it in a pivot table format, and a chart grid (Chard Grid) that displays in the form of a chart. have. In addition, there are various types of data controls. An example of a flex grid is the
한편 사용자가 디자인 파일 편집 UI(4000)에 배치되어 있는 컨트롤을 소정의 방식으로 선택(예를 들어, 클릭)하는 경우 속성 윈도우(1600)에 선택된 컨트롤의 속성값이 표시될 수 있으며 사용자는 속성 윈도우(1600)에 나타난 컨트롤의 속성값을 변경할 수 있다. 도 13은 속성 윈도우(1600)의 일 예를 도시한 도면이다.On the other hand, when the user selects (for example, clicks) a control placed in the design
또한 사용자가 사용자가 디자인 파일 편집 UI(4000)에 배치되어 있는 컨트롤을 소정의 방식으로 선택(예를 들어, 더블 클릭)하는 경우 스크립트 윈도우(1700)에는 특정 이벤트가 발생시 수행되어야 할 액션을 나타내는 메소드 스크립트가 표시될 수 있으며, 사용자는 스크립트 윈도우(1700)에 나타난 메소드 스크립트를 작성/편집할 수 있다. 도 14는 스크립트 윈도우(1700)의 일 예를 도시한 도면이다.Also, when the user selects (for example, double-clicks) a control disposed in the design
도 14에 도시된 바와 같이 스크립트 윈도우(1700)는 디자인 파일 편집 UI(4000)에 배치된 컨트롤 중 어느 하나를 선택하기 위한 UI(1710), 컨트롤에 발생할 수 있는 이벤트를 선택하기 위한 UI(1720), 선택된 컨트롤에 선택된 이벤트가 발생하는 경우에 실행될 메소드 스크립트를 작성하기 위한 UI(1730)를 포함할 수 있다.14, the
한편 위와 같은 과정을 통해 상기 사용자 정의 ERP 펑션의 화면을 구성하는 컨트롤과 각 컨트롤의 속성, 및/또는 메소드 스크립트가 변경되면, 예를 들어 사용자가 소정의 저장 버튼을 누른 경우, 상기 생성 모듈(110)은 변경 사항을 상기 디자인 파일에 반영할 수 있다.If the control for configuring the screen of the user-defined ERP function, the properties of each control, and / or the method script are changed through the above process, for example, when the user presses a predetermined storage button, ) May reflect changes to the design file.
한편 상기 생성 모듈(110)은 사용자 정의 ERP 펑션의 화면에 표시되는 내용이 SQL 쿼리와 연계되도록 하는 매핑 과정을 수행할 수 있다. 즉, 상기 생성 모듈(110)은 상기 디자인 파일 편집 UI(4000)에 표시된 데이터 컨트롤 중 적어도 일부(예를 들어 4040)를 상기 적어도 하나의 SQL 파일에 포함된 특정 쿼리와 매핑하기 위한 SQL 매핑 UI를 제공하고, 상기 SQL 매핑 UI 상에서 사용자의 입력에 따라 상기 디자인 파일 편집 UI에 표시된 컨트롤 중 적어도 일부를 상기 적어도 하나의 SQL 파일에 포함된 특정 쿼리와 매핑할 수 있다. 도 15a 내지 도 15e는 SQL 매핑 UI의 일 예를 도시한 도면이다.Meanwhile, the
도 15a는 현재의 SQL 매핑 상태를 나타내는 도면이다. 도 15a에 도시되어 있는 SQL 매핑 UI(5000)는 사용자 정의 ERP 펑션에 상응하는 적어도 하나의SQL 파일에 정의되어 있는 쿼리의 리스트를 표시하는 UI(5010)를 포함할 수 있다. 도 15a의 예에서는 SQL이라는 이름의 쿼리가 소정의 데이터 컨트롤과 매핑될 수 있다. 사용자는 SQL 매핑 UI(5000)를 통해 SQL 쿼리에 기재된 파라미터와 입력 컨트롤(사용자로부터 데이터를 입력받을 수 있는 컨트롤)을 매핑할 수 있으며, SQL 쿼리와 해당 쿼리에 의한 결과를 표시할 데이터 컨트롤을 매핑할 수 있다. 또한 사용자가 데이터 컨트롤에 표시된 값을 변경하거나 컬럼을 추가/삭제하는 경우에 수행할 별도의 쿼리를 설정할 수 있는데 이하에서는 이에 대하여 보다 상세하게 설명하기로 한다.15A is a diagram showing a current SQL mapping state. The
도 15a에서 SQL 쿼리의 '조회 설정'(5020)을 선택하는 경우 도 15b와 같은 UI(5100)가 디스플레이될 수 있다. 도 15b와 같은 UI (5100)상에서 사용자는 SQL문에 포함되어 있는 각각의 파라미터 변수명과 상기 디자인 파일 편집 UI(4000)에 포함된 특정 컨트롤(예를 들어, 4010 및/또는 4030)을 매핑할 수 있다. 파라미터 변수명과 매핑되는 컨트롤은 사용자로부터 데이터를 입력받는 기능을 수행하는 컨트롤(입력 컨트롤)일 수 있다. 도 15b에 도시된 바와 같이 상기 UI(5100)은 SQL문에 포함되어 있는 각각의 파라미터 변수명을 나열한 리스트(5110)를 포함할 수 있으며, 각각의 파라미터 변수명과 매핑될 컨트롤을 선택하기 위한 UI(예를 들면 5101 내지 5103)를 포함할 수 있다.In FIG. 15A, when the 'query setting' 5020 of the SQL query is selected, the
도 15b의 예에서는 @multiModule이 bpComboBox1(4010)과 매핑되어 있으며, @keyword가 textBoxExt1(4030)과 매핑되어 있다. 상술한 바와 같이, 이처럼 SQL 쿼리 내의 파라미터 변수명과 상기 디자인 파일 편집 UI(4000)에 포함된 특정 컨트롤이 매핑되어 있는 경우, 후추 SQL 쿼리가 실행 시 상기 파라미터 변수명에 매핑된 컨트롤에 입력된 데이터가 상기 SQL 쿼리에 입력될 수 있다.In the example of FIG. 15B, @multiModule is mapped to bpComboBox1 (4010) and @keyword is mapped to textBoxExt1 (4030). As described above, when the parameter variable name in the SQL query is mapped to the specific control included in the design
도 15a에서 '컨트롤 설정'(5030)을 선택하는 경우 도 15c와 같은 UI(5200)가 디스플레이될 수 있다. 상기 UI(5200)은 상기 디자인 파일 편집 UI(4000)에 표시되어 있는 데이터 컨트롤을 선택하기 위한 UI(5210)을 포함할 수 있다. 이를 통해 사용자는 SQL 쿼리와 매핑될 데이터 컨트롤(예를 들어 4040)을 선택할 수 있다. When selecting 'control setting' 5030 in FIG. 15A, the
또한 상기 UI(5200)은 SQL 쿼리를 통해 조회될 DB 테이블에 포함된 컬럼 중 사용/출력할 컬럼을 선택하거나 표시 순서를 조정하거나 각 필드의 표시 형식을 설정하는 등 커스터마이징을 수행하기 위한 UI(5220)을 더 포함할 수 있다.The
도 15a에서 '바인딩 설정'(5040)을 선택하는 경우 도 15d와 같은 UI(5300)가 디스플레이될 수 있다. 도 15d와 같은 UI(5300) 상에서 사용자는 상기 디자인 파일 편집 UI(4000)에 포함된 특정 컨트롤과 SQL 쿼리를 통해 조회될 DB 테이블에 포함된 컬럼을 매핑할 수 있다.When selecting the 'Binding configuration' 5040 in FIG. 15A, the
도 15a에서 '저장 설정'(5050)을 선택하는 경우 도 15e와 같은 UI(5400)가 디스플레이될 수 있다. 도 15e와 같은 UI(5400)는 데이터 컨트롤을 통해 삽입된 레코드를 데이터베이스에 삽입하기 위한 SQL 쿼리를 선택하기 위한 UI(5410), 데이터 컨트롤 상에서 변경된 데이터를 업데이트하기 위한 쿼리를 선택하기 위한 UI(5420), 레코드의 삭제를 수행하기 위한 쿼리를 선택하기 위한 UI(5430)를 포함할 수 있다.In the case of selecting the 'storage setting' 5050 in FIG. 15A, the
도 16은 상술한 매핑 과정을 개략적으로 나타내는 흐름도이다.16 is a flowchart schematically showing the mapping process described above.
일 실시예에서, 상기 생성 모듈(110)은 상기 적어도 하나의 SQL 파일에 포함된 각각의 SQL 퀴리를 표시할 수 있다(S210)In one embodiment, the
사용자가 표시된 SQL 쿼리 중 어느 하나를 선택하는 경우, 선택된 SQL 쿼리를 분석하여 상기 SQL 쿼리에 포함되어 있는 파라미터 변수명을 획득하고(S220), 획득한 파라미터 변수명을 표시할 수 있다.When the user selects one of the displayed SQL queries, the selected parameter may be analyzed to obtain the parameter variable name included in the SQL query (S220), and the obtained parameter variable name may be displayed.
그러면, 사용자의 입력에 의해, 상기 생성 모듈(110)은 표시된 각각의 파라미터 변수명을 상기 디자인 파일 편집 UI(4000)에 표시된 컨트롤(예를 들어 4010 또는 4030)과 매핑할 수 있다(S240).Then, according to the input of the user, the
또한 상기 생성 모듈(110)은 사용자의 입력에 의해 선택된 상기 SQL 쿼리를 상기 디자인 파일 편집 UI(4000)에 표시된 어느 하나의 데이터 컨트롤(예를 들어 4040)과 매핑할 수 있다(S240, S250).The
다시 도 1b를 참조하면, 상기 구동 모듈(120)은 상기 생성 모듈(110)에 의해 생성된 사용자 정의 ERP 펑션을 구동하여 사용자에게 상기 사용자 정의 ERP 펑션을 제공할 수 있다.Referring again to FIG. 1B, the
상술한 바와 같이 상기 생성모듈(110)은 사용자 정의 ERP 펑션에 상응하는 적어도 하나의 SQL 파일 및 디자인 파일을 생성할 수 있으며, 상기 구동 모듈(120)은 이를 해석하여 사용자 정의 ERP 펑션을 구동할 수 있다. 상기 구동 모듈(120)은 일종의 메타데이터나 스크립트 등을 입력받고 그에 상응하는 동작을 수행하는 일종의 엔진일 수 있다.As described above, the
예를 들어 상기 구동모듈(120)은 상기 디자인 파일에 포함된 각종 컨트롤에 관한 정보를 이용하여 사용자 정의 ERP 펑션의 화면을 구성할 수 있으며, 이를 디스플레이할 수 있다. 또한 상기 구동 모듈(120)은 사용자가 컨트롤에 특정한 명령이나 데이터를 입력한 경우 그에 상응하는 메소드나 스크립트, 혹은 빌트인 기능을 수행할 수 있다. 또한 상기 구동 모듈(120)은 데이터 컨트롤과 매핑된 SQL 쿼리를 실행하고 실행 결과를 데이터 컨트롤 또는 상기 DB(130)에 반영할 수 있다. 이 외에도 상기 구동 모듈(120)은 사용자 정의 ERP 펑션이 올바르게 동작할 수 있도록 하는 각종 인스트럭션을 수행할 수 있다.For example, the
상기 공유모듈(140)은 아래에서 설명할 사용자 정의 ERP 공유 기능을 수행할 수 있다.The
도 17은 사용자 단말(100)과 상기 공유 시스템(200)에 의해 사용자 정의 ERP 펑션이 공유되는 과정의 일 예를 도시한 도면이다. 도 17에서는 설명의 편의를 위하여 두 개의 단말 간에 하나의 사용자 정의 ERP 펑션이 공유되는 예를 설명하고 있으나 다수의 단말간에 다수의 사용자 정의 ERP 펑션이 공유될 수 있음은 물론이다.FIG. 17 is a diagram illustrating an example of a process in which a user-defined ERP function is shared by the
도 17을 참조하면 두 단말(100-1, 100-2) 간에 사용자 정의 ERP 펑션이 공유되는 과정은 크게 소스 패키지 업로드 과정(S310 ~ S340)과 소스 패키지 다운로드 과정(S350~S370)으로 구분될 수 있다.Referring to FIG. 17, a process of sharing a user-defined ERP function between two terminals 100-1 and 100-2 can be divided into a source package upload process (S310 to S340) and a source package download process (S350 to S370) have.
먼저 소스 패키지 업로드 과정을 설명하면, 먼저 사용자 정의 ERP 펑션을 타인과 공유하고자 하는 공유자 단말(100-1)은 소스 패키지 업로드 UI를 제공할 수 있다(S310). 상기 소스 패키지 업로드 UI는 공유자가 상기 공유 시스템(200)으로 전송하고자 하는 사용자 정의 ERP 펑션을 선택하는 기능을 제공할 수 있다. 상기 공유자 단말(100-1)에는 복수의 사용자 정의 ERP 펑션에 상응하는 프로젝트가 저장되어 있을 수 있으며 사용자는 이들 중 공유하기를 원하는 프로젝트를 상기 소스 패키지 업로드 UI를 통해 선택할 수 있다.First, the sharer terminal 100-1, which wants to share the user-defined ERP function with another person, can provide a source package upload UI (S310). The source package upload UI may provide a function for the sharper to select a user-defined ERP function to be transmitted to the
상기 공유자 단말(100-1)에 저장되어 있는 프로젝트의 일부 혹은 전부는 상술한 사용자 정의 ERP 생성 과정을 통해 미리 생성되어 있을 수 있다. 또는 상기 공유자 단말(100-1)에 저장되어 있는 프로젝트의 일부 혹은 전부는 후술할 소스 패키지 다운로드 기능을 통해 상기 공유자 단말(100-1)로 다운로드된 것일 수도 있다.Some or all of the projects stored in the sharer terminal 100-1 may be generated in advance through the above-described user-defined ERP generation process. Alternatively, some or all of the projects stored in the sharer terminal 100-1 may be downloaded to the sharer terminal 100-1 through a source package download function described later.
소스 패키지는 소정의 사용자 정의 ERP 펑션에 상응할 수 있으며, 상기 사용자 정의 ERP 펑션에 상응하는 적어도 하나의 SQL 파일 및 디자인 파일을 포함할 수 있다. 구현 예에 따라서 상기 소스 패키지는 ERD 파일을 더 포함할 수도 있다.The source package may correspond to a user defined ERP function and may include at least one SQL file and a design file corresponding to the user defined ERP function. Depending on the implementation, the source package may further include an ERD file.
또한 상기 소스 패키지는 그에 상응하는 사용자 정의 ERP 펑션에 관한 추가 정보를 더 포함할 수도 있다. 추가 정보는 사용자 정의 ERP 펑션에 관련된 어떠한 정보도 포함할 수 있으며, 예를 들어, 사용자 정의 ERP 펑션의 명칭, 상세설명정보(description), 작성자, 공유자 및/또는 스크린 샷, 카테고리 정보 등일 수 있다.The source package may further include additional information regarding a corresponding user-defined ERP function. The additional information may include any information related to the user-defined ERP function, such as the name of the user-defined ERP function, description information, author, sharer and / or screen shot, category information, and so on.
도 18은 소스 패키지 업로드 UI(6000)의 일 예를 도시한 도면이다.18 is a diagram showing an example of the source package upload
상기 소스 패키지 업로드 UI(6000)는 상기 공유자 단말(100-1)에 저장되어 있는 사용자 정의 ERP 펑션의 프로젝트의 리스트(6100)를 포함할 수 있다. 각각의 리스트는 업로드 여부를 선택하기 위한 UI 오브젝트(예를 들면 6010), 프로젝트의 명칭(또는 사용자 정의 ERP 펑션의 명칭)을 표시하는 UI 오브젝트(예를 들면 6020), 상세설명정보를 기입하기 위한 UI 오브젝트(예를 들면 6030), 공개 여부를 선택하기 위한 UI 오브젝트(예를 들면 6040), 스크린샷을 지정하기 위한 UI 오브젝트(예를 들면 6050) 등을 포함할 수 있다. 이 외에도 상기 소스 패키지 업로드 UI는 소스 패키지에 포함될 수 있는 각종 추가정보를 입력/지정하기 위한 UI오브젝트를 더 포함할 수도 있다.The source package upload
사용자는 도 18에 도시된 바와 같이 7개의 프로젝트 중 일부(도 18의 예에서는 Project1 및 Project2)를 선택할 수 있다. 사용자는 공유하고자 하는 프로젝트를 선택한 후 업로드를 수행하기 위한 버튼(6200)을 선택하여 상기 공유자 단말(100-1)에 업로드를 수행을 지시할 수 있다.The user can select some of the seven projects (Project1 and Project2 in the example of Fig. 18) as shown in Fig. After selecting a project to be shared, the user can select a
다시 도 17을 참조하면 상기 공유자 단말(100-1)은 사용자가 선택한 사용자 정의 ERP 펑션에 상응하는 소스 패키지를 생성할 수 있으며(S320), 이를 상기 공유 시스템(200)으로 전송할 수 있다(S330).17, the sharer's terminal 100-1 may generate a source package corresponding to a user-defined ERP function selected by the user (S320) and may transmit the source package to the sharing system 200 (S330) .
그러면 상기 공유 시스템(200)은 소정의 저장소(210)에 수신한 소스 패키지를 저장할 수 있다(S340).Then, the
한편 구현 예에 따라 상기 공유 시스템(200)은 수신한 소스 패키지를 일정한 기준에 의해 분류하여 저장할 수도 있다. 이를 위하여 상기 공유 시스템(200)은 수시한 상기 소스 패키지에 상응하는 사용자 정의 ERP 펑션이 미리 정의된 복수의 카테고리 중 어디에 속하는지를 판단할 수 있으며, 상기 소스 패키지를 그에 상응하는 사용자 정의 ERP 펑션이 속하는 카테고리로 분류하여 상기 저장소(210)에 저장할 수 있다. 미리 정의된 복수의 카테고리는 ERP 분야에서 많이 이용되는 카테고리를 포함할 수 있다. 예를 들어 카테고리는 회계, 인사, 영업, 구매/자재, 외주, 무역, 서비스, 건설, 생산, 기준, 원가, 연결회계 등을 포함할 수 있다.Meanwhile, according to an embodiment, the
사용자 정의 ERP 펑션이 속하는 카테고리는 공유자에 의해 지정될 수 있다.The category to which the custom ERP function belongs can be specified by the sharer.
또는 사용자 정의 ERP 펑션이 속하는 카테고리는 상기 공유 시스템(200)에 의해 결정될 수도 있다. 상기 공유 시스템(200)은 사용자 정의 ERP 펑션이 어느 카테고리에 속하는지를 판단하기 위하여, 상기 소스 패키지에 포함된 적어도 하나의 SQL 파일 또는 상기 소스 패키지에 포함된 디자인 파일을 분석할 수 있으며, 분석 결과에 기초하여 상기 소스 패키지에 상응하는 사용자 정의 ERP 펑션이 상기 복수의 카테고리 중 어디에 속하는지를 판단할 수 있다. 예를 들어 상기 공유 시스템(200)은 상기 소스 패키지에 포함된 SQL 파일의 퀴리문에 기재된 데이터베이스의 명칭이나 기타정보, 테이블 혹은 필드의 명칭이나 기타정보 및/또는 파라미터의 명칭이나 기타정보 등을 분석할 수 있다. 또는 상기 공유 시스템(200)은 상기 소스 패키지에 포함된 디자인 파일에 기재된 각종 정보(예를 들면, 컨트롤의 명칭 혹은 속성 등)을 분석할 수도 있다.Or the category to which the user defined ERP function belongs may be determined by the
다음으로 소스 패키지 다운로드 과정을 설명하면, 타인이 공유한 각종 사용자 정의 ERP 펑션을 다운로드하기 위하여 사용자 단말(100-2)이 상기 공유 시스템(200)에 접속하거나 리스트를 요청하는 경우, 상기 공유 시스템(200)은 상기 사용자 단말(100-2)로 상기 저장소(210)에 저장된 소스 패키지의 리스트를 전송할 수 있다(S350).Describing the source package download process, if the user terminal 100-2 accesses the shared
그러면 상기 사용자 단말(200)은 소스 패키지 다운로드 UI를 제공할 수 있다(S360). 상기 소스 패키지 다운로드 UI는 수신된 소스 패키지의 리스트를 디스플레이할 수 있으며, 수신된 소스 패키지 리스트 중 적어도 일부 항목을 선택하는 기능을 제공할 수 있다.Then, the
도 19는 소스 패키지 다운로드 UI(7000)의 일 예를 도시한 도면이다. 도 19를 참조하면, 상기 소스 패키지 다운로드 UI(7000)는 상기 공유 시스템(200)으로부터 수신한 소스 패키지 리스트를 표시하는 리스트 UI(7100)를 포함할 수 있다. 상기 리스트 UI(7100)의 각 항목은 소스 패키지의 명칭, 그에 상응하는 사용자 정의 ERP 펑션의 명칭, 대표 아이콘, 등록일자 등의 정보를 포함할 수 있다. 또한 상기 소스 패키지 다운로드 UI(7000)는 사용자가 선택한 소스 패키지의 상세 정보를 표시하는 상세정보표시UI(7200)를 더 포함할 수 있다. 상기 상세정보표시UI(7200)는 해당 소스 패키지에 상응하는 사용자 정의 ERP 펑션이 적용될 애플리케이션(예를 들면, 상술한 구동 모듈(120))의 명칭, 등록자, 소스 패키지의 명칭, 그에 상응하는 사용자 정의 ERP 펑션의 명칭, 상세 설명을 포함할 수 있다. 또한 상기 상세정보표시UI(7200)에는 사용자 정의 ERP 펑션의 스크린 샷(7210)을 표시될 수도 있다. 스크린 샷은 소스 패키지를 공유한 공유자에 의해 지정된 이미지일 수 있다.FIG. 19 is a diagram showing an example of the source
또는 상기 스크린 샷(7210)은 상기 공유 시스템(200)에 의해 생성된 이미지일 수도 있다. 예를 들어 상기 공유 시스템(200)은 상술한 구동 모듈(200)의 기능을 수행할 수 있으며, 소스 패키지에 포함되어 있는 SQL 파일 및 디자인 파일을 이용하여 사용자 정의 ERP 펑션을 실행한 후 스크린 샷을 찍을 수 있다.Or the
한편 상기 소스 패키지 다운로드 UI(7000)는 사용자 정의 ERP 펑션이 속할 수 있는 카테고리의 리스트를 표시하는 카테고리UI (7300)를 더 포함할 수 있다. 사용자가 카테고리 UI(7300)에 포함된 항목 중 어느 하나의 카테고리를 선택하는 경우, 상기 리스트 UI(7100)에는 선택된 카테고리에 속하는 사용자 정의 ERP 펑션에 상응하는 소스 패키지의 리스트만이 표시될 수 있다.Meanwhile, the source
상기 소스 패키지 다운로드 UI(7000)는 업로드 버튼(7400)을 더 포함할 수 있으며, 업로드 버튼(7400)이 선택되는 경우 상기 사용자 단말(100-2)은 상술한 소스 패키지 업로드 UI(6000)를 제공하여 사용자 단말(100-2)이 사용자 지정 ERP 펑션을 타인과 공유하도록 할 수 있다.The source
또한 상기 소스 패키지 다운로드 UI는 사용자가 선택한 소스 패키지에 대한 다운로드를 요청하기 위한 버튼UI(7410)를 더 포함할 수 있다. 사용자가 상기 버튼 UI(7410)를 선택한 경우 상기 사용자 단말(100-2)은 상기 공유 시스템(200)으로 소스 패키지의 다운로드를 요청할 수 있다.The source package download UI may further include a
다시 도 17을 참조하면, 상기 공유 시스템(200)은 상기 사용자 단말(100-2)의 다운로드 요청에 응답하여, 상기 저장소(210)에 저장된 소스 패키지 중 상기 사용자 단말에서 선택한 대상 소스 패키지를 상기 사용자 단말(100-2)로 전송할 수 있다(S370).17, in response to a download request of the user terminal 100-2, the
한편, 구현 예에 따라서, 상기 사용자 정의 ERP 펑션 공유 시스템은 적어도 하나의 프로세서 및 상기 프로세서에 의해 실행되는 프로그램을 저장하는 메모리를 포함할 수 있다. 상기 프로세서는 싱글 코어 CPU혹은 멀티 코어 CPU를 포함할 수 있다. 메모리는 고속 랜덤 액세스 메모리를 포함할 수 있고 하나 이상의 자기 디스크 저장 장치, 플래시 메모리 장치, 또는 기타 비휘발성 고체상태 메모리 장치와 같은 비휘발성 메모리를 포함할 수도 있다. 프로세서 및 기타 구성 요소에 의한 메모리로의 액세스는 메모리 컨트롤러에 의해 제어될 수 있다. 여기서, 상기 프로그램은, 프로세서에 의해 실행되는 경우, 본 실시예에 따른 사용자 정의 ERP 펑션 공유 시스템으로 하여금, 상술한 사용자 정의 ERP 펑션 공유 방법을 수행하도록 할 수 있다.Meanwhile, according to an embodiment, the user defined ERP function sharing system may include at least one processor and a memory for storing a program executed by the processor. The processor may include a single-core CPU or a multi-core CPU. The memory may include high speed random access memory and may include non-volatile memory such as one or more magnetic disk storage devices, flash memory devices, or other non-volatile solid state memory devices. Access to the memory by the processor and other components can be controlled by the memory controller. Here, when the program is executed by a processor, the program may cause the user-defined ERP function sharing system according to the present embodiment to perform the above-described user-defined ERP function sharing method.
한편, 본 발명의 실시예에 따른 사용자 정의 ERP 펑션 생성 방법은 컴퓨터가 읽을 수 있는 프로그램 명령 형태로 구현되어 컴퓨터로 읽을 수 있는 기록 매체에 저장될 수 있다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다.Meanwhile, the user-defined ERP function generation method according to the embodiment of the present invention may be implemented in the form of computer-readable program instructions and stored in a computer-readable recording medium. A computer-readable recording medium includes all kinds of recording apparatuses in which data that can be read by a computer system is stored.
기록 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 소프트웨어 분야 당업자에게 공지되어 사용 가능한 것일 수도 있다.Program instructions to be recorded on a recording medium may be those specially designed and constructed for the present invention or may be available to those skilled in the art of software.
컴퓨터로 읽을 수 있는 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.Examples of the computer-readable recording medium include magnetic media such as a hard disk, a floppy disk and a magnetic tape, optical media such as CD-ROM and DVD, a floptical disk, And hardware devices that are specially configured to store and execute program instructions such as magneto-optical media and ROM, RAM, flash memory, and the like. The computer readable recording medium may also be distributed over a networked computer system so that computer readable code can be stored and executed in a distributed manner.
프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 전자적으로 정보를 처리하는 장치, 예를 들어, 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.Examples of program instructions include machine language code such as those produced by a compiler, as well as devices for processing information electronically using an interpreter or the like, for example, a high-level language code that can be executed by a computer.
상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성요소들도 결합된 형태로 실시될 수 있다.It will be understood by those skilled in the art that the foregoing description of the present invention is for illustrative purposes only and that those of ordinary skill in the art can readily understand that various changes and modifications may be made without departing from the spirit or essential characteristics of the present invention. will be. It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive. For example, each component described as a single entity may be distributed and implemented, and components described as being distributed may also be implemented in a combined form.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타나며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.It is intended that the present invention covers the modifications and variations of this invention provided they come within the scope of the appended claims and their equivalents. .
Claims (11)
사용자 정의 ERP 펑션 공유 시스템이, 복수의 공유자 단말로부터 적어도 하나의 SQL 파일 및 디자인 파일을 포함하며 소정의 ERP 사용자 정의 펑션에 상응하는 소스 패키지를 수신하는 단계-상기 SQL 파일은, 데이터베이스를 조작하기 위한 SQL(Structured Query Language) 쿼리를 저장하는 파일이며, 상기 디자인 파일은 상기 사용자 정의 ERP 펑션의 화면을 구성하는 적어도 하나의 컨트롤의 속성에 관한 정보를 저장하는 파일이며, 상기 사용자 정의 ERP 펑션의 화면을 구성하는 컨트롤 중 적어도 일부는 상기 적어도 하나의 SQL 파일에 포함된 특정 쿼리에 매핑되는 컨트롤임-;
상기 사용자 정의 ERP 펑션 공유 시스템이, 상기 복수의 공유자 단말로부터 수신되는 소스 패키지를 소정의 저장소에 저장하는 단계;
상기 사용자 정의 ERP 펑션 공유 시스템이, 사용자 단말로 상기 저장소에 저장된 소스 패키지의 리스트를 제공하는 단계; 및
상기 사용자 단말의 다운로드 요청에 응답하여, 상기 저장소에 저장된 소스 패키지 중 상기 사용자 단말에서 선택한 대상 소스 패키지를 상기 사용자 단말로 전송하는 단계를 포함하되,
상기 사용자 단말은, 상기 사용자 정의 ERP 펑션 공유 시스템으로부터 상기 대상 소스 패키지를 수신한 다음, 상기 대상 소스 패키지에 상응하는 사용자 정의 ERP 펑션 생성 방법을 수행하고,
상기 대상 소스 패키지에 상응하는 사용자 정의 ERP 펑션 생성 방법은,
ERD 파일에 상응하는 UI오브젝트, 상기 대상 소스 패키지에 포함된 적어도 하나의 SQL 파일 각각에 상응하는 UI 오브젝트 및 상기 대상 소스 패키지에 포함된 디자인 파일에 상응하는 UI 오브젝트를 포함하는 컨테이너 UI를 제공하는 단계-여기서, 상기 ERD 파일은, 데이터베이스에 저장된 테이블의 속성 및 각 테이블 간의 관계를 모델링한 정보를 저장하는 파일임;
상기 ERD 파일에 상응하는 UI 오브젝트가 선택되는 경우, 상기 ERD 파일을 편집하기 위한 ERD 파일 편집 기능을 제공하는 단계;
상기 적어도 하나의 SQL 파일 중 어느 하나에 상응하는 UI 오브젝트가 선택되는 경우, 선택된 UI 오브젝트에 상응하는 SQL 파일을 편집하기 위한 SQL 파일 편집 기능을 제공하는 단계;
상기 디자인 파일에 상응하는 UI 오브젝트가 선택되는 경우, 상기 디자인 파일을 편집하기 위한 디자인 파일 편집 기능을 제공하는 단계; 및
상기 적어도 하나의 SQL 파일 및 상기 디자인 파일에 기초하여 상기 사용자 정의 ERP 펑션을 제공하는 단계를 포함하고,
상기 ERD 파일 편집 기능을 제공하는 단계는,
상기 ERD 파일에 기초하여 상기 ERD 파일 편집 UI를 제공하는 단계-여기서, 상기 ERD 파일 편집 UI는 데이터베이스 테이블의 구조를 나타내는 테이블 구조 UI 오브젝트 및 테이블 간의 관계를 나타내는 관계 UI 오브젝트를 포함함;
상기 ERD 파일 편집 UI 상에서 사용자의 입력에 따라 테이블 구조 및 테이블간의 관계를 변경하는 단계; 및
변경된 테이블 구조 및 테이블간의 관계를 상기 ERD 파일에 반영하는 단계를 포함하고,
상기 SQL 파일 편집 기능을 제공하는 단계는,
상기 SQL 파일에 저장된 SQL 쿼리를 표시하는 SQL 편집 UI를 제공하는 단계;
상기 SQL 편집 UI 상에서 사용자의 입력에 따라 SQL 쿼리를 변경하는 단계; 및
변경된 SQL 퀴리를 상기 SQL 파일에 반영하는 단계를 포함하고,
상기 디자인 파일에 포함된 컨트롤 중 적어도 일부는 소정의 파라미터 변수명과 매핑되며, 상기 적어도 하나의 SQL 파일에 포함된 적어도 하나의 SQL 쿼리는 상기 파라미터 변수명을 포함하여 작성되고, 실행 시 상기 파라미터 변수명에 매핑된 컨트롤에 입력된 데이터가 상기 SQL 쿼리에 입력되며,
상기 디자인 파일 편집 기능을 제공하는 단계는,
상기 디자인 파일에 기초하여 상기 사용자 정의 ERP 펑션의 화면을 편집하기 위한 디자인 파일 편집 UI를 제공하는 단계;
상기 디자인 파일 편집 UI 상에서 사용자의 입력에 따라 상기 사용자 정의 ERP 펑션의 화면을 구성하는 컨트롤 및 각 컨트롤의 속성을 변경하는 단계; 및
변경된 상기 사용자 정의 ERP 펑션의 화면을 구성하는 컨트롤, 변경된 각 컨트롤의 속성을 상기 디자인 파일에 반영하는 단계를 포함하고,
상기 대상 소스 패키지에 상응하는 사용자 정의 ERP 펑션 생성 방법은,
상기 디자인 파일 편집 UI에 표시된 컨트롤 중 적어도 일부를 상기 적어도 하나의 SQL 파일에 포함된 특정 쿼리와 매핑하기 위한 SQL 매핑 UI를 제공하고, 상기 SQL 매핑 UI 상에서 사용자의 입력에 따라 상기 디자인 파일 편집 UI에 표시된 컨트롤 중 적어도 일부를 상기 적어도 하나의 SQL 파일에 포함된 특정 쿼리와 매핑하는 단계를 더 포함하며,
상기 디자인 파일 편집 UI에 표시된 컨트롤 중 적어도 일부를 상기 적어도 하나의 SQL 파일에 포함된 특정 쿼리와 매핑하기 위한 SQL 매핑 UI를 제공하고, 상기 SQL 매핑 UI 상에서 사용자의 입력에 따라 상기 디자인 파일 편집 UI에 표시된 컨트롤 중 적어도 일부를 상기 적어도 하나의 SQL 파일에 포함된 특정 쿼리와 매핑하는 단계는,
상기 적어도 하나의 SQL 파일에 포함된 각각의 SQL 퀴리를 표시하는 단계;
사용자가 표시된 SQL 쿼리 중 어느 하나를 선택하는 경우, 선택된 SQL 퀴리 포함된 파라미터 변수명을 표시하는 단계;
표시된 각각의 파라미터 변수명을 상기 디자인 파일 편집 UI에 표시된 컨트롤과 매핑하는 단계; 및
선택된 상기 SQL 쿼리를 상기 디자인 파일 편집 UI에 표시된 어느 하나의 그리드 컨트롤과 매핑하는 단계를 포함하는 사용자 정의 ERP 펑션 공유 방법.
A user-defined ERP (Enterprise Resource Planning) function sharing method,
Wherein the user-defined ERP function sharing system comprises receiving at least one SQL file from a plurality of sharer terminals and a source package corresponding to a predetermined ERP user-defined function, the SQL file including at least one SQL file and a design file, A file for storing a SQL (Structured Query Language) query, wherein the design file is a file for storing information on attributes of at least one control configuring a screen of the user-defined ERP function, Wherein at least some of the controls are mapped to a particular query contained in the at least one SQL file;
Wherein the user-defined ERP function sharing system comprises: storing a source package received from the plurality of sharer terminals in a predetermined repository;
Wherein the user-defined ERP function sharing system comprises: providing a list of source packages stored in the repository to a user terminal; And
In response to a download request of the user terminal, transmitting a target source package selected by the user terminal among the source packages stored in the repository to the user terminal,
Wherein the user terminal receives the target source package from the user defined ERP function sharing system and then performs a user defined ERP function generation method corresponding to the target source package,
A method of generating a user-defined ERP function corresponding to the target-
Providing a container UI including a UI object corresponding to an ERD file, a UI object corresponding to each of at least one SQL file included in the target source package, and a UI object corresponding to a design file included in the target source package Here, the ERD file is a file that stores information modeling the attributes of the tables stored in the database and the relationships among the tables.
Providing an ERD file editing function for editing the ERD file when a UI object corresponding to the ERD file is selected;
Providing an SQL file editing function for editing an SQL file corresponding to a selected UI object when a UI object corresponding to one of the at least one SQL file is selected;
Providing a design file editing function for editing the design file when a UI object corresponding to the design file is selected; And
Providing the user defined ERP function based on the at least one SQL file and the design file,
The step of providing the ERD file editing function includes:
Providing ERD file editing UI based on the ERD file, wherein the ERD file editing UI includes a table structure UI object indicating a structure of a database table and a relation UI object indicating a relationship between tables;
Changing a relationship between a table structure and a table according to a user's input on the ERD file editing UI; And
And reflecting the changed table structure and the relationship between the tables in the ERD file,
The step of providing the SQL file editing function includes:
Providing a SQL edit UI displaying an SQL query stored in the SQL file;
Changing an SQL query according to a user's input on the SQL edit UI; And
And reflecting the changed SQL query to the SQL file,
At least a part of the controls included in the design file is mapped to a predetermined parameter variable name, at least one SQL query included in the at least one SQL file is created including the parameter variable name, The data input to the control mapped to the input data is input to the SQL query,
The step of providing the design file editing function includes:
Providing a design file edit UI for editing a screen of the user defined ERP function based on the design file;
Changing the attributes of the control and the controls constituting the screen of the user-defined ERP function according to a user's input on the design file editing UI; And
A control for configuring a screen of the changed user-defined ERP function, and an attribute of each changed control to the design file,
A method of generating a user-defined ERP function corresponding to the target-
Providing a SQL mapping UI for mapping at least some of the controls displayed in the design file editing UI to a specific query included in the at least one SQL file, And mapping at least some of the displayed controls to a particular query contained in the at least one SQL file,
Providing a SQL mapping UI for mapping at least some of the controls displayed in the design file editing UI to a specific query included in the at least one SQL file, Mapping at least some of the displayed controls to a particular query included in the at least one SQL file,
Displaying each SQL query included in the at least one SQL file;
Displaying a parameter variable name included in the selected SQL query when the user selects one of the displayed SQL queries;
Mapping each parameter variable name displayed with a control displayed in the design file edit UI; And
And mapping the selected SQL query to one of the grid controls displayed in the design file editing UI.
상기 사용자 정의 ERP 펑션 공유 시스템이, 상기 복수의 공유자 단말로부터 수신되는 소스 패키지를 소정의 저장소에 저장하는 단계는,
상기 소스 패키지에 상응하는 사용자 정의 ERP 펑션이 미리 정의된 복수의 카테고리 중 어디에 속하는지를 판단하는 단계; 및
상기 상기 소스 패키지를 그에 상응하는 사용자 정의 ERP 펑션이 속하는 카테로리로 분류하여 상기 저장소에 저장하는 단계를 포함하는 사용자 정의 ERP 펑션 공유 방법.
The method according to claim 1,
Wherein the user-defined ERP function sharing system stores a source package received from the plurality of sharer terminals in a predetermined repository,
Determining if a user defined ERP function corresponding to the source package belongs to a plurality of predefined categories; And
And classifying the source package into categories corresponding to the corresponding user defined ERP functions and storing them in the repository.
상기 소스 패키지에 상응하는 사용자 정의 ERP 펑션이 미리 정의된 복수의 카테고리 중 어디에 속하는지를 판단하는 단계는,
상기 소스 패키지에 포함된 적어도 하나의 SQL 파일 또는 상기 소스 패키지에 포함된 디자인 파일을 분석하는 단계; 및
분석 결과에 기초하여 상기 소스 패키지에 상응하는 사용자 정의 ERP 펑션이 상기 복수의 카테고리 중 어디에 속하는지를 판단하는 단계를 포함하는 사용자 정의 ERP 펑션 공유 방법.
3. The method of claim 2,
Wherein determining whether the user-defined ERP function corresponding to the source package belongs to a plurality of predefined categories comprises:
Analyzing at least one SQL file included in the source package or a design file included in the source package; And
And determining which of the plurality of categories the user-defined ERP function corresponding to the source package belongs to based on the analysis result.
상기 사용자 단말은, 소스 패키지 업로드 방법 및 소스 패키지 다운로드 방법을 수행하되,
상기 소스 패키지 업로드 방법은,
상기 사용자 단말에 저장된 적어도 하나의 소스 패키지의 리스트 중 적어도 일부 항목을 선택하는 기능을 제공하는 소스 패키지 업로드 UI를 제공하는 단계; 및
상기 소스 패키지 업로드 UI를 통해 선택된 항목에 상응하는 소스 패키지를 상기 사용자 정의 ERP 펑션 공유 시스템으로 전송하는 단계를 포함하고,
상기 소스 패키지 다운로드 방법은,
상기 사용자 정의 ERP 펑션 공유 시스템으로부터 상기 저장소에 저장된 소스 패키지의 리스트를 수신하는 단계;
수신된 소스 패키지 리스트 중 적어도 일부 항목을 선택하는 기능을 제공하는 소스 패키지 다운로드 UI를 제공하는 단계; 및
상기 소스 패키지 다운로드 UI를 통해 선택된 항목에 상응하는 소스 패키지를 상기 사용자 정의 ERP 펑션 공유 시스템으로부터 수신하는 단계를 포함하는 사용자 정의 ERP 펑션 공유 방법.
The method according to claim 1,
The user terminal performs a source package upload method and a source package download method,
The source package upload method includes:
Providing a source package upload UI providing a function of selecting at least some items of a list of at least one source package stored in the user terminal; And
And transmitting the source package corresponding to the selected item through the source package upload UI to the user defined ERP function sharing system,
The source package download method includes:
Receiving a list of source packages stored in the repository from the user-defined ERP function sharing system;
Providing a source package download UI providing a function of selecting at least some items of the received source package list; And
And receiving a source package corresponding to an item selected through the source package download UI from the user defined ERP function sharing system.
A computer program installed in a data processing apparatus and stored in a recording medium for performing the method according to any one of claims 1 to 4.
상기 프로세서에 의하여 실행되는 컴퓨터 프로그램을 저장하는 메모리를 포함하는 사용자 정의 ERP 펑션 공유 시스템으로서,
상기 컴퓨터 프로그램은, 상기 프로세서에 의해 실행되는 경우 상기 사용자 정의 ERP 펑션 공유 시스템이 사용자 정의 ERP 펑션 공유 방법을 수행하도록 하되,
상기 사용자 정의 ERP 펑션 공유 방법은,
상기 사용자 정의 ERP 펑션 공유 시스템이, 복수의 공유자 단말로부터 적어도 하나의 SQL 파일 및 디자인 파일을 포함하며 소정의 ERP 사용자 정의 펑션에 상응하는 소스 패키지를 수신하는 단계-상기 SQL 파일은, 데이터베이스를 조작하기 위한 SQL 쿼리를 저장하는 파일이며, 상기 디자인 파일은 상기 사용자 정의 ERP 펑션의 화면을 구성하는 적어도 하나의 컨트롤의 속성에 관한 정보를 저장하는 파일이며, 상기 사용자 정의 ERP 펑션의 화면을 구성하는 컨트롤 중 적어도 일부는 상기 적어도 하나의 SQL 파일에 포함된 특정 쿼리에 매핑되는 컨트롤임-;
상기 사용자 정의 ERP 펑션 공유 시스템이, 상기 복수의 공유자 단말로부터 수신되는 소스 패키지를 소정의 저장소에 저장하는 단계;
상기 사용자 정의 ERP 펑션 공유 시스템이, 사용자 단말로 상기 저장소에 저장된 소스 패키지의 리스트를 제공하는 단계; 및
상기 사용자 단말의 다운로드 요청에 응답하여, 상기 저장소에 저장된 소스 패키지 중 상기 사용자 단말에서 선택한 대상 소스 패키지를 상기 사용자 단말로 전송하는 단계를 포함하되,
상기 사용자 단말은, 상기 사용자 정의 ERP 펑션 공유 시스템으로부터 상기 대상 소스 패키지를 수신한 다음, 상기 대상 소스 패키지에 상응하는 사용자 정의 ERP 펑션 생성 방법을 수행하고,
상기 대상 소스 패키지에 상응하는 사용자 정의 ERP 펑션 생성 방법은,
ERD 파일에 상응하는 UI오브젝트, 상기 대상 소스 패키지에 포함된 적어도 하나의 SQL 파일 각각에 상응하는 UI 오브젝트 및 상기 대상 소스 패키지에 포함된 디자인 파일에 상응하는 UI 오브젝트를 포함하는 컨테이너 UI를 제공하는 단계-여기서, 상기 ERD 파일은, 데이터베이스에 저장된 테이블의 속성 및 각 테이블 간의 관계를 모델링한 정보를 저장하는 파일임;
상기 ERD 파일에 상응하는 UI 오브젝트가 선택되는 경우, 상기 ERD 파일을 편집하기 위한 ERD 파일 편집 기능을 제공하는 단계;
상기 적어도 하나의 SQL 파일 중 어느 하나에 상응하는 UI 오브젝트가 선택되는 경우, 선택된 UI 오브젝트에 상응하는 SQL 파일을 편집하기 위한 SQL 파일 편집 기능을 제공하는 단계;
상기 디자인 파일에 상응하는 UI 오브젝트가 선택되는 경우, 상기 디자인 파일을 편집하기 위한 디자인 파일 편집 기능을 제공하는 단계; 및
상기 적어도 하나의 SQL 파일 및 상기 디자인 파일에 기초하여 상기 사용자 정의 ERP 펑션을 제공하는 단계를 포함하고,
상기 ERD 파일 편집 기능을 제공하는 단계는,
상기 ERD 파일에 기초하여 상기 ERD 파일 편집 UI를 제공하는 단계-여기서, 상기 ERD 파일 편집 UI는 데이터베이스 테이블의 구조를 나타내는 테이블 구조 UI 오브젝트 및 테이블 간의 관계를 나타내는 관계 UI 오브젝트를 포함함;
상기 ERD 파일 편집 UI 상에서 사용자의 입력에 따라 테이블 구조 및 테이블간의 관계를 변경하는 단계; 및
변경된 테이블 구조 및 테이블간의 관계를 상기 ERD 파일에 반영하는 단계를 포함하고,
상기 SQL 파일 편집 기능을 제공하는 단계는,
상기 SQL 파일에 저장된 SQL 쿼리를 표시하는 SQL 편집 UI를 제공하는 단계;
상기 SQL 편집 UI 상에서 사용자의 입력에 따라 SQL 쿼리를 변경하는 단계; 및
변경된 SQL 퀴리를 상기 SQL 파일에 반영하는 단계를 포함하고,
상기 디자인 파일에 포함된 컨트롤 중 적어도 일부는 소정의 파라미터 변수명과 매핑되며, 상기 적어도 하나의 SQL 파일에 포함된 적어도 하나의 SQL 쿼리는 상기 파라미터 변수명을 포함하여 작성되고, 실행 시 상기 파라미터 변수명에 매핑된 컨트롤에 입력된 데이터가 상기 SQL 쿼리에 입력되며,
상기 디자인 파일 편집 기능을 제공하는 단계는,
상기 디자인 파일에 기초하여 상기 사용자 정의 ERP 펑션의 화면을 편집하기 위한 디자인 파일 편집 UI를 제공하는 단계;
상기 디자인 파일 편집 UI 상에서 사용자의 입력에 따라 상기 사용자 정의 ERP 펑션의 화면을 구성하는 컨트롤 및 각 컨트롤의 속성을 변경하는 단계; 및
변경된 상기 사용자 정의 ERP 펑션의 화면을 구성하는 컨트롤, 변경된 각 컨트롤의 속성을 상기 디자인 파일에 반영하는 단계를 포함하고,
상기 대상 소스 패키지에 상응하는 사용자 정의 ERP 펑션 생성 방법은,
상기 디자인 파일 편집 UI에 표시된 컨트롤 중 적어도 일부를 상기 적어도 하나의 SQL 파일에 포함된 특정 쿼리와 매핑하기 위한 SQL 매핑 UI를 제공하고, 상기 SQL 매핑 UI 상에서 사용자의 입력에 따라 상기 디자인 파일 편집 UI에 표시된 컨트롤 중 적어도 일부를 상기 적어도 하나의 SQL 파일에 포함된 특정 쿼리와 매핑하는 단계를 더 포함하며,
상기 디자인 파일 편집 UI에 표시된 컨트롤 중 적어도 일부를 상기 적어도 하나의 SQL 파일에 포함된 특정 쿼리와 매핑하기 위한 SQL 매핑 UI를 제공하고, 상기 SQL 매핑 UI 상에서 사용자의 입력에 따라 상기 디자인 파일 편집 UI에 표시된 컨트롤 중 적어도 일부를 상기 적어도 하나의 SQL 파일에 포함된 특정 쿼리와 매핑하는 단계는,
상기 적어도 하나의 SQL 파일에 포함된 각각의 SQL 퀴리를 표시하는 단계;
사용자가 표시된 SQL 쿼리 중 어느 하나를 선택하는 경우, 선택된 SQL 퀴리 포함된 파라미터 변수명을 표시하는 단계;
표시된 각각의 파라미터 변수명을 상기 디자인 파일 편집 UI에 표시된 컨트롤과 매핑하는 단계; 및
선택된 상기 SQL 쿼리를 상기 디자인 파일 편집 UI에 표시된 어느 하나의 그리드 컨트롤과 매핑하는 단계를 포함하는 사용자 정의 ERP 펑션 공유 시스템.
At least one processor;
A user-defined ERP function sharing system comprising a memory for storing a computer program executed by the processor,
Wherein the computer program causes the user-defined ERP function sharing system to perform a user-defined ERP function sharing method when executed by the processor,
Wherein the user-defined ERP function sharing method comprises:
Wherein the user-defined ERP function sharing system comprises receiving at least one SQL file from a plurality of sharer terminals and a source package corresponding to a predetermined ERP user-defined function, the SQL file including at least one SQL file and a design file, Wherein the design file is a file for storing information on attributes of at least one control constituting a screen of the user defined ERP function, and the control file constituting the screen of the user defined ERP function At least some of which are mapped to a particular query contained in the at least one SQL file;
Wherein the user-defined ERP function sharing system comprises: storing a source package received from the plurality of sharer terminals in a predetermined repository;
Wherein the user-defined ERP function sharing system comprises: providing a list of source packages stored in the repository to a user terminal; And
In response to a download request of the user terminal, transmitting a target source package selected by the user terminal among the source packages stored in the repository to the user terminal,
Wherein the user terminal receives the target source package from the user defined ERP function sharing system and then performs a user defined ERP function generation method corresponding to the target source package,
A method of generating a user-defined ERP function corresponding to the target-
Providing a container UI including a UI object corresponding to an ERD file, a UI object corresponding to each of at least one SQL file included in the target source package, and a UI object corresponding to a design file included in the target source package Here, the ERD file is a file that stores information modeling the attributes of the tables stored in the database and the relationships among the tables.
Providing an ERD file editing function for editing the ERD file when a UI object corresponding to the ERD file is selected;
Providing an SQL file editing function for editing an SQL file corresponding to a selected UI object when a UI object corresponding to one of the at least one SQL file is selected;
Providing a design file editing function for editing the design file when a UI object corresponding to the design file is selected; And
Providing the user defined ERP function based on the at least one SQL file and the design file,
The step of providing the ERD file editing function includes:
Providing ERD file editing UI based on the ERD file, wherein the ERD file editing UI includes a table structure UI object indicating a structure of a database table and a relation UI object indicating a relationship between tables;
Changing a relationship between a table structure and a table according to a user's input on the ERD file editing UI; And
And reflecting the changed table structure and the relationship between the tables in the ERD file,
The step of providing the SQL file editing function includes:
Providing a SQL edit UI displaying an SQL query stored in the SQL file;
Changing an SQL query according to a user's input on the SQL edit UI; And
And reflecting the changed SQL query to the SQL file,
At least a part of the controls included in the design file is mapped to a predetermined parameter variable name, at least one SQL query included in the at least one SQL file is created including the parameter variable name, The data input to the control mapped to the input data is input to the SQL query,
The step of providing the design file editing function includes:
Providing a design file edit UI for editing a screen of the user defined ERP function based on the design file;
Changing the attributes of the control and the controls constituting the screen of the user-defined ERP function according to a user's input on the design file editing UI; And
A control for configuring a screen of the changed user-defined ERP function, and an attribute of each changed control to the design file,
A method of generating a user-defined ERP function corresponding to the target-
Providing a SQL mapping UI for mapping at least some of the controls displayed in the design file editing UI to a specific query included in the at least one SQL file, And mapping at least some of the displayed controls to a particular query contained in the at least one SQL file,
Providing a SQL mapping UI for mapping at least some of the controls displayed in the design file editing UI to a specific query included in the at least one SQL file, Mapping at least some of the displayed controls to a particular query included in the at least one SQL file,
Displaying each SQL query included in the at least one SQL file;
Displaying a parameter variable name included in the selected SQL query when the user selects one of the displayed SQL queries;
Mapping each parameter variable name displayed with a control displayed in the design file edit UI; And
And mapping the selected SQL query to one of the grid controls displayed in the design file editing UI.
상기 사용자 정의 ERP 펑션 공유 시스템이, 상기 복수의 공유자 단말로부터 수신되는 소스 패키지를 소정의 저장소에 저장하는 단계는,
상기 소스 패키지에 상응하는 사용자 정의 ERP 펑션이 미리 정의된 복수의 카테고리 중 어디에 속하는지를 판단하는 단계; 및
상기 상기 소스 패키지를 그에 상응하는 사용자 정의 ERP 펑션이 속하는 카테로리로 분류하여 상기 저장소에 저장하는 단계를 포함하는 사용자 정의 ERP 펑션 공유 시스템.
8. The method of claim 7,
Wherein the user-defined ERP function sharing system stores a source package received from the plurality of sharer terminals in a predetermined repository,
Determining if a user defined ERP function corresponding to the source package belongs to a plurality of predefined categories; And
Classifying the source package into a category to which the corresponding user defined ERP function belongs and storing the category package in the repository.
상기 소스 패키지에 상응하는 사용자 정의 ERP 펑션이 미리 정의된 복수의 카테고리 중 어디에 속하는지를 판단하는 단계는,
상기 소스 패키지에 포함된 적어도 하나의 SQL 파일 또는 상기 소스 패키지에 포함된 디자인 파일을 분석하는 단계; 및
분석 결과에 기초하여 상기 소스 패키지에 상응하는 사용자 정의 ERP 펑션이 상기 복수의 카테고리 중 어디에 속하는지를 판단하는 단계를 포함하는 사용자 정의 ERP 펑션 공유 시스템.
9. The method of claim 8,
Wherein determining whether the user-defined ERP function corresponding to the source package belongs to a plurality of predefined categories comprises:
Analyzing at least one SQL file included in the source package or a design file included in the source package; And
And determining which of the plurality of categories the user-defined ERP function corresponding to the source package belongs to based on the analysis result.
상기 사용자 단말은, 소스 패키지 업로드 방법 및 소스 패키지 다운로드 방법을 수행하되,
상기 소스 패키지 업로드 방법은,
상기 사용자 단말에 저장된 적어도 하나의 소스 패키지의 리스트 중 적어도 일부 항목을 선택하는 기능을 제공하는 소스 패키지 업로드 UI를 제공하는 단계; 및
상기 소스 패키지 업로드 UI를 통해 선택된 항목에 상응하는 소스 패키지를 상기 사용자 정의 ERP 펑션 공유 시스템으로 전송하는 단계를 포함하고,
상기 소스 패키지 다운로드 방법은,
상기 사용자 정의 ERP 펑션 공유 시스템으로부터 상기 저장소에 저장된 소스 패키지의 리스트를 수신하는 단계;
수신된 소스 패키지 리스트 중 적어도 일부 항목을 선택하는 기능을 제공하는 소스 패키지 다운로드 UI를 제공하는 단계; 및
상기 소스 패키지 다운로드 UI를 통해 선택된 항목에 상응하는 소스 패키지를 상기 사용자 정의 ERP 펑션 공유 시스템으로부터 수신하는 단계를 포함하는 사용자 정의 ERP 펑션 공유 시스템.
8. The method of claim 7,
The user terminal performs a source package upload method and a source package download method,
The source package upload method includes:
Providing a source package upload UI providing a function of selecting at least some items of a list of at least one source package stored in the user terminal; And
And transmitting the source package corresponding to the selected item through the source package upload UI to the user defined ERP function sharing system,
The source package download method includes:
Receiving a list of source packages stored in the repository from the user-defined ERP function sharing system;
Providing a source package download UI providing a function of selecting at least some items of the received source package list; And
And receiving a source package corresponding to an item selected through the source package download UI from the user defined ERP function sharing system.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160157996A KR101944973B1 (en) | 2016-11-25 | 2016-11-25 | Method and system for sharing user-defined Enterprise Resource Planning function and computing system performing the same |
PCT/KR2017/002232 WO2018097407A1 (en) | 2016-11-25 | 2017-02-28 | Method and system for sharing user-defined erp functions |
CN201780077869.8A CN110249356B (en) | 2016-11-25 | 2017-02-28 | Sharing method and system for user-defined ERP function |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160157996A KR101944973B1 (en) | 2016-11-25 | 2016-11-25 | Method and system for sharing user-defined Enterprise Resource Planning function and computing system performing the same |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20180059602A KR20180059602A (en) | 2018-06-05 |
KR101944973B1 true KR101944973B1 (en) | 2019-02-08 |
Family
ID=62195439
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160157996A KR101944973B1 (en) | 2016-11-25 | 2016-11-25 | Method and system for sharing user-defined Enterprise Resource Planning function and computing system performing the same |
Country Status (3)
Country | Link |
---|---|
KR (1) | KR101944973B1 (en) |
CN (1) | CN110249356B (en) |
WO (1) | WO2018097407A1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220057721A (en) | 2020-10-30 | 2022-05-09 | 김진일 | System and method for providing office ERP solution based on document form big data |
KR102547033B1 (en) | 2023-03-10 | 2023-06-22 | 김제은 | Method for providing information in the way user selected using keyword recognition function |
KR102597643B1 (en) * | 2023-02-16 | 2023-11-02 | (주)예신뷰 | Erp system for design works |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109752961B (en) * | 2018-12-25 | 2022-05-06 | 施德朗(广州)电气科技有限公司 | Method for sharing and managing protocol library file of central control system, computer readable storage medium and terminal |
KR102244887B1 (en) * | 2019-10-01 | 2021-04-28 | (주) 더존비즈온 | Method and system for recommending SQL query |
CN111241038B (en) * | 2020-01-19 | 2024-04-26 | 中国科学院电子学研究所 | Satellite data processing method and system |
KR102402196B1 (en) * | 2020-07-16 | 2022-05-26 | 주식회사 카카오엔터테인먼트 | Method and apparatus for providing entertainment management platform |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003091416A (en) * | 2001-09-17 | 2003-03-28 | Toshiba Corp | Function configuration defining method for task application system |
JP3987018B2 (en) * | 2003-01-29 | 2007-10-03 | 松下電器産業株式会社 | Integrated business software introduction and operation support system |
WO2005045656A1 (en) * | 2003-11-04 | 2005-05-19 | Think2020, Inc. | Systems, methods, and computer program products for developing enterprise software applications |
JP2006260529A (en) * | 2005-02-16 | 2006-09-28 | Denso Wave Inc | Program-providing system |
CN102387093B (en) * | 2011-10-06 | 2017-07-21 | 福建爱特点信息科技有限公司 | The method and system that a kind of instant messaging good friend shares with group |
US20140282128A1 (en) * | 2013-03-15 | 2014-09-18 | Sap Ag | System and Method for a User Interface Controller for Mandatory and Shared User Interface Functions |
KR20150065292A (en) * | 2013-12-05 | 2015-06-15 | 정연성 | Erp program conversion method using relation data base |
KR101614908B1 (en) * | 2015-09-18 | 2016-04-22 | (주)트러시스 | System and method for providing of ERP service |
-
2016
- 2016-11-25 KR KR1020160157996A patent/KR101944973B1/en active IP Right Grant
-
2017
- 2017-02-28 CN CN201780077869.8A patent/CN110249356B/en active Active
- 2017-02-28 WO PCT/KR2017/002232 patent/WO2018097407A1/en active Application Filing
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220057721A (en) | 2020-10-30 | 2022-05-09 | 김진일 | System and method for providing office ERP solution based on document form big data |
KR102597643B1 (en) * | 2023-02-16 | 2023-11-02 | (주)예신뷰 | Erp system for design works |
KR102547033B1 (en) | 2023-03-10 | 2023-06-22 | 김제은 | Method for providing information in the way user selected using keyword recognition function |
Also Published As
Publication number | Publication date |
---|---|
WO2018097407A1 (en) | 2018-05-31 |
CN110249356A (en) | 2019-09-17 |
CN110249356B (en) | 2023-10-10 |
KR20180059602A (en) | 2018-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101944973B1 (en) | Method and system for sharing user-defined Enterprise Resource Planning function and computing system performing the same | |
US20220382719A1 (en) | Change request visualization in hierarchical systems | |
US7574379B2 (en) | Method and system of using artifacts to identify elements of a component business model | |
KR101033446B1 (en) | User interfaces for data integration systems | |
Stein et al. | The enterprise data lake: Better integration and deeper analytics | |
US8412549B2 (en) | Analyzing business data for planning applications | |
Labadie et al. | FAIR enough? Enhancing the usage of enterprise data with data catalogs | |
US20160103903A1 (en) | Systems, devices, and methods for generation of contextual objects mapped by dimensional data to data measures | |
US8688626B2 (en) | Software tool for generating technical business data requirements | |
US20140025774A1 (en) | Systems and methods for metadata driven dynamic web services | |
US20190173886A1 (en) | Hierarchical permissions model within a document | |
US10338894B2 (en) | Generating applications based on data definition language (DDL) query view and application page template | |
Priebe et al. | Business information modeling: A methodology for data-intensive projects, data science and big data governance | |
CA2755902A1 (en) | Methods and systems for preserving and accessing information related to decision-making | |
US9807169B2 (en) | Distributed tagging of data in a hybrid cloud environment | |
US20230102947A1 (en) | Providing operations in accordance with worksheet relationships and data object relationships | |
US20240126749A1 (en) | Data aggregator graphical user interface | |
US10693622B2 (en) | Product management system that extracts modifications | |
KR20180072889A (en) | Method for generating user-defined Enterprise Resource Planning function and computing system performing the same | |
CN110019440A (en) | The processing method and processing device of data | |
US20140149186A1 (en) | Method and system of using artifacts to identify elements of a component business model | |
US20090271439A1 (en) | Systems to implement business processes in computing environment | |
Chen et al. | A practical guide to managing reference data with IBM InfoSphere master data management reference data management hub | |
Sarferaz | Analytics | |
Softtech | Data Warehouse Insights: Unlocking Hidden Opportunities |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E90F | Notification of reason for final refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |