Ir para conteúdo
Fórum Script Brasil
  • 0

Salvar dados de uma stringrid em um banco acess


anabon

Pergunta

Olá pessoal boa tarde....

Mais uma x peço a ajuda de vocês

Tenho um form com alguns edits, DBEdits e uma stringgrid....

estou usando os seguinte codigo para salvar

procedure Tfrmos.cmdsalvarClick(Sender: TObject);

var

i: integer;

begin

for i:=0 to Grid_Produto.rowCount do

begin

Table_Ordem.append;

Table_Ordem.fieldByName('descricao').value := Grid_Produto.Cells[1,i];

Table_Ordem.fieldByName('quantidade').value := Grid_Produto.Cells[2,i];

Table_Ordem.fieldByName('valor_un').value := Grid_Produto.Cells[3,i];

Table_Ordem.fieldByName('total1').value := Grid_Produto.Cells[4,i];

Table_Ordem.fieldByName('desconto').value := txtdesconto.text;

Table_Ordem.fieldByName('acrescimo').value := txtacrescimo.text;

Table_Ordem.fieldByName('sub_total').value := txtsub_tot.text;

Table_Ordem.fieldByName('total').value := txttot.text;

Table_Ordem.fieldByName('equipamento').value := txtID_Maquina.text;

Table_Ordem.Post;

if Table_Ordem.State in [dsInsert,dsEdit] then

Table_Ordem.Post;

PanelDados.Enabled := False; // desativa os controles

cmdsalvar.Enabled := False;

end;

end;

end.

o problema é que as dbedits salvam normal, as edit salvam 3x e os dados do stringrid pula 3 registro pra depois salvar....

eu não consigo ver o porque...

agradeço quem puder me ajudar

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

procedure Tfrmos.cmdsalvarClick(Sender: TObject);
var
i: integer;
begin
for i:=0 to Grid_Produto.rowCount do
begin
Table_Ordem.append;
Table_Ordem.edit;

Table_Ordem.fieldByName('descricao').value := Grid_Produto.Cells[1,i];
Table_Ordem.fieldByName('quantidade').value := Grid_Produto.Cells[2,i];
Table_Ordem.fieldByName('valor_un').value := Grid_Produto.Cells[3,i];
Table_Ordem.fieldByName('total1').value := Grid_Produto.Cells[4,i];
Table_Ordem.fieldByName('desconto').value := txtdesconto.text;
Table_Ordem.fieldByName('acrescimo').value := txtacrescimo.text;
Table_Ordem.fieldByName('sub_total').value := txtsub_tot.text;
Table_Ordem.fieldByName('total').value := txttot.text;
Table_Ordem.fieldByName('equipamento').value := txtID_Maquina.text;

Table_Ordem.Post;
Table_Ordem.ApplyUpdates;

PanelDados.Enabled := False; // desativa os controles
cmdsalvar.Enabled := False;
end;
end;
end.

abraço

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,2k
×
×
  • Criar Novo...