Marcar un registro en access o crear archivo con id

Gracias a tu respuesta ya pude mostrar registros de access de acuerdo a números aleatorios.
Ahora quisiera que me ayudaras con lo siguiente:
Como hago para que no haya la posibilidad de que se repita un registro cuando. Pero indica un código como ejemplo.
Gracias por tu colaboración
1

1 respuesta

Respuesta
1
La solución que te doy es:
1.- En un campo de la tabla de donde obtienes los datos puedes crear un nuevo campo o usar uno existente para marcar cuando ya hayas generado esa fila, por ejemplo si tienes el articulo:
Id descripción marca
123123 Servilletas N
Esa es la tabla artículo, ahora si al generar el aleatorio te sale el 123123, tendrás que ir a revisar la marca del articulo, en esta ocasión no ha sido usado, por lo que puedes usarlo y tienes que marcarlo con el nuevo resultado
Id descripción marca
123123 Servilletas S
Ahora cuando generes nuevamente ese id, revisas la marca como ya fue usado, generas uno nuevo.
2.- Usando archivos, creas un archivo auxiliar en alguna carpeta en el disco duro, y cada vez que generes un aleatorio lo vas guardando para que cuando generes el aleatorio revises el archivo para asegurarte de que no ha sido repetido.
El prodimiento es similar unicamente difiere de la forma de manejarlo.
Suerte.
Hola amigo, disculpa la insistencia
Ahora, ya genero el numero aleatorio y muestro el registro respectivo, también lo marco. Pero la duda es que como estoy trabajando con el dataenvironment, cuando genero el numero aleatorio y muestro el registro en VB sale así ya halla salido antes.
Quisiera que me dijeras como encontrar un registro sin mostrarlo en el formulario, para así poder compararlo a ver si esta marcado, antes de mostrarlo en el formulario de VB.
Ok no hay problema, me imagino que como usas el dataenvironment le pasas como parámetro el valor del id que se ha generado y que la marca del registro lo haces en la tabla, para no mostrar los registros repetidos una vez generado el aleatorio puedes ejecutar una consulta sql de selección que te regrese el estado de la marca del registro, checar el estado, si esta marcado mostrarlo y si no buscar otro, para hacer esto lo puedes hacer mediante un ciclo con una variable boleana, por ejemplo:
dim registroMostrado as boolean
registromostrado=false
while not registromostrado
valor = GenerarAleatorio
set recordset1 = conexion.execute ("select marca from tabla where id=" & valorid)
if recordset1!marca = 1 then
mostrarvalores
registromostrado=true
'con esto saldra del ciclo
end if
Wend

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas