VApp

Este clase representa a la aplicación. Dispone de funciones para ver información de sus proyectos, acceso a variables globales, constantes, utilidades de base de datos, disco, etc.

El objeto theApp

Todos los scripts están conectados a un objeto global y único que representa a la aplicación cuyo nombre es theApp. Este objeto está disponible en ejecución de scripts en Velneo vClient, pero también en extensiones en Velneo vDevelop, aunque no aquellas funciones que tienen sentido únicamente en ejecución (Ver documentación de VExtension).

Herencia

Hay que tener en cuenta que la aplicación da acceso al proyecto principal con el que se ha arrancado la aplicación y todos sus objetos heredados lo que permite el acceso y uso de cualquier objeto de la aplicación desde cualquier script.

Generales

Retorno

Función

void

String

calculateHash( String szCadena, AlgoritmoHash )

String

void

String

stripHtml( String szHtml )

void

wait( Number miliSegs )

De proyectos

Retorno

Función

projectInfo( Number nProjectType, int index )

projectInfo( String szAlias )

De variables globales

Retorno

Función

QDate

globalVarToDate( String szIdRefVar )

QDateTime

globalVarToDateTime( String szIdRefVar )

Number

globalVarToDouble( String szIdRefVar )

Number

globalVarToInt( String szIdRefVar )

String

globalVarToString( String szIdRefVar )

QTime

globalVarToTime( String szIdRefVar )

Boolean

isGlobalVarEmpty( String szIdRefVar )

void

setGlobalVar( String szIdRefVar, String szValue )

void

setGlobalVar( String szIdRefVar, Number nValue )

void

setGlobalVar( String szIdRefVar, Boolean bValue )

void

setGlobalVar( String szIdRefVar, QDateTime dtValue )

void

setGlobalVar( String szIdRefVar, QDate dValue )

void

setGlobalVar( String szIdRefVar, QTime tValue )

De constantes

Retorno

Función

String

constant( String szIdRefConstante )

String

constant( String szIdRefConstante, Number idioma, [Number pais] )

De mantenimiento de base de datos

Retorno

Función

Boolean

regenComplexIndex( String szIdRefIdxComplejo, Boolean bProgressDialog )

Boolean

regenDataArea( String idRefTabla, Boolean bProgressDialog )

Boolean

regenIndexes( String idRefTabla, Boolean bProgressDialog )

De DOS: directorios

Retorno

Función

String

String

String

cleanPath( String path )

String

driveAt( Number index )

Number

Array

getPaths( int nPath )

String

Boolean

String

Boolean

setCurrentPath( String path )

String

De DOS: ficheros

Retorno

Función

Boolean

copyFile( String szFileName, String szNewName )

Boolean

existsFile( String szFileName )

Boolean

linkFile( String szFileName, String szLinkName )

Boolean

removeFile( String szFileName )

Boolean

renameFile( String szFileName, String szNewName )

De info local actual

De info local del sistema

De sistema

Retorno

Función

Boolean

startProgramDetached( String szExe, string aszArgumentos)

String

De cestas

Retorno

Función

void

appendToBasket( String szIdRefCesta, VRegister reg )

void

appendToBasket( String szIdRefCesta, VRegisterList regList )

Boolean

getBasket( String szIdRefCesta, VRegisterList regList )

void

removeFromBasket( String szIdRefCesta, VRegister reg )

void

removeFromBasket( String szIdRefCesta, VRegisterList regList )

Boolean

setBasket( String szIdRefCesta, VRegisterList regList )

De impresoras del sistema

Retorno

Función

Array

String

Array

supportedPaperSizes( String szPrinterName )

De impresión de informes

Retorno

Función

void

printReport( VRegisterList list, String idRefReport, [String idRefLogicPr])

void

printReportToFile( VRegisterList list, String idRefReport, String path )

void

printReportToPrinter( VRegisterList list, String idRefReport, String printerName, [Boolean bHighRes=false])

De variables de sistema

Retorno

Función

String

Boolean

String

De cursor

Retorno

Función

void

void

setOverrideCursor( Number nCursor )

De variables globales tipo array

Retorno

Función

Number

globalVarArraySize( String szIdRefVar )

Boolean

globalVarArrayToBool( String szIdRefVar, Number nSubindex )

Date

globalVarArrayToDate( String szIdRefVar, Number nSubindex )

DateTime

globalVarArrayToDateTime( String szIdRefVar, Number nSubindex )

Number

globalVarArrayToInt( String szIdRefVar, Number nSubindex )

Number

globalVarArrayToSDouble( String szIdRefVar, Number nSubindex )

String

globalVarArrayToString( String szIdRefVar, Number nSubindex )

Time

globalVarArrayToTime( String szIdRefVar, Number nSubindex )

Boolean

isGlobalVarArrayEmpty( String szIdRefVar, Number nSubindex )

void

setGlobalVarArray( QString szIdRefVar, Number nSubindex, Variant var)

De mensajería interna

Retorno

Función

void

sendUserAlert( String szUser, String szAsunto, String szMsg )

void

sendUserMessage( String szUser, String szAsunto, String szMsg )

void

sendUserWarning( String szUser, String szAsunto, String szMsg )

De tablas estáticas

Retorno

Función

Number

staticTableItemCount( String szIdRefTable )

String

staticTableItemId( String szIdRefTable, Number nIndex )

staticTableItemImage( String szIdRefTable, Number nIndex )

String

staticTableItemName( String szIdRefTable, Number nIndex )

String

staticTableItemName( String szIdRefTable, Number nIndex, Number nLenguaje, Number nPais )

Multimedia

De vista de datos

De estilos

Retorno

Función

Boolean

setStyle( String szStyle )

String

Array

De conexión segura TLS/SSL

Retorno

Función

De cliente-servidor

Retorno

Función

Number

Number

De personalización

Retorno

Función

void

setFrame(String szIdRefMarco)

Enumeraciones

AlgoritmoHash

Algoritmos estándar:

  • Md4 = 0

  • Md5 = 1

  • Sha1 = 2

  • Sha2_224 = 3

  • Sha2_256 = 4

  • Sha2_384 = 5

  • Sha2_512 = 6

  • Sha3_224 = Keccak_224 = 7

  • Sha3_256 = Keccak_256 = 8

  • Sha3_384 = Keccak_384 = 9

  • Sha3_512 = Keccak_512 = 10

  • RealSha3_224 = 11

  • RealSha3_256 = 12

  • RealSha3_384 = 13

  • RealSha3_512 = 14

Cursores

  • ArrowCursor = 0

  • UpArrowCursor = 1

  • CrossCursor = 2

  • WaitCursor = 3

  • IBeamCursor = 4

  • SizeVerCursor = 5

  • SizeHorCursor = 6

  • SizeBDialogCursor = 7

  • SizeFDialogCursor = 8

  • SizeAllCursor = 9

  • BlankCursor = 10

  • SplitVCursor = 11

  • SplitHCursor = 12

  • PointingHandCursor = 13

  • ForbiddenCursor = 14

  • WhatsThisCursor = 15

  • BusyCursor = 16

  • OpenHandCursor = 17

  • CloseHandCursor = 18

PaperSize

  • A4 = 0

  • B5 = 1

  • Letter = 2

  • Legal = 3

  • Executive = 4

  • A0 = 5

  • A1 = 6

  • A2 = 7

  • A3 = 8

  • A5 = 9

  • A6 = 10

  • A7 = 11

  • A8 = 12

  • A9 = 13

  • B0 = 14

  • B1 = 15

  • B10 = 16

  • B2 = 17

  • B3 = 18

  • B4 = 19

  • B6 = 20

  • B7 = 21

  • B8 = 22

  • B9 = 23

  • C5E = 24

  • Comm10E = 25

  • DLE = 26

  • Folio = 27

  • Ledge = 28

  • Tabloid = 29

  • Custom = 30

Paths

  • DocumentsPath = 1

  • DesktopPath = 0

  • FontsPath = 2

  • ApplicationsPath = 3

  • MusicPath = 4

  • MoviesPath = 5

  • PicturesPath = 6

  • TempPath = 7

  • HomePath = 8

  • DataPath = 9

  • CachePath = 10

  • GenericCachePath = 15

  • GenericDataPath = 11

  • RuntimePath = 12

  • ConfigPath = 13

  • DownloadPath = 14

  • GenericConfigPath = 16

  • AppDataPath = 17

  • AppLocalDataPath = DataPath

Calidad de conexión

  • Sin conexión = 0

  • Deficiente = 1

  • Mala = 2

  • Regular = 3

  • Cloud = 4

  • Wifi = 5

  • Red local = 6

Documentación de funciones

Funciones generales

void beep()

Emite un pitido a través del altavoz del sistema.

String calculateHash( String szCadena, AlgoritmoHash )

Devuelve en minúsculas el hash de una cadena en función del parámetro.

Parámetro:

String exeName()

Devuelve el nombre del navegador en curso, por ejemplo: vClient, vWebClient, etc.

void processEvents()

Procesa los eventos que haya en la cola de la aplicación, excluyendo los de entrada de usuario (teclado, ratón...). Debe usarse donde se consuma mucho tiempo o bucles largos para que se refresque el interfaz. Solo actúa en procesos en primer plano ya que es en estos donde estamos ocupando el hilo principal que es el que atiende la cola de eventos. En los demás no hace nada.

String stripHtml( String szHtml )

Retorna la cadena que pasamos como parámetro sin etiquetas html. El código html debe estar bien conformado para que retorne contenido.

Parámetros:

  • szHtml: cadena de texto que contiene el código Html correctamente conformado del que queremos extraer el texto sin etiquetas html.

void wait( Number miliSegs )

El proceso queda detenido en este punto durante el tiempo especificado en el parámetro.

Parámetros:

  • miliSegs: número de milisegundos de espera, por ejemplo: 1000 = 1 segundo.

Funciones de proyectos

VProjectInfo mainProjectInfo()

Devuelve el objeto VProjectInfo del proyecto principal.

Si la usamos en un proceso ejecutado en 4º plano, esta función devolverá el proyecto donde esté declarado el proceso, tenga proyectos o no por encima, el motivo de esto es que cuando se ejecuta el proceso el servidor crea un enganche temporal para gestionarlo, en ese momento, conoce el proyecto donde está el objeto y lo que hereda, pero no conoce todo lo que tiene por encima.

VProjectInfo projectInfo( Number nProjectType, int index )

Esta función es de uso exclusivo en las extensiones de Velneo vDevelop (clase vExtension).Devuelve un objeto VProjectInfo con la información del proyecto cuyo tipo e index dentro de la solución hayamos pasado como parámetro.

Parámetros:

  • nProjectType: tipo de proyecto. Ver enum de tipos de proyecto.

  • index: index dentro de la solución.

VProjectInfo projectInfo( String szAlias )

Devuelve un objeto VProjectInfo del proyecto con el alias especificado.

Parámetros:

  • szAlias: alias del proyecto.

Funciones de variables globales

QDate globalVarToDate( String szIdRefVar )

Devuelve el valor de una variable global de tipo fecha.

Parámetros:

  • szIdRefVar: identificador de referencia de la variable global.

QDateTime globalVarToDateTime( String szIdRefVar )

Devuelve el valor de una variable global de tipo tiempo, fecha y hora.

Parámetros:

  • szIdRefVar: identificador de referencia de la variable global.

Number globalVarToDouble( String szIdRefVar )

Devuelve el valor de una variable global de tipo numérico, con decimales.

Parámetros:

  • szIdRefVar: identificador de referencia de la variable global.

Number globalVarToInt( String szIdRefVar )

Devuelve el valor de una variable global de tipo numérico, entero.

Parámetros:

  • szIdRefVar: identificador de referencia de la variable global.

String globalVarToString( String szIdRefVar )

Devuelve el valor de una variable global de tipo alfabética.

Parámetros:

  • szIdRefVar: identificador de referencia de la variable global.

QTime globalVarToTime( String szIdRefVar )

Devuelve el valor de una variable global de tipo hora.

Parámetros:

  • szIdRefVar: identificador de referencia de la variable global.

Boolean isGlobalVarEmpty( String szIdRefVar )

Devuelve true si la variable global está vacía. Las numéricas se asumen vacías con el valor 0.

Parámetros:

  • szIdRefVar: idRef de la variable "ALIASPROYECTO/IDVARIABLE".

void setGlobalVar( String szIdRefVar, String szValue )

Asigna el valor a la variable global de tipo alfabética.

Parámetros:

  • szIdRefVar: identificador de referencia de la variable global.

  • szValue: valor alfabético.

void setGlobalVar( String szIdRefVar, Number nValue )

Asigna el valor a la variable global de tipo numérica.

Parámetros:

  • szIdRefVar: identificador de referencia de la variable global.

  • nValue: valor numérico.

void setGlobalVar( String szIdRefVar, Boolean bValue )

Asigna el valor a la variable global de tipo booleano.

Parámetros:

  • szIdRefVar: identificador de referencia de la variable global.

  • bValue: valor booleano.

void setGlobalVar( String szIdRefVar, QDateTime dtValue )

Asigna el valor a la variable global de tipo tiempo, fecha y hora.

Parámetros:

  • szIdRefVar: identificador de referencia de la variable global.

  • dtValue: valor de tipo tiempo, fecha y hora.

void setGlobalVar( String szIdRefVar, QDate dValue )

Asigna el valor a la variable global de tipo fecha.

Parámetros:

  • szIdRefVar: identificador de referencia de la variable global.

  • dValue: valor de tipo fecha.

void setGlobalVar( String szIdRefVar, QTime tValue )

Asigna el valor a la variable global de tipo hora.

Parámetros:

  • szIdRefVar: identificador de referencia de la variable global.

  • tValue: valor de tipo hora.

Funciones de constantes

String constant( String szIdRefConstante )

Devuelva el contenido de una constante.

Parámetros:

  • szIdRefConstante: idRef del objeto constante "ALIAS_PROYECTO/ID_OBJETO".

String constant( String szIdRefConstante, Number idioma, [Number pais] )

Devuelve el contenido de una constante en el idioma y país especificado en los parámetros. El país es un parámetro opcional, si no se especifica asume el más genérico de los existentes para ese idioma.

Parámetros:

  • szIdRefConstante: idRef del objeto constante "ALIAS_PROYECTO/ID_OBJETO".

  • idioma: código numérico del idioma, por ejemplo: English = 31. Ver enum de idiomas

  • país: código numérico del país, por ejemplo: UnitedKingdom = 224. Este es un parámetro opcional. Ver enum de países

Funciones de mantenimiento de base de datos

Boolean regenComplexIndex( String szIdRefIdxComplejo, Boolean bProgressDialog )

Regenera un índice complejo. Si indicamos true en el 2º parámetro se mostrará la barra de progreso.

Parámetros:

  • idRefIdxComplejo: idRef del índice complejo "ALIAS_PROYECTO/ID_INDICE_COMPLEJO".

  • bProgressDialog: true para indicar que sea visible la barra de progreso.

Boolean regenDataArea( String idRefTabla, Boolean bProgressDialog )

Regenera el área de datos de la tabla indicada en el primer parámetro. Si indicamos true en el 2º parámetro se mostrará la barra de progreso. Esta función lanzada sobre tablas en memoria siempre devuelve false.

Parámetros:

  • idRefTabla: idRef de la tabla "ALIAS_PROYECTO/ID_TABLA".

  • bProgressDialog: true para indicar que sea visible la barra de progreso.

Boolean regenIndexes( String idRefTabla, Boolean bProgressDialog )

Regenera los índices de tabla indicada en el primer parámetro. Si indicamos true en el 2º parámetro se mostrará la barra de progreso.

Parámetros:

  • idRefTabla: idRef de la tabla "ALIAS_PROYECTO/ID_TABLA".

  • bProgressDialog: true para indicar que sea visible la barra de progreso.

Funciones DOS: directorios

String applicationDirPath()

Devuelve el directorio de la aplicación en el que está siendo ejecutado el script.

String applicationFilePath()

Devuelve la senda de la aplicación en el que está siendo ejecutado el script.

String cleanPath( String path )

Elimina del path los separadores "/" o "" redundantes y los unifica a "/".

String currentPath()

Devuelve el path del directorio en curso, por defecto donde se ejecuta vClient.

VFileInfo driveAt( Number index )

Devuelve un objeto VFileInfo para el dispositivo del índice cargado.

Parámetros:

  • index: número ordinal correspondiente al dispositivo de disco.

Number drivesCount()

Devuelve el número de dispositivos de disco del sistema.

Array getPaths( int nPath )

Devuelve un array de cadenas con las sendas estándar del sistema para la localización que indicamos como parámetro.

La función devuelve un array ya que puede haber más de una senda para un mismo path.

Parámetros:

  • Path:

Windows

========

DesktopPath "C:/Users/<USER>/Desktop"

DocumentsPath "C:/Users/<USER>/Documents"

FontsPath "C:/Windows/Fonts" (not writable)

ApplicationsPath "C:/Users/<USER>/AppData/Roaming/Microsoft/Windows/Start Menu/Programs"

MusicPath "C:/Users/<USER>/Music"

MoviesPath "C:/Users/<USER>/Videos"

PicturesPath "C:/Users/<USER>/Pictures"

TempPath "C:/Users/<USER>AppData/Local/Temp"

HomePath "C:/Users/"

DataPath "C:/Users/<USER>/AppData/Local/", "C:/ProgramData/", "", "/data"

CachePath "C:/Users/<USER>/AppData/Local/<USER>/cache"

GenericDataPath "C:/Users/<USER>/AppData/Local", "C:/ProgramData", "", "/data"

RuntimePath "C:/Users/"

ConfigPath "C:/Users/<USER>/AppData/Local/", "C:/ProgramData/"

GenericConfigPath "C:/Users/<USER>/AppData/Local", "C:/ProgramData"

DownloadPath "C:/Users/<USER>/Documents"

GenericCachePath "C:/Users/<USER>/AppData/Local/cache"

AppDataPath "C:/Users/<USER>/AppData/Roaming/", "C:/ProgramData/", "", "/data"

AppLocalDataPath "C:/Users/<USER>/AppData/Local/", "C:/ProgramData/", "", "/data"

AppConfigPath "C:/Users/<USER>/AppData/Local/", "C:/ProgramData/"

OS X

========

DesktopPath "~/Desktop"

DocumentsPath "~/Documents"

FontsPath "/System/Library/Fonts" (not writable)

ApplicationsPath "/Applications" (not writable)

MusicPath "~/Music"

MoviesPath "~/Movies"

PicturesPath "~/Pictures"

TempPath Generado aleatoriamente por el sistema operativo

HomePath "~"

DataPath "~/Library/Application Support/", "/Library/Application Support/". "/../Resources"

CachePath "~/Library/Caches/", "/Library/Caches/"

GenericDataPath "~/Library/Application Support", "/Library/Application Support"

RuntimePath "~/Library/Application Support"

ConfigPath "~/Library/Preferences"

GenericConfigPath "~/Library/Preferences"

DownloadPath "~/Downloads"

GenericCachePath "~/Library/Caches", "/Library/Caches"

AppDataPath "~/Library/Application Support/", "/Library/Application Support/". "/../Resources"

AppLocalDataPath "~/Library/Application Support/", "/Library/Application Support/". "/../Resources"

AppConfigPath "~/Library/Preferences/"

Linux

========

DesktopPath "~/Desktop"

DocumentsPath "~/Documents"

FontsPath "~/.fonts"

ApplicationsPath "~/.local/share/applications", "/usr/local/share/applications", "/usr/share/applications"

MusicPath "~/Music"

MoviesPath "~/Videos"

PicturesPath "~/Pictures"

TempPath "/tmp"

HomePath "~"

DataPath "~/.local/share/", "/usr/local/share/", "/usr/share/"

CachePath "~/.cache/"

GenericDataPath "~/.local/share", "/usr/local/share", "/usr/share"

RuntimePath "/run/user/"

ConfigPath "~/.config", "/etc/xdg"

GenericConfigPath "~/.config", "/etc/xdg"

DownloadPath "~/Downloads"

GenericCachePath "~/.cache"

AppDataPath "~/.local/share/", "/usr/local/share/", "/usr/share/"

AppLocalDataPath "~/.local/share/", "/usr/local/share/", "/usr/share/"

AppConfigPath "~/.config/", "/etc/xdg/"

Android

========

DesktopPath "/files"

DocumentsPath "/Documents", "/<USER>/Documents"

FontsPath "/system/fonts" (no se puede escribir)

ApplicationsPath No soportado (el directorio no se puede leer)

MusicPath "/Music", "/<USER>/Music"

MoviesPath "/Movies", "/<USER>/Movies"

PicturesPath "/Pictures", "/<USER>/Pictures"

TempPath "/cache"

HomePath "/files"

DataPath "/files", "/<USER>/files"

CachePath "/cache", "/<USER>/cache"

GenericDataPath ""

RuntimePath "/cache"

ConfigPath "/files/settings"

GenericConfigPath "/files/settings" (no hay settings compartidos)

DownloadPath "/Downloads", "/<USER>/Downloads"

GenericCachePath "/cache" (no hay cache compartida)

AppDataPath "/files", "/<USER>/files"

AppConfigPath "/files/settings"

AppLocalDataPath "/files", "/<USER>/files"

iOS

========

DesktopPath "/Documents/Desktop"

DocumentsPath "/Documents"

FontsPath "/Library/Fonts"

ApplicationsPath No soportado

MusicPath "/Documents/Music"

MoviesPath "/Documents/Movies"

PicturesPath "/Documents/Pictures", "assets-library://"

TempPath "/tmp"

HomePath "" (not writable)

DataPath "/Library/Application Support"

CachePath "/Library/Caches"

GenericDataPath "/Documents"

RuntimePath No soportado

ConfigPath "/Library/Preferences"

GenericConfigPath "/Library/Preferences"

DownloadPath "/Documents/Downloads"

GenericCachePath "/Library/Caches"

AppDataPath "/Library/Application Support"

AppConfigPath "/Library/Preferences/"

AppLocalDataPath "/Library/Application Support"

String homePath()

Devuelve el path del directorio home, por defecto el del usuario.

Boolean loadDrives()

Carga los dispositivos de disco del sistema. Devuelve true si finaliza correctamente.

Devuelve el path del directorio raíz, por ejemplo "C:/".

Boolean setCurrentPath( String path )

Cambia el path en curso. Devuelve true si el cambio finaliza correctamente.

Parámetros:

  • path: nueva senda.

String tempPath()

Devuelve el path de del directorio temporal.

Funciones DOS: ficheros

Boolean copyFile( String szFileName, String szNewName )

Copia un fichero. Devuelve true si la copia finaliza correctamente.

Parámetros:

  • szFileName: senda de origen del fichero con el nombre antiguo.

  • szNewName: senda de destino del fichero con el nuevo nombre.

Boolean existsFile( String szFileName )

Devuelve true si el fichero existe y está legible.

Parámetros:

  • szFileName: senda del fichero.

Boolean linkFile( String szFileName, String szLinkName )

Crea un enlace simbólico, acceso directo o shortcut, a un fichero o directorio.

Parámetros:

  • szFileName: senda del fichero.

  • szLinkName: nombre del acceso directo o shorcut.

Boolean removeFile( String szFileName )

Elimina un fichero del disco. Devuelve true si finaliza correctamente.

Parámetros:

  • szFileName: senda del fichero.

Boolean renameFile( String szFileName, String szNewName )

