Travar um DBGrid com no maximo 21 itens para um recibo
Ola turma do ClubDelphi, sou pai de duas meninas e trabalho em uma gráfica, meu salario não é muito bom mas o emprego é garantido, e para dar sustento para elas eu faço alguns extras já a três semanas que não pinta nada mas esta segunda pintou um serviço é programa de recibo, só que eu não manjo muito de Programação e por isso estou aqui pedindo a sua ajuda o meu problema é que não consigo travar um DBGrid com no maximo 21 itens para um recibo,
Se você puder me ajudar eu e minhas filhas agradecemos desde já, muito obrigado.
Se você puder me ajudar eu e minhas filhas agradecemos desde já, muito obrigado.
Rodrigo Abreu
Curtidas 0
Respostas
Luza
22/05/2003
Vc pode ter duas formas de fazer isto:
1)
Toda vez que for incluir um registro no corpo do pedido checar a quantidade de registro na tabela que vc esta utilizando para incluir os itens do recibo.
2)
Construir um StringGrid e apos inclusao dos dados do recibo gravar em um banco de dados somente aas linhas incluidas no StringGrid
Espero ter auxiliado...
1)
Toda vez que for incluir um registro no corpo do pedido checar a quantidade de registro na tabela que vc esta utilizando para incluir os itens do recibo.
2)
Construir um StringGrid e apos inclusao dos dados do recibo gravar em um banco de dados somente aas linhas incluidas no StringGrid
Espero ter auxiliado...
GOSTEI 0
Okama
22/05/2003
A cada inserção/alteração de registro, verifique a quantidade de registros na tabela.
if Table1.RecordCount >= 21 then Showmessage( ´Limite de 21 Linhas´);
GOSTEI 0
Sam
22/05/2003
Amigo, faça o seguinte crie uma tabela chamada RECIBO21.DB
E faça a atualização da tabela toda vez que você for abrir o Form recibo. E os DataSet´s
do form recibo ficam apontados para a tabela RECIBO21.DB. Ex:
no evento ONCREATE do Form recibo
procedure TF_Form1.FormCreate(Sender: TObject);
var i : integer;
beging
tabrecibo21.emptytable; //limpa tabela de recibos
tabrecibo21.open; //tabela de recibo onde ficara apenas 21 registros
tabrecibo.open; // tabela onde contem todos os registros do recibo
tabrecibo.first; // seta o primeiro registro da tabela
while i <= 21 do // enquanto i for menor igual a 21 faça
begin
tabrecibo21.insert; //insere um novo registro na tabela rebibo21
tabrecibo21numerorecibo.text := tabrecibonumerorecibo.text; //faça isso para todos os campos das tabelas
...
...
...
...
...
tabrecibo21.post; //grava tabela recibo21
tabrecibo.next //próximo registro
i := i+1; incrementa i
end;
tabrecibo.close; // fecha a tabela de recibo
end;
Se vc quiser fazer do último registro para o primeiro troque:
TabRegistro.first; para TabRegistro.last;
e
TabRegistro.next; para TabRegistro.prior;
Espero ter ajudado !!!
E faça a atualização da tabela toda vez que você for abrir o Form recibo. E os DataSet´s
do form recibo ficam apontados para a tabela RECIBO21.DB. Ex:
no evento ONCREATE do Form recibo
procedure TF_Form1.FormCreate(Sender: TObject);
var i : integer;
beging
tabrecibo21.emptytable; //limpa tabela de recibos
tabrecibo21.open; //tabela de recibo onde ficara apenas 21 registros
tabrecibo.open; // tabela onde contem todos os registros do recibo
tabrecibo.first; // seta o primeiro registro da tabela
while i <= 21 do // enquanto i for menor igual a 21 faça
begin
tabrecibo21.insert; //insere um novo registro na tabela rebibo21
tabrecibo21numerorecibo.text := tabrecibonumerorecibo.text; //faça isso para todos os campos das tabelas
...
...
...
...
...
tabrecibo21.post; //grava tabela recibo21
tabrecibo.next //próximo registro
i := i+1; incrementa i
end;
tabrecibo.close; // fecha a tabela de recibo
end;
Se vc quiser fazer do último registro para o primeiro troque:
TabRegistro.first; para TabRegistro.last;
e
TabRegistro.next; para TabRegistro.prior;
Espero ter ajudado !!!
GOSTEI 0