application

La aplicación en ejecución es representada por un único objeto de esta clase.Provee las funcionalidades básicas de instanciación de formularios y origenes de datos así como también información del usuario y virtual contact center. Puede utilizar el metodo icc.ui.getApplication() para obtener una referencia a este objeto global.

Metodos

string getUser ();

Retorna el id de usuario registrado en inConcert.


string getName ();

Retorna el nombre de la aplicación.


string getVCCName ();

Retorna el nombre del virtual contact center en el cual se está ejecutando la aplicación.


variant ajaxCall ( string  method , string  dataType , string  url , string  body , object  headers , object  parameters , function callback ( boolean  status , object  result ) { ... } );
methodDefine el método de invocación al server remoto.
Opciones
Nombre Descripcion
GET Usa el método http GET enviando los datos de ejecución en la url (ignora el parametro body)
POST Usa el método http POST enviando los datos de ejecución en el cuerpo del mensaje.
dataTypeIndica el tipo de datos retornados por el servidor invocando el parser correspondiente despues del llamado
Opciones
Nombre Descripcion
xml Asume que los datos son devueltos como una cadena xml e invoca el xml parser para retornar los resultados como un DOM
json Asume que los datos son devueltos como una cadena json y convierte los datos devueltos a un objeto javascript
urlDirección web donde se ubica el recurso.
bodyDatos a enviar cuando el método de ejecución es POSTA
headersObjeto javascript con las cabeceras web que puedan ser requeridas por el servicio ej. content-type
parametersObjeto con parametros adicionales
Miembros de la estructura
Tipo Nombre Descripcion
integer timeout Tiempo maximo de espera de una respuesta en la conexion al servidor remoto
callbackFunción a ser invocada luego de la ejecución del método en modo asíncrono. Cuando se utiliza este parametro la ejecución de la función se realiza de forma asíncrona.
statustrue si el metodo de ejecutó correctamente.
resultSi status = false contiene informacion del error producido al ejecutar el método.En cambio si status = true contiene los datos retornados por el webserver.

Ejecuta una llamada ajax POST o GET usando el servidor de Inconcert como pasarela, si es ejecutada de forma sincrona ( sin callback ) retorna los datos inmediatamente o false si se produce un error.


loadForm ( string  formName , function callback ( boolean  status , object  form ) { ... } );
formNameNombre del formulario a cargar.
callbackFunción en la cual se obtiene de forma asíncrona el objeto del formulario.
statusToma valor true si el formulario pudo cargarse correctamente.
formObjeto que representa el formulario cargado o en caso de fallo el error encontrado.

Carga un formulario de forma asíncrona devolviendo en un callback un panel que representa el formulario.

Ejemplo
Carga de un formulario para uso posterior.
					
// asume que hay un panel (panel1) destinado a contener el formulario
// cargado.
var app = icc.ui.getApplication();
app.loadForm("frmClientes",
    function(status,form){
        if(status){
            // El formulario es un panel conteniendo todos los controles
            form.create();
            panel1.addChild(form);  // Agregamos el formulario al panel
            panel1.layout();        // Actualizamos la disposicion del panel para 
                                    // mostrar el formulario en él
        }else{
            alert("No se pudo cargar el formulario");
        }
    }
 );

					

show ( string  formName , object  parameters );
formNameNombre del formulario a cargar.
parametersParámetros adicionales y valores del environment para el formulario. Además de cualquier valor que se desee obtener mediante el objeto args en el formulario a ejecutar pueden pasarse también datasources que en caso de ser necesarios en el formulario se reciben 'as is' en el mismo. Esto significa que si en un formulario tenemos un datasource posicionado en un registro al abrir por ejemplo otro formulario que lo utilize este aparecera mostrando ese mismo registro.

Carga y muestra un formulario en la ventana principal de la aplicación.

Ejemplo
Navegar a un determinado formulario según parámetros de la url.
					
// ej url /testApp?opname=clientes
var app = icc.ui.getApplication();
switch(args['opname']){
    case 'clientes':
        app.show("frmClientes");
    break
    case 'ventas':
        app.show("frmVentas");
    break
}

					

showModal ( string  formName , object  arguments , [ function callback ( boolean  result , object  form ) { ... } ] );
formNameNombre del formulario a cargar.
argumentsObjeto con argumentos a pasar al formulario ej. {variable:valor}
callbackFunción ejecutada luego de que la ventana modal finaliza su ejecución.
resultResultado de la ejecución
Nombre Descripcion
false El formulario fue cerrado mediante el botón de cerrar de la ventana, por un botón close o hubo una falla al cargar el formulario.
true El formulario fue cerrado por un boton de Ok o un save and close.
formEl objeto correspondiente al formulario cargado. Si este valor es undefined es porque el formulario no pudo cargarse.

datasource ( string  datasourceName , [object  environment] );
datasourceNameNombre del datasource a instanciar.
environmentAmbiente de ejecución del datasource,si no se proporciona se asume uno nuevo. En un formulario puede utilizarse la variable 'environment' disponible en el mismo para que el nuevo datasource interactue con los datasources del formulario.

Crea una instancia de un datasource definido en el proyecto.

Ejemplo
Crea una instancia de ds_clients y agrega un registro.
					
var clients = icc.ui.getApplication().datasource("ds_clients");
clients.appendNew();
clients.set({
    clientId:'22345',
    Name:'Robert Pattinson'
});
clients.save();