Hola amigos
Tengo el siguiente problema. creo un Ibdateset en tiempo de ejecucion al cual le asigno diferentes propiedades tales como SelectSQL, InsertSQL,ModifySQL y DeleteSQL, dentro de un bucle voy efectuando diferentes operaciones con la tabla que enlaza al dateset (insertar, modificar, eliminar, borrar) una de esas operaciones realiza un filtro para poder ubicar un registro y modificarlo, el problema es que dicho filtro no funciona, es decir nunca se posiciona en el registro buscado, siendo que dicho registro si existe....Le he dado bastantes vueltas al problema y no logro encontrar en donde esta el error....aqui le muestro el trozo de codigo que me esta volviendo loco...
Código Delphi
[-]
......
TObrasClientes.Filtered:=False; TObrasClientes.Filter:='CODIGOOBRA = ' + QuotedStr(CodigoObra);
TObrasClientes.Filtered:=True; TObrasClientes.FindFirst;
If TObrasClientes.FieldValues['CODIGOOBRA'] = CodigoObra Then Begin
TObrasClientes.Edit;
TObrasClientes.FieldValues['NOMBREOBRA']:=TxtNombreObra;
TObrasClientes.FieldValues['ESTADO']:=TxtEstado;
TObrasClientes.FieldValues['FECHAULTIMAMODIFICACION']:=CSFechaDeSistema+Time;
TObrasClientes.FieldValues['ULTIMOUSUARIOQUEMODIFICO']:=CSUsuarioActivo.CodigoU;
TObrasClientes.Post;
End Else Begin TObrasClientes.Filtered:=False; TObrasClientes.Insert;
TObrasClientes.FieldValues['CODIGOOBRA']:=CodigoObra;
TObrasClientes.FieldValues['RUT']:=VRutCliente;
TObrasClientes.FieldValues['NOMBREOBRA']:=TxtNombreObra;
TObrasClientes.FieldValues['ESTADO']:=TxtEstado;
TObrasClientes.FieldValues['FECHACREACION']:=CSFechaDeSistema+Time;
TObrasClientes.FieldValues['FECHAULTIMAMODIFICACION']:=CSFechaDeSistema+Time;
TObrasClientes.FieldValues['USUARIOCREADOR']:=CSUsuarioActivo.CodigoU; TObrasClientes.FieldValues['ULTIMOUSUARIOQUEMODIFICO']:=CSUsuarioActivo.CodigoU;
TObrasClientes.Post;
End;
..............
Cualquier ayuda se agradece
Saludos...