![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
AYUDAAAA!!!!!!
Miren ya quite todos mis DBedits de mi formulario y meti los TEDITs entonces en el edit1 es en donde se encuentra la matricula del alumno y todos mis datos los voy a almacenar de la siguiente manera: Cita:
Pero me marca error acerca de que el 'FIELD 'DNI_ALUMNO' MUST HAVE A VALUE' ... a que se debe este mensaje????? sera que no puedo guardar la informacion de un edit en diferentes tablas??? acaso cuando lo guardo en la primera se borra la informacion del EDIT...??? que es lo que pasa??? ayudenme.. |
|
#2
|
||||
|
||||
|
Cita:
__________________
Una forma de alcanzar tus metas es ayudando a otros a alcanzar las suyas |
|
#3
|
||||
|
||||
|
[quote=(VIH)Lestat]
Pero me marca error acerca de que el 'FIELD 'DNI_ALUMNO' MUST HAVE A VALUE' ... a que se debe este mensaje?????QUOTE] evidentemente es que en el campo DNI_ALUMNO no hay dato que guardar posiblemente sea por lo que stu dices no estoy seguro pero si es por eso por que no guardas el dato que tiene en el edit1.text y lo asignas despues de que haces esto
es una solucion muy mediocre pero creo que funciona.. Cita:
__________________
Una forma de alcanzar tus metas es ayudando a otros a alcanzar las suyas |
|
#4
|
|||
|
|||
|
Pues me sigue marcando el mismo error BARTO..
mira ya probe con esto... Código:
var dni_a:string;
begin
cni_a:=edit1.text;
IBtable1.fieldbyname.('dni'):=dni_a;
IBtable2.fieldbyname('dni_alumno):=dni_a;
Probe tambien con lo que me digiste y sigue marcando error... |
|
#5
|
||||
|
||||
|
como creaste la tabla dni_alumno es que hay una cosa que debes saber si tienes dos tablas
alumno materia y en alumno tienes los atributos (*)nombre, (*)apellido, (*)dni, telefono por decir algo y en materia tienes los atributos (*)nom_materia, (*)cod_materia, (*)dni_alumno en donde los que tienen (*) son campos obligatorios y si tu le pides a el edit que inserte el dato desde la tabla alumno sacara error siempre por que llenas el campo dni_alumno y los demas campos no los estas llenando siendo ellos obligatorios Verifica tu teoria de llenar datos en distintas tablas depronto lo que necesitas no es eso
__________________
Una forma de alcanzar tus metas es ayudando a otros a alcanzar las suyas |
|
#6
|
||||
|
||||
|
Cita:
// Saludos |
|
#7
|
||||
|
||||
|
Cita:
lodeclaras asi pero lo usas asi
El error en este caso se puede producir por esto no??? lo usas como cni_a y lo declaraste dni_a Cita:
__________________
Una forma de alcanzar tus metas es ayudando a otros a alcanzar las suyas |
|
#8
|
||||
|
||||
|
Cita:
En cuanto a lo segundo, quizá justamente el trigger le esté metiendo ruido. Tal como lo plantea ahora pareciera no requerir el trigger pero quizá lo sigue teniendo activo y puede ser que no esté bien definido y sea el que esté metiendo valores en blanco. // Saludos |
|
#9
|
||||
|
||||
|
Sip por que como muestra nuestro amigo vih lo hace mediante codigo normalito es decir sin hacer uso del trigger, seria bueno mirar como armaste el trigger,
puede que el trigger si tiene un before insert no este guardando el valor de DNI_ALUMNO y por eso se dispara la excepcion
__________________
Una forma de alcanzar tus metas es ayudando a otros a alcanzar las suyas |
|
#10
|
|||
|
|||
|
MIren... Por el momento no estoy utilizando triggers, pero ya se como funcionan... no los utilizo por que el valor que quiero insertar automaticamente o por medio del trigger es el DNI del alumno pero los demas campos los debe jalar de los DBEDits que tenia... pero todos mis DBEDITS ya los elimine y decidi almacenar los datos directamente en la tabla o sea por medio de la propiedad FIELDBYNAME.. si me entienden???? entonces declare la variable como me sugirio el BARTO y almaceno la DNI del alumno que esta en el edit en la variable..... luego esa misma variable la utilizo para almacenar los datos en las diferentes tablas y estoy checando la variable y si almacena el valor del EDIT.. pero me marca error al guardar los datos ....por que despues de utilizar el FIELDBYNAME.asstring:=dni_a; tengo puesto IBtalbe1.post para guardar los datos....
pero tengo una duda.... si estoy utilizando la propiedad de la tabla FIELDBYNAME para introducir los datos ... ya no tengo que utilizar el POST para guardar los cambios???? porque he visto otros ejemplos cuando almacenan los datos con dicha propiedad y no los utilizan pero hay otros que si...entonces no se que hacer???? |
|
#11
|
|||
|
|||
|
Para ser mas especifico aqui les pongo el codigo que utilizo para almacenar informacion en las tablas antes mencionadas... espero puedan encontrar el error que me aqueja....todo este codigo lo tengo puesto para un boton..
Código:
procedure TIngresar_alum.BitBtn3Click(Sender: TObject);
var dni_a:string;
apellidopa:string;
apellidoma:string;
nombre:string;
sex:string;
dir:string;
local:string;
ciud:string;
tele:string;
fecha_ing:variant;
statu:string;
imagen:variant;
edoc:string;
carrera:string;
sem:integer;
cert:integer;
fot:integer;
act:integer;
cur:integer;
begin
dni_a:=matricula.Text;
apellidopa:=apaterno.Text;
apellidoma:=amaterno.Text;
nombre:=nombres.Text;
sex:=sexo.Text;
dir:=direccion.Text;
local:=localidad.Text;
ciud:=municipio.Text;
tele:=telefono.Text;
edoc:=edocivil.Text;
carrera:=DBLcarrera.KeyValue;
fecha_ing:=fecha.Text;
statu:=status.Text;
sem:=strtoint(semestre.Text);
cert:=strtoint(certificado.ValueChecked);
act:=strtoint(acta.ValueChecked);
fot:=strtoint(fotos.ValueChecked);
cur:=strtoint(curp.ValueChecked);
//Se ponen en modo Editar las Tablas para empezar a recibir datos
ModuloSID.IBTalumnos.Edit;
ModuloSID.IBTalumno_carrera.Edit;
ModuloSID.IBTsemestre.Edit;
ModuloSID.IBTalum_doc.Edit;
//Se captura la informacion directamente de las cajas de Texto
ModuloSID.IBTalumnos.FieldByName('dni').AsString:=dni_a;
ModuloSID.IBTalumnos.FieldByName('apellido_pa').AsString:=apellidopa;
ModuloSID.IBTalumnos.FieldByName('apellido_ma').AsString:=apellidoma;
ModuloSID.IBTalumnos.FieldByName('nombre').AsString:=Nombre;
ModuloSID.IBTalumnos.FieldByName('sexo').AsString:=Sex;
ModuloSID.IBTalumnos.FieldByName('direccion').AsString:=Dir;
ModuloSID.IBTalumnos.FieldByName('localidad').AsString:=Local;
ModuloSID.IBTalumnos.FieldByName('ciudad').AsString:=ciud;
ModuloSID.IBTalumnos.FieldByName('telefono').AsString:=Tele;
ModuloSID.IBTalumnos.FieldByName('fecha_ingreso').Value:=fecha_ing;
ModuloSID.IBTalumnos.FieldByName('edo_civil').AsString:=edoc;
MOduloSID.IBTalumnos.FieldByName('status').AsString:=statu;
ModuloSID.IBTalumnos.Post;
ModuloSID.IBTalumno_carrera.FieldByName('dni_alumno').AsString:=dni_a;
ModuloSID.IBTalumno_carrera.FieldByName('dni_carrera').AsString:=carrera;
ModuloSID.IBTalumno_carrera.Post;
ModuloSID.IBTsemestre.FieldByName('dni_alumno').AsString:=dni_a;
ModuloSID.IBTsemestre.FieldByName('semestre').AsInteger:=sem;
ModuloSID.IBTsemestre.Post;
ModuloSID.IBTalum_doc.FieldByName('dni_alumno').AsString:=dni_a;
ModuloSID.IBTalum_doc.FieldByName('certificado').AsInteger:=cert;
ModuloSID.IBTalum_doc.FieldByName('acta').AsInteger:=act;
ModuloSID.IBTalum_doc.FieldByName('fotos').AsInteger:=fot;
ModuloSID.IBTalum_doc.FieldByName('curp').AsInteger:=cur;
ModuloSID.IBTalum_doc.Post;
ahh y otra cosa tengo declarado variables para almacenar la informacion de los EDITS y luego pasarselas a mis tablas ... estas variables "SI" almacenan la informacion porque ya le hice pruebas y si me la retiene.. el problema esta en las clausulas POST SUPONGO!!!! ![]() ![]() |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
|