Libreria

Clase

Metodo

AhoraAsistentes

Asistentes

DameAsistente


Implementación:


 Function DameAsistente(aCn As Conexion) As Object 


Descripción:


Abre el formulario genérico asistente. Permite seleccionar de forma amigable, permitiendo filtros  y búsquedas y configurables. Para utilizarlo se emplea el Ahora Proceso para generar el formulario, después se le añaden los filtros y finalmente se emplea la función pública carga del formulario para recuperar el ítem seleccionado.

Para modificar el valor que devolverá el asistente hay que cambiar la propiedad "aDataField".


 Public Function Carga(
     aSource As String, -> Tabla o vista origen de los datos.
     aWhere As String, -> Condición a cumplir.
     aOrder As String, -> Nombre de campo con el valor de ordenamiento.
     Optional aDataField As String, -> Valor que devolverá el asistente (OPCIONAL).
     Optional aValue As Variant, -> Valor por defecto que mostrará el asistente (OPCIONAL).
     Optional aWidth As Single, -> Ancho de la ventana (OPCIONAL).
     Optional aHeight As Single, -> Alto de la ventana (OPCIONAL).
     Optional aPropietario As Object, 
     Optional ByVal aLoad As Boolean = False, 
     Optional aControlFoco As eAsistenteFoco = eFiltrarPor
) As Variant


Código VB6:

Set lAsist = gCn.ahoraProceso("DameAsistente", False, gCn)
  
lAsist.Caption = "Seleccione el contacto:"
  
lAsist.AddField "IdContacto","IdContacto","numeric",1000,,,True
lAsist.AddField "Nombre", "Nombre", "String", , True, , False
lAsist.AddField "E_Mail", "e-mail", "String", 1000, , False
  
lValue = lAsist.Carga("Contactos", "", "Nombre", "IdContacto", lValue, , , gForm)


Código C#:

using AhoraAsistentes;
using AhoraCore;

namespace AhoraScriptsVacia
{
    public class Script_25 : AhoraOCX.AhoraBaseScript
    {
        public void Main()
        {
            IAsistente lAsist = (IAsistente)gCn.AhoraProceso("DameAsistente", out _, gCn);
            lAsist.Text = "Seleccione el contacto:";
            lAsist.AddField("IdContacto", "IdContacto", AhoraOCX.ETipoDato.Numeric, 67);
            lAsist.AddField("Nombre", "Nombre", AhoraOCX.ETipoDato.String, null, true, false, false);
            lAsist.AddField("E_Mail", "e-mail", AhoraOCX.ETipoDato.String, 67, false, false);

            Valor lValue = lAsist.Carga("Contactos", "", "Nombre", "IdContacto", null, 0, 0, gCn.Sesion.MainForm);

        }

    }
}


Para más información sobre este método: https://ahora.freshdesk.com/a/solutions/articles/44001739705