IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Reports Oracle Discussion :

Pbl état dans report builder 6


Sujet :

Reports Oracle

  1. #1
    Membre confirmé
    Inscrit en
    Mai 2007
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 55
    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

  2. #2
    Rédacteur

    Homme Profil pro
    Développeur et DBA Oracle
    Inscrit en
    Octobre 2006
    Messages
    878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

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

    Informations forums :
    Inscription : Octobre 2006
    Messages : 878
    Par défaut
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    function BeforePForm return boolean is
    begin
      :p_query := ' ';          
      :p_query := f_query;
      return (TRUE);
    end;
    remarque :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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.

  3. #3
    Membre confirmé
    Inscrit en
    Mai 2007
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 55
    Par défaut
    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

  4. #4
    Rédacteur

    Homme Profil pro
    Développeur et DBA Oracle
    Inscrit en
    Octobre 2006
    Messages
    878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

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

    Informations forums :
    Inscription : Octobre 2006
    Messages : 878
    Par défaut
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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;

  5. #5
    Membre confirmé
    Inscrit en
    Mai 2007
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 55
    Par défaut
    Bonjour,
    Merci Salim11,c'est règlo,vous m'avez appris une new leçon.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 11/02/2015, 15h31
  2. Réponses: 0
    Dernier message: 18/03/2013, 11h18
  3. [SSRS] [2K5] Pourcentage dans Report Builder
    Par geof dans le forum SSRS
    Réponses: 9
    Dernier message: 09/12/2010, 15h38
  4. [2K8] Format d'un tableau dans report builder 3
    Par vilveq dans le forum SSRS
    Réponses: 2
    Dernier message: 07/10/2010, 10h11
  5. Réponses: 3
    Dernier message: 14/04/2008, 16h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo