Hacer un contador

Tengo un campo llamado numero_guia el cual quiero que se actualice cada vez que genero un registro nuevo

1 respuesta

Respuesta
1

Bueno eso lo debes hacer en el código, ya que hasta donde se en vfp no se generan automáticamente como en sqlserver, adaptive server, etc. entonces te toca hacerlo por código generalmente se hace primero obteniendo el código máximo y luego sumándole uno, espero te sea de ayuda en algo y pues cualquier duda me comentas

Lo tengo así pero no funciona

IF lnHandle > 0
strcmd = SQLEXEC(lnHandle,"SELECT numero_guia FROM configuración WHERE empresa=?_empresa","dtconsulta")
IF strcmd > 0
SELECT dtconsulta
IF RECCOUNT () > 0
_strcampos = "UPDATE configuración SET numero_guia = ?_nnumero_guia WHERE EMPRESA = ?_empresa"+;
cmd = SQLEXEC(lnHandle,_strcampos)
ELSE
_strcampos = "INSERT INTO configuración (empresa,numero_guia)"+;
" VALUES (?_empresa,?_nnumero_guia)"
cmd = SQLEXEC(lnHandle,_strcampos)
ENDIF

si no es así como lo puedo hacer??

Básicamente seria así :

IF lnHandle > 0
strcmd = SQLEXEC(lnHandle,"SELECT max(numero_guia) as nmaxguia FROM configuración WHERE empresa=?_empresa","dtconsulta")
SELECT dtconsulta

nmaxguiafinal = iif(isnull(dtconsulta.nmaxguia),0,dtconsulta.nmaxguia)
IF nmaxguiafinal > 0

nmaxguiafinal = nmaxguiafinal + 1
_strcampos = "UPDATE configuración SET numero_guia = ?nmaxguiafinal WHERE EMPRESA = ?_empresa"+;
ELSE

nmaxguiafinal = nmaxguiafinal + 1
_strcampos = "INSERT INTO configuración (empresa,numero_guia)"+;
" VALUES (?_empresa,?nmaxguiafinal)"
ENDIF

cmd = SQLEXEC(lnHandle,_strcampos)

Creo que con eso te deberia funcionar, intentalo y sino pues me comentas, suerte

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas