kayıtların etkileme durumu yardım
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
kayıtların etkileme durumu yardım
sa arkadaşlar yüksek okul ögrencisiyim yaptıgım projede 2 tablo arasındaki etkilenme durumunu çözemedigim için yardımlarınızı bekliyorum .sorum şu alim isimli tabloma kayıt eklemem durumunda eklenen kayıttaki prof_mik isimli fielda girilen integer deger kadar hamadde tablosundaki ilk kayıtın miktar isimli field ına deger arttırımı yapasını istiyorum(hammadde tablosu tek kayıt ve tek field dan oluşuyor) örnegin alim tablosuna prof_mik alanına 10 olarak yeni kayıt ekleyince ekledigim anda bu 10 degerini hammadde tablosunun miktar field ına ve ilk kayıta eski degeriyle toplayıp yeni deger olarak atmasını istiyorum yani miktar field ının degeri 40 ise 50 yapsın inşallah acıklayabilmişimdir... yardımlarınız için şimdiden teşekkürlerimi sunarım kolay gelsin
-
- Kıdemli Üye
- Mesajlar: 489
- Kayıt: 13 Eyl 2003 09:10
- Konum: istanbul
- İletişim:
Re: kayıtların etkileme durumu yardım
S.a
1.hammedde toplosunda sadece 1 kayıtmı var
2.bu kayıtları bir birinden ayıran baska bir alan yokmu (ID Gibi)
3.hammedde tablosunda hangi kolona ve hangi satıra işlem yapacaksın ilk satır diyorsun ama yanlıs sonuclar verebilir. 1 kayıttan fazla ise
bu sorgu ile hammade tablosundaki en büyük hammadde miktarını alırsın
bu sonucu bir degişkene yükle
Eski:=EskiMiktar;
gelen mal
Yeni:=GelenMal;
eski mikatır bulduk gelen miktarı yazdık sim hammadde tablosunu güncelleyelim
Ben sana basit bir yol gösterdim yanlız kaydı okurken ve yazarken kayıtları birbirinden ayırabilmen lazım
Mesela yukarda kodların sonunda bu olması gerekir yoksa hata kaçınılmazdır
1.hammedde toplosunda sadece 1 kayıtmı var
2.bu kayıtları bir birinden ayıran baska bir alan yokmu (ID Gibi)
3.hammedde tablosunda hangi kolona ve hangi satıra işlem yapacaksın ilk satır diyorsun ama yanlıs sonuclar verebilir. 1 kayıttan fazla ise
bu sorgu ile hammade tablosundaki en büyük hammadde miktarını alırsın
Kod: Tümünü seç
SELECT
MAX( miktar ) AS EskiMiktar
FROM hamadde
Eski:=EskiMiktar;
gelen mal
Yeni:=GelenMal;
eski mikatır bulduk gelen miktarı yazdık sim hammadde tablosunu güncelleyelim
Kod: Tümünü seç
UPDATE HAMMADDE SET
Miktar = Eski + Gelen
Mesela yukarda kodların sonunda bu olması gerekir yoksa hata kaçınılmazdır
Kod: Tümünü seç
WHERE HAMMADDE_NO =1234
-
- Kıdemli Üye
- Mesajlar: 489
- Kayıt: 13 Eyl 2003 09:10
- Konum: istanbul
- İletişim:
Re: kayıtların etkileme durumu yardım
bu işlemleri delphi ilemi yapacaksın
ne yaptıgını neyle yaptıgını biraz detaylandır.
ne yaptıgını neyle yaptıgını biraz detaylandır.
Re: kayıtların etkileme durumu yardım
hocam projeyi delphi 7 ile yapıyorum .. query koymadım.. hammadde tablosu tek kayıttan olusuyor zaten tek field bu tablo sadece depodaki hammadde miktarını tutacak yani bu tabloya bakan birisi 1 tane rakam görecek oda depodaki profil(hammadde) miktarı .. alım tablosuna kayıt eklemem durumunda ben hammadde almış olacagım yani depomdaki mal miktarı girdigim kayıt kadar depoya (hammadde tablosuna) kayıt eklenmeli.alım tablosunda prof
-mik ve tarih isimli iki field var bu tablodan alınan malın tarihe göre takibi yapılacak
yaptıgım proje sac profilden soba imalatı yapan kobilere yönelik..
mesela benim depomda(hammadde tablosunda)40 profil sac var ben alım yaptıgımda alim tablosuna tarih ve aldıgım miktarı girecegim kayıt eklendigi anda eklenen kayıt ın prof_mik isimli field de ki int deger kadar hammadde tablosuna (tek alan tek kayıt olan )eski degeri set edip yeni degeri eklemeli (aynı kayıt ı set etmeli) sorunum bu tetikleyici olay olarak neyi kullanacagımı da bilmiyorum after post olayı olur diye düşündüm ama gercekten sadece pascal bilgisiyle delphi de proje yapmaya çalışınca durum böyle oluyor ... dikkate aldıgınız için teşekkür ederim bu arada benim ismimde abdul kadir adaşız
-mik ve tarih isimli iki field var bu tablodan alınan malın tarihe göre takibi yapılacak
yaptıgım proje sac profilden soba imalatı yapan kobilere yönelik..
mesela benim depomda(hammadde tablosunda)40 profil sac var ben alım yaptıgımda alim tablosuna tarih ve aldıgım miktarı girecegim kayıt eklendigi anda eklenen kayıt ın prof_mik isimli field de ki int deger kadar hammadde tablosuna (tek alan tek kayıt olan )eski degeri set edip yeni degeri eklemeli (aynı kayıt ı set etmeli) sorunum bu tetikleyici olay olarak neyi kullanacagımı da bilmiyorum after post olayı olur diye düşündüm ama gercekten sadece pascal bilgisiyle delphi de proje yapmaya çalışınca durum böyle oluyor ... dikkate aldıgınız için teşekkür ederim bu arada benim ismimde abdul kadir adaşız

Re: kayıtların etkileme durumu yardım
hocam proje 1 adet ana formdan oluşuyor bu formda buttonlar var yanda buyuk bir de panel nesnesi var hangi buttona basılır sa panelde onceden accses deki baglantıları bulunan form o panelde görünüyor görülen formda dbgrid var o dbgridde ilgili tabloya baglı ben bu şekilde alim formunu acarak buraya kayıt ekliyorum. kayıt eklenince hammadde formundaki dbgrid e baglı olan hammadde tablosunun acıkladıgım şekilde set olmasını istiyorum .ben sorarken sadece veri tabanı gibi anlatmışım kusura bakmayın .resim nasıl ekleniyor bilmiyorum keşke form görüntüsüyle anlatabilsydim 
ado table ve data source lar 1 tane data module de tutuluyor
yazdıgım kod
data==> datamodule ün ismi
alim_tb==> alim tablosunun ado table ı
prof_mik ==> field ın ismi
hammadde_tb ==> hammadde tablosunun ado table ı
miktar set edilecek field ın ismi
{
procedure TData.alim_tbAfterPost(DataSet: TDataSet);(kayıt eklenme olayı olarak bunu kullandım)
begin
eklenecek:=data.alim_tbprof_mik.Value;(burada 'eklenecek' isimli bir degişkene alim tablosuna eklenen kayıt ın prof_mik field ının int degerini atamak istedim )
eski:=data.hammadde_tbmiktar.first(burada eski isimli degişkene var olan degeri atamaya calıştım)
data.hammadde_tbmiktar.SetData(eklenecek+eski);(burada girilen ile eskiyi toplayıp miktar field ının tek kayıtını set etmek istedim )
end;
}
ama olmadı
bi dünya hata verdi

ado table ve data source lar 1 tane data module de tutuluyor
yazdıgım kod
data==> datamodule ün ismi
alim_tb==> alim tablosunun ado table ı
prof_mik ==> field ın ismi
hammadde_tb ==> hammadde tablosunun ado table ı
miktar set edilecek field ın ismi
{
procedure TData.alim_tbAfterPost(DataSet: TDataSet);(kayıt eklenme olayı olarak bunu kullandım)
begin
eklenecek:=data.alim_tbprof_mik.Value;(burada 'eklenecek' isimli bir degişkene alim tablosuna eklenen kayıt ın prof_mik field ının int degerini atamak istedim )
eski:=data.hammadde_tbmiktar.first(burada eski isimli degişkene var olan degeri atamaya calıştım)
data.hammadde_tbmiktar.SetData(eklenecek+eski);(burada girilen ile eskiyi toplayıp miktar field ının tek kayıtını set etmek istedim )
end;
}
ama olmadı

-
- Kıdemli Üye
- Mesajlar: 489
- Kayıt: 13 Eyl 2003 09:10
- Konum: istanbul
- İletişim:
Re: kayıtların etkileme durumu yardım
alim_tbAfterPost olayında Soyle bir dene
Kod: Tümünü seç
procedure TData.alim_tbAfterPost(DataSet: TDataSet);
var eklenecek, Eski:integer;
begin
eklenecek:=StrToInt(Edit1.text);//eklenen adedi edit1 e yazdıgını varsaydım.
eski:=hammadde_tb.FieldByName('miktar').Asinteger;
hammadde_tb.edit;//guncelleme icin ac
hammadde_tb.FieldByName('miktar').Asinteger:= eklenecek + Eski;//uygula
hammadde_tb.post;//kaydet
End;
Re: kayıtların etkileme durumu yardım
forma standart bir edit nesnesi koymama ragmen (undeclared identifier 'edit1') altınada (missing operator or semicolon) hatsıyla karşılasıyorum .. affınıza sıgınarak şöyle bir durumu bildirmek istiyorum edit nesnesi yerine kayıtın ilgili field ından degeri direk eklenecek isimli degişkene çekme imkanımız varmı acaba ?
o kısımı
procedure TData.alim_tbAfterPost(DataSet: TDataSet);
var eklenecek, Eski:integer;
begin
eklenecek:=data.alim_tbprof_mik.Value;//degişen kısım .......................................
eski:=hammadde_tb.FieldByName('miktar').Asinteger;
hammadde_tb.edit;//guncelleme icin ac
hammadde_tb.FieldByName('miktar').Asinteger:= eklenecek + Eski;//uygula
hammadde_tb.post;//kaydet
end;
olarak degiştirdim çalışıyor fakat degeri tabloya girip kaydet dedigim anda delphi kücük bi pencere ile(debugger exception notification) başlıklı bi hata veriyor aynı zaman da (proje ismi emba) accses voilation .......emba.exe. read of adres gibi bişey cıkıyor fakat tamam deyip kapatınca tekrar degerleri giriyorum çalışıyor ... bunu çözdügüm taktirde minnettar kalacagım size ugraştıgınız için tekrar teşekkür ederim ..
o kısımı
procedure TData.alim_tbAfterPost(DataSet: TDataSet);
var eklenecek, Eski:integer;
begin
eklenecek:=data.alim_tbprof_mik.Value;//degişen kısım .......................................
eski:=hammadde_tb.FieldByName('miktar').Asinteger;
hammadde_tb.edit;//guncelleme icin ac
hammadde_tb.FieldByName('miktar').Asinteger:= eklenecek + Eski;//uygula
hammadde_tb.post;//kaydet
end;
olarak degiştirdim çalışıyor fakat degeri tabloya girip kaydet dedigim anda delphi kücük bi pencere ile(debugger exception notification) başlıklı bi hata veriyor aynı zaman da (proje ismi emba) accses voilation .......emba.exe. read of adres gibi bişey cıkıyor fakat tamam deyip kapatınca tekrar degerleri giriyorum çalışıyor ... bunu çözdügüm taktirde minnettar kalacagım size ugraştıgınız için tekrar teşekkür ederim ..
-
- Kıdemli Üye
- Mesajlar: 489
- Kayıt: 13 Eyl 2003 09:10
- Konum: istanbul
- İletişim:
Re: kayıtların etkileme durumu yardım
Yardımcı olabilirsem mutlu olurum.
AfterPost olayında dataset degişkeninden alabilirsin (DataSet: TDataSet)
degişkenler olmadan bu sekilde de olur.
AfterPost olayında dataset degişkeninden alabilirsin (DataSet: TDataSet)
Kod: Tümünü seç
procedure TData.alim_tbAfterPost(DataSet: TDataSet);
var eklenecek, Eski:integer;
begin
eklenecek:= DataSet.FieldByName('prof_mik').Asinteger;
eski:=hammadde_tb.FieldByName('miktar').Asinteger;
hammadde_tb.edit;//guncelleme icin ac
hammadde_tb.FieldByName('miktar').Asinteger:= eklenecek + Eski;//uygula
hammadde_tb.post;//kaydet
End;
Kod: Tümünü seç
procedure TData.alim_tbAfterPost(DataSet: TDataSet);
begin
hammadde_tb.edit;//guncelleme icin ac
hammadde_tb.FieldByName('miktar').Asinteger := DataSet.FieldByName('prof_mik').Asinteger + hammadde_tb.FieldByName('miktar').Asinteger; //uygula
hammadde_tb.post;//kaydet
End;
Re: kayıtların etkileme durumu yardım
yardımlarınız için teşekkür ederim uygulama ilk kayıtı yaparken (accses violation at adres .......in module emba.exe.raed of adres 000000) diye hata vererek kaydetmiyor fakat tamam deyip geçince 2. ve sonraki işlemlerde problemsiz çalışıyor acaba bi yerde mantık hatasımı yaptım fakat oyle bir durumda neden sadece ilk seferde hata versin ingilizcem olmadıgı için çözemiyorum hatayı belliki siz konuya aşinasınız sizce neden böyle bi hata verebilir.donanımsalmı veya delphi yi kurarken bi hata yaptımda ondanmı acaba...
-
- Kıdemli Üye
- Mesajlar: 489
- Kayıt: 13 Eyl 2003 09:10
- Konum: istanbul
- İletişim:
Re: kayıtların etkileme durumu yardım
hatanın bir cok sebebi olabilir hata (tanımlanan bir değişkenin veya bir nesnenin çalışma esnasında bulunamaması)
hatayı hangi satırda aldıgını tespit et forumda hata bulma ile ilgili bir cok yazı mevcut.
hatayı hangi satırda aldıgını tespit et forumda hata bulma ile ilgili bir cok yazı mevcut.
-
- Kıdemli Üye
- Mesajlar: 489
- Kayıt: 13 Eyl 2003 09:10
- Konum: istanbul
- İletişim:
Re: kayıtların etkileme durumu yardım
sorunu bulamassan
.pas ve .dfm deki kodları buraya ac bir bakalım
.pas ve .dfm deki kodları buraya ac bir bakalım
Re: kayıtların etkileme durumu yardım
unit anafrmunit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls, jpeg, Menus;
type
Tanafrm = class(TForm)
Panel1: TPanel;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
Image1: TImage;
Image2: TImage;
Label1: TLabel;
Label2: TLabel;
Timer1: TTimer;
Button5: TButton;
Button6: TButton;
Button7: TButton;
Button8: TButton;
Label3: TLabel;
procedure Timer1Timer(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure Button8Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
anafrm: Tanafrm;
implementation
uses personelunit, bayiunit, imalatunit, satisunit, alimunit, urununit,
hammaddeunit, urunstokunit;
{$R *.dfm}
procedure Tanafrm.Timer1Timer(Sender: TObject);
begin
label1.caption:='TARIH '+datetostr(date);
label2.Caption:='SAAT '+timetostr(time);
end;
procedure Tanafrm.FormShow(Sender: TObject);
begin
bayifrm.ManualDock(panel1);
bayifrm.Visible := false;
personelfrm.ManualDock(panel1);
personelfrm.Visible := false;
imalatfrm.ManualDock(panel1);
imalatfrm.Visible:=false;
satisfrm.manualDock(panel1);
satisfrm.visible:=false;
alimfrm.manualDock(panel1);
alimfrm.visible:=false;
urunfrm.manualDock(panel1);
urunfrm.visible:=false;
hammaddefrm.manualDock(panel1);
hammaddefrm.visible:=false;
urunstokfrm.manualDock(panel1);
urunstokfrm.visible:=false;
label3.Caption:='';
end;
procedure Tanafrm.Button1Click(Sender: TObject);
begin
personelfrm.Visible := true;
bayifrm.Visible := false;
imalatfrm.visible := false;
satisfrm.visible:=false;
alimfrm.visible:=false;
urunfrm.visible:=false;
hammaddefrm.visible:=false;
urunstokfrm.visible:=false;
label3.Caption:='';
label3.Caption:='PERSONEL';
end;
procedure Tanafrm.Button2Click(Sender: TObject);
begin
personelfrm.Visible := false;
bayifrm.Visible := true;
imalatfrm.visible := false;
satisfrm.visible:=false;
alimfrm.visible:=false;
urunfrm.visible:=false;
hammaddefrm.visible:=false;
urunstokfrm.visible:=false;
label3.Caption:='';
label3.Caption:='BAYİ';
end;
procedure Tanafrm.Button5Click(Sender: TObject);
begin
personelfrm.Visible := false;
bayifrm.Visible := false;
imalatfrm.visible := true;
satisfrm.visible:=false;
alimfrm.visible:=false;
urunfrm.visible:=false;
hammaddefrm.visible:=false;
urunstokfrm.visible:=false;
label3.Caption:='';
label3.Caption:='İMALAT';
end;
procedure Tanafrm.Button4Click(Sender: TObject);
begin
personelfrm.Visible := false;
bayifrm.Visible := false;
imalatfrm.visible := false;
satisfrm.visible:= true;
alimfrm.visible:=false;
urunfrm.visible:=false;
hammaddefrm.visible:=false;
urunstokfrm.visible:=false;
label3.Caption:='';
label3.Caption:='SATIŞ';
end;
procedure Tanafrm.Button3Click(Sender: TObject);
begin
personelfrm.Visible := false;
bayifrm.Visible := false;
imalatfrm.visible := false;
satisfrm.visible:= false;
alimfrm.visible:=true;
urunfrm.visible:=false;
hammaddefrm.visible:=false;
urunstokfrm.visible:=false;
label3.Caption:='';
label3.Caption:='ALIM';
end;
procedure Tanafrm.Button6Click(Sender: TObject);
begin
personelfrm.Visible := false;
bayifrm.Visible := false;
imalatfrm.visible := false;
satisfrm.visible:= false;
alimfrm.visible:=false;
urunfrm.visible:=true;
hammaddefrm.visible:=false;
urunstokfrm.visible:=false;
label3.Caption:='';
label3.Caption:='ÜRÜN';
end;
procedure Tanafrm.Button7Click(Sender: TObject);
begin
personelfrm.Visible := false;
bayifrm.Visible := false;
imalatfrm.visible := false;
satisfrm.visible:= false;
alimfrm.visible:=false;
urunfrm.visible:=false;
hammaddefrm.visible:=true;
urunstokfrm.visible:=false;
label3.Caption:='';
label3.Caption:='HAMMADDE';
end;
procedure Tanafrm.Button8Click(Sender: TObject);
begin
personelfrm.Visible := false;
bayifrm.Visible := false;
imalatfrm.visible := false;
satisfrm.visible:= false;
alimfrm.visible:=false;
urunfrm.visible:=false;
hammaddefrm.visible:=false;
urunstokfrm.visible:=true;
label3.Caption:='';
label3.Caption:='ÜRÜN STOK';
end;
end.
izledigim mantık bir form kapanmadan önce veri tabanı baglantısının kesilmesi acısın yanlış mı sizce
aslında başta hepsi panele gömülerek tıklanan buttuna göre visible özelliklerinin true veya false olması n dan dogan bir sorun mu acaba
eger bundan olursa çözümü nedir . diger formların unitlerinde sadece formun on close olayında ado table ını kapatması veya onshow edilince acması var sizce mantıksal hata buradamı
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls, jpeg, Menus;
type
Tanafrm = class(TForm)
Panel1: TPanel;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
Image1: TImage;
Image2: TImage;
Label1: TLabel;
Label2: TLabel;
Timer1: TTimer;
Button5: TButton;
Button6: TButton;
Button7: TButton;
Button8: TButton;
Label3: TLabel;
procedure Timer1Timer(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure Button8Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
anafrm: Tanafrm;
implementation
uses personelunit, bayiunit, imalatunit, satisunit, alimunit, urununit,
hammaddeunit, urunstokunit;
{$R *.dfm}
procedure Tanafrm.Timer1Timer(Sender: TObject);
begin
label1.caption:='TARIH '+datetostr(date);
label2.Caption:='SAAT '+timetostr(time);
end;
procedure Tanafrm.FormShow(Sender: TObject);
begin
bayifrm.ManualDock(panel1);
bayifrm.Visible := false;
personelfrm.ManualDock(panel1);
personelfrm.Visible := false;
imalatfrm.ManualDock(panel1);
imalatfrm.Visible:=false;
satisfrm.manualDock(panel1);
satisfrm.visible:=false;
alimfrm.manualDock(panel1);
alimfrm.visible:=false;
urunfrm.manualDock(panel1);
urunfrm.visible:=false;
hammaddefrm.manualDock(panel1);
hammaddefrm.visible:=false;
urunstokfrm.manualDock(panel1);
urunstokfrm.visible:=false;
label3.Caption:='';
end;
procedure Tanafrm.Button1Click(Sender: TObject);
begin
personelfrm.Visible := true;
bayifrm.Visible := false;
imalatfrm.visible := false;
satisfrm.visible:=false;
alimfrm.visible:=false;
urunfrm.visible:=false;
hammaddefrm.visible:=false;
urunstokfrm.visible:=false;
label3.Caption:='';
label3.Caption:='PERSONEL';
end;
procedure Tanafrm.Button2Click(Sender: TObject);
begin
personelfrm.Visible := false;
bayifrm.Visible := true;
imalatfrm.visible := false;
satisfrm.visible:=false;
alimfrm.visible:=false;
urunfrm.visible:=false;
hammaddefrm.visible:=false;
urunstokfrm.visible:=false;
label3.Caption:='';
label3.Caption:='BAYİ';
end;
procedure Tanafrm.Button5Click(Sender: TObject);
begin
personelfrm.Visible := false;
bayifrm.Visible := false;
imalatfrm.visible := true;
satisfrm.visible:=false;
alimfrm.visible:=false;
urunfrm.visible:=false;
hammaddefrm.visible:=false;
urunstokfrm.visible:=false;
label3.Caption:='';
label3.Caption:='İMALAT';
end;
procedure Tanafrm.Button4Click(Sender: TObject);
begin
personelfrm.Visible := false;
bayifrm.Visible := false;
imalatfrm.visible := false;
satisfrm.visible:= true;
alimfrm.visible:=false;
urunfrm.visible:=false;
hammaddefrm.visible:=false;
urunstokfrm.visible:=false;
label3.Caption:='';
label3.Caption:='SATIŞ';
end;
procedure Tanafrm.Button3Click(Sender: TObject);
begin
personelfrm.Visible := false;
bayifrm.Visible := false;
imalatfrm.visible := false;
satisfrm.visible:= false;
alimfrm.visible:=true;
urunfrm.visible:=false;
hammaddefrm.visible:=false;
urunstokfrm.visible:=false;
label3.Caption:='';
label3.Caption:='ALIM';
end;
procedure Tanafrm.Button6Click(Sender: TObject);
begin
personelfrm.Visible := false;
bayifrm.Visible := false;
imalatfrm.visible := false;
satisfrm.visible:= false;
alimfrm.visible:=false;
urunfrm.visible:=true;
hammaddefrm.visible:=false;
urunstokfrm.visible:=false;
label3.Caption:='';
label3.Caption:='ÜRÜN';
end;
procedure Tanafrm.Button7Click(Sender: TObject);
begin
personelfrm.Visible := false;
bayifrm.Visible := false;
imalatfrm.visible := false;
satisfrm.visible:= false;
alimfrm.visible:=false;
urunfrm.visible:=false;
hammaddefrm.visible:=true;
urunstokfrm.visible:=false;
label3.Caption:='';
label3.Caption:='HAMMADDE';
end;
procedure Tanafrm.Button8Click(Sender: TObject);
begin
personelfrm.Visible := false;
bayifrm.Visible := false;
imalatfrm.visible := false;
satisfrm.visible:= false;
alimfrm.visible:=false;
urunfrm.visible:=false;
hammaddefrm.visible:=false;
urunstokfrm.visible:=true;
label3.Caption:='';
label3.Caption:='ÜRÜN STOK';
end;
end.
izledigim mantık bir form kapanmadan önce veri tabanı baglantısının kesilmesi acısın yanlış mı sizce
aslında başta hepsi panele gömülerek tıklanan buttuna göre visible özelliklerinin true veya false olması n dan dogan bir sorun mu acaba
eger bundan olursa çözümü nedir . diger formların unitlerinde sadece formun on close olayında ado table ını kapatması veya onshow edilince acması var sizce mantıksal hata buradamı
-
- Kıdemli Üye
- Mesajlar: 489
- Kayıt: 13 Eyl 2003 09:10
- Konum: istanbul
- İletişim:
Re: kayıtların etkileme durumu yardım
visible özelligi false olan bir bilişene işlem yaparsan hata verir. muhtemelen hata burdan kaynaklanıyor.
Re: kayıtların etkileme durumu yardım
evet üstat sorun tamda buradan kaynaklanıyormuş çözüm yöntemi olarak alım butonuna tıklanınca alım ve hammadde formlarının ikisini yan yana panele gömmek oldu sorunsuz çalışıyor yardımlarınız için minettarım kolay gelsin...
-
- Kıdemli Üye
- Mesajlar: 489
- Kayıt: 13 Eyl 2003 09:10
- Konum: istanbul
- İletişim:
Re: kayıtların etkileme durumu yardım
sevindim
basarılar...
basarılar...