GeneXus - Comparar datos de sql con registros genexus

 
Vista:
Imágen de perfil de Karen
Val: 54
Plata
Ha mantenido su posición en GeneXus (en relación al último mes)
Gráfica de GeneXus

Comparar datos de sql con registros genexus

Publicado por Karen (34 intervenciones) el 19/09/2016 20:52:20
Hola Buen Dia!
Puede alguien ayudarme a realizar una comparacion de registros de sql con registros fijos de genexus, lo que quiero es comparar horas de un reloj checador con horarios fijos que tengo para hacer la pre-nomina :)

Si alguien puede ayudarme le agradezco mucho :)
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

Comparar datos de sql con registros genexus

Publicado por Aroldo (115 intervenciones) el 20/09/2016 16:42:34
Hola Karen....

No comprendí muy bien lo que quieres hacer, quieres comparar registros de una base de datos externa a tu aplicación?, los relojes biometricos tienen diferentes métodos para almacenar la información, en mi caso trabaje con uno en el cual conectas una memoria usb y dentro de ella te almacena un archivo de texto con los datos de el mes, en ese caso lo que debes hacer es leer ese archivo (importarlo) desde genexus...

Si puedes explicar mejor tu caso para darte algunas ideas, también la versión de genexus con la que trabajas y para que generas..

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Karen
Val: 54
Plata
Ha mantenido su posición en GeneXus (en relación al último mes)
Gráfica de GeneXus

Comparar datos de sql con registros genexus

Publicado por Karen (34 intervenciones) el 20/09/2016 18:02:21
Hola!
Si claro le explico, los reloj checadores que se manejan, guardan los registro en foxpro y de ahi se pasan a un archivo excel, lo que quiero es tomar los registro de excel y hacer una comparacion con mis horarios fijos, para ver si existe alguna eventualidad y asi modificar la nomina, esa es mi idea, para ello intente utilizar la ingeniería inversa solo que aun no se como comparar los registros.
Igual si me puede dar alguna otra alternativa de hacerlo, se lo agradezco :)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Ronald
Val: 36
Ha mantenido su posición en GeneXus (en relación al último mes)
Gráfica de GeneXus

Comparar datos de sql con registros genexus

Publicado por Ronald (24 intervenciones) el 20/09/2016 19:17:28
Hola
Depende de donde tengas tu base de datos, pero si querés comparar orígenes tan disímiles te conviene importar a una base de datos Access que es lo más práctico si tenes tablas en Fox, planillas Excel y una base de datos relacional (solo necesitas un driver ODBC en caso de que Access no la reconozca en forma automática). Si usas el Office 2010 es más sencillo que en versiones anteriores pero en cualquiera se puede. Obvio que esto es para hacerlo por fuera de Genexus. Ahora, si querés incorporarlo a tu aplicación deberías dar un poco más de información que es lo queres hacer porque no se entiende mucho.
Saludos,
Ronald
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Comparar datos de sql con registros genexus

Publicado por Aroldo (115 intervenciones) el 20/09/2016 20:25:06
Hola

Lo de importar a una base de datos en access lo veo dificil, porque supongo que este trabajo se debe hacer cada mes, o cada quincena, o en el periodo de tiempo que paguen en tu empresa, y este proceso lo debera estar haciendo alguien mas (que probablemente no tenga los conocimientos necesarios), no alguien de informatica.

Te planteo lo siguiente:

Importa tu archivo excel a una transaccion que contenga los mismos datos (la cual puedes borrar al final del proceso si no quieres almacenar todos esos datos).

En un web panel (o work panel) crea una variable &archivo de tipo blob y un boton paraimportar el archivo.

En el evento Enter llamas un procesimiento usando la variable &archivo:

1
2
3
4
Event Enter
    &filepath = &archivo.tostring()
    ProcesaArchivo.call(&filepath)
EndEvent

Procedimiento:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
&Excel.ReadOnly = 1
&Excel.Open(&filepath)
 
If &Excel.ErrCode <> 0
    &msg = "Error"
Else
    Do 'LeerDatos'
    &Excel.Close()
    commit
EndIf
 
Sub 'LeerDatos'
    &fila = 2	// La primer fila son los títulos
 
    do while &termino = False
        &PrimerDato = &Excel.Cells(&fila, 1).Number
        If null(&PrimerDato) Or &PrimerDato = -1
             &termino = True  // Cuando llega a un registro en blanco, termina
                Else
            &SegundoDato = &Excel.Cells(&fila, 2).Number
            &fila += 1
 
            ...
            New //Para Guardar en tu Transaccion
                  Dato1 = &PrimerDato
                  Dato2 = &SegundoDato
                  ...
            EndNew
        EndIf
    enddo
EndSub


Esta es una idea... ya lo aplicas a tu sistema dependiendo como lo tengas...


Saludos
Aroldo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Karen
Val: 54
Plata
Ha mantenido su posición en GeneXus (en relación al último mes)
Gráfica de GeneXus

Comparar datos de sql con registros genexus

Publicado por Karen (34 intervenciones) el 20/09/2016 20:57:06
Muchas gracias!!
lo intentare ahorita mismo y le comento si se pudo :)) espero que si jeje
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Ronald
Val: 36
Ha mantenido su posición en GeneXus (en relación al último mes)
Gráfica de GeneXus

Comparar datos de sql con registros genexus

Publicado por Ronald (24 intervenciones) el 20/09/2016 22:06:22
Adhiero a tu sugerencia. Queda afuera la opción para como hacer con tablas Foxpro. De todas maneras que quede claro que mi comentario fue para tomar datos FUERA de la aplicación. Si mal no recuerdo con un DataView puede hacerse sobre las tablas de access., conviviendo con las tablas de la aplicación. Alguna vez lo he hecho sobre Gx.8.
saludos,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Karen
Val: 54
Plata
Ha mantenido su posición en GeneXus (en relación al último mes)
Gráfica de GeneXus

Comparar datos de sql con registros genexus

Publicado por Karen (34 intervenciones) el 21/09/2016 00:17:01
De hecho es mas sencillo, porque estoy utilizando sql server y puedo ayudarme con la ingenieria inversa para jalar los datos de excel directamente, pero esa opcion que me dio, me parece mas apta, la verdad no tengo mucha experiencia programando y me ayudan mucho todas las opciones y sugerencias que me ofrecen
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar