Selecao DevMedia QUERO SER PRIME

Fórum A named FBAL2_ORCAME already exists #327299

11/08/2006

0

Olá pessoal,

Estou tendo problema em um cliente que usar terminal server que em determinada hora do dia está acontecendo esse erro no fomulário de venda - A named FBAL2_ORCAME already exists.
O Servidor é Win2003 com processador dual, 2 Gb de Ram divido em dois pentes.

Em outros clientes que usam o mesmo sistema porem com menos movimentação e sem terminal server não acontece.

Forma que uso para chamar o form:

TRY
Application.CreateForm(TFBAL2_ORCAME,FBAL2_ORCAME);
FBAL2_ORCAME.Showmodal;
FINALLY
FreeAndNil(FBAL2_ORCAME);
END;


Alguem tem alguma idéia do que possa estar acontecendo ?


Pezzin

Pezzin

Responder

Posts

14/08/2006

Pezzin

Up !!!


Responder

Gostei + 0

14/08/2006

Pezzin

Up !!!

:(


Responder

Gostei + 0

14/08/2006

Marco Salles

é so mesmo para dar um up.... Fica muito dificil , pelo menos para mim, dar um parecer certeiro sobreo o problema

mas aqui vai

1)Acredito que esse formulário esta na seccção AvalaibreForms do form
Não é isto mesmo ???

2)voce esta definindo como Owner do Proprietario a aplicação ...A regra é que a apllicação deve ser usado com proprietário apenas para formulário não modais..

3)Se o tempo de vida do formulário for determinado use nil como Owner

´A regra é: se é o tempo de vida do componente é determinado, então use nil como owner. Se não, use Self, para componentes, e Application, para forms. ´


4)as biografias mandam usar o Release ao Inves do Freeandnil na destruição de Formulários...

TRY Application.CreateForm(TFBAL2_ORCAME,FBAL2_ORCAME); FBAL2_ORCAME.Showmodal; FINALLY FreeAndNil(FBAL2_ORCAME); END;


nesse método voce diz que a aplicação é o proprietario e logo a seguir voce o destroe , sendo que a principio , isto seria de responsabilidade da applicação

então amigo troque o seu codigo por :

FBAL2_ORCAME:=TFBAL2_ORCAME,Create(nil)
try
FBAL2_ORCAME.Showmodal; 
FINALLY 
FBAL2_ORCAME.Release;
FBAL2_ORCAME:=nil;
 END;


e boa sorte...


Responder

Gostei + 0

14/08/2006

Pezzin

Obrigado amigo...

Vou modificar o código e atualizar neste cliente e te dar um feedback depois...


Responder

Gostei + 0

14/08/2006

Pezzin

Marcos,

Está dando erro ao compilar.


Responder

Gostei + 0

14/08/2006

Marco Salles

Marcos, Está dando erro ao compilar.


FBAL2_ORCAME:=TFBAL2_ORCAME.Create(nil); 
try 
FBAL2_ORCAME.Showmodal; 
FINALLY 
FBAL2_ORCAME.Release; 
FBAL2_ORCAME:=nil; 
end; //end do Finally


Na instrução , faltou trocar virgula por ponto e faltou o Ponto virgula na final
FBAL2_ORCAME:=TFBAL2_ORCAME,Create(nil)

FBAL2_ORCAME:=TFBAL2_ORCAME.Create(nil);



Responder

Gostei + 0

14/08/2006

Pezzin

[quote:b2ae386418=´Marco Salles´]
Marcos, Está dando erro ao compilar.


FBAL2_ORCAME:=TFBAL2_ORCAME.Create(nil); 
try 
FBAL2_ORCAME.Showmodal; 
FINALLY 
FBAL2_ORCAME.Release; 
FBAL2_ORCAME:=nil; 
end; //end do Finally


Na instrução , faltou trocar virgula por ponto e faltou o Ponto virgula na final
FBAL2_ORCAME:=TFBAL2_ORCAME,Create(nil)

FBAL2_ORCAME:=TFBAL2_ORCAME.Create(nil);
[/quote:b2ae386418]

Blz,

Para complementar, eu tenho no evento OnClose deste form a linha:

Action:=CaFree;

Está correto ?


Responder

Gostei + 0

14/08/2006

Marco Salles

Para complementar, eu tenho no evento OnClose deste form a linha: Action:=CaFree; Está correto ?


sim , porque quando o usuário clica no ´x´ para fechar a janela (ou usa teclas de atalho definidas no windows) a aplicação esconde os formulários do Tipo MDI ... Para alterar este comportamento e liberar a memória ocupada pelo formulário escreva no evento oncloseform Action:=Cafree;


Responder

Gostei + 0

17/08/2006

Pezzin

Olá Marco,

Meu cliente atualizou o sistema e me informou que trabalhou hoje o dia todo sem o erro acontecer.

Antes estava da atualização acontecia umas 4 ou 5 vezes.

Espero que agora normalize o problema de vez.


Muito obrigado pela sua atenção.
Valeu.


Responder

Gostei + 0

17/08/2006

Marco Salles

Acho que vai dar tudo certo...

valeu


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar