Aurora 데이터 가져오기 및 저장 -- datasets 편
16429 단어 Aurora 아키텍처
Datasets 소개
사용자가 서버에 데이터를 제출하든 서버가 사용자에게 데이터를 되돌려주든 모두 일정한 의미의 데이터 집합을 전송하는 것이다.이 데이터 집합은 Aurora 프레임워크에서 Datasets로 추상화되고 데이터 집합에는 여러 개의 데이터 집합이 있을 수 있으며 데이터 집합은 데이터에 대한 값(datas), 내비게이션(fields), 트리거 이벤트(event)를 제공합니다.
datasets 정의
<a:dataSets>
<a:dataSet id="PIM1010_gender" lookupCode="STUDENT_SEX"/>
<a:dataSet id="PIM1010_department" lookupCode="PIM_DEPARTMENT"/>
<a:dataSet id="PIM1010_base" lookupCode="PIM_BASE"/>
<a:dataSet id="PIM1010_status" lookupCode="CHECK_IN_STATUS"/>
<a:dataSet id="PIM1010_people_inf_query">
<a:fields>
<a:field name="gender" displayField="code_value_name" options="PIM1010_gender"/>
<a:field name="department" displayField="code_value_name" options="PIM1010_department"/>
<a:field name="base" displayField="code_value_name" options="PIM1010_base"/>
<a:field name="status" displayField="code_value_name" options="PIM1010_status"/>
<a:field name="people_no" lovGridHeight="300" lovService="FSD.PIM1010.fsd_people_information_lov" lovWidth="600" title=" ">
<a:mapping>
<a:map from="people_no" to="people_no"/>
<a:map from="people_name" to="people_name"/>
<a:map from="telephone" to="telephone"/>
<a:map from="gender" to="gender"/>
a:mapping>
a:field>
a:fields>
a:dataSet>
<a:dataSet id="PIM1010_people_inf_result" autoCount="true" autoQuery="true" fetchAll="false" model="FSD.fsd_people_information_manager" pageSize="15" queryDataSet="PIM1010_people_inf_query" selectable="true">
<a:fields>
<a:field name="people_id" readOnly="true"/>
<a:field name="people_number" readOnly="true"/>
<a:field name="people_no" required="true"/>
<a:field name="people_name" required="true"/>
<a:field name="gender" displayField="code_value_name" options="PIM1010_gender" required="true" returnField="gender_code" valueField="code_value"/>
<a:field name="department" displayField="code_value_name" options="PIM1010_department" required="true" returnField="department_code" valueField="code_value"/>
<a:field name="base" displayField="code_value_name" options="PIM1010_base" required="true" returnField="base_code" valueField="code_value"/>
<a:field name="telephone"/>
<a:field name="email"/>
<a:field name="people_comment"/>
<a:field name="creation_date" readOnly="true"/>
<a:field name="status" displayField="code_value_name" options="PIM1010_status" readOnly="true" returnField="status_code" valueField="code_value"/>
a:fields>
a:dataSet>
a:dataSets>
해석
new Aurora.DataSet(
{“datas”:[{“user_id”:”1”,”user_name”:”HECADMIN”, “encrypted_foundation_password”:”……”}, //** record**
{“user_id”:”2”,”user_name”:”ADMIN”, “encrypted_foundation_password”:”……”},
……
],
“listeners”:{“update”,onUpdate, //
“submitsuccess”: onModifyUserSuccess,
……
},
“fields”:[{“name”:”user_id”, "databasetype":"BIGINT","datatype":"java.lang.Long","isprimarykey":true}, //field
{"name":"user_name","databasetype":"VARCHAR","datatype":"java.lang.String",
"prompt":"SYS_USER.ACCOUNT","readonly":true},
{"name":"encrypted_foundation_password","databasetype":"VARCHAR","datatype":"java.lang.String",
"insertexpression":"sys_login_pkg.md5(${@user_password})"},
……],
“id”:”sys_user_edit_ds”,
“pagesize”:10,
……
}
);
1) 데이터는 DataSet을 초기화할 때의 데이터로 여러 개의 데이터 기록(record)으로 구성되어 있다.2) listeners에 현재 dataSet에 등록된 이벤트가 기록되어 있습니다.특정 동작이 발생하면 특정 이벤트에 응답합니다.3) fields에 기록된 것은 필드 수준의 메타데이터 정보입니다. 각 필드의 이름, 데이터 형식, 알림 (prompt) 등 속성입니다.Field의 정보는 DataSet 정의와 bm의field,ref-field의 정보의 총체를 집중합니다.4) DataSet 기타 정보, 예를 들어 id, pageSize,querurl 등등.
dataset 속성
id dataSet의 id를 지정합니다 (같은 페이지에서 유일함)
모델 지정 dataSet 대응하는 bm
autoCreate는 dataSet을 만들 때 빈 레코드를 만들지 여부를 지정합니다(기본값은falsefalse:true:만들지 않음).
autoQuery 페이지 불러오기가 완료되면 aax 요청 조회 데이터를 자동으로 진행할지 여부(기본값falsefalse: 조회하지 않음true: 자동 조회)
fetchAll은 모든 데이터를 한 번에 조회할지 여부를 지정합니다. (기본값은falsefalse:true:한 번 불러오기)
pageSize 한 번에 조회된 데이터의 갯수를 지정합니다(기본 10개)
queryDataSet 중요한 속성으로 조회를 표시할 때 사용자가 입력할 수 있는 조회 조건의 출처입니다.
autoCount 조회 통계 여부 (기본값truefalse: 통계 없음true: 통계 조회의 총 항목, 페이지 정보)
canQuery 조회 가능 여부 (기본true false: 조회 불가true: 조회 가능)
canSubmit 제출 가능 여부(기본 true false: 제출 불가true: 제출 가능)
loadData 서버에서 데이터를 불러올지 여부(기본falsefalse: 서버에true: 서버에서 불러오지 않음)
selectable 선택 가능 여부 (기본falsefalse:true:선택 불가)
selectionModel 선택 모드(기본 multiple multiple: 다중 선택single: 단일 선택)
queryUrl 조회 URL 주소
submitUrl에서 제출한 URL 주소
bindTarget은 대상 dataSet에 귀속됩니다. 대상 dataSet은 하위 DataSet입니다.
bindName 바인딩된 이름
lookupCode 값 목록의 코드
${/request/@context_path}/autocrud/test.test/query?contractno=${/parameter/@contractno}
** - 많은 조회집에서queryfrom이 조회집을 귀속해야 할 뿐만 아니라 입력상자 라벨도 귀속해야 한다는 것을 발견했습니까? -데이터 세트 내의 필드는 입력 상자의 데이터를 제어하는 것이지 다른 의미가 없습니다**