faxetaria

20/03/2020

0

tem como eu criar uma faixa de cartao por exemplo ponho dois tedit ai no primeiro tedit coloco o inicio por exermplo 1 e no outro o termino 10 ai quando eu clico em criar ele salvar no banco de dados a esse exemplo - > 1,2,3,4,5,6,7,8,9,10 cartões?
Lucas

Lucas

Responder

Posts

20/03/2020

Emerson Nascimento

um exemplo:
var
  i, nIni, nFim: integer;
  cString: string;
begin
  nIni := StrToIntDef(edit1.text,1);
  nFim := StrToIntDef(edit2.text,1);
  cString := '';

  if nFim > nIni then
  begin
    for i := nIni+1 to nFim-1 do
      cString := cString + ',' + IntToStr(i);
    cString := IntToStr(nIni) + cString + ',' + IntToStr(nFim);
  end
  else
    cString := IntToStr(nIni);

  ShowMessage(cString);
end;
Responder

23/03/2020

Lucas

um exemplo:
var
  i, nIni, nFim: integer;
  cString: string;
begin
  nIni := StrToIntDef(edit1.text,1);
  nFim := StrToIntDef(edit2.text,1);
  cString := '';

  if nFim > nIni then
  begin
    for i := nIni+1 to nFim-1 do
      cString := cString + ',' + IntToStr(i);
    cString := IntToStr(nIni) + cString + ',' + IntToStr(nFim);
  end
  else
    cString := IntToStr(nIni);

  ShowMessage(cString);
end;


i, nIni, nFim: integer;
cString: string;
begin
ADO_cartao.Append;

nIni := StrToIntDef(edit1.text,1);
nFim := StrToIntDef(edit2.text,1);
cString := '';

if nFim > nIni then
begin
for i := nIni+1 to nFim-1 do
begin
cString := cString + ',' + IntToStr(i);
cString := IntToStr(nIni) + cString + ',' + IntToStr(nFim);
ADO_cartao.FieldByName('CodigoDeBarras').Value := cString;
ADO_cartao.FieldByName('NUM_CARTAO').Value := cString;
ADO_cartao.FieldByName('COD_PESSOA').AsString := '';
ADO_cartao.FieldByName('DarBaixa').Value := 0;
ADO_cartao.FieldByName('Offline').Value := 0;
ADO_cartao.FieldByName('SemDigital').Value := 0;
ADO_cartao.FieldByName('EnviadoListaSemDigital').Value := 0;
ShowMessage(cString);
ADO_cartao.Post;
end;

end
else
cString := IntToStr(nIni);



end;

estou fazendo deste jetio porem no banco de dados ele esta escrevendo linha 1= 1,2,3,4,5,6
e quero que escreva
linha 1 = 1
linha 2 = 2
tipo isso entendeu
Responder

23/03/2020

Emerson Nascimento

veja se assim funciona:
	i, nIni, nFim: integer;
begin
	nIni := StrToIntDef(edit1.text,1);
	nFim := StrToIntDef(edit2.text,1);

	if nFim < nIni then
		nFim := nIni;

	for i := nIni to nFim do
	begin
		cString := IntToStr(i);
		ADO_cartao.Append;
		ADO_cartao.FieldByName('CodigoDeBarras').Value := cString;
		ADO_cartao.FieldByName('NUM_CARTAO').Value := cString;
		ADO_cartao.FieldByName('COD_PESSOA').AsString := '';
		ADO_cartao.FieldByName('DarBaixa').Value := 0;
		ADO_cartao.FieldByName('Offline').Value := 0;
		ADO_cartao.FieldByName('SemDigital').Value := 0;
		ADO_cartao.FieldByName('EnviadoListaSemDigital').Value := 0;
		ADO_cartao.Post;
		ShowMessage(cString);
	end
end;
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar