Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
FastReport sayıyı yazıya çevirmek
#1
Salemun aleyküm dostlarım. FastReport ta sum komutu ile toplanan bir sayıyı yazıya çevirmek gerekiyor. Ne yaptım sa olmadı. Forumda örnek kodlar vardı denedim ama çalışmadı. Mümkünse bu konuda bana yardımcı olur musunuz. Hersey içi. Teşekkür ederim
Cevapla
#2
(11-05-2020, Saat: 03:15)Mikdad Adlı Kullanıcıdan Alıntı: Salemun aleyküm dostlarım. FastReport ta sum komutu ile toplanan bir sayıyı yazıya çevirmek gerekiyor. Ne yaptım sa olmadı. Forumda örnek kodlar vardı denedim ama çalışmadı. Mümkünse bu konuda bana yardımcı olur musunuz. Hersey içi. Teşekkür ederim

Merhabalar,

Şöyle de deneyebilirsiniz. Örnek olması açısından.

function YTL_yazi_ile(tutar: Double; tur: integer): string;
const
       b1: ARRAY [1 .. 9] of string = ('Bir', 'İki', 'Üç', 'Dört', 'Beş',
         'Altı', 'Yedi', 'Sekiz', 'Dokuz');
       b2: ARRAY [1 .. 9] of string = ('On', 'Yirmi', 'Otuz', 'Kırk', 'Elli',
         'Altmış', 'Yetmiş', 'Seksen', 'Doksan');
       b3: ARRAY [1 .. 6] of string = ('Katrilyon', 'Trilyon', 'Milyar',
         'Milyon', 'Bin', '');
var
       gr: ARRAY [1 .. 6] of string[3];
       sn: ARRAY [1 .. 6] of string;
       bs: ARRAY [1 .. 3] of integer;
       tutars, tutart, tutark, sonuct, sonuck: string;
       i, l: integer;

begin
       tutars := floattostr(tutar);
       if pos(',', tutars) = 0 then
               tutars := tutars + ',00';
       tutart := copy(tutars, 1, (pos(',', tutars) - 1));
       tutark := copy(tutars, (pos(',', tutars) + 1), 2);
       tutart := stringofchar('0', (18 - (length(trim(tutart))))) + tutart;
       tutark := tutark + stringofchar('0', (2 - (length(trim(tutark)))));
       for i := 1 to 6 do
               gr[i] := copy(tutart, 1 + (3 * (i - 1)), 3);

       for l := 1 to 6 do
       begin
               bs[1] := strtoint(copy(gr[l], 1, 1));
               if bs[1] <> 0 then
                       (if bs[1] <> 1 then sn[l] := sn[l] + b1[bs[1]] +
                         'Yüz' else sn[l] := sn[l] + 'Yüz');
               bs[2] := strtoint(copy(gr[l], 2, 1));
               if bs[2] <> 0 then
                       sn[l] := sn[l] + b2[bs[2]];
               bs[3] := strtoint(copy(gr[l], 3, 1));
               if bs[3] <> 0 then
                       sn[l] := sn[l] + b1[bs[3]];
               if length(trim(sn[l])) <> 0 then
                       sn[l] := sn[l] + b3[l];
       end;

       if sn[5] = 'BirBin' then
               sn[5] := 'Bin';
       for i := 1 to 6 do
               sonuct := sonuct + sn[i];
       if strtoint(copy(tutark, 1, 1)) <> 0 then
               sonuck := sonuck + b2[strtoint(copy(tutark, 1, 1))];
       if strtoint(copy(tutark, 2, 1)) <> 0 then
               sonuck := sonuck + b1[strtoint(copy(tutark, 2, 1))];
       if tur = 0 then
       begin
               if sonuck <> '' then
                       result := sonuct + ' TL ' + sonuck + ' Krş. '
               else
                       result := sonuct + ' TL';
       end;
       if tur = 1 then
               result := sonuct + ' TL ';
       if tur = 2 then
               result := sonuck + ' Krş. ';
end;


///  frxReport1

procedure TForm1.frxReport1GetValue(const VarName: string; var Value: Variant);
begin
       if VarName='yazi_ile' then YTL_yazi_ile (sizin_degeriniz,0);
    //if VarName='yazi_ile' then YTL_yazi_ile (1000.50,0);

end;

   

Umarım faydalı olur.

Kolay gelsin.
Amaç, bilginin de/aklın da zekat'ını vermek.
Cevapla
#3
Selamlar aşağıdaki linktede bu konu hakkında bilgilendirme mevcuttur.
Lütfen yeni konu açmadan önce kontrol etmenizi öneririm.

https://www.delphican.com/showthread.php?tid=1963
Bu dünyada kendine sakladığın bilgi ahirette işine yaramaz. 
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Fastreport bpl dosyaları MugenPower 2 138 25-06-2020, Saat: 22:59
Son Yorum: MugenPower
Question fastreport pdf ve excell export Ekvador 6 701 03-05-2020, Saat: 22:28
Son Yorum: mcuyan
  FastReport yazıya çevirme adelphiforumz 4 1.785 11-04-2020, Saat: 22:46
Son Yorum: akuyumcu63
  fastReport sayfa sayısını okuma akuyumcu63 3 535 11-04-2020, Saat: 15:04
Son Yorum: hi_selamlar
  FastReport -> DesignReport için frxDesigner Belirleme hi_selamlar 7 1.288 03-12-2019, Saat: 18:22
Son Yorum: hi_selamlar



Konuyu Okuyanlar: 1 Ziyaretçi