# VLogin

Esta clase representa la conexión de Velneo vClient y dispone de las funciones necesarias para realizar la conexión.

### El objeto theLogin <a href="#h.lt2xdh7xk96h" id="h.lt2xdh7xk96h"></a>

El script QML está conectado al objeto theLogin que representa la ventana de conexión en curso.

#### El objeto [theApp](https://doc.velneo.com/21/velneo-vdevelop/scripts/lenguajes/javascript/vapp#theapp)

En el login está disponible este objeto, a excepción de las funciones que son de ejecución (funciones de variables globales, de impresoras, etc.).

## Funciones

**Funciones de información**

| Retorno | Función                                            |
| ------- | -------------------------------------------------- |
| string  | [applicationDirPath](#string-applicationdirpath)() |
| string  | [user](#user)()                                    |
| string  | [server](#server)()                                |
| model   | [servers](#servers)()                              |

**Funciones de conexión**

| Retorno | Función                                        |
| ------- | ---------------------------------------------- |
| void    | [setServer](#setserver)( String szVRL )        |
| void    | [setUser](#setuser)( String szUser )           |
| void    | [setPassword](#setpassword)( String szPasswd ) |
| void    | [accept](#accept)( void )                      |
| void    | [reject](#reject)( void )                      |

**Funciones de error**

| Retorno | Función                         |
| ------- | ------------------------------- |
| void    | [errorText](#errortext)( void ) |

**Funciones de marco**

| Retorno | Función                                             |
| ------- | --------------------------------------------------- |
| void    | [setWindowTitle](#setwindowtitle)( String szTitle ) |
| void    | [setWindowIcon](#setwindowicon)( String szPath )    |

**Funciones de configuración**

| Retorno | Función                                      |
| ------- | -------------------------------------------- |
| void    | [setLocale](#setlocale)( String szLanguaje ) |

## Documentación de funciones

### Funciones de información

#### string applicationDirPath()

Devuelve la senda de Velneo vClient.

#### string user() <a href="#user" id="user"></a>

Devuelve el nombre del último usuario usado para conectarse. Esta información es la misma que se muestra en la ventana de conexión estándar y se devuelve por cada usuario del sistema operativo.

#### string server() <a href="#server" id="server"></a>

Devuelve la última senda VRL usada para conectarse. Esta información es la misma que se muestra en la ventana de conexión estándar y se devuelve por cada usuario del sistema operativo.

#### model servers() <a href="#servers" id="servers"></a>

Devuelve un modelo con el histórico de sendas VRL usadas para conectarse. Esta información es la misma que se muestra en la ventana de conexión estándar y se devuelve por cada usuario del sistema operativo.

Por cada item del modelo dispondremos de la propiedad **modelData** que contiene la VRL correspondiente y que podemos usar para presentar la información al usuario.

### Funciones de conexión

#### void setServer( String szVRL ) <a href="#setserver" id="setserver"></a>

Establece el valor de VRL, es decir, el dominio y puerto del servidor al que nos conectaremos.

#### void setUser( String szUser ) <a href="#setuser" id="setuser"></a>

Establece el usuario del servidor al que nos conectaremos.

#### void setPassword( String szPasswd ) <a href="#setpassword" id="setpassword"></a>

Establece la contraseña del usuario del servidor al que nos conectaremos.

#### void accept( void ) <a href="#accept" id="accept"></a>

Realiza la conexión una vez establecidos los parámetros de conexión VRL, usuario y contraseña.

#### void reject( void ) <a href="#reject" id="reject"></a>

Cancela la ventana de conexión y por tanto el proceso de conexión.

### Funciones de error

#### void errorText( void ) <a href="#errortext" id="errortext"></a>

Devuelve el mensaje de error en el caso de que falle la conexión, la contraseña sea errónea, etc.

### Funciones de marco

#### void setWindowTitle( String szTitle ) <a href="#setwindowtitle" id="setwindowtitle"></a>

Establece el título que aparece en el marco. Para que se muestre el marco, hemos de establecer el título o una imagen como icono.

#### void setWindowIcon( String szPath ) <a href="#setwindowicon" id="setwindowicon"></a>

Establece la senda en disco de la imagen que aparecerá como icono en el marco. Para que se muestre el marco, hemos de establecer el título o una imagen como icono.

### Funciones de configuración

#### void setLocale( String szLanguage ) <a href="#setlocale" id="setlocale"></a>

Establece el idioma en el que se inicializará la aplicación. El parámetro del idioma se especificará según la norma ISO-639-1 ([http://es.wikipedia.org/wiki/ISO\_639-1](https://www.google.com/url?q=http://es.wikipedia.org/wiki/ISO_639-1\&sa=D\&ust=1492443676310000\&usg=AFQjCNESJKx-wL6-AHj4Hw4BlM_pr5UEiA)). Ejemplo, para cargar el idioma español haríamos:

`theLogin.setLocale( “es”);`

## Ejemplo

![](https://s3-eu-west-1.amazonaws.com/dl.velneo.com/es/productos/v7/ayuda/20/velneo_vclient/img/res_2206.jpg)

```javascript
///////////////////////////////////////////////////////////////////////////////////////////////////
//
// Login Sin, Login.qml
//
// Ejemplo de Qml para login en Velneo.
//
// En este ejemplo se realiza la conexión de forma directa al servidor sin solicitar información al usuario.
// Los datos de acceso están definidos de forma predeterminada y no son modificables
// por el usuario (vatp://localhost, usuario velneo sin contraseña).
// Se accede de forma directa al listado de instancias que presenta el servidor.
//

import QtQuick 2.6

Rectangle
{    
    id: loginsin
    width: 480;
    height: 120;

    Component.onCompleted:
    {
        // Indicamos el título y el icono de la ventana
        theLogin.setWindowIcon("icono.png");
        theLogin.setWindowTitle("Acceso al servidor sin login previo");  
    }    

    Item
    {
        x: 10;
        y: 5;

        Image
        {        

            width: 60
            height: 30
            asynchronous: true;
            source: "logo.png"

            fillMode: Image.PreserveAspectFit;
            smooth: true;
        }
    }    

    Text
    {
        id:textMsg
        anchors.horizontalCenter: parent.horizontalCenter;
        anchors.verticalCenter: parent.verticalCenter;

        text: "Conectando con el servidor en localhost...";

        wrapMode: Text.WordWrap;
    }

    Timer {
        interval: 2000; running: true; repeat: false
        onTriggered:
        {
            // Nos conectamos                
            theLogin.setServer( "vatp://localhost" );
            theLogin.setUser( "velneo" );
            theLogin.setPassword( "" );
            theLogin.accept();

            textMsg.text = theLogin.errorText() + " " + theLogin.server();
        }        
    }            
}
```
