Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > Cognos
Cognos Forum d'entraide Cognos : Impromptu, Powerplay, transformer,...
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 25/01/2011, 10h25   #1
Membre du Club
 
Inscription : août 2008
Messages : 223
Détails du profil
Informations forums :
Inscription : août 2008
Messages : 223
Points : 67
Points : 67
Par défaut Récupérer parametre d'invite dans du javascript ?

Bonjour,

La question est simple : est-il possible et comment peut on récupérer un paramètre d'invite dans un javascript ?

Pour info : Cognos 8.4

Merci d'avance pour votre aide.

Mederik
mederik est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/01/2011, 11h57   #2
Membre du Club
 
Inscription : août 2008
Messages : 223
Détails du profil
Informations forums :
Inscription : août 2008
Messages : 223
Points : 67
Points : 67
y'a personne pour m'aider et me filer un coup de main ?

Mon objectif (grosse modo) est le suivant :

- J'ai une premiere invite qui permet à l'utilisateur de selectionner le nombre de produits qu'il veut ramener afin de faire un top. Top 10, 20, 30 des meilleurs ventes d'un produit
- une deuxieme invite permet de choisir une ligne de produit qui se decline en produit
- une troisième invite cachée qui ramène tous les produits de la ligne de produit séléctionnée associée à un javascript qui va permettre de ramener le nombre de produits voulus en fonction du top choisi. Il faut que dans ce javascript je puisse récupérer le paramètre du top avant de boucler sur l'invite cachée et ne ramener de cette liste que les n lignes choisies
- puis je passe le tout au rapport

Voila
mederik est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/01/2011, 16h07   #3
Membre Expert
 
Avatar de Sunchaser
 
Homme Vincent
OPNI
Inscription : décembre 2004
Messages : 1 668
Détails du profil
Informations personnelles :
Nom : Homme Vincent
Âge : 41
Localisation : France, Manche (Basse Normandie)

Informations professionnelles :
Activité : OPNI
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : décembre 2004
Messages : 1 668
Points : 2 036
Points : 2 036
Bonsoir,

Une réponse qui ne sera peut être pas suffisante / complète:
-> si ton paramètre s'appelle "Param_top", en faisant:
Code :
1
2
 
document.getElementById("p_Param_top").value
tu as la/les valeur(s) contenues dans le paramètre.

Pas sur de piger exactement ce dont tu avais besoin, dsl.

@+
__________________
Citation:
Aux persévérants aucune route n'est interdite
Question: un ver a pied, c'est un millepatte unijambiste ?

Mon dernier trip musical

Citation:
Quiconque construit un jardin devient un allié de la lumière, aucun jardin n'étant jamais surgi des ténèbres
A priori un proverbe Perse ...
Sunchaser est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/01/2011, 17h23   #4
Membre du Club
 
Inscription : août 2008
Messages : 223
Détails du profil
Informations forums :
Inscription : août 2008
Messages : 223
Points : 67
Points : 67
sans dec' !!! ce serait aussi simple que ça ?!?
mederik est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/01/2011, 17h37   #5
Membre du Club
 
Inscription : août 2008
Messages : 223
Détails du profil
Informations forums :
Inscription : août 2008
Messages : 223
Points : 67
Points : 67
Bon...j'ai bêtement essayé un copier/coller de ce que tu suggérais mais non seulement ca marche pas mais ca fait planter le script dans lequel je l'ai inclu...

Question : est-ce qu' d'un point de vue cognos, un paramètre d'invite a une "traduction" javascript. Parce que dans ce cas, cela permettrait peut etre d'aller récupérer cette valeur en connaissant dans quoi il le stock et comment il nomme les balises traduites en language javascript ?!?

Non ?
mederik est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/01/2011, 23h05   #6
Membre Expert
 
Avatar de Sunchaser
 
Homme Vincent
OPNI
Inscription : décembre 2004
Messages : 1 668
Détails du profil
Informations personnelles :
Nom : Homme Vincent
Âge : 41
Localisation : France, Manche (Basse Normandie)

Informations professionnelles :
Activité : OPNI
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : décembre 2004
Messages : 1 668
Points : 2 036
Points : 2 036
Bonsoir,

Clairement, j'ai un peu "tout" mélanger, entre certains usages que l'on peut faire des paramètres de Cognos et ce que l'on peut réellement accéder dans la page de prompt.
Donc, afin de m'amender et de pouvoir rendre utile ma participation, voici qq recherches ...
Il me semble que nous sommes sous la même version, la 8.4, et ceci est absolument crucial car j'ai comparé avec les anciennes versions et même avec des rapports créés en 8.2 et importés en 8.4, et la attention on n'a pas du tout les mêmes objets; donc cela ne marcherait pas.

