taksitli satış modulu

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
selman
Üye
Mesajlar: 664
Kayıt: 04 Ara 2003 12:06
Konum: İzmir

taksitli satış modulu

Mesaj gönderen selman »

selamun aleykum
ben taksitli satış modlu yapıyorumda ve o taksitli satış modulunu dbgridde gösteriyorum fakat tutar gibi alanlarım value olarak .ve nokta olduğundan dbgride yazdıramıyorum 1.000,00 gibi
bir çözümü var mı

Kod: Tümünü seç

var
taksit_say,i:integer;
bas_tar:TDate;
taksit:currency;
begin
datamodule1.IBDataSet13.Close;
datamodule1.IBDataSet13.SelectSQL.Clear;
datamodule1.IBDataSet13.SelectSQL.Add('select * from tsat');
datamodule1.IBDataSet13.open;

taksit:=strtocurr(nettutar.Text)/strtocurr(taksitsayisi.Text);
bas_tar:=dateedit1.Date-30;



for i:=1 to taksitsayisi.IntValue do
begin

datamodule1.IBDataSet13.Append;
datamodule1.IBDataSet13SK.AsInteger:=i;
datamodule1.IBDataSet13TARIH.AsString:=datetostr(IncMonth(bas_tar,i));
datamodule1.IBDataSet13BORC.AsFloat:=currtostr(taksit);
datamodule1.IBDataSet13.Post;
kolay gelsin bu kodlar çalışoyr tek sorun dbgridede noktaları yazdıracağım herkese iyi çalışmalar
ASE
Kıdemli Üye
Mesajlar: 518
Kayıt: 28 Ağu 2003 03:17
Konum: samsun
İletişim:

Mesaj gönderen ASE »

GRİDDE uğraşma. Dataset ten alanın display format özelliğini ###,###.##
yap. problem bitsin.....
Allah'ım!...
Yol boyunca bırakma elimi...
Düşerim sonra...


ASE YAZILIM
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Mesaj gönderen aslangeri »

s.a.
@ase ye katılıyorum.
display format alanını değiştirerek bir sürü zahmetten kurtulabilirsin.
kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Kullanıcı avatarı
huseyinert
Üye
Mesajlar: 233
Kayıt: 19 Nis 2005 06:49
Konum: Bartın

Mesaj gönderen huseyinert »

display format özelliğinde ytl olaraj görmek için şunu kullan #,##0.00 YTL
"Kula bela gelmez Hak yazmayınca,Hak bela yazmaz kul azmayınca..." MEVLANA
Kullanıcı avatarı
selman
Üye
Mesajlar: 664
Kayıt: 04 Ara 2003 12:06
Konum: İzmir

Mesaj gönderen selman »

selam
öncelikle ase ilgin için tşk.ederim fakat ben burda rznumericedit kullandım ve bu yüzden bu comp.valu dönderiyor ve kodda döngü kurarken integer tipi döngü kurluyor.yani ben bun dediğin gibi tablodan halletmem mümkün değil ya bu rznumerieditin içeriğini yani display formatını ###,###.## bu şekilde gösterdiğim zaman hata veriyo yani virgülü kabul etmiyo sorun bu
ASE
Kıdemli Üye
Mesajlar: 518
Kayıt: 28 Ağu 2003 03:17
Konum: samsun
İletişim:

Mesaj gönderen ASE »

Sanırım yanlış anladın. Editin değil alanın dataset üzerindeki display formatını değiştireceksin.
Kolay gelsin...
Allah'ım!...
Yol boyunca bırakma elimi...
Düşerim sonra...


ASE YAZILIM
Kullanıcı avatarı
selman
Üye
Mesajlar: 664
Kayıt: 04 Ara 2003 12:06
Konum: İzmir

Mesaj gönderen selman »

selam
şimdi tm dediğiniz displayformat alanını biliyorum o tabloyla alakalı fakat editte nasıl göstercezki displayformatı
Kullanıcı avatarı
kadirkurtoglu
Üye
Mesajlar: 748
Kayıt: 22 May 2005 01:20
Konum: Uzakta Görünen Tepeden...

Mesaj gönderen kadirkurtoglu »

Kod: Tümünü seç

Edit1.Text := FormatFloat('#,##0.00', ibdataset1tutar.asfloat);
Bir mum, yanındaki mumları tutuşturmakla,
ışığında hiç bir şey kaybetmez.

Mevlana

OS win.10, IDE Delphi 10.3, RDBMS Firebird and MSSQL, BROWSER Chrome
Kullanıcı avatarı
selman
Üye
Mesajlar: 664
Kayıt: 04 Ara 2003 12:06
Konum: İzmir

Mesaj gönderen selman »

selam
arkadaşlar herkes için tşk ederrim
sonumu çzödüm ve taksitli satış modulünü yaptık sonun da
belki başkasına yaralı olabilir düşüncesiyle buraya koyuyorum
Taksitli Satış Modulü:

Kod: Tümünü seç

unit Unit47;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, SUIImagePanel, StdCtrls, Mask, RzEdit, Buttons,
  ComCtrls, Grids, DBGrids, RzDBGrid, SUIButton, RzButton, RzRadChk,
  RzPanel, RzLabel, RzBtnEdt, RzLstBox, ToolEdit,DateUtils, XPMan, DBCtrls,
  RzDBEdit;

type
  Ttsat = class(TForm)
    suiPanel1: TsuiPanel;
    Label8: TLabel;
    Label9: TLabel;
    RzButtonEdit1: TRzButtonEdit;
    RzButtonEdit2: TRzButtonEdit;
    Bevel1: TBevel;
    Bevel2: TBevel;
    RzLabel1: TRzLabel;
    Tutar: TRzNumericEdit;
    RzLabel2: TRzLabel;
    Pesinat: TRzNumericEdit;
    RzLabel3: TRzLabel;
    Vadefarki: TRzNumericEdit;
    RzLabel4: TRzLabel;
    Taksitsayisi: TRzNumericEdit;
    RzGroupBox1: TRzGroupBox;
    RzRadioButton1: TRzRadioButton;
    fark: TRzNumericEdit;
    RzRadioButton2: TRzRadioButton;
    RzLabel5: TRzLabel;
    Bevel3: TBevel;
    RzLabel6: TRzLabel;
    Nettutar: TRzNumericEdit;
    Bevel4: TBevel;
    Bevel5: TBevel;
    suiButton1: TsuiButton;
    suiButton2: TsuiButton;
    suiButton3: TsuiButton;
    Bevel6: TBevel;
    Bevel7: TBevel;
    DateEdit1: TDateEdit;
    RzDBGrid1: TRzDBGrid;
    XPManifest1: TXPManifest;
    Label1: TLabel;
    RzDBMemo1: TRzDBMemo;
    borc: TRzDBEdit;
    procedure suiButton3Click(Sender: TObject);
    procedure RzButtonEdit1ButtonClick(Sender: TObject);
    procedure suiButton1Click(Sender: TObject);
    procedure TutarKeyPress(Sender: TObject; var Key: Char);
    procedure PesinatKeyPress(Sender: TObject; var Key: Char);
    procedure VadefarkiKeyPress(Sender: TObject; var Key: Char);
    procedure farkKeyPress(Sender: TObject; var Key: Char);
    procedure TaksitsayisiKeyPress(Sender: TObject; var Key: Char);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure DateEdit1KeyPress(Sender: TObject; var Key: Char);
    procedure suiButton2Click(Sender: TObject);
    procedure VadefarkiExit(Sender: TObject);
    procedure RzRadioButton1Click(Sender: TObject);
    procedure RzRadioButton2Click(Sender: TObject);
    procedure PesinatExit(Sender: TObject);
    procedure RzDBGrid1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure RzDBGrid1ColEnter(Sender: TObject);
    procedure RzDBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
      DataCol: Integer; Column: TColumn; State: TGridDrawState);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  tsat: Ttsat;

implementation

uses Unit9, Unit1, Unit49;
Function GunSAY(
  DateValue    : TDateTime;
  DateMovement : Integer): TDateTime;
Begin
  Result := DateValue + DateMovement;
End;

     function Taksitlendir(Sayi : Extended ;
                      TaksitAdedi : Integer;
                      var Result_Taksit : Extended;
                      var Result_Artan  : Extended;
                      Yuvarlama : Integer = 0): boolean;
var
   sTaksit : String;
 i, Digits : Integer;

 begin

     result:=False;
     if (TaksitAdedi=0) then exit;
     Result_Taksit:=Sayi / TaksitAdedi;

     sTaksit:=FloatToStrF(Result_Taksit, ffFixed, 18, 0);
     if Length(sTaksit) - Yuvarlama < 1 then exit;

     SetLength(sTaksit, length(sTaksit) - Yuvarlama);
     sTaksit:=sTaksit + StringOfChar('0', Yuvarlama);

     Result_Taksit:=StrToFloat(sTaksit);
     Result_Artan:=Sayi - (Result_Taksit * TaksitAdedi);
     result:=True;
end;
{$R *.dfm}

procedure Ttsat.suiButton3Click(Sender: TObject);
begin
close;
end;

procedure Ttsat.RzButtonEdit1ButtonClick(Sender: TObject);
begin
cara1.show;
end;

procedure Ttsat.suiButton1Click(Sender: TObject);
var
taksit_say,i:integer;
bas_tar:Tdatetime;
taksit:currency;
begin
if tsat.RzRadioButton2.Checked=true then begin
datamodule1.IBDataSet13.Close;
datamodule1.IBDataSet13.SelectSQL.Clear;
datamodule1.IBDataSet13.SelectSQL.Add('select * from tsat');
datamodule1.IBDataSet13.open;

taksit:=strtocurr(nettutar.Text)/strtocurr(taksitsayisi.Text);
bas_tar:=dateedit1.Date-30;



for i:=1 to taksitsayisi.IntValue do
begin
datamodule1.IBDataSet2.Edit;
datamodule1.IBDataSet13.Append;
datamodule1.IBDataSet13SK.AsInteger:=i;
datamodule1.IBDataSet13TARIH.AsString:=datetostr(IncMonth(bas_tar,i));
datamodule1.IBDataSet13ACIKLAMA.AsString:=tsat.RzDBMemo1.Text;
datamodule1.IBDataSet13BORC.AsString:=currtostr(taksit);
datamodule1.IBDataSet13.Post;
 end;
 end
 else
 if tsat.RzRadioButton1.Checked=true then begin

datamodule1.IBDataSet13.Close;
datamodule1.IBDataSet13.SelectSQL.Clear;
datamodule1.IBDataSet13.SelectSQL.Add('select * from tsat');
datamodule1.IBDataSet13.open;
taksit:=strtocurr(nettutar.Text)/strtocurr(taksitsayisi.Text);
bas_tar:=Dateedit1.Date;
taksit_say:=strtoint(taksitsayisi.Text);


for i:=1 to taksit_say do
begin

datamodule1.IBDataSet13.Append;
datamodule1.IBDataSet13SK.AsInteger:=i;
datamodule1.IBDataSet13TARIH.AsString:=datetostr(GUNSAY(bas_tar,STRTOINT(fark.Text)));
datamodule1.IBDataSet13ACIKLAMA.AsString:=tsat.RzDBMemo1.Lines.DelimitedText;
datamodule1.IBDataSet13BORC.AsString:=currtostr(taksit);
datamodule1.IBDataSet13.Post;
BAS_TAR:=BAS_TAR+STRTOINT(FARK.Text);
 datamodule1.ibquery23.Close;
datamodule1.IBQuery23.Open;
 end;

end;
end;
procedure Ttsat.TutarKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then begin
Pesinat.SetFocus;
end;
end;

procedure Ttsat.PesinatKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then begin
Vadefarki.SetFocus;
end;
end;

procedure Ttsat.VadefarkiKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then begin
Taksitsayisi.SetFocus;
end;
end;

procedure Ttsat.farkKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then begin
dateedit1.SetFocus;
end;
end;

procedure Ttsat.TaksitsayisiKeyPress(Sender: TObject; var Key: Char);
begin
   if key=#13 then begin
dateedit1.SetFocus;
end;
end;

procedure Ttsat.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Rzbuttonedit1.Clear;
Rzbuttonedit2.Clear;
tutar.Clear;
pesinat.Clear;
vadefarki.Clear;
taksitsayisi.Clear;
Nettutar.Clear;
datamodule1.IBQuery20.ExecSQL;
datamodule1.IBDataSet13.Close;
datamodule1.IBDataSet13.SelectSQL.Clear;
datamodule1.IBDataSet13.SelectSQL.Add('select* from TSAT');
datamodule1.IBDataSet13.Open;

end;

procedure Ttsat.DateEdit1KeyPress(Sender: TObject; var Key: Char);
begin
 if key=#13 then begin
suibutton1.SetFocus;
end;
end;

procedure Ttsat.suiButton2Click(Sender: TObject);
begin
datamodule1.IBDataSet13.First;
while not datamodule1.IBDataSet13.Eof do begin
 datamodule1.IBDataSet2.Edit;
 datamodule1.IBDataSet2.FieldByName('SN').AsString:='Tak'+ '-' +datamodule1.IBDataSet13.fieldbyname('SK').AsString;
datamodule1.IBDataSet2.FieldByName('VTarih').AsString:=datamodule1.IBDataSet13.fieldbyname('tarih').AsString;
datamodule1.IBDataSet2.FieldByName('ACIKLAMA').AsString:=datamodule1.IBDataSet13.fieldbyname('ACIKLAMA').AsString;
datamodule1.IBDataSet2.FieldByName('Miktar').Value:=1;
datamodule1.IBDataSet2.FieldByName('Fiyat').AsString:=datamodule1.IBDataSet13.fieldbyname('borc').AsString;
datamodule1.IBDataSet2.FieldByName('tutar').AsString:=datamodule1.IBDataSet13.fieldbyname('borc').AsString;
datamodule1.IBDataSet2.FieldByName('nettutar').AsString:=datamodule1.IBDataSet13.fieldbyname('borc').AsString;
datamodule1.IBDataSet2.FieldByName('kdvnettutar').AsString:=datamodule1.IBDataSet13.fieldbyname('borc').AsString;
 datamodule1.IBDataSet2.Edit;
datamodule1.IBDataSet2.fieldbyname('CGRUP').AsString:=datamodule1.IBDataSet1.fieldbyname('CGRUP').AsString;
datamodule1.IBDataSet2BAKIYE.AsFloat:=datamodule1.IBDataSet2KDVNETTUTAR.AsFloat-datamodule1.IBDataSet2ODENEN.AsFloat;
datamodule1.IBDataSet2.Append;
datamodule1.IBQuery1.Close;
datamodule1.IBQuery1.Open;
datamodule1.IBQuery2.Close;
datamodule1.IBQuery2.Open;
datamodule1.IBQuery3.Close;
datamodule1.IBQuery3.Open;

 
datamodule1.IBDataSet2.Post;
datamodule1.IBDataSet13.Next;
end;
end;

procedure Ttsat.VadefarkiExit(Sender: TObject);

begin
nettutar.Value:=((tutar.Value-pesinat.Value)*vadefarki.Value/100)+(tutar.Value-pesinat.Value);
end;

procedure Ttsat.RzRadioButton1Click(Sender: TObject);
begin
fark.visible:=true;
end;

procedure Ttsat.RzRadioButton2Click(Sender: TObject);
begin
fark.visible:=false;
end;

procedure Ttsat.PesinatExit(Sender: TObject);
begin
nettutar.Value:=tutar.Value-pesinat.Value;
end;

procedure Ttsat.RzDBGrid1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
if (Key = VK_DOWN)  then
begin
 datamodule1.ibquery23.Close;
datamodule1.IBQuery23.Open;
end;
end;

procedure Ttsat.RzDBGrid1ColEnter(Sender: TObject);
begin
   datamodule1.ibquery23.Close;
datamodule1.IBQuery23.Open;
end;

procedure Ttsat.RzDBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
  DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
   datamodule1.ibquery23.Close;
datamodule1.IBQuery23.Open;
end;
Cevapla