CreateUnoValue Function

Devuelve un oxetu que representa un valor de tipu estrictu y que se refier al sistema de tipos Uno.

Esti oxetu conviértese automáticamente al tipu Any del sistema correspondiente cuando se pasa a Unu. El tipu tien de tar especificáu pol so nome de tipu Unu calificáu.

Iconu de nota

La API de LibreOffice usa con frecuencia'l tipu Any. Ye l'equivalente del tipu Variante utilizáu n'otres redolaes. El tipu Any contién un tipu Unu arbitrariu y utilízase en interfaces Unu xenériques.


Sintaxis:

oUnoValue = CreateUnoValue( "[]byte", MyBasicValue ) ' to get a byte sequence.

Si CreateUnoValue nun pue convertise al tipu Unu especificáu, produzse un fallu. Pa la conversión utiliza'l serviciu TypeConverter.

Esta función ta pensada pa utilizala en situaciones en que'l mecanismu predetermináu de conversión de Basic a Unu resulta insuficiente. Esto pue producise cuando s'intenta aportar a interfaces xenériques basaes en Any, como'l de XPropertySet::setPropertyValue( Nome, Valor ) o X???Container::insertBy???( ???, Valor ), dende LibreOffice Basic. El tiempu d'execución de Basic nun reconoz estos tipos, yá que namái tán definíos nel serviciu correspondiente.

Nestes circunstancies, LibreOffice Basic escueye'l tipu que meyor coincida col tipu de Basic que deseya convertir. Agora bien, si escueye un tipu incorrectu, xenérase un fallu. Utilice la función CreateUnoValue() pa crear un valor pal tipu desconocíu Unu.

Tamién pue utilizase esta función pa pasar valores que nun seyan Any, anque nun ye recomendable faelo. Si Basic yá conoz el tipu destín, utilizando la función CreateUnoValue() namái se van amestar funciones adicionales de conversión que van ralentizar la execución de Basic.