baru saja saya test dan saya ubah code nya

IF v_parent IS NULL OR v_parent='0' THEN
 v_stat := FALSE;
 END IF;

akhirnya mendapatkan value tapi timbul masalaha lagi

setiap kali memakai ORDER BY
muncul error,
 ORA-06502: PL/SQL: numeric or value error
 ORA-06512: at "TABEL.FBB_SORT_MOD_ID", line 17

v_parent VARCHAR2(12);
v_no NUMBER(3);
t_no VARCHAR2(10);
t_who VARCHAR2(12);
v_stat BOOLEAN;
n NUMBER(3);

LINE 17  t_no := v_no||n||t_no;

Trims Pak Awal,

On 4/23/07, dedy afriyanto <[EMAIL PROTECTED]> wrote:
>
> mmh,
> nilai acuan itu bukan no_sort dari keseluruhan ya??
>
> >>
> Logikanya gak gitu mas Dedy, function disini hanya memberi nilai acuan,
> sorting tetap dilakukan SQL melalui perintah ORDER BY berdasarkan nilai
> acuan yg diberikan function.
> >>
>
> kalau saya coba manggil pake
>
> SELECT function('who')
> FROM DUAL
>
> gak mereturn apa-apa
>
> outputnya
> ORA-01785: ORDER BY item must be the number of a SELECT-list expression
>
> >>
> Seperti contoh yg diberikan dibawah B.1.1.1 sebagai turunan dari B tentu
> saja akan berhenti di parent teratas (B). Kalau harus dilooping ke A dan
> C juga, nantinya record B.1.1.1 akan masuk ke group mana?A, B, atau C?
> Atau bisa di-share disini masalah yg muncul apa? Function-nya error a/
> output yg dihasilkan tidak sesuai yg diharapkan?
> >>
>
> ya kan udah ada no nya
>
> WHO    PARENT   NO
> A            NULL       1
> B            NULL       2
> C            NULL       3
> B1.1.1     B            1
>
> kan masalahnya gini
>
> SELECT WHO
> FROM TABLE
> ORDER BY FUNC_SORT(WHO)
>
> Kalau sih FUNC_SORT bisa mendapatkan no_sort dari pemasalahan tabel ini
> kan mudah
> cuma jika sih FUNC_SORT hanya bisa looping cuma di B aja ya no_sort nya
> gak dapet semua donk pak Awal
> sehingga gak bisa
> seperti ini outputnya.
>
> Trima Kasih Pak Awal,
> A
> B
> B1.1.1
> C
>
>
> WHO    PARENT   NO   NO_SORT
> A            NULL       1          1
> B            NULL       2          2
> C            NULL       3          4
> B1.1.1     B            1          3
>
>
>
> >>
> Seperti contoh yg diberikan dibawah B.1.1.1 sebagai turunan dari B tentu
> saja akan berhenti di parent teratas (B). Kalau harus dilooping ke A dan
> C juga, nantinya record B.1.1.1 akan masuk ke group mana?A, B, atau C?
> Atau bisa di-share disini masalah yg muncul apa? Function-nya error a/
> output yg dihasilkan tidak sesuai yg diharapkan?
> Atau mungkin saya yg salah persepsi mengenai contoh kasus yg pertama
> kali di-posting mengenai masalah ini.
> >>
>
>
>
> On 4/23/07, Awaluddin Hamid <[EMAIL PROTECTED]> wrote:
> >
> >   Logikanya gak gitu mas Dedy, function disini hanya memberi nilai
> > acuan,
> > sorting tetap dilakukan SQL melalui perintah ORDER BY berdasarkan nilai
> > acuan yg diberikan function.
> > Seperti contoh yg diberikan dibawah B.1.1.1 sebagai turunan dari B tentu
> >
> > saja akan berhenti di parent teratas (B). Kalau harus dilooping ke A dan
> >
> > C juga, nantinya record B.1.1.1 akan masuk ke group mana?A, B, atau C?
> > Atau bisa di-share disini masalah yg muncul apa? Function-nya error a/
> > output yg dihasilkan tidak sesuai yg diharapkan?
> > Atau mungkin saya yg salah persepsi mengenai contoh kasus yg pertama
> > kali di-posting mengenai masalah ini.
> >
> > Awal
> >
> > dedy afriyanto wrote:
> > >
> > > WHILE v_stat LOOP
> > > SELECT PARENT,NO INTO v_parent,v_no FROM KELUARGA WHERE WHO = t_who;
> > > t_no := v_no||n||t_no;
> > > IF v_parent IS NULL THEN
> > > v_stat := FALSE;
> > > END IF;
> > > t_who := v_parent;
> > > n := n + 1;
> > > END LOOP;
> > >
> > > sepertinya dibagian ini yang membuat menjadi tidak meloop semua
> > > >>IF v_parent IS NULL THEN
> > >
> > > kalau parentnya null itu kan wajar
> > > yang punya parent null juga ada dan lebih dari 1
> > >
> > > sehingga misal
> > > A parentnya null no 1
> > > B parentnya null no 2
> > > C parentnya null no 3
> > >
> > > nah kalau saya ambil anak cucunya B misal B.1.1.1
> > > dia ( fungsi tadi ) berhenti di B
> > > terus dia gak meloop ke A dan C..
> > >
> > > tapi trima kasih...
> >  
> >
>
>


[Non-text portions of this message have been removed]

Kirim email ke