Que componente usar para selecionar várias pessoas e atribuir um valor a cada?
-
Olá!
Precisava muito de uma ajuda e agradeço a quem me possa ajudar.
Num formulário preciso selecionar várias pessoas (que já estão cadastradas no BD numa tabela de pessoas) e a cada pessoa associar uma porcentagem. Por exemplo, a Maria tem 45%, o Joaquim tem 20% e o Maurício tem 35% de uma empresa. Inicialmente pensei selecionar as pessoas através de um multiselect, para poder selecionar várias, mas não consigo dessa forma associar uma caixa de texto a cada uma para preencher com o valor da porcentagem.
Se fizer um formulário para cadastrar pessoas e uma porcentagem, para depois usar como subformulário, cada pessoa fica associada apenas a um valor de porcentagem, certo? (Se é que esta solução do subformulário funciona...).
Preciso que a pessoa tenha aquela porcentagem associada apenas àquela empresa e que possa ter várias empresas, ou seja, uma pessoa tem de poder ter vários valores de porcentagem, dependendo da empresa de que se trata.
Que componente posso usar? -
Para resolver o problema de associar várias pessoas a porcentagens diferentes em um formulário, você pode seguir a abordagem de utilizar uma tabela intermediária que relaciona pessoas às porcentagens. Isso é conhecido como uma tabela de junção ou tabela de associação. Aqui está como você pode fazer isso:
1.Crie Tabelas no Banco de Dados:
Certifique-se de que você já tem uma tabela de pessoas e uma tabela para armazenar as porcentagens. Agora, crie uma terceira tabela, que servirá como a tabela de junção. Essa tabela conterá as chaves estrangeiras das tabelas de pessoas e porcentagens, bem como o valor da porcentagem.
2.Crie o Formulário:
No formulário, você terá uma lista suspensa (dropdown) para selecionar as pessoas da tabela de pessoas e um campo de entrada para inserir a porcentagem. Cada vez que você seleciona uma pessoa e insere uma porcentagem, um novo registro é criado na tabela de junção, associando a pessoa à porcentagem.
3.Exemplo da Estrutura da Tabela de Junção:
Tabela: Associacao_Pessoas_Porcentagens
Coluna: ID (chave primária)
Coluna: ID_Pessoa (chave estrangeira para a tabela de pessoas)
Coluna: ID_Porcentagem (chave estrangeira para a tabela de porcentagens)
Coluna: Valor_Porcentagem (para armazenar o valor da porcentagem)4.Relacionamentos entre Tabelas:
Configure relacionamentos entre as tabelas de pessoas, porcentagens e a tabela de junção. Isso garantirá que você possa associar corretamente as pessoas às porcentagens.
5.No Formulário:
Use um dropdown para selecionar a pessoa.
Use um campo de entrada para inserir a porcentagem.
Ao enviar o formulário, insira os dados na tabela de junção.Acredito que assim será capaz de conseguir resolver, lembrando utilizar uma lista ou uma lista dinâmica será uma ótima solução.