DataField
Properties
fieldName
Type: string
필드명
dataType
Type: DataType
Default: DataType.TEXT
자료형
subtype
Type: SubDataType
기본 자료형을 제한된 범위로 사용하기 위한 지시자
subTypeEnabled
Type: Boolean
DataField의 SubDataType기능의 사용여부를 지정한다.
min 또는 minimum
Type: number | datetime
최소 범위의 한계값
max 또는 maximun
Type: number | datetime
최대 범위의 한계값
set
Type: Array
배열에 포함된 값이 아니면 undefined로 저장되게 한다. Boolean 자료형을 제외한 나머지 자료형에서 사용가능하다.
length
Type: Number
Default: 10
데이터 길이
baseField
Type: string
기준 필드의 이름, RowGrouping시
header
Type: string
그룹 헤더 타이틀, RowGrouping시 그룹 헤더의 타이틀에 기준필드의 헤더 값을 표시할 수 있다. RowGrouping참조
defaultValue
Type: Object
필드의 기본 데이터 값을 지정한다. 기본값을 지정하면 GridView.beginInsertRow(), GridView.beginAppendRow()함수 호출시 지정된 기본값이 입력된 상태로 새로운 행이 추가된다.
required
Type: Boolean
데이터 필수 여부를 지정한다.
updatable
Type: Boolean
데이터의 변경 가능 여부를 지정한다.
booleanFormat
Type: string
Boolean형 데이터의 입력 방식을 지정한다.
datetimeFormat
Type: string
날짜형 데이터의 입력 방식을 지정한다.
amText
Type: string
오전 시간의 데이터 입력 방식을 지정한다.
pmText
Type: string
오후 시간의 데이터 입력 방식을 지정한다.
baseYear
Type: string
년도 값이 100보다 작을 경우 기준 년도. 기본값은 2000
calculateExpression
Type: string
Calculate Field로 사용할 경우 사용될 수식을 지정한다. values[‘필드명’], values[필드인덱스]로 참조한다.
수식에 다른 Calc Field의 참조 허용하지 않습니다.
calculateCallback
Type: function
Calculate Field로 사용할 경우 사용될 수식을 지정한다. 해당 필드에서 계산될 Function 을 지정한다.
수식에 다른 Calc Field의 참조 허용하지 않습니다.
comparer
Type: function
값 비교시 사용될 Function 을 지정한다.
Examples
fields = [{ "fieldName": "OrderID", "dataType": "number" }, { "fieldName": "CustomerID", //텍스트 필드의 숫자들을 소팅시 숫자처럼 적용되게 처리. "comparer" : function(field, row1, row2) { var val1 = dataProvider.getValue(row1,field); var val2 = dataProvider.getValue(row2,field); if (val1 === undefined || val1 === null) { return (val2 === undefined || val2 === null) ? 0 : -1; } if (val2 === undefined || val2 === null) { return 1; } try { var num1 = +val1; var num2 = +val2; if (isNaN(num1) || isNaN(num2)) { throw "error"; } return num1 > num2 ? 1 : (num1 == num2 ? 0 : -1 ); } catch (err) { return val1 > val2 ? 1 : (val1 == val2 ? 0 : -1 ); } } }, { "fieldName": "EmployeeID" }, { "fieldName": "OrderDate", "dataType": "datetime" }, { "fieldName": "CompanyName" }, { "fieldName": "ProductName" }, { "fieldName": "Quantity", "dataType": "numeric" }, { "fieldName": "UnitPrice", "dataType": "numeric" }, { "fieldName": "Price", "dataType": "numeric", "calculateExpression": "values['Quantity'] * values['UnitPrice']" }, { "fieldName": "Price2", "dataType": "numeric", "calculateCallback": function (dataRow, fieldName, fieldNames, values) { var quantity = values[fieldNames.indexOf("Quantity")]; var unitprice = values[fieldNames.indexOf("UnitPrice")]; if (isNaN(quantity) || isNaN(unitprice)) return undefined; else return quantity >= 1000 ? Math.round(quantity * unitprice * 0.95) : quantity * unitprice; } }]; dataProvider.setFields(fields);