Deze functie retourneert een tijdstempel van de huidige tijd. Deze functie retourneert waarden in de indeling van de systeemvariabele TimeStamp. De standaardwaarde voor timer_mode is 1.
Syntaxis:
now([
timer_mode])
Retourgegevenstypen: dual
De now()-functie kan ofwel in het load-script ofwel in diagramobjecten worden gebruikt.
Argumenten
Argument
Beschrijving
timer_mode
Kan de volgende waarden hebben:
0 (tijd van de als laatste voltooide laadbewerking voor gegevens) 1 (tijd van de functieaanroep) 2 (tijd wanneer de app werd geopend)
InformatieAls u de functie gebruikt in een script voor het laden van gegevens, resulteert timer_mode=0 in de tijd van de als laatste voltooide laadbewerking voor gegevens, terwijltimer_mode=1 de tijd van de functieaanroep in de huidige laadbewerking voor gegevens oplevert.
TipDe now()-functie heeft een impact met hoge snelheid, wat kan resulteren in scrolproblemen als de functie wordt gebruikt in de uitdrukkingen van tabellen. Wanneer het gebruik niet strikt noodzakelijk is, raden we in plaats hiervan aan de today()-functie te gebruiken. Als het gebruik van now() vereist is in een lay-out, raden we aan waar mogelijk de niet-standaardinstellingen now(0) of now(2) te gebruiken omdat deze instellingen niet continue herberekeningen vereisen
Wanneer gebruiken
De now()-functie wordt meestal gebruikt als een component in een uitdrukking. Hij kan bijvoorbeeld worden gebruikt om de resterende tijd te berekenen in een levenscyclus van een project. De now()-functie zou in plaats van de today()-functie worden gebruikt wanneer de uitdrukking het gebruik van een deel van een dag vereist.
De volgende tabel geeft een uitleg van het resultaat dat door de now()-functie is geretourneerd en geeft verschillende waarden voor het timer_mode-argument:
Voorbeelden van functies
timer_mode-waarde
Resultaat bij gebruik in load-script
Resultaat bij gebruik in diagramobject
0
Retourneert een tijdstempel met de notatie van de TimeStamp-systeemvariabele, van de laatste keer dat de gegevens opnieuw zijn geladen voorafgaand aan de laatste keer dat de gegevens opnieuw zijn geladen.
Retourneert een tijdstempel met de notatie van de TimeStamp-systeemvariabele voor de laatste keer dat de gegevens opnieuw zijn geladen.
1
Retourneert een tijdstempel met de notatie van de TimeStamp-systeemvariabele voor de laatste keer dat de gegevens opnieuw zijn geladen.
Retourneert een tijdstempel met de notatie van de TimeStamp-systeemvariabele van de functieaanroep.
2
Retourneert een tijdstempel met de notatie van de TimeStamp-systeemvariabele voor het begin van de sessie van de gebruiker in de applicatie. Dit wordt niet bijgewerkt tenzij de gebruiker het script opnieuw laadt.
Retourneert een tijdstempel met de notatie van de TimeStamp-systeemvariabele voor het begin van de sessie van de gebruiker in de applicatie. Dit wordt vernieuwd zodra een nieuwe sessie begint of de gegevens weer in de applicatie zijn geladen.
Landinstellingen
Tenzij anders aangegeven, wordt in de voorbeelden in dit onderwerp de volgende datumindeling gebruikt: MM/DD/JJJJ. De datumopmaak wordt opgegeven in de opdracht SET DateFormat in uw script voor het laden van gegevens. De standaard datumindeling is mogelijk anders op uw systeem vanwege landinstellingen en andere factoren. U kunt de indelingen in de voorbeelden wijzigen zodat deze aansluiten op uw behoeften. Of u kunt de indelingen in uw load-script wijzigen zodat ze overeenkomen met deze voorbeelden. Ga voor meer informatie naar Regionale instellingen voor apps en scripts aanpassen.
Standaard landinstellingen van de app zijn gebaseerd op het gebruikersprofiel. Deze landinstellingen voor indelingen zijn niet gerelateerd aan de taal die wordt weergegeven in de gebruikersinterface van Qlik Cloud. Qlik Cloud wordt weergegeven in dezelfde taal als de browser die u gebruikt.
Voorbeeld 1 – Genereren van objecten met behulp van het load-script
Overzicht
Open de editor voor laden van gegevens en voeg het onderstaande load-script toe aan een nieuw tabblad.
Dit voorbeeld creëert die variabelen met behulp van de now()-functie. Elke variabele gebruikt een van de timer_mode-opties om het effect van de variabele te demonstreren.
Laad het script opnieuw en herlaad het na een korte tijdsperiode zodat de variabelen hun doel kunnen laten zien. De variabelen now(0) en now(1) zullen nu verschillende waarden laten zien en hun doel demonstreren.
Load-script
LET vPreviousDataLoad = now(0);
LET vCurrentDataLoad = now(1);
LET vApplicationOpened = now(2);
Resultaten
Nadat de gegevens voor de tweede keer zijn geladen, maakt u drie tekstvakken door de onderstaande instructies te volgen.
Maak eerst een tekstvak voor de gegevens die eerder zijn geladen.
Doe het volgende:
Gebruik het diagramobject Tekst en afbeelding om een tekstvak te maken.
Voeg de volgende meting toe aan het object:
=vPreviousDataLoad
Onder Uiterlijk selecteert u Show titles en voegt u de titel 'Previous Reload Time' toe aan het object.
Maak vervolgens een tekstvak voor de gegevens die momenteel worden geladen.
Doe het volgende:
Gebruik het diagramobject Tekst en afbeelding om een tekstvak te maken.
Voeg de volgende meting toe aan het object:
=vCurrentDataLoad
Onder Uiterlijk selecteert u Show titles en voegt u de titel 'Current Reload Time' toe aan het object.
Maak een definitief tekstvak dat wordt getoond als de sessie van de gebruiker in de toepassing wordt gestart.
Doe het volgende:
Gebruik het diagramobject Tekst en afbeelding om een tekstvak te maken.
Voeg de volgende meting toe aan het object:
=vApplicationOpened
Onder Uiterlijk selecteert u Show titles en voegt u de titel 'User Session Started' toe aan het object.
De bovenstaande afbeelding geeft voorbeeldwaarden weer voor elk van de gemaakte variabelen. De waarden zouden bijvoorbeeld als volgt kunnen zijn:
Vorige herlaadtijd: 6/22/2022 8:54:03 AM
Huidige herlaadtijd: 6/22/2022 9:02:08 AM
Start gebruikerssessie: 6/22/2022 8:40:40 AM
Voorbeeld 2 – Genereren van objecten zonder het load-script
Overzicht
In dit voorbeeld maakt u drie diagramobjecten met de now()-functie zonder dat er variabelen of gegevens in de applicatie worden geladen. Elk diagramobject gebruikt een van de timer_mode-opties om het effect te demonstreren.
Er is geen load-script voor dit voorbeeld.
Doe het volgende:
Open de editor voor laden van gegevens.
Klik zonder het bestaande load-script te wijzigen op Gegevens laden.
Laad het script na korte tijd nog een tweede keer.
Resultaten
Maak drie tekstvakken zodra de gegevens voor een tweede keer zijn geladen.
Maak eerst een tekstvak voor de laatste keer dat de gegevens opnieuw zijn geladen.
Doe het volgende:
Gebruik het diagramobject Tekst en afbeelding om een tekstvak te maken.
Voeg de volgende meting toe:
=now(0)
Onder Uiterlijk selecteert u Titels tonenen voegt u de titel Laatste herlaadtijd gegevens toe aan het object.
Maak nu een tekstvak om de actuele tijd te tonen.
Doe het volgende:
Gebruik het diagramobject Tekst en afbeelding om een tekstvak te maken.
Voeg de volgende meting toe:
=now(1)
Onder Uiterlijk selecteert u Titels tonen en voegt u de titel Actuele tijd toe aan het object.
Maak een definitief tekstvak dat wordt getoond als de sessie van de gebruiker in de toepassing wordt gestart.
Doe het volgende:
Gebruik het diagramobject Tekst en afbeelding om een tekstvak te maken.
Voeg de volgende meting toe:
=now(2)
Onder Uiterlijk selecteert u Titels tonen en voegt u de titel Start gebruikerssessie toe aan het object.
De bovenstaande afbeelding geeft voorbeeldwaarden weer voor elk van de gemaakte objecten. De waarden zouden bijvoorbeeld als volgt kunnen zijn:
Laatste herlaadtijd gegevens: 6/22/2022 9:02:08 AM
Huidige tijd: 6/22/2022 9:25:16 AM
Start gebruikerssessie: 6/22/2022 8:40:40 AM
Het diagramobject Laatste herlaadtijd gegevens maakt gebruik van een timer_mode-waarde van 0. Dit retourneert de tijdstempel voor de laatste keer dat de gegevens opnieuw zijn geladen.
Het diagramobject Actuele tijd gebruikt een timer_mode-waarde van 1. Dit retourneert de actuele tijd volgens de systeemklok. Als het werkblad of object wordt vernieuwd, wordt deze waarde bijgewerkt.
Het diagramobject Start gebruikerssessie gebruikt een timer_mode-waarde van 2. Dit retourneert de tijdstempel voor het moment waarop de applicatie werd geopend en waarop de gebruikerssessie is begonnen.
Voorbeeld 3 – Scenario
Overzicht
Open de editor voor laden van gegevens en voeg het onderstaande load-script toe aan een nieuw tabblad.
Het load-script bevat:
Een gegevensverzameling die bestaat uit de voorraad voor een cryptovaluta-miningactiviteit die wordt geladen in de tabel Inventory.
Gegevens met de volgende velden: id, purchase_date en wph (watt per uur).
De gebruiker wil een tabel hebben die de totale kosten per id weergeeft die iedere mining-rig in de maand tot nu toe heeft gemaakt wat betreft stroomverbruik.
Deze waarde moet worden bijgewerkt wanneer het diagramobject wordt vernieuwd. De huidige prijs voor elektriciteit is USD 0,0678 per kWu.
Laad de gegevens en open een werkblad. Maak een nieuwe tabel en voeg dit veld toe als dimensie: id.
Maak de volgende meting:
=(now(1)-monthstart(now(1)))*24*wph/1000*0.0678
Als het diagramobject is vernieuwd op 6/22/2022 om 10:39:05 AM, dan zou het de volgende resultaten retourneren:
Resultatentabel
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
De gebruiker wil graag dat de objectresultaten elke keer dat het object wordt vernieuwd, ook worden vernieuwd. Daarom staat het timer_mode-argument in instanties van de now()-functie in de uitdrukking. De tijdstempel voor het begin van de maand, die is vastgesteld met behulp van de now()-functie als het tijdstempelargument in de monthstart()-functie, wordt afgetrokken van de huidige tijd die wordt vastgesteld door de now()-functie. Dit verstrekt de totale hoeveelheid tijd die tot nu doe in deze maand (in dagen) is verstreken.
Deze waarde wordt vermenigvuldigd met 24 (het aantal uren in een dag) en vervolgens met de waarde in het wph-veld.
Voor de conversie van watt per uur naar kilowatt per uur, wordt het resultaat gedeeld door 1000 voordat het uiteindelijk wordt vermenigvuldigd met het verstrekte kWu-tarief.
Was deze pagina nuttig?
Als u problemen ervaart op deze pagina of de inhoud onjuist is – een typfout, een ontbrekende stap of een technische fout – laat het ons weten zodat we dit kunnen verbeteren!