Service ScriptForge.Region

De service Region biedt een verzameling eigenschappen en methoden om lokale en regiogerelateerde aspecten van programmeren af te handelen, zoals:

Definities

Land of regio

Een tekenreeks die een taal en een land combineert in het formaat "la-CO". Het taalgedeelte wordt uitgedrukt met 2 of 3 kleine letters gevolgd door een streepje en 2 hoofdletters die het land vertegenwoordigen.

"en-US" komt bijvoorbeeld overeen met de Engelse taal in de Verenigde Staten; "fr-BE" komt overeen met de Franse taal in België, enzovoort.

In sommige situaties is de volledige landinstelling niet vereist en kan alleen de taal of het land worden opgegeven.

note

De meeste eigenschappen en methoden accepteren een landinstelling als argument. Als er geen landinstelling is opgegeven, wordt de landinstelling van de gebruikersinterface gebruikt, die is gedefinieerd in de eigenschap OfficeLocale van de service Platform.


Tijdzone

Een tekenreeks in de notatie "Regio/Stad" zoals "Europa/Berlijn", of een tijdzone-ID zoals "UTC" of "GMT-8:00". Raadpleeg de wiki-pagina Lijst met tz-databasetijdzones voor een lijst met mogelijke tijdzonenamen en ID's.

warning

Het verstrekken van een ongeldige tijdzonetekenreeks aan een van de methoden in de service Region resulteert niet in een runtime-fout. In plaats daarvan zullen methoden als UTCDateTime en UTCNow de datum en tijd van het huidige besturingssysteem retourneren.


Het tijdsverschil tussen de tijdzone en de Greenwich Meridian Time (GMT) wordt uitgedrukt in minuten.

De zomertijd (DST) is een extra compensatie.

note

De tijdzone- en zomertijdverschuivingen kunnen positief of negatief zijn.


Service-aanroep

Voordat u de service Region gebruikt, moet de ScriptForge-bibliotheek worden geladen of geïmporteerd:

note

• Basic macro's kunnen de bibliotheek ScriptForge laden met de instructie:
GlobalScope.BasicLibraries.loadLibrary("ScriptForge")

• Python scripts kunnen de module scriptforge importeren met:
from scriptforge import CreateScriptService


De onderstaande voorbeelden in Basic en Python instantiëren de service Region en openen de eigenschap Country.

In BASIC

    GlobalScope.BasicLibraries.LoadLibrary("ScriptForge")
    Dim oRegion As Variant
    oRegion = CreateScriptService("Region")
    MsgBox oRegion.Country("en-US") ' Verenigde Staten
  
In Python

    from scriptforge import CreateScriptService
    oRregion = CreateScriptService("Region")
    bas = CreateScriptService("Basic")
    bas.MsgBox(oRegion.Country("en-US"))
  

Eigenschappen

Alle onderstaande eigenschappen accepteren een locale-argument, opgegeven als een tekenreeks. Sommige eigenschappen vereisen dat dit argument de indeling "la-CO" heeft, terwijl andere "la" of "CO" als invoer kunnen ontvangen.

Naam

Alleen lezen

Type

Taalinstellingen

Beschrijving

Country

Ja

String

"la‑CO"
"CO"

Retourneert de landnaam in het Engels die overeenkomt met een bepaalde regio.

Currency

Ja

String

"la-CO"
"CO"

Retourneert de ISO 4217-valutacode van de opgegeven regio.

DatePatterns

Ja

Tekenreeksmatrix

"la-CO"

Retourneert een op nul gebaseerde matrix van tekenreeksen die de datumacceptatiepatronen voor de opgegeven regio bevatten.

DateSeparator

Ja

String

"la-CO"

Retourneert het datumscheidingsteken dat in de opgegeven regio wordt gebruikt.

DayAbbrevNames

Ja

Tekenreeksmatrix

"la-CO"
"la"

Retourneert een op nul gebaseerde matrix van tekenreeksen die de lijst met afgekorte weekdagnamen in de opgegeven taal bevat.

DayNames

Ja

Tekenreeksmatrix

"la-CO"
"la"

