Ajuda - Busca - Membros - Calendário
Versão Completa: Ragistros Automatico
Fórum Script Brasil > Programação & Desenvolvimento > Delphi, Kylix
Halan Lopes
estou desenvolvendo um programa e gostaria que no formulario de pedido ao clicar um botão ele criasse "x" registros na tabela de Parcelamento, o numero de registros há serem criados é inserido em na tabela Metodo de Pagamento. Alguem sabe como fazer?
Churc
explica isso direito... huehu
Halan Lopes
Exemplo:
no formulario tem um campo "TOTAL" outro com o nome "NUMERO DE PACELAS", vamos supor que o campo "TOTAL" tenha o valor "R$100,00" e o "NUMERO DE PACELAS" seja "10"
esse valor total seja dividido em 10x ou seja 1º pacela 30 dias, 2º pacela 60dias e assim por diante atá chegar a 10º pacela, esses dados devem ser inseridos automaticamente na tabela pacelamento!
Graymalkin
E o que, exatamente, você não conseguiu fazer? Inserir um registro? Calcular o valor das parcelas? Determinar as datas de pagamento?

Abraços,

Graymalkin
Halan Lopes
inserir os registros e cada registro com a data do pagamento?
Graymalkin
QUOTE (Halan Lopes @ Sep 2 2005, 07:46 AM)
inserir os registros e cada registro com a data do pagamento?

O que você está utilizando para acessar o banco de dados? ADO, BDE, etc?

Abraços,

Graymalkin
Halan Lopes
ADO!
Halan Lopes
Alguem me ajude!!!
kartter
Vamos lá....
Como sua tabela de parcelamento está estruturada??
Seria assim....
CodigoCliente CodigoProduto NParcela Valor DtaPg
000001 000006 1 50,00 06/10/2005
000001 000006 2 52,00 06/10/2005
000001 000006 3 50,00 06/10/2005
000001 000006 4 50,00 06/10/2005
000001 000006 5 50,00 06/10/2005

Entaum vc poderia inserir estas dados via sql ou via Table.
No + simples dos casos vc poderia fazer assim

var
valor:real;
valor:=total/QtParcelas;
for i:=1 to i<=QtParcelas do
begin
TabParcelamento.insert;
TabParcelamento.fieldbyname('NParcela').asinteger:=i;
TabParcelamento.fieldbyname('Valor').asfloat:=valor;
{outros atributos da tabela}
TabParcelamento.post;
end;


Pelo q entendi eh isso q vc quer...
Qualquer coisa post de novo...
Falow
Kartter
Halan Lopes
a tabela Pedido fica da seguinte forma
CodigoPedido CodigoCliente CodigoMetodoPag Data ValorTotal
1 1 4 06/09/05 100,00
2 3 5 06/09/05 300,00

eu gostaria que ao finalizar a venda seja inserido altomaticamente na tabela parcelamento que contem os seguintes campos

CodigoPacela CodigoPedido DataVencimento ValorDaPacela Situação
1 1 06/09/05 25,00 Sim
2 1 06/10/05 25,00 Não
3 1 06/11/05 25,00 Não
4 1 06/12/05 25,00 Não
5 2 06/09/05 60,00 Sim
6 2 06/10/05 60,00 Não
7 2 06/11/05 60,00 Não
8 2 06/12/05 60,00 Não
9 2 06/01/06 60,00 Não
Halan Lopes
esse campo situação siguinifica se foi pago ou não
Halan Lopes
?
kartter
blz, eh só fazer do jeito q descrevi q funciona blz....
Halan Lopes
O Valor da Pacela eu já criei no form Pedido onde tem um campo que mostra qual o valor da pacela com essa expressão!
QUOTE
var vTotal : Real;
begin
vTotal := 0;
ADOTable2.First;
while not ADOTable2.Eof do begin
  vTotal := vTotal + ADOTable2.FieldByName('Total').Value;
  ADOTable2.Next;
end;
Edit1.Text := FormatFloat('0.00',vTotal/DBEdit3.Field.Value);

eu gotaria de aproveitar essa expressão existente para ser inserida na tabela pacelamento e que o campo DataDoVencimento seja inserido automaticamente da seguinte forma EX:
uma venda 3X
8/9/05
8/10/05
8/11/05
Halan Lopes
da forma como kartter colocou ele apenas pacelas e eu gostaria que desse a data do vencimento automaticamente apartir da data do pedido!
Halan Lopes
nessa parte
QUOTE
Edit1.Text := FormatFloat('0.00',vTotal/DBEdit3.Field.Value);

o DBEdit3.Field.Value é referente ao numero de pacelas!

ALGUEM ME AJUDE!
Halan Lopes
tem como usar o IncMonth?
Halan Lopes
AJUDEM ME!
Churc
var
data: TDateTime;
loop, count: integer;
begin
count := StrtoInt(DbEdit3.text); //adiciona a variavel o numero de parcelas
data := now; //adiciona a variavel a data do dia atual
for loop := 0 to count do
begin
blablabla.insert;
data := IncMonth(data,1); //aqui foi jogado 1 mês na data atual, então hoje é dia 10/09/2005 o valor dessa variavel ficou 10/10/2005 e vai aumentando conforme o numero de parcelas contidas no DBEdit3
aqui você continua o codigo pra inserção
end;


abraços
Halan Lopes
essa variavel data é referente ao campo DataDoVencimento?
Halan Lopes
como faço pra ele iniciar da data atual?
Halan Lopes
BLZ! CONSEGUI! Obrigado a todos que me ajudaram!
Churc
ae fera legal...
sobre iniciar a data atual tava lah

data := now

quer um dica, loop são quase sempre usados de um jeito ou de outro...
da uma lida em tutoriais q tem por ai sobre loops
porque não adianta você fazer algo automatizado, você tem que entender o que fez

abraços
Esta é uma versão simplificada de nosso conteúdo principal. Para ver a versão completa com maiores informações, formatação e imagens, por favor clique aqui.
Invision Power Board © 2001-2012 Invision Power Services, Inc.