Forum İstatistikleri
Son Mesajlar
KonuTarih, saat YazarSon Gönderen Forum
  FMXLinux Enterprise ve Architect müşterileri iç... 1 saat önceengerexpro_imaj Delphi Linux
  iş arayışı hakkında 1 saat önceadelphiforumzadelphiforumz İş & Eleman İlanları
  Delphi'de Indy SMTP ile e-mail gönderme. (GMail... 5 saat öncecsunguraycsunguray Makale
  OrangeUI SkinFMXListView Dizayn Modu 9 saat öncepro_imajpanmilko Mobil Platform - FireMon...
  Delphi 10.3.2 9 saat önceFesih ARSLANedo Yenilikler & Son Güncell...
  KeyStore dosyası kayıp 9 saat önceQepnSyhackup Mobil Platform - FireMon...
  Pic 18F4520 ile seri haberleşme sorunu 9 saat önce41linea41frmman Genel Programlama
  Delphi Firebase Post işlemi 10 saat önceyhackupFesih ARSLAN Mobil Platform - FireMon...
  Ajax Error- Iphone ve Mac cihazlarda Bugün, 00:26elixir84elixir84 Delphi ile Web Teknoloji...
  Alter Table Add Primary key(ID) çalıştıramadım Dün, 20:5741linea4141linea41 FireBird
  App Store Reject (5. 2.1 Legal: Intellectual Pr... Dün, 16:40pro_imajFesih ARSLAN Mobil Platform - FireMon...
En Çok Cevaplananlar
  Yeni Kaynak Kitabın Yayı... 133
  Youtube'da Delphi Eğitim... 127
  Yeni Kaynak Kitap İhtiya... 123
  Delphi 10.3 Rio 111
  Kitap - Ön Siparişleri 109
  Karikatür Vakti 104
  Beklenen sürüm (Delphi 1... 75
  Kitap Telif Bedeli 72
  Delphi ile yazılımış tak... 71
  Delphi buluşması 68
  Kitap - Kapak Taslakları 63
  Delphi 10.2 Tokyo (Godzi... 58

Hoşgeldin, Ziyaretçi
Sitemizden yararlanabilmek için Kayıt olmalısınız.

Kullanıcı Adınız:
  

Şifreniz:
  





Forumda Ara

(Gelişmiş Arama)

Forum İstatistikleri
» Toplam Üyeler: 1.684
» Son Üye: coskunvdb
» Toplam Konular: 3.493
» Toplam Yorumlar: 28.661

Detaylı İstatistikler

Son Aktiviteler
FMXLinux Enterprise ve Ar...
Forum: Delphi Linux
Son Yorum:

pro_imaj
1 saat önce
» Yorumlar: 1
» Okunma: 34
iş arayışı hakkında
Forum: İş & Eleman İlanları
Son Yorum:

adelphiforumz
1 saat önce
» Yorumlar: 5
» Okunma: 120
Delphi'de Indy SMTP ile e...
Forum: Makale
Son Yorum:

csunguray
5 saat önce
» Yorumlar: 15
» Okunma: 2.318
OrangeUI SkinFMXListView ...
Forum: Mobil Platform - FireMonkey (FMX)
Son Yorum:

panmilko
9 saat önce
» Yorumlar: 12
» Okunma: 546
Delphi 10.3.2
Forum: Yenilikler & Son Güncellemeler
Son Yorum:

edo
9 saat önce
» Yorumlar: 4
» Okunma: 151
KeyStore dosyası kayıp
Forum: Mobil Platform - FireMonkey (FMX)
Son Yorum:

yhackup
9 saat önce
» Yorumlar: 8
» Okunma: 104
Pic 18F4520 ile seri habe...
Forum: Genel Programlama
Son Yorum:

frmman
9 saat önce
» Yorumlar: 3
» Okunma: 45
Delphi Firebase Post işle...
Forum: Mobil Platform - FireMonkey (FMX)
Son Yorum:

Fesih ARSLAN
10 saat önce
» Yorumlar: 8
» Okunma: 1.579
Ajax Error- Iphone ve Mac...
Forum: Delphi ile Web Teknolojileri
Son Yorum:

elixir84
Bugün, Saat: 00:26
» Yorumlar: 2
» Okunma: 68
Alter Table Add Primary k...
Forum: FireBird
Son Yorum:

41linea41
Dün, Saat: 20:57
» Yorumlar: 5
» Okunma: 124

 
  Unigui Yeni Bileşenler
Yazar: pro_imaj - 14-06-2019, Saat: 13:58 - Forum: Delphi ile Web Teknolojileri - Yorumlar (5)

Son güncellemelerle birlikte unigui çok daha iyi bir yere geldi.

Aşağıda bazı yeni bileşenlere ait görselleri görebilirsiniz, son sürümde örnek projelerde eklenmiş.

ReCaptcha
ShowProgress
IconCombobox
PivotGrid
NativeImageList - Image Files
UniMap
CalendarPanel (Mobile)
Grid - RowWidget


+Grid - RowWidget 
brGqyo.png



+Maps
NO4nbJ.png

Bu konuyu yazdır

  treeview tarzı dbgrid önerisi
Yazar: wiseman - 14-06-2019, Saat: 12:23 - Forum: Genel Programlama - Yorum Yok

Arkadaşlar selamlar

XE2 versiyonunda kullanılmak üzere, treeview bileşenine benzer, dbgrid bileşenine ihtiyacım var. Ana grupların altında alt grupları listelemem gerekiyor. Bu konuda desteklerinizi rica ederim.

Bu konuyu yazdır

  Read-Only Hatası
Yazar: arsl01 - 14-06-2019, Saat: 10:00 - Forum: Mobil Platform - FireMonkey (FMX) - Yorumlar (8)

Merhaba, 
Ben multi-platform tarafinda sql server'a veri kaydetmeye calisiyorum,
Sorun windowsta derledigimde gayet duzgun calisiyor hat vermeden fakat androidde derledigimde read-only hatasi aliyorum.
isin ilginc tarafi veri okurken hicbir sikinti yok sadece veri kaydederken bu hatayi aliyorum.

procedure TForm1.btn_onaylaClick(Sender: TObject);
Var
 i:integer;
begin

if Edit1.Text='1578' then
begin
 ayarlartab_slide.ExecuteTarget(self);
 edit1.Text:='';
 exit;
end;
  if length(edit1.Text)<>11 then
  Begin
    ShowMessage('Hatalı Tc No');
    edit1.Text:='';
    Exit;
  End;
  Qry_Hasta.Close;
  Qry_Hasta.SQL.Text:='SELECT * FROM HASTA where TC_KIMLIK_NUMARASI='+QuotedStr(Edit1.Text);
  Qry_Hasta.Open;
  if Qry_Hasta.RecordCount=0 then
  Begin
  ShowMessage('Aranılan Kayıt Bulunamadı');
  Edit1.Text:='';
  Edit1.SetFocus;
 Exit;
  End;
  Qry_SiraAl.Close;
  Qry_SiraAl.SQL.Text:='SELECT * FROM HASTA_SIRA WHERE KABUL_TARIHI='+TarihDuzenlesql(date,'')+' AND HASTA_KODU='+Qry_Hasta.FieldByName('HASTA_KODU').AsString;
  Qry_SiraAl.Open;
  if Qry_SiraAl.RecordCount>0 then
  Begin
  Qry_sirakntrl.Close;
  Qry_sirakntrl.ParamByName('TC_KIMLIK_NUMARASI').Value:=edit1.Text;
  Qry_sirakntrl.Open;
  if Qry_sirakntrl.RecordCount<>0 then
  begin
  label2.Text:='MEVCUT SIRANIZ';
  siranotab_slide.ExecuteTarget(self);
  label2.Text:=Qry_sirakntrl.FieldByName('NUMARATOR_SIRASI').AsString;
  end;
    //ShowMessage('Kişi Daha Önce Sıra Almış Tekrar Alamaz...');
    edit1.Text:='';
    Exit; End;
 Qry_Sorgu.Close;
 Qry_Sorgu.SQL.Text:='SELECT MAX (NUMARATOR_SIRASI) AS SIRA FROM HASTA_SIRA WHERE KABUL_TARIHI='+TarihDuzenlesql(date,'')+' AND AH_KIMLIK_NO='+QuotedStr(initc);     //KAC KAYIT VAR SORGULU
 Qry_Sorgu.Open;
 i:=Qry_Sorgu.FieldByName('SIRA').AsInteger+1;
 Qry_SiraAl.Append;
 Qry_SiraAl.FieldByName('HASTA_KODU').Value:=Qry_Hasta.FieldByName('HASTA_KODU').AsString ;
 Qry_SiraAl.FieldByName('TC_KIMLIK_NUMARASI').Value:=Qry_Hasta.FieldByName('TC_KIMLIK_NUMARASI').AsString;
 Qry_SiraAl.FieldByName('AD').Value:=Qry_Hasta.FieldByName('AD').AsString ;
 Qry_SiraAl.FieldByName('SOYADI').Value:=Qry_Hasta.FieldByName('SOYADI').AsString ;
 Qry_SiraAl.FieldByName('AH_KIMLIK_NO').Value:=initc;
 Qry_SiraAl.FieldByName('NUMARATOR_SIRASI').AsInteger:=i;
 Qry_SiraAl.FieldByName('KABUL_TARIHI').AsDateTime:=DATE;
 Qry_SiraAl.FieldByName('KABUL_ZAMANI').AsDateTime:=NOW;
 Qry_SiraAl.Post;
 label2.Text:=i.ToString;
 siranotab_slide.ExecuteTarget(self);
 edit1.Text:='';
end;
Z5WOZZ.png

Bu konuyu yazdır

  Facebook gibi bildirim
Yazar: hakanharbeli - 14-06-2019, Saat: 00:00 - Forum: Mobil Platform - FireMonkey (FMX) - Yorumlar (5)

Merhaba,
Uygulamam facebook gibi bildirim eklemek istiyorum. Uygulama iconun sağ üst köşesinde 4 yazsın mesela. bunun için bildiğiniz bir yöntem kaynak var mı şimdiden çok teşekkür ederim

Bu konuyu yazdır

  Delphi LZW Algoritması
Yazar: narkotik - 13-06-2019, Saat: 22:35 - Forum: Makale - Yorumlar (2)

Merhaba,

İhtiyaç gereği LZW algoritması kullanmam gerekti. Diğer dillerde internet üzerinde pek çok örnek kod varken Delphi'de elle tutulur bir şey göremedim. İhtiyaç dahilinde yazdım birilerinin işini görür diye paylaşıyorum.

LZW algoritması nedir?
Lempel, Ziv ve Welch tarafından geliştirilmiş kayıpsız sıkıştırma algoritmalarından birisidir. Karşılaşılan karakter grupları bir tabloda tutularak aynı karakter grupları ile karşılaşıldığında sadece tablodaki numarası yazılarak veri kısaltılmış olur... Merak eden arkadaşlarımız devamını araştırabilir.

Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.

lQL3BX.png 

P7pnqd.png

unit LZWLib;

{****************************
 LZWLib.pas 2019
 Salih BAĞCI
*****************************}

interface

 uses SysUtils, System.Classes;

 type
   TLZWEncodeResult = record
   EncodeString     : String;
   SozcukList       : String;
 end;

 type
   TLZWDecodeResult = record
   DecodeString     : String;
   SozcukList       : String;
 end;

 type
   TMultiArray = array of array of String;

 function IntegerArrayIndexOf(const AArray:TMultiArray;const ASearch:String):Integer;
 function StringArrayIndexOf(const AArray:TMultiArray;const ASearch:String):Integer;
 function EncodeLZW(const AValue: String):TLZWEncodeResult;
 function DecodeLZW(const AValue: String):TLZWDecodeResult;

 const EncodeAyrac = '-';
 const ASCII_BEGIN = 400;

implementation

function IntegerArrayIndexOf(const AArray: TMultiArray; const ASearch: String): Integer;
Var
 Ind : Integer;
begin
 Result := -1;
 for Ind := Low(AArray) to High(AArray) do
   if AArray[Ind][1] = ASearch then
     Exit(Ind);
end;

function StringArrayIndexOf(const AArray: TMultiArray; const ASearch: String): Integer;
Var
 Ind : Integer;
begin
 Result := -1;
 for Ind := Low(AArray) to High(AArray) do
   if AArray[Ind][0] = ASearch then
     Exit(Ind);
end;

function DecodeLZW(const AValue: String): TLZWDecodeResult;
Var
 xSozcukArray  : TMultiArray;
 xSozcukKonumN : Integer;
 xSozcukLength : Integer;
 Ind           : Integer;
 xValueList    : TStringList;
 OLD           : String;
 NEW           : String;
 S,C           : String;
 ASCII         : Integer;
begin
 if AValue = '' then
   Exit;
 Result.DecodeString := '';
 Result.SozcukList   := '';
 xSozcukLength       := 0;
 ASCII               := ASCII_BEGIN;

 xValueList := TStringList.Create;
 with xValueList do
 begin
   BeginUpdate;
   Text := AValue;
   Text := StringReplace(Text,EncodeAyrac,sLineBreak,[rfReplaceAll]);
   EndUpdate;
 end;

 try
   for Ind := 0 to Pred(xValueList.Count) do
   begin
     if StrToInt(xValueList[Ind]) < ASCII_BEGIN + 1 then
     begin
       Inc(xSozcukLength);
       SetLength(xSozcukArray,xSozcukLength,2);
       xSozcukArray[Pred(xSozcukLength)][0] := Char(StrToInt(xValueList[Ind]));
       xSozcukArray[Pred(xSozcukLength)][1] := xValueList[Ind];
     end;
   end;

   OLD                 := Char(StrToInt(xValueList[0]));
   Result.DecodeString := OLD;
   C                   := '';

   for Ind := 1 to Pred(xValueList.Count) do
   begin
     NEW           := xValueList[Ind];
     xSozcukKonumN := IntegerArrayIndexOf(xSozcukArray,NEW);
     if xSozcukKonumN = -1 then
     begin
       S := OLD;
       S := S + C;
     end
     else
       S := xSozcukArray[xSozcukKonumN][0];

     Result.DecodeString := Result.DecodeString + S;
     C                   := S[1];

     Inc(xSozcukLength);
     Inc(ASCII);
     SetLength(xSozcukArray,xSozcukLength,2);
     xSozcukArray[Pred(xSozcukLength)][0] := OLD + C;;
     xSozcukArray[Pred(xSozcukLength)][1] := IntToStr(ASCII);
     Result.SozcukList                    := Result.SozcukList + OLD + C + ' : ' + IntToStr(ASCII) + sLineBreak;
     OLD                                  := S;
   end;
 finally
   FreeAndNil(xValueList);
 end;
end;

function EncodeLZW(const AValue: String): TLZWEncodeResult;
Var
 xSozcukArray   : TMultiArray;
 xSozcukLength  : Integer;
 xSozcukKonumPC : Integer;
 xSozcukKonumP  : Integer;
 Ind            : Integer;
 P              : String;
 C              : Char;
 ASCII          : Integer;
begin
 if AValue = '' then
   Exit;
 Result.EncodeString := '';
 Result.SozcukList   := '';
 xSozcukLength       := 0;
 ASCII               := ASCII_BEGIN;

 for Ind := Low(AValue) to High(AValue) do
 begin
   if StringArrayIndexOf(xSozcukArray,AValue[Ind]) = -1 then
   begin
     Inc(xSozcukLength);
     SetLength(xSozcukArray,xSozcukLength,2);
     xSozcukArray[Pred(xSozcukLength)][0] := AValue[Ind];
     xSozcukArray[Pred(xSozcukLength)][1] := IntToStr(Ord(AValue[Ind]));
   end;
 end;

 P := AValue[1];
 for Ind := Succ(Low(AValue)) to High(AValue) do
 begin
   C := AValue[Ind];
   xSozcukKonumPC := StringArrayIndexOf(xSozcukArray,P + C);
   if xSozcukKonumPC <> -1 then
     P := P + C
   else
   begin
     xSozcukKonumP       := StringArrayIndexOf(xSozcukArray,P);
     Result.EncodeString := Result.EncodeString + xSozcukArray[xSozcukKonumP][1] + EncodeAyrac;

     Inc(xSozcukLength);
     Inc(ASCII);
     SetLength(xSozcukArray,xSozcukLength,2);
     xSozcukArray[Pred(xSozcukLength)][0] := P + C;
     xSozcukArray[Pred(xSozcukLength)][1] := IntToStr(ASCII);
     Result.SozcukList                    := Result.SozcukList + P + C + ' : ' + IntToStr(ASCII) + sLineBreak;

     P := C;
   end;
 end;
 xSozcukKonumP       := StringArrayIndexOf(xSozcukArray,P);
 Result.EncodeString := Result.EncodeString + xSozcukArray[xSozcukKonumP][1];
end;

end.

Bu konuyu yazdır

  [Çözüldü] Trigger çalışmaması hk.
Yazar: cinarbil - 12-06-2019, Saat: 15:31 - Forum: MS SQL Server - Yorumlar (6)

İyi günler.
Aşağıdaki triggeri  stokHareket dosyasına oluşturdum sql management ten oluşan trigger i görebiliyorum.

CREATE TRIGGER Stok_Giris ON StokHareket
AFTER INSERT
AS
 DECLARE @Hrkid INT
 DECLARE @miktar FLOAT
 SELECT @Hrkid = ST_STOKID, @miktar = ST_MIKTAR  FROM inserted
 UPDATE Stok SET STOK_TOP_GRN = STOK_TOP_GRN+@miktar 
 WHERE STOK_ID=@Hrkid

sql management ile veya programdan insert yaparak hareket eklediğim halde STOK_TOP_GRN  alanı değişmiyor

trigger içindeki işlemleri çalışırken görebilir miyim
trigger tetiklendi, @Hrkid   aldığı değer gibi

Bu konuyu yazdır

  Access Violation
Yazar: arsl01 - 12-06-2019, Saat: 14:28 - Forum: Mobil Platform - FireMonkey (FMX) - Yorumlar (12)

merhaba iyi gunler assagideki kod satirinda ** ile baslayan kodu ekleyince yani ini.dosyasindan veri cekince access violation hatasi aliyorum sorun nedir?

procedure TForm1.FormShow(Sender: TObject);
var
iniServer,iniAd:string;
ini1 : TINIFile;
i:integer;
begin
 ini1 := TINIFile.Create(TPath.Combine(TPath.GetDocumentsPath ,'SETTINGS.INI'));
 iniServer:= ini1.readString('DOKTOR','SERVER', '');
 iniAd:=ini1.ReadString('DOKTOR','SERVER','');
 initc:=ini1.readString('DOKTOR','TC','');
 ini1.Free;

  if (iniServer='')or(iniAd='')or (initc='') then
  begin
    ShowMessage('Sunucu Ayarları Eksik Lütfen Doldurun');
    ayarlartab_slide.ExecuteTarget(self);
    exit;
  end;

  SetLength(con_S,2);
  SetLength(Qry_S,2);
  for I := 0 to Length(con_S)-1 do
  Begin
       ini1 := TINIFile.Create(TPath.Combine(TPath.GetDocumentsPath ,'SETTINGS.INI'));
   /
******     con_S[i].Server:=ini1.readString('DOKTOR'+i.ToString,'SERVER', '');
  
  End; 
JV702B.png

Bu konuyu yazdır

  Com Porttan gelen veriyi strin formatına çevirme
Yazar: 41linea41 - 11-06-2019, Saat: 23:49 - Forum: Genel Programlama - Yorumlar (3)

Merhaba

GPS cihazını com porttan nrComm componenti ile okuyorum (farklı componentlerle de okudum.) .
Örnek koda gör eyaptığımda yada demo uygulama da gelen veri aşağıdaki gibi anlamsız ve strine çeviremedim.

Kod:
„#a„„!„­úG¬
¤%@¤¥bÖ¤¥¥ ÿÄ)¥%r¤iÿw„a„!…#!„a#    -„!c#Œ„!„­)!–­)%@¤¥bõ)¥¥i¥¥¥Cý)¤ã@„a„!+)£„#a$
#!!…#!„„,Œ¥¤%Û¤¥b¥¥¥õ)¥¥(·qaËw„c„!…#!„a#$    ÷wca3cc}#­úG
¤%@¤¥bÖ¤¥¥ ÿÄ)¥%r¤iÿw„„!!…#!„„!$¥÷!„a3cc}#µ)!
¤%Û¤¥bB)¥¥i ¤¥¥!¤„-©Œ#„c…#3!„s=¥÷wÂ!3#c¤)Œ… -ߤ¥cF)- ¨¥¥-¥¥¥ä!¤ãw„a„!…#!„a#    -„!c#Œ„!„­)!–­)%@¤¥bõ)¥¥i¥¥¥Cý)¤ã©Œ#0„yscq„a$
c#c…a3!„,Œi1×)
Ô)¤Zˆ1¥-[¤¥¥
‘iiÿ@„c„!+)£„#g1%„#)#Œ!    „a !
¤%Û¤¥b¥¥¥õ)¥¥(·!„-
¤%Û¤¥b¥¥¥õ¥¥¥%þ¤¤ø
Serial watcher isimli program ile denediğim de ise gelen veri gayet güzel şekilde ekranda görünüyor gelen veriyi integer çevirip memoda gösteriyor. ben de bu şekilde bu veriyi nasıl convert edebilirim. farklı component de kullanabilirim.

serial watcher programı çıktısı şu şekilde:
Kod:
4 132 231 132 33 43 41 163 132 35 97 36 13 32 152 43 33 33 133 35 33 132 132 44 140 165 180 21 164 37 219 164 165 98 4 165 165 165 2 245 41 165 165 40 183 113 97 203
64 132 231 132 33 43 99 163 132 35 103 49 148 90 33 132 97 51 99 99 125 35 173 250 33 141 13 21 164 37 219 164 165 98 66 41 165 165 105 32 164 165 165 9 8 164 132 45
245 33 132 33 33 133 33 9 33 132 33 36 9 247 33 132 132 41 33 99 132 35 44 140 165 227 21 164 37 219 164 165 98 4 165 165 165 2 245 41 165 165 40 254 164 164 227
169 204 35 132 99 133 35 51 33 132 107 73 105 195 33 33 132 41 33 33 164 41 140 133 11 45 223 164 165 99 70 41 45 32 168 165 165 141 45 4 165 165 165 228 141 33 164 227
119 132 231 132 33 133

Bu konuyu yazdır

  Quick reportta hem satır, hem sütünu db.den alma
Yazar: boreas - 11-06-2019, Saat: 17:39 - Forum: Genel Programlama - Yorumlar (6)

Merhaba arkadaşlar,
Quickreportta bir çıktı almaya çalışıyorum. İşin aslı sadece 57 tane satır yazacak bunu db.den alacak. Satırların yanyana yazıp her 4 satırda
bir sıra aşağıya inecek ve hücresel bir rapor almış olacağım.
Yani ;

1.satır ----1.Kayıt     2.Kayıt   3.Kayıt   4.Kayıt
2.satır ----5.Kayıt     6.Kayıt   7.Kayıt   8.Kayıt
..
.
.
15.satır ----57.Kayıt


isteğim bu şekilde çıktı alabilmek bunu nasıl yapabilirim ?

Teşekkürler.

Bu konuyu yazdır

  Calculated Alanda Ondalık Sayısı Nasıl Belirlenir?
Yazar: Fesih ARSLAN - 11-06-2019, Saat: 16:58 - Forum: PostgreSQL - Yorumlar (5)

Merhaba,
PostgreSQL veri tabanında bir hesaplama yaparak sonuç alıyorum. 

'% '||(t1.top*100 / t2.toplam) AS yuzdelik
Yukarıdaki işlem sonucunda tam sayı dönüyor. İki basamak ondalık hassasiyeti olması için hangi fonksiyon veya metodu kullanmalıyım.

Bu konuyu yazdır