vt Kaydetme sorunu

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Tahsinzencir
Üye
Mesajlar: 46
Kayıt: 15 May 2009 12:16

vt Kaydetme sorunu

Mesaj gönderen Tahsinzencir »

selamünaleyküm değerli dostlar, aşağıda ki kaydet procedure de numaralandırdığım satırlar veri tabanına kayıt işlemini gerçekleştirmiyor diğer satırların hepsi kayıt işlemini gerçekleştiriyor bir türlü çözemedim. yardım ederseniz minnettar kalırım.

Kod: Tümünü seç

procedure TFHareket.KaydetClick(Sender: TObject);
begin
  if trim(E4.text)='' then
begin
  Application.MessageBox('Hesap Tipi  Seçiniz !                   ' ,  'Dikkat !!!',mb_ok+mb_iconstop);
  Exit;   //veya Abort;
  end;

begin
  if trim(E5.text)='' then
Begin
  Application.MessageBox('Hesap tanımı  Seçiniz !                   ' ,  'Dikkat !!!',mb_ok+mb_iconstop);
  Exit;   //veya Abort;
  end;

begin
  if trim(E10.text)='' then
begin
  Application.MessageBox('Tutar Değeri Hatalı !                   ' ,  'Dikkat !!!',mb_ok+mb_iconstop);
  Exit;   //veya Abort;
  end;
end;

  DMSProj.TSHareket.Refresh();
  DMSProj.TSHareket.Append;
  DMSProj.TSHareket.Edit;
  DMSProj.TSHareketTarih.AsDateTime:=E1.Date;
  DMSProj.TSHareketEvrak.AsString:=E2.Text;
  DMSProj.TSHareketVTarih.AsDateTime:=E3.Date;
  DMSProj.TSHareketHTip.AsString:=E4.Text;


   if  DMSProj.TSHareketHTip.AsString='Şantiye' Then
  DMSProj.TSHareketBaSan.AsString:=E5.Text;
  DMSProj.TSHareketHTanim.AsString:=E5.Text;

   if  DMSProj.TSHareketHTip.AsString='Şantiye' Then
  DMSProj.TSHareketHarTip.AsString:=E6.Text;

   if  DMSProj.TSHareketHTip.AsString='Taşeron' Then
  DMSProj.TSHareketHarTip.AsString:=E6.Text;

   if  DMSProj.TSHareketHTip.AsString='Personel' Then
  DMSProj.TSHareketHarTip.AsString:=E12.Text;

   if  DMSProj.TSHareketHTip.AsString='Taşeron' Then
  DMSProj.TSHareketBaSan.AsString:=E16.Text;

   if  DMSProj.TSHareketHTip.AsString='Personel' Then
  DMSProj.TSHareketBaSan.AsString:=E16.Text;

[b]1 -   if  DMSProj.TSHareketHTip.AsString='Cari Hesaplar' Then
  DMSProj.TSHareketHarTip.AsString:=E12.Text;[/b]

[b]2-   if  DMSProj.TSHareketHTip.AsString='Cari Hesaplar' Then
  DMSProj.TSHareketBaSan.AsString:=E16.Text;[/b]

  DMSProj.TSHareketKTanim.AsString:=E7.Text;
  DMSProj.TSHareketBank.AsString:=E8.Text;
  DMSProj.TSHareketPort.AsString:=E9.Text;
  DMSProj.TSHareketTutar.AsString:=E10.Text;
  DMSProj.TSHareketHGurup.AsString:=E17.Text;
  DMSProj.TSHareketAcik.AsString:=E18.Text;
  DMSProj.TSHareketAvans.AsString:=E19.Text;
  DMSProj.TSHareketDurum.AsString:=E11.Text;
  DMSProj.TSHareketOdenecek.AsString:=E20.Text;
  DMSProj.TSHareketHKodu.AsString:=E24.Text;

    if  DMSProj.TSHareketHarTip.AsString='Tahsilat' Then
  DMSProj.TSHareketAlacak.AsString:=E10.Text;

    if  DMSProj.TSHareketHarTip.AsString='Çek Girişi' Then
  DMSProj.TSHareketAlacak.AsString:=E10.Text;

    if  DMSProj.TSHareketHarTip.AsString='Alacak' Then
  DMSProj.TSHareketAlacak.AsString:=E10.Text;

    if  DMSProj.TSHareketHarTip.AsString='Çek Çıkış Firma' Then
  DMSProj.TSHareketBorc.AsString:=E10.Text;

    if  DMSProj.TSHareketHarTip.AsString='Çek Çıkış Ciro' Then
  DMSProj.TSHareketBorc.AsString:=E10.Text;

    if  DMSProj.TSHareketHarTip.AsString='Borç' Then
  DMSProj.TSHareketBorc.AsString:=E10.Text;

    if  DMSProj.TSHareketHarTip.AsString='Ödeme' Then
  DMSProj.TSHareketBorc.AsString:=E10.Text;

  DMSProj.TSHareket.Post;
  DMSProj.THark.Refresh();
  Kaydet.Enabled:=False;
  DMSProj.QPortfoy.Close;
  DMSProj.QPortfoy.Open;

  DMSProj.THark.Edit;
  DMSProj.THarkNo.AsString:=Har3.Text;
  DMSProj.THark.Post;
end;



birde formdaki diyer kodların tamamını vereyim
bu arada Delphi7 vt paradoks kullanıyorum

Kod: Tümünü seç

unit USPHar;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, sSkinProvider, sSkinManager, StdCtrls, DBCtrls, RzEdit, Mask,
  sLabel, RzTabs, Buttons, sBitBtn, RzPanel, ExtCtrls, sPanel, RzLine,
  RzSpnEdt, Grids, DBGrids, RzDBCmbo, RzCmboBx, RzBorder, ComCtrls, RzDTP,
  sComboBox, LMDThemedComboBox, LMDCustomComboBox, LMDComboBox;

type
  TFHareket = class(TForm)
    RzPanel1: TRzPanel;
    sPanel10: TsPanel;
    RzSpacer39: TRzSpacer;
    RzSpacer41: TRzSpacer;
    RzSpacer42: TRzSpacer;
    RzSpacer2: TRzSpacer;
    RzSpacer3: TRzSpacer;
    SPYeni: TsBitBtn;
    Kaydet: TsBitBtn;
    sBitBtn39: TsBitBtn;
    sBitBtn40: TsBitBtn;
    RzPageControl1: TRzPageControl;
    TabSheet2: TRzTabSheet;
    sWebLabel1: TsWebLabel;
    sWebLabel2: TsWebLabel;
    sWebLabel3: TsWebLabel;
    sWebLabel6: TsWebLabel;
    sWebLabel7: TsWebLabel;
    sWebLabel8: TsWebLabel;
    sWebLabel10: TsWebLabel;
    E2: TRzEdit;
    E10: TRzEdit;
    Har1: TEdit;
    Har3: TDBEdit;
    Har2: TEdit;
    sSkinManager1: TsSkinManager;
    sSkinProvider1: TsSkinProvider;
    sWebLabel11: TsWebLabel;
    sWebLabel12: TsWebLabel;
    L7: TsWebLabel;
    L8: TsWebLabel;
    L9: TsWebLabel;
    E17: TComboBox;
    RzLine1: TRzLine;
    RzLine2: TRzLine;
    RzLine3: TRzLine;
    sWebLabel15: TsWebLabel;
    E18: TRzMemo;
    E19: TEdit;
    E20: TEdit;
    L11: TsWebLabel;
    E21: TRzEdit;
    E22: TRzEdit;
    E23: TRzEdit;
    E24: TDBEdit;
    RzPanel2: TRzPanel;
    Grid1: TDBGrid;
    RzBorder1: TRzBorder;
    RzBorder2: TRzBorder;
    RzBorder3: TRzBorder;
    RzBorder4: TRzBorder;
    RzBorder5: TRzBorder;
    E1: TDateTimePicker;
    E3: TDateTimePicker;
    DKaydet: TsBitBtn;
    E25: TEdit;
    E26: TEdit;
    E27: TEdit;
    E35: TEdit;
    E4: TRzComboBox;
    E5: TRzComboBox;
    E6: TRzComboBox;
    E12: TRzComboBox;
    E7: TRzComboBox;
    E8: TRzComboBox;
    E9: TRzComboBox;
    E11: TRzComboBox;
    E16: TRzComboBox;
    procedure FormCreate(Sender: TObject);
    procedure SPYeniClick(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure KaydetClick(Sender: TObject);
    procedure sBitBtn40Click(Sender: TObject);
    procedure E17Enter(Sender: TObject);
    procedure DKaydetClick(Sender: TObject);
    procedure Grid1DblClick(Sender: TObject);
    procedure E4Click(Sender: TObject);
    procedure E6Click(Sender: TObject);
    procedure E12Click(Sender: TObject);
    procedure E6Exit(Sender: TObject);
    procedure E7Exit(Sender: TObject);
    procedure E7Enter(Sender: TObject);
    procedure E8Enter(Sender: TObject);
    procedure E8Exit(Sender: TObject);
    procedure E9Enter(Sender: TObject);
    procedure E11Exit(Sender: TObject);
    procedure E16Enter(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  FHareket: TFHareket;

implementation
 Uses USProj, UHLis, Unit1, Math, UDMTanim, UPer_Hareket,UHGurupT, USanExtre,
 USatiye,UProje_Hareket,UTedarikci;
{$R *.dfm}

procedure TFHareket.FormCreate(Sender: TObject);
begin
L7.Visible:=False;
E7.Visible:=False;
L8.Visible:=False;
E8.Visible:=False;
L9.Visible:=False;
E9.Visible:=False;
L11.Visible:=False;
E11.Visible:=False;
Grid1.Visible:=False;
E1.Enabled:=False;
E3.Enabled:=False;
E4.Enabled:=False;
E5.Enabled:=False;
E6.Enabled:=False;
E10.Enabled:=False;
E16.Enabled:=False;
E17.Enabled:=False;
E18.Enabled:=False;
Kaydet.Enabled:=False;

end;

procedure TFHareket.SPYeniClick(Sender: TObject);
var
   aktar:AnsiString;
begin
   E1.Enabled:=True;
   E3.Enabled:=True;
   E4.Enabled:=True;
   E5.Enabled:=True;
   E6.Enabled:=True;
   E10.Enabled:=True;
   E16.Enabled:=True;
   E17.Enabled:=True;
   E18.Enabled:=True;
   Kaydet.Enabled:=True;
   E4.SetFocus;

begin
   E5.Clear;
   E6.Clear;
   E7.Clear;
   E8.Clear;
   E9.Clear;
   E10.Clear;
   E16.Clear;
   E17.Clear;
   E18.Clear;
  if Har2.Text = '' then
   DMSProj.THarkNo.Text:= '';
   DMSProj.THark.Edit;
   DMSProj.THarkNo.Text:=IntToStr(StrToInt(DMSProj.THarkNo.Text)+1);
   Har3.Text:= DMSProj.THarkNo.Text;
   aktar:=(Har1.Text)+' '+(Har3.Text);
   E2.Text:=aktar;
   Kaydet.BringToFront
end;
 end;

procedure TFHareket.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
FHareket:= nil; //++
end;

procedure TFHareket.KaydetClick(Sender: TObject);
begin
  if trim(E4.text)='' then
begin
  Application.MessageBox('Hesap Tipi  Seçiniz !                   ' ,  'Dikkat !!!',mb_ok+mb_iconstop);
  Exit;   //veya Abort;
  end;

begin
  if trim(E5.text)='' then
Begin
  Application.MessageBox('Hesap tanımı  Seçiniz !                   ' ,  'Dikkat !!!',mb_ok+mb_iconstop);
  Exit;   //veya Abort;
  end;

begin
  if trim(E10.text)='' then
begin
  Application.MessageBox('Tutar Değeri Hatalı !                   ' ,  'Dikkat !!!',mb_ok+mb_iconstop);
  Exit;   //veya Abort;
  end;
end;

  DMSProj.TSHareket.Refresh();
  DMSProj.TSHareket.Append;
  DMSProj.TSHareket.Edit;
  DMSProj.TSHareketTarih.AsDateTime:=E1.Date;
  DMSProj.TSHareketEvrak.AsString:=E2.Text;
  DMSProj.TSHareketVTarih.AsDateTime:=E3.Date;
  DMSProj.TSHareketHTip.AsString:=E4.Text;


   if  DMSProj.TSHareketHTip.AsString='Şantiye' Then
  DMSProj.TSHareketBaSan.AsString:=E5.Text;
  DMSProj.TSHareketHTanim.AsString:=E5.Text;

   if  DMSProj.TSHareketHTip.AsString='Şantiye' Then
  DMSProj.TSHareketHarTip.AsString:=E6.Text;

   if  DMSProj.TSHareketHTip.AsString='Taşeron' Then
  DMSProj.TSHareketHarTip.AsString:=E6.Text;

   if  DMSProj.TSHareketHTip.AsString='Personel' Then
  DMSProj.TSHareketHarTip.AsString:=E12.Text;

   if  DMSProj.TSHareketHTip.AsString='Taşeron' Then
  DMSProj.TSHareketBaSan.AsString:=E16.Text;

   if  DMSProj.TSHareketHTip.AsString='Personel' Then
  DMSProj.TSHareketBaSan.AsString:=E16.Text;

   if  DMSProj.TSHareketHTip.AsString='Cari Hesaplar' Then
  DMSProj.TSHareketHarTip.AsString:=E12.Text;

   if  DMSProj.TSHareketHTip.AsString='Cari Hesaplar' Then
  DMSProj.TSHareketBaSan.AsString:=E16.Text;

  DMSProj.TSHareketKTanim.AsString:=E7.Text;
  DMSProj.TSHareketBank.AsString:=E8.Text;
  DMSProj.TSHareketPort.AsString:=E9.Text;
  DMSProj.TSHareketTutar.AsString:=E10.Text;
  DMSProj.TSHareketHGurup.AsString:=E17.Text;
  DMSProj.TSHareketAcik.AsString:=E18.Text;
  DMSProj.TSHareketAvans.AsString:=E19.Text;
  DMSProj.TSHareketDurum.AsString:=E11.Text;
  DMSProj.TSHareketOdenecek.AsString:=E20.Text;
  DMSProj.TSHareketHKodu.AsString:=E24.Text;

    if  DMSProj.TSHareketHarTip.AsString='Tahsilat' Then
  DMSProj.TSHareketAlacak.AsString:=E10.Text;

    if  DMSProj.TSHareketHarTip.AsString='Çek Girişi' Then
  DMSProj.TSHareketAlacak.AsString:=E10.Text;

    if  DMSProj.TSHareketHarTip.AsString='Alacak' Then
  DMSProj.TSHareketAlacak.AsString:=E10.Text;

    if  DMSProj.TSHareketHarTip.AsString='Çek Çıkış Firma' Then
  DMSProj.TSHareketBorc.AsString:=E10.Text;

    if  DMSProj.TSHareketHarTip.AsString='Çek Çıkış Ciro' Then
  DMSProj.TSHareketBorc.AsString:=E10.Text;

    if  DMSProj.TSHareketHarTip.AsString='Borç' Then
  DMSProj.TSHareketBorc.AsString:=E10.Text;

    if  DMSProj.TSHareketHarTip.AsString='Ödeme' Then
  DMSProj.TSHareketBorc.AsString:=E10.Text;

  DMSProj.TSHareket.Post;
  DMSProj.THark.Refresh();
  Kaydet.Enabled:=False;
  DMSProj.QPortfoy.Close;
  DMSProj.QPortfoy.Open;

  DMSProj.THark.Edit;
  DMSProj.THarkNo.AsString:=Har3.Text;
  DMSProj.THark.Post;
end;
 end;

procedure TFHareket.sBitBtn40Click(Sender: TObject);
begin
Close;
end;

procedure TFHareket.E17Enter(Sender: TObject);
begin
E17.Items.Clear;
DMSProj.THGTanim.Refresh();
DMSProj.THGTanim.First;
while not DMSProj.THGTanim.Eof do
begin
E17.Items.Add(DMSProj.THGTanim.FieldByName('HGTanim').AsString);
DMSProj.THGTanim.Next;
end
end;

procedure TFHareket.DKaydetClick(Sender: TObject);
begin
DMSProj.TSHareket.Refresh();
  DMSProj.TSHareket.Edit;
  DMSProj.TSHareketTarih.AsDateTime:=E1.Date;
  DMSProj.TSHareketEvrak.AsString:=E2.Text;
  DMSProj.TSHareketVTarih.AsDateTime:=E3.Date;
  DMSProj.TSHareketHTip.AsString:=E4.Text;
    if  DMSProj.TSHareketHTip.AsString='Şantiye' Then
  DMSProj.TSHareketHTanim.AsString:=E5.Text;
    if  DMSProj.TSHareketHTip.AsString='Şantiye' Then
  DMSProj.TSHareketHarTip.AsString:=E6.Text;
    if  DMSProj.TSHareketHTip.AsString='Taşeron' Then
  DMSProj.TSHareketHarTip.AsString:=E6.Text;
    if  DMSProj.TSHareketHTip.AsString='Personel' Then
  DMSProj.TSHareketHarTip.AsString:=E12.Text;
    if  DMSProj.TSHareketHTip.AsString='Cari Hesaplar' Then
  DMSProj.TSHareketHarTip.AsString:=E12.Text;
  DMSProj.TSHareketKTanim.AsString:=E7.Text;
  DMSProj.TSHareketBank.AsString:=E8.Text;
  DMSProj.TSHareketPort.AsString:=E9.Text;
  DMSProj.TSHareketTutar.AsString:=E10.Text;
    DMSProj.TSHareketBaSan.AsString:=E16.Text;
  if  DMSProj.TSHareketHTip.AsString='Taşeron' Then
  DMSProj.TSHareketBaSan.AsString:=E16.Text;
  if  DMSProj.TSHareketHTip.AsString='Cari Hesaplar' Then
  DMSProj.TSHareketBaSan.AsString:=E16.Text;
  DMSProj.TSHareketHGurup.AsString:=E17.Text;
  DMSProj.TSHareketAcik.AsString:=E18.Text;
  DMSProj.TSHareketAvans.AsString:=E19.Text;
  DMSProj.TSHareketDurum.AsString:=E11.Text;
  DMSProj.TSHareketOdenecek.AsString:=E20.Text;
  DMSProj.TSHareketHKodu.AsString:=E24.Text;
    if  DMSProj.TSHareketHarTip.AsString='Tahsilat' Then
  DMSProj.TSHareketAlacak.AsString:=E10.Text;
    if  DMSProj.TSHareketHarTip.AsString='Çek Girişi' Then
  DMSProj.TSHareketAlacak.AsString:=E10.Text;
    if  DMSProj.TSHareketHarTip.AsString='Alacak' Then
  DMSProj.TSHareketAlacak.AsString:=E10.Text;
    if  DMSProj.TSHareketHarTip.AsString='Çek Çıkış Firma' Then
  DMSProj.TSHareketBorc.AsString:=E10.Text;
    if  DMSProj.TSHareketHarTip.AsString='Çek Çıkış Ciro' Then
  DMSProj.TSHareketBorc.AsString:=E10.Text;
    if  DMSProj.TSHareketHarTip.AsString='Borç' Then
  DMSProj.TSHareketBorc.AsString:=E10.Text;
    if  DMSProj.TSHareketHarTip.AsString='Ödeme' Then
  DMSProj.TSHareketBorc.AsString:=E10.Text;
  DMSProj.TSHareket.Post;
  DMSProj.TSHareket.Refresh();

  DMSProj.THark.Refresh();
  DMSProj.THark.Edit;
  DMSProj.THarkNo.AsString:=Har3.Text;
  DMSProj.THark.Post;
  DMSProj.THark.Refresh();

end;

procedure TFHareket.Grid1DblClick(Sender: TObject);
begin
  DMSProj.QPortfoy.Refresh();
  DMSProj.TSHareket.Edit;
  E9.Text:=Grid1.Columns.Grid.Fields[0].Text;
  E10.Text:=Grid1.Columns.Grid.Fields[4].Text;
  E21.Text:=Grid1.Columns.Grid.Fields[0].Text;
  E22.Text:=Grid1.Columns.Grid.Fields[2].Text;
  Grid1.Visible:=False;

  E11.Enabled:=True;
  DMSProj.QPortfoy.Close;
  DMSProj.QPortfoy.Open;

  begin
  DMSProj.TSHareket.Edit;
  if DMSProj.TSHareketHarTip.AsString='Çek Girişi' Then
  DMSProj.TSHareketDurum.AsString:=E11.Text;
  end;
    end;


procedure TFHareket.E4Click(Sender: TObject);
begin
  E6.BringToFront;
  if E4.ItemIndex=0 Then
Begin
  E5.Items.Clear;
  DMSProj.TPro.Refresh();
  DMSProj.TPro.First;
  while not DMSProj.TPro.Eof do
begin
  E5.Items.Add(DMSProj.TPro.FieldByName('Tanim').AsString);
  DMSProj.TPro.Next
end;
end
Else
begin
  E6.BringToFront;
  if E4.ItemIndex=1 Then
Begin
  E5.Items.Clear;
  DMSProj.TTaseron.Refresh();
  DMSProj.TTaseron.First;
  while not DMSProj.TTaseron.Eof do
begin
  E5.Items.Add(DMSProj.TTaseron.FieldByName('Tanim').AsString);
  DMSProj.TTaseron.Next;
end;
end
Else
begin
  E12.BringToFront;
  if E4.ItemIndex=2 Then
Begin
  E5.Items.Clear;
  DMSProj.TPersonel.Refresh();
  DMSProj.TPersonel.First;
  while not DMSProj.TPersonel.Eof do
begin
  E5.Items.Add(DMSProj.TPersonel.FieldByName('Tanim').AsString);
  DMSProj.TPersonel.Next;
end;
end
Else
begin
  E12.BringToFront;
  if E4.ItemIndex=3 Then
Begin
  E5.Items.Clear;
  DMSProj.TTedarikci.Refresh();
  DMSProj.TTedarikci.First;
  while not DMSProj.TTedarikci.Eof do
begin
  E5.Items.Add(DMSProj.TTedarikci.FieldByName('Tanim').AsString);
  DMSProj.TTedarikci.Next;
end;
 end;
  end
   end;
    end;
  if E4.ItemIndex=0 then
begin
  E16.Enabled:=False;
end;
  if E4.ItemIndex=1 then
begin
  E16.Enabled:=True;
end;
  if E4.ItemIndex=2 then
begin
  E16.Enabled:=True;
end;
  if E4.ItemIndex=3 then
begin
  E16.Enabled:=True;
end;
Begin
   if E4.ItemIndex=0 then
Begin    //Şantiye
   E6.Items.Clear;
   E6.Items.Add('Tahsilat');
   E6.Items.Add('Ödeme');
   E6.Items.Add('Alacak');
   E6.Items.Add('Çek Girişi');
   E6.Items.Add('Çek Çıkış Firma');
   E6.Items.Add('Çek Çıkış Ciro')
   end
   Else
begin
   if E4.ItemIndex=1 then  //Taşeron
begin
   E6.Items.Clear;
   E6.Items.Add('Tahsilat');
   E6.Items.Add('Ödeme');
   E6.Items.Add('Borç');
   E6.Items.Add('Çek Girişi');
   E6.Items.Add('Çek Çıkış Firma');
   E6.Items.Add('Çek Çıkış Ciro')
   end
   Else
begin
   if E4.ItemIndex=2 then             //Personel
begin
   E12.Items.Clear;
   E12.Items.Add('Tahsilat');
   E12.Items.Add('Ödeme');
   E12.Items.Add('Borç');
   E12.Items.Add('Alacak');
   E12.Items.Add('Çek Girişi');
   E12.Items.Add('Çek Çıkış Firma');
   E12.Items.Add('Çek Çıkış Ciro')
   end
   Else
begin
   if E4.ItemIndex=3 then        // Cari Hesaplar
   E12.Items.Clear;
   E12.Items.Add('Tahsilat');
   E12.Items.Add('Ödeme');
   E12.Items.Add('Borç');
   E12.Items.Add('Alacak');
   E12.Items.Add('Çek Girişi');
   E12.Items.Add('Çek Çıkış Firma');
   E12.Items.Add('Çek Çıkış Ciro')

end;
 end;
  end;
   end;

end;

procedure TFHareket.E6Click(Sender: TObject);
begin
   if E6.ItemIndex=0 then
begin                                
   L7.Visible:=True;                 
   E7.Visible:=True;                 
   L8.Visible:=False;                
   E8.Visible:=False;                
   L9.Visible:=False;                
   E9.Visible:=False;
   L11.Visible:=False;               
   E11.Visible:=False;
   end                               
   else                              

begin                                
if E6.ItemIndex=1 then               
begin                                
   L7.Visible:=True;                 
   E7.Visible:=True;                 
   L8.Visible:=False;                
   E8.Visible:=False;                
   L9.Visible:=False;                
   E9.Visible:=False;                
   L11.Visible:=False;               
   E11.Visible:=False;               
   end                               
   else                              

begin
If E6.ItemIndex=2 then               
begin                                
   L7.Visible:=False;                
   E7.Visible:=False;                
   L8.Visible:=False;                
   E8.Visible:=False;                
   L9.Visible:=False;
   E9.Visible:=False;
   L11.Visible:=False;               
   E11.Visible:=False;               
   end                               
   else                              


begin                                
If E6.ItemIndex=3 then               
begin                                
   L7.Visible:=False;                
   E7.Visible:=False;                
   L8.Visible:=True;                 
   E8.Visible:=True;                 
   L9.Visible:=False;                
   E9.Visible:=False;                
   L11.Visible:=True;                
   E11.Visible:=True;
   E11.Enabled:=True;
   end                               
   else                              

begin                                
If E6.ItemIndex=4 then               
begin
   L7.Visible:=False;
   E7.Visible:=False;                
   L8.Visible:=True;                 
   E8.Visible:=True;
   L11.Visible:=True;
   E11.Visible:=True;                
   L9.Visible:=False;                
   E9.Visible:=False;
   E11.Enabled:=True;
   end                               
   else                              

begin                                
If E6.ItemIndex=5 then               
begin                                
   L7.Visible:=False;
   E7.Visible:=False;                
   L8.Visible:=False;                
   E8.Visible:=False;
   L11.Visible:=True;                
   E11.Visible:=True;                
   L9.Visible:=True;                 
   E9.Visible:=True;
   E11.Enabled:=False;
     end;
      end;
       end;
        end;
         end;
          end;
end;

procedure TFHareket.E12Click(Sender: TObject);
begin
begin
if E12.ItemIndex=0 then
begin
   L7.Visible:=True;                 
   E7.Visible:=True;
   L8.Visible:=False;                
   E8.Visible:=False;                
   L9.Visible:=False;                
   E9.Visible:=False;                
   L11.Visible:=False;               
   E11.Visible:=False;               
   end                               
   else                              

begin                                
if E12.ItemIndex=1 then
begin                                
   L7.Visible:=True;                 
   E7.Visible:=True;                 
   L8.Visible:=False;                
   E8.Visible:=False;                
   L9.Visible:=False;
   E9.Visible:=False;                
   L11.Visible:=False;               
   E11.Visible:=False;               
   end                               
   else                              

begin
If E12.ItemIndex=2 then
begin                                
   L7.Visible:=False;                
   E7.Visible:=False;                
   L8.Visible:=False;                
   E8.Visible:=False;                
   L9.Visible:=False;                
   E9.Visible:=False;                
   L11.Visible:=False;               
   E11.Visible:=False;

   end                               
   else                              


begin                                
If E12.ItemIndex=3 then
begin                                
   L7.Visible:=False;                
   E7.Visible:=False;
   L8.Visible:=False;
   E8.Visible:=False;                 
   L9.Visible:=False;                
   E9.Visible:=False;
   L11.Visible:=False;
   E11.Visible:=False;
   end                               
   else                              

begin                                
If E12.ItemIndex=4 then
begin                                
   L7.Visible:=False;                
   E7.Visible:=False;                
   L8.Visible:=True;                 
   E8.Visible:=True;
   L11.Visible:=True;
   E11.Visible:=True;                
   L9.Visible:=False;
   E9.Visible:=False;
   end
   else

begin
If E12.ItemIndex=5 then
begin
   L7.Visible:=False;
   E7.Visible:=False;
   L8.Visible:=True;
   E8.Visible:=True;
   L11.Visible:=True;
   E11.Visible:=True;
   L9.Visible:=False;
   E9.Visible:=False;
   end
   else
begin
If E12.ItemIndex=6 then
begin
   L7.Visible:=False;
   E7.Visible:=False;
   L8.Visible:=False;
   E8.Visible:=False;
   L11.Visible:=True;
   E11.Visible:=True;
   L9.Visible:=True;
   E9.Visible:=True;
   end;
    end;
     end;
      end;
       end;
        end;
         end;
          end;
end;

procedure TFHareket.E6Exit(Sender: TObject);
begin
  if (TEdit(Sender).Text='') then
begin

  Application.MessageBox('Hareket Tipi Seçiniz!                           ' ,  'Dikkat !!!',mb_ok+mb_iconstop);
  TEdit(Sender).SetFocus;
end;  
end;

procedure TFHareket.E7Exit(Sender: TObject);
begin
  if (TEdit(Sender).Text='')   then

begin
  Application.MessageBox('Kasa Tanımı Seçiniz!                           ' ,  'Dikkat !!!',mb_ok+mb_iconstop);
  TEdit(Sender).SetFocus;
  end;
end;

procedure TFHareket.E7Enter(Sender: TObject);
begin
  E7.Items.Clear;
  DMTanimler.TKBankT.Refresh;
  DMTanimler.TKBankT.First;
  while not DMTanimler.TKBankT.Eof do
  begin
  E7.Items.Add(DMTanimler.TKBankT.FieldByName('Tanim').AsString);
  DMTanimler.TKBankT.Next;
  end;
end;

procedure TFHareket.E8Enter(Sender: TObject);
begin
  E8.Items.Clear;
  DMTanimler.TBankaT.Refresh;
  DMTanimler.TBankaT.First;
  while not DMTanimler.TBankaT.Eof do
  begin
  E8.Items.Add(DMTanimler.TBankaT.FieldByName('Tanim').AsString);
  DMTanimler.TBankaT.Next;
  end;
end;

procedure TFHareket.E8Exit(Sender: TObject);
begin
  if (TEdit(Sender).Text='') then
begin
  Application.MessageBox('Bağlı Banka Seçiniz!                           ' ,  'Dikkat !!!',mb_ok+mb_iconstop);
  TEdit(Sender).SetFocus;
  end;
end;

procedure TFHareket.E9Enter(Sender: TObject);
begin
  Grid1.Visible:=True;
  DMSProj.TSHareket.Close;
  DMSProj.TSHareket.Open;//Tabloyu Aç
  if E35.Text=''  then
  DMSProj.TSHareket.Filter:=''
  else
  DMSProj.TSHareket.Filter:='[Durum]='+#39+E35.text+'*'+#39;
  DMSProj.TSHareket.Filtered:=True;

end;

procedure TFHareket.E11Exit(Sender: TObject);
begin
  if (TEdit(Sender).Text='') then
begin
   Application.MessageBox('Durum Belirleyiniz!                           ' ,  'Dikkat !!!',mb_ok+mb_iconstop);
  TEdit(Sender).SetFocus;
  end; 
end;

procedure TFHareket.E16Enter(Sender: TObject);
begin
E16.Items.Clear;
DMSProj.TPro.First;
while not DMSProj.TPro.Eof do
begin
E16.Items.Add(DMSProj.TPro.FieldByName('Tanim').AsString);
DMSProj.TPro.Next;
end
end; 

end.


AfterPost
Üye
Mesajlar: 127
Kayıt: 12 Tem 2014 10:22

Re: vt Kaydetme sorunu

Mesaj gönderen AfterPost »

Böyle bir kaydetme mantığı yok, DBEdit, DBText vb. veri bilinçli bileşenleri keşfetmenin zamanı gelmiş. DataControls den bulabirsiniz..

ertank
Üye
Mesajlar: 1315
Kayıt: 12 Eyl 2015 12:45

Re: vt Kaydetme sorunu

Mesaj gönderen ertank »

AfterPost yazdı:
18 Eki 2018 07:06
Böyle bir kaydetme mantığı yok, DBEdit, DBText vb. veri bilinçli bileşenleri keşfetmenin zamanı gelmiş. DataControls den bulabirsiniz..
Her kullanım şeklinde ve uygulama için DBEdit veya DBText uygun olmayabilir. Belli durumlarda standart bileşenleri kod yazarak kullanmak gerekebilir. Bir database tablosu içindeki bilgileri gösteriyor olsalar dahi.

ertank
Üye
Mesajlar: 1315
Kayıt: 12 Eyl 2015 12:45

Re: vt Kaydetme sorunu

Mesaj gönderen ertank »

Tahsinzencir yazdı:
18 Eki 2018 03:06
aşağıda ki kaydet procedure de numaralandırdığım satırlar veri tabanına kayıt işlemini gerçekleştirmiyor
İlgili satırlarda görülebildiği kadarıyla bir hata yok. Bu satırlara "break point" (imleç satır üzerinde iken F5 tuşuna basın) ekleyerek F9 tuşuna basarak çalıştırır iseniz işlem o noktaya geldiğinde Delphi ekranına gelir ve
1) DMSProj.TSHareketHTip.AsString değerinin gerçekten 'Cari Hesaplar' olup olmadığını
2) E12.Text içinin boş olup olmadığını
3) DMSProj.TSHareketHTip.DataSet.State değerini
görme imkanınız olabilir.

Yukarıdaki maddeleri kontrol edip sorunun kaynağını daha kolay çözebilirsiniz diye düşünüyorum.

Tahsinzencir
Üye
Mesajlar: 46
Kayıt: 15 May 2009 12:16

Re: vt Kaydetme sorunu

Mesaj gönderen Tahsinzencir »

selamünaleyküm ertank kardeş. hiçbir hata gözükmüyor, nereyle çakışıyor anlamadım. başka kaydetme yöntemi var mı ki

ertank
Üye
Mesajlar: 1315
Kayıt: 12 Eyl 2015 12:45

Re: vt Kaydetme sorunu

Mesaj gönderen ertank »

Gördüğüm tek sorun aşağıdaki kodlar:

Kod: Tümünü seç

  DMSProj.TSHareket.Refresh();
  DMSProj.TSHareket.Append;
  DMSProj.TSHareket.Edit;
Neden "Refresh" ettiğinizi bilmiyorum. Normalde buna gerek yok.
"Append" kullandığınızda zaten yeni kayıt ekleme moduna geçersiniz. Tek başına bu yeterlidir. Tekrar ardından "Edit" kullanmaya gerek yok. Yukarıdaki üç satır yerine aşağıdaki tek satır aynı işi görecektir.

Kod: Tümünü seç

  DMSProj.TSHareket.Append;

Tahsinzencir
Üye
Mesajlar: 46
Kayıt: 15 May 2009 12:16

Re: vt Kaydetme sorunu

Mesaj gönderen Tahsinzencir »

sevgili ertank kardeş öncelikle ilgine sonsuz teşekkürler sorunu bu şekilde çözdüm sorun kaydet kodonda imiş.
kodu şu şekilde düzelttim.

daha önce Kod bu şekilde idi
if DMSProj.TSHareketHTip.AsString='Cari Hesaplar' Then
DMSProj.TSHareketBaSan.AsString:=E16.Text;

if DMSProj.TSHareketHTip.AsString='Cari Hesaplar' Then
DMSProj.TSHareketHarTip.AsString:=E12.Text;

ve sıralamada "personel" satırının altındaydı

aşağıda 1 ve 2 satırı haline getirince düzeldi

Kod: Tümünü seç

procedure TFHareket.KaydetClick(Sender: TObject);
begin
  if trim(E4.text)='' then
begin
  Application.MessageBox('Hesap Tipi  Seçiniz !                   ' ,  'Dikkat !!!',mb_ok+mb_iconstop);
  Exit;   //veya Abort;
  end;

begin
  if trim(E5.text)='' then
Begin
  Application.MessageBox('Hesap tanımı  Seçiniz !                   ' ,  'Dikkat !!!',mb_ok+mb_iconstop);
  Exit;   //veya Abort;
  end;

begin
  if trim(E10.text)='' then
begin
  Application.MessageBox('Tutar Değeri Hatalı !                   ' ,  'Dikkat !!!',mb_ok+mb_iconstop);
  Exit;   //veya Abort;
  end;
end;

  DMSProj.TSHareket.Refresh();
  DMSProj.TSHareket.Append;
  DMSProj.TSHareket.Edit;
  DMSProj.TSHareketTarih.AsDateTime:=E1.Date;
  DMSProj.TSHareketEvrak.AsString:=E2.Text;
  DMSProj.TSHareketVTarih.AsDateTime:=E3.Date;
  DMSProj.TSHareketHTip.AsString:=E4.Text;
  DMSProj.TSHareketHTanim.AsString:=E5.Text;

1-   if  DMSProj.TSHareketHTip.AsString<>'Cari Hesaplar' Then     
  DMSProj.TSHareketBaSan.AsString:=E16.Text;

2-   if  DMSProj.TSHareketHTip.AsString<>'Cari Hesaplar' Then
  DMSProj.TSHareketHarTip.AsString:=E12.Text;

   if  DMSProj.TSHareketHTip.AsString='Şantiye' Then
  DMSProj.TSHareketBaSan.AsString:=E5.Text;

   if  DMSProj.TSHareketHTip.AsString='Şantiye' Then
  DMSProj.TSHareketHarTip.AsString:=E6.Text;

   if  DMSProj.TSHareketHTip.AsString='Taşeron' Then
  DMSProj.TSHareketHarTip.AsString:=E6.Text;

   if  DMSProj.TSHareketHTip.AsString='Personel' Then
  DMSProj.TSHareketHarTip.AsString:=E12.Text;

   if  DMSProj.TSHareketHTip.AsString='Taşeron' Then
  DMSProj.TSHareketBaSan.AsString:=E16.Text;

   if  DMSProj.TSHareketHTip.AsString='Personel' Then
  DMSProj.TSHareketBaSan.AsString:=E16.Text;

  DMSProj.TSHareketKTanim.AsString:=E7.Text;
  DMSProj.TSHareketBank.AsString:=E8.Text;
  DMSProj.TSHareketPort.AsString:=E9.Text;
  DMSProj.TSHareketTutar.AsString:=E10.Text;
  DMSProj.TSHareketHGurup.AsString:=E17.Text;
  DMSProj.TSHareketAcik.AsString:=E18.Text;
  DMSProj.TSHareketAvans.AsString:=E19.Text;
  DMSProj.TSHareketDurum.AsString:=E11.Text;
  DMSProj.TSHareketOdenecek.AsString:=E20.Text;
  DMSProj.TSHareketHKodu.AsString:=E24.Text;

    if  DMSProj.TSHareketHarTip.AsString='Tahsilat' Then
  DMSProj.TSHareketAlacak.AsString:=E10.Text;

    if  DMSProj.TSHareketHarTip.AsString='Çek Girişi' Then
  DMSProj.TSHareketAlacak.AsString:=E10.Text;

    if  DMSProj.TSHareketHarTip.AsString='Alacak' Then
  DMSProj.TSHareketAlacak.AsString:=E10.Text;

    if  DMSProj.TSHareketHarTip.AsString='Çek Çıkış Firma' Then
  DMSProj.TSHareketBorc.AsString:=E10.Text;

    if  DMSProj.TSHareketHarTip.AsString='Çek Çıkış Ciro' Then
  DMSProj.TSHareketBorc.AsString:=E10.Text;

    if  DMSProj.TSHareketHarTip.AsString='Borç' Then
  DMSProj.TSHareketBorc.AsString:=E10.Text;

    if  DMSProj.TSHareketHarTip.AsString='Ödeme' Then
  DMSProj.TSHareketBorc.AsString:=E10.Text;
  DMSProj.TSHareket.Post;
  end;

3-   //  DMSProj.THark.Refresh();
 Kaydet.Enabled:=False;
4-   //DMSProj.QPortfoy.Close;
5-   // DMSProj.QPortfoy.Open;
begin
  DMSProj.THark.Edit;
  DMSProj.THarkNo.AsString:=Har3.Text;
  DMSProj.THark.Post;
end;

yusuf simsek
Üye
Mesajlar: 317
Kayıt: 09 Mar 2004 11:18
Konum: Konya
İletişim:

Re: vt Kaydetme sorunu

Mesaj gönderen yusuf simsek »

Tahsinzencir yazdı:
18 Eki 2018 03:06
bu arada Delphi7 vt paradoks kullanıyorum
Paradoxtan acil vazgeçin... Sonra ki projelerinizde Firebird ya da MySQL kullanın... Hangisi hoşunuza giderse

-> Her ikisine de Delphiden ZEOS Component ile bağlananbilirsiniz
-> MySQL veritabanını yönetmek için HeidiSQL
-> Firebir veritabanını yönetmek için IbExpert kullanabilirsiniz...

ZEOS, HeidiSql ve IbExpert kullanımları ile ilgili bol miktarda örneğe ulaşabilirsiniz...

Her üçünün de Alternatifi mevcuttur
Bugün bir kez daha,
Hiç Birşey Bilmediğimi Öğrendim!!!

https://extrayazilim.com

Cevapla