Olá amigo, bom dia

Antes tudo, fico grato pela sua resposta para tentar solucionar o meu problema.
Ocorre que sua linha de raciocinio está correta, porém estou usando o seguinte 
select para fazer exatamente o que vc sugeriu e obtenho 3 registros 
(ID_REGISTRO, NOME_RAZAO, CPF_CNPJ, TIPO_SOCIO, CAPITAL), fazendo o select no 
Banco de Dados, porém em uso dentro do código eu só tenho a resposta de 1 
registro e os dois não vem.

Mesmo em posse desse registro não estou sabendo COPIA-LO para a mesma tabela, 
porém em registro corrente.
Acredito que deve ser uma situação simples de resolver, mas como não tenho 
todas as técnicas da linguagem, fico batendo cabeça. Ainda bem que existe os 
foruns  e grupos da net.

O SELECT

  dm.sdsComando.CommandText := 'select max(contrato_socio.id_registro), '+
                           'contrato_socio.nome_razao, '+
                           'contrato_socio.cpf_cnpj, '+
                           'contrato_socio.tipo_socio, '+
                           'contrato_socio.capital '+
                           'from contrato, contrato_socio '+
                           'inner join contrato '+
                           'on contrato_socio.id_registro = 
contrato.id_registro '+
                           'and contrato.id_empresa = :id '+
                           'group by 2,3,4,5';
  dm.sdsComando.ParamByName('id').AsInteger := StrToInt(dbeCodEmpresa.Text);
  dm.sdsComando.ExecSQL;
  dm.cdsComando.Close;
  dm.cdsComando.Open;
  if dm.cdsComando.FieldByName('MAX').AsInteger = NULL then
  begin
    dm.cdsContrato_Socio.Insert;
  end
  else
  begin
      AQUI É QUE DEVE OCORRER A COPIA DOS REGISTROS OBTIDOS NO SELECT ACIMA, 
PARA A TABELA REGISTRO_SOCIO NO REGISTRO ATUAL

  end;


No mais, uma grande abraço e valeu pela força

Att.

Fábio




________________________________
De: berdam <[EMAIL PROTECTED]>
Para: delphi-br@yahoogrupos.com.br
Enviadas: Quarta-feira, 29 de Outubro de 2008 22:46:58
Assunto: Re: [delphi-br] Registros de uma Tabela para a mesma Tabela


use o select max(codigo) from tabela, pega o código e executa outro 
select para selecionar este registro, copia os dados, muda o código e 
insira novamente

fabiotwatanabe escreveu:
>
> Ocorre que em um NOVO REGISTRO o usuario cadastra entre outras coisas
> os sócios na TABELA(CONTRATO_ SOCIO). Essa tabela é filho da tabela
> CONTRATO, com os seguintes campos:
>
> (ID_REGISTRO, NOME_RAZAO, CPF_CNPJ, TIPO_SOCIO, CAPITAL)
>
> Em um PROXIMO registro ele (usuario) irá fazer um NOVO REGISTRO e o
> que eu preciso:
> No momento em que ele (usuario) entrar no form para cadastrar um novo
> registro, o sistema
> precisa ir ao BD e verificar qual foi o ultimo registro que foi feito
> nessa tabela (CONTRATO_SOCIO)
> e assim trazer esses dados para o NOVO REGISTRO que o usuário está
> fazendo, ou seja, imaginemos que o registro anterior (ID_REGISTRO)
> foi 7 e agora preciso inserir os mesmos registros, porém com
> id_registro 8
> entao o usuario podera antes de gravar, claro, alterar ou excluir
> esses registros IMPORTADOS,
>
> MAS EU NAO ESTOU CONSEGUINDO IMPORTAR ESSES DADOS!!!
>
> lembrando que poder ocorrer mais de um registro, sendo o que
> diferencia um registro do outro é o campo CPF_CNPJ.
>
> Fico grato se alguém me ajudar!!!
>
> 

-- 
------------ --------- --------- --------- --------- -----
Uberdam Cavaletti
Formado em Tecnologia da informação - Unoesc - Xxe
Pós graduando em Desenvolvimento Java - Unoesc - Xxe

Acesse http://www.curricul ar.com.br/ berdam
Acesse http://passandovene no.blogspot. com

------------ --------- --------- --------- --------- -----

 


      Novos endereços, o Yahoo! que você conhece. Crie um email novo com a sua 
cara @ymail.com ou @rocketmail.com.
http://br.new.mail.yahoo.com/addresses

[As partes desta mensagem que não continham texto foram removidas]

Responder a