Retourneert een op nul gebaseerde matrix van tekenreeksen die de lijst met weekdagnamen in de opgegeven taal bevat.

DayNarrowNames

Ja

Tekenreeksmatrix

"la-CO"
"la"

Retourneert een op nul gebaseerde matrix van tekenreeksen die de lijst met de initialen van weekdagnamen in de opgegeven taal bevat.

DecimalPoint

Ja

String

"la-CO"

Retourneert het decimaalteken dat wordt gebruikt in getallen in de opgegeven regio.

Language

Ja

String

"la-CO"
"la"

Retourneert de naam van de taal, in het Engels, van de opgegeven regio.

ListSeparator

Ja

String

"la-CO"

Retourneert het lijstscheidingsteken dat in de opgegeven regio wordt gebruikt.

MonthAbbrevNames

Ja

Tekenreeksmatrix

"la-CO"
"la"

Retourneert een op nul gebaseerde matrix van tekenreeksen die de lijst met afgekorte maandnamen in de opgegeven taal bevat.

MonthNames

Ja

Tekenreeksmatrix

"la-CO"
"la"

Retourneert een op nul gebaseerde matrix van tekenreeksen die de lijst met maandnamen in de opgegeven taal bevat.

MonthNarrowNames

Ja

Tekenreeksmatrix

"la-CO"
"la"

Retourneert een op nul gebaseerde matrix van tekenreeksen met de lijst van de initialen van maandnamen in de opgegeven taal.

ThousandSeparator

Ja

String

"la-CO"

Retourneert het scheidingsteken voor duizendtallen dat wordt gebruikt in getallen in het opgegeven gebied.

TimeSeparator

Ja

String

"la-CO"

Retourneert het scheidingsteken dat wordt gebruikt om tijden in de opgegeven regio op te maken.


Lijst met methoden in de service Regio

DSTOffset
LocalDateTime

Number2Text
TimeZoneOffset

UTCDateTime
UTCNow


DSTOffset

Berekent de extra verschuiving van de zomertijd (DST), in minuten, die van toepassing is op een bepaalde regio en tijdzone.

Syntaxis:

svc.DSTOffset(localdatetime: date, timezone: str, opt locale: str): int

Parameters:

localdatetime: de lokale datum en tijd uitgedrukt als een datum.

timezone: de tijdzone waarvoor de afwijking wordt berekend.

locale: de landinstelling die het land specificeert waarvoor de offset wordt berekend, gegeven in de notatie "la-CO" of "CO". De standaardwaarde is de landinstelling die is gedefinieerd in de eigenschap OfficeLocale van de eigenschap Platform-service.

Voorbeeld:

In BASIC

      ' Berekent de offset die van toepassing is in de tijdzone "America/Los_Angeles"
      Dim aDateTime As Date, offset As Integer
      aDateTime = DateSerial(2022, 7, 1) + TimeSerial(16, 0, 0)
      offset = oRegion.DSTOffset(aDateTime, "America/Los_Angeles", "US") ' 60 (minuten)
      aDateTime = DateSerial(2022, 1, 1) + TimeSerial(16, 0, 0)
      offset = oRegion.DSTOffset(aDateTime, "America/Los_Angeles", "US") ' 0 (minuten)
    
In Python

      import datetime
      aDateTime = datetime.datetime(2022, 7, 1, 16, 0, 0)
      offset = oRegion.DSTOffset(aDateTime, "America/Los_Angeles", "US") ' 60 (minuten)
      aDateTime = datetime.datetime(2022, 1, 1, 16, 0, 0)
      offset = oRegion.DSTOffset(aDateTime, "America/Los_Angeles", "US") ' 0 (minuten)
    

LocalDateTime

Berekent de lokale datum en tijd op basis van een UTC-datum en -tijd.

Syntaxis:

svc.LocalDateTime(utcdatetime: date, timezone: str, opt locale: str): date

Parameters:

utcdatetime: de UTC-datum en -tijd, uitgedrukt met een datumobject.

timezone: de tijdzone waarvoor de lokale tijd wordt berekend.

locale: de landinstelling die het land aangeeft waarvoor de lokale tijd wordt berekend, gegeven in de notatie "la-CO" of "CO". De standaardwaarde is de landinstelling die is gedefinieerd in de eigenschap OfficeLocale van de eigenschap Platform-service.

Voorbeeld:

In BASIC

      ' June 6th, 2022 at 10:30:45 (hier gebruikt als UTC-tijd)
      Dim UTCTime As Date, localTime As Date
      UTCTime = DateSerial(2022, 6, 23) + TimeSerial(10, 30, 45)
      ' Berekent lokale tijd in Sao Paulo, Brazilië
      ' June 6th, 2022 at 07:30:45
      localTime = oRegion.LocalDateTime(UTCTime, "America/Sao_Paulo", "BR")
    
In Python

      import datetime
      utcTime = datetime.datetime(2022, 6, 23, 10, 30, 45)
      localTime = oRegion.LocalDateTime(utcTime, "America/Sao_Paulo", "BR")
    

Number2Text

Converteert getallen en geldwaarden naar geschreven tekst voor een van de momenteel ondersteunde talen.

tip

Ga voor een lijst van alle ondersteunde talen naar de XNumberText Interface API-referentie.


Syntaxis:

svc.Number2Text(number: any, opt locale: str): str

Parameters:

number: het getal dat moet worden omgezet in geschreven tekst. Het kan worden geleverd als een numeriek type of als een tekenreeks. Wanneer een tekenreeks wordt opgegeven, kan deze worden voorafgegaan door een voorvoegsel dat aangeeft hoe de cijfers moeten worden geschreven. Het is ook mogelijk om ISO 4217-valutacodes op te nemen. Zie onderstaande voorbeelden voor meer informatie.

locale: de landinstelling die de taal definieert waarnaar het nummer wordt geconverteerd, gegeven in de indeling "la-CO" of "la". De standaardwaarde is de landinstelling die is gedefinieerd in de eigenschap OfficeLocale van de eigenschap Platform-service.

Voorbeeld:

In BASIC

      ' Retourneert "honderdvijf"
      Dim numText As String
      numText = oRegion.Number2Text(105, "en-US")
      ' Retourneert: "twee punt vier twee"
      numText = oRegion.Number2Text(2.42, "en-US")
      ' Retourneert: "vijfentwintig euro en tien cent" Let op het valutasymbool "EUR"
      numText = oRegion.Number2Text("EUR 25.10", "en-US")
      ' Retourneert: "vijftiende"; Let op het voorvoegsel "ordinal"
      numText = oRegion.Number2Text("ordinal 15", "en-US")
    
In Python

      numText = oRegion.Number2Text(105, "en-US")
      numText = oRegion.Number2Text(2.42, "en-US")
      numText = oRegion.Number2Text("EUR 25.10", "en-US")
      numText = oRegion.Number2Text("ordinal 15", "en-US")
    

Om een lijst te krijgen van alle ondersteunde voorvoegsels in een bepaalde taal, roept u Number2Text aan met het speciale "help"-argument. Neem in het onderstaande voorbeeld aan dat uw landinstelling is ingesteld op "en-US", dan wordt de lijst met beschikbare voorvoegsels voor "en-US" weergegeven door MsgBox:


      prefixes = oRegion.Number2Text("help")
      MsgBox prefixes
      ' one, two, three
      ' ordinal: first, second, third
      ' ordinal-number: 1st, 2nd, 3rd
      ' year: nineteen ninety-nine, two thousand, two thousand one
      ' currency (for example, USD): two U.S. dollars and fifty cents
      ' money USD: two and 50/100 U.S. dollars
    

De eerste regel in het berichtvenster heeft geen voorvoegsel, wat betekent dat dit het standaardformaat is. De volgende regels bevatten het voorvoegsel en enkele voorbeelden van getallen die het formaat gebruiken.

note

Elke taal heeft zijn eigen set ondersteunde voorvoegsels. Het aantal beschikbare voorvoegsels kan van taal tot taal verschillen.


