VObjectInfo
Los objetos de esta clase contienen la información de la estructura de un objeto.
Se pueden ver sus propiedades, tanto los datos que contienen como información de su nombre, tipo, tabla asociada (si tiene), tipo de objeto referenciado… Para obtener el valor que contiene una propiedad primero debemos mirar el tipo de dato para usar la función adecuada. Por ejemplo si el tipo de dato es Uint16 usar la función propertyDataToInt(nProp);
También se pueden obtener otros VObjectInfo de sus subobjetos y de los objetos referenciados por sus propiedades.
Funciones
Generales (Act.)
Retorno | Función |
String | comments() |
String | iconPath() |
String | id() |
String | idRef() |
Boolean | |
Boolean | isNull() |
String | name( Number lenguaje, Number pais=0 ) |
String | name() |
Number | type() |
De estilos
Retorno | Función |
Boolean | |
Boolean | |
Boolean | |
Boolean | |
Boolean | |
Boolean | |
Boolean | |
Boolean | |
Boolean | |
Boolean | |
Boolean | |
Number | style() |
De entrada
Retorno | Función |
Number |
De salida
Retorno | Función |
Number |
De propiedades
Retorno | Función |
Bool | equals( VObjectInfo objectInfo ) |
Number | |
Variant | propertyData( Number nProp ) |
Number | propertyDataType( Number nProp ) |
Number | propertyEditType( Number nProp ) |
String | propertyName( Number nProp ) |
VObjectInfo | propertyObjectInfo( Number nProp ) |
Number | propertyObjectType( Number nProp ) |
De subobjetos
Retorno | Función |
Number | subObjectCount( Number nSubType ) |
VObjectInfo | subObjectInfo( Number nSubType, String szIdSubObject ) |
VObjectInfo | subObjectInfo( Number nSubType, Number nSubObject ) |
Enumeraciones
Estilos
VMS_PRIVADO = 0x00000001 // Privado
VMS_HEREDABLE = 0x00000002 // Heredable
VMS_DRAGABLECOPY = 0x00000004 // Permite drag para copia
VMS_DRAGABLEMOVE = 0x00000008 // Permite drag para movimiento
VMS_INSERTPOINT = 0x00000010 // Punto de inserción
VMS_FUNCION_REMOTA = 0x00000020 // Indica si es disparable como función remota (funciones only)
VMS_WEB = 0x00000040 // Indica si es accesible web
VMS_BLOQUEO_DURO = 0x00000080 // Indica como bloquea el mapobjeto
VMS_VERTICAL = 0x00000100 // Vertical(lo usan algunos como el multivista)
VMS_CLICK_DISPARA = 0x00000200 // Un-click hace lo mismo que doble-click (lo usan algunos)
VMS_STOP_DEBUG = 0x00000400 // Stop debug (lo usan instrucciones)
VMS_ONLY_ONE_EXPANDED = 0x00000800 // Trees: solo una rama abierta
VMS_HINT_NO_TITLE = 0x00002000 // Ocultar barra de título de la ventana
VMS_HINT_NO_MINIMIZEBUTTON = 0x00004000 // Ocultar el botón minimizar ventana
VMS_HINT_NO_MAXIMIZEBUTTON = 0x00008000 // Ocultar el botón maximizar ventana
VMS_HINT_NO_CLOSEBUTTON = 0x00010000 // Ocultar el botón cerrar ventana
VMS_HINT_ALL = HINT_NO_TITLE|HINT_NO_SYSTEMMENU|HINT_NO_MINIMIZEBUTTON|HINT_NO_MAXIMIZEBUTTON|HINT_NO_CLOSEBUTTON
VMS_RETARDO_EDICION = 0x00020000 // Retardo con timer en edits (solo controles tipo edit)
VMS_OBJETO_AUTO_SOFT = 0x80000000 // Marca el objeto como auto-creación (no notifican modified).
Property Data Types
IdentificadorPrimario = 00
IdentificadorRef = 01
IdentificadorTotal = 02
StringIdiomas = 03
String = 04
StringList = 05
Formula = 06
FormulaList = 07
Bool = 08
Double = 09
Int8 = 10
Uint8 = 11
Int16 = 12
Uint16 = 13
Int32 = 14
Uint32 = 15
Int64 = 16
Uint64 = 17
Color = 18
Font = 19
Imagen = 20
Region = 21
StringVariable = 22
IdCompuestoControl = 23
PathFileScript = 24
Property Edit Types
El default para el tipo de dato = 00
AutoCalculada. No editable = 01
Combo Enum = 02
Combo que permite edición = 03
Combo que muestra todos los campos de su origen + sus maestros = 04
Combo que muestra los campos de tipo objeto dibujo + sus maestros = 05
Combo de Strings = 06
SerialPortWindows: browser puerto serie Windows = 07
SerialPortPosix: browser puerto serie Posix = 08
Browser de plataformas
&
SO = 09
Browser de ficheros = 10
Browser de directorios = 11
Combo de estilos (flags) = 12
Tipos de controles (Propiedad 0)
Dibujo = 0
Caja de grupo = 1
Texto estático = 2
Nombre de campo = 3
Edición alfabética = 4
Botón = 5
Botón de radio = 6
Botón de check = 7
Edición numérica = 8
Calendario = 9
Barra de progreso = 10
Deslizador = 11
Dial = 12
Separador de formularios = 13
ComboBox = 14
ListBox = 15
Vista de datos = 16
Caja de formularios = 17
Caja de texto = 18
Reservado = 19
Visor HTML = 20
Objeto dibujo = 21
Layout = 22
Espaciador = 23
Edición Fecha/Hora = 24
Edición Fecha = 25
Edición Hora = 26
Caja de texto enriquecido = 27
Pila de formularios = 28
Reloj = 29
Manómetro = 30
Termómetro = 31
Rueda = 32
Imagen Svg = 33
Botón Svg = 34
Interruptor Svg = 35
Switch Svg = 36
Reloj indicador Svg = 37
Menú arbolado = 38
Edición fórmula = 39
Edición senda de fichero = 40
Edición senda de directorio = 41
Splitter = 42
Data Catcher Edit = 43
Tree Widget = 44
Área de scroll = 45
Tipos de entrada/salida
IONone = 0
IORecord = 1
IOList = 2
Tipos de objetos
TypeTable = 0 (tabla)
TypeField = 1 (campo)
TypeIndex = 2 (índice)
TypeIndexPart = 3 (parte de un índice)
TypePluralBind = 4 (enlace plural)
TypeUpdate = 5 (actualización)
TypeUpdateComponent = 6 (componente de actualización)
TypeComplexIndex = 7 (índice complejo)
TypeComplexIndexPart = 8 (parte de un índice complejo)
TypeVariable = 9 (variable)
TypeStaticTable = 10 (tabla estática)
TypeStaticTableItem = 11 (ítem de tabla estática)
TypeTrigger = 12 (trigger)
TypePicture = 13 (dibujo)
TypeGrid = 14 (rejilla)
TypeGridCol = 15 (columna de rejilla)
TypeTree = 16 (árbol visor de tablas arboladas)
TypeSlot = 17 (casillero)
TypeForm = 18 (formulario)
TypeControl = 19 (control)
TypeSubcontrol = 20 (subcontrol)
TypeMultiView = 21 (multivista)
TypeLogicPrinter = 22 (impresora lógica)
TypeReport = 23 (informe)
TypeReportSection = 24 (sección de informe)
TypeReportControl = 25 (control de informe)
TypeReportGrouping = 26 (agrupamiento de informe)
TypeReportCalcution = 27 (cálculo de informe)
TypeQuery = 28 (búsqueda)
TypeQueryComponent = 29 (componente de búsqueda)
TypeFilterGlass = 30 (lupa)
TypeFinder = 31 (localizador)
TypeFinderIndex = 32 (índice de localizador)
TypeBasket = 33 (cesta)
TypeProcess = 34 (proceso)
TypeFunction = 35 (función)
TypeEventConnection = 37 (conexión de evento)
TypeEventSlot = 38 (manejador de evento)
TypeInstruction = 39 (instrucción de proceso)
TypeDll = 40 (librería externa)
TypeAction = 41 (acción)
TypeMenu = 42 (menú)
TypeToolbar = 43 (toolbar)
TypeActionLauncher = 44 (lanzador de acción)
TypeListPipe = 45 (tubo de lista)
TypeRecordPipe = 46 (tubo de ficha)
TypeTcpProtocol = 47 (protocolo TCP/IP)
TypeConstant = 51 (constante)
TypeFrame = 52 - Marco (marco)
TypeDock = 53 (dock)
TypeFormBlock = 54 (bloc de formularios)
TypeDrop = 55 (drop)
TypeQueue = 56 (cola de procesos)
TypeScheme = 57 (esquema)
TypeSchemeItem = 58 (ítem de un esquema)
TypeDllFunction = 60 (función de dll)
TypeInsertion = 61 (inserción)
TypeSerialPort = 62 (puerto serie)
TypeDllFunctionParam = 63 (parámetro de función de dll)
TypeAttachedFile = 64 (fichero adjunto)
TypeSvgImage = 65 (imagen Svg)
TypeSvgControl = 66 (control Svg)
TypeSubindexator = 67 (subindexador)
TypeIntercomunicator = 68 (intercomunicador del TCP)
TypeStyleCondition = 69 (condición de estilo en rejilla)
TypeViewFlow = 70 (viewFlow)
TypeListAlternator = 71 (alternador de lista)
TypeComboView = 72 (combo view)
TypeListView = 73 (list view)
TypeQmlList = 74 (lista QML)
TypeUserRole = 75 (user Role)
TypeAuxModel = 76 (modelo auxiliar)
TypeAdvancedGrid = 77 (rejilla avanzada)
TypeAdvancedGridCol = 78 (columna de rejilla avanzada)
TypeAdvancedGridBand = 79 (banda de rejilla avanzada)
TypeQmlForm = 80 (formulario QML)
TypeFieldMigrator = 81 (traspaso de campo)
TypeFormExtRecord = 82 (ficha de extensión de formulario)
TypeChart = 83 (gráfico)
TypeSeries = 84 (serie de un gráfico)
TypeAxis = 85 (eje de un gráfico)
TypeReplace = 86 (reemplazo)
TypeNone = -1
Documentación de funciones
Funciones generales
String comments()
Devuelve el valor de la propiedad comentarios del objeto.
String iconPath()
Se trata de una senda a recursos internos de la plataforma. Devuelve la senda del icono del objeto.
Esta función, si bien es funcional en vClient, está pensada para su uso en las extensiones de Velneo vDevelop.
String id()
Devuelve el identificador de un objeto. Por ejemplo, "AUTOEXEC".
String idRef()
Devuelve el identificador con referencia de un objeto. Por ejemplo, "VJS_APP/AUTOEXEC".
Boolean isDataView()
Devuelve true si el objeto es una vista de datos.
Boolean isNull()
Devuelve true si el objeto VObjectInfo es nulo, false si contiene un objeto.
String name( Number lenguaje, Number pais=0 )
Devuelve el nombre o descripción del objeto. Si no le pasamos parámetros devuelvo el nombre del idioma en curso. Si le resolvemos el idioma o el idioma y país nos devuelve del nombre para ese idioma y país.
Parámetros:
nLenguaje: código Qt del idioma
nPais: código Qt del país
String name()
Devuelve el nombre o descripción del objeto del idioma en curso.
Number type()
Devuelve el código de tipo de objeto. Ver enum de tipos de objetos.
Funciones de estilos
Boolean isAccessibleFromWeb()
Devuelve true si el objeto tiene activado el estilo "Accesible Web" que se aplica en procesos.
Boolean isDelayedEdition()
Devuelve true si el objeto tiene activado el estilo "Retardo señal valueChanged" que se aplica en controles de edición.
Boolean isDragCopyEnabled()
Devuelve true si el objeto tiene activado el estilo "Arrastrable para copiar" que se aplica en objetos de tipo árbol visor de tabla, casillero, comboview, listview, lista QML, rejilla, rejilla avanzada y viewflow.
Boolean isDragMoveEnabled()
Devuelve true si el objeto tiene activado el estilo "Arrastrable para mover" que se aplica en objetos de tipo árbol visor de tabla, casillero, comboview, listview, lista QML, rejilla, rejilla avanzada y viewflow.
Boolean isHardLock()
Devuelve true si el objeto tiene activado el estilo "Bloqueo duro" que se aplica en objetos de tipo formulario y formulario QML.
Boolean isInsertPoint()
Devuelve true si el objeto tiene activado el estilo "Punto de inserción" que se aplica en objetos de tipo acción, formulario y formulario QML.
Boolean isOnlyOneExpanded()
Devuelve true si el objeto tiene activado el estilo "Solo una rama abierta" que se aplica en objetos de tipo árbol de tabla.
Boolean isPrivate()
Devuelve true si el objeto tiene activado el estilo "Privado" que se aplica en todos los objetos.
Boolean isRemoteFunction()
Devuelve true si el objeto tiene activado el estilo "Ejecutable en remoto" que se aplica en funciones.
Boolean isRunOnSimpleClick()
Devuelve true si el objeto tiene activado el estilo "Simple-click dispara" que se aplica en objetos de tipo árbol visor de tablas, casillero, listview, rejilla, rejilla avanzada y viewflow.
Boolean isVertical()
Devuelve true si el objeto tiene activado el estilo "Vertical" que se aplica en objetos de tipo multivista.
Number style()
Devuelve un número de 32 bits en el que cada bit se corresponde con un flag de estilo del enum de estilos de la clase VObjectInfo.
Para determinar si un estilo está activado o no podemos usar los operadores bitwase de JavaScript. Por ejemplo:
(0x00000001 == (objeto.style()
&
0x00000001)) // Devuelve true si es privado
(0x00000010 == (objeto.style()
&
0x00000010)) // Devuelve true si es un punto de inserción
(0x00000020 == (objeto.style()
&
0x00000020)) // Devuelve true si la función es ejecutable en remoto
(0x00000040 == (objeto.style()
&
0x00000040)) // Devuelve true si el proceso es accesible web
Funciones de entrada
VTableInfo inputTable()
Devuelve el objeto VTableInfo correspondiente a la tabla de entrada.
Number inputType()
Devuelve el tipo de entrada. Ver enum de tipos de entrada/salida.
Funciones de salida
VTableInfo outputTable()
Devuelve el objeto VTableInfo correspondiente a la tabla de salida.
Number outputType()
Devuelve el tipo de salida. Ver enum de tipos de entrada/salida.
Funciones de propiedades
Bool equals( VObjectInfo objectInfo )
Devuelve true si el objeto es igual que el que pasamos como parámetro, false si es distinto. Comprueba para ello propiedades y subobjetos.
Parámetros:
objectInfo: objeto de la clase VObjectInfo con el que queremos comparar el objeto.
Number propertyCount()
Devuelve el número de propiedades del control.
QVariant propertyData( Number nProp )
Devuelve el valor de la propiedad.
Parámetros:
nProp: valor numérico que se corresponde con la posición ordinal de la propiedad del objeto o control.
Number propertyDataType( Number nProp )
Devuelve el tipo de dato de la propiedad. Ver enum Property Data Types.
Parámetros:
nProp: valor numérico que se corresponde con la posición ordinal de la propiedad del objeto o control.
Number propertyEditType( Number nProp )
Devuelve el tipo de editor de la propiedad. Ver enum Property Edit Types.
Parámetros:
nProp: valor numérico que se corresponde con la posición ordinal de la propiedad del objeto o control.
String propertyName( Number nProp )
Devuelve el nombre de la propiedad.
Parámetros:
nProp: valor numérico que se corresponde con la posición ordinal de la propiedad del objeto o control.
VObjectInfo propertyObjectInfo( Number nProp )
Devuelve un objeto de la clase VObjectInfo de la propiedad.
Parámetros:
nProp: valor numérico que se corresponde con la posición ordinal de la propiedad del objeto o control.
Number propertyObjectType( Number nProp )
Devuelve un número que identifica el tipo de objeto de la propiedad. Ver enum de tipos de objetos.
Parámetros:
nProp: valor numérico que se corresponde con la posición ordinal de la propiedad del objeto o control.
Funciones de subobjetos
Number subObjectCount( Number nSubType )
Devuelve el número de subobjetos de un objeto de un tipo.
Parámetros:
nSubType: ver enum de tipos de objetos.
VObjectInfo subObjectInfo( Number nSubType, String szIdSubObject )
Devuelve un objeto VObjectInfo de un subobjeto de un tipo y un identificador.
Parámetros:
nSubType: ver enum de tipos de objetos.
szIdSubObject: identificador del subobjeto.
VObjectInfo subObjectInfo( Number nSubType, Number nSubObject )
Devuelve un objeto VObjectInfo de un subobjeto de un tipo y un número de orden del subobjeto.
Parámetros:
nSubType: ver enum de tipos de objetos.
szIdSubObject = número de orden del subobjeto en la lista.
Ejemplos
1. Información del objeto de la vista en curso
Última actualización