SoloCodigo
Programación General => Visual FoxPro => Mensaje iniciado por: mebernal en Viernes 24 de Julio de 2009, 00:30
-
Amigos tengo otra duda,como hago si tengo una tabla bancos(codigo,nombre,ultimocheque)
otra tabla cheques(num,codigo,valor,etc) y lo que quiero es ejemplo:
bancos
codigo nombre ultimocheque
02 banco uno 0000123
03 banco dos 0005265
como hacer para que cuando llame al form cheques y vaya a crear un cheque me llame el correlativo que sigue,de acuerdo al ultimo cheque emitido en determinada cuenta.....
-
Lo que quieres no es facil ni imposible.
Yo te recomiendo que lo ordenes tu tabla de cheques por CODIGOBANCO+NROCHEQUE en el caso que sea todo string (o con STR() en para tipo numerico numerico) obteniendo lo sgte.
Bco+NroCheque
010000123 -> banco uno cheque 123
010000124 -> banco uno cheque 124
010000125 -> ...
020000250 -> banco dos cheque 250
020000251 -> ...
...
NN999999
entonces si quieres aberiguar el siguiente nro de cheque del banco 01 haces lo siguiente
SET NEAR ON
SEEK( [020000000] ) &&buscas el siguiente banco (seria el banco 02)+"0000000", se posiciona inmediatamente en el primer
&&cheque del banco 02 o banco 03 o el que sea que sigue o posiblemente el final.
SET NEAR OFF
SKIP -1
_sgtenro=VAL(SUBSTR(CODIGO,3,7))+1 &&te calcula el nro del siguiente cheque como valor numerico
*Y POR ARTE DE MAGIA FUNCIONA!, ojo creo que se puede tambien con los nombres de bancos pero se complica un monton
*ahora si lo quieres hacer en base a consultas SQL ufff no te puedo ayudar!! :mellow: