Los datos no se muestran despues de guardar.
Amigos,
Tengo un problema con un programa que estoy desarrollando.
Les explico. El programa es para manejo de ventas, inventarios y cuentas por cobrar.
Cuando registro una venta que inserte datos en cuentas por cobrar, luego de hacer la venta, voy a cuentas por cobrar para que me muestre el listado de las cuentas que hay en ese momento y me muestra todas las antiguas transacciones excepto la última que acabo de realizar. y recien al cabo de varios minutos, recien puedo verla, o cauando cierro el programa y vuelvo a abrirlo.
Tambien puedo verla si realizo la consulta directamente en el SQL Server Management Studio 2005.
Utilizo Delphi.net que trabaja sobre el Framework 1.1 y SQL Server 2005 SP3.
Cada tabla tiene su propio procedimiento almacenado y el registro se realiza dentro de una transacción de sql server y en caso de que todo sea exitoso, se realiza el commit, caso contrario el rollback.
// Co es un SqlCommand que ya tiene asignado previamente
el procedimiento correspondiente.
// Datos es un ArrayList donde vienen todos los parametros para
pasarle al procedimiento
// almacenado
// Tr es un Objeto de tipo SqlTransaction.
Co.Transaction := SqlTransaction(tr);
if Datos.Count<=Co.Parameters.Count then
begin
for I := 0 to Datos.count - 1 do
if Datos[i]<>nil then
Co.Parameters[i].Value := Datos[i]
else
Co.Parameters[i].Value := Dbnull.Value;
aux := Datos.Count;
for j := aux to Co.parameters.count - 1 do
Co.Parameters[j].Value := Dbnull.Value;
end
Co.ExecuteNonQuery;
Una vez que toda la transacción se completo, procedo a ver en mi formulario de cuentas por cobrar, y no veo el último dato insertado. Para ver uso una Grilla que se carga a partir de un DataSet.
function TAcceso.DevuelveDatoDS(sConsulta: string): DataSet;
var
Dap: IDbDataAdapter;
Resultado : DataSet;
begin
Resultado := DataSet.Create;
if (sConsulta<>'')then
begin
dap := sqlDataAdapter.Create(sConsulta, sqlConnection(cnx));
Dap.Fill(Resultado);
sqlDataAdapter(dap).Dispose;
end;
result := Resultado;
end;
Esto voy intentando solucionarlo desde hace muuucho tiempo, si pudieran darme una mano, les agradecería mucho.
Saludos.
Atte.
Didier.
Última edición por radaalvaro fecha: 05-10-2010 a las 22:38:41.
Razón: No se veia bien el codigo con los tags CODE
|