Fórum Ajuda com Boleto #425793
08/10/2012
0
assim, tenho no meu programa, um form de cadastro de parcelas dos clientes, no caso ali tem todas as informações que são necessárias no boleto. Quando eu gerar o boleto, ele irá puxar desta tabela de parcelas os dados.
O problema que eu estou encontrando é:
na tabela eu tenho alguns campo como esses:
cli_nome
cli_codigo
par_codigo
par_numerodocumento
par_nossonumero
oque eu não estou conseguindo fazer é:
gerar o número do documento e o nosso número.
sendo que eu queria gerar o numero do documento assim:
código co cliente (par_codigo) + o nº do boleto..
exemplo:
eu tenho lá o cliente Caio que tem o código 54, e eu fiz 3 parcelas para ele
de códigos 124,125 e 126. Eu queria que o numero do documento ficasse assim 54/001, 54/002, 54/003
ele teria que contar quantas parcelas já tem dele e ir complementando pra mais tarde se eu criar mais 2 parcelas ficarem 54/004, 54/005
tem como fazer isso? estou quebrando a cabeça aqui e não ta saindo nada...
Mas de qualquer forma já agradeço! e parabéns para o fórum e pra galera aí que contribui.
Jeferson Araujo
Curtir tópico
+ 0Posts
09/10/2012
Alisson Santos
Referente a sua duvida, aconselho quando criar um arquivo parcelado fazer da seguinte forma.
fazer um for, utilizando a quantidade de parcelas e na hora de fazer a divisão pelas parcelas e gerar os numeros do documentos fazer uma concatenação com o que você quer.
Sempre que fosse fazer um novo parcelamento, era só verificar quandas parcelas tem o documento e fazer novamente a concatenação.
Gostei + 0
09/10/2012
Gilvanio Gonçalves
assim, tenho no meu programa, um form de cadastro de parcelas dos clientes, no caso ali tem todas as informações que são necessárias no boleto. Quando eu gerar o boleto, ele irá puxar desta tabela de parcelas os dados.
O problema que eu estou encontrando é:
na tabela eu tenho alguns campo como esses:
cli_nome
cli_codigo
par_codigo
par_numerodocumento
par_nossonumero
oque eu não estou conseguindo fazer é:
gerar o número do documento e o nosso número.
sendo que eu queria gerar o numero do documento assim:
código co cliente (par_codigo) + o nº do boleto..
exemplo:
eu tenho lá o cliente Caio que tem o código 54, e eu fiz 3 parcelas para ele
de códigos 124,125 e 126. Eu queria que o numero do documento ficasse assim 54/001, 54/002, 54/003
ele teria que contar quantas parcelas já tem dele e ir complementando pra mais tarde se eu criar mais 2 parcelas ficarem 54/004, 54/005
tem como fazer isso? estou quebrando a cabeça aqui e não ta saindo nada...
Mas de qualquer forma já agradeço! e parabéns para o fórum e pra galera aí que contribui.
Poste o codigo que vc esta tentando para que possamos te ajudar.
e onde vc esta usando o codigo?
se possivel os tipos deste campos, type:
cli_nome
cli_codigo
par_codigo
par_numerodocumento
par_nossonumero
qual banco de dados vc esta usando?
Gostei + 0
10/10/2012
Jeferson Araujo
o banco q to usando eh o acces..
vou postar aqui o código pra vocês darem uma olhada:
Pegando as iniciais:
Var
I: Integer;
begin
for I := 1 to Length(Valor) do
begin
if (Length(Trim(Valor[I - 1])) = 0) then
Result := Result + copy(Valor, I, 1);
end;
end;
nesse código ele está pegando os valores preenchidos e armazenando em variaiveis, aí ele faz um for para fazer o cadastro automatico das outras parcelas e no caso o numero do documento são as inicias + o numero que é a parcela... eu tenho um edit no qual o usuario informa qual o valor inicial, se ele gera 2 parcelas e coloca valor inicial 1 ele fica xxx/1 e xxx/2, se ele gerar + 2 depois deve colocar valor inicial 3 daí fica xxx/3 e xxx/4
begin
DbeDesconto.SetFocus;
DbeDeducoes.SetFocus;
DbeMora.SetFocus;
DbeAcrescimos.SetFocus;
DbeValorCobrado.SetFocus;
Btncalcular.Click;
// iniciais
iniciais := PegarInicias
(DTM.DTSParcelasClientesnome_cliente.AsString) + '/';
clientecodsolicitacao := StrToInt(DBECodigoSolicitacao.Text);
quantosmeses := StrToInt(DBEQuantosMeses.Text);
meses := StrToInt(EdtQuantosMeses.Text);
proximaparcela := StrToInt(EdtUltimaParcela.Text);
clientenomesolicitacao := DBLCodSolicitacao.Text;
Situacao := DBESituacao.Text;
datavencimento := StrToDate(DBEDataVencimento.Text);
datamora := StrToDate(DbeDataMora.Text);
DataDesconto := StrToDate(DbeDataDesconto.Text);
DataProtesto := StrToDate(DbeDataProtesto.Text);
usuario := UntLogin.FrmLogin.EdtLogin.Text;
DBGrid1.Refresh;
ValorParcela := DTM.DTSParcelasClientespar_valorparcela.AsCurrency;
Desconto := DTM.DTSParcelasClientespar_desconto.AsCurrency;
deducoes := DTM.DTSParcelasClientespar_deducoes.AsCurrency;
mora := DTM.DTSParcelasClientespar_mora.AsCurrency;
acrescimos := DTM.DTSParcelasClientespar_acrescimos.AsCurrency;
valorcobrado := DTM.DTSParcelasClientespar_valorcobrado.AsCurrency;
DTM.DTSParcelasClientes.cancel;
// meses, ultimaparcela,contador: Integer;
for contador := proximaparcela to (proximaparcela + meses - 1) do
begin
DTM.DTSParcelasClientes.Insert;
DTM.Dtsparcelasclientespar_codigosolicitacao.AsInteger :=
clientecodsolicitacao;
// datas inicio
DTM.DTSParcelasClientespar_datavencimento.AsDateTime :=
IncMonth(datavencimento, contador);
DTM.DTSParcelasClientespar_datamora.AsDateTime :=
IncMonth(datamora, contador);
DTM.DTSParcelasClientespar_datadesconto.AsDateTime :=
IncMonth(DataDesconto, contador);
DTM.DTSParcelasClientespar_dataProtesto.AsDateTime :=
IncMonth(DataProtesto, contador);
// datas fim
DTM.DTSParcelasClientespar_quantosmeses.AsInteger := quantosmeses;
DTM.DTSParcelasClientespar_valorparcela.AsCurrency := ValorParcela;
DTM.DTSParcelasClientespar_desconto.AsCurrency := Desconto;
DTM.DTSParcelasClientespar_deducoes.AsCurrency := deducoes;
DTM.DTSParcelasClientespar_mora.AsCurrency := mora;
DTM.DTSParcelasClientespar_acrescimos.AsCurrency := acrescimos;
DTM.DTSParcelasClientespar_valorcobrado.AsCurrency := ValorParcela -
Desconto - deducoes + mora + acrescimos;
DTM.DTSParcelasClientespar_situacao.AsString := Situacao;
DTM.DTSParcelasClientespar_usuario.AsString := usuario;
DTM.DTSParcelasClientespar_data_cad.AsDateTime := date;
DTM.DTSParcelasClientesnome_cliente.AsString := clientenomesolicitacao;
// aqui ele monta o numero do documento
DbeNumeroDoc.Text := iniciais + IntToStr(contador);
DTM.DTSParcelasClientes.post;
end;Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)