Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > .NET
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 05-10-2010
radaalvaro radaalvaro is offline
Miembro
 
Registrado: oct 2005
Ubicación: Santa Cruz - Bolivia
Posts: 163
Poder: 20
radaalvaro Va por buen camino
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 23:38:41. Razón: No se veia bien el codigo con los tags CODE
Responder Con Cita
  #2  
Antiguo 05-10-2010
Avatar de BlueSteel
[BlueSteel] BlueSteel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Concepción - Chile
Posts: 2.310
Poder: 24
BlueSteel Va por buen camino
Hola

probastes con realizar un Post o Refresh despues de insert. Al insertar los datos a una tabla no lo podras visualizar en la consulta anterior a menos que la refresques o actualices la consulta.

Yo lo que realizo despues de un Insert o Update es realizar otro proceso para que actualice los datos que muestro en la grilla o pantalla que quiero

Salu2
__________________
BlueSteel
Responder Con Cita
  #3  
Antiguo 06-10-2010
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.549
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Con 160 mensajes no comentaré nada de lo que debería comentar, acerca de los TAG's.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #4  
Antiguo 28-10-2010
radaalvaro radaalvaro is offline
Miembro
 
Registrado: oct 2005
Ubicación: Santa Cruz - Bolivia
Posts: 163
Poder: 20
radaalvaro Va por buen camino
Post o Refresh.... en que momento?

Cita:
Empezado por BlueSteel Ver Mensaje
Hola

probastes con realizar un Post o Refresh despues de insert. Al insertar los datos a una tabla no lo podras visualizar en la consulta anterior a menos que la refresques o actualices la consulta.

Yo lo que realizo despues de un Insert o Update es realizar otro proceso para que actualice los datos que muestro en la grilla o pantalla que quiero

Salu2
Post o refresh, en que momento?, a la hora de realizar la nueva consulta, o en que clase encuentro estos métodos.

Te agradezco mucho la colaboración, estoy con este inconveniente desde hace muuucho tiempo.

Saludos.

Didier.
Responder Con Cita
  #5  
Antiguo 28-10-2010
Avatar de BlueSteel
[BlueSteel] BlueSteel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Concepción - Chile
Posts: 2.310
Poder: 24
BlueSteel Va por buen camino
Cita:
Empezado por radaalvaro Ver Mensaje
Post o refresh, en que momento?, a la hora de realizar la nueva consulta, o en que clase encuentro estos métodos.

Te agradezco mucho la colaboración, estoy con este inconveniente desde hace muuucho tiempo.

Saludos.

Didier.
Estimado... cuando realizas la venta, realizas un insert en algunas tablas.. .cuando te cambias al modulo cuentas por cobrar... lo más probable es que la sentencia que muestra las cuentas que estan desplegadas se hallan realizado antes de realizar la venta nueva... por lo cual debieras realizar una nueva seleccion o refrescar la consulta...

no se si me explique bien...

Salu2
__________________
BlueSteel
Responder Con Cita
  #6  
Antiguo 29-10-2010
radaalvaro radaalvaro is offline
Miembro
 
Registrado: oct 2005
Ubicación: Santa Cruz - Bolivia
Posts: 163
Poder: 20
radaalvaro Va por buen camino
Cita:
Empezado por BlueSteel Ver Mensaje
Estimado... cuando realizas la venta, realizas un insert en algunas tablas.. .cuando te cambias al modulo cuentas por cobrar... lo más probable es que la sentencia que muestra las cuentas que estan desplegadas se hallan realizado antes de realizar la venta nueva... por lo cual debieras realizar una nueva seleccion o refrescar la consulta...

no se si me explique bien...

Salu2
Primero, agradecerte por tu tiempo, y tu ayuda...

Te comento que la consulta se ejecuta a la hora de abrir el nuevo formulario, es decir, despues de realizada la venta, y aún así no se muestra los últimos datos, inslusive hago que al cerrar la venta se liberen todos los datasets que venta utilizó.

Saludos.
Responder Con Cita
  #7  
Antiguo 03-11-2010
Avatar de lucasarts_18
lucasarts_18 lucasarts_18 is offline
Miembro
 
Registrado: mar 2005
Ubicación: Villa Alemana,Chile
Posts: 1.087
Poder: 21
lucasarts_18 Va por buen camino
Debes confirmar la transacción para que la visualices, lo más probable que tu aplicación la haga al momento de salir de la aplicación, por eso al ingresar por 2 vez ya la puedes ver.

Commit y Rollback. Mira por ahí.

Saludos .-
__________________
No todo es como parece ser...
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Datos se muestran repetidos elarys Impresión 2 15-01-2010 19:34:37
Datos no se muestran de Grid ftavarez Tablas planas 3 27-06-2007 04:10:53
Trabajar con x e y para guardar coordenadas y despues lelrlas con php Petolansa PHP 0 17-06-2006 18:36:38
Como guardar una rchivo y despues leerlo? Luis Alberto Varios 3 09-12-2005 21:39:27
Guardar ICOs en BlOB y después recuperarlos Aprendiz Conexión con bases de datos 8 16-12-2004 19:30:33


La franja horaria es GMT +2. Ahora son las 00:57:22.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi