Boa tarde.
É minha primeira vez (fazendo pergunta) no fórum, mas vcs não tem ideia de como já me ajudaram.
Só que estou com um problema e não consigo resolver. Procurei no fórum uma resposta, mas não encontrei. Talvez até tenha, mas não consegui ver. Explicarei o que ocorre para ver se podem me ajudar.
Trabalho em um Centro de Reabilitação de Animais Silvestres (CRAS) e recebemos uma quantidade absurda de animais machucados, contrabandeados, filhotes, etc. Temos um sistema que faz o cadastro desses animais, mas fica aquém das nossas necessidades. Assim, resolvi montar um BD para tentar completar as lacunas de nosso trabalho. Esse sistema gera automaticamente números de registro para cada animal que entra no CRAS e o sistema que estou desenvolvendo aproveita esse número (é minha chave primária). Assim, o registro principal não é gerado automaticamente pelo access, mas é inserido manualmente pelo usuário do sistema. Sei que é estranho, mas é o único jeito.
O que o sistema que desenvolvo faz (resumidamente) é:
1. Receber as informações desses animais;
2. Dizer onde esses animais estão no CRAS (são os recintos onde acondicionamos esses animais até seu retorno para a natureza);
3. Quais animais morreram;
4. Quais serão devolvidos para a natureza, e onde;
5. Relatório de movimentações desses animais.
Meu problema está no item 4: Quais serão devolvidos para a natureza, e onde.
Existem duas tabelas no sistema. Uma que registra ONDE o animal foi solto, por QUEM e QUANDO, e a outra lista QUAIS animais foram soltos.
Cada vez que um animal é solto, ele DEIXA o CRAS. Assim, ele é marcado na tabela principal (ONDE ESTÃO TODAS AS INFORMAÇÕES SOBRE ESSE ANIMAL) como SOLTURA.
Criei um Formulário (para os locais de soltura) e um Sub-Formulário, modo folha de dados (para a relação dos animais soltos). Cada vez que escolho um animal nesse sub-formulário (o número de registro fornecido pelo outro sistema, que é minha chave primária) ele é marcado como solto na tabela principal para que eu possa filtrar na minha combox e esse número de registro não aparecer (para facilitar o trabalho durante o lançamento dos dados). Até aqui está indo bem, pois no evento após atualizar da combox eu mandei rodar uma atualização do registro e ele marca na tabela principal como SOLTURA sem problema.
O que está me dando dor de cabeça é:
Caso o usuário tenha lançado um animal errado e queira mudar o registro, preciso que seja atualizada a tabela principal como NÃO SOLTURA assim que ele mudar o campo. Quando coloquei o comando de atualizar, ele até rodou, mas apenas em um único registro, não conseguindo fazer o mesmo com outros registros - isso imaginando que o usuário deseja modificar 2 ou mais registros inseridos. As vezes nem com apenas um único registro ele consegue. Não consigo entender essa falha.
Quebrei muito a cabeça, mas não consigo resolver esse problema besta.
Segue a linha de comando que utilizo para atualizar como SOLTURA esse animal.
CurrentDb.Execute "UPDATE [Entrada de dados] SET [Entrada de dados].Soltura = -1 WHERE RG = " & Form_Frm_Solturas_animais_sub.cbo_RG & " "
Onde:
1. Entrada de dados é minha tabela principal, com todas as informações sobre o animal;
2. Soltura é um campo SIM/NÃO;
3. RG é meu campo CHAVE PRIMÁRIA na tabela principal;
4. Frm_Solturas_animais_sub é meu sub-formulário folha de dados;
5. cbo_RG é onde aparece o número do registro do animal, minha chave primária.
Espero que tenham entendido o que escrevi e, se puderem dar uma luz sobre meu caso, agradeço.
Caso já exista a resposta desse meu problema (mas eu não encontrei), poderia, por favor, mandar o link da mesma?
Obrigado pela ajuda.
É minha primeira vez (fazendo pergunta) no fórum, mas vcs não tem ideia de como já me ajudaram.
Só que estou com um problema e não consigo resolver. Procurei no fórum uma resposta, mas não encontrei. Talvez até tenha, mas não consegui ver. Explicarei o que ocorre para ver se podem me ajudar.
Trabalho em um Centro de Reabilitação de Animais Silvestres (CRAS) e recebemos uma quantidade absurda de animais machucados, contrabandeados, filhotes, etc. Temos um sistema que faz o cadastro desses animais, mas fica aquém das nossas necessidades. Assim, resolvi montar um BD para tentar completar as lacunas de nosso trabalho. Esse sistema gera automaticamente números de registro para cada animal que entra no CRAS e o sistema que estou desenvolvendo aproveita esse número (é minha chave primária). Assim, o registro principal não é gerado automaticamente pelo access, mas é inserido manualmente pelo usuário do sistema. Sei que é estranho, mas é o único jeito.
O que o sistema que desenvolvo faz (resumidamente) é:
1. Receber as informações desses animais;
2. Dizer onde esses animais estão no CRAS (são os recintos onde acondicionamos esses animais até seu retorno para a natureza);
3. Quais animais morreram;
4. Quais serão devolvidos para a natureza, e onde;
5. Relatório de movimentações desses animais.
Meu problema está no item 4: Quais serão devolvidos para a natureza, e onde.
Existem duas tabelas no sistema. Uma que registra ONDE o animal foi solto, por QUEM e QUANDO, e a outra lista QUAIS animais foram soltos.
Cada vez que um animal é solto, ele DEIXA o CRAS. Assim, ele é marcado na tabela principal (ONDE ESTÃO TODAS AS INFORMAÇÕES SOBRE ESSE ANIMAL) como SOLTURA.
Criei um Formulário (para os locais de soltura) e um Sub-Formulário, modo folha de dados (para a relação dos animais soltos). Cada vez que escolho um animal nesse sub-formulário (o número de registro fornecido pelo outro sistema, que é minha chave primária) ele é marcado como solto na tabela principal para que eu possa filtrar na minha combox e esse número de registro não aparecer (para facilitar o trabalho durante o lançamento dos dados). Até aqui está indo bem, pois no evento após atualizar da combox eu mandei rodar uma atualização do registro e ele marca na tabela principal como SOLTURA sem problema.
O que está me dando dor de cabeça é:
Caso o usuário tenha lançado um animal errado e queira mudar o registro, preciso que seja atualizada a tabela principal como NÃO SOLTURA assim que ele mudar o campo. Quando coloquei o comando de atualizar, ele até rodou, mas apenas em um único registro, não conseguindo fazer o mesmo com outros registros - isso imaginando que o usuário deseja modificar 2 ou mais registros inseridos. As vezes nem com apenas um único registro ele consegue. Não consigo entender essa falha.
Quebrei muito a cabeça, mas não consigo resolver esse problema besta.
Segue a linha de comando que utilizo para atualizar como SOLTURA esse animal.
CurrentDb.Execute "UPDATE [Entrada de dados] SET [Entrada de dados].Soltura = -1 WHERE RG = " & Form_Frm_Solturas_animais_sub.cbo_RG & " "
Onde:
1. Entrada de dados é minha tabela principal, com todas as informações sobre o animal;
2. Soltura é um campo SIM/NÃO;
3. RG é meu campo CHAVE PRIMÁRIA na tabela principal;
4. Frm_Solturas_animais_sub é meu sub-formulário folha de dados;
5. cbo_RG é onde aparece o número do registro do animal, minha chave primária.
Espero que tenham entendido o que escrevi e, se puderem dar uma luz sobre meu caso, agradeço.
Caso já exista a resposta desse meu problema (mas eu não encontrei), poderia, por favor, mandar o link da mesma?
Obrigado pela ajuda.