Duplicar registros - Fórum DevMedia
Bom dia a todos, eu já li varios topicos sobre duplicar dados, mas nenhum me ajudou muito no que eu quero. O negócio é seguinte, eu estou precisando duplicar um registro(mestre) e seus detalhes e seus sub-detalhes, só mudando o codigo ID, Exemplo eu tenho um registro de venda e ele tem os seus itens e cada item tem os seus sub-itens, gostaria de duplicar tudo.
Se alguem puder me passar uma idei de como fazer eu agradesco muito...
Eu trabalho com Delphi 7, DbExpress e FireBird.
É isso ai um bom fim de semana para todos...
Luciano.sul
ou vc faz uma replicação do banco de dados via um replciator ou faz uma função que duplique o bd em 2 arquivos diferentes, que no mesmo ou em outro computador, procure por replicação aqui no fórum e achará
Edilcimar desculpa, mas eu acho que não me expressei corretamente, eu quero é que em determinado momento o meu cliente possa simplesmente fazer uma venda igual à outra venda que ele já tenha feito...Exemplo ele seleciona uma venda de dois dias atras e clica em um botão e o sistema gera uma nova nota com os mesmos dados da nota que ele selecionou...
Duplicar estas informações...
É isso ai obrigado pela atenção...
Neste caso, teria que fazer um filtro, para selecionar a referida venda, e depois copiá-la para outro local
Edilcimar novamente muito obrigado pela atenção data a minha pergunta. Eu não quero as coisas mastigadas, mas não ajudou muito a tua resposta. Tu pode detalhar um pouco mais....
É isso ai, uma boa semana pra ti...
Bom Luciano, eu criaria uma query auxiliar para não mexer no registro que o usuario esta apontando, e faria um select da venda usando a query auxiliar, depois pego o resultado do select e insiro um novo registro com os campos do registro anterior, e faria o mesmo com os itens e sub-itens.
Adilson obrigado pela atenção, vou fazer uns testes para ver como é que fica... :D
tenho uma idéia a repeito - que é bem simples por sinal.
poste a estrutura das tabelas em questão para a resposta ser o mais próxima possível da sua necessidade.
emerson.en obrigado pela atenção mas acredito que a estrutura da tabela não ira dizer nada. Eu so quero ideias de como duplicar um registro e seus detalhes.
bom, aí vai a minha idéia:
supondo que vc tenha algum campo que possa ser manipulado livremente, faça o seguinte:
novonumero := gettickcount; // integer
cadastro := now; // datetime
´insert into pedidovenda (numero*, cadastro, emissao, cliente, etc...) ´+
´select :novonumero, :cadastro, emissao, cliente, etc ´+
´from perdidovenda where id = :id_pedidodesejado ´
passo como parâmetro o id do pedido que eu quero copiar, o ´novo´ número do pedido e a data de cadastro, que estão nas variáveis.
pronto. criei o cabeçalho do novo pedido com as mesmas informações do pedido origem, exceto nos campos ´numero´, ´ID´ e ´cadastro´. o valor do campo ´numero´ e do campo ´cadastro´ serão usados para procurar o novo ID.