yearname - skript- och diagramfunktion
Denna funktion returnerar ett fyrsiffrigt år som visningsvärde med ett underliggande numeriskt värde som motsvarar en tidsmarkör för den första millisekunden av den första dagen på det år som innehåller date.
Syntax:
YearName(date[, period_no[, first_month_of_year]] )
Typ av returdata: dual
Argument:
Argument | Beskrivning |
---|---|
date | Det datum som ska evalueras. |
period_no | period_no är ett heltal, där värdet 0 anger det år som innehåller date. Negativa värden i period_no anger föregående år och positiva värden anger efterföljande år. |
first_month_of_year | Om du vill arbeta med (budget)år som inte börjar i januari kan du ange ett värde mellan 2 och 12 i first_month_of_year. Visningsvärdet blir då en sträng som visar två år. |
Exempel och resultat:
I de här exemplen används datumformatet DD/MM/YYYY. Datumformatet anges i SET DateFormat-satsen längst upp i laddningsskriptet. Ändra formatet i exemplen så att det passar dina krav.
Exempel 1:
yearname ( '19/10/2001')
Returnerar 2001.
Exempel 2:
yearname ( '19/10/2001', -1 )
Returnerar 2000.
Exempel 3:
yearname ( '19/10/2001', 0, 4)
Returnerar 2001-2002.
Exempel 4:
Lägg till exempelskriptet i dokumentet och kör det. Lägg sedan till åtminstone de fält som listas i resultatkolumnen på ett ark i dokumentet för att se resultatet.
I det här exemplet skapar vi ett fyra-plus-fyra-siffror-namn för åren som varje faktureringsdatum i tabellen finns på. Detta beror på att den första månaden på året har angetts som månad 4.
TempTable:
LOAD RecNo() as InvID, * Inline [
InvDate
28/03/2012
10/12/2012
5/2/2013
31/3/2013
19/5/2013
15/9/2013
11/12/2013
2/3/2014
14/5/2014
13/6/2014
7/7/2014
4/8/2014
];
InvoiceData:
LOAD *,
YearName(InvDate, 0, 4) AS YrName
Resident TempTable;
Drop table TempTable;
Den resulterande tabellen innehåller de ursprungliga datumen och en kolumn med returvärdet för yearname()-funktionen.
InvDate | YrName |
---|---|
28/03/2012 | 2011-2012 |
10/12/2012 | 2012-2013 |
5/2/2013 | 2012-2013 |
31/3/2013 | 2012-2013 |
19/5/2013 | 2013-2014 |
15/9/2013 | 2013-2014 |
11/12/2013 | 2013-2014 |
2/3/2014 | 2013-2014 |
14/5/2014 | 2014-2015 |
13/6/2014 | 2014-2015 |
7/7/2014 | 2014-2015 |
4/8/2014 | 2014-2015 |