J'ai donc ajouté un bout de script a ma page de prompt, avec une fonction qui attends en paramètre le nom du paramètre (c'est très con comme répétition ca) du prompt, et un bouton pour lancer la fonction.
Le script:
Code :
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
 
say_prompt_values= FUNCTION(param_name){
 
	var CM= window["G_PM_THIS_"];
	IF (  CM !=  NULL ) {
		/* paramètre dans l'objet de prompt */
		var c_controls= CM.getControls();
		var obj, pvalues, return_param= [];
		FOR ( var i= 0, imax= c_controls.length; i < imax; i++ ){
			obj= c_controls[i];
			IF ( obj["@parameter"] == param_name ){
				obj.preProcess();
				var pvalues= obj.getParameterValues();
				FOR ( var j= 0, jmax= pvalues.length; j < jmax; j++ ){
					return_param.push( pvalues[j]["use"]  );
					/* note les valeurs affichées sont la propriété "display" */
				}
				alert( return_param.JOIN(",") );
			}
		}
 
		/* paramètre en XML */
		var prmt= document.getElementById("p_"+param_name);
		IF ( prmt != NULL ){
			var val= prmt.value;
			alert("test paramvalue: " + val);
		}
	}
	else{
		alert("Cognos prompt manager not found");
	}
 
};
Donc dans un objet HTML Item, avec les balises qui vont bien.
Comme tu peut le voir dès la première partie du script, je pars du principe qu'il doit exister un objet "G_PM_THIS_" en mémoire, objet de type C_PromptManager.
A priori, vu comment fonctionnent les pages de prompt Cognos depuis qq versions, il y a la base tout de même un certain nombre d'objets qui sont créés de fait, et donc la dénomination et/ou le type ne changent pas; comme le "fameux" oCVRS, de type (si je peut dire) CCognosViewer, et que j'ai vu très souvent depuis les versions 8.
Mais je peut me tromper, ne pas hésiter a me contredire évidemment.
Donc a partir de la, j'utilise certains fonctions des objets de prompt Cognos pour ressortir la valeur actuelle du paramètre que l'on passe a la fonction.
La première partie, jusqu'à la balise "/* paramètre en XML */" te renvoie les valeurs sous forme d'une chaine avec virgules ( ensuite tu en fais ce que tu veux ). Le reste est plus juste pour info, il te donne la valeur de l'INPUT caché dans la FORM Cognos, qui contient la forme en XML du paramètre de ton prompt.
C'est ce sur quoi je m'étais tout de suite planté, car j'ai - pour des raisons perso - l'habitude de bosser avec, mais tu ne dois pas en avoir besoin je pense.

Donc disons que j'ai un prompt qui a un paramètre nommé "Param_mille_excuses", le fameux INPUT caché ayant pour id "p_Param_mille_excuses" juste pour info, j'appelle donc les valeurs pour se paramètre avec:
Code :
1
2
 
say_prompt_values('Param_mille_excuses');
Voili.
En espérant que cette fois ci, cela serve,
@+
__________________
Citation:
Aux persévérants aucune route n'est interdite
Question: un ver a pied, c'est un millepatte unijambiste ?

Mon dernier trip musical

Citation:
Quiconque construit un jardin devient un allié de la lumière, aucun jardin n'étant jamais surgi des ténèbres
A priori un proverbe Perse ...
Sunchaser est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/02/2011, 18h21   #7
Membre Expert
 
Avatar de Sunchaser
 
Homme Vincent
OPNI
Inscription : décembre 2004
Messages : 1 668
Détails du profil
Informations personnelles :
Nom : Homme Vincent
Âge : 41
Localisation : France, Manche (Basse Normandie)

Informations professionnelles :
Activité : OPNI
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : décembre 2004
Messages : 1 668
Points : 2 036
Points : 2 036
Bonsoir,

Juste pour info, est ce tu as pu tester mon idée ?
Je suis curieux ...

Merci
@+
__________________
Citation:
Aux persévérants aucune route n'est interdite
Question: un ver a pied, c'est un millepatte unijambiste ?

Mon dernier trip musical

Citation:
Quiconque construit un jardin devient un allié de la lumière, aucun jardin n'étant jamais surgi des ténèbres
A priori un proverbe Perse ...
Sunchaser est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h51.


 
 
 
 
Partenaires

Hébergement Web