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

Consulta de acréscimo


oreste.jr

Pergunta

Olá colegas do forum, sou novato e esta é minha primeira participação.

Consegui aqui resolver um problema do botão de comando para cadastrar registro já que o anterior estava multiplicado os registros a cada comado ex: 1, 2, 4, 8... beleza, só que me deparo agora com um novo problema. quando delego o comando ele cadastra 1 registro, só que, os dados que estão sendo emitidos para minha consulta de acréscimo são os codigos dos registros e não as descrições como é pretendido.

Deixo abaixo os códigos das combos dependentes e do botão de comando para caso alguém possa me ajudar.

Grato.

Combo_fase = SELECT [F1], [CP_FASE] FROM FASE ORDER BY [FASE].[F1];

Combo_sub = SELECT [sUB1], [CP_SUB] FROM SUB WHERE SUB.[F1]=Combo_fase;

Combo_purga = SELECT [AGRUP].[AGRUP1], [AGRUP].[CP_AGRUP] FROM AGRUP WHERE ((([AGRUP].[sUB1])=Formulários!CAD![Combo_sub])) GROUP BY [AGRUP].[AGRUP1], [AGRUP].[CP_AGRUP];

Botão de comando (ao clicar) = Private Sub Comando27_Click()

Dim db As DAO.Database, Rs As DAO.Recordset

Set db = CurrentDb()

'AQUI VEM A TABELA QUE RECEBE DADOS DO FORM

Set Rs = db.OpenRecordset("teste")

'AQUI O COMANDO QUE CRIA UM NOVO REGISTRO NESSA TABELA

Rs.AddNew

'AQUI O COMANDO QUE VAI COPIAR OS DADOS DO FORM NA TABELA, USE UM Rs PARA CADA CAMPO

Rs("CP_FASE") = Me.Combo_fase

Rs("CP_SUB") = Me.Combo_sub

Rs("CP_AGRUP") = Me.Combo_purga

'AQUI O COMANDO QUE SALVA A TABELA

Rs.Update

End Sub

Obs: Para que minhas combos dependentes funcionem as colunas acopladas tem que estar = 1

Caso eu coloque 2 para a combo_fase a descrição vai para a consulta de acréscimo, porém a combos dependetes não retornão valores.

Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0

Num consegui ver erro no seu código, talvez nuam tentativa passando o nome do formulário durante o processo, algo assim:

Rs("CP_FASE") = forms!seuFormulario!Combo_fase.value

Rs("CP_SUB") = forms!seuFormulario!Combo_sub.value

Rs("CP_AGRUP") = forms!seuFormulario!Combo_purga.value

Se não der certo isso se possivel post sua aplicação para poder analisar melhor (uso access 2003).

Link para o comentário
Compartilhar em outros sites

  • 0

simples..

entenda que geralmente quando você cria comboxs que buscam valores em tabelas, não são armazenados "descricoes" como você mesmo disse.. e sim o codigo de indice de cada item.

o access faz dessa maneira automaticamente pois isso aumenta significativamente o desempenho de uma aplicacao. é mais facil referenciar campos indice do que campos de texto.

bom, no teu caso, temos duas solucoes:

a primeira, e na minha opniao, a correta, é q você deixe como está. e quando você quiser exibir a descricao referente ao indice armazenado, crie campos q exibam somente a coluna da combox q você deseja.

a segunda é você alterar seu codigo para q ele busque o valor da coluna q você quer, ao invés do indice.

ex:

aqui, vai armazenar no CP_FASE o valor da coluna 1 da linha selecionada na combox. lembrando que as colunas iniciam por 0(geralmente a do indice),1,2,3....

Rs("CP_FASE") = column(Me.Combo_fase,1)

Link para o comentário
Compartilhar em outros sites

  • 0
Num consegui ver erro no seu código, talvez nuam tentativa passando o nome do formulário durante o processo, algo assim:

Rs("CP_FASE") = forms!seuFormulario!Combo_fase.value

Rs("CP_SUB") = forms!seuFormulario!Combo_sub.value

Rs("CP_AGRUP") = forms!seuFormulario!Combo_purga.value

Se não der certo isso se possivel post sua aplicação para poder analisar melhor (uso access 2003).

Caros Senhores, MALJ e Humm, em primeiro lugar gostaria de agradecê-los pela atenção e apoio a esse novato que apesar de pouco saber, aprecia muito esta área de criação.

Estou postando dois exemplos da idéia do BD que pretendo trabalhar. O primeiro com o cód que vinha trabalhando e o segundo com a opção que o senhor MALJ indicou. Sei que ainda está bastante primitivo mas creio que dá para os senhores me ajudar na principal dificuldade: Alimentar uma tabela mestre, através de outras.

A princípio, esse processo será feito por um form com seis combos dependentes e algumas cx de txt com valores, datas e outros.

Mr MALJ, após a modificação ocorreu um erro. Não sei se procedi de forma correta. Espero que possam me ajudar.

Com esse protótipo, se assim posso chamá-lo, espero que possam até mesmo me orientar numa escolha de estrutura mais eficaz.

Através de exemplos potados nesse forum consegui chegar a trêis combos dependentes, mas a cada acréscimo os problemas surgem. Caso tenham alguma dica de como proceder nesses acrécimos eu agradeço.

Para ser mais claro, este BD tem como finalidade promover a criação de relatórios de medição de uma EAP (Estrutura Analítica de Projeto) ou simplesmente um projeto.

Sr. Humm ainda vou tentar por em prática sua dica nesse momento. Após um resultado, entrarei em contato.

Grato a todos e segue abaixo os links para os arquivos.

Por favor sintam a vontade para dicas e críticas.

http://www.baixa.la/arquivo/4431387

http://www.baixa.la/arquivo/2103345

Link para o comentário
Compartilhar em outros sites

  • 0

crie uma consulta seleção

exiba o codigo SQL dela e copie e cole esse codigo lá:

SELECT teste.Código, FASE.CP_FASE, AGRUP.CP_AGRUP, SUB.CP_SUB
FROM ((teste LEFT JOIN AGRUP ON teste.CP_AGRUP = AGRUP.AGRUP1) LEFT JOIN SUB ON teste.CP_SUB = SUB.SUB1) LEFT JOIN FASE ON teste.CP_FASE = FASE.F1;

veja se é isso que você quer

Link para o comentário
Compartilhar em outros sites

  • 0

Sr. Hum, este código foi infalível. Agora eu tenho cinco tb, um form com cinco combos, uma tb para receber os dados filtrados e cadastrados através da consulta acréscimo e por último uma consulta seleção que retorna as descrrições referentes aos códigos cadastrados na tb receptora. Estou com um probleminha na última combo. Caso possa me ajudar na simplificação deste problema eu agradeço.

Gostaria que me falasse da importância do relacionamento entre tabelas para esse tipo de caso.

Fique livre para sugerir ou criticar.

Vou disponibilizar esta prévia no link abaixo:

http://www.baixa.la/arquivo/7724357

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,3k
×
×
  • Criar Novo...