In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

Mensaje de error -TDbfDataSet not destroyed correctly.

Foro de Xailer profesional en español
Responder
alexandrasoft
Mensajes: 20
Registrado: Vie Oct 28, 2011 4:12 pm

Mensaje de error -TDbfDataSet not destroyed correctly.

Mensaje por alexandrasoft »

#2: Object TDbfDataSet (COL_ARTI.DBF) not destroyed correctly.
Ese error se produce porque crea datasets QUE NO ESTÁN asignados a ningún formulario y por lo tanto no se destruyen automáticamente. Tiene que hacerlo usted mismo.

Saludos
Avatar de Usuario
Hurricane
Mensajes: 262
Registrado: Mar Mar 24, 2015 10:21 am
Ubicación: Brasil
Contactar:

Re: Mensaje de error -TDbfDataSet not destroyed correctly.

Mensaje por Hurricane »

Olá,

use apenas destroy e sem condicionais ( já faz o :close() ):

Código: Seleccionar todo

AEVAL(oDataSource:aDataSet, {|o|o:destroy()})
Versão mais compacta e parametrizável:

Código: Seleccionar todo

FUNCTION CerrarTodoDS( aDS )
   local oDS
   LOCAL nPos

   aDS:=IF( aDS == NIL, DataSources(), aDS )
   for nPos:=Len(aDS) TO 1 STEP -1
      oDS:=aDS[nPos]
      AEVAL(oDS:aDataSet, {|o|o:destroy()})
      oDS:end()
   next

   RETURN NIL
Lembre-se de compilar com Debug para ver se a mensagem ainda aparece.
hb_gcAll() - se realmente for necessário, acho que ficaria melhor na última linha para única execução.
alexandrasoft escribió: Mar Feb 22, 2022 2:42 pm #2: Object TDbfDataSet (COL_ARTI.DBF) not destroyed correctly.
Developments | Trainings | Projects
Site | E-mail | Messenger | YouTube
alexandrasoft
Mensajes: 20
Registrado: Vie Oct 28, 2011 4:12 pm

Re: Mensaje de error -TDbfDataSet not destroyed correctly.

Mensaje por alexandrasoft »

alexandrasoft escribió: Mar Feb 22, 2022 2:42 pm
#2: Object TDbfDataSet (COL_ARTI.DBF) not destroyed correctly.
Ese error se produce porque crea datasets QUE NO ESTÁN asignados a ningún formulario y por lo tanto no se destruyen automáticamente. Tiene que hacerlo usted mismo.

Saludos
Hola si los destruia pero no en el lugar correcto quiza
Muchas gracias
Saludos
alexandrasoft
Mensajes: 20
Registrado: Vie Oct 28, 2011 4:12 pm

Re: Mensaje de error -TDbfDataSet not destroyed correctly.

Mensaje por alexandrasoft »

Hurricane escribió: Mar Feb 22, 2022 8:28 pm Olá,

use apenas destroy e sem condicionais ( já faz o :close() ):

Código: Seleccionar todo

AEVAL(oDataSource:aDataSet, {|o|o:destroy()})
Versão mais compacta e parametrizável:

Código: Seleccionar todo

FUNCTION CerrarTodoDS( aDS )
   local oDS
   LOCAL nPos

   aDS:=IF( aDS == NIL, DataSources(), aDS )
   for nPos:=Len(aDS) TO 1 STEP -1
      oDS:=aDS[nPos]
      AEVAL(oDS:aDataSet, {|o|o:destroy()})
      oDS:end()
   next

   RETURN NIL
Lembre-se de compilar com Debug para ver se a mensagem ainda aparece.
hb_gcAll() - se realmente for necessário, acho que ficaria melhor na última linha para única execução.
alexandrasoft escribió: Mar Feb 22, 2022 2:42 pm #2: Object TDbfDataSet (COL_ARTI.DBF) not destroyed correctly.
Olá, suas informações resolveram quase todos os meus problemas. Ainda preciso corrigir alguns fechamentos. Muito obrigado pela ajuda e desculpas pelo meu português
Responder