Pomoč LibreOfficeDev 7.6
Storitev Region ponuja zbirko lastnosti in metod za ravnanje s področnimi in krajevnimi elementi programiranja, kot so:
Dostop do krajevno in področno odvisnih nastavitev, kot so oblikovanje števil, valute in časovni pasovi.
Pretvorba časovnih pasov in računanje zamikov zimskega časa.
Preoblikovanje števil v besedilo v vseh podprtih jezikih.
Niz, ki združuje jezik in državo v zapisu »je-DR«. Jezikovni del je zapisan z dvema ali tremi malimi črkami, čemur sledi vezaj ter dve veliki črki, ki predstavljata državo.
Primer: »en-US« predstavlja angleški jezik v ZDA; »fr-BE« predstavlja francoščino v Belgiji itn.
V nekaterih primerih ni potreben poln zapis področne nastavitve in navedete lahko le jezik ali državo.
Večina lastnosti in metod sprejema področno nastavitev kot argument. Če ni navedena nobena področna nastavitev, se uporabi področna nastavitev uporabniškega vmesnika, katero določa lastnost OfficeLocale storitve Platform.
Niz v zapisu »celina/kraj« v angleškem jeziku, kot je »Europe/Berlin«, ali ID časovnega pasu, kot je »UTC« ali »GMT-8:00«. Glejte wiki-stran seznama zbirke podatkov časovnih pasov (v angl.), kjer najdete seznam možnih imen časovnih pasov in njihovi identifikatorjev.
Če je podan neveljaven niz časovnega pasu poljubni metodi storitve Region, ne bo povzročil napake med izvajanjem. Namesto tega metode, kot sta UTCDateTime in UTCNow, vrnejo trenutni datum in čas operacijskega sistema.
Časovni zamik med časovnim pasom in greenwiškim srednjim časom je izražen v minutah.
Zimski čas predstavlja dodatni zamik.
Časovni pas in zamik zimskega časa je lahko pozitiven ali negativen.
Pred uporabo storitve Region je potrebno naložiti ali uvoziti knjižnico ScriptForge:
Spodnja primera v Basicu in Pythonu zaženeta storitev Region in dostopata do lastnosti Country.
    GlobalScope.BasicLibraries.LoadLibrary("ScriptForge")
    Dim oRegion As Variant
    oRegion = CreateScriptService("Region")
    MsgBox oRegion.Country("sl-SI") ' Slovenia (angl. Slovenija)
  
    from scriptforge import CreateScriptService
    oRregion = CreateScriptService("Region")
    bas = CreateScriptService("Basic")
    bas.MsgBox(oRegion.Country("en-US"))
  Vse spodaj navedene lastnosti sprejmejo argument locale, podan kot niz. Nekatere lastnosti zahtevajo ta argument v obliki »je-DR«, medtem ko ga druge lahko prejmejo kot vnos »je« ali »DR«.
