PDA

Ver la Versión Completa : error: could not convert , ayuda


Rofocale
03-05-2010, 15:40:18
hola a todos alguien me ayuda ?.. mi programa usa una base de datos firebird al intentar borrar un registro desde el boton del navigator me da error diciendo could not convert variant of type (null) into type (int64) a que se debe esto ? antes no salia y no se porque..
alguien tiene una idea ?

este es el codigo que uso en beforedelete de la tabla

tfacturas.Filter := 'ID2=' + IntToStr(tnumfact.FieldByName('ID').Value);
tfacturas.Filtered := true;
while not tfacturas.eof do
tfacturas.delete;
tfacturas.Filtered := false;

tnumfact.Filter := 'ID2=' + IntToStr(tclientes.FieldByName('ID').Value);
tnumfact.Filtered := true;
while not tnumfact.eof do
tnumfact.delete;
tnumfact.Filtered := false;

tguias.Filter := 'ID2=' + IntToStr(tnumguias.FieldByName('ID').Value);
tguias.Filtered := true;
while not tguias.eof do
tguias.delete;
tguias.Filtered := false;

tnumguias.Filter := 'ID2=' + IntToStr(tclientes.FieldByName('ID').Value);
tnumguias.Filtered := true;
while not tnumguias.eof do
tnumguias.delete;
tnumguias.Filtered := false;


con este codigo intento borrar todas las tablas de las cuales esta enganchado la primera asi dejar limpio todo el registro de un cliente.. antes funcionaba ahora no se porque
gracias

look
03-05-2010, 16:12:34
hola a todos alguien me ayuda ?.. mi programa usa una base de datos firebird al intentar borrar un registro desde el boton del navigator me da error diciendo could not convert variant of type (null) into type (int64) a que se debe esto ? antes no salia y no se porque..
alguien tiene una idea ?

este es el codigo que uso en beforedelete de la tabla

Código Delphi [-] (http://www.clubdelphi.com/foros/#)tfacturas.Filter := 'ID2=' + IntToStr(tnumfact.FieldByName('ID').Value); tfacturas.Filtered := true; while not tfacturas.eof do tfacturas.delete; tfacturas.Filtered := false; tnumfact.Filter := 'ID2=' + IntToStr(tclientes.FieldByName('ID').Value); tnumfact.Filtered := true; while not tnumfact.eof do tnumfact.delete; tnumfact.Filtered := false; tguias.Filter := 'ID2=' + IntToStr(tnumguias.FieldByName('ID').Value); tguias.Filtered := true; while not tguias.eof do tguias.delete; tguias.Filtered := false; tnumguias.Filter := 'ID2=' + IntToStr(tclientes.FieldByName('ID').Value); tnumguias.Filtered := true; while not tnumguias.eof do tnumguias.delete; tnumguias.Filtered := false;


con este codigo intento borrar todas las tablas de las cuales esta enganchado la primera asi dejar limpio todo el registro de un cliente.. antes funcionaba ahora no se porque
gracias

prueba asi...


tfacturas.Filter := 'ID2=' + IntToStr(tnumfact.FieldByName('ID').AsInteger);

Rofocale
03-05-2010, 16:31:11
funciona, gracias..