Página 1 de 1

Maskedit y....

Publicado: Dom Mar 27, 2005 11:24 pm
por paco-ssi
Creo que esto es un problema mio, no de XAILER, pero yo pregunto a ver si
alguien me ayuda.
He puesto un maskedit para introducir un campo Hora(12:45), y me lo hace OK.
El problema lo tengo para controlar que los dos primeros caracteres no sean
> de 23 y los dos ultimos no lo sean de 59.
He creado un Metodo para que al salir del Maskedit lo compruebe, pero no
consigo manejar la variable.
Antes, desde clipper, tomaba la variable Hora, y hacia por ejemplo:
if substr(hora,1,2) > "23"
..... SAY "Mal"
endif
Pero ahora no se como hacerlo, ni se donde tengo el valor ni nada.
Otro problema similar es:
Como le doy el número correlativo a unas facturas, recibos, etc.
Antes, miraba cuando se finalizaba la factura cual era el ultimo numero, lo
ponia un una variable, le sumaba 1 y lo grababa. Creo que es correcto. Pues
esto no se como decirselo en Xailer al metodo qu he creado.
Repito que esto es falta de conocimientos, pero Si alguien me pudiera
explicar algo de esto o un ejemplito, me haria un gran Favor.
Perdonad.
Paco V

Maskedit y....

Publicado: Lun Mar 28, 2005 12:04 am
por jlalin
Paco,
> He creado un Metodo para que al salir del Maskedit lo compruebe, pero no
> consigo manejar la variable.
El valor del MaskEdit (TEdit, TMemo, etc.) lo tienes en la propiedad
Value, por tango: oMaskEdit:Value te devuelve la hora que hayas introducido.
> Como le doy el número correlativo a unas facturas, recibos, etc.
> Antes, miraba cuando se finalizaba la factura cual era el ultimo numero, lo
> ponia un una variable, le sumaba 1 y lo grababa. Creo que es correcto. Pues
> esto no se como decirselo en Xailer al metodo qu he creado.
En Xailer es igual que lo hací­as hasta ahora. ¿ Puedes ser más concreto ?
Saludos,
José Lalí­n

Maskedit y....

Publicado: Lun Mar 28, 2005 3:57 pm
por paco-ssi
Jose:
Gracias por indicarme la forma de obtener el valor que tiene Maskedit.
Sobre lo segundo, lo que yo quiro hacer es que cada vez que doy de alta un
nuevo recibo, factura,..., o lo que sea, poder poner el numero que le
corresponde.
Si el ultimo fue el "0000000005", poner al siguiente el "0000000006". He
creado un metodo que al pulsar boton OK, me llame al evento nuevorecibo.
Pero ahora no se como recuperar el ultimo, sumarle 1, y que quede guardado
en el campo numero del registro nuevo.
Paco V
"José Lalín" <dezac@corevia.com> escribió en el mensaje
news:[email=42472e57@ozsrv2.ozlan.local...]42472e57@ozsrv2.ozlan.local...[/email]
>
> Paco,
>
> > He creado un Metodo para que al salir del Maskedit lo compruebe, pero no
> > consigo manejar la variable.
>
> El valor del MaskEdit (TEdit, TMemo, etc.) lo tienes en la propiedad
> Value, por tango: oMaskEdit:Value te devuelve la hora que hayas
introducido.
>
> > Como le doy el número correlativo a unas facturas, recibos, etc.
> > Antes, miraba cuando se finalizaba la factura cual era el ultimo numero,
lo
> > ponia un una variable, le sumaba 1 y lo grababa. Creo que es correcto.
Pues
> > esto no se como decirselo en Xailer al metodo qu he creado.
>
> En Xailer es igual que lo hacías hasta ahora. ¿ Puedes ser más concreto ?
>
> Saludos,
> José Lalín

Maskedit y....

Publicado: Lun Mar 28, 2005 9:22 pm
por jlalin
Paco,
> Si el ultimo fue el "0000000005", poner al siguiente el "0000000006". He
> creado un metodo que al pulsar boton OK, me llame al evento nuevorecibo.
> Pero ahora no se como recuperar el ultimo, sumarle 1, y que quede guardado
> en el campo numero del registro nuevo.
Si estás usando DBFs es como en Clipper:
LOCAL nRecNo := RECIBOS->( RecNo() )
LOCAL nRecibo
RECIBOS->( DbGoBottom() )
nRecibo := RECIBOS->CODIGO++
RECIBOS->( DbGoTo( nRecNo ) )
RETURN nRecibo
Y si estás usando DataSets/DataFields serí­a más o menos así­ (de memoria):
LOCAL nRecNo := oDataSet:RecNo()
oDataSet:GoBottom()
//Suponiendo que oRecibo es el DataField para RECIBOS->CODIGO
nRecibo := oRecibo:Value++
oDataSet:GoTo( nRecNo )
RETURN nRecibo
Saludos,
José Lalí­n

Maskedit y....

Publicado: Jue Mar 31, 2005 4:28 am
por fredy[1]
Hola,
Después de leer tu post he hecho un pequeño ejemplo de lo que sería una entrada de facturas, calculando el siguiente número de factura a la que ya tenemos y comprobando que el código de cliente introducido es correcto. Lo dejo aquí para que veáis.
Utiliza los datacontrols, llamadas a formularios, campos calculados y demás chuladas propias de Xailer.
Al hacer el ejemplo me han surgido varias dudas:
1.- ¿Cuando se calcula un campo calculado? Creo ver que se calcula en el momento de guardar el registro, por lo cual no se puede utilizar hasta que no hacemos el update()
2.- ¿Cómo hago para borrar un dato desde el dbNavigator? borrarlo me lo borra, pero no me actualiza los datos.
3.- ¿Cómo hago para poner un campo calculado en el dbBrowse desde el IDE?
4.- El cálculo del número de factura me gustaría tenerlo en uno de los disparadores de la dbf. He probado en OnPreAppend, pero entonces no lo veo hasta que no guardo. He probado también el los eventos del DbNavigator pero en ninguno me sale como quiero.
5.- Al hacer el Insert, el campo que toma primero el código no ejecuta el OnEnter. ¿se podría hacer que saliera automáticamente el siguiente nº de factura con tan solo pulsar el dbnavigator:insert?
6.- Fiijaros en el dbbrowse, que curioso, aunque hago un ds:gobottom() no se desplaza al final del browse, sino a la última línea que se visualiza en ese momento.
7.- En el dbNavigator, ¿Puedo hacer que un botón, en lugar de ocultarlo, pueda ponerlo desactivado tal y como aparecen el update y el cancel cuando no estamos editando?
Un saludico,
Fredy
> Creo que esto es un problema mio, no de XAILER, pero yo pregunto a ver
> si alguien me ayuda.
>
> He puesto un maskedit para introducir un campo Hora(12:45), y me lo
> hace OK.
>
> El problema lo tengo para controlar que los dos primeros caracteres no
> sean
>
>> de 23 y los dos ultimos no lo sean de 59.
>>
> He creado un Metodo para que al salir del Maskedit lo compruebe, pero
> no consigo manejar la variable.
>
> Antes, desde clipper, tomaba la variable Hora, y hacia por ejemplo:
>
> if substr(hora,1,2) > "23"
> ..... SAY "Mal"
> endif
> Pero ahora no se como hacerlo, ni se donde tengo el valor ni nada.
>
> Otro problema similar es:
> Como le doy el número correlativo a unas facturas, recibos, etc.
> Antes, miraba cuando se finalizaba la factura cual era el ultimo
> numero, lo
> ponia un una variable, le sumaba 1 y lo grababa. Creo que es correcto.
> Pues
> esto no se como decirselo en Xailer al metodo qu he creado.
> Repito que esto es falta de conocimientos, pero Si alguien me pudiera
> explicar algo de esto o un ejemplito, me haria un gran Favor.
>
> Perdonad.
>
> Paco V
>
> ---
> avast! Antivirus: Entrante mensaje limpio.
> Base de datos de Virus (VPS): 0512-2, 26/03/2005
> Comprobado en: 29/03/2005 1:45:03
> avast! tiene los derechos reservados (c) 1988-2004 ALWIL Software.
> http://www.avast.com
---
avast! Antivirus: Saliente mensaje limpio.
Base de datos de Virus (VPS): 0513-1, 30/03/2005
Comprobado en: 31/03/2005 4:28:45
avast! tiene los derechos reservados (c) 1988-2004 ALWIL Software.
http://www.avast.com

Attached files ccalculados.zip (7.1 KB)Â