Consulta sobre tabla
Publicado por Julio (2 intervenciones) el 30/05/2012 03:06:28
Hola a todos
Tengo una tabla dbf con unos registros de la siguiente manera:
050001
050001
050001
050001
050002
050002
050002
050002
050003
050003
050003
050004
050004 ...
etc, así en secuencia hasta un número x
Son varios registros, quisiera saber como hacer para renumerar esto,
es decir que la secuencia sea de la siguiente manera:
050091
050091
050091
050091
050092
050092
050092
050092
050093
050093
050093
050094
050094 ...
Yo tengo lo siguiente en visual foxpro
USE (Mi tabla)
GO TOP
STORE 50091 TO A
STORE 50001 TO B
SCAN
STORE "0"+LTRIM(STR(A)) TO C
STORE "0"+LTRIM(STR(B)) TO D
If (nombre registro de la tabla)=D
REPLACE (nombre registro de la tabla) WITH C
Else
STORE A+1 TO A
STORE B+1 TO B
STORE "0"+LTRIM(STR(A)) TO C
STORE "0"+LTRIM(STR(B)) TO D
Endif
ENDSCAN
Al final obtengo:
050091
050091
050091
050091 (Hasta aquí correcto)
050002 (Este valor debería ser 050092)
050092
050092
050092
050003 (Este valor debería ser 050093)
050093
050093
050004 (Este valor debería ser 050094)
050094 ...
Podrían decirme donde estoy mal.
Gracias
Tengo una tabla dbf con unos registros de la siguiente manera:
050001
050001
050001
050001
050002
050002
050002
050002
050003
050003
050003
050004
050004 ...
etc, así en secuencia hasta un número x
Son varios registros, quisiera saber como hacer para renumerar esto,
es decir que la secuencia sea de la siguiente manera:
050091
050091
050091
050091
050092
050092
050092
050092
050093
050093
050093
050094
050094 ...
Yo tengo lo siguiente en visual foxpro
USE (Mi tabla)
GO TOP
STORE 50091 TO A
STORE 50001 TO B
SCAN
STORE "0"+LTRIM(STR(A)) TO C
STORE "0"+LTRIM(STR(B)) TO D
If (nombre registro de la tabla)=D
REPLACE (nombre registro de la tabla) WITH C
Else
STORE A+1 TO A
STORE B+1 TO B
STORE "0"+LTRIM(STR(A)) TO C
STORE "0"+LTRIM(STR(B)) TO D
Endif
ENDSCAN
Al final obtengo:
050091
050091
050091
050091 (Hasta aquí correcto)
050002 (Este valor debería ser 050092)
050092
050092
050092
050003 (Este valor debería ser 050093)
050093
050093
050004 (Este valor debería ser 050094)
050094 ...
Podrían decirme donde estoy mal.
Gracias
Valora esta pregunta


0