Hola Gente
Los vuelvo a consultar con temas que sencillos pero no logro encontrar la solución.
En mi aprendizaje del lenguaje voy reconvirtiendo y usando el ejemplo “agenda”.
En Este caso tengo dos dbf (empleados y liquidación), mi idea era mostrar los datos de empleados
Desde el browse y traer algunos datos de la liquidación, peeero no puedo mostrar esos datos
En la rutina de búsqueda de datos puse a modo de muestreo unos msgbox() con los datos que busco (periodo y total)
Y el seek se hace bien y los datos los encuentro pero estoy fallando en la manera de mostrarlos o en actualizar el valor de los controles.
Cualquier consejo es bienvenido como siempre.
Gracias.
Claudio.
Esta es la pantalla que muestra los datos: Periodo y Total Sueldo son los datos que no se muestran
Este es el armado de la pantalla:
@ 56,10 BROWSE Browse_1 ;
WIDTH 190 ;
HEIGHT 360 ;
HEADERS { 'Nombre' , 'Legajo' } ;
WIDTHS { 180 , 80 } ;
WORKAREA Empleados ;
FIELDS { 'Empleados->Nombre' , 'Empleados->Legajo' } ;
ON CHANGE Actualiza_RSuel()
@ 56, 210 FRAME FRAME_1 ;
WIDTH 400 ;
HEIGHT 360
// El control LABEL permite mostrar textos.
// Mediante la clausula VALUE puede establecerse su contenido inicial.
@ 76, 220 LABEL LABEL_1 ;
VALUE "Legajo:" ;
WIDTH 80
@ 76 , 290 TEXTBOX Control_1;
WIDTH 100 ;
Numeric InputMask "999999"
@ 116 , 220 LABEL LABEL_2;
VALUE "Nombre:" ;
WIDTH 80
@ 116 , 290 TEXTBOX Control_2;
WIDTH 250 ;
MAXLENGTH 30
@ 156 , 220 LABEL LABEL_3;
VALUE "CUIL:" ;
WIDTH 80
@ 156 , 290 TEXTBOX Control_3;
WIDTH 250 ;
MAXLENGTH 30
@ 196 , 220 LABEL LABEL_4;
VALUE "Perφodo:" ;
WIDTH 100
@ 196 , 320 TEXTBOX Control_4;
WIDTH 250 ;
InputMask "99/99/9999"
@ 226 , 220 LABEL LABEL_5;
VALUE "Total Sueldo:" ;
WIDTH 100
@ 226 , 320 TEXTBOX Control_5;
WIDTH 250 ;
InputMask "999999,99"
@ 256 , 220 LABEL LABEL_6;
VALUE "Haberes:" ;
WIDTH 100
@ 256 , 320 LABEL Label_6A;
WIDTH 250
@ 286 , 220 LABEL LABEL_7;
VALUE "Deducciones:" ;
WIDTH 100
@ 286 , 320 LABEL Label_7A;
WIDTH 250
@ 316 , 220 LABEL LABEL_8;
VALUE "No Remunerativos:" ;
WIDTH 120
@ 316 , 350 LABEL Label_8A;
WIDTH 250
@ 376,320 BUTTON ACEPTAR ;
CAPTION 'Acep&tar' ;
ACTION AceptaEdit_RSuel()
@ 376,425 BUTTON CANCELAR ;
CAPTION 'Cancela&r' ;
ACTION CancelaEdit_RSuel()
END WINDOW
Esta es mi rutina de búsqueda:
*------------------------------------------------------------------------------*
PROCEDURE Actualiza_RSuel()
*------------------------------------------------------------------------------*
// Este procedimiento, actualiza el contenido de los controles
// que permiten ver y editar el contenido de la tabla.
// Para ello, se asigna a la propiedad value el contenido actual
// del campo que corresponde a cada control.
Win_1.Control_1.Value := Empleados->Legajo
Win_1.Control_2.Value := Empleados->Nombre
Win_1.Control_3.Value := Empleados->Cuil
cCuilEmp:=Empleados->Cuil
select(2) && Liquidacion
* AutoMsgBox(Alias(),"Base")
* AutoMsgBox(IndexKey(),"Indice")
* AutoMsgBox(Win_1.Control_1.Value,"Cod.Legajo")
* AutoMsgBox(recno(),"Registro Inicial")
liquidacion->(dbSeek(Win_1.Control_1.Value))
* AutoMsgBox(recno(),"Registro Encontrado")
* AutoMsgBox(Liquidacion->legajo,"Cod.Legajo Encontrado")
* AutoMsgBox(Liquidacion->periodo,"Periodo Encontrado")
* AutoMsgBox(Liquidacion->total,"Importe Encontrado")
Win_1.Control_4.Value := Liquidacion->periodo
Win_1.Control_5.Value := Liquidacion->total
Select(1) && Empleados
Return
Quizás te esté faltando la cláusula “SET BROWSESYNC ON” que hace que el puntero de la tabla dbf se sincronice automáticamente con el browse.
https://hmgs-minigui.sourceforge.net/manual/setbrowsesync.html
Saludos...
Ricardo Sassy
--
Has recibido este mensaje porque estás suscrito al grupo "[oohg]" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a oohg+uns...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/oohg/000101d9fefb%24e822a010%24b867e030%24%40yahoo.com.ar.
Ricardo
Gracias por responder
Sigo sin ver los datos.
Los primeros 3 texbox, corresponden a tabla del browse
Los 2 últimos textbox corresponden a otra tabla.
Puse varios AutoMsgBox(Liquidacion->total,"Importe Encontrado")
Que si me muestra los valores correctos pero no puedo mostrarlos en el textbox.
Ahí radica mi inconveniente.
Gracias.
Claudio.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/oohg/000001d9fffa%2481834170%248489c450%24%40gmail.com.
Win_1.Control_4.Value := Liquidacion->periodo
Win_1.Control_5.Value := Liquidacion->total
DO EVENTS
Saludos
--
Gracias Miguel por contestar pero no funcionó
Hago un msgbox para ver los datos de la base y eso está bien.
Pero sigo sin verlo en pantalla.
Seguimos participando…
Gracias nuevamente.
Claudio.
De: oo...@googlegroups.com [mailto:oo...@googlegroups.com] En nombre de Miguel Ingles
Enviado el: martes, 17 de octubre de 2023 14:21
Para: oo...@googlegroups.com
Asunto: Re: [oohg] Actualización valores de campos a mostrar
Hola Claudio
Prueba a poner un DO EVENTS cuando asignas el valor:
Win_1.Control_4.Value := Liquidacion->periodo
Win_1.Control_5.Value := Liquidacion->total
DO EVENTS
Saludos
El dom, 15 oct 2023 a las 2:09, 'Ayuda en Informatica' via [oohg] (<oo...@googlegroups.com>) escribió:
Hola Gente
Los vuelvo a consultar con temas que sencillos pero no logro encontrar la solución.
En mi aprendizaje del lenguaje voy reconvirtiendo y usando el ejemplo “agenda”.
En Este caso tengo dos dbf (empleados y liquidación), mi idea era mostrar los datos de empleados
Desde el browse y traer algunos datos de la liquidación, peeero no puedo mostrar esos datos
En la rutina de búsqueda de datos puse a modo de muestreo unos msgbox() con los datos que busco (periodo y total)
Y el seek se hace bien y los datos los encuentro pero estoy fallando en la manera de mostrarlos o en actualizar el valor de los controles.
Cualquier consejo es bienvenido como siempre.
Gracias.
Claudio.
Esta es la pantalla que muestra los datos: Periodo y Total Sueldo son los datos que no se muestran
Libre de virus.www.avast.com
--
Has recibido este mensaje porque estás suscrito al grupo "[oohg]" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a oohg+uns...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/oohg/000101d9fefb%24e822a010%24b867e030%24%40yahoo.com.ar.
--
Has recibido este mensaje porque estás suscrito al grupo "[oohg]" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a oohg+uns...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/oohg/CADSbtg5%3DkterSCBt0cwjkbYjQpZOVFUOBGYazDwSscXt_C%3DvMw%40mail.gmail.com.
Win_1.Control_4.Value := Liquidacion->periodo
Win_1.Control_5.Value := Liquidacion->total
adicione estas dos líneas para refrescar los valores:
Win_1.Control_4.Refresh
Win_1.Control_5.Refresh
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/oohg/003901da0174%246307a350%242916e9f0%24%40yahoo.com.ar.
José Antonio, gracias por responder
Tampoco me funcionó
Comento abajo lo que probé y me desconcertó aun mas.
Gracias.
Claudio.
Lo que hice fue lo siguiente:
1- Busco en la segunda base los datos y los muestro en un msgbox
liquidacion->(dbSeek(Win_1.Control_1.Value))
AutoMsgBox("Registro Encontrado: "+Str(recno())+Chr(13)+Chr(10)+"Legajo Encontrado: "+Str(Liquidacion->legajo)+;
Chr(13)+Chr(10)+"Periodo Encontrado: "+DToC(Liquidacion->periodo)+Chr(13)+Chr(10)+"Importe Encontrado: "+Str(Liquidacion->total),"Encontrado")
2- Actualizo los datos los valores del textbox
Win_1.Control_4.Value := Liquidacion->periodo
Win_1.Control_5.Value := Liquidacion->total
Win_1.Control_4.Refresh
Win_1.Control_5.Refresh
3- muestro los valores cargados en los textbox y no hay nada L
AutoMsgBox("Periodo TextBox: "+(Win_1.Control_4.Value)+Chr(13)+Chr(10)+"Importe textbox: "+(Win_1.Control_5.Value),"Textbox")
Los datos están vacios como si no hubiera actualizado el valor de los textbox.
De: oo...@googlegroups.com [mailto:oo...@googlegroups.com] En nombre de Jose Antonio Leon Tellez
Enviado el: miércoles, 18 de octubre de 2023 01:09
Para: oo...@googlegroups.com
Asunto: Re: [oohg] Actualización valores de campos a mostrar
Buenas noches Claudio,
Después de :
Win_1.Control_4.Value := Liquidacion->periodo
Win_1.Control_5.Value := Liquidacion->total
adicione estas dos líneas para refrescar los valores:
Win_1.Control_4.Refresh
Win_1.Control_5.Refresh
Saludos,
José Antonio León Téllez
El mar, 17 oct 2023 a la(s) 22:37, 'Ayuda en Informatica' via [oohg] (oo...@googlegroups.com) escribió:
Gracias Miguel por contestar pero no funcionó
Hago un msgbox para ver los datos de la base y eso está bien.
Pero sigo sin verlo en pantalla.
Seguimos participando…
Gracias nuevamente.
Claudio.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/oohg/CAMqt_0X3nZ8pcXFekB-wWQxNDNrh33n8E3eeO3jrZidBHxcVkQ%40mail.gmail.com.
José M. C. Quintas
José gracias por responder.
Probé las 2 alternativas.
Sigo sin solucionar el problema.
Claudio.-
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/oohg/73072f22-4d1d-42be-806b-b110ecb4c115n%40googlegroups.com.
Hola Claudio:
Prueba sacando los INPUT MASK o verifica que sean correctos al tipo de dato.
Saludos,
Jorge
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/oohg/005301da01e5%24b57938d0%24206baa70%24%40yahoo.com.ar.
Hola Jorge, gracias por responder.
Los tipos de datos son correctos para las máscaras utilizadas, pero igual saque los input mask (por las dudas). Igual sigo sin ver los datos en los textbox.
Hice una prueba más, muevo los valores de la tabla a otras variables visualizo esas variables con msgbox() y se muestran en forma correcta. Muevo las variables a los textbox y nada.
Claudio.
Win_1.Control_4Value := Liquidacion->periodo
Win_1.Control_5.Value := Liquidacion->total
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a oohg+uns..@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/oohg/003901da0174%246307a350%242916e9f0%24%40yahoo.com.ar.
--
Has recibido este mensaje porque estás suscrito al grupo "[oohg]" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a oohg+uns...@googlegroups.com.Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/oohg/CAMqt_0X3nZ8pcXFekB-wWQxNDNrh33n8E3eeO3jrZidBHxcVkQ%40mail.gmail.com.
--
Has recibido este mensaje porque estás suscrito al grupo "[oohg]" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a oohg+uns...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/oohg/73072f22-4d1d-42be-806b-b110ecb4c115n%40googlegroups.com.
Libre de virus.www.avast.com |
--
Has recibido este mensaje porque estás suscrito al grupo "[oohg]" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a oohg+uns...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/oohg/005301da01e5%24b57938d0%24206baa70%24%40yahoo.com.ar.
--
Has recibido este mensaje porque estás suscrito al grupo "[oohg]" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a oohg+uns...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/oohg/000001da01fc%24d036f560%2470a4e020%24%40wados.cl.
@ 196 , 320 TEXTBOX Control_4 DATE;
WIDTH 250 ;
InputMask "99/99/9999"
@ 226 , 320 TEXTBOX Control_5 NUMERIC;
WIDTH 250 ;
InputMask "999999,99"
Saludos,
David, Gracias por responder.
Con tus tips pude avanzar en mostrar los datos nuemericos.
Con la fecha sigo renegando.
Mi inquietud es porque no sucedió antes en otros abm que fui haciendo, bueno al menos sentamos un “protocolo” de aquí en adelamnte para trabajar.
Claudio.
De: oo...@googlegroups.com [mailto:oo...@googlegroups.com] En nombre de David Field
Enviado el: jueves, 19 de octubre de 2023 15:27
Para: [oohg] <oo...@googlegroups.com>
Asunto: [oohg] Re: Actualización valores de campos a mostrar
Hola,
Intenta agregando NUMERIC y DATE a tus controles de esta forma:
@ 196 , 320 TEXTBOX Control_4 NUMERIC;
WIDTH 250 ;
InputMask "99/99/9999"
@ 226 , 320 TEXTBOX Control_5 DATE;
WIDTH 250 ;
InputMask "999999,99"
Saludos,
David Field
--
Has recibido este mensaje porque estás suscrito al grupo "[oohg]" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a oohg+uns...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/oohg/5ba2f1c0-523d-413d-bff6-e02c01bfe90cn%40googlegroups.com.
Jorge Gracias por tu respuestas
He probado forzar no incremental y nada
La versión que estoy usando es de Agosto/2017
No tengo problemas en enviarte fuentes y tablas pero no quiero perturbar la lista.
Si queres lo mando a tu particular, decime que crees que es lo mejor.
Saludos.
Claudio.-
De: oo...@googlegroups.com [mailto:oo...@googlegroups.com] En nombre de Jorge Garate
Enviado el: jueves, 19 de octubre de 2023 12:59
Para: [oohg] <oo...@googlegroups.com>
Asunto: Re: [oohg] Actualización valores de campos a mostrar
Quizás si pudiéramos revisar el .prg completo por si hay algo en otra parte que no se ve y genere el problema?
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/oohg/1c7888f1-dba1-478c-91ff-daa97d99f23dn%40googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/oohg/008e01da034b%24359f16e0%24a0dd44a0%24%40yahoo.com.ar.
Hola Claudio, probaste asi?
Win_1.Control_4.Value:=alltrim(DToC(Liquidacion->periodo))
Win_1.Control_5.Value :=alltrim(Str(Liquidacion->total))
Win_1.Control_4.Refresh
Win_1.Control_5.Refresh
Donde queda en foco el sistema?
Ø Win_1.Control_4.Value:=alltrim(DToC(Liquidacion->periodo))
Juan Manuel, Gracias por responder
Esto si Funcionó!
Seguramente debe haber una explicación técnica de porque funciono así y no de todas las otras maneras. Quizás el hecho de convertir a carácter debe ser mas fácil para mostrar en un textbox sin necesidad de agregar tantos modificadores.
Gracias nuevamente a todos los que aportaron.
Claudio.-
De: oo...@googlegroups.com [mailto:oo...@googlegroups.com] En nombre de Juan Manuel Del Valle
Enviado el: viernes, 20 de octubre de 2023 14:17
Para: [oohg] <oo...@googlegroups.com>
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/oohg/22cdb721-2ad0-4589-a124-c222fcd09468n%40googlegroups.com.
Hola Claudio:
mira este ejemplo que hay en Tutor.exe
Saludos,
Jorge
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/oohg/000001da0614%24b442cc00%241cc86400%24%40yahoo.com.ar.