Dynamische datumwaarde in URL of request body

We kunnen dynamische datumwaarden genereren in request content van URL's of Http. Dit kan handig zijn bij webservices waarbij vereist is dat een datumwaarde wordt ingevoerd als onderdeel van de request body voor een Http POST, bijvoorbeeld:

… <StartDate>2013-11-27</StartDate> ...

In plaats van een datum met vaste waarde in te voeren, kunnen we de volgende notatie gebruiken om waarden te genereren op basis van de datum/tijd van vandaag:

… <StartDate>{datetime;yyyy-MM-dd}</StartDate> …

Let wel, andere formaat-waarden zijn ook mogelijk. Bovendien kunnen we offsets gebruiken om verschillende waarden te berekenen.

Deze notatie wordt dan vervangen door een actuele waarde door de datum/tijd van vandaag te gebruiken en de juiste waarde te berekenen/formatteren.

Notatie

Het algemene formaat voor het gebruik van dynamische datums is:

{datetime;format;offset;skipdates}

  • format: definieert het datum/tijd-formaat dat moet worden gebruikt, waarbij identificatoren worden gebruikt voor dag/maand/jaar/uren/minuten/seconden: dd, MM, yyyy, HH, mm, ss
  • offset: waarde die definieert welke offset moet worden gebruikt ten opzichte van de huidige datum en tijd. Positieve waarden berekenen datums in de toekomst, negatieve waarden berekenen datums in het verleden.
  • skipdates: slaat specifieke datums over (gedefinineerd in het formaat yyyy-MM-dd) of een weekenddag (gedefinieerd als 'w')

Voorbeelden

{datetime;MM/dd/yyyy;1}        “tomorrow” in American format

{datetime;dd-MM-yyyy;-1}       “yesterday” in Dutch format

{datetime;MM/dd/yyyy;3;W}   three days from today, but skip weekend days

{datetime;MM/dd/yyyy;1;W,2013-12-25,2014-01-01}   three days from today, but skip weekend days, Christmas Day 2013 and New Year's Day 2014

{datetime;yyyy-MM-ddTHH:mm:ss"GMT+00:00"}         “now” in ISO format

Offsets voor uren en minuten zijn ook mogelijk.

Tot slot een voorbeeld van hoe dit eruitziet in een echte URL die is gespecificeerd in een controleregel (er worden twee datums gegenereerd: vandaag + 7 dagen en vandaag + 14 dagen):

http://www.mysite.com/Search?startDate={datetime;yyyy-MM-dd;7}&endDate={datetime;yyyy-MM-dd;14}

Opmerking: U kunt deze notatie ook gebruiken in de request body content van een Http-/webservice-controleregel.