Renombra un fichero del disco. Devuelve true si finaliza correctamente.

Parámetros:

  • szFileName: senda del fichero a renombrar.

  • szNewName: senda del fichero con el nuevo nombre.

Funciones de info local actual

Number currentCountryCode()

Devuelve el código de país en curso.

String currentCountryIsoCode()

Devuelve el código ISO (3166) del país en curso.

String currentCountryName()

Devuelve el nombre del país en curso, en inglés.

String currentDecimalPoint()

Devuelve el carácter de separador decimal en curso. Un string de un byte.

Number currentLanguageCode()

Devuelve el código del idioma en curso.

String currentLanguageIsoCode()

Devuelve el código ISO (639) del idioma en curso.

String currentLanguageName()

Devuelve el nombre del idioma en curso, en inglés.

Funciones de info local del sistema

Number sysCountryCode()

Devuelve el código de país del sistema.

String sysCountryIsoCode()

Devuelve el código ISO (3166) del país del sistema.

String sysCountryName()

Devuelve el nombre del país del sistema.

String sysDecimalPoint()

Devuelve el carácter de separador decimal del sistema, un string de un byte.

Number sysLanguageCode()

Devuelve el código del idioma del sistema.

String sysLanguageIsoCode()

Devuelve el código ISO (639) del idioma del sistema.

String sysLanguageName()

Devuelve el nombre del idioma del sistema, en inglés.

Funciones de sistema

VClipboard clipboard()

Devuelve un objeto del tipo VClipboard que nos permite acceder al portapapeles en curso o establecer un nuevo contenido en el portapapeles.

VScreen screen()

Devuelve un objeto VScreen que representa la pantalla principal del sistema y que nos permite obtener información acerca de la misma.

Boolean startProgramDetached( String szExe, string aszArgumentos )

Ejecuta la aplicación que pasamos como parámetro con los argumentos correspondientes, devolviendo true si ha podido ejecutarlo. No espera.

Parámetros:

  • szExe: senda del ejecutable.

  • aszArgumentos: en Linux y en macOS se debe especificar un array de cadenas con los argumentos del ejecutable. En Windows se ha de usar una única cadena, un literal.

String sysMachineName()

Devuelve el nombre de la máquina host.

Funciones de cestas

void appendToBasket( String szIdRefCesta, VRegister reg )

Añade a la cesta el registro existente en el objeto VRegister. Tanto la cesta como el objeto VRegister deben ser de la misma tabla.

Parámetros:

  • szIdRefCesta: idRef de la cesta "ALIAS_PROYECTO/ID_OBJETO".

  • reg: objeto de la clase VRegister.

void appendToBasket( String szIdRefCesta, VRegisterList regList )

Añade a la cesta los registros existentes en el objeto VRegisterList. Tanto la cesta como el objeto VRegisterList deben ser de la misma tabla.

Parámetros:

  • szIdRefCesta: idRef de la cesta "ALIAS_PROYECTO/ID_OBJETO".

  • regList: objeto de la clase VRegisterList.

Boolean getBasket( String szIdRefCesta, VRegisterList regList )

Alimenta un objeto VRegisterList con los registros contenidos en la cesta. Devuelve true si finaliza correctamente. Si el objeto VRegisterList contiene registros se pierden ya que el contenido del objeto VRegisterList en su totalidad es sustituido por los registros que existen en la cesta. Si el objeto VRegisterList no tuviese asignada ninguna tabla, al ejecutar esta función asumirá la misma tabla de la cesta.

Parámetros:

  • szIdRefCesta: idRef de la cesta "ALIAS_PROYECTO/ID_OBJETO".

  • regList: objeto de la clase VRegisterList.

void removeFromBasket( String szIdRefCesta, VRegister reg )

Elimina de la cesta el registro existente en el objeto VRegister. Tanto la cesta como el objeto VRegister deben ser de la misma tabla.

Parámetros:

  • szIdRefCesta: idRef de la cesta "ALIAS_PROYECTO/ID_OBJETO".

  • reg: objeto de la clase VRegister.

void removeFromBasket( String szIdRefCesta, VRegisterList regList )

Elimina de la cesta los registros existentes en el objeto VRegisterList. Tanto la cesta como el objeto VRegisterList deben ser de la misma tabla.

Parámetros:

  • szIdRefCesta: idRef de la cesta "ALIAS_PROYECTO/ID_OBJETO".

  • regList: objeto de la clase VRegisterList.

Boolean setBasket( String szIdRefCesta, VRegisterList regList )

Añade a la cesta los registros contenidos en un objeto VRegisterList. Devuelve true si finaliza correctamente. Si la cesta contiene registros se pierden ya que el contenido de la cesta en su totalidad es sustituido por los que existen en el objeto VRegisterList. La cesta asumirá la tabla del objeto VRegisterList.

Parámetros:

  • szIdRefCesta: idRef de la cesta "ALIAS_PROYECTO/ID_OBJETO".

  • regList: objeto de la clase VRegisterList.

Funciones de impresoras del sistema

Array availablePrinters()

Devuelve un array con los nombres de las impresores disponibles en el sistema.

String defaultPrinter()

Devuelve el nombre de la impresora configurada por defecto en el sistema.

Array supportedPaperSizes( String szPrinterName )

Devuelve un array con los tamaño de papel disponible para la impresora especificada en el parámetro.

Parámetros:

  • szPrinterName: nombre de la impresora.

Funciones de impresión de informes

void printReport( VRegisterList list, String idRefReport, [String idRefLogicPr])

Imprime un informe. Si no se especifica impresora lógica mostrará el cuadro de diálogo de selección de la impresora.

Parámetros:

  • list: objeto de la clase VRegisterList con la lista de registros con los que se alimentará el informe.

  • idRefReport: idRef del objeto informe a imprimir "ALIAS_PROYECTO/ID_OBJETO".

  • idRefLogicPr: idRef del objeto impresora lógica por la que se imprima el informe. Este parámetro es opcional.

void printReportToFile( VRegisterList list, String idRefReport, String path )

Genera un fichero en disco con el informe. En función de la extensión del path se podrá generar un fichero PDF o PostScript.

Parámetros:

  • list: objeto de la clase VRegisterList con la lista de registros con los que se alimentará el informe.

  • idRefReport: idRef del objeto informe a imprimir "ALIAS_PROYECTO/ID_OBJETO".

  • path: senda completa donde se almacenará el informe generado.

void printReportToPrinter( VRegisterList list, String idRefReport, String printerName, [Boolean bHighRes=false])

Imprime un informe directamente en la impresora especificada sin mostrar el cuadro de diálogo de selección de impresora.

Parámetros:

  • list: objeto de la clase VRegisterList con la lista de registros con los que se alimentará el informe.

  • idRefReport: idRef del objeto informe a imprimir "ALIAS_PROYECTO/ID_OBJETO".

  • printerName: nombre de la impresora donde se lanzará la impresión del informe.

  • bHighRes: parámetro opción que permite configurar si la impresión se realizar con alta o baja resolución. Por defecto es false que indica baja resolución. Para imprimir en alta resolución hay que poner este parámetro a true.

Funciones de variables de sistema

String clientCachePath()

Devuelve el path usado por el ejecutable, por ejemplo vClient o vDataClient, para almacenar la información en caché.

Boolean isAdministrator()

Devuelve true si el usuario es administrador.

VSysInfo sysInfo()

Devuelve un objeto de la clase VSysInfo que contiene funciones para obtener diferente información del sistema.

String userName()

Devuelve el nombre del usuario en curso.

Funciones de cursor

void restoreOverrideCursor()

Recupera el cursor normal (ArrowCursor del enum).

void setOverrideCursor( Number nCursor )

Cambiar el icono del cursor.

Parámetros:

Si cambiamos el cursor en un proceso con setOverrideCursor, para restaurarlo debemos hacerlo con la función restoreOverrideCursor en ese mismo proceso. El motivo es que estas funciones se han de usar en una misma sesión, y esa sesión es la del propio proceso en la que se ha modificado el cursor. Esto quiere decir que no podemos modificar y restaurar el cursor en procesos diferentes.

Funciones de variables globales tipo array

Number globalVarArraySize( String szIdRefVar )

Devuelve el tamaño del array de la variable global.

Parámetros:

  • szIdRefVar: identificador de referencia de la variable global.

Boolean globalVarArrayToBool( String szIdRefVar, Number nSubindex )

Devuelve el valor de un elemento de una variable global de tipo Array cuyo contenido sea de tipo booleano.

Parámetros:

  • szIdRefVar: identificador de referencia de la variable global.

  • nSubindex: número de índice del elemento del array.

Date globalVarArrayToDate( String szIdRefVar, Number nSubindex )

Devuelve el valor de un elemento de una variable global de tipo Array cuyo contenido sea de tipo fecha.

Parámetros:

  • szIdRefVar: identificador de referencia de la variable global.

  • nSubindex: número de índice del elemento del array.

DateTime globalVarArrayToDateTime( String szIdRefVar, Number nSubindex )

Devuelve el valor de un elemento de una variable global de tipo Array cuyo contenido sea de tipo tiempo, fecha y hora.

Parámetros:

  • szIdRefVar: identificador de referencia de la variable global.

  • nSubindex: número de índice del elemento del array.

Number globalVarArrayToInt( String szIdRefVar, Number nSubindex )

Devuelve el valor de un elemento de una variable global de tipo Array cuyo contenido sea de tipo numérico, entero.

Parámetros:

  • szIdRefVar: identificador de referencia de la variable global.

  • nSubindex: número de índice del elemento del array.

Number globalVarArrayToSDouble( String szIdRefVar, Number nSubindex )

Devuelve el valor de un elemento de una variable global de tipo Array cuyo contenido sea de tipo numérico, con decimales.

Parámetros:

  • szIdRefVar: identificador de referencia de la variable global.

  • nSubindex: número de índice del elemento del array.

String globalVarArrayToString( String szIdRefVar, Number nSubindex )

Devuelve el valor de un elemento de una variable global de tipo Array cuyo contenido sea de tipo alfabético.

Parámetros:

  • szIdRefVar: identificador de referencia de la variable global.

  • nSubindex: número de índice del elemento del array.

Time globalVarArrayToTime( String szIdRefVar, Number nSubindex )

Devuelve el valor de un elemento de una variable global de tipo Array cuyo contenido sea de tipo hora.

Parámetros:

  • szIdRefVar: identificador de referencia de la variable global.

  • nSubindex: número de índice del elemento del array.

Boolean isGlobalVarArrayEmpty( String szIdRefVar, Number nSubindex )

Devuelve true si el elemento de una variable global de tipo Array está vacío.

Parámetros:

  • szIdRefVar: identificador de referencia de la variable global.

  • nSubindex: número de índice del elemento del array.

void setGlobalVarArray( QString szIdRefVar, Number nSubindex, Variant var)

Asigna un valor a un elemento de una variable global de tipo array.

Parámetros:

  • szIdRefVar: identificador de referencia de la variable global.

  • nSubindex: número de índice del elemento del array.

  • var: valor de cualquier tipo que deseamos almacenar en el elemento de la variable global tipo array.

Funciones de mensajería interna

void sendUserAlert( String szUser, String szAsunto, String szMsg )

Envía un mensaje de alerta a un usuario.

Parámetros:

  • szUser: nombre del usuario.

  • szAsuneto: texto del asunto del mensaje.

  • szMsg: texto del mensaje.

void sendUserMessage( String szUser, String szAsunto, String szMsg )

Envía un mensaje normal a un usuario.

Parámetros:

  • szUser: nombre del usuario.

  • szAsuneto: texto del asunto del mensaje.

  • szMsg: texto del mensaje.

void sendUserWarning( String szUser, String szAsunto, String szMsg )

Envía un mensaje de aviso a un usuario.

Parámetros:

  • szUser: nombre del usuario.

  • szAsuneto: texto del asunto del mensaje.

  • szMsg: texto del mensaje.

Funciones de tablas estáticas

Number staticTableItemCount( String szIdRefTable )

Devuelve el número de ítems de la tabla estática.

Parámetros:

  • szIdRefTable: identificador de referencia de la tabla estática.

String staticTableItemId( String szIdRefTable, Number nIndex )

Devuelve el identificador de un ítem de la tabla estática.

Parámetros:

  • szIdRefTable: identificador de referencia de la tabla estática.

  • nIndex: número de posición del ítem. El primero es el 0.

VImage staticTableItemImage( String szIdRefTable, Number nIndex )

Devuelve un objeto VImage con la imagen de un ítem de la tabla estática.

Parámetros:

  • szIdRefTable: identificador de referencia de la tabla estática.

  • nIndex: número de posición del ítem. El primero es el 0.

String staticTableItemName( String szIdRefTable, Number nIndex )

Devuelve el nombre de un ítem de la tabla estática.

Parámetros:

  • szIdRefTable: identificador de referencia de la tabla estática.

  • nIndex: número de posición del ítem. El primero es el 0.

String staticTableItemName( String szIdRefTable, Number nIndex, Number nLenguaje, Number nPais )

Devuelve el nombre de un ítem de la tabla estática en el idioma y/o país especifico.

Parámetros:

  • szIdRefTable: identificador de referencia de la tabla estática.

  • nIndex: número de posición del ítem. El primero es el 0.

  • nLenguaje: número del código de idioma. Ver tabla de códigos de idiomas de Qt.

  • nPais: número del código de país. Ver tabla de códigos de países de Qt.

Las tablas de códigos de idiomas y países se puede encontrar en la documentación siguiente:

http://doc.qt.io/qt-5.6/qlocale.html

Funciones multimedia

Array availableCameraDescriptions()

Devuelve un array con la descripción del dispositivo de las cámaras disponibles en el sistema. Para presentar al usuario es preferible mostrar esta información, es decir la descripción que devuelve esta función en vez de mostrarle los valores de la función availableCameras().

Array availableCameras()

Devuelve un array con los nombres de dispositivo de las cámaras disponibles en el sistema.

String defaultCamera()

Devuelve el nombre de la cámara configurada por defecto en el sistema.

String defaultCameraDescription()

Devuelve la descripción de la cámara configurada por defecto en el sistema.

Funciones de vista de datos

VAbstractDataView focusDataView

Retorna el control de vista de tipo VAbstractDataView que tiene el foco o null si no hubiera ninguno.

Funciones de estilos

Boolean setStyle( String szStyle )

Establece el estilo que indiquemos como parámetro para la aplicación.

Parámetros:

  • szStyle: nombre del estilo. Una cadena vacía establecerá el estilo por defecto del sistema ("").

Devuelve true si ha encontrado el estilo y establecido éste para la aplicación. False si no ha podido establecerlo por que no está disponible.

String style()

Devuelve el nombre del estilo en curso.

Array styles()

Devuelve en un array de cadenas, los nombres de los estilos disponibles en el sistema.

Funciones de conexión segura TLS/SSL

VSSLInfo sslInfo()

Devuelve un objeto VSSLInfo que contiene la información correspondiente a la conexión en curso, a partir del cuál podemos obtener información de la configuración de la conexión segura TLS/SSL y del certificado utilizado.

Funciones de cliente-servidor

Number connectionLatency()

En el cliente, devuelve la latencia media de la conexión expresado en milisegundos (devuelve -1 si no hay conexión).

Number connectionQuality()

En el cliente, devuelve la calidad media de la conexión en una escala de 0 a 6, de menor a mayor calidad (devuelve 0 si no hay conexión). Ver enum de calidades de conexión.

Funciones de personalización

Void setFrame( String szIdRefFrame )

Esta función permite cambiar el marco principal del proyecto por el que indiquemos en su parámetro.

Solamente podrá ser usada en el proceso ON_INIT_CLIENT del proyecto de aplicación.

Parámetros:

  • szIdRefFrame: identificador de referencia del marco a usar.

Ejemplos

1. Obtener el numero total de tablas

var mainpro = theApp.mainProjectInfo();
var nTotalTablas = mainpro.allTableCount();

2. Obtener el valor de una variable global

var timeLast = theApp.varGlobalToString( "CINE_DAT/TIME_LAST_SUGEST" );

3. Regenerar índices de todas las tablas

var project = theApp.mainProjectInfo();
for( var x=0; x < project.allTableCount(); ++x )
{
    var tableInfo = project.allTableInfo(x);
    theApp.regenIndexes( tableInfo.idRef(), true );
}

4. Funciones generales

// Si el componente ejecutado es vClient se emite un pitido
if ( theApp.exeName() == "vClient" ) {
    theApp.beep();
}

// Se muestra el nombre del componente en ejecución
alert( "Componente en ejecución: " + theApp.exeName() );

// Mostrar info local en curso
alert( "Información local en curso" + "n" + "n" +
        "Código del idioma = " + theApp.currentLanguageCode() + "n" +
        "Código ISO del idioma = " + theApp.currentLanguageIsoCode() + "n" +
        "Nombre del idioma = " + theApp.currentLanguageName() + "n" +
        "Código del país = " + theApp.currentCountryCode() + "n" +
        "Código ISO del país = " + theApp.currentCountryIsoCode() + "n" +
        "Nombre del país = " + theApp.currentCountryName() + "n" +
        "Separador decimal = " + theApp.currentDecimalPoint() );

// Mostrar info local del sistema
alert( "Información local del sistema" + "n" + "n" +
        "Código del idioma = " + theApp.sysLanguageCode() + "n" +
        "Código ISO del idioma = " + theApp.sysLanguageIsoCode() + "n" +
        "Nombre del idioma = " + theApp.sysLanguageName() + "n" +
        "Código del país = " + theApp.sysCountryCode() + "n" +
        "Código ISO del país = " + theApp.sysCountryIsoCode() + "n" +
        "Nombre del país = " + theApp.sysCountryName() + "n" +
        "Separador decimal = " + theApp.sysDecimalPoint() + "n" +
        "Nombre de la máquina = " + theApp.sysMachineName() );

5. Funciones de variables globales

// Almacenamos los valores en variables globales
theApp.setGlobalVar( "VJS_DAT/VAR_GLO_ALF", "ABC" );
theApp.setGlobalVar( "VJS_DAT/VAR_GLO_NUM", 123.45 );
theApp.setGlobalVar( "VJS_DAT/VAR_GLO_TMP", "2012/05/03 08:31:18" );
theApp.setGlobalVar( "VJS_DAT/VAR_GLO_FCH", "2012/05/04" );
theApp.setGlobalVar( "VJS_DAT/VAR_GLO_HOR", "09:53:23" );

// Se comprueba si la variable global alfabética está vacía
alert( "¿Está vacía la variable global alfabética? " +
        theApp.isGlobalVarEmpty( "VJS_DAT/VAR_GLO_ALF" ) );

// Recuperamos y mostramos el valor de las variables globales
alfabetica = theApp.globalVarToString( "VJS_DAT/VAR_GLO_ALF" );
numero_decimal = theApp.globalVarToDouble( "VJS_DAT/VAR_GLO_NUM" );
numero_entero = theApp.globalVarToInt( "VJS_DAT/VAR_GLO_NUM" );
tiempo = theApp.globalVarToDateTime( "VJS_DAT/VAR_GLO_TMP" );
fecha = theApp.globalVarToDate( "VJS_DAT/VAR_GLO_FCH" );
hora = theApp.globalVarToTime( "VJS_DAT/VAR_GLO_HOR" );
alert( "Valor de las variables globales: n" + alfabetica + "n" +
        numero_decimal + "n" + numero_entero + "n" +
        tiempo + "n" + fecha + "n" + hora );

6. Funciones de constantes

alert( theApp.constant( "VJS_DAT/MSG_ERR_ID" ) );

7. Funciones de DOS (Sistema operativo de disco)

// Se preparan las variables con los nombres de ficheros
fileFrom = "/fichero.txt";
fileTo = "/fichero.txt.bck";

// Si existe el fichero destino se elimina
if ( theApp.existsFile( fileTo) )
{
    if ( confirm( "¿Desea eliminar el fichero " + fileTo + "?", "Confirmar" ) )
    {
        theApp.removeFile( fileTo);
    }
}

// Si existe el fichero se copia
if ( theApp.existsFile( fileFrom ) )
{
    if ( theApp.copyFile( fileFrom, fileTo) )
    {
        alert( "Se ha copiado el fichero correctamente", "Notificación" );

        // Se crea un acceso directo al fichero origen
        theApp.linkFile( fileFrom, fileFrom + ".lnk" );

        // Se renombra el fichero copiado
        theApp.renameFile( fileTo, fileTo + "1" );
    } else {
        alert( "No se ha copiado el fichero correctamente", "Notificación" );
    }
} else {
    alert( "No se ha encontrado el fichero " + fileFrom, "Aviso" );
}

// Cambiamos el directorio en curso
if ( theApp.setCurrentPath( theApp.rootPath() + "/instancias" ) )
{
    alert( "Se ha cambiado el path en curso", "Notificación" );
}

// Mostrar los path de los directorios
alert( "Estos son los directorios de trabajo:" + "n" +
        "En curso: " + theApp.currentPath() + "n" +
        "Root: " + theApp.rootPath() + "n" +
        "Home: " + theApp.homePath() + "n" +
        "Temp: " + theApp.tempPath() );

// Limpieza de un path
alert( theApp.cleanPath( "//instancias\appdatos//2012", "Senda" ) );

// Revisar los dispositivos de disco del sistema operativo
var drivesNumber =0;
var drivesList = "";
theApp.loadDrives();

for ( i=0; i{
    drive = theApp.driveAt( i );
    drivesNumber++;
    drivesList += drive.path() + "n";
}

alert( "Se han encontrado " + drivesNumber.toString() + " dispositivos de disco: nn" +
        drivesList );

8. Funciones de herramientas de base de datos

// Confirmamos si desea regenerar área de datos, índices o todos
var regenAreaDatos = confirm( "¿Desea regenerar el área de datos de todas las tablas?", "Confirmación" );
var regenIndexes = confirm( "¿Desea regenerar los índices de todas las tablas?", "Confirmación" );

// Si hay algo que regenerar se leen todas las tablas de la aplicación incluídas las heredadas
if ( regenAreaDatos | regenIndexes )
{
    var msgErrors = "";
    var mainProject = theApp.mainProjectInfo();

    for( var nIndex=0; nIndex < mainProject.allTableCount(); nIndex++ )
    {
        var tableInfo = mainProject.allTableInfo( nIndex );
        var table = tableInfo.idRef();

        // Sólo se regenera el área de datos de las tablas en disco
        if ( tableInfo.isInMemory() == false )
        {
            if ( !theApp.regenDataArea( table, true ))
            {
                msgErrors += "Falló la regeneración del área de datos de la tabla " + table + "n";
            }
        }

        // Se regeneran los índices de todas las tablas sean en disco o en memoria
        if ( !theApp.regenIndexes( table, true ))
        {
            msgErrors += "Falló la regeneración de índices de la tabla " + table + "n";
        }
    }

    // Mensaje final del resultado de las regeneraciones
    if (msgErrors.length == 0)
    {
        alert( "El proceso de regeneración ha finalizado correctamente", "Notificación" );
    } else {
        alert( "Se han producido los siguientes errores: n" + msgErrors, "¡Atención!" );
    }
}

9. Cálculo de Hash

// Calcular el hash de una cadena con SHA-2 512

theApp.calcHash( "", VApp.Sha2_512 )

10. Cambiar el marco principal de la aplicación

theApp.setFrame( "gestion_app/SUPERVISOR" );

Última actualización