Maaf Mas Eddy, dalam qryHit, nilai yang dirank itu bukan field NILAI dari tabel 
NILAI.
Tapi dari hasil perhitungan (field PENYESUAIAN_PLUS dari query PERHITUNGAN).

Mohon diliat lagi and mohon dibantu betulinnya..... hehehehhehe.

Makasih

Diki w




________________________________
Dari: Edy WIYONO <[email protected]>
Kepada: [email protected]
Terkirim: Kamis, 15 Januari, 2009 09:05:33
Topik: Re: [belajar-access] rank -->Alternatifnya adalah pake Query


Mas Diki.
bisa dilihat di attachment, kita bisa memakai bantuan satu query misalnya: 
qryHit untuk menghitung Rank.
 
Salam Hangat dan Jabat Erat,
 
Edy WIYONO
----- Original Message ----- 
From: aksan kurdin 
To: belajar-access@ yahoogroups. com 
Sent: Tuesday, January 13, 2009 17:06
Subject: Re: Bls: Bls: Bls: Bls: [belajar-access] rank
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 <pangestu_cx@ yahoo.com>

Makasih Bang Aksan, akan saya kembangkan sesuai kebutuhan.
Berarti fungsi rank tersebut bisa digunakan efektif di report ya Bang.


diki w




________________________________
Dari: aksan kurdin <aksan.kurdin@ gmail.com>
Kepada: belajar-access@ yahoogroups. com
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>

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>
Kepada: belajar-access@ yahoogroups. com
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>

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>
Kepada: belajar-access@ yahoogroups. com
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>

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 alamat Email baru Anda!
Dapatkan nama yang selalu Anda inginkan sebelum diambil orang lain!
http://mail.promotions.yahoo.com/newdomains/id/

Kirim email ke