Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Fixar Entrada Em Formulario


deltad

Pergunta

Olá Srs, mais uma vez preciso de ajuda...

Bem , possuo um formulário que utilizo para dar entrada em dados com varios campos, o que gostaria é de fixar 2 dos campos ou seja ao atualizar que somente estes campos permanecessem com os dados que entrei no registro anterior, tentei usar um sub formulario mas não deu certo ai então resolvi ficar com um formulario unico e tentar fixar 2 campos na atualizaçao do registro é possivel? como sou iniciante se possivel um passo a passo ficaria muito grato...

Obrigado

Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

  • 0

Ummmm... bom posso sugerir que você crie 2 caixas de textos não acopladas e ocultas para guardarem sempre o último conteúdo desses campos então nos novos registros você só repassa esses valores, ou então você pode utilizar variáveis globais...

Espero que resolva pra você, confirme para nós!

Link para o comentário
Compartilhar em outros sites

  • 0

é facil..

faça o seguinte..

transforme este campo que você quer em caixa de combinação..

a origem dos dados da lista mande apontar pra tabela e para este mesmo campo da tabela..

assim toda vez que voce entrar com DINHEIRO por exemplo neste campo, no proximo registro, a opcao DINHEIRO vai aparecer automaticamente pra você.

Link para o comentário
Compartilhar em outros sites

  • 0
é facil..

faça o seguinte..

transforme este campo que você quer em caixa de combinação..

a origem dos dados da lista mande apontar pra tabela e para este mesmo campo da tabela..

assim toda vez que voce entrar com DINHEIRO por exemplo neste campo, no proximo registro, a opcao DINHEIRO vai aparecer automaticamente pra você.

Uma boa ideia a sua camarada, fiz de acordo com a sua orientação, criei texto não acoplando transformei em combo e na origem dos dados foi gerado uma consulta em que coloquei o campo em questao, no proximo registro realmente apareceu nos campos automaticamente os dados digitados anteriormente....mas o que ocorreu é que estes registros não foram inseridos no BD, como devo proceder para que estes campos sejam inseridos?

Ummmm... bom posso sugerir que você crie 2 caixas de textos não acopladas e ocultas para guardarem sempre o último conteúdo desses campos então nos novos registros você só repassa esses valores, ou então você pode utilizar variáveis globais...

Espero que resolva pra você, confirme para nós!

Caro colega, tenho uma pequena noçao de programaçao ...mas não em VB , sei criar as 2 caixas de texto não acopladas e ocultas ,mas qual procedimento para guardar o ultimo coteudo dos campos? e qual o procedimento para repassar estes valores ? o que seria um codigo ou uma macro ?vou tentar me aprofunadar e estudar a respeito de sua dica mas se for possivel você poderia dar um exempo desta rotina ?

Agradeço sua atençao e desculpe minha falta de conhecimento.

Aguardo seu retorno obrigado.

Link para o comentário
Compartilhar em outros sites

  • 0

Suponhamos que esses dois campos que deseje preservar os dados digitados no registro atual para o proximo se chamem campo1 e campo2, e que as caixas de texto não acopladas que iremos utilizar para armazenar seje txt1 e txt2, o que iremos fazer sempre fazer com que o campo do registro atual preencha o próximo, então a vamos utilizar as propriedade de eventos de campo1 e campo2, no caso "ao receber foco" e "após atualizar):

em "ao receber foco" iremos primeiro verificar se o campo já tem conteúdo se tiver não iremos preenche-lo:

if isnull(me.campo1) or me.campo1="" then

me.campo1.value=me.txt1

end if

em "após atualizar" iremos repassar a caixa de texto não acoplada o conteúdo que acabamos de digitar:

me.txt1.value=me.campo1

Bom da mesma forma que fiz pra campo1 e txt1, basta fazer com campo2 e txt2...

Espero que resolva, confirme!

Link para o comentário
Compartilhar em outros sites

  • 0

amigo.. para que estes valores fiquem registrados na tabela, você tem que vincular essa combo a um campo está tabela..

exemplo:

na tabela deste formulario, crie um campo com o nome que você deseja

exemplo: FORMA_PG

no form, adicione este campo, e transforme-o em caixa de combinacao.

na origem dos dados da lista clique em contruir, na consulta adicione a tabela deste form e na grade dela somente este mesmo campo FORMA_PG

salve tudo e teste.

vamos supor.. no registro 1 do seu form, voce insere DINHEIRO no campo FORMA_PG

então no registro 2 quando você clicar pra listar, DINHEIRO já vai aparecer la

ai voce so precisa colocar uma vez em algum registro para que ele passe a aparecer na lista. e também vai ser armazenado na tabela

obs:

se por acaso quando em 2 registros você colocar DINHEIRO.. e então no proximo, na lista aparecer DINHEIRO duas vezes, me avise

Editado por Humm
Link para o comentário
Compartilhar em outros sites

  • 0
Suponhamos que esses dois campos que deseje preservar os dados digitados no registro atual para o proximo se chamem campo1 e campo2, e que as caixas de texto não acopladas que iremos utilizar para armazenar seje txt1 e txt2, o que iremos fazer sempre fazer com que o campo do registro atual preencha o próximo, então a vamos utilizar as propriedade de eventos de campo1 e campo2, no caso "ao receber foco" e "após atualizar):

em "ao receber foco" iremos primeiro verificar se o campo já tem conteúdo se tiver não iremos preenche-lo:

if isnull(me.campo1) or me.campo1="" then

me.campo1.value=me.txt1

end if

em "após atualizar" iremos repassar a caixa de texto não acoplada o conteúdo que acabamos de digitar:

me.txt1.value=me.campo1

Bom da mesma forma que fiz pra campo1 e txt1, basta fazer com campo2 e txt2...

Espero que resolva, confirme!

Camarada perfeito, nunca mais esquecerei este procedimento e me deu animo a continuar aprendendo e implementando este meu programinha...Voce acertou em cheio e funcionou perfeitamente ou seja ao chamar o novo registro já recebo o campo1 e campo2 identico ao registro anterior, so preciso de mais um detalhe : teria como uma vez atualizados e puxados os dados do registro anterior os campo1 e campo2 ficarem bloqueados para que eu não tenha que dar enter nos mesmos?ou quem sabe transferir o foco para um outro campo de minha escolha ?

Um bom dia para voce e muito obrigado.

Link para o comentário
Compartilhar em outros sites

  • 0

Bom basta que antes de chegar ao seu campo você mude o foco para o objeto seguinte, você compara o seu conteúdo e se estiver vazio você move o foco para a caixa de texto ou outro objeto posterior veja o exemplo (ainda utilizando como base as nomenclatura adotada anteriormente) utilizando o procedimento de evento "após atualizar" do objeto antes do campo1:

if not isnull(me.campo1) or me.campo1="" then

me.proximoCampo.setfocus

end if

Bom dessa forma casa se precisa fazer alguma alteração no campo a pessoa só precisará clicar no campo, mais caso não deseje mais deixar executar alteração coloque esse código na propriedade de evento "ao receber foco" do campo1.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...