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
  #21  
Antiguo 21-01-2008
Yun-i Yun-i is offline
Miembro
 
Registrado: ene 2008
Posts: 125
Poder: 17
Yun-i Va por buen camino
Cita:
Empezado por Caral Ver Mensaje
Hola
Me lo explican?, por que esto:

Código Delphi [-]
try
ADODSFact.Append;
ADODSFact.Post;
ADODSFact.Edit
except



Saludos

Yo tampoco se que es el codigo no lo hice yo pero seria bueno que alguien pudirea explikarnos
saludos
Responder Con Cita
  #22  
Antiguo 22-01-2008
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
Quizás en el evento OnNewRecord se asigne el número de factura, como sabemos ese número debe ser correlativo sin huecos en la numeración. Si el programa está en red, dos usuarios pueden pulsar el botón de "Insertar nuevo registro" y tener el mismo número de factura.

En Paradox y otras hierbas, se suele agregar un registro en blanco (que provoca el evento OnNewRecord entre otros) y acto seguido se graba para que nadie más en la red pueda tomar ese número de factura.

(Obviamente no tiene que ser por motivo de factura, pero si es la filosofía).

Después se deja en Edición para que el usuario no note nada raro y pueda seguir introduciendo los demás datos del registro.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #23  
Antiguo 22-01-2008
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
En cuanto al error original del hilo:
Código Delphi [-]
 procedure TFFacturacionDirecta.actBusqEvenExecute(Sender: TObject);
begin
Application.CreateForm(TFRBusquedaEventos,FRBusquedaEventos);
if FRBusquedaEventos.ShowModal = mrOk then
   begin
      if not ADODSFact.Active then
         ADODSFact.Open;
      ADODSFact.Edit;
      ADODSFactNUM_EVENTO.Value:=FRBusquedaEventos.intEvento;

// No haces el Post de la modificación ???


   end;
FRBusquedaEventos.Free;
end;

El error lo dice claramente: No se puede realizar la operación en un Dataset Cerrado. Está claro que al ejecutar la acción "actBusqEvenExecute" en alguna ocasión, el adodsFact no está abierto. Deberías encontrar esa situación para manejarla mejor. Yo solo he parcheado el asunto, pero sabe dios que registro editará, lo más normal es que edite el que no necesitas.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #24  
Antiguo 22-01-2008
Yun-i Yun-i is offline
Miembro
 
Registrado: ene 2008
Posts: 125
Poder: 17
Yun-i Va por buen camino
Smile lepe como siempre

Bueno miren, gracias a los comentarios de lepe y carol me cayo el 20(entendi) ya quedo bueno esa parte, lo que hice para evitarme problemas es abrir en el oncreate de la forma todos los TADODataset y ya no marca el error, pero como bien dijeron ustedes el errror era pk estaba cerrado el dataset.


Código Delphi [-]
procedure TFFacturacionDirecta.FormCreate(Sender: TObject);
begin
New(Permiso);
Permiso:=FDMPrincipal.leerPermiso('FFACTURACIONMESA');
ADODSDetaFact.Open;//Esto fue lo que puese
ADODSFact.Open;
ADODSServ.Open;
ADODSClie.Open;
ADODSRfc.Open;
ADODSEven.Open;//hasta aki por que son los dataset que se referencian en la forma
end;

sale pues asi quedo el codigo las otras funciones las estoy analizando esas ya estaban

bueno esa parte ya esta pero pues hay muchas cosas que no se del sistema son 140 formas aprox. ya con reportes y pantallas chicas de consulta puero pues si hay algunas con mayor complejidad bueno almenos para mi asi es ya que el sistema manda correos de forma automatica al realizar algun proceso, crea, modifica abre, adjunta archivos de ofice exporta a excel algunos reportes de quik report etc etc pero bueno conforme me vaya saliendo dudas ire habriendo hilos creo que es mas recomendable no??

bueno ante todo muchas gracias por su apoyo
Saluods
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
Copiar el contenido de un DataSet a otro DataSet Javi2 Varios 82 22-11-2022 09:26:16
funcion Perform chorrito Lazarus, FreePascal, Kylix, etc. 2 25-07-2007 21:54:29
Firebird - Delphi (Cannot perform operation...) papulo Conexión con bases de datos 5 26-10-2005 18:43:22
Closed dataset srobles Conexión con bases de datos 3 14-03-2005 21:10:24
FB+IBX error: IBSQL closed apicito Conexión con bases de datos 0 29-05-2003 12:39:57


La franja horaria es GMT +2. Ahora son las 07:55:27.


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