Ajuda do LibreOffice 24.8
Retorna um objeto que representa um valor fortemente tipado referente ao sistema de tipo Uno.
Este objeto será automaticamente convertido para um Any do tipo correspondente quando for passado para Uno. O tipo deve ser especificado pelo seu nome de tipo Uno totalmente qualificado.
O API do LibreOffice frequentemente usa o tipo Any. Ele é a réplica do tipo Variant conhecido de outros ambientes. O tipo Any possui um tipo Uno arbitrário e é usado em interfaces Uno genéricas.
CreateUnoValue(Type As String, Value As Object) As Object
Objeto
Type: o nome completo do tipo Uno. Os tipos de dados considerados são void, char, boolean, byte, short, unsigned short, long, unsigned long, hyper, unsigned hyper, float, double, string, type, and any. Os nomes distinguem maiúsculas de minúsculas e podem ser precedidos por colchetes para indicar uma matriz.
Value: Um valor estritamente tipificado.
byte_sequence_object = CreateUnoValue("[]byte", Array(85, 3, 27))
Se CreateUnoValue não puder converter o valor para o tipo Uno especificado, ocorrerá um erro. O serviço com.sun.star.script.Converter é responsável pela conversão.
Esta função é destinada a ser utilizada nas situações onde o mecanismo de conversão de tipo Basic para Python for insuficiente. Isso ocorre ao chamar os métodos API genéricas baseados em Any, tais como com.sun.star.beans.XPropertySet.setPropertyValue() ou com.sun.star.container.XNameContainer.insertByName(). CreateUnoValue() define um objeto de tipo Uno desconhecido.
Esse exemplo usa o método com.sun.star.beans.XPropertySet.addProperty() para criar uma propriedade de documento cujos valores padrão requerem uso de CreateUnoValue():
With ThisComponent.DocumentProperties.getUserDefinedProperties()
.addProperty("FOO", com.sun.star.beans.PropertyAttribute.REMOVEABLE, CreateUnoValue("double", 23))
End With
Você também pode usar esta função para passar valores diferentes de Any, mas isso não é recomendado. Se o BASIC já souber o tipo de destino, o uso da função CreateUnoValue() resultará apenas em operações de conversão adicionais, que tornarão a execução do BASIC mais lenta.