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

Forms Oracle Discussion :

[Forms]le Bouton d'impression avec Forms sous oracle


Sujet :

Forms Oracle

  1. #1
    Membre averti
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    58
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 58
    Par défaut [Forms]le Bouton d'impression avec Forms sous oracle
    Salut;
    Je suis un nouveau sous oracle, j'ai eu dans problème avec le bouton imprime sous forms. Je demande votre aide pour résoudre mon problème.
    Voila je m'explique:
    1 - J'ai crée le formulaire Agent avec Forms
    2 - Puis Etat Agent avec report
    3 - Puis J'ai appele l'etat Agent dans le Formulaire Agent
    4 - Dans le palette propriete de l'etat appel dans le formulaire j'ai donne les valeurs suivente:
    GENERAL
    Nom = le nom de l'etat
    INTEGRATION ORACLE DEVELOPER
    Nom de fichie = le nom de l'etat
    Mode d'execution = batch
    Mode de communication = syschrone
    ETAT
    Types d'etat cible = Fichier
    5- J'ai creer un bouton que j'ai nome imprimer puis le script suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    declare
    repid REPORT_OBJECT;
    v_rep VARCHAR2(100);
    rep_status VARCHAR2(20);
    BEGIN
    repid :=FIND_REPORT_OBJECT('ETAT_AGENT1');
    v_rep := RUN_REPORT_OBJECT(repid);
    SET_REPORT_OBJECT_PROPERTY(repid,REPORT_SERVER,'nom de l'ordinateur');
    WHILE rep_status in ('RUNNING','OPENING_REPORT','ENQUEUED')
    LOOP
    rep_status := report_object_status(v_rep);
    END LOOP;
    IF rep_status = 'FINISHED' THEN
    WEB.SHOW_DOCUMENT('http://nom de l'ordinateur:8888/reports/rwservlet/getjobid'||substr(v_rep,instr(v_rep,'_',-1)+1)||'?'||'server=nom de l'ordinateur','_blank');
    ELSE
    message('Error when running report');
    END IF;
    END;
    Les problèmes rencontres sont les suivant :
    L’etat ne s’affiche pas
    Il n’imprime pas les donnes qui se trouvent dans le formulaire mais il imprime tout les donnes se trouvant dans la table
    Merci Avance.

  2. #2
    Expert confirmé
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Par défaut
    Il n’imprime pas les donnes qui se trouvent dans le formulaire mais il imprime tout les donnes se trouvant dans la table
    comment constatez-vous ce résultat si 'létat ne s'affiche pas ?
    en tous cas, si vous devez restreindre la sélection dans l'état il faut une clause where. si la forme n'envoi aucun paramètre à l'état, celui-ci va utiliser la clause définie lors de la création de l'état.

  3. #3
    Expert confirmé
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Par défaut
    L’etat ne s’affiche pas
    un message d'erreur ?

  4. #4
    Expert confirmé
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Par défaut
    Merci d'arrêter de poursuivre vos questions par MP et de continuer dans cette enfilade.

  5. #5
    Membre averti
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    58
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 58
    Par défaut Sos
    Donc si on utilise la clause where dans le report comment faire amener ses donnent dans le forms

  6. #6
    Expert confirmé
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Par défaut
    Par exemple, votre état affiche la liste des employes (table EMP) avec le select suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Select empno, ename, deptno from EMP
    vous souhaitez maintenant filtrer par département (DEPTNO). vous crééz donc un paramètre utilisateur dans l'état (p_dept) et vous utilisez ce paramètre dans votre select de l'état
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Select empno, ename, deptno from EMP
    where ( deptno = :p_dept or :p_dept is null )
    maintenant, dans la form, il faut transmettre ce paramètre vis une parameter list

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    lRepJobId := run_report_object(report_id => lRepObj,paramlist_id => p_param_list);
    voir les instructions Create_Parameter_List() et Add_Parameter_List()

  7. #7
    Membre averti
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    58
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 58
    Par défaut Le Bouton imprimer
    Excuse moi vous pouvez m’explique un peut plus en profondeur comme j’ai dit en haut je suis un nouveau en oracle. J’ai pas compris Create_Parameter_List() et Add_Parameter_List() ni le

    lRepJobId := run_report_object(report_id => lRepObj,paramlist_id => p_param_list);
    Si vous pouvez me dire comment doit si prendre.
    Merci



    Citation Envoyé par SheikYerbouti
    Par exemple, votre état affiche la liste des employes (table EMP) avec le select suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Select empno, ename, deptno from EMP
    vous souhaitez maintenant filtrer par département (DEPTNO). vous crééz donc un paramètre utilisateur dans l'état (p_dept) et vous utilisez ce paramètre dans votre select de l'état
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Select empno, ename, deptno from EMP
    where ( deptno = :p_dept or :p_dept is null )
    maintenant, dans la form, il faut transmettre ce paramètre vis une parameter list

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    lRepJobId := run_report_object(report_id => lRepObj,paramlist_id => p_param_list);
    voir les instructions Create_Parameter_List() et Add_Parameter_List()

  8. #8
    Expert confirmé
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Par défaut
    Une liste de paramètre permet de créer une liste contenant 0 a x paramétres. ces paramètres peuvent être transmis entre formes mais aussi entre une form et un état reports

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    DECLARE 
      pl_id ParamList; 
      pl_name VARCHAR2(10) := 'templist'; 
    BEGIN 
      pl_id := Get_Parameter_List(pl_name); 
      IF Id_Null(pl_id) THEN 
        -- creation de la liste des parametres --
        pl_id := Create_Parameter_List(pl_name); 
        IF Id_Null(pl_id) THEN 
          Message('Error creating parameter list '||pl_name); 
          RAISE Form_Trigger_Failure; 
        END IF; 
      ELSE 
        Message('Parameter list '||pl_name||' already exists!'); 
        RAISE Form_Trigger_Failure; 
      END IF; 
      -- ajout d'un parametre a la liste --
      Add_Parameter(pl_id,'p_dept',TEXT_PARAMETER,:BLK.DEPTNO); 
    END;
    ici on créé une liste a laquelle on ajoute le paramètre (valeur de l'item DEPTNO du block BLK) qui sera transmis au report (p_dept)

  9. #9
    Membre averti
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    58
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 58
    Par défaut le bouton imprimer
    Je suis vraiment désole, je n'arrive pas inscrire le script qui permet de crée le paramètre dans forms ni à transmettre ce paramètre vis une parameter list
    Aidez moi S.P.V

    Citation Envoyé par samba2005kanoute
    Excuse moi vous pouvez m’explique un peut plus en profondeur comme j’ai dit en haut je suis un nouveau en oracle. J’ai pas compris Create_Parameter_List() et Add_Parameter_List() ni le

    lRepJobId := run_report_object(report_id => lRepObj,paramlist_id => p_param_list);
    Si vous pouvez me dire comment doit si prendre.
    Merci

  10. #10
    Expert confirmé
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Par défaut
    Il est clair qui faut créer la liste et son paramètre avant d'appeler le report
    c'est à dire avant l'instruction Run_Report_Object().

    de plus, il faut indiquer cette liste de paramètre dans l'instruction Run_Report_Object():

    Rempacer:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    v_rep := RUN_REPORT_OBJECT(repid);
    par:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    v_rep := RUN_REPORT_OBJECT(repid,pl_id);

  11. #11
    Membre averti
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    58
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 58
    Par défaut Le Bouton imprimer
    Bonjour;
    Malgre le fait que j'ai ajoute le nouveau script le bouton ne marche pas. J'aimerais si possible que vous regardiez le scripet si dessous.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    declare
    	pl_id ParamList; 
      pl_name VARCHAR2(10) := 'templist'; 
    repid REPORT_OBJECT;
    v_rep VARCHAR2(100);
    rep_status VARCHAR2(20);
    BEGIN
      pl_id := Get_Parameter_List(pl_name); 
      IF Id_Null(pl_id) THEN 
        -- creation de la liste des parametres --
        pl_id := Create_Parameter_List(pl_name); 
        IF Id_Null(pl_id) THEN 
          Message('Error creating parameter list '||pl_name); 
          RAISE Form_Trigger_Failure; 
        END IF; 
      ELSE 
        Message('Parameter list '||pl_name||' already exists!'); 
        RAISE Form_Trigger_Failure; 
      END IF; 
      -- ajout d'un parametre a la liste --
      Add_Parameter(pl_id,'p_dept',TEXT_PARAMETER,:FORMULAIRE_AGENT.NUM_AGENT); 
    		repid :=FIND_REPORT_OBJECT('ETAT_AGENT1');
    v_rep := RUN_REPORT_OBJECT(repid,pl_id);
    SET_REPORT_OBJECT_PROPERTY(repid,REPORT_SERVER,'kante-rrubjmenr');
    WHILE rep_status in ('RUNNING','OPENING_REPORT','ENQUEUED')
    LOOP
    rep_status := report_object_status(v_rep);
    END LOOP;
    IF rep_status = 'FINISHED' THEN
    WEB.SHOW_DOCUMENT('http://kante-rrubjmenr:8888/reports/rwservlet/getjobid'||substr(v_rep,instr(v_rep,'_',-1)+1)||'?'||'server=kante-rrubjmenr','_blank');
    ELSE
    message('Error when running report');
    END IF;
    WEB.SHOW_DOCUMENT('http://kante-rrubjmenr:7778');
    END;

    MERCI

  12. #12
    Expert confirmé
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Par défaut
    Cela serait sympa que voue utilisiez les balises code pour encadrer le code (le sigle # dans le fenêtre des icônes d'édition).
    Il est toujours difficile de répondre à une affirmation du type "ça ne marche pas". ce code génère t-il un message d'erreur ?

  13. #13
    Membre averti
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    58
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 58
    Par défaut le bouton imprimer
    Non il ne génère pas de message d'érreur mais il compile un fichier qui ne contient pas de donnes mais selement l'entete et en plus il le mèt dans le repertoire cache

  14. #14
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    j'ai ajouté les balises CODE dans tes messages pour que tu vois comment faire... merci d'y penser à l'avenir

  15. #15
    Membre averti
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    58
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 58
    Par défaut le bouton imprimer
    Donc vous propose quoi pour que je puisse ma sortir de cette probleme
    Merci
    Citation Envoyé par Fred_D
    j'ai ajouté les balises CODE dans tes messages pour que tu vois comment faire... merci d'y penser à l'avenir

  16. #16
    Expert confirmé
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Par défaut
    Citation Envoyé par samba2005kanoute
    Non il ne génère pas de message d'érreur mais il compile un fichier qui ne contient pas de donnes mais selement l'entete et en plus il le mèt dans le repertoire cache
    Donc l'état est bien exécuté. Il s'agirait donc plutôt d'un problème dans l'état lui-même.

  17. #17
    Expert confirmé
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Par défaut
    Assuez-vous également que vous générez bien un état au format PDF

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SET_REPORT_OBJECT_PROPERTY(rep_id, REPORT_DESTYPE, CACHE);  	
    SET_REPORT_OBJECT_PROPERTY(rep_id, REPORT_DESFORMAT, 'PDF');

  18. #18
    Membre averti
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    58
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 58
    Par défaut Le bouton d'impression avec forms
    Bonjour Monsieur;
    J'aimerais vraiment que vous m'aidiez enfin que je puisse termine avec mon projet de fin d'étude. Ces ce bouton qui bloc tout mon projet. Encore une fois dis moi ce que je dois faire pour résoudre cet problème.
    Merci.

  19. #19
    Expert confirmé
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Par défaut
    Citation Envoyé par samba2005kanoute
    Bonjour Monsieur;
    J'aimerais vraiment que vous m'aidiez enfin que je puisse termine avec mon projet de fin d'étude. Ces ce bouton qui bloc tout mon projet. Encore une fois dis moi ce que je dois faire pour résoudre cet problème.
    Merci.
    et qu'est-ce que vous croyez que je fais depuis tout ce temps ?!

  20. #20
    Membre averti
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    58
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 58
    Par défaut Re
    Je m'excuse si je vous es choque, il faut me comprendre.

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Problème d'impression avec QuickReport sous Delphi
    Par abdenour-nab dans le forum Bases de données
    Réponses: 2
    Dernier message: 31/12/2008, 10h28
  2. Problème avec NVL sous ORACLE
    Par tchoimars dans le forum SQL
    Réponses: 4
    Dernier message: 21/05/2007, 16h35
  3. Réponses: 10
    Dernier message: 19/03/2007, 15h37
  4. Réponses: 12
    Dernier message: 21/12/2006, 11h49
  5. Probleme avec dbms_scheduler sous Oracle 10.2.0.1.0
    Par edi@csb.nc dans le forum SQL
    Réponses: 2
    Dernier message: 08/10/2006, 23h22

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