| Ime | Samo za branje | Vrsta | Področna nastavitev | Opis | 
|---|---|---|---|---|
| Country | Da | String | "la‑CO" | Vrne angleško ime države, ki ustreza dani regiji oz. področju. | 
| Currency | Da | String | "la-CO" | Vrne kodo ISO 4217 valute v dani regiji oz. področju. | 
| DatePatterns | Da | Polje nizov | "la-CO" | Vrne ničelno polje nizov, ki vsebuje vzorce sprejemljivih zapisov datuma v dani regiji oz. področju. | 
| DateSeparator | Da | String | "la-CO" | Vrne datumsko ločilo, ki se uporablja v dani regiji oz. področju. | 
| DayAbbrevNames | Da | Polje nizov | "la-CO" | Vrne ničelno polje nizov, ki vsebuje seznam okrajšanih imen dni v tednu v danem jeziku. | 
| DayNames | Da | Polje nizov | "la-CO" | Vrne ničelno polje nizov, ki vsebuje seznam imen dni v tednu v danem jeziku. | 
| DayNarrowNames | Da | Polje nizov | "la-CO" | Vrne ničelno polje nizov, ki vsebuje seznam začetnic imen dni v tednu v danem jeziku. | 
| DecimalPoint | Da | String | "la-CO" | Vrne ločilo decimalk, ki se uporablja za števila v dani regiji oz. področju. | 
| Language | Da | String | "la-CO" | Vrne angleško ime jezika v dani regiji oz. področju. | 
| ListSeparator | Da | String | "la-CO" | Vrne seznamsko ločilo, ki se uporablja v dani regiji oz. področju. | 
| MonthAbbrevNames | Da | Polje nizov | "la-CO" | Vrne ničelno polje nizov, ki vsebuje seznam okrajšanih imen mesecev v danem jeziku. | 
| MonthNames | Da | Polje nizov | "la-CO" | Vrne ničelno polje nizov, ki vsebuje seznam imen mesecev v danem jeziku. | 
| MonthNarrowNames | Da | Polje nizov | "la-CO" | Vrne ničelno polje nizov, ki vsebuje seznam začetnic imen mesecev v danem jeziku. | 
| ThousandSeparator | Da | String | "la-CO" | Vrne ločilo tisočic, uporabljeno za števila na navedenem področju oz. regiji. | 
| TimeSeparator | Da | String | "la-CO" | Vrne ločilo, ki se uporablja za časovni zapis v dani regiji oz. področju. | 
| Seznam metod storitve Region | ||
|---|---|---|
Izračuna dodatni zamik zimskega časa v minutah, ki velja za dano regijo oz. področje in časovni pas.
svc.DSTOffset(localdatetime: date, timezone: str, opt locale: str): int
localdatetime: krajevni datum in čas, podan kot datum.
timezone (časovni pas): časovni pas, za katerega se izračuna odmik.
locale: področna nastavitev, ki določa državo, za katero bo izračunan zamik, podana v obliki »je-DR« ali »DR«. Privzeta vrednost je področna nastavitev, določena z lastnostjo OfficeLocale storitve Platform.
      ' Izračuna odmik, ki velja za časovni pas »Amerika/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 (minut)
      aDateTime = DateSerial(2022, 1, 1) + TimeSerial(16, 0, 0)
      offset = oRegion.DSTOffset(aDateTime, "America/Los_Angeles", "US") ' 0 (minut)
    
      import datetime
      aDateTime = datetime.datetime(2022, 7, 1, 16, 0, 0)
      offset = oRegion.DSTOffset(aDateTime, "America/Los_Angeles", "US") ' 60 (minut)
      aDateTime = datetime.datetime(2022, 1, 1, 16, 0, 0)
      offset = oRegion.DSTOffset(aDateTime, "America/Los_Angeles", "US") ' 0 (minut)
    Izračuna krajevni datum in čas glede na datum in čas v zapisu UTC.
svc.LocalDateTime(utcdatetime: date, timezone: str, opt locale: str): date
utcdatetime: datum in čas UTC, izražen kot datumski predmet.
timezone (časovni pas): časovni pas, za katerega bo izračunan krajevni čas.
locale: področna nastavitev, ki določa državo, za katero bo izračunan krajevni čas, podana v obliki »je-DR« ali »DR«. Privzeta vrednost je področna nastavitev, določena z lastnostjo OfficeLocale storitve Platform.
      ' 6. junij 2022 ob 10:30:45 (tukaj uporabljeno kot čas UTC)
      Dim UTCTime As Date, localTime As Date
      UTCTime = DateSerial(2022, 6, 23) + TimeSerial(10, 30, 45)
      ' Izračuna krajevni čas v Sao Paulu v Braziliji
      ' 6. junij 2022 ob 07:30:45
      localTime = oRegion.LocalDateTime(UTCTime, "America/Sao_Paulo", "BR")
    
      import datetime
      utcTime = datetime.datetime(2022, 6, 23, 10, 30, 45)
      localTime = oRegion.LocalDateTime(utcTime, "America/Sao_Paulo", "BR")
    Pretvori števila in denarne vrednosti v zapisano besedilo v poljubnem izmed trenutno podprtih jezikov.
