Discusiones sobre Productos NI

cancelar
Mostrando los resultados de 
Buscar en lugar de 
Quiere decir: 

Eliminar registro en microsoft access

¡Resuelto!
Ir a solución

Hola a todos

 

estoy realizando un proyecto en el que estoy ingresando datos por el puerto serial y los estoy guardando en una base de datos de Microsoft Access, (con Database Connectivity Toolkit ) y cada vez que ingresa un dato se le asigna una iteración, este dato es reflejado en una tabla en el panel frontal. Lo que quiero es que con un botón pueda borrar el registro ultimo creado (fila), y que al ingresar un nuevo dato no perder la numeración. 

0 kudos
Mensaje 1 de 9
8.795 Vistas

Hola Miguel Sioux,  buen día.

 

Podrias explicarme un poco más a detalle lo que deseas hacer en tu base de datos. De momento entiendo lo siguiente:

 

1. Recibes datos por puerto serial.

2. Abres tu base de datos de Access y  la despliegas en forma de una tabla en el panel frontal.

3. . A ti te interesa por medio de un botón eliminar un registro de tu tabla pero que el indicador conserve el numero de registro.

4.- El dato recibido por el puerto serial se le asigna el indicador último  y se inserta en la tabla.

5.- Guardar la tabla en tu base de datos para próximas consultas.

 

¿Es así? Me serviria mucho, adjuntaras una imagen de tu panel frontal para hacerme una mejor idea  y poderte ayudar.

 

Saludos.

 

Jaime M
AE México
National Instruments

...porque soy de aquí y de todas partes; he venido en pos de compartir...
0 kudos
Mensaje 2 de 9
8.776 Vistas

Hola Miguel, te dejo este ejemplo para que lo adaptes a tus requerimientos:

 

http://forums.ni.com/ni/attachments/ni/6170/19684/1/Insert_Edit_Delete_ViewDB.vi

 

 

 

El Ejemplo lo saque de mi propio post:

 

http://forums.ni.com/t5/Discusiones-sobre-Productos-NI/Pantalla-de-Control-de-Acceso-enlazada-a-Dase...

Gabriel Arcia
0 kudos
Mensaje 3 de 9
8.772 Vistas

hola hola muchas gracias por contstar,

basicamente como mencionas es como funciona Jaime M. adjunto la imagen para que veas y te lo explico a continuacion:

1.El selector del Case Structure provienen de el ingreso de datos en forma serial, Hay dos casos: (0) no lee dato, y (1..255) ya que son 8 sensores.
2. El For loop sirve como el contador de iteraciones. cada vez que ingresa dato se suma uno.
3. En el primer frame se selecciona el registro (fila) con el mismo dato que ingresa de los sensores. lo selecciona de una Tabla (pevia1), con datos ingresadon con anterioridad .
4. En el segundo frame se envian los datos de Microsoft Access al Panel Frontal (Codigo, articulo, y foto). del registro seleccionado
5. Tercer Frame se encuentra DB Tools Insert Data.vi que consta de tres caracteristicas, 1. crea el nombre de la Tabla nueva con la fecha en que se ejecuta el       programa .2. en el Bundle se encuentran (iteraciones, articulo y fecha) que es lo que ingresa a la nueva tabla. 3. iteraciones articulo y fecha son las columnas de la tabla creada.para que coincidan, tanto el dato como su ubicacion en la tabla.
6. ya que se creo la Tabla, nuevamente se envian los datos de la nueva tabla de Microsoft Access hacia una tabla al Panel F.

 

Necesito un boton en el que se pueda borrar el ultimo registro (fila) creado. o solo indicarlo, lo que es importante es no perder el conteo de las iteraciones

 

GRACIAS!!!Emoticono feliz

0 kudos
Mensaje 4 de 9
8.759 Vistas

Buen día Miguel Sioux,

 

Te adjunto una imagen a manera de diagrama, para indicarte lo que podrias probar para ingresar el botón de borrar registro. Esto es para que no tengas que modificar mucho tu código.

 

Lo que te propongo es lo siguiente:

 

1.- Adiciona un case que solo responderá al botón de borrar.

2.- En el case de tus casos (1 al 255), en la parte en que ingresas un registro a tu nueva tabla, escribe a una variable el numéro de registro.

3.- En tu nuevo case, utiliza una variable local para leer la variable que escribiste y poder borrar el último registro.

 

Prueba y me dices que tal te funciona.

 

Saludos

 

Jaime M
AE México
National Instruments

...porque soy de aquí y de todas partes; he venido en pos de compartir...
0 kudos
Mensaje 5 de 9
8.753 Vistas

Que tal Jaime M un saludo, 

 

hice lo que me dijiste, y bueno, lo importante fue que no perdí el conteo de las iteraciones (gracias por eso),  lo que no pude lograr fue borrar el registro dentro de Microsoft Access, a cambio de eso estoy ingresando un indicador con el mismo dato pero en negativo después del dato, es decir si por ejemplo el numero en la lista es 17, al presionar el botón borrar indicara -17 y continuara el conteo 18, 19, 20... (adjunto una imagen)

 

TENGO UNA DUDA ENORME 

 

¿¿Si es posible borrar el registro de M Access??. Ya que existen las herramientas Move To Previous/Next Record pero solo se puede desplazar entre los registros mas no mantenerse en el seleccionado para ingresar el dato, si realizo el ingreso del dato se acomoda en la ultima posición, ¿Será que una vez creada la tabla no puede modificarse?

0 kudos
Mensaje 6 de 9
8.709 Vistas
Solución
Aceptado por el autor del tema Miguel_MarsOne

Hola Miguel,

 

Buen día. Mira si es posible borrar un registro de M Acces.. Adjunto  te muestro un ejemplo muy sencillo de como borrar un registro. En mi base de datos de prueba solo tengo nombres de mis compañeros de la oficina, en el cual el key es nuestro ID, la tabla se llama "Nombres"  y lo que se hace es lo siguiente:

 

1- Abrimos la base de datos,

2.- Por medio del VI "DB tools delete data" , le indicamos el nombre de la tabla y el "key" (ID) del registro que queremos borrar.

3.-  Cerramos la base de datos.

4.- Dado que esto esta dentro de un case structure, esto solo se realiza cuando presionamos nuestro botón de DELETE, que es más o menos el caso que deseas inmplementar.

 

Si observas en el parametro donde ingreso el key del registro que deseo borrar esta entrando como un string, en donde la cadena o instrucción es la siguiente: "WHERE ID=###" ; donde ### es el key pero en formato de string. En tu caso recuerdo que tienes un indicador númerico de registro, el cual contiene el último registro guardado. Puedes usar este número y convertirlo a string y de ahi ingresarlo a tu instrucción.

 

Prueba implementando el ejemplo y me dices que tal te funciona. Vale? Espero tu respuesta.

 

Saludos.

Jaime M
AE México
National Instruments

...porque soy de aquí y de todas partes; he venido en pos de compartir...
0 kudos
Mensaje 7 de 9
8.701 Vistas

Hola hola Jaime M.

 

Una vez mas GRACIAS!!

 

Tal como dices es como se puede borrar el registro, solo que tuve un problema, ya que perdía el conteo de iteraciones, la solución fue con un case, que al presionar el botón "borrar registro" no permita ejecutar el conteo de iteraciones, sino hasta que ingrese un nuevo dato que es el que sustituirá al registro borrado para poder así continuar con el conteo.

 

Adjunto unas imágenes

 

borrar registro.- borra el registro y con un indicador  "borrar 4"  utilizo un variable local en la imagen "ingreso dato"

 

ingreso dato.- "botón 4" habilita el case que es el el ultimo numero (si es falso ejecuta conteo de iteraciones), por ultimo regresa el indicador a false a espera de borrar un registro.

 

GRACIAS UN SALUDO!!

 

Descargar todos
0 kudos
Mensaje 8 de 9
8.670 Vistas

buen dia he leido varis de sus ejemplos pero no me deja eliminar me sale el sig error



Possible reason(s):
ADO Error: 0x80040E10
. Invalid string: specified field does not exist or contains an unsupported character


alguien que sea tan abmable de ayudar les adjunto el archivo que he hecho

Descargar todos
0 kudos
Mensaje 9 de 9
5.960 Vistas