Contenido
Índice 🔎︎

# Función CreateUnoValue

Devuelve un objeto que representa un valor de tipo estricto y que se refiere al sistema de tipos Uno.

Este objeto se convierte automáticamente al tipo Any del sistema correspondiente cuando se pasa a Uno. El tipo debe estar especificado por su nombre de tipo Uno calificado.

La API de LibreOffice usa con frecuencia el tipo Any. Es el equivalente del tipo Variante utilizado en otros entornos. El tipo Any contiene un tipo Uno arbitrario y se utiliza en interfaces Uno genéricas.

### Sintaxis:

oUnoValue = CreateUnoValue( "[]byte", MyBasicValue ) ' para obtener una secuencia de bytes.

If CreateUnoValue cannot be converted to the specified Uno type, and error occurs. For the conversion, the com.sun.star.script.Converter service is used.

This function is intended for use in situations where the default Basic to Uno type converting mechanism is insufficient. This can happen when you try to access generic Any based interfaces, such as XPropertySet::setPropertyValue( Name, Value ) or X???Container::insertBy???( ???, Value ), from LibreOffice Basic. The Basic runtime does not recognize these types as they are only defined in the corresponding service.

En estas condiciones, LibreOffice BASIC elige el tipo que mejor se adapta al tipo de BASIC que desea convertir. No obstante, si se selecciona el tipo incorrecto, se produce un error. Utilice la función CreateUnoValue() para crear un valor para el tipo de UNO desconocido.

You can also use this function to pass non-Any values, but this is not recommend. If Basic already knows the target type, using the CreateUnoValue() function will only lead to additional converting operations that slow down the Basic execution.