Seznam vseh podprtih jezikov najdete na strani referenčnega vodnika API o vmesniku XNumberText (v angl. jeziku).
svc.Number2Text(number: any, opt locale: str): str
number: število, ki bo pretvorjeno v besedilo. Podano je lahko kot številski zapis ali kot niz. Če je podano kot niz, ga lahko predhaja predpona, ki določa, kako naj bodo zapisana števila. Vključite lahko tudi valutne kode ISO 4217. Podrobnosti si oglejte v spodnjih primerih.
locale: področna nastavitev, ki določa jezik, v katerega bo pretvorjeno število, podana v obliki »je-DR« ali »je«. Privzeta vrednost je področna nastavitev, določena z lastnostjo OfficeLocale storitve Platform.
      ' Vrne »sto pet«
      Dim numText As String
      numText = oRegion.Number2Text(105, "sl-SI")
      ' Vrne: »dve vejica dvainštirideset«
      numText = oRegion.Number2Text(2.42, "sl")
      ' Vrne: »petindvajset evrov deset centov«; upošteva valutni simbol »EUR«
      numText = oRegion.Number2Text("EUR 25.10", "sl-SI")
      ' Vrne: »petnajsti«; pozorni bodite na predpono »ordinal«
      numText = oRegion.Number2Text("ordinal 15", "sl-SI")
    
      numText = oRegion.Number2Text(105, "sl-SI")
      numText = oRegion.Number2Text(2.42, "sl")
      numText = oRegion.Number2Text("EUR 25.10", "sl-SI")
      numText = oRegion.Number2Text("ordinal 15", "sl-SI")
    Za seznam vseh podprtih predpon v danem jeziku kličite Number2Text s posebnim argumentom »help«. V spodnjem primeru predvidevamo, da je krajevna nastavitev nastavljena na »en-US«, tako da se seznam razpoložljivih predpon za »en-US« prikaže z 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
    Prva vrstica v sporočilnem polju nima predpone, kar pomeni, da je v standardnem zapisu. Naslednje vrstice vključujejo predpono in nekaj primerov števil, ki uporabljajo njen zapis.
Vsak jezik ima svoj nabor podprtih predpon. Število razpoložljivih predpon se med jeziki razlikuje.
Če želite pridobiti seznam predpon za določen jezik ali krajevno nastavitev, ga lahko navedete kot drugi argument za Number2Text. Spodnji primer prikazuje predpone, ki so na voljo za krajevno nastavitev »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.º
    Vrne časovni zamik med GMT in danim časovni pasom ter področno nastavitvijo v minutah.
svc.TimeZoneOffset(timezone: str, opt locale: str): int
timezone (časovni pas): časovni pas, za katerega se izračuna zamik od GMT.
locale: področna nastavitev, ki določa državo, za katero bo izračunan zamik, podana v obliki »je-DR« ali »DR«. Privzeta vrednost je področna nastavitev, določena z lastnostjo OfficeLocale storitve Platform.
      Dim offset As Integer
      offset = oRegion.TimeZoneOffset("America/New_York", "US") ' -300
      offset = oRegion.TimeZoneOffset("Europe/Berlin", "DE") ' 60
    
      offset = oRegion.TimeZoneOffset("America/New_York", "US") # -300
      offset = oRegion.TimeZoneOffset("Europe/Berlin", "DE") # 60
    Vrne datum in čas UTC glede na dani krajevni datum in čas v časovnem pasu.
svc.UTCDateTime(localdatetime: date, timezone: str, opt locale: str): date
localdatetime: krajevni datum in čas v določenem časovnem pasu, podan kot datum.
timezone: časovni pas, za katerega je podan argument localdatetime.
locale: področna nastavitev, ki določa državo, za katero je podan argument localdatetime, podana v obliki »je-DR« ali »DR«. Privzeta vrednost je področna nastavitev, določena z lastnostjo OfficeLocale storitve Platform.
      ' Datum/čas v Berlinu je 23. junij 2022 ob 14:30:00
      Dim localDT As Date, utcTime As Date
      localDT = DateSerial(2022, 6, 23) + TimeSerial(14, 30, 0)
      ' Datum/čas UTC je 23. junij 2022 ob 12:30:00
      utcTime = oRegion.UTCDateTime(localDT, "Europe/Berlin", "DE")
    
      import datetime
      localDT = datetime.datetime(2022, 6, 23, 14, 30, 0)
      utcTime = oRegion.UTCDateTime(localDT, "Europe/Berlin", "DE")
    Vrne trenutni datum in čas UTC glede na dani časovni pas in področne nastavitve.
Ta metoda uporablja trenutni datum in čas vašega operacijskega sistema, da izračuna čas UTC.
svc.UTCNow(timezone: str, opt locale: str): date
timezone (časovni pas): časovni pas, za katerega bo izračunan trenutni čas UTC.
locale: področna nastavitev, ki določa državo, za katero bo izračunan trenutni čas UTC, podana v obliki »je-DR« ali »DR«. Privzeta vrednost je področna nastavitev, določena z lastnostjo OfficeLocale storitve Platform.
      ' Recimo, da je čas operacijskega sistema 23. junij 2022 ob June 23rd, 2022 ob 10:42:00
      ' Če se računalnik nahaja v časovnem pasu Evropa/Berlin, bo čas UTC 23. junij 2022 ob 08:42:00
      Dim utcTime As Date
      utcTime = oRegion.UTCNow("Europe/Berlin", "DE")
    
      utcTime = oRegion.UTCNow("Europe/Berlin", "DE")