Fatura Hareketlerinde Fatura ID'si

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
nodetail
Üye
Mesajlar: 74
Kayıt: 04 Eki 2008 10:30

Re: Fatura Hareketlerinde Fatura ID'si

Mesaj gönderen nodetail »

Dostum hakkını helal et, uğraştırdım seni!

Yalnız ben ne adoconnection, ne adoquery, ne adotable nede clientdataset'te CachedUpdate özelliğini bulamadım.
Ne kaçırıyorum acaba
nodetail
Üye
Mesajlar: 74
Kayıt: 04 Eki 2008 10:30

Re: Fatura Hareketlerinde Fatura ID'si

Mesaj gönderen nodetail »

İşimi kısmen memorydataset ile çözdüm teoride çalışıyor.
ancak bir kaydı güncellemek için güncelle butonuna bastığım fatura hareketlerini memorydataset'e aktarmak 1-2 satır dahi olsa yaklaşık 7 saniye sürüyor. Memorydataset içindeki kayıtlar arasında dolaşmakta oldukça yavaş, bu işin profesyonel yapılabilirliği bunu gerçekten. Yada ben mi birşeyleri yanlış yapıyorum.
ertank
Kıdemli Üye
Mesajlar: 1650
Kayıt: 12 Eyl 2015 12:45

Re: Fatura Hareketlerinde Fatura ID'si

Mesaj gönderen ertank »

nodetail yazdı: 11 Ağu 2018 01:44 Yada ben mi birşeyleri yanlış yapıyorum.
Örnek kod veya proje olmadan sorunuzu cevaplamak mümkün değil.
nodetail
Üye
Mesajlar: 74
Kayıt: 04 Eki 2008 10:30

Re: Fatura Hareketlerinde Fatura ID'si

Mesaj gönderen nodetail »

//IBQuery1.First;

//ClientDataSet1.Open;

//While Not IBQuery1.Eof do
//begin
//ClientDataSet1.Append;
//ClientDataSet1S_SAY.AsString:=IBQuery1ID.AsString;
//ClientDataSet1S_ID.AsString:=IBQuery1ID.AsString;
//ClientDataSet1CH_KART_ID.AsString:=IBQuery1CH_KART_ID.AsString;
//ClientDataSet1IRS_KART_ID.AsString:=IBQuery1IRS_KART_ID.AsString;
//ClientDataSet1MDL_ID.AsString:=IBQuery1MDL_ID.AsString;
//ClientDataSet1SP_KART_ID.AsString:=IBQuery1SP_KART_ID.AsString;
//ClientDataSet1PARTI.AsString:=IBQuery1PARTI.AsString;
//ClientDataSet1XXXS.AsFloat:=IBQuery1XXXS.AsFloat;
//ClientDataSet1XXS.AsFloat:=IBQuery1XXS.AsFloat;
//ClientDataSet1XS.AsFloat:=IBQuery1XS.AsFloat;
//ClientDataSet1S.AsFloat:=IBQuery1S.AsFloat;
//ClientDataSet1M.AsFloat:=IBQuery1M.AsFloat;
//ClientDataSet1L.AsFloat:=IBQuery1L.AsFloat;
//ClientDataSet1XL.AsFloat:=IBQuery1XL.AsFloat;
//ClientDataSet1XXL.AsFloat:=IBQuery1XXL.AsFloat;
//ClientDataSet1XXXL.AsFloat:=IBQuery1XXXL.AsFloat;
//ClientDataSet1XXXXL.AsFloat:=IBQuery1XXXXL.AsFloat;
//ClientDataSet1XXXXXL.AsFloat:=IBQuery1XXXXXL.AsFloat;
//ClientDataSet1ACIKLAMA.AsString:=IBQuery1ACIKLAMA.AsString;
//ClientDataSet1.Post;
//IBQuery1.Next;
//end;


kodlar bunlardı ama vazgeçtim projeyi firebird yaptım :( cachedupdates ile yazıyorum.
İlgin emeklerin ve yardımların için çok sağol.
skalkan
Üye
Mesajlar: 21
Kayıt: 28 Haz 2003 08:05

Re: Fatura Hareketlerinde Fatura ID'si

Mesaj gönderen skalkan »

Kod: Tümünü seç

function GenerateKey: String; // 36 karekter dönecek
var
  MyGUID: TGUID;
  MyWideChar: array[0..100] of WideChar;
begin
  {First, generate the GUID:}
  CoCreateGUID(MyGUID);
  {Now convert it to a wide-character string:}
  StringFromGUID2(MyGUID, MyWideChar, 39);//uzunluğu 39 karakter yap
  {Now convert it to a Delphi string:}
  Result := WideCharToString(MyWideChar);
  {Get rid of the three dashes that StringFromGUID2() puts in the result
  string:}
  while Pos( '-', Result ) > 0 do
    Delete( Result, Pos( '-', Result ), 1 );
  {Get rid of the left and right brackets in the string:}
  while Pos( '{', Result ) > 0 do
    Delete( Result, Pos( '{', Result ), 1 );
  while Pos( '}', Result ) > 0 do
    Delete( Result, Pos( '}', Result ), 1 );
end;
fatura üst tabloya
moveid VARCHAR 38
ve Fatura hareket tabloya
fMoveid VARCHAR 38
alanını ekle

örnek: Fatura FormShow da
Edit1.txt := 'CF'+'GenerateKey; // Buradaki CF çıkış faturası gibi yada ne istersen ön ek 2 karakter kullanabilirsin
Artık kaydederken her iki tabloyu da aynı moveid ile kaydedip birbirine bağlamış olursun.
Cevapla