FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Me da un error al dejar en blanco un campo en interbase
Hola todos,
disculpen una pregunta acerca de las inserciones en interbase 6.0, no lo habia notado, tengo un campo llamado Tel_cel, es decir que anteriorme se tomaba el mismo telefono de casa para capturalo en Tel_cel (telefono celular). Mi consulta es la siguiente select Id_user, nom, tel, tel_cel) from usuarios (Por decir estos campos...) pero ahora hay algunas personas que si tienen telefono celular y otras no, en mi tabla de usuarios los campo tel, y tel_cel son varchar(18) y son null que puedo dejar en blanco al hacer las inserciones. Resulta que al agregar un registo nuevo y dejo el campo tel_cel en blanco me da un error que dice que el valor de tel_cel debe ser llenado... entonces se queda trabada y me saca del programa por lo tanto lo que habia capturado no se graba, tengo los componetes Ibx y para actualizar los datos uso los componentes IbDataset, Ibtransacction, Ibsql ya programada en la propiedad insertsql del ibdataset algo como esto : Insert Into usuarios (Id_user, nom, tel, tel_cel) value (:Id_user, :nom, :tel, :tel_cel) En el Ibsql en la propiedad SQL algo como esto: Select max(id ) Next From usuarios Y por ultimo en el evento Onnewrecord escribo algo asi: with IBSQL1 do begin ExecQuery; ibdatasetId.Value := fieldByName('Next').AsInteger + 1; Close; end; Y en donde se coloca las lineas de confirmar los cambios CommitRetaining, RollbackRetaining lo que se denomina transsacciones Les agradeceria si me puedieran darme alguna solucion. |
#2
|
||||
|
||||
Mira yo pienso que tienes el campo validado para que no quede en nulo si es asi cuando crees las tablas quitale la validacion
Cita:
__________________
...Yo naci en esta ribera del arauca vibr@d0r Soy hermano de la espuma, de la garza, de la rosa y del sol... Viva Venezuela |
#3
|
|||
|
|||
ok voy a revisar...
ok, eduarcol pero esto es referente a que cada campo tenga lo denominado Not null.
Por que para este campo solo lo defino como Tel_celular varchar(15) y listo Y cada vez que dejo en blanco este campo al ingresar un registro me arroja un error y me pide que sea evaluado. espero que me des otra idea gracias |
#4
|
||||
|
||||
Otra idea que se me ocurre es que el componente TField tenga la opcion de requiredfield como true
Solo si cargas los TField en el TDataSet
__________________
...Yo naci en esta ribera del arauca vibr@d0r Soy hermano de la espuma, de la garza, de la rosa y del sol... Viva Venezuela |
#5
|
||||
|
||||
Para determinar si el problema está en el cliente o en el servidor, podes intentar insertar un registro con este campo a null desde isql. Si alli rebota, hay algo en el servidor que espera que tenga un valor.
Si allí pasa bien, entonces el problema está en tu programa de delphi. En cualquiera de los dos casos es extremadamente útil conocer el mensaje exacto de error (incluyendo códigos y clases de excepciones) que están involucrados. Hasta luego.
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#6
|
|||
|
|||
voy a verificar este mensaje de error . . .
Ok, saludos a todos.
Gracias eduarcol por esta idea voy a intentarlo con esta propiedad del Ibdatset. Y como dice jachguate voy apuntar el mensaje que me arroja al hacer inserciones de datos, Confirmare que sucede desde el lado del servidor interbase. Y comentare acerca de lo sucedido. Saludos y gracias |
|
|
|