Précédent   Forum des professionnels en informatique > Bases de données > Oracle > Outils > Forms
Forms Forum d'entraide sur Oracle Forms
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 24/11/2010, 11h24   #1
Invité régulier
 
philippe sanou
Inscription : juin 2010
Messages : 54
Détails du profil
Informations personnelles :
Nom : philippe sanou

Informations forums :
Inscription : juin 2010
Messages : 54
Points : 5
Points : 5
Par défaut trier une base de données à partir d'une LOV sous oracle forms

bonjour cher amis,
j'aimerai trier une base de données à partir d'une LOV,mais je n'y arrive.c'est à dire qu'à partir de la valeur choisie par l'utilisateur,je récupère le reste des champs que j'insère dans des éléments texte.svp des indications.
Merci!!!
sanouphil est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/11/2010, 11h54   #2
Rédacteur

 
Avatar de SheikYerbouti
 
Inscription : mai 2003
Messages : 6 523
Détails du profil
Informations forums :
Inscription : mai 2003
Messages : 6 523
Points : 6 450
Points : 6 450
Bonjour,

Il suffit d'utiliser les valeurs retournées par la LOV dans un trigger PRE-QUERY du block à interroger.
Supposons que la LOV retourne les valeurs 1 et 2 dans les items :ctrl.item1 et :ctrl.item2:

PRE-QUERY:
Code :
1
2
3
 
:blk.item1 := :ctrl.item1 ;
:blk.item2 := :ctrl.item2 ;
Il suffit de faire execute_query sur le block après l'affichage de la LOV.
__________________
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
SheikYerbouti est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/11/2010, 12h13   #3
Invité régulier
 
philippe sanou
Inscription : juin 2010
Messages : 54
Détails du profil
Informations personnelles :
Nom : philippe sanou

Informations forums :
Inscription : juin 2010
Messages : 54
Points : 5
Points : 5
Merci de vous être penché sur mon problème.c'est peu être évident mais je ne comprend pas très bien.je vous explique:j'ai 2blocs basés,l'un des bloc comporte la LOV et l'autre bloc est tabulaire sur 8 lignes et comporte un champ.j'aimerai donc récupérer via une requête l'ensemble des tuples de ma base de données et les afficher dans le bloc tabulaire en fonction du choix opéré dans ma LOV.vu qu'il y a une possibilité de jointure entre les blocs dans ma base.
Merci
Images attachées
Type de fichier : jpg capture.JPG (169,5 Ko, 9 affichages)
sanouphil est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/11/2010, 14h59   #4
Rédacteur

 
Avatar de SheikYerbouti
 
Inscription : mai 2003
Messages : 6 523
Détails du profil
Informations forums :
Inscription : mai 2003
Messages : 6 523
Points : 6 450
Points : 6 450
le premier block qui contient la LOV est basé ?
__________________
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
SheikYerbouti est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/11/2010, 15h08   #5
Invité régulier
 
philippe sanou
Inscription : juin 2010
Messages : 54
Détails du profil
Informations personnelles :
Nom : philippe sanou

Informations forums :
Inscription : juin 2010
Messages : 54
Points : 5
Points : 5
elle est basée aussi.j'ai pu résoudre ca en créant une procédure comme ceci et en l'appelant dans la trigger when-block-instance et ca marche
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
PROCEDURE Populate_My_Block IS
cursor c_get_rec IS
  SELECT starting_id,ending_id,nombre,montantt,reference
	FROM start_end_montant
	WHERE :demande_chg.ref_chg=start_end_montant.reference;
 
 
BEGIN
  go_block('start_end_montant');
  First_Record;
  FOR v_rec IN c_get_rec LOOP
    :start_end_montant.starting_id:= v_rec.starting_id;
    :start_end_montant.ending_id := v_rec.ending_id;
    :start_end_montant.nombre:=v_rec.nombre;
    :start_end_montant.montantt:=v_rec.montantt;
    :start_end_montant.reference:=v_rec.reference;
 
    Next_Record;
  end LOOP;
  First_Record;
 
END;
Merci beaucoup pour votre aide.c'est vraiment gentil.merci
sanouphil est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 10h38.


 
 
 
 
Partenaires

Hébergement Web