deletar 2 ou mais arquivos no BD..

Delphi

11/08/2005

tenho um programa de OS e nele tem 4 banco de dados 2 para cadastro e 2 para arquio morto...só que tenho dúvidas com relação a fazer a baixa em determinada OS..

1º - tenho uma tabela principal onde fica os registros principais e uma tabela onde coloco valor de pçs e tals...para das baixa na tabela principal, igualo os campos da tabela principal com a do arquivo morto e dou um delete ao final da operação...EX...


  _FormCRReceb.BD_ARQUIVO_MORTO_FIN.Close;
  _FormCRReceb.BD_ARQUIVO_MORTO_FIN.Open;
  _FormCRReceb.BD_ARQUIVO_MORTO_FIN.Insert;
  _FormCRReceb.BD_ARQUIVO_MORTO_FINGS_ARF_DESCRICAO.Value := _FormCRReceb.BD_CONT_RECGS_COR_DESCRICAO.Value;
  _FormCRReceb.BD_ARQUIVO_MORTO_FINGS_ARF_NOME.Value := _FormCRReceb.BD_CONT_RECGS_COR_NOME.Value;
  _FormCRReceb.BD_ARQUIVO_MORTO_FINGS_ARF_CPF_CNPJ.Value := _FormCRReceb.BD_CONT_RECGS_COR_CPF_CNPJ.Value;
  _FormCRReceb.BD_ARQUIVO_MORTO_FINGS_ARF_CODPROD.Value := _FormCRReceb.BD_CONT_RECGS_COR_CODPROD.Value;
  _FormCRReceb.BD_ARQUIVO_MORTO_FINGS_ARF_N_PARCELAS.Value := _FormCRReceb.BD_CONT_RECGS_COR_N_PARCELAS.Value;
  _FormCRReceb.BD_ARQUIVO_MORTO_FINGS_ARF_DATA_VENC.Value := _FormCRReceb.BD_CONT_RECGS_COR_DATA_VENC.Value;
  _FormCRReceb.BD_ARQUIVO_MORTO_FINGS_ARF_DATA_CAD.Value := _FormCRReceb.BD_CONT_RECGS_COR_DATA_CAD.Value;
  _FormCRReceb.BD_ARQUIVO_MORTO_FINGS_ARF_CODACES.Value := _FormCRReceb.BD_CONT_RECGS_COR_CODACESPAR.Value;
  _FormCRReceb.BD_ARQUIVO_MORTO_FINGS_ARF_DATA_BAX.Value := FormatDateTime(´dd/mm/yyyy´,Date);
  _FormCRReceb.BD_ARQUIVO_MORTO_FINGS_ARF_VALOR_TOTAL.Value := _FormCRReceb.BD_CONT_RECGS_COR_VALOR_TOTAL.Value;
  _FormCRReceb.BD_ARQUIVO_MORTO_FINGS_ARF_VALOR_PARCELA.Value := _FormCRReceb.BD_CONT_RECGS_COR_VALOR_PARCELA.Value;
  _FormCRReceb.BD_ARQUIVO_MORTO_FINGS_ARF_VALOR_ENT.Value := _FormCRReceb.BD_CONT_RECGS_COR_VALOR_ENT.Value;
  _FormCRReceb.BD_ARQUIVO_MORTO_FINGS_ARF_VENDEDOR.Value := _FormCRReceb.BD_CONT_RECGS_COR_VENDEDOR.Value;
  _FormCRReceb.BD_ARQUIVO_MORTO_FINGS_ARF_VALOR_PAGO.Value := Label11.Caption;
  _FormCRReceb.BD_ARQUIVO_MORTO_FIN.Post;
  _FormCRReceb.BD_CONT_REC.Delete;
  Close;



até aí funciona direitinho..

2º - tenho um morto para os itens também..( peças mão de obra etc,..) só que na maioria das vezes esta tabela dos itens tem + de um registro, aí prescisaria tranferir estes registro para uma outra tabela destinada para isto, e depois deletar tudo..será muito complicado ?

3º - O relacionamento entre uma tabela e outra é feita através de código...existe um campo que recebe o código da OS e no evendo Onscroll da tabela principal é colocado um filtro para deixa somente em evidencia os dados referente somente akele registro...


var
  A:integer;
begin
  A:=BD_CLIENTESGS_CLI_CODIGO.Value;
  BD_CLIAUTCON.Close;
  BD_CLIAUTCON.SQL.Clear;
  BD_CLIAUTCON.SQL.Add(´select * from CLIENTES_AUTCON where GS_CAC_CODACES=´+inttostr(a));
  BD_CLIAUTCON.Open;



Este problema parece ser meio complicado...

Valeu...t+


Gigatel

Gigatel

Curtidas 0
POSTAR