엔터티 엔진을 사용하면 OFBiz 사용자가 XML을 기반으로 데이터베이스 독립 도메인 특정 언어(DSL)로 엔터티, 데이터 및 쿼리를 정의할 수 있습니다. 따라서 SQL 사용자를 학습하지 않으면 플랫폼 독립적 인 방식으로 데이터베이스를 만들고 상호 작용할 수 있으며 아파치 OFBiz는 각 데이터베이스 시스템에 대한 후드 아래에 번역을 할 수 있습니다.
1.2.2.1. 엔티티 엔진 가이드.
1.2.2.2. 엔티티 엔진 구성 안내서.
1.2.2.3. 엔티티 개요.
1.2.2.4. 엔티티
1.2.2.4.1. 표준 엔티티
1.2.2.4.2. 엔터티 보기
1.2.2.4.3. 확장 엔티티
1.2.2.4.4. 다이내믹 뷰 엔터티
1.2.2.5. XML 데이터
1.2.2.6. OFBiz 데이터 파일
1.2.2.6.1. 소개
OFBiz에는 DataFile 도구라는 데이터 가져오기 도구가 있습니다.
플랫 파일 형식(문자 구분, 고정 너비 등 포함)을 설명하는 XML 파일을 사용하고 해당 정의를 기반으로 플랫 파일을 구문 분석합니다. 따라서 설계상 Entity Engine과 다소 유사합니다.
일반 개체를 사용하여 플랫 파일의 행을 나타냅니다.
여기에는 각 라인에 대한 라인 유형 코드와 같은 기능이 포함되며 계층적 플랫 파일(예: 상위/하위 관계가 하위 레코드에 의해 암시되는 경우)을 지원할 수 있습니다.
코드는 ofbiz/framework/datafile 디렉토리에 있으며 데이터 파일 정의 XML 파일의 모양을 설명하는 XSD가 있습니다.
DataFile에는 WebTools에 웹 페이지가 있어 데이터 파일을 구문 분석하고 여기에서 엔티티 xml 파일(OFBiz에서 가져올 수 있음)을 생성하고 인/아웃 테스트를 수행합니다.
고정 폭 플랫 파일과 문자로 구분된 파일 가져오기가 모두 구현됩니다.
1.2.2.6.2. 정의
- 파일 : 이것은 하나 이상의 “데이터 파일 정의”를 포함하는 xml 파일입니다.
- 파일의 문법은 framework/datafile/dtd/datafile.xsd에 정의되어 있습니다.
- 데이터 파일 정의: 데이터 파일 구조의 정의(예: “데이터 파일”에 있는 필드/열의 이름/유형;
- 동일한 “데이터 파일”은 하나 이상의 “데이터 파일 정의”를 가질 수 있습니다(예: 정의는 데이터 파일에서 사용 가능한 모든 필드의 다른 하위 집합을 고려할 수 있음).
- 데이터 파일 : 모든 데이터가 포함된 텍스트 파일(고정 폭 또는 문자로 구분된 텍스트 파일)
1.2.2.6.3. Webtools 애플리케이션에서 “데이터 파일 작업” 화면을 사용하는 방법
전제 조건 : OFBiz 서버에서 정의 파일(데이터 파일의 필드 정의 포함) 및 데이터 파일(파싱/가져오기하려는 데이터 포함)을 사용할 수 있어야 합니다.단계:
- Webtools 애플리케이션에 연결
- “데이터 파일 작업” 화면으로 이동
- “정의 파일 이름 또는 URL” 입력 필드에 정의 파일의 경로를 입력합니다.
- 제출 버튼 클릭>
- “데이터 파일 정의 이름” 입력 필드는 정의 파일에서 사용 가능한 모든 정의를 포함하는 드롭다운 상자로 변경됩니다.
- 드롭다운 상자에서 사용하려는 정의를 선택합니다.>
- “데이터 파일 이름 또는 URL” 입력 필드에 데이터 파일의 경로를 입력하십시오.
- 나중에 OFBiz에서 가져올 수 있는 엔터티 xml 파일을 생성하려면 “엔터티 xml 파일에 저장:
- 필드를 입력하고 제출 버튼을 클릭하십시오. 파일이 생성됩니다
(자세한 내용은 “엔티티 Xml 파일 생성 팁” 단락 참조).
<field name="productId" type="String">
</field>
1.2.2.6.4. 예
가져올 샘플 고정 너비 CSV 파일 posreport.csv:
고정 너비 플랫 파일 가져오기의 예입니다.
021196033702 ,5031BB GLITTER GLUE PENS BRIGH ,1 ,5031BB , 1, 299,
021196043121 ,BB4312 WONDERFOAM ASSORTED ,1 ,BB4312 , 1, 280,
021196055025 ,9905BB PLUMAGE MULTICOLOURED ,1 ,9905BB , 4, 396,
선택 열을 가져오기 위한 샘플 xml 정의 파일
선택 열 posschema.xml을 가져오기 위한 샘플 xml 정의 파일:
<data-files xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/datafiles.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<data-file name="posreport" separator-style="fixed-length" type-code="text">
<record name="tillentry" limit="many">
<field name="tillCode" type="String" length="16" position="0"></field>
<field name="name" type="String" length="32" position="17"></field>
<field name="prodCode" type="String" length="12" position="63"></field>
<field name="quantity" type="String" length="8" position="76"></field>
<field name="totalPrice" type="String" length="8" position="85"></field>
</record>
</data-file>
</data-files>
고정 레코드 little endian 바이너리 파일을 읽는 또 다른 예
<data-files xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/datafiles.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<data-file name="stockdata" separator-style="fixed-record" type-code="text" record-length="768">
<record name="stockdataitem" limit="many">
<field name="barcode" type="NullTerminatedString" length="12" position="0"></field>
<field name="prodCode" type="NullTerminatedString" length="12" position="68"></field>
<field name="price" type="LEInteger" length="4" position="80"></field>
<field name="name" type="NullTerminatedString" length="30" position="16"></field>
</record>
</data-file>
</data-files>
절차:
인터페이스에서 다음과 같이 입력하십시오.
- 정의 파일 이름 또는 URL: posschema.xml
- 데이터 파일 정의 이름: posreport
- 데이터 파일 이름 또는 URL: posreport.csv
1.2.2.7. 엔티티 엔진 구성
1.2.2.8. 지원되는 데이터베이스
<stdin>에서 해결되지 않은 지시어 – include::../../applications/datamodel/DATAMODEL_CHANGES.adoc[leveloffset=+2]