Om de lijst met voorvoegsels voor een specifieke taal of landinstelling te krijgen, kan deze worden opgegeven als het tweede argument in Number2Text. Het onderstaande voorbeeld toont de beschikbare voorvoegsels die beschikbaar zijn voor de "pt-BR"-landinstelling:


      prefixes = oRegion.Number2Text("help", "pt-BR")
      MsgBox prefixes
      ' um, dois, três
      ' feminine: uma, duas, três
      ' masculine: um, dois, três
      ' ordinal-feminine: primeira, segunda, terceira
      ' ordinal-masculine: primeiro, segundo, terceiro
      ' ordinal-number-feminine: 1.ª, 2.ª, 3.ª
      ' ordinal-number-masculine: 1.º, 2.º, 3.º
    

TimeZoneOffset

Retourneert de afwijking tussen GMT en de opgegeven tijdzone en landinstelling, in minuten.

Syntaxis:

svc.TimeZoneOffset(timezone: str, opt locale: str): int

Parameters:

timezone: de tijdzone waarvoor de afwijking naar de GMT wordt berekend.

locale: de landinstelling die het land specificeert waarvoor de offset wordt berekend, gegeven in de notatie "la-CO" of "CO". De standaardwaarde is de landinstelling die is gedefinieerd in de eigenschap OfficeLocale van de Platform-service.

Voorbeeld:

In BASIC

      Dim offset As Integer
      offset = oRegion.TimeZoneOffset("America/New_York", "US") ' -300
      offset = oRegion.TimeZoneOffset("Europe/Berlin", "DE") ' 60
    
In Python

      offset = oRegion.TimeZoneOffset("America/New_York", "US") # -300
      offset = oRegion.TimeZoneOffset("Europe/Berlin", "DE") # 60
    

UTCDateTime

Retourneert de UTC-datum en -tijd, rekening houdend met een bepaalde lokale datum en tijd in een tijdzone.

Syntaxis:

svc.UTCDateTime(localdatetime: date, timezone: str, opt locale: str): date

Parameters:

localdatetime: de lokale datum en tijd in een specifieke tijdzone uitgedrukt als een datum.

timezone: de tijdzone waarvoor het argument localdatetime is opgegeven.

locale: de landinstelling die het land specificeert waarvoor het argument localdatetime werd gegeven, uitgedrukt in de notatie "la-CO" of "CO". De standaardwaarde is de landinstelling die is gedefinieerd in de eigenschap OfficeLocale van de Platform-service.

Voorbeeld:

In BASIC

      ' Datum/Tijd in Berlijn, 23 juni 2022 om 14:30:00
      Dim localDT As Date, utcTime As Date
      localDT = DateSerial(2022, 6, 23) + TimeSerial(14, 30, 0)
      ' De UTC-datum/-tijd is 23 juni 2022 om 12:30:00
      utcTime = oRegion.UTCDateTime(localDT, "Europe/Berlin", "DE")
    
In Python

      import datetime
      localDT = datetime.datetime(2022, 6, 23, 14, 30, 0)
      utcTime = oRegion.UTCDateTime(localDT, "Europe/Berlin", "DE")
    

UTCNow

Retourneert de huidige UTC-datum en -tijd, gegeven een tijdzone en landinstelling.

Deze methode gebruikt de huidige datum en tijd van uw besturingssysteem om de UTC-tijd te berekenen.

Syntaxis:

svc.UTCNow(timezone: str, opt locale: str): date

Parameters:

timezone: de tijdzone waarvoor de huidige UTC-tijd wordt berekend.

locale: de landinstelling die het land aangeeft waarvoor de huidige UTC-tijd wordt berekend, gegeven in de notatie "la-CO" of "CO". De standaardwaarde is de landinstelling die is gedefinieerd in de eigenschap OfficeLocale van de Platform-service.

Voorbeeld:

In BASIC

      ' Stel dat de tijd van het besturingssysteem 23 juni 2022 is om 10:42:00
      ' Als de computer zich in Europa/Berlijn bevindt, is UTC-tijd 23 juni 2022 om 08:42:00
      Dim utcTime As Date
      utcTime = oRegion.UTCNow("Europe/Berlin", "DE")
    
In Python

      utcTime = oRegion.UTCNow("Europa/Berlijn", "DE")
    

Help ons, alstublieft!