Tenesta ScriptForge.Region

Tenesta Region tilbyr ei samling eigenskapar og metodar for å handsama lokale og regionrelaterte aspekt ved programmering, for eksempel:

Definisjonar

Språk eller region

Ein streng som kombinerer eit språk og eit land i formatet «sp-LA» (språk-land). Språkdelen vert uttrykt med 2 eller 3 små bokstavar, ein bindestrek og 2 store bokstavar som representerer landet.

For eksempel svarar "de-AT" til det tyske språket brukt i Austerrike og "fr-BE" til det franske språket i Belgia og så vidare.

I nokre situasjonar er ikkje den fullstendige nasjonale innstillinga nødvendig, og berre språket eller landet kan spesifiserast.

note

Dei fleste eigenskapane og metodane godtar ei nasjonal innstilling som argument. Viss det ikkje er gjeve noko nasjonal innstilling, vert den nasjonale innstillinga for brukargrensesnittet som er definert i eigenskapen OfficeLocale i tenesta Platform brukt.


Tidssone

Ein streng i formatet «Region/By» som «Europa/Berlin», eller ein tidssone-ID som «UTC» eller «GMT-8:00». Du finn ei liste over moglege tidssonenamn og ID-ar på wikisida List of tz database timezones.

warning

Viss du set inn ein ugyldig tidssonestreng i nokre av metodane i tenesta Region, vil dette ikkje resultere i ein køyretidsfeil. I staden vil metodar som UTCDateTime og UTCNow returnera gjeldende dato og klokkeslett brukt av operativsystemet.


Tidsforskyvinga mellom tidssona og Greenwich Meridian Time (GMT) er gjeve i minutt.

Sommartid (DST) er ei ekstra forskyving.

note

Tidssona og DST-forskyvinga kan vera positive eller negative.


Oppkall av tenester

Før du brukar tenesta Region, må biblioteket ScriptForge vera lasta inn eller importert:

note

• Grunnleggjande makroar krev innlasting av biblioteket ScriptForge ved hjelp av denne setninga:
GlobalScope.BasicLibraries.loadLibrary("ScriptForge")

• Python-skript krev import frå scriptforge-modulen:
from scriptforge import CreateScriptService


Eksempla nedanfor i Basic og Python startar tenesta Region og får tilgang til eigenskapen Country.

I Basic

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

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

Eigenskapar

Alle eigenskapane som er oppførte nedanfor godtar eit locale-argument, gjeve som ein streng. Nokre av eigenskapane krev at dette argumentet er i formatet "sp-LA" (språk-LAND), medan andre godtek "sp" eller "LA".

Namn

Skriveverna

Type

Språkversjon

Beskriving

Country

Ja

String

"la‑CO"
"CO"

Returnerer landsnamnet på engelsk som svarar til ein gjeven region.

Currency

Ja

String

"la-CO"
"CO"

Returnerer ISO 4217-valutakoden for den gjevne regionen.

DatePatterns

Ja

Strengmatrise

"la-CO"

Returnerer ei nullbasert matrise med strengar som inneheld datoakseptmønstra for det gjevne området.

DateSeparator

Ja

String

"la-CO"

Returnerer datoskiljeteikn brukte i den gjevne regionen.

DayAbbrevNames

Ja

Strengmatrise

"la-CO"
"la"

Returnerer ei nullbasert matrise av strengar som inneheld lista over forkorta namn på vekedagar på det gjevne språket.

DayNames

Ja

Strengmatrise

"la-CO"
"la"

Returnerer ei nullbasert matrise av strengar som inneheld lista over namna på vekedagar på det gjevne språket.

DayNarrowNames

Ja

Strengmatrise

"la-CO"
"la"

Returnerer ei nullbasert matrise av strengar som inneheld lista over dei første bokstavane i namna på vekedagar på det gjevne språket.

DecimalPoint

Ja

String

"la-CO"

Returnerer desimalskiljeteikn brukte i tal i det gjevne området.

Language

Ja

String

"la-CO"
"la"

Returnerer namnet på språket, på engelsk, for den gjevne regionen.

ListSeparator

Ja

String

"la-CO"

Returnerer listeskiljeteikn brukte i den gjevne regionen.

MonthAbbrevNames

Ja

Strengmatrise

"la-CO"
"la"

Returnerer ei nullbasert matrise av strengar som inneheld lista over forkorta namn på månadar på det gjevne språket.

MonthNames

Ja

Strengmatrise

"la-CO"
"la"

Returnerer ei nullbasert matrise av strengar som inneheld lista over namna på månadane på det gjevne språket.

MonthNarrowNames

Ja

Strengmatrise

"la-CO"
"la"

Returnerer ei nullbasert matrise av strengar som inneheld lista over dei første bokstavane i namna på månadane på det gjevne språket.

ThousandSeparator

Ja

String

"la-CO"

Returnerer tusenskiljeteikn brukte i tal i det gjevne området.

TimeSeparator

Ja

String

"la-CO"

Returnerer skiljeteikn som vert brukte til å formatera tider i det gjevne området.


Liste over metodar i tenesta «Region»

DSTOffset
LocalDateTime

Number2Text
TimeZoneOffset

UTCDateTime
UTCNow


DSTOffset

Reknar ut den ekstra sommartidsforskyvinga (DST) i minutt som gjeld for ein gjeven region og tidssone.

Syntaks:

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

Parametrar:

localdatetime: den lokale datoen og klokkeslettet uttrykt som ein dato.

timezone: tidssona som den forskyvinga skal reknast ut for.

locale: språket som spesifiserer landet som den lokale tida skal reknast ut for, gjeve anten i «sp-LA»- eller «LA»-format (språk-LAND). Standardverdien er språket som er definert i eigenskapen OfficeLocale i tenaren Platform.

Eksempel:

I Basic

      ' Reknar ut den offisielt gjeldande tidssona for "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 (minutt)
      aDateTime = DateSerial(2022, 1, 1) + TimeSerial(16, 0, 0)
      offset = oRegion.DSTOffset(aDateTime, "America/Los_Angeles", "US") ' 0 (minutt)
    
I Python

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

LocalDateTime

Reknar ut lokal dato og klokkeslett frå UTC-dato og -klokkeslett.

Syntaks:

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

Parametrar:

utcdatetime: UTC-datoen og -klokkeslettet uttrykt ved hjelp av eit datoobjekt.

timezone: tidssona som den lokale tida skal reknast ut for.

locale: språket som spesifiserer landet som den lokale tida skal reknast ut for, gjeve anten i «la-CO»- eller «CO»-format. Standardverdien er språket som er definert i eigenskapen OfficeLocale i tenaren Platform.

Eksempel:

I Basic

      ' 6. juni 2022 kl. 10:30:45 (brukt her som UTC-tid)
      Dim UTCTime As Date, localTime As Date
      UTCTime = DateSerial(2022, 6, 23) + TimeSerial(10, 30, 45)
      ' Reknar ut lokal tid i Sao Paulo, Brasil
      6. juni 2022 kl. 07:30:45
      localTime = oRegion.LocalDateTime(UTCTime, "America/Sao_Paulo", "BR")
    
I Python

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

Number2Text

Konverterer tal og pengeverdiar til skrive tekst for alle språka som for tida er støtta.

tip

Du finn ei liste over alle språka som er støtta i XNumberText Interface API reference.


Syntaks:

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

Parametrar:

number: talet som skal konverterast til skrive tekst. Det kan leverast anten som ein numerisk type eller som ein streng. Når det er brukt ein streng, kan han innleiast med eit prefiks som informerer om korleis tala skal skrivast. Det er også mogleg å inkludera ISO 4217 valutakoder. Sjå eksempla nedanfor for meir informasjon.

locale: Koden som definerer språket som talet skal konverterast til, gjeve anten i «la-CO» eller «la» format. Standardverdien er språket som er definert i eigenskapen OfficeLocale til tenesta Platform.

Eksempel:

