Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 11-07-2018
darkamerico darkamerico is offline
Miembro
 
Registrado: dic 2010
Posts: 235
Poder: 14
darkamerico Va por buen camino
Hice los primeros cambios

Saludos Neftali, me pareció prudente cambiar los 2 componentes de texto txtCantidad y txtPrevioVenta a componentes DB-Aware, ahora son TCxDBTextEdit y estan conectados a sus respectivos campos correctamente. Aquí los cambios:

Paso 1: En el Evento OnExit de txtCantidad hago el post:

Código Delphi [-]
procedure TfrmCompras.txtCantidadExit(Sender: TObject);
begin
  ds_Carrito.Edit;
  ds_Carrito.DataSet.Post;
  gridCarritoCompraDBTableView1.DataController.DataSet.Refresh;
  q_CalcTotal.Close;
  q_CalcTotal.Open;
  txtMontoTotal.Text:=q_CalcTotal.Fields[0].AsString;
end;

Sin embargo, al intentar cambiar un valor la aplicación arroja un error: Assertion failure (D:\Projects\MemData.pas, line 7161), luego al salir del foco del componente aparece el mensaje de que el DataSet no esta en Edit o Insert Mode...

Recuerda que estoy trabajando sobre un VirtualTable llamado vt_Carrito, de modo que la única forma que conozco de saber que se realizo bien es mediante la visualizacion de sus registros en la grilla.

Saludos

Última edición por darkamerico fecha: 11-07-2018 a las 16:28:00.
Responder Con Cita
  #2  
Antiguo 12-07-2018
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.289
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
Cita:
Empezado por darkamerico Ver Mensaje
Sin embargo, al intentar cambiar un valor la aplicación arroja un error: Assertion failure (D:\Projects\MemData.pas, line 7161), luego al salir del foco del componente aparece el mensaje de que el DataSet no esta en Edit o Insert Mode...

Normalmente ese error ocurre cuando intentas cambiar un Dataset (un valor de un campo) estando en el estado "incorrecto".
Las líneas en el orden correcto serían algo así; Revisa que las estés haciendo correctamente


Código Delphi [-]
   ...   

   // Cambiar el estado

   Dataset.Edit;
   // Modificar el campo

   Dataset.FieldByname('NOMBRECAMPO').AsString := 'aa';
   ... otras formas de modificar valores
   // Guardar los cambios
   Dataset.Post


Revisa las líneas donde estés cambiando campos del Dataset y asegurate de que el Dataset está en modo Edit;



Haz debug paso a paso y dinos exactamente la línea que está fallando.
__________________
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
  #3  
Antiguo 12-07-2018
darkamerico darkamerico is offline
Miembro
 
Registrado: dic 2010
Posts: 235
Poder: 14
darkamerico Va por buen camino
Error Assertion

Este es el error...AQUI

El formulario Compras lo subi Aqui

Un abrazo
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
Problema para actualizar fecha oscarac OOP 3 31-01-2018 01:33:27
Actualizar freepascal para programar con XE2 para iOS PacoPepe FireMonkey 0 18-04-2013 11:19:21
Problema con Stored Procedure para actualizar tabla con datos de otra tabla. Adrian Murua MySQL 4 04-02-2012 02:54:49
Problema para actualizar el servidor papulo Firebird e Interbase 42 04-09-2008 11:15:28
Problema Para Actualizar Un Registro sdiaz1983 Conexión con bases de datos 3 21-01-2008 04:00:10


La franja horaria es GMT +2. Ahora son las 07:48:01.


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