Arsip: mass cashtoword di fast report

 
user image
more 11 years ago

jonathan_giuliano

Halo delphiers Saya newbie fastreport nih Saya ada beberapa pertanyaan Udh search sh tpi belum nemu solusi nya 1 Gmn sih cara ngisi frxMemo di fastreport untuk jumlah uang Terbilang (seperi di kwitansi) tetapi dengan banyak record? Kalo u satu record saya biasanya langsung set dari program. Jadi nilai uang nya saya baca dari variabel. Nah dengan banyak record saya belum berhasil, saya ngambil Nilai uang nya dari frxMemo lain, tetapi tidak terdeteksi nilainya Malah yang terdeteksi adalah "" 2 Gmn cari min. dan max. tanggal dari fastreport detail band Saya punya detail report dengan rentang waktu yang bisa Dipilih oleh user. Nah untuk nampilin min. dan max. dari rentang tersebut gimana ya? Misalnya "Periode: 12 Aug 2009 s/d 25 Sep 2009" Pake function min dan max tidak tampil apa-apa. 3 Terakhir apa ya addon/tool IDE u mempermudah proses debugging di Delphi? Terima kasih sebelumnya
user image
more 11 years ago

jonathan_giuliano

waduh gak ad yg jwb... dipersingkat aj kali ya 1. Gimana cara bikin kwitansi dengan tulisan jumlah terbilang tapi bisa banyak, tidak satu2 2. Gimana cara nampilin tanggal minimum dan maximum dari satu laporan thanks
user image
more 11 years ago

herux

ga bisanya kenapa ?
user image
more 11 years ago

heriy4nt0

sy coba jawab untuk no 1 (no 2 sy ndak mgerti maksudnya apa?) untuk membuat tulisan jumlah terbilang di fastreport, sy menulis langsung di event beforeprint (mis: di event beforeprint frxmemo133) dengan mengambil nilai pada field totaljumlah. Jadi berapapun record yang ada jumlah terbilang pasti akan tampil.
user image
more 11 years ago

haidarfaz

alternatif untuk nomor 1 : buat field baru dg Conputed By ............
user image
more 11 years ago

jonathan_giuliano

ga bisanya kenapa ? 1. saya kan bikin fungsi terbilang di delphi u mengkonvert jumlah uang jadi katakata, contoh : frxMemoTerbilang.text := MyUtils.Terbilang(frxMemoPrice.Text); nah u report tunggal sih bisa, tapi untuk detail malah error, frxMemoPrice nya kedetect "", bukannya angka (mis: 450000) 2. Misalnya di laporan detail, tanggal record pertama 5 Feb 2009, terus tanggal record terakhir 20 Feb 2009, nah gimana cara nampiln tanggal2 tersebut di header report sy coba jawab untuk no 1 (no 2 sy ndak mgerti maksudnya apa?) untuk membuat tulisan jumlah terbilang di fastreport, sy menulis langsung di event beforeprint (mis: di event beforeprint frxmemo133) dengan mengambil nilai pada field totaljumlah. Jadi berapapun record yang ada jumlah terbilang pasti akan tampil. hmm nanti dh saya coba, soalnya saya eventnya di onclick button
user image
more 11 years ago

jonathan_giuliano

sy coba jawab untuk no 1 (no 2 sy ndak mgerti maksudnya apa?) untuk membuat tulisan jumlah terbilang di fastreport, sy menulis langsung di event beforeprint (mis: di event beforeprint frxmemo133) dengan mengambil nilai pada field totaljumlah. Jadi berapapun record yang ada jumlah terbilang pasti akan tampil. udah saya coba, masukin fungsi terbilang dari program ke event beforeprint memo di fastreport code, tapi error, kalu boleh bisa minta contoh script nya ngga? trus saya coba juga masukin ke event beforeprint dari component frx yang ada di form, tetep blum bisa uy codenya:

procedure TfrmRegistration.frxRegReceiptBeforePrint(
  Sender: TfrxReportComponent);
var
  memCashWord : TfrxMemoView;
begin
  memCashWord := frxRegReceipt.FindObject('txtCashWord') as TfrxMemoView;
  memCashWord.Text := AppUtil.Terbilang(ADOQuery1['TotalPrice']);
end;
jadi kalu ada record banyak, bacanya hanya dari record pertama saja, jadi meskipun total uang nya beda2 tapi terbilang nya semua sama
user image
more 11 years ago

heriy4nt0

this is the code, including Angka terbilang

procedure Memo133OnBeforePrint(Sender: TfrxComponent);
var ns:string;
function NilaiKeKalimat(nilai: Integer): String;
var k:Integer;
    nilaik,s:String;
    gettri,
    hasil,
    bilre,
    rat:string;
    function GetAngka(bil:Integer):String;
    begin
        case bil of
           0:Result:='Nol';
           1:Result:='Satu';
           2:Result:='Dua';
           3:Result:='Tiga';
           4:Result:='Empat';
           5:Result:='Lima';
           6:Result:='Enam';
           7:Result:='Tujuh';
           8:Result:='Delapan';
           9:Result:='Sembilan';
        end;
    end;
    function TriBil(kata:String):String;
    var bil1,bil2:String;
        i,j:Integer;
    begin
           j:=StrToInt(kata[length(kata)]);
           bil1:=GetAngka(j);
           if Length(kata)>1 then begin
              i:=StrToInt(kata[length(kata)-1]);
              case i of
                1 : begin
                      if j = 0 then bil1:='Sepuluh ' else
                      if j = 1 then bil1:='Sebelas ' else
                         bil1 := bil1 + ' Belas';
                    end;
              else
                 if (i>0) then begin
                    bil2:=GetAngka(i);
                    if j = 0 then bil1:='';
                    bil1:= bil2 + ' Puluh '+bil1;
                 end else
                    if j = 0 then bil1:='';
               end;
           end;
           if Length(kata)>2 then begin
              i:=StrToInt(kata[1]);
              bil2:=GetAngka(i);
              if i = 0 then bil2 := '' else
              if i = 1 then bil2 :='Seratus ' else
              begin
                  bil2:=bil2+' Ratus ';
              end;
              bil1:= bil2 + bil1;
           end;
           Result :=bil1;
    end;
begin
    nilaik:=IntToStr(nilai);
    k:=0;
    hasil:='';
    bilre:='';
    rat:='';
    if Length(nilaik)>3 then begin
     while Length(nilaik) > 3 do begin
        gettri:=copy(nilaik,length(nilaik)-2,3);
        Delete(nilaik,length(nilaik)-2,3);
        hasil:=TriBil(gettri);
        if rat <> '' then begin
           if hasil = 'Satu' then hasil:='Se' else
           begin
            s:= UpperCase(rat[1])+copy(rat,2,length(rat));
            rat:=' '+s;
           end;
        end;
        if hasil='' then rat :='';
        bilre:=hasil + rat + ' '+bilre;
        k := k + 1;
        case k of
          1 : rat :='ribu';
          2 : rat :='juta';
          3 : rat :='milyard';
        end;
     end;
     if Length(nilaik)>0 then begin
        hasil:=TriBil(nilaik);
        if (hasil='Satu') then begin
          if bilre ='' then hasil:='Se' else
          if k = 1 then hasil := 'Se' else
          begin
             nilaik:=' '+ UpperCase(rat[1])+copy(rat,2,length(rat));
             rat := nilaik;
          end;
        end else
        begin
           nilaik:=' '+ UpperCase(rat[1])+copy(rat,2,length(rat));
           rat := nilaik;
        end;
        bilre:= hasil + rat+' '+ bilre;
     end;
    end else begin
      bilre:=TriBil(nilaik);
    end;
    Result :=bilre;
end;
begin
   ns:=NilaiKeKalimat(<totalkotor>);
   memo133.text:='Terbilang : '+ ns + 'Rupiah';
end;
total kotor merupakan jumlah perhitungan di slip pembayaran salary, dan merupakan variabel yang di bentuk untuk menjumlahkan data2 yang lain. Gantikan totalkotor dengan nilai yang diinginkan (atau dari suatu variabel yang di bentuk untuk melakukan SUM.
user image
more 11 years ago

jonathan_giuliano

@heriy4nt0: Great!! thanks so much. mudah2an codenya bermanfaat jga u yg lain yg membutuhkan btw script ini bisa disave ngga biar bisa diload oleh report2 lainnya? sorry nh byak nanya, abis baru pegang fastreport trus yg kedua Misalnya di laporan detail, tanggal record pertama 5 Feb 2009, terus tanggal record terakhir 20 Feb 2009, nah gimana cara nampiln tanggal2 tersebut di header report thx lgi
user image
more 11 years ago

jonathan_giuliano

ada satu lagi nh
ns:=NilaiKeKalimat(<SUM(<ADOQuery1."Total">, MasterData1, 1)>);
Error pas di preview, untuk SUM gmana ya codenya
The following error(s) have occured:
Could not convert variant of type (Null) into type (Int64)
more ...
  • Pages:
  • 1
  • 2
  • 3
Share to

Random Topic

Local Business Directory, Search Engine Submission & SEO Tools FreeWebSubmission.com SonicRun.com