|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Nouveau Membre du Club
![]() Inscription : avril 2006 Messages : 86 ![]() |
Salut,
Excusé l'intitulé de la discussion j'ai pas trouvé un plus proche du sujet. Mon problème est peut etre de catégorie SQL, mais je poste en FORMS car la solution que je cherche est au niveau d’un item image basé sur un LONG RAW. Je m’explique : J’ai trois table : DEPT, EMP et PHOTO DEPT( DEPTNO NUMBER(2), DNAME VARCHAR2(14), LOC VARCHAR2(13) ) EMP( EMPNO NOT NULL NUMBER(4), ENAME VARCHAR2(10), JOB VARCHAR2(9), MGR NUMBER(4), HIREDATE DATE, SAL NUMBER(7,2), COMM NUMBER(7,2), DEPTNO NUMBER(2) ) PHOTO( ID NOT NULL NUMBER(7) , DESC VARCHAR2(30), TYPE VARCHAR2(30), BLOB NOT NULL LONG RAW, EMPNO NOT NULL NUMBER(4) ) DEPT( DEPTNO , DNAME , LOC ) EMP( EMPNO , ENAME , JOB , MGR , HIREDATE , SAL , COMM , DEPTNO ) PHOTO( ID , DESC , TYPE , BLOB , EMPNO ) Les tables contiennent respectivement : données du département, données de l’employé et photos des employés plus une photo spéciale (cliché vide identifié par ID = 0 et EMPNO = 0 qui contient le texte « Photo Non Disponible »). La table photo contient des images insérer par read_image_file(). J’ai crée une vue comme suit : Code :
PH_VIEW_DEPT (V_EMPNO, V_DEPTNO, V_ID, V_BLOB ) NB: “EMP.EMPNO = PHOTO.EMPNO(+)” pour ramené aussi les agents qui n’ont pas de photo (je crois jointure externe) Au niveau forms : J’ai crée deux blocs : BLOCK_DEPT (Maitre) basé sur la table DEPT, et un autre BLOCK_VIEW (Detaille) basé sur la vue PH_VIEW_DEPT. BLOCK_DEPT affiche 1 seul enregistrement, BLOCK_VIEW affiche 5 enregistrements avec l’orientation et la barre de défilement en horizontale. J’exécute mon module et j’interroge un enregistrement de BLOCK_DEPT: impeccable, il me rend le département et tous ses employés éventuellement avec photo pour chacun (si il trouve une photo correspondante) sinon l’item :BLOCK_VIEW.V_BLOB de celui qui n’a pas de photo reste vide. Mon problème est comment je peux faire pour ramené le cliché spécial portant ID = 0 et EMPNO = 0 pour le visualisé en cas l’employé n’as pas encore de photo a la place d’avoir l’item image vide. J’ai pensé à un DECODE dans code de la vue du genre : Code :
Aussi au niveau de l'item image par déclencheur, mais je me suis coincé par le choix du déclencheur approprié et comment je verifié que l'item est vide ou null et est ce que BLOCK_VIEW en mode query va me permettre d'éditer par un : Code :
SELECT blob INTO :BLOCK_VIEW.V_BLOB FROM photo WHERE id = 0 AND empno = 0 Auriez-vous programmé quelque chose de ce genre? Peut être mon choix d'interrogation basé sur une vue est le problème et qu'il faut faire autrement, j'ai essayé par Maitre-Détail-Détail avec trois block sur les trois table mais même résultat avec un problème de navigation en plus. Prière de ne pas me suggérer d'inserer les employés (n'ayant pas de photo) avec le cliché spécial, je veux avoir seulement les employés ayant une photo dans la table photo. Merci pour votre aide. |
||||
|
|
00
|
|
|
#2 |
|
Nouveau Membre du Club
![]() Inscription : avril 2006 Messages : 86 ![]() |
Peut être j'ai mal explique mon problème, ou que la solution est coriace.
Je suis toujours en attente de votre aide. Merci. |
|
|
00
|
|
|
#3 |
![]() ![]() ![]() Inscription : mai 2003 Messages : 6 534 ![]() |
Tout ce que je puis dire c'est que vous ne pouvez pas faire un select BLOB into depuis Forms.
__________________
Rédacteur Oracle (Oracle ACE) Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche Je ne réponds pas aux questions techniques par MP Blogs: Forms-PL/SQL-J2EE - Forms Java Beans |
|
|
00
|
|
|
#4 | ||
|
Nouveau Membre du Club
![]() Inscription : avril 2006 Messages : 86 ![]() |
Je suis d'accord, les item images ne ramène que un champs blob ou long raw basé suite a une interrogation execute_query ou via la fonction read_image_file() d'un fichier sur l'OS.
Comment pourrai-je modifié le verbe select de ma vue Code :
pour avoir en interoggent PH_VIEW_DEPT par "select *" : 7100, 10, 1, 4 (son image) 7101, 10, 1, 4 (son image) 7102, 10, 1, 4 (le cliché vide) 7200, 20, 1, 4 (le cliché vide) 7201, 20, 1, 4 (son image) 7202, 20, 1, 4 (son image) 7203, 20, 1, 4 (le cliché vide) le cliché vide : c'est une photos avec un fond blanc, est un texte qui montionne pas de photos encore. |
||
|
|
00
|
|
|
#5 |
|
Nouveau Membre du Club
![]() Inscription : avril 2006 Messages : 86 ![]() |
Salut,
Je viens de poster sur le sous-forum SQL, je croit que le problème pourrait aussi être résolue au niveau de la vue en ramenant dans cette dernière ce cliché pour les employé n'ayant pas de photos. Ainsi l' execute_query ramènerait dans l'item image le cliché vide. Merci. |
|
|
00
|
|
|
#6 |
|
Nouveau Membre du Club
![]() Inscription : avril 2006 Messages : 86 ![]() |
Je déleste ce thread, au profit de celui là : http://www.developpez.net/forums/sho...14#post3470714
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com