CreateUnoValue Function
Tagastab objekti, mis esindab Uno tüübi süsteemile viitavat täpselt määratletud tüübiga väärtust.
Unole edastamisel teisendatakse see objekt automaatselt tüübile Suvaline vastavaks tüübiks. Tüüp peab olema määratud Uno tüübi täieliku nimega.
LibreOffice API kasutab sageli tüüpi Suvaline. See vastab muudes keskkondades kasutatavale tüübile Variant. Tüüp Suvaline sisaldab ühte suvalist Uno tüüpi ja seda kasutatakse Uno üldistes liidestes.
Süntaks:
oUnoValue = CreateUnoValue( "[]byte", MyBasicValue ) ' to get a byte sequence.
Kui tüüpi CreateUnoValue ei saa määratud Uno tüübiks teisendada, siis ilmneb viga. teisendamiseks kasutatakse teenust TypeConverter.
See funktsioon on mõeldud kasutamiseks olukordades, kus Basicu vaikimisi tüübi teisendamine Uno tüübiks pole piisav. See võib juhtuda siis, kui proovid LibreOffice Basicu kaudu juurde pääseda tüübi Suvaline põhistele liidestele, näiteks XPropertySet::setPropertyValue( Name, Value ) or X???Container::insertBy???( ???, Value ). Basicu käitusaeg ei tunne tunne neid tüüpe, kuna need on defineeritud ainult vastavas teenuses.
Sellisel juhul valib LibreOffice Basic teisendatavale tüübile kõige täpsemini vastava Basicu tüübi. Kui aga valitakse vale tüüp, siis ilmneb viga. Tundmatu Uno tüübi väärtuse loomiseks kasuta funktsiooni CreateUnoValue().
Selle funktsiooni abil saad edastada ka väärtusi, mille tüüp pole Suvaline, kuid see pole soovitatav. Kui sihttüüp on Basicule juba tuttav, siis põhjustab funktsiooni CreateUnoValue() kasutamine ainult täiendavaid teisendustoiminguid, mis aeglustavad Basicu tööd.