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

Bibliothèques & Frameworks Discussion :

OPX2 - Javascript


Sujet :

Bibliothèques & Frameworks

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Administrateur OPX2
    Inscrit en
    Juillet 2012
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur OPX2
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Juillet 2012
    Messages : 3
    Points : 1
    Points
    1
    Par défaut OPX2 - Javascript
    Bonjour,

    Je travaille actuellement sur le logiciel OPX2 et je dévellope un code pour ouvrir automatiquement un Report sous un format lisible sous Excel (.xls ou .xlsx. .csv).

    Je précise que je suis débutante en javascript.

    Voilà où en est mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    var file = new fileOutputStream ("C:/test.csv","overwrite");    
    var Report=Opxtimechart.displayworkflowchart("Nom du Report");  
    if (Report != undefined);
    L'erreur est la suivante :
    "received Signal Number 11 (segmentation violation)"
    Merci de votre aide !
    Natasha

  2. #2
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Attention aux types des arguments utilisés dans les fonctions
    Bonsoir,

    A première vue il y a déjà un problème dans la commande suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var Report=Opxtimechart.displayworkflowchart("Nom du Report");
    Dans l'évaluateur javascript P5 tu obtiens l'erreur suivante :

    Error while evaluating script "var Report=Opxtimechart.displayworkflowchart(\"Nom du Report\");" Unknown script attribute of cell #{REPORT-OBJECTS:LABEL-CELL@353588999} in report #{REPORT-OBJECTS:REPORT@_MOD_INFRASTRUCTURE:_INF_POPUP_JS_EVAL}
    with attributes [Texte:Evaluer]
    Error detected by the system: Funcall of 53433027584 which is a non-function.
    En effet si tu te reportes à la documentation PLW sur la fonction "displayworkflowchart" tu peux voir que les arguments attendus sont les suivants :

    PROCESS [optional] process displayed
    USER [optional] used displayed
    Les arguments de ta fonction doivent donc être des objets de type PROCESS et de type USER. Or dans ton exemple tu mets une chaîne de caractères, qui n'est donc par définition pas un objet OPX2.

    Idem d'ailleurs pour l'objet "Opxtimechart" mais je pense que tu le définis ailleurs dans ton code.

    Pour info pour récupérer un objet il faut que tu utilises la fonction get("ID_de_l'objet") sur la classe de l'objet recherché. Par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var my_report = "OpxREPORT".get("Id_du_Report");
    ex :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var my_report = "OpxREPORT".get("HOME");
    Et c'est cette variable, qui représente maintenant un objet de type "REPORT", que tu vas utiliser dans ta fonction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var Report=Opxtimechart.displayworkflowchart("my_report");
    Enfin la ligne suivante est également incorrecte (syntaxe du "if" incorrecte) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (Report != undefined);


    Il n'est pas précisé ce qu'il y a à faire une fois la condition évaluée.


    Voilà j'espère que cela t'auras aidé.

    Pour info, tu pourras trouver des articles sur l'OJS (OPX2 Java script) et sur d'autres sujets OPX2 sur http://blog.axopen.com/category/expe...x2-planisware/

  3. #3
    Nouveau Candidat au Club
    Femme Profil pro
    Administrateur OPX2
    Inscrit en
    Juillet 2012
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur OPX2
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Juillet 2012
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Bonjour,

    Merci beaucoup pour la réponse !

    J'avais déjà consulté le site http://blog.axopen.com/category/expe...x2-planisware/. Je m'en étais inspiré pour réaliser mon code "var file = new fileOutputStream ("C:/test.csv","overwrite"); ". C'est le seul du genre à ma connaissance et en effet les tutoriaux sont bien faits.

    J'ai donc modifié mon code avec ces nouvelles indications. Cependant je n'arrive toujours pas à réaliser mon extraction Excel.
    Mon problème en réalité est que je n'ai pas la documentation PLW avec les arguments des fonctions ... Pour trouver les fonctions j'utilise le module dans OPX2 : DATA/Utilities/Opx2 Script Evaluator.

    Voila mon code actuel :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    var my_report = "Opxreport".get("Id_du_Report");
    my_report.extract();
    J'ai essayé d'autres fonctions à la place d'Extract pour ouvrir ou extraire le report, mais rien n'a fonctionné: open, call, print ...

    Je sais cependant que le report est appelé correctement car avec la fonction editobject, la fenêtre de paramétrage d'édition du report s'affiche correctement !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    var my_report = "Opxreport".get("Id_du_Report");
    my_report.editobject();
    Serait-il possible de m'indiquer un code ou tout du moins les fonctions/arguments à utiliser pour réaliser une extraction au format Excel automatique d'un Report à partir du module Intranet Server ?

    Merci par avance !

    Natasha

  4. #4
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Bonjour,

    Il existe une aide en ligne pour les fonctions OJS. Elle est accessible en client lourd via " ? > Documentation OPX2 script ".

    Cela génère à la volée une aide en ligne sous forme HTML listant les fonctions OJS, leurs arguments etc... Elle n'est pas forcément exhaustive et parfois inexacte mais c'est déjà pas mal.

    Concernant le code permettant d'imprimer un rapport au format Excel depuis l'intranet habituellement j'affiche mon rapport à l'écran (par exemple un tableau) et ensuite je laisse l'utilisateur générer le XLS en cliquant sur le bouton standard "Générer un fichier pour Microsoft Excel" (dans la barre des outils). Ce n'est effectivement pas top mais je n'ai pas trouvée la méthode OJS permettant de l'appeler directement dans mon script.

    En revanche pour les impressions PDF ou HTML la méthode PRINT fonctionne bien :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    my_report.print(......);
    Voilà pour les infos dont je dispose.

    Bon courage !

  5. #5
    Nouveau Candidat au Club
    Femme Profil pro
    Administrateur OPX2
    Inscrit en
    Juillet 2012
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur OPX2
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Juillet 2012
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Bonjour !

    Merci beaucoup pour toutes ces informations !

    La Documentation OPX2 Script va bien m'aider je pense. Je vais continuer de chercher et je posterai la réponse si je trouve une solution.

    Le bouton standard "Générer un fichier pour Microsoft Excel" ne correspond pas à mon besoin car je souhaiterai pouvoir extraire plusieurs rapports en même temps en cliquant sur un seul bouton...

    Bonne continuation !

    Merci
    Natasha

Discussions similaires

  1. Les meilleurs livres pour apprendre le JavaScript
    Par vermine dans le forum Livres
    Réponses: 23
    Dernier message: 10/06/2019, 18h58
  2. JavaScript<---->ActionScript
    Par crazypiou dans le forum Flash
    Réponses: 21
    Dernier message: 17/04/2009, 17h14
  3. Construire chemin sur bouton avec évt Javascript
    Par Ph. B. dans le forum XMLRAD
    Réponses: 4
    Dernier message: 27/05/2003, 10h26
  4. appel xmlservice via fonction javascript
    Par pram dans le forum XMLRAD
    Réponses: 2
    Dernier message: 06/05/2003, 14h24
  5. JavaScript de vérification de formulaire
    Par [DreaMs] dans le forum XMLRAD
    Réponses: 6
    Dernier message: 26/02/2003, 13h48

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