이 함수는 현재 시간의 타임스탬프를 반환합니다. 이 함수는 TimeStamp 시스템 변수 서식으로 값을 반환합니다. 기본 timer_mode 값은 1입니다.
구문:
now([
timer_mode])
반환 데이터 유형: dual
now() 함수는 로드 스크립트 또는 차트 개체에서 사용할 수 있습니다.
인수
인수
설명
timer_mode
다음과 같은 값을 가질 수 있습니다.
0(데이터 로드가 마지막으로 완료된 시간) 1(함수 호출 시간) 2(앱이 열린 시간)
정보 메모데이터 로드 스크립트에서 이 함수를 사용하면 timer_mode=0이 마지막으로 데이터 로드가 완료된 시간이 되지만 timer_mode=1은 현재 데이터 로드 시 함수 호출 시간을 제공합니다.
팁 메모now() 함수는 성능에 영향을 미치므로 함수가 테이블의 표현식 내에서 사용되는 경우 스크롤 문제가 발생할 수 있습니다. 사용이 반드시 필요한 경우가 아니면 today() 함수를 대신 사용하는 것이 좋습니다. 레이아웃에서 now()의 사용이 필요한 경우 가능하면 기본 설정이 아닌 now(0) 또는 now(2)을 사용하는 것이 좋습니다. 지속적인 재계산이 필요하지 않습니다.
사용 시기
now() 함수는 일반적으로 표현식 내에서 구성 요소로 사용됩니다. 예를 들어 제품 수명 주기의 남은 시간을 계산하는 데 사용할 수 있습니다. 표현식에 하루의 일부를 사용해야 하는 경우 today() 함수 대신 now() 함수가 사용됩니다.
다음 표는 timer_mode 인수에 대해 다른 값이 주어졌을 때 now() 함수에서 반환된 결과에 대한 설명을 제공합니다.
함수 예
timer_mode 값
로드 스크립트에서 사용된 경우 결과
차트 개체에서 사용된 경우 결과
0
최신 데이터 다시 로드 이전에 마지막으로 성공한 데이터 다시 로드의 타임스탬프를 TimeStamp 시스템 변수 형식으로 반환합니다.
최신 데이터를 다시 로드한 타임스탬프를 TimeStamp 시스템 변수 형식으로 반환합니다.
1
최신 데이터를 다시 로드한 타임스탬프를 TimeStamp 시스템 변수 형식으로 반환합니다.
함수 호출의 타임스탬프를 TimeStamp 시스템 변수 형식으로 반환합니다.
2
응용 프로그램에서 사용자의 세션이 시작된 타임스탬프를 TimeStamp 시스템 변수 형식으로 반환합니다. 사용자가 스크립트를 다시 로드하지 않으면 업데이트되지 않습니다.
응용 프로그램에서 사용자의 세션이 시작된 타임스탬프를 TimeStamp 시스템 변수 형식으로 반환합니다. 이는 새 세션이 시작되거나 응용 프로그램의 데이터가 다시 로드되면 새로 고쳐집니다.
국가별 설정
달리 지정하지 않는 한 이 항목의 예에서는 다음 날짜 형식을 사용합니다. YYYY/MM/DD. 날짜 형식은 데이터 로드 스크립트의 SET DateFormat 문에 지정됩니다. 기본 날짜 형식은 지역 설정 및 기타 요인으로 인해 시스템에서 다를 수 있습니다. 아래 예의 형식을 요구 사항에 맞게 변경할 수 있습니다. 또는 이러한 예와 일치하도록 로드 스크립트의 형식을 변경할 수 있습니다.
앱의 기본 국가별 설정은 Qlik Sense가 설치된 컴퓨터 또는 서버의 국가별 시스템 설정을 기반으로 합니다. 액세스하는 Qlik Sense 서버가 스웨덴으로 설정된 경우 데이터 로드 편집기는 날짜, 시간 및 통화에 대해 스웨덴 지역 설정을 사용합니다. 이러한 국가별 형식 설정은 Qlik Sense 사용자 인터페이스에 표시되는 언어와 관련이 없습니다. Qlik Sense는 사용 중인 브라우저와 동일한 언어로 표시됩니다.
예 1 – 로드 스크립트를 사용한 개체 생성
개요
데이터 로드 편집기를 열고 아래의 로드 스크립트를 새 탭에 추가합니다.
이 예에서는 now() 함수를 사용하여 세 개의 변수를 만듭니다. 각 변수는 timer_mode 옵션 중 하나를 사용하여 효과를 보여 줍니다.
변수가 목적을 나타내려면 스크립트를 다시 로드한 다음 짧은 기간 후에 스크립트를 두 번째로 다시 로드합니다. 그러면 now(0) 및 now(1) 변수가 다른 값을 표시하여 목적을 올바르게 보여 줍니다.
로드 스크립트
LET vPreviousDataLoad = now(0);
LET vCurrentDataLoad = now(1);
LET vApplicationOpened = now(2);
결과
데이터가 두 번째로 로드되면 아래 지침을 사용하여 3개의 텍스트 상자를 만듭니다.
먼저 이전에 로드된 데이터에 대한 텍스트 상자를 만듭니다.
다음과 같이 하십시오.
텍스트 및 이미지 차트 개체를 사용하여 텍스트 상자를 만듭니다.
개체에 다음 측정값을 추가합니다.
=vPreviousDataLoad
모양 아래에서 Show titles를 선택하고 '이전 다시 로드 시간'이라는 제목을 개체에 추가합니다.
다음으로 현재 로드 중인 데이터에 대한 텍스트 상자를 만듭니다.
다음과 같이 하십시오.
텍스트 및 이미지 차트 개체를 사용하여 텍스트 상자를 만듭니다.
개체에 다음 측정값을 추가합니다.
=vCurrentDataLoad
모양 아래에서 Show titles를 선택하고 '현재 다시 로드 시간'이라는 제목을 개체에 추가합니다.
응용 프로그램에서 사용자 세션이 시작된 시간을 표시할 최종 텍스트 상자를 만듭니다.
다음과 같이 하십시오.
텍스트 및 이미지 차트 개체를 사용하여 텍스트 상자를 만듭니다.
개체에 다음 측정값을 추가합니다.
=vApplicationOpened
모양 아래에서 Show titles를 선택하고 '사용자 세션 시작됨'이라는 제목을 개체에 추가합니다.
위 이미지는 만들어진 각 변수 값에 대한 예를 보여 줍니다. 예를 들어 값은 다음과 같을 수 있습니다.
이전 다시 로드 시간: 6/22/2022 8:54:03 AM
현재 다시 로드 시간: 6/22/2022 9:02:08 AM
사용자 세션 시작: 6/22/2022 8:40:40 AM
예 2 – 로드 스크립트 없이 개체 생성
개요
이 예에서는 변수나 데이터를 응용 프로그램에 로드하지 않고 now() 함수를 사용하여 세 개의 차트 개체를 만듭니다. 각 차트 개체는 timer_mode 옵션 중 하나를 사용하여 효과를 보여 줍니다.
이 예에는 로드 스크립트가 없습니다.
다음과 같이 하십시오.
데이터 로드 편집기를 엽니다.
기존 로드 스크립트를 변경하지 않고 데이터 로드를 클릭합니다.
잠시 후 스크립트를 두 번째로 로드합니다.
결과
데이터가 두 번째로 로드되면 세 개의 텍스트 상자를 만듭니다.
먼저 최신 데이터 다시 로드를 위한 텍스트 상자를 만듭니다.
다음과 같이 하십시오.
텍스트 및 이미지 차트 개체를 사용하여 텍스트 상자를 만듭니다.
다음 측정값을 추가합니다.
=now(0)
모양에서 제목 표시를 선택하고 개체에 '최신 데이터 다시 로드'라는 제목을 추가합니다.
다음으로 현재 시간을 표시하는 텍스트 상자를 만듭니다.
다음과 같이 하십시오.
텍스트 및 이미지 차트 개체를 사용하여 텍스트 상자를 만듭니다.
다음 측정값을 추가합니다.
=now(1)
모양에서 제목 표시를 선택하고 개체에 '현재 시간'이라는 제목을 추가합니다.
응용 프로그램에서 사용자 세션이 시작된 시간을 표시할 최종 텍스트 상자를 만듭니다.
다음과 같이 하십시오.
텍스트 및 이미지 차트 개체를 사용하여 텍스트 상자를 만듭니다.
다음 측정값을 추가합니다.
=now(2)
모양에서 제목 표시를 선택하고 개체에 '사용자 세션 시작'이라는 제목을 추가합니다.
위 이미지는 만들어진 각 개체에 대한 예시 값을 보여 줍니다. 예를 들어 값은 다음과 같을 수 있습니다.
최신 데이터 다시 로드: 6/22/2022 9:02:08 AM
현재 시간: 6/22/2022 9:25:16 AM
사용자 세션 시작: 6/22/2022 8:40:40 AM
'최신 데이터 다시 로드' 차트 개체는 timer_mode 값 0을 사용합니다. 이는 데이터가 성공적으로 다시 로드된 마지막 시간의 타임스탬프를 반환합니다.
'현재 시간' 차트 개체는 timer_mode 값 1을 사용합니다. 이는 시스템 시계에 따라 현재 시간을 반환합니다. 시트 또는 개체를 새로 고치면 이 값이 업데이트됩니다.
'사용자 세션 시작' 차트 개체는 timer_mode 값 2를 사용합니다. 이는 응용 프로그램이 열리고 사용자의 세션이 시작된 시간에 대한 타임스탬프를 반환합니다.
예 3 – 시나리오
개요
데이터 로드 편집기를 열고 아래의 로드 스크립트를 새 탭에 추가합니다.
로드 스크립트에는 다음이 포함됩니다.
Inventory라는 테이블에 로드되는, 암호화폐 채굴 작업에 대한 인벤토리로 구성된 데이터 집합.
다음 필드가 있는 데이터: id, purchase_date 및 wph(시간당 와트).
사용자는 해당 월의 지금까지 각 채굴 장비에서 발생한 총 비용을 전력 소비 측면에서 id별로 표시하는 테이블을 원합니다.
이 값은 차트 개체를 새로 고칠 때마다 업데이트되어야 합니다. 현재 전기 요금은 kWH당 $0.0678입니다.
데이터를 로드하고 시트를 엽니다. 새 테이블을 만들고 이 필드를 차원으로 추가합니다. id.
다음 측정값을 만듭니다.
=(now(1)-monthstart(now(1)))*24*wph/1000*0.0678
차트 개체가 2022년 6월 22일 오전 10:39:05에 새로 고쳐지면 다음 결과가 반환됩니다.
결과 테이블
id
=(now(1)-monthstart(now(1)))*24*wph/1000*0.0678
8188
$39.18
8189
$49.97
8190
$42.81
8191
$46.13
8192
$44.42
8193
$39.18
8194
$46.83
8195
$81.72
8196
$42.95
8197
$42.95
8198
$39.18
8199
$42.29
8200
$42.67
8201
$42.99
8202
$42.99
8203
$42.25
8204
$43.37
8205
$46.13
8206
$39.53
사용자는 개체를 새로 고칠 때마다 개체 결과가 새로 고쳐지기를 원합니다. 따라서 표현식의 now() 함수 인스턴스에 timer_mode 인수가 제공됩니다. now() 함수를 사용하여 monthstart() 함수의 타임스탬프 인수로 식별되는 월 시작에 대한 타임스탬프를 now() 함수로 식별되는 현재 시간에서 뺍니다. 이번 달에 지금까지 경과한 총 시간(일)을 제공합니다.
이 값에 24(하루의 시간)를 곱한 다음 wph 필드의 값을 곱합니다.
시간당 와트에서 시간당 킬로와트로 변환하려면 결과를 1000으로 나눈 다음 제공된 kWH 비율을 곱하면 됩니다.
이 페이지가 도움이 되었습니까?
이 페이지 또는 해당 콘텐츠에서 오타, 누락된 단계 또는 기술적 오류와 같은 문제를 발견하면 개선 방법을 알려 주십시오!