I Basic

      ' Returnerer "eitt hundre og fem"
      Dim numText As String
      numText = oRegion.Number2Text(105, "nn-NO")
      ' Returnerer: "to komma fire to"
      numText = oRegion.Number2Text(2.42, "nn-NO")
      ' Returnerer: "tjuefem euro og ti cent" Legg merkje til valutasymbolet "EUR".
      numText = oRegion.Number2Text("EUR 25.10", "nn-NO")
      ' Returnerer: "femtende"; Legg merke til det prefikset "ordinal"
      numText = oRegion.Number2Text("ordinal 15", "nn-NO")
    
I Python

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

Viss du ønskjer ei liste over alle støtta prefiks på eit gjeve språk, kall opp Number2Text med det spesielle "hjelp"-argumentet. I eksempelet nedanfor går ein ut frå at lokaliteten er sett til "en-US". Lista over tilgjengelege prefiks for "en-US" vert vist i 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
    

Den første linja i meldingsboksen er utan prefiks, noko som betyr at innhaldet er i standardformatet. Linjene nedanfor inneheld prefikset og nokre eksempel på tal som brukar formatet.

note

Kvart språk har sitt eige sett med støtta prefiks. Talet på tilgjengelege prefiks kan variera frå språk til språk.


For å få lista over prefiks for eit spesifikt språk eller ein lokalitet, kan det spesifiserast som det andre argumentet i Number2Text. Eksempelet nedanfor viser dei prefiksa som er tilgjengelege for lokaliteten "pt-BR":


      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

Returnerer forskyvinga mellom GMT og den gjevne tidssona og lokaliteten i minutt.

Syntaks:

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

Parametrar:

timezone: tidssona som forskyvinga i høve til GMT skal reknast ut for.

locale: lokaliteten som spesifiserer landet som forskyvinga skal reknast ut for, gjeve anten i formata "la-CO" eller "CO". Standardverdien er lokaliteten som er definert i eigenskapen OfficeLocale i tenesta Platform.

Eksempel:

I Basic

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

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

UTCDateTime

Returnerer UTC-datoen og -klokkeslettet ut frå ein gjeven lokal dato og eit gjeve klokkeslett i ei tidssone.

Syntaks:

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

Parametrar:

localdatetime: den lokale datoen og klokkeslettet i ei bestemt tidssone uttrykt som ein dato.

timezone: tidssona som argumentet localdatetime vart gjeven for.

locale: lokaliteten som spesifiserer landet som argumentet localdatetime er gjeve for, uttrykt anten i formatet "sp-LA" eller "LA" (språk-LAND). Standardverdien er lokaliteten som er definert i eigenskapen OfficeLocale i tenesta Platform.

Eksempel:

I Basic

      ' Dato/klokkeslett i Berlin, 23. juni 2022 kl. 14:30:00
      Dim localDT As Date, utcTime As Date
      localDT = DateSerial(2022, 6, 23) + TimeSerial(14, 30, 0)
      ' UTC dato/klokkeslett er 23. juni 2022 kl. 12:30:00
      utcTime = oRegion.UTCDateTime(localDT, "Europe/Berlin", "DE")
    
I Python

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

UTCNow

Returnerer gjeldande UTC-dato og -klokkeslett når det er gjeve ei tidssone og ein lokalitet.

Denne metoden brukar gjeldande dato og klokkeslett i operativsystemet for å rekna UTC-tida.

Syntaks:

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

Parametrar:

timezone: tidssona som den gjeldande UTC-tida skal reknast ut for.

locale: lokaliteten som spesifiserer landet som den gjeldande UTC-tida skal reknast ut for, gjeve anten i formata "sp-LA" eller "LA" (språk-LAND). Standardverdien er lokaliteten som er definert i eigenskapen OfficeLocale i tenesta Platform.

Eksempel:

I Basic

      ' Går ut frå at klokka i operativsystemet er 23. juni 2022 kl. 10:42:00
      ' Viss datamaskinen er i Europa/Berlin, er UTC-tida 23. juni 2022 kl. 08:42:00
      Dim utcTime As Date
      utcTime = oRegion.UTCNow("Europe/Berlin", "DE")
    
I Python

      utcTime = oRegion.UTCNow("Europe/Berlin", "DE")
    

Støtt oss!