locked
Insert com Select RRS feed

  • Pergunta

  • Olá Amigos, sou novo aqui no forum. Seguinte, estou precisando de ajuda para fazer um insert com select (no VB6 com banco Access). É que quero fazer um relacionamento entre empresas que fazem parte de um mesmo grupo. Então criei uma tabela que relaciona da seguinte forma:

    Tabela: RelacCli

    Campos:
    CodigoPK;CodigoFK
    111;222
    111;333
    222;111
    222;333
    333;111
    333;222

    Quando eu fizer uma nova inserção amarrando por exemplo:
    444;111
    que esse meu insert faça um select nas amarrações constantes do 111 e re-faça automaticamente para o 444 ficando:
    111;222
    111;333
    222;111
    222;333
    333;111
    333;222
    mais
    444;111
    444:222
    444:333
    111;444
    222;444
    333;444

    Peço orientação dos amigos mais experiente para saber se é possível. Estou pensando da forma correta?

    Alex Sandro
    sábado, 7 de março de 2009 23:51

Todas as Respostas

  • Olá,

    não entendi bem a sua dúvida, mas eu criaria uma tabela de grupo de empresa para relacionar as empresas que fazem parte de um grupo. Esta tabela de grupo de empresa teria um numerador sequencial (1, 2, 3, etc.) e este numerador iria como chave estrangeira da tabela de empresas.
    Luiz Cláudio Cosenza Vieira da Rocha - http://msmvps.com/blogs/officedev - IT Lab www.itlab.com.br
    domingo, 8 de março de 2009 01:13
    Moderador
  • Blz, ja mais uma ideia.
    Deixe-me apenas explicar melhor como estou fazendo hoje. Eu ja trabalho com um cadastro nornal de empresas(no caso cadastro de clientes) e depois tenho uma tabela chamada "Relac", nela eu relaciono, mas ai é que tenho duvidas de que se estou fazendo da forma mais otimizada, alem tambem q estou tendo problemas para um relacionamento mais "automatizado". O usuario q relaciona um empresa com outra e hoje é feito 'uma por uma' manualmente. ex de empresas 1, 2, 3 e 4. No programa atual tenho campos cliente1 e cliente2 e como disse precisa amarrar um a um:
    entao amarraria
    empresa1 ; empresa2
    depois
    empresa1 ; empresa3

    e depois o inverso (tudo um a um)
    empresa2 ; empresa1
    empresa2 ; empresa3
    empresa3 ; empresa1
    empresa3 ; empresa2

    se depois de um tempo surgir mais uma empresa a relacionar:
    empresa1 ; empresa4
    empresa4 . empresa1
    empresa4 . empresa2
    empresa4 . empresa3

    e o inverso mais uma vez
    empresa2; empresa4
    empresa3; empresa4

    Eu queria ver uma forma de fazer essas amarraçoes dentro do programa, para que fique mais inteligente e o usuario nao corra o risco de esquecer algum relacionamento.

    Agradeço
    Abraços
    domingo, 8 de março de 2009 23:57
  • Eu faria do jeito que mencionei acima, criando um número para o grupo.
    Luiz Cláudio Cosenza Vieira da Rocha - http://msmvps.com/blogs/officedev - IT Lab www.itlab.com.br
    quarta-feira, 11 de março de 2009 23:14
    Moderador
  • Ok, ja estou adaptando para essa sua dica. Só mais uma solicitacao. Poderia postar um exemplo de com fazer um insert com um select, pois pensei em fazer o seguinte:

    empresa 100 ja esta alocada com o grupo de empresas 1
    quando eu for amarrar essa empresa 100 a uma nova empresa eu gostaria de poder pegar o codigo do grupo da empresa 100 e colcoar tb na nova empresa. Já vi alguns exemplo mas nao estou conseguindo aplicar (formular a sentença corretamente sql)
    quinta-feira, 12 de março de 2009 02:12