LibreOffice 25.2 laguntza
Region zerbitzuak eskualde-ezarpenei lotutako programazio-kontuak maneiatzeko erabili daitezkeen propietateen bilduma bat eskaintzen du. Honakoak egiteko erabili daitezke:
Eskualdearen araberako ezarpenak, adibidez zenbakien formatua, moneta eta denbora-zonak, atzitzea.
Denbora-zonak bihurtzea eta udako ordutegiaren (DST) desplazamenduak kalkulatzea.
Zenbakiak testu bihurtzea onartutako edozein hizkuntzatan.
Hizkuntza bat eta herrialde bat konbinatzen dituen kate bat, "hi-HE" formatukoa. Hizkuntzaren zatia 2 edo 3 minuskularekin adierazten da, ondoren marratxoa jartzen da eta azkenean herrialdea adierazten duten 2 maiuskula jartzen dira.
Adibidez, "en-US" katea Estatu Batuetako ingelesari dagokio; "fr-BE" katea Belgikako frantsesa da; eta abar.
Zenbait kasutan, ez da beharrezkoa eskualde-ezarpen osoa erabiltzea, eta aski da hizkuntza edo herrialdea zehaztearekin.
Propietate eta metodo askok eskualde-ezarpen bat onartzen dute argumentu gisa. Ez bada eskualde-ezarpenik zehazten, erabiltzaile-interfazearena erabiliko da. Hori Platform zerbitzuraren OfficeLocale propietatean dago definituta.
"Eskualdea/Hiria" motako katea, adibidez "Europe/Berlin", edo ordu-eremu baten IDa, adibidez "UTC" edo "GMT-8:00". Begiratu List of tz database timezones wiki-orria ordu-eremuen balizko izenen eta IDen zerrenda bat kontsultatzeko.
Region zerbitzuaren edozein metodori baliogabea den ordu-zona bat ematen bazaio, ez da exekuzio-garaiko errore bat sortuko. Horren ordez, UTCDateTime eta UTCNow metodoek eta antzekoek uneko sistema eragilearen data eta ordua itzuliko dute.
Ordu-zonaren eta Greenwich Meridian Time (GMT) denboraren arteko tartea minututan adierazten da.
Udako ordutegia (DST) desplazamendu gehigarria da.
Denbora-zonaren eta DSTaren desplazamenduak positiboak edo negatiboak izan daitezke.
Region zerbitzua erabiltzeko, lehenengo ScriptForge liburutegia kargatu edo inportatu behar da:
Beheko adibideek, Basic eta Python lengoaietan emandakoek, Region zerbitzuaren instantzia bat sortzen dute eta Country propietatea atzitzen dute.
    GlobalScope.BasicLibraries.LoadLibrary("ScriptForge")
    Dim oRegion As Variant
    oRegion = CreateScriptService("Region")
    MsgBox oRegion.Country("en-US") ' Estatu Batuak
  
    from scriptforge import CreateScriptService
    oRregion = CreateScriptService("Region")
    bas = CreateScriptService("Basic")
    bas.MsgBox(oRegion.Country("en-US"))
  Behean zerrendatutako propietate guztiek locale argumentua onartzen dute, kate gisa. Zenbait propietatek "hi-HE" formatua behar dute, eta beste batzuek "hi" edo "HE" onartu dezakete sarrera gisa.
| Izena | Irakurtzeko soilik | Mota | Eskualde-ezarpena | Deskribapena | 
|---|---|---|---|---|
| Country | Bai | String | "la‑CO" | Emandako eskualde bati ingelesez dagokion herrialde-izena itzultzen du. | 
| Currency | Bai | String | "la-CO" | Zehaztutako eskualdearen ISo 4217 moneta-kodea itzultzen du. | 
| DatePatterns | Bai | Kate-matrizea | "la-CO" | Zeron oinarritutako kate-matrize bat itzultzen du, zehaztutako eskualderako datak onartzeko ereduak dituena. | 
| DateSeparator | Bai | String | "la-CO" | Emandako eskualdean erabiltzen den data-bereizlea itzultzen du. | 
| DayAbbrevNames | Bai | Kate-matrizea | "la-CO" | Zeron oinarritutako kate-matrize bat itzultzen du zehaztutako hizkuntzan asteko egunek dituzten izen laburtuekin. | 
| DayNames | Bai | Kate-matrizea | "la-CO" | Zeron oinarritutako kate-matrize bat itzultzen du zehaztutako hizkuntzan asteko egunek dituzten izenekin. | 
| DayNarrowNames | Bai | Kate-matrizea | "la-CO" | Zeron oinarritutako kate-matrize bat itzultzen du zehaztutako hizkuntzan asteko egunek dituzten izenen inizialekin. | 
| DecimalPoint | Bai | String | "la-CO" | Zehaztutako eskualdean zenbakietarako erabiltzen den dezimalen bereizlea itzultzen du. | 
| Language | Bai | String | "la-CO" | Zehaztutako eskualdeko hizkuntzaren izena itzultzen du, ingelesez. | 
| ListSeparator | Bai | String | "la-CO" | Zehaztutako eskualdean erabilitako zerrenda-bereizlea itzultzen du. | 
| MonthAbbrevNames | Bai | Kate-matrizea | "la-CO" | Zeron oinarritutako kate-matrize bat itzultzen du zehaztutako hizkuntzako hilabete-izen laburtuekin. | 
| MonthNames | Bai | Kate-matrizea | "la-CO" | Zeron oinarritutako kate-matrize bat itzultzen du zehaztutako hizkuntzako hilabete-izenen zerrendarekin. | 
| MonthNarrowNames | Bai | Kate-matrizea | "la-CO" | Zeron oinarritutako kate-matrize bat itzultzen du zehaztutako hizkuntzan hilabeteek dituzten izenen inizialekin. | 
| ThousandSeparator | Bai | String | "la-CO" | Zehaztutako eskualdean zenbakietan erabiltzen den milakoen bereizlea itzultzen du. | 
| TimeSeparator | Bai | String | "la-CO" | Zehaztutako eskualdea orduari formatua emateko erabiltzen den bereizlea itzultzen du. | 
| Region zerbitzuaren metodoen zerrenda | ||
|---|---|---|
Emandako eskualde eta denbora-zona bati aplikatu dakiokeen udako ordutegiaren (DST) desplazamendu gehigarri kalkulatzen du, minututan.
svc.DSTOffset(localdatetime: date, timezone: str, opt locale: str): int
localdatetime: Tokiko data eta ordua, data gisa adierazita.
timezone: Desplazamendua kalkulatuko zaion denbora-zona.
locale: Denbora-tartea kalkulatuko zaion herrialdearen eskualde-ezarpena, "hi-HE" edo "HE" formatuan. Balio lehenetsia Platform zerbitzuaren OfficeLocale propietatean definitutako eskualde-ezarpena da.
      ' "America/Los_Angeles" ordu-zonan aplikagarria den tartea kalkulatzen du
      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 (minutu)
      aDateTime = DateSerial(2022, 1, 1) + TimeSerial(16, 0, 0)
      offset = oRegion.DSTOffset(aDateTime, "America/Los_Angeles", "US") ' 0 (minutu)
    
      import datetime
      aDateTime = datetime.datetime(2022, 7, 1, 16, 0, 0)
      offset = oRegion.DSTOffset(aDateTime, "America/Los_Angeles", "US") ' 60 (minutu)
      aDateTime = datetime.datetime(2022, 1, 1, 16, 0, 0)
      offset = oRegion.DSTOffset(aDateTime, "America/Los_Angeles", "US") ' 0 (minutu)
    UTC data eta ordu baterako tokiko data eta ordua kalkulatzen ditu.
svc.LocalDateTime(utcdatetime: date, timezone: str, opt locale: str): date
utcdatetime: UTC data eta ordua, data-objektu bat erabiliz adieraziak.
timezone: Tokiko ordua kalkulatuko zaion ordu-zona.
locale: Tokiko ordua kalkulatuko zaion herrialdearen eskualde-ezarpena, "hi-HE" edo "HE" formatuan. Balio lehenetsia Platform zerbitzuaren OfficeLocale propietatean definitutako eskualde-ezarpena da.
      ' 2022ko ekainaren 6a, 10:30:45 (UTC denbora gisa erabilia hemen)
      Dim UTCTime As Date, localTime As Date
      UTCTime = DateSerial(2022, 6, 23) + TimeSerial(10, 30, 45)
      ' Brasilgo Sao Pauloko tokiko ordua kalkulatzen du
      ' 2022ko ekainaren 6a, 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")
    Zenbakiak eta moneten balioak idatzizko testu bihurtzen ditu unean onartzen den edozein hizkuntzatarako.
Onartutako hizkuntzak ezagutzeko, begiratu XNumberText Interface API erreferentzia.
svc.Number2Text(number: any, opt locale: str): str
number: Idatzizko testu bihurtuko den zenbakia. Zenbaki modura zein kate modura eman daiteke. Kate bat ematen bada, zenbakia nola idatzi behar den zehazten duen aurrizki bat eraman behar du. Posible da, baita ere, ISO 4217 moneta-kodeak ematea. Begiratu beheko adibideak informazio gehiagorako.
locale: Zenbakia bihurtuko den hizkuntzaren eskualde-ezarpena, "hi-HE" edo "HE" formatuan. Balio lehenetsia Platform zerbitzuaren OfficeLocale propietatean definitutako eskualde-ezarpena da.
      ' "One hundred five" itzultzen du
      Dim numText As String
      numText = oRegion.Number2Text(105, "en-US")
      ' "Two point four two" itzultzen du
      numText = oRegion.Number2Text(2.42, "en-US")
      ' "Twenty-five euro and ten cents" itzultzen du. Begiratu nola ageri den "EUR" moneta-ikurra
      numText = oRegion.Number2Text("EUR 25.10", "en-US")
      ' "Fifteenth" itzulten du, Begiratu "ordinal" aurrizkia
      numText = oRegion.Number2Text("ordinal 15", "en-US")
    
      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")
    Emandako hizkuntza batean onartzen diren aurrizki guztien zerrenda bat eskuratzeko, deitu Number2Text funtzioari "help" argumentu bereziarekin. Beheko adibidean, eskualde-ezarpena "en-US" dela onartuta, "en-US" hizkuntzarako erabilgarri dauden aurrizkien zerrenda erakutsiko da MsgBox koadroan:
      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
    Mezu-koadroaren lehen lerroak ez du aurrizkirik, horrek esan nahi du formatu estandarra dela. Hurrengo lerroek aurrizkia dute, eta formatu horrekin zenbait zenbaki nola ikusiko diren.
Hizkuntza bakoitzak bere aurrizki multzo propioa du. Erabilgarri dagoen aurrizki kopurua aldatu egiten da hizkuntzaz hizkuntza.
Hizkuntza edo eskualde-ezarpen jakin baten aurrizkien zerrenda eskuratzeko, bigarren argumentu modura zehaztu daiteke Number2Text funtzioan. Beheko adibideak "pt-BR" eskualde-ezarpenerako dauden aurrizkiak erakusten ditu:
      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.º
    GMT orduaren eta emandako ordu-zonaren eta eskualde-ezarpenaren arteko desplazamendua itzultzen du, minututan.
svc.TimeZoneOffset(timezone: str, opt locale: str): int
timezone: GMT orduarekiko desplazamendua kalkulatuko zaion ordu-zona.
locale: Denbora-desplazamendua kalkulatuko zaion herrialdea zehazten duen eskualde-ezarpena, "hi-HE" edo "HE" formatuan. Balio lehenetsia Platform zerbitzuaren OfficeLocale propietatean definitutako eskualde-ezarpena da.
      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
    Emandako ordu-zona bateko UTC data eta ordua itzultzen du.
svc.UTCDateTime(localdatetime: date, timezone: str, opt locale: str): date
localdatetime: Ordu-zona jakin bateko tokiko data eta ordua, data gisa adierazita.
timezone: localdatetime argumentuari dagokion ordu-zona.
locale: localdatetime argumentua zein herrialdetarako zehaztu den dioen eskualde-ezarpena, "hi-HE" edo "HE" formatuan. Balio lehenetsia Platform zerbitzuaren OfficeLocale propietatean definitutako eskualde-ezarpena da.
      ' Data/ordua Berlinen, 2022ko ekainaren 23a, 14:30:00
      Dim localDT As Date, utcTime As Date
      localDT = DateSerial(2022, 6, 23) + TimeSerial(14, 30, 0)
      ' UTC data/ordua 2022ko ekainaren 23a, 12:30:00, da
      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")
    Uneko UTC data eta ordua itzultzen ditu, ordu-zona bat eta eskualde-ezarpen bat emanda.
Metodo honek sistema eragilearen data eta ordua erabiltzen ditu UTC ordua kalkulatzeko.
svc.UTCNow(timezone: str, opt locale: str): date
timezone: Uneko UTC ordua kalkulatuko zaion ordu-zona.
locale: Uneko UTC ordua kalkulatuko zaion herrialdea zehazten duen eskualde-ezarpena, "hi-HE" edo "HE" formatuan. Balio lehenetsia Platform zerbitzuaren OfficeLocale propietatean definitutakoa da.
      ' Demagun sistema eragilearen ordua 2022ko ekainaren 23a, 10:42:00, dela
      ' Ordenagailua Europa/Berlinen badago, UTC ordua 2022ko ekainaren 23a, 08:42:00, izango da
      Dim utcTime As Date
      utcTime = oRegion.UTCNow("Europe/Berlin", "DE")
    
      utcTime = oRegion.UTCNow("Europe/Berlin", "DE")