En son kayıtı yeni kayıta kopyalamak
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
En son kayıtı yeni kayıta kopyalamak
Herkese merhaba.Çok soru soruyorum kusuruma bakmayın.Ben FB Db kullanıyorum.Delphide 7.0 yaptığım programda 1 günde girilen kayıtların hepsi bir kayıt haricinde aynı.Ben programı yeni kayıt oluşturduğum zaman kullanıcı aynı kayıtları elle girmesin diye bir buton yaratıp en son kaydın kopyasını yeni kayıt açtığım filedlara kopyalama yapmasını istiyorum.Bunu nasıl yapabilirim Delphitürkiye form offline çok inceledim ama bir şey bulamadım. Teşekkür ediyorum saygılar.
Bunun için 2 ayrı dataset kullanman lazım. Kodunda şu şekilde olmalı.
2. bir yolda Insert sql kodu ile yapabilirsin, ama bu sefer dataseti kapatıp açmak gerekebilir. IBSQL kullanabilirsin.
şeklinde bir SQL cümlesi oluşturman lazım.
Kolay gelsin.
Kod: Tümünü seç
IBDataset1.Append;
IBDataset1.FieldByName('alan1').AsInteger := IBDataset2.FieldByName('alan1').AsInteger;
IBDataset1.FieldByName('alan2').AsString := IBDataset2.FieldByName('alan2').AsString;
....
IBDataset1.Post;
Kod: Tümünü seç
INSERT INTO TABLO (ALAN1, ALAN2) VALUES (alan1_değeri, alan2_değeri)
Kolay gelsin.
merhaba,
dataset i en son kayıt üzerine konumlandırdıktan sonra;
dataset i en son kayıt üzerine konumlandırdıktan sonra;
Kod: Tümünü seç
procedure......
var
Cogalt: array [0..255] of Variant; //en fazla 256 alanlı tablolar
sayac: Integer;
begin
with Dataset do
begin
for sayac := 0 to FieldCount - 1 do
cogalt[sayac] := fields[sayac].asvariant;
insert;
for sayac := 0 to FieldCount - 1 do
fields[sayac].asvariant := Cogalt[sayac];
//primary key alanın varsa değiştir post et.
end;
end;
Sevgili ylmz arkadaşım senin dediğini yaptım bütün fieldları aynen kopyalıyor ve bu benim işime gelmiyor.Örneğin benim kod,wono,batchno ve ağırlık fieldlarım var.Ben yeni kayıt dediğimde bir önceki kod,wono,bacthno bilgileri gelsin farklı bilgi olan ağırlık bilgisini ben girip bilgiyi kaydedeyim.Adminin verdiği komutlarla ilgili örneklere baktım ve kafam çok karıştı nasıl yapacağımı pek anlayamadım. 

merhaba,
butun alanları yeni kayıda kopyaladıktan sonra post etmeden önce istediğiniz fieldların içeriğini değiştirebilirsiniz.
(zaten koda da comment eklemiştim.sadece primary key değil değiştirmek istediğiniz tüm fieldları değiştirin.)
kolay gelsin.
butun alanları yeni kayıda kopyaladıktan sonra post etmeden önce istediğiniz fieldların içeriğini değiştirebilirsiniz.
(zaten koda da comment eklemiştim.sadece primary key değil değiştirmek istediğiniz tüm fieldları değiştirin.)
kolay gelsin.
En son ylmz tarafından 03 Mar 2006 05:05 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
s.a.
önce bilgilerin girileceği pencereyi hazırla.
ordan kullanıcılar bilgileri girsin.
tabi burdaki kontroller db olmayacak.
sonra ta tablodan appendrecord komutunu vererek yapabilirsin.
şeklinde olabilir.
dikkat etmen gereken nokta appendrecord komutun verdiğin bilgiler
tablonun fieldlistesindeki ile aynı olmalı.
kolay gelsin.
önce bilgilerin girileceği pencereyi hazırla.
ordan kullanıcılar bilgileri girsin.
tabi burdaki kontroller db olmayacak.
sonra ta tablodan appendrecord komutunu vererek yapabilirsin.
Kod: Tümünü seç
tabloadi.appendrecord([tabloadialanadi.asdatatipi,degisken1,degisken2])
dikkat etmen gereken nokta appendrecord komutun verdiğin bilgiler
tablonun fieldlistesindeki ile aynı olmalı.
kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim