Précédent   Forum du club des développeurs et IT Pro > Logiciels > Solutions d'entreprise > Business Intelligence > SAS > ODS et reporting
ODS et reporting Forum d'entraide sur les fonctionnalités de reporting de SAS : gérer les sorties et graphiques de SAS
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 28/12/2012, 14h07   #1
ganjah06
Nouveau Membre du Club
 
Inscription : mai 2008
Messages : 86
Détails du profil
Informations forums :
Inscription : mai 2008
Messages : 86
Points : 33
Points : 33
Par défaut Proc Tabulate et mise en forme conditionnelle

Bonjour,

Je cherche, au meme titre de ce qui peut être fait dans WRS, à remplacer la valeur d'un champ par une image dans une proc tabulate et ce en fonction de condition sur cette meme valeur.

je n'ai vu jusqu'a present que des options du style PRE/POST IMAGE mais qui ne remplace pas la valeur.

De plus, je suis dans une procédure stockée, et je dois bien avouer que je ne sais pas quel chemin définir pour aller chercher l'image.

Cette derniere doit-elle être dans un "endroit" spécial ?

Sachant que j'utilise SAS 9.2, avec les moteurs distants tournant sous Unix et que la finalité est d'integrer la procédure stockée dans un rapport WRS.

Merci de votre aide.
ganjah06 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/12/2012, 15h14   #2
datametric
Rédacteur
 
Homme Stéphane Colas
Consultant et formateur SAS et Cognos
Inscription : avril 2009
Messages : 2 315
Détails du profil
Informations personnelles :
Nom : Homme Stéphane Colas
Âge : 40
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Consultant et formateur SAS et Cognos
Secteur : Conseil

Informations forums :
Inscription : avril 2009
Messages : 2 315
Points : 5 578
Points : 5 578
J'ai cherché dans les papiers SAS et j'ai retrouvé que la proc REPORT utilisait la valeur avec PREIMAGE

Code :
1
2
3
CALL DEFINE(_COL_, 'STYLE', 
   'STYLE=[FOREGROUND=RED 
           PREIMAGE=trendupsm.gif"]');
http://www2.sas.com/proceedings/sugi27/p187-27.pdf

On voit avec la Figure 3 – Exemple 3, Partial HTML Output que la valeur est avec l'image.

Mais je pense que si tu regardes cet exemple, la sortie montre que la valeur n'est pas affichée : http://support.sas.com/kb/46/552.html

Ensuite, pour ton STP, les images doivent être sur le serveur accessible en 755 mais je n'ai pas testé cela.

J'espère que ça t'aide.
__________________
N'oubliez pas de cliquer sur lorsque votre problème est réglé !

Moteur de recherche dans les papiers SAS
datametric est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 28/12/2012, 15h19   #3
ganjah06
Nouveau Membre du Club
 
Inscription : mai 2008
Messages : 86
Détails du profil
Informations forums :
Inscription : mai 2008
Messages : 86
Points : 33
Points : 33
Merci pour ta réponse néanmoins, je dois passer par une proc tabulate.

quelqu'un aurait en tete la syntaxede faire appel à une image via un format svp ?
ganjah06 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/12/2012, 15h25   #4
datametric
Rédacteur
 
Homme Stéphane Colas
Consultant et formateur SAS et Cognos
Inscription : avril 2009
Messages : 2 315
Détails du profil
Informations personnelles :
Nom : Homme Stéphane Colas
Âge : 40
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Consultant et formateur SAS et Cognos
Secteur : Conseil

Informations forums :
Inscription : avril 2009
Messages : 2 315
Points : 5 578
Points : 5 578
__________________
N'oubliez pas de cliquer sur lorsque votre problème est réglé !

Moteur de recherche dans les papiers SAS
datametric est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/12/2012, 16h05   #5
ganjah06
Nouveau Membre du Club
 
Inscription : mai 2008
Messages : 86
Détails du profil
Informations forums :
Inscription : mai 2008
Messages : 86
Points : 33
Points : 33
ça va, j'ai eu un coup de flemme.

ça arrive à tout le monde
ganjah06 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/01/2013, 14h43   #6
ganjah06
Nouveau Membre du Club
 
Inscription : mai 2008
Messages : 86
Détails du profil
Informations forums :
Inscription : mai 2008
Messages : 86
Points : 33
Points : 33
Salut,

Finalement, il semblerait que l'application d'un format sur un champ défini en var dans la proc tabulate ne fonctionne pas.

Quelqu'un saurait comment remplacer (donc ne plus voir la valeur) un champ de type var par une image dans proc une tabulate (et non une proc report ) et ce en fonction de la valeur prise par le champ svp ? Là je commence à sécher.

Merci d'avance.
ganjah06 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/01/2013, 17h04   #7
z6c3po
Membre actif
 
Sébastien Ringuedé
Inscription : janvier 2011
Messages : 71
Détails du profil
Informations personnelles :
Nom : Sébastien Ringuedé
Localisation : France, Loiret (Centre)

Informations forums :
Inscription : janvier 2011
Messages : 71
Points : 159
Points : 159
Si vous n'y arrivez pas, c'est qu'en fait, ce n'est pas simple (et je ne suis pas du tout sûr que vous trouverez quelque chose à ce sujet via une recherche sur google...)

il faut à la fois créer un format qui va, finalement, associer vos valeurs à vos images mais aussi utiliser ODS ESCAPECHAR.

Voici un petit exemple :

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
 
DATA toto;
input x y z;
cards ;
1 1 10
1 2 12
2 1 14
2 2 16
;
 
ods escapechar="^";
 
proc format ;
value cards
    10='^S={just=center preimage="http://www.sas-sr.com/intro_sas/cards/1.png"}'
    12='^S={just=center preimage="http://www.sas-sr.com/intro_sas/cards/2.png"}'
    14='^S={just=center preimage="http://www.sas-sr.com/intro_sas/cards/3.png"}'
    16='^S={just=center preimage="http://www.sas-sr.com/intro_sas/cards/4.png"}';
run;
 
proc tabulate;
class x y;
var z ;
TABLE x,y*z*f=cards.;
run;
et vous obtenez :


amusez vous bien ;-)

cordialement

Sébastien Ringuedé
z6c3po est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/01/2013, 11h59   #8
ganjah06
Nouveau Membre du Club
 
Inscription : mai 2008
Messages : 86
Détails du profil
Informations forums :
Inscription : mai 2008
Messages : 86
Points : 33
Points : 33
Merci beaucoup, je vais essayer ça cet après-midi et je vous tiens au courant.
ganjah06 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/01/2013, 17h10   #9
ganjah06
Nouveau Membre du Club
 
Inscription : mai 2008
Messages : 86
Détails du profil
Informations forums :
Inscription : mai 2008
Messages : 86
Points : 33
Points : 33
Effectivement, ca fonctionne très bien.

Attention cependant (pour ceux qui passeraient sur ce sujet) de bien configurer sous guide la sortie en html.

Par contre, j'ai encore un probleme, mon but est de passer par une procédure stockée qui generera l'affichage d'un rapport WRS, et là il ne m'affiche plus les images.

La procédure stockée fonctionne (sans affichage de l'image) et le rapport lui plante.

J'ai bien essayé de mettre les images dans le repertoire conditionnalHighlight mais sans resultat.

Pour info je suis en SAS 9.2 avec les moteurs installés sous Unix.

Merci d'avance.
ganjah06 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/01/2013, 11h28   #10
ganjah06
Nouveau Membre du Club
 
Inscription : mai 2008
Messages : 86
Détails du profil
Informations forums :
Inscription : mai 2008
Messages : 86
Points : 33
Points : 33
J'ai ouvert un cas chez SAS, je mettrai à jour cette discussion avec leur réponse.
ganjah06 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 14/01/2013, 14h37   #11
ganjah06
Nouveau Membre du Club
 
Inscription : mai 2008
Messages : 86
Détails du profil
Informations forums :
Inscription : mai 2008
Messages : 86
Points : 33
Points : 33
Bonjour,

Voici la réponse de SAS.

En résumé, on ne peut afficher directement des images, il faut passer par le StoredProcess Web Application

Citation:
Effectivement, j’ai bien noté que votre besoin était de lancer avec succès l’application stockée ainsi codée depuis Web Report Studio.
Malheureusement, de par sa conception, WRS ne sait pas gérer les tags HTML que lui passent les applications stockées.

Le résultat peut être que vous obtenez soit le littéral du tag ainsi que la valeur passée dans le rapport soit une erreur dans la génération du rapport.
Ce dernier cas est ce que vous observez. Le "caractère d’échappement" dans une donnée n’est pas supporté dans WRS.

Afin de parvenir à votre besoin, vous devez passer par le « Stored Process Web Application ».
Pour cela, en lieu et place de votre stored process dans le rapport, il vous faut mettre le lien qui correspond à celui de l’exécution de l’application stockée comme si l’aviez lancée depuis le « Stored Process Web Application».

Aussi, veuillez noter qu’il est préférable de localiser l’image via son chemin UNC mais vous pouvez aussi la placer sur votre serveur Web.

Pour information, ci-après votre code légèrement modifié et appelé au travers le lien http://<server>/SASStoredProcess/do?_action=form,properties,execute,nobanner,newwindow&_program=tabulate_image dans WRS :
<===================================================
*ProcessBody;
%STPBEGIN;
ods escapechar="^";
DATA toto;
input x y z;
cards ;
1 1 1
1 2 2
2 1 3
2 2 1
;
run;

proc format ;
value cards
1='^S={just=center preimage="\\nbdel198\test\img1.gif"}'
2='^S={just=center preimage="\\nbdel198\test\img2.gif"}'
3='^S={just=center preimage="\\nbdel198\test\img3.gif"}';
run;

proc tabulate data=toto;
class x y;
var z ;
TABLE x,y*z*f=cards.;
run;
%STPEND;
===================================================>

Je vous invite à consulter les notes suivantes pour les détails sur la mise en œuvre :

- Usage Note 34138: Including an image or banner file in stored process output
http://support.sas.com/kb/34/138.html

- Workaround for limitations imposed by SAS® Web Report Studio when running a stored process
http://support.sas.com/kb/19597

- Usage Note 18998: SAS® Web Report Studio 3.1 receives XML output from SAS® Stored Process Server
http://support.sas.com/kb/18998

Voilà, bon courage à tous
ganjah06 est déconnecté   Envoyer un message privé Réponse avec citation 30
Vieux 14/01/2013, 14h54   #12
s_a_m
Modérateur
 
Homme Samir SELMANE
Consultant en Business Intelligence
Inscription : février 2011
Messages : 1 320
Détails du profil
Informations personnelles :
Nom : Homme Samir SELMANE
Localisation : France

Informations professionnelles :
Activité : Consultant en Business Intelligence
Secteur : Conseil

Informations forums :
Inscription : février 2011
Messages : 1 320
Points : 2 561
Points : 2 561
Merci
s_a_m est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Cette discussion est résolue.
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 23h46.


 
 
 
 
Partenaires

Hébergement Web