Pessoal,
Entendi todas as dicas para passar parâmetros de um form principal para um form secundário.
Porém tenho dúvidas quanto a uma resposta do form secundário para o principal. Ou seja, uma comunicação bi-direcional entre os forms. Seria necessário repetir os mesmos passos de criação de lista de parametros e tal no form secundário?
E no caso da utilização de variáveis globais, onde se declara essas variáveis?
Obrigado!
Comunicação entre Forms
-
- Rank: Estagiário Júnior
- Mensagens: 2
- Registrado em: Seg, 23 Mar 2009 10:18 am
- Localização: Belo Horizonte/MG
- dr_gori
- Moderador
- Mensagens: 5024
- Registrado em: Seg, 03 Mai 2004 3:08 pm
- Localização: Portland, OR USA
- Contato:
Thomas F. G
Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered
Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered
Existem várias formas de se fazer isso.
Uma das mais fáceis é criar variáveis GLOBAIS mesmo. São variáveis do tipo VARCHAR de tamanho 255. Pode declarar em qualquer lugar, mas pra ficar bem organizado, normalmente se declara na PRE-FORM ou na WHEN-NEW-FORM-INSTANCE. Essas variáveis são compartilhadas por todos forms abertos. Você tem que dar um RELEASE nelas.
Outras formas de se "voltar" informações é:
* Criar uma package spec e colocar ali uma variável. Daí basta setar que ficará disponível **na mesma sessão**. Se você chamou com OPEN_FORM, não vai funcionar, apenas com CALL_FORM.
As vezes você precisa compartilhar várias linhas. Daí eu gosto da idéia de se gravar tudo que você precisa numa tabela temporária, que fica bem rápido e disponível pra se recuperar essas linhas em qualquer stored procedure OU package.
Cada caso é um caso... já vi gente que gravou um arquivo TEXTO na maquina pra passar parametro pro form anterior.. (nada pratico).
Uma das mais fáceis é criar variáveis GLOBAIS mesmo. São variáveis do tipo VARCHAR de tamanho 255. Pode declarar em qualquer lugar, mas pra ficar bem organizado, normalmente se declara na PRE-FORM ou na WHEN-NEW-FORM-INSTANCE. Essas variáveis são compartilhadas por todos forms abertos. Você tem que dar um RELEASE nelas.
Outras formas de se "voltar" informações é:
* Criar uma package spec e colocar ali uma variável. Daí basta setar que ficará disponível **na mesma sessão**. Se você chamou com OPEN_FORM, não vai funcionar, apenas com CALL_FORM.
As vezes você precisa compartilhar várias linhas. Daí eu gosto da idéia de se gravar tudo que você precisa numa tabela temporária, que fica bem rápido e disponível pra se recuperar essas linhas em qualquer stored procedure OU package.
Cada caso é um caso... já vi gente que gravou um arquivo TEXTO na maquina pra passar parametro pro form anterior.. (nada pratico).
-
- Rank: Estagiário Júnior
- Mensagens: 2
- Registrado em: Seg, 23 Mar 2009 10:18 am
- Localização: Belo Horizonte/MG
OK, entendi... Utilizei as variáveis globais mesmo, funcionou.
Obrigado pela rápida resposta.
Obrigado pela rápida resposta.
-
- Informação
-
Quem está online
Usuários navegando neste fórum: Nenhum usuário registrado e 12 visitantes