fungsi rank anda tidak saya gunakan, saya tuangkan semua di report, lihat
query based record sourcenya, dan lihat group by / sort by di setiap group,
ada modul di belakang report. rank di report itu hanya unbound control yang
berisi source =1 dan running sum over group.

tanyakanlah apa yang tidak dimengerti.


thks,

2009/1/13 diki wahyudin <[email protected]>

>   Makasih Bang Aksan, akan saya kembangkan sesuai kebutuhan.
> Berarti fungsi rank tersebut bisa digunakan efektif di report ya Bang.
>
>
> diki w
>
>  ------------------------------
> *Dari:* aksan kurdin <[email protected]>
> *Kepada:* [email protected]
> *Terkirim:* Selasa, 13 Januari, 2009 16:23:18
> *Topik:* Re: Bls: Bls: Bls: [belajar-access] rank
>
>  Anda lebih enak kerja di report, daripada di query (saya juga :) )
> pelajari attachment, di report1.
>
>
> aksan kurdin
>
> 2009/1/13 diki wahyudin <pangestu_cx@ yahoo.com <[email protected]>>
>
>>    Fungsi Rank tersebut digunakan untuk mendapatkan ranking suatu record
>> dalam tiap-tiap group.
>> Misalnya dalam satu group
>>
>>      RECORD GROUP PENYESUAIAN_ PLUS RANK NILAI_POINT NILAI_H 1 AAAB 73,4
>> 1 0,17 A 2 AAAB 72,3 2 0,33 B 3 AAAB 71,2 3 0,50 B 4 AAAB 69,8 4 0,67 B 5
>> AAAB 67,5 5 0,83 B 6 AAAB 66,9 6 1,00 C
>>
>> dimana :
>> NILAI_POINT : [PENYESUAIAN_ PLUS] / [COUNT_OF_GROUP]
>> NILAI_H : IIF([NILAI_POINT]<=0.25; "A"; IIF([NILAI_POINT]<=0.85; "B";"C"))
>>
>> Maksud saya seperti itu Bang Aksan, tetapi nilai di NILAI_POINT tersebut
>> ngaco. Dengan rumus tersebut, nilainya adanya lebih dari 1, itu kan tidak
>> mungkin.
>> Ternyata yang masalahnya yaitu hasil rank tersebut tidak 1 2 3 dst, tapi 1
>> 3 5 dst, atau 1 4 8 dst.
>>
>> Terima kasih sebelumnya.
>>
>> diki w
>>
>>
>>
>>  ------------------------------
>> *Dari:* aksan kurdin <aksan.kurdin@ gmail.com <[email protected]>>
>> *Kepada:* belajar-access@ yahoogroups. com<[email protected]>
>> *Terkirim:* Senin, 12 Januari, 2009 21:09:31
>> *Topik:* Re: Bls: Bls: [belajar-access] rank
>>
>>  saya juga blm nangkap dengan fungsi rank yang anda buat.
>> Option Compare Database
>> Dim ctr, INTVAL As Integer
>> Dim CustID As String
>>
>> Public Function R(Id As String, INTVAL As Integer) As Integer
>>     If CustID <> Id Then
>>         ctr = 1
>>         CustID = Id
>>     Else
>>         ctr = ctr + 1
>>     End If
>>     R = ctr
>> End Function
>>
>>
>> CustID , ctr, intval bukan variabel statik jadi nilai nya pasti kosong/nul
>> setiap kali fungsi dipanggil, artinya custid selalu tidak sama dengan id,
>> sehingga hanya blok pertama saja yang dijalankan, ctr pun pasti kembali 1.
>>
>> sebenarnya apa yang mau dikerjakan fungsi ini ? apa kembaliannya ?
>>
>>
>>
>> untuk perkara query kemarin saya sarankan dengan sub query, sekarang
>> melihat kasusnya, bisa disederhanakan lagi dengan membentuk query average
>> per group dari luar:
>>
>> SELECT NILAI.GROUP, Avg(NILAI.NILAI) AS AvgOfNILAI
>> FROM NILAI
>> GROUP BY NILAI.GROUP;
>>
>>
>> simpan sebagai qsAvg.
>>
>> dan berikut hasil query yang memodifikasi fungsi dvag semula, minus fungsi
>> rank (saya tunggu penjelasannya) :
>>
>> SELECT NILAI.NIK, NILAI.GROUP, NILAI.NILAI, NILAI.PENAMBAHAN,
>> qsAvg.AvgOfNILAI AS Penyesuaian1, [Nilai]/[AvgOfNilai ]*70 AS
>> PenyesuaianPlus, [Nilai]/[AvgOfNilai ]*70+[Penambahan ] AS PenyesuaianPlus1
>> FROM NILAI INNER JOIN qsAvg ON NILAI.GROUP = qsAvg.GROUP;
>>
>>
>> aksan kurdin
>>
>>
>> 2009/1/13 diki wahyudin <pangestu_cx@ yahoo.com <[email protected]>>
>>
>>>    ada yg terlewat, rumus yang sebenarnya yaitu :
>>> PENYESUAIAN_ PLUS = [NILAI]/[RATA2 GROUP] * 70
>>> RATA2 GROUP tsb diambil dari DAVG atau SELECT AVG dari sql
>>>
>>>  ------------------------------
>>> *Dari:* diki wahyudin <pangestu_cx@ yahoo.com <[email protected]>>
>>> *Kepada:* belajar-access@ yahoogroups. com<[email protected]>
>>> *Terkirim:* Selasa, 13 Januari, 2009 11:08:19
>>> *Topik:* Bls: [belajar-access] rank
>>>
>>>   Nilai 70 itu memang angka default untuk menyamakan standar penilaian
>>> agar berkisar pada angka tersebut. Karena ada penilai yg pelit dan ada juga
>>> yg royal.
>>> Maaf rata2 AABC emang 70,75, karena dvagnya belum jalan, maka saya tulis
>>> manual.
>>>
>>> Kalau untuk rata2nya dulu sudah bisa, dihitung dulu pake crosstab. Cuman
>>> saya pengen coba cara lain kali aja ada yang lebih cepet.
>>>
>>> Groupnya memang banyak sekitar 150-an.
>>> Yang masih jadi masalah itu yaitu fungsi rank-nya, mungkin Bang Aksan
>>> punya metode lain.
>>>
>>> Terima kasih.
>>>
>>> Diki W
>>>
>>>  ------------------------------
>>> *Dari:* aksan kurdin <aksan.kurdin@ gmail.com>
>>> *Kepada:* belajar-access@ yahoogroups. com
>>> *Terkirim:* Senin, 12 Januari, 2009 18:40:54
>>> *Topik:* Re: [belajar-access] rank
>>>
>>>  lupa2 ingat masalah statistik, udah lama :)
>>>
>>> jangan pake davg, :
>>> PENYESUAIAN_ 1: DAvg("[NILAI] ","NILAI" ,"[GROUP] = " & "[" & [GROUP] &
>>> "]")
>>>
>>> coba ganti dengan subquery:
>>> Penyesuaian1: (SELECT Avg(Nilai) FROM [Nilai] WHERE [Group] =
>>> Nilai!Group)
>>>
>>>
>>> Terus yang ini coba terangkan:
>>> PENYESUAIAN_ PLUS: IIf([GROUP]= "AAAB",([ NILAI]/71. 17*70)+[PENAMBAH
>>> AN],([NILAI] /71*70)+[ PENAMBAHAN] )
>>>
>>> Nilai 71.17 adalah rata2 AAAB
>>> Nilai 71 ? apakah rata2 AABC (70.75)
>>> Terus nilai 70 dapat dari mana ?
>>> Bagaimana kalau ada data lain ABCD, BCDE, CDEF, ..... WXYZ ? Nested IIF
>>> di banyakin ?
>>>
>>>
>>> aksan kurdin
>>>
>>>
>>>
>>> 2009/1/12 diki wahyudin <pangestu_cx@ yahoo.com <[email protected]>>
>>>
>>>>   Maaf mohon bantuannya lagi nih buat para pakar semuanya.
>>>>
>>>> Sebetulnya dulu pernah saya tanyakan. Belum juga ketemu masalahnya.
>>>> Berikut contoh file terlampir.
>>>>
>>>> Yang menjadi permasalahan :
>>>> 1.  menggunakan fungsi davg di query, masih error.
>>>> 2. fungsi rank yang saya buat hasilnya tidak bisa digunakan untuk
>>>> perhitungan, karena nilainya berubah sendiri. Jika field NILAI_H pada query
>>>> PENGHITUNGAN dihapus maka hasil rangkingnya benar. sebenarnya dari hasil
>>>> rank tsb saya akan melalukan banyak penghitungan. Tetapi semakin banyak
>>>> penghitungan menggunakan hasil rank, maka hasilnya semakin kacau. Malah 
>>>> pada
>>>> saat kita pindah kursor di field RANK, nilainya bisa berubah otomatis.
>>>>
>>>> Mohon solusinya.
>>>>
>>>> Terima kasih
>>>>
>>>> diki w
>>>>
>>>> ____________ _________ _________ _________ _________ _________ _
>>>> Dapatkan nama yang Anda sukai!
>>>> Sekarang Anda dapat memiliki email di @ymail.com dan @rocketmail.com.
>>>> http://mail. promotions. yahoo.com/ newdomains/ 
>>>> id/<http://mail.promotions.yahoo.com/newdomains/id/>
>>>>
>>>
>>>
>>>
>>> --
>>> Aksan Kurdin
>>>
>>> ------------------------------
>>> Coba emoticon dan skin keren baru, dan area teman yang luas. Coba Y!
>>> Messenger 9 Indonesia 
>>> sekarang.<http://sg.rd.yahoo.com/id/messenger/maxwell/*http://id.messenger.yahoo.com>
>>>
>>> ------------------------------
>>> Apakah demonstrasi turun ke jalan itu hal yang wajar?
>>> <http://id.answers.yahoo.com/question/index;_ylt=ArVePPHO1ZycmPLF76FARzLJRAx.;_ylv=3?qid=20080413223411AAeeuR2>
>>> Temukan jawabannya di Yahoo! Answers!
>>>
>>
>>
>>
>> --
>> Aksan Kurdin
>>
>> ------------------------------
>> Nama baru untuk Anda!
>> <http://sg.rd.yahoo.com/id/mail/domainchoice/mail/signature/*http://mail.promotions.yahoo.com/newdomains/id/>
>> Dapatkan nama yang selalu Anda inginkan di domain baru @ymail dan
>> @rocketmail.
>> Cepat sebelum diambil orang lain!
>>
>
>
>
> --
> Aksan Kurdin
>
> ------------------------------
>  Menambah banyak teman sangatlah mudah dan 
> cepat.<http://sg.rd.yahoo.com/id/messenger/trueswitch/mailtagline/*http://id.messenger.yahoo.com/invite/>
> Undang teman dari Hotmail, Gmail ke Yahoo! Messenger sekarang!
> 
>



-- 
Aksan Kurdin

Kirim email ke