Visual Basic Foro

General => General => Mensaje iniciado por: marino en Octubre 03, 2011, 08:23:37 pm

Título: Alguien maneja J++ (Visual Java)?
Publicado por: marino en Octubre 03, 2011, 08:23:37 pm
Que tal amigos.

Bueno estoy trabajando en un programa bajo el lenguaje J++ y tengo algunos problemas.

Lo primero es que debo manejar una Base de datos. Ya saben, añadir nuevos, modificar, eliminar etc.

Mi problema es que estoy usando una base de datos en blanco. Obviamente tengo la coneccion hecha y todo. Mi problema es que al tratar de guardar un registro me saltaa el siguiente error

"No es posible insertar una fila vacia. Debe contener al menos un valor de columna establecido"

Alguien sabe como puedo arreglarlo?

PD: Si este tema no va aqui disculpen  :-[
Título: Re:Alguien maneja J++ (Visual Java)?
Publicado por: YAcosta en Octubre 03, 2011, 09:52:02 pm
Tal como planteas la inquietud sin una sola linea de código de lo que haces no veo otro consejo que remitirte a google.
También el mensaje de error que te da te esta diciendo en que estas fallando, pero bueno, si quieres una mano publica el código con el que haces la inserción para saber de que estamos hablando.

Saludos
Título: Re:Alguien maneja J++ (Visual Java)?
Publicado por: marino en Octubre 04, 2011, 12:00:08 am
Gracias YAcosta

Bueno, en realidad no coloque el code ya que queria saber si alguien maneja este lenguaje, ya que he buscado por todo internet, pero por ser un lenguaje antiguo y descontinuado, casi no hay material sobre el, y suguieren otros lenguajes. El problema es que en el colegio es el lenguaje que nos han impuesto y debemos hacerlo en este. Dicho este sermon que hasta a mi me aburrio  ;D ;D les doy la parte del codigo que he puesto correspondiente a la bd.

Boton "Nuevo"
Código: [Seleccionar]
dataSource1.getRecorset().addNew();

Boton "Guardar"
Código: [Seleccionar]
dataSource1.getRecordset().update()

Y es justamente al dar a guardar cuando me aparece el error.

El mismo codigo lo utilice en la practica del colegio. Sin embargo en el colegio llenamos primero la bd con algunos datos de ejemplo. En el programa que estoy realizando trabajo con una bd vacia, para empezarla desde 0.

El del colegio funciona, incluso si borro todos los registros y comienzo de nuevo. Pero en este nuevo, nada.

Lo cual me lleva a pensar que puede ser algo en la conexion a la bd, no lo se. Por eso preguntaba si alguien maneja este lenguaje, asi tal vez podria compartir el proyecto y analizarlo para saber donde esta mi error.

Aclaro, no me interesa que alguien lo haga por mi, me interesa aprender, pero por desgracia la info respecto a este lenguaje escasea.

Gracias
Título: Re:Alguien maneja J++ (Visual Java)?
Publicado por: YAcosta en Octubre 04, 2011, 02:18:58 am
Si pues, ta difícil con un lenguaje que se usa poco.
 En todo caso no creo que sea un problema de conexión, porque si lo fuera ni siquiera te hubiera aparecido este error:
"No es posible insertar una fila vacia. Debe contener al menos un valor de columna establecido"

Checa que realmente estés mandando datos, quizá tus variables están vacías porque al parecer no le estas mandando nada.

Por cierto, que BD usas?
Título: Re:Alguien maneja J++ (Visual Java)?
Publicado por: marino en Octubre 04, 2011, 03:01:23 am
Gracias

Uso bd hecha en Access 2003, uso la conexion Microsoft Jet 4.0 OLE BD Provider.

Asi mismo uso un DataBinder para hacer la conexion de las columnas de la db con los campos de mi programa, en este caso son edit1, edit2, .... etc.

Antes de guardar tengo varias lineas de codigo comprobando que no falte ningun dato en los edits, de lo contrario manda mensaje y solicitar los datos faltantes. Si faltan datos el boton "Guardar" no se activa.

De nuevo gracias por tu tiempo y atencion
Título: Re:Alguien maneja J++ (Visual Java)?
Publicado por: ssccaann43 en Octubre 04, 2011, 11:06:46 am
Muestranos el String de Conexion completo por favor...!
Título: Re:Alguien maneja J++ (Visual Java)?
Publicado por: marino en Octubre 04, 2011, 12:58:03 pm
Código: [Seleccionar]
Provider=Microsoft.Jet.OLEBD.4.0;Data Source=C:\Documents and Settings\Esc\Mis documentos\Visual Studio Projects\Project3\db1.mdb;Persist Security Info=False

Obviamente tambien en commandText tengo:
Código: [Seleccionar]
select * form Tabla1

Gracias
Título: Re:Alguien maneja J++ (Visual Java)?
Publicado por: ssccaann43 en Octubre 04, 2011, 01:04:30 pm
La estructura de la tabla,
como creaste la tabla? Posee algun campo con valor Not Null?

Puesto que de ser así, no deberías dejarla en blanco...! Verifica si tienes el campo Index no lo tienes Autonumerico y no lo tomas en cuenta al hacer el insert...!

Título: Re:Alguien maneja J++ (Visual Java)?
Publicado por: marino en Octubre 04, 2011, 01:37:26 pm
La tabla fue creada en vista diseño.

Todos los tipos de datos son texto, sin embargo, encontre que en la primera columna el Indexado esta va activo

Citar
Indexado     SI (Con duplicados)

Y en la tabla echa en el colegio ninguno tenia esa propiedad, sin embargo no se porque pudo colocarse asi, ya que al momento de crearla no me meti en nada masque en tipo de datos.


En fin, ya he cambiado el indexado a no. Voy a probar a ver si ahora si me funciona.

Gracias


Edito:

No Fuciono, de nuevo el mismo problema :(
Título: Re:Alguien maneja J++ (Visual Java)?
Publicado por: YAcosta en Octubre 04, 2011, 03:10:15 pm
Mira, pon todo el código completo del botón donde mandas a grabar, así esté en ese lenguaje raro quizá algo podemos detectar.

Te esperamos.
Título: Re:Alguien maneja J++ (Visual Java)?
Publicado por: marino en Octubre 04, 2011, 03:19:09 pm
Es el unico code que tengo en el boton guardar, no he añadido mas funciones hasta no resolver este problema

Código: [Seleccionar]
dataSource1.getRecordset().update();
Título: Re:Alguien maneja J++ (Visual Java)?
Publicado por: YAcosta en Octubre 04, 2011, 04:31:13 pm
Pero no puede ser posible que ese sea todo el código!!
Por mas que estés usándolo tipo Wizard igual en algún lado debes tener la cadena que inserta tus datos, si eso es todo pues esa es la respuesta, no estas asignando nada.
Como sabe dataSource1.getRecordset().update();
en que tabla debes guardar? en que campos debes guardar? Esa cadena por si sola es imposible que guarde algo, previo a eso debes tener ya sea por código o por propiedades del control algo como "Insert Into TuTabla... etc etc"

Ese es el código que deberías proporcionar, de otra forma no hay manera de poderte ayudar.

Saludos
Título: Re:Alguien maneja J++ (Visual Java)?
Publicado por: marino en Octubre 04, 2011, 04:50:21 pm
Aqui coloco todo el proyecto que estoy manejando en el formulario:

http://www.megaupload.com/?d=9LR1VEBE

No coloque el code completo aqui ya que excede el limite de caracteres

Gracias
Título: Re:Alguien maneja J++ (Visual Java)?
Publicado por: YAcosta en Octubre 04, 2011, 05:01:28 pm
Bueno, haces muy difícil ayudarte. No era para que te publiques todo el proyecto aquí, solo el code del Boton o Proceso desde donde haces la inserción. SI aun así tienes el megacodigo con cientos de lineas para hacer un insert, pues hubieras abierto el Notepad, guardarlo en archivo txt y subir ese archivo.
No tengo como abrir tu proyecto así que esperemos que alguien lo haga y pueda darte una mano.

Saludos
Título: Re:Alguien maneja J++ (Visual Java)?
Publicado por: marino en Octubre 04, 2011, 05:22:02 pm
El archivo Form1.java puede abrirse en block de notas para ver el code.

Perdona mi ignorancia, pero por eso aclaro desde el inicio si alguien maneja este lenguaje ya que asi sabria de que estoy hablando.

Pero te repito el code referente a base de datos en el boton guardar solo es el que puse antes.

te muestro la seccion de el boton guardar
Código: [Seleccionar]
private void button9_click(Object source, Event e)
{
if (edit3.getText().equals(""))
{
MessageBox.show("No puede Guardar sin un Nombre","No hay Nombre");
edit3.focus();
}
dataSource1.getRecordset().update();
}

Gracias
Título: Re:Alguien maneja J++ (Visual Java)?
Publicado por: YAcosta en Octubre 04, 2011, 05:38:25 pm
Cita de: marino
Perdona mi ignorancia, pero por eso aclaro desde el inicio si alguien maneja este lenguaje ya que asi sabria de que estoy hablando

Listo, ahorita va a aparecer alguien que si sepa de que hablas.

Suerte.
Título: Re:Alguien maneja J++ (Visual Java)?
Publicado por: marino en Octubre 04, 2011, 05:52:08 pm
Gracias por tu tiempo y perdona por habe hecho que lo perdieras en tratar de ayudar a alguien.

Por cierto, el sarcasmo tampoco ayuda mucho.

Gracias. Buscare ayuda en otro lado.
Título: Re:Alguien maneja J++ (Visual Java)?
Publicado por: YAcosta en Octubre 04, 2011, 06:08:13 pm
No es sarcasmo, es reconocimiento, simplemente no se de que hablas y no puedo ayudarte mas, es todo.

Este foro es de VB6 principalmente, no se porque publicaste aquí cuando podías ganar tiempo publicando en foros por lo menos de java que es lo mas parecido. Claro que vi tu code del form1 y de todo lo demás con el notepad pero en ningún lado veo el Insert, así que debe ser que eso se maneje en otra capa, como no manyo nada de eso te dije que alguien pueda aparecer que si sepa de esto.

Suerte.
Título: Re:Alguien maneja J++ (Visual Java)?
Publicado por: YAcosta en Octubre 04, 2011, 06:10:38 pm
Código: [Seleccionar]
Provider=Microsoft.Jet.OLEBD.4.0;Data Source=C:\Documents and Settings\Esc\Mis documentos\Visual Studio Projects\Project3\db1.mdb;Persist Security Info=False

Obviamente tambien en commandText tengo:
Código: [Seleccionar]
select * form Tabla1

Gracias

Alli estas diciendo obviamente tienes en el commantext "select....", a eso me refiero, donde esta el "Insert Into Tabla...etc" ? ? ? ?.
Título: Re:Alguien maneja J++ (Visual Java)?
Publicado por: raul338 en Octubre 04, 2011, 06:13:33 pm
No se como sea J++ pero segun el ADO que se usa en VB6, no deberias llamar a update ya que este actualiza una tabla y no estas especificando nada para actualizar (ni en donde)

Si lo que quieres es recargar los datos del recordset. Llama a la funcion requery
Título: Re:Alguien maneja J++ (Visual Java)?
Publicado por: ssccaann43 en Octubre 04, 2011, 06:16:40 pm
No expone nada de lo que tiene, asi es muy dificil ayudarlo...!