Précédent   Forum des professionnels en informatique > Bases de données > Oracle > Outils > Reports
Reports Forum d'entraide sur Oracle Reports
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 14/09/2007, 15h19   #1
Futur Membre du Club
 
Inscription : mai 2007
Messages : 55
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 55
Points : 19
Points : 19
Par défaut Pbl état dans report builder 6

Bonjour,

Pendant la création d'un état dans report builder ; je connait le problème suivant:
-d'abord j'ai créé mon état à partir de form builder ie "Fonder l'état à partir
d'un bloc du Form" supposons Bloc A ; et dans ce bloc j'ai créé un champ (supposons champ "a")dont son alimentation est à partir d'un Post-change d'un champ de la base de données.
-mais les champs disponibles à afficher dans l'état ne sont que des champs
de la base .
J'ai quand même créé ce champ "a" dans report mais ca parrait compliqué :
-l'attribution d'un valeur par défaut n'est pas permis
(default_value('12:00','global.heuredebut12')
-la déclaration d'un variable global semble interdite...

Est-ce qu'il existe une propriété qui permet d'afficher un champ n'appartenant pas à la base dans l'éditeur d'état?

Est qu'il y a d'autre solution?

Merci
TINAVONJ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/09/2007, 15h59   #2
Rédacteur
 
Homme Salim
Développeur et DBA Oracle
Inscription : octobre 2006
Messages : 872
Détails du profil
Informations personnelles :
Nom : Homme Salim
Localisation : Canada

Informations professionnelles :
Activité : Développeur et DBA Oracle

Informations forums :
Inscription : octobre 2006
Messages : 872
Points : 1 100
Points : 1 100
Salut ,

Juste un exemple pour te donner l'idée:

1- Tu crées un paramètre utilisateur p_query caractère de longueur 4000 initialisé à 'Select 1 c1,2 c2,3 c3 from dual'.

2- Dans ton modèle de données tu crées une requete, et tu mets dedans
&p_query

3- Tu crées une fonction f_query dans reports ( unité de programme )
Code :
1
2
3
4
5
6
7
FUNCTION f_query RETURN varchar2 IS
v_select varchar2(4000);
BEGIN
  v_select := '';
  v_select:='select empno,sal,deptno from emp ';
  RETURN(v_select);
END;

4- Dans le trigger before parameter form ( tu le crées aprés que tu as fixé ton choix de colonnes )
Code :
1
2
3
4
5
6
7
 
FUNCTION BeforePForm RETURN BOOLEAN IS
begin
  :p_query := ' ';          
  :p_query := f_query;
  RETURN (TRUE);
end;
remarque :

Code :
1
2
3
4
5
6
7
 
SELECT 1 c1,1 c2,1 c3 FROM dual  dans le modèle de presentation  crée 3 
colonnes numérique
si tu veux afficher unen colonne   en caractère met to_char(1) au lieu de 1
 
exemple 
SELECT to_char(1) c1,1 c2,1 c3 FROM dual
Remarque :
Tu peux créer la fonction dans ton ecran ( forms) avec FORMS_DDL, et tu fais seulement l'appel dans reports.
salim11 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/09/2007, 07h06   #3
Futur Membre du Club
 
Inscription : mai 2007
Messages : 55
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 55
Points : 19
Points : 19
Salut,

Merci pour l'idée.

-mais, est-ce que la façon de créer cette fonction dans form avec Form DDL est la même que la création d'un simple fonction?
-Comment dois-je faire pour appeler cette fonction dans Reports?

Merci
TINAVONJ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/09/2007, 21h46   #4
Rédacteur
 
Homme Salim
Développeur et DBA Oracle
Inscription : octobre 2006
Messages : 872
Détails du profil
Informations personnelles :
Nom : Homme Salim
Localisation : Canada

Informations professionnelles :
Activité : Développeur et DBA Oracle

Informations forums :
Inscription : octobre 2006
Messages : 872
Points : 1 100
Points : 1 100
Citation:
Envoyé par TINAVONJ Voir le message
Salut,

Merci pour l'idée.

-mais, est-ce que la façon de créer cette fonction dans form avec Form DDL est la même que la création d'un simple fonction?
-Comment dois-je faire pour appeler cette fonction dans Reports?

Merci
Salut,

Voici comment utiliser forms_ddl avec forms.
1-
Code :
1
2
3
4
5
6
7
8
 
forms_ddl( 'create or replace function f_query return varchar2 
is 
v_select varchar2(4000);
BEGIN
   v_select:=''select empno,sal,deptno from emp '';
  RETURN(v_select);
END;');
la doc d'oracle sur froms_ddl
http://www.oracle.com/webapps/online...=formsddl_html

2-
Code :
1
2
3
4
5
6
7
8
9
10
11
 Dans le trigger before parameter form ( tu le crées aprés que tu as fixé ton 
choix de colonnes ) 
Code :
 
FUNCTION BeforePForm RETURN BOOLEAN IS
begin
  :p_query := ' ';          
  :p_query := f_query; -- l'appel à ta fonction f_query
  RETURN (TRUE);
end;
salim11 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/09/2007, 06h56   #5
Futur Membre du Club
 
Inscription : mai 2007
Messages : 55
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 55
Points : 19
Points : 19
Bonjour,
Merci Salim11,c'est règlo,vous m'avez appris une new leçon.
TINAVONJ 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 20h57.


 
 
 
 
Partenaires

Hébergement Web