분석항목 / 데이터 항목을 신규로 작성하고, 데이터 값을 정의할 때 사용합니다.
팝업창을 통해 서식 설정 [기타 - 팝업 메뉴]의 [서식 설정]을 활성화하여 데이터의 서식을 변경할 수 있습니다. 서식 설정 메뉴를 선택하면 실제 분석 화면에 표시되는 데이터의 목록이 나타나며, 숫자 형식의 데이터 형식(Measure 값)에 대한 서식만 지정할 수 있습니다.
서식 변경 결과 디자인에서 서식 설정 디자인을 통해서 원하는 필드의 데이터 서식을 변경할 수 있습니다. |
① 계산 필드 이름 ② 수식 편집 함수 표시 창 ③ 수식 작성 창 ④ 함수 도움말 창
1) 제공 정보
2) 수식 편집기 사용 메뉴
1) Rank 함수 Rank([Company],"[당월실적]", false) 내림차순 정렬 2) SubTotalPercentRow 구성비 Sum([판매계획]) / Sum ( ForAll ( "[제품명]","[판매계획]") ) * 100 3) 특정금액대비 비중값 구하기(구성비) Sum([당월실적]) / Sum( GetMembers([특정디멘젼명],"항목명", [당월실적],"")) Sum([금액]) / Sum( GetMembers( [계정],"매출액" , [금액] ,"")) /* 매출액 구성비*/ 4) 구성비/달성율/증감율/신장률 구하기 전년대비 구성비 차 : GetMembers([실적구분] , "당년실적") - GetMembers([실적구분] , "전년실적") 계획대비 달성율 : GetMembers([실적구분],"당년계획") / GetMembers([실적구분],"당년실적")*100 전년대비 신장율 : GetMembers([실적구분],"당년실적") / GetMembers([실적구분],"전년실적")*100 - 100
5) 달성율 신호등 표기(이미지 적용) SWITCH( Sum([진척도]) >100, IMG("ccf744727425e432.PNG", 16, 16), IMG("b6b4d58a2ce73cbf7.PNG", 16, 16) ) 6) 나누기 에러 처리 IF( ToNumber( Sum([VAL2]), 0) == 0, , 0 , Sum([VAL1]) / Sum([VAL2]) ) IF( OR( IsNull(Sum([NO2])) , Sum([NO2]) == 0) , 0 , Sum([NO1]) / Sum([NO2]) ) 7) 차원 사용자정의항목 생성 Switch( AND(getRowString("CUSTOMER") == "Anam", MID(getRowString("PRODUCT"), 0,1) == "T") , "아남전자 T~" , getRowString("CUSTOMER") == "Anam" , "아남전자 not T~" , getRowString("CUSTOMER") == "Samsung" , "삼성전자" , "기타 해외" ) 8) 신규 계산필드 이미지 표시 (매출>15000) IF(Sum([Act.])>=15000, IMG("arrow_up.png", 16, 16), IMG("arrow_down.png", 16, 16)) |
구분 | 함수명 | 설명 | 반환타입 | 사용법 |
Condition | IF | 조건 검사를 수행하여 참이면 trueValue를 반환하고, 거짓이면 falseValue를 반환합니다. | Object | IF( 1 > 2 , "1은 2보다 크다" , "1은 2보다 작다") |
SWITCH | 모든 조건이 거짓 일 경우 마지막 default 값이 반환됩니다. 조건 n 개에 대해 순차적으로 검사하여 가장 처음으로 참인 조건의 값을 반환합니다. | Object | Switch( ToString(getRecordValue([PRODUCT])) == "BW1000" , Sum([H_VAL]) , ToString(getRecordValue([PRODUCT])) == "BW2000" , Sum([Y_VAL]) , Sum([Q_VAL]) ) | |
Convertor | ToString | 해당 값을 문자열로 변환 합니다, 포멧은 수치형 포멧 및 일자형 포멧을 사용하실 수 있습니다. 포멧은 생략하실 수 있습니다. | String | ToString(value, [string format]) ToString(123456789, "#,##0") -> 123,456,789 ToString( 0.12 , "P2") -> "12.00 %“ ToString( 123456.789 , "#,###.###") -> "123,456.000" |
ToNumber | 해당 값을 숫자형으로 변환 합니다. | Double | ToNumber(value) ToNumber("123") -> 123 ToNumber( "123.12" , 0) -> 123.12 ToNumber( "Matrix" , 0) -> 0 | |
ToDate | 해당 값을 날짜형으로 변환 합니다. | DateTime | ToDate(value, [string format]) ToDate(new Date(), "yyyy-MM-dd") -> 2020-12-31 | |
Logical | AND | 여러 조건 값들에 대한 AND 연산 합니다. | Boolean | AND(boolean, boolean, …) IF ( AND( true, 1==1 , "Korea" == "Korea") , 1 , 0) -> 1 |
OR | 여러 조건 값들에 대한 OR 연산 합니다. | Boolean | OR(boolean, boolean, …) IF ( OR( 1==2 , "Korea" == "Korea") , 1 , 0) =>1 | |
InNull | 검사 대상 값이 null 값인지 여부를 반환합니다 | Boolean | IsNull(value) IsNull( 100 ) => false IsNull( "Korea" ) => false | |
IsBool | 검사대상 값이 Boolean 타입여부를 반환 합니다. | Boolean | IsBool(value) IsBool(1) => false IsBool(true) => true IsBool(false) => true | |
IsNumber | 검사대상 값이 숫자면 True 반환 합니다 | Boolean | IsNumber(value) IsNumber( "100" ) => false IsNumber( 100 ) => true IsNumber( "Korea" ) => false | |
IsString | 검사대상 값이 문자열이면 True 반환 합니다. | Boolean | IsString(value) IsString("Korea") => true IsString(null) => false | |
IsDateTime | 검사대상 값이 날짜 면 True 반환 합니다. | Boolean | IsDateTime(value) IsDateTime(DATE(2013, 12,12)) => true IsDateTime( "2013-12-12" ) => false | |
Character | Left | 원본 문자열에서 좌측으로부터 n개 만큼의 길이를 가지는 새로운 문자열을 반환합니다. | String | Left( "Hello Matrix", 1) -> "H“ |
Right | 원본 문자열에서 우측으로부터 n개 만큼의 길이를 가지는 새로운 문자열을 반환합니다. | String | Right( "Hello Matrix", 6) -> "Matrix“ | |
Len | 전달받은 문자열의 길이를 반환합니다. | Integer | Len( "Hello Matrix") -> 12 | |
Lower | 전달받은 문자열을 소문자로 변환한 문자열을 반환합니다. | String | Lower( "Hello Matrix") -> "hello matrix" | |
Find | 원본 문자열의 특정 위치로부터 대상 문자열을 검색하여 해당 인덱스를 반환합니다. 검색 대상이 없을 경우 -1를 반환합니다. | String | Find("Hello Matrix", "Matrix", 0) -> 6 Find("Hello Matrix", "Kyoung", 0) -> -1 | |
Mid(Substring) | 원본 문자열의 특정 위치로부터 nCount만큼의 문자열을 반환합니다. Mid와 Substring는 동일한 함수입니다. | String | Mid("Hello Matrix", 0, 5) -> "Hello" Mid("Hello Matrix", 6, 6) -> "Matrix" | |
Replace(Substitute) | 원본 문자열의 oldText를 newText로 치환한 문자열을 반환합니다. Replace와 Substitute는 동일한 함수입니다. | String | Replace("Hello Matrix", "Hello", "Hi") -> "Hi Matrix" | |
Trim | 원본 문자열의 시작과 종료 부분에 공백을 모두 제거한 문자열을 반환합니다. | String | Trim( " Hello World ! ") -> "Hello World !” | |
Upper | 전달받은 문자열을 대문자로 변환한 문자열을 반환합니다. | String | Upper( "Hello Matrix") -> "HELLO MATRIX" | |
Numeric | ABS | 해당값의 절대값을 반환합니다 | Double | ABS(Sum([전년대비])) |
ACOS | 해당값의 역코사인값을 반환합니다. | Double | ACOS(Sum([전년대비])) | |
ASIN | 해당값의 역사인값을 반환합니다. | Double | ASIN(Sum([전년대비])) | |
ATAN | 해당값의 역탄젠트값을 반환합니다. | Double | ATAN(Sum([전년대비])) | |
CEIL | 해당값의 올림값을 반환합니다. | Double | CEIL([계획비]) | |
COS | 해당값의 코사인값을 반환합니다. | Double | COS(Sum([전년대비])) | |
EXP | 자연로그의 밑 e의 해당값의 제곱 값을 반환합니다. | Double | EXP(Sum([생산비율])) | |
FLOOR | 해당 값의 내림값을 반환합니다. | Double | FLOOR(Sum([계획비])) | |
LOG | 해당값의 대수(Logarithm-밑-지정값)를 반환합니다. | Double | LOG([매출액], 2) | |
LOG10 | 해당값의 대수(Logarithm-밑10)를 반환합니다. | Double | LOG10([매출액]) | |
RAND | 0에서 지정값 사이의 난수를 반환합니다. (지정값이 없을 경우, 1로 자동설정) | Double | RAND() :0~1 사이의 난수 RAND(10) :0~10 사이의 난수 | |
ROUND | 해당값의 지정된 자리수로 표현된 반올림된 값을 반환합니다. | Double | ROUND(105.6,1) à106 | |
SIN | 해당 값의 사인값을 반환합니다. | Double | SIN(Sum([전년대비])) | |
TAN | 해당 값의 탄젠트값을 반환합니다. | Double | TAN(Sum([전년대비])) | |
Date Time | NOW | 현재 시스템의 날짜와 시간을 반환합니다. | DateTime | NOW() -> 20201231170409448 |
TODAY | 현재 시스템의 날짜를 반환합니다. 시간은 00:00:00으로 설정 됩니다. | DateTime | TODAY() -> 20201231 | |
YEAR | 대상 날짜의 년도를 반환합니다. | Integer | YEAR(TODAY()) -> 2020 | |
MONTH | 해당 일자의 월을 반환 합니다. 값은 1~12의 값을 가지게 됩니다. | Integer | MONTH(ToDate("2012-05-05") ) -> 5 | |
DAY | 해당 일자의 일을 반환 합니다. | Integer | DAY(ToDate("2020-05-30") ) ->30 | |
WEEKDAY | 해당 일자의 요일에 해당하는 상수값을 반환합니다. Sunday = 0, Monday = 1, Tuesday = 2, Wednesday = 3, Thursday = 4, Friday = 5, Saturday = 6 | Integer | WEEKDAY(NOW()) WEEKDAY(ToDate("2020-08-01")) -> 6 | |
HOUR | 대상 시간의 시간 값을 반환합니다. 값은 0~23의 값을 가지게 됩니다. | Integer | HOUR(NOW()) HOUR(ToDate(getRecordValue([납기일]))) | |
MINUTE | 대상 시간의 분 값을 반환합니다. 값은 0~59의 값을 가지게 됩니다. | Integer | MINUTE(NOW()) MINUTE(ToDate(getRecordValue([납기일]))) | |
SECOND | 대상 시간의 초 값을 반환합니다. 값은 0~59의 값을 가지게 됩니다. | Integer | SECOND(ToDate(getRecordValue([CREATE_DATE]))) | |
DATEADD | 해당 일자에 특정 단위의 일자(시간)을 더한 일자를 반환합니다. *날자 단위 상수 dtYear : 년 dtQuarter : 분기 dtMonth : 월 dtDay : 일수 dtHour : 시간 dtMinute : 분 dtSecond : 초 | DateTime | 현재 일자에 1년을 추가한 일자를 반환한다. DATEADD(dtYear,1, NOW()) -> 2021 DATEADD(dtYear, 1, DATE(2020, 04, 01)) -> 2021-04-01 오전 12:00:00 DATEADD(dtMonth, -1, DATE(2020, 04, 01)) -> 2020-03-01 오전 12:00:00 | |
DATEDIFF | 일자 간 차이 값을 반환 합니다. *날자 단위 상수 사용 | Integer | DATEDIFF(dtYear, DATE(2000, 04, 01), DATE(2015, 04, 01)) -> 15 DATEDIFF(dtMonth, DATE(2000, 04, 01), DATE(2015, 04, 01)) -> 180 DATEDIFF(dtDay, NOW(), ToDate(“2013-05-05”)) | |
DATEPART | 일자의 각 파트에 해당 하는 값을 반환합니다. *날자 단위 상수 사용 | Integer | DATEPART(dtYear, DATE(2000, 04, 01) ) -> 2000 DATEPART(dtMonth, DATE(2000, 04, 01) ) -> 4 | |
DATE | 넘겨진 파라미터 값을 가지로 새로운 일자를 반환합니다. 4~6 (시,분,초)는 옵션입니다. | DateTime | DATE(2020,2,21) -> : 2020-02-21일을 반환 DATE(2020, 04, 01, 12, 30, 12) -> 2020-04-01 12:30:12 반환 | |
DATE2 | 넘겨진 파라미터 값을 가지고 새로운 일자를 반환합니다. | DateTime | DATE2(0, 0, 1) -> Thu Jan 1 2020 + 1 day 반환 | |
Operators | + | 더하기 | ||
- | 빼기 | |||
* | 곱하기 | |||
/ | 나누기 | |||
% | 비율값 계산 (%로 출력) | |||
^ | 승산 | |||
( ) | 괄호 | |||
< | 작다 | |||
> | 크다 | |||
<= | 작거나 같다 | |||
>= | 크거나 같다 | |||
!= | 같지 않다. | |||
! | 아니다. | |||
== | 같은가 | |||
AND | And | |||
OR | Or | |||
/**/ | 두줄 이상의 텍스트 주석 처리 | |||
// | 한 줄 텍스트 주석 처리 | // 한 줄 주석문 | ||
Constant | CELL_VALUE | 데이터 셀의 값 | Object | |
FILED_KEY | 데이터 셀의 데이터 필드의 키값 | String | ||
FILED_LABEL | 데이터 셀의 데이터 필드의 표시명 | String | ||
IS_GRAND_TOTAL | 이 현재 행이 총계 행이고 이 요약(총계) 필드 유형이 '없음'인 경우 bool 값을 반환 | Boolean | ||
IS_SUB_TOTAL | 이 현재 행이 하위 총계 행이고 이 요약(총계) 필드 유형이 '없음'인 경우 bool 값을 반환 | Boolean |
List Grid 사용 시 셀 병합 타입을 설정합니다. [디자인 - 필드 - 기본] - [병합 가능]을 활성화한 필드에만 적용됩니다.
•None : 디폴트 설정으로 병합을 허용하지 않습니다.
•Vertical : 수직선상에 연결되는 셀의 데이터가 중복이면 무조건 병합합니다.
•VerticalHierachy : 상속구조 최상위의 데이터(제일 왼쪽)부터 순차적으로 수직선상에 연결된 셀의 데이터가 중복이면 병합합니다.(부모의 데이터가 서로 다르면 자식 데이터는 같더라도 병합하지 않습니다.)
|
팝업메뉴 - 멀티헤더
•비정형분석 결과를 정형보고서처럼 이용하기 위해 사용합니다.
•멀티헤더의 적용결과 해지 시, 기존설정으로 복구되지 않고 재설정해야 합니다.
틀고정을 통해 다른 영역으로 스크롤하는 동안 특정 영역을 표시된 상태로 유지합니다.
틀 고정 스타일 설정
틀고정 선 색, 선 두께를 통해 Column 틀 고정 색상과 두께를 변경합니다.