Précédent   Forum des professionnels en informatique > 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 Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 04/12/2010, 15h25   #1
Invité de passage
 
Inscription : mai 2007
Messages : 14
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 14
Points : 3
Points : 3
Par défaut [ODS HTML] Création d'un fichier html avec comme nom une variable passer en parametre

Bonjour a tous,

Je possède une table data contenant des marques de véhicule.

J'aimerais pouvoir créer autant de page html que de marque de véhicule passer en paramètre dans une fonction macro :

Code :
1
2
3
4
%macro affiche_liste_marque(marque);
ODS HTML FILE = "C:\Users\******\Documents\My SAS Files\9.2\SAS\Projet SAS\PGM\&marque..htm";
ODS HTML CLOSE;
%mend;
L'idée serait de faire appel à la macro fonction lors de l'étape data contenant les marques :
Code :
1
2
3
4
DATA _null_;
SET Voiture.Marque;
&let marqueV = marque;
%affiche_liste_marque(marqueV);
Seulement le problème est que la macro me créer un fichier html "marque" et non tous les différentes marques contenue dans la macro variable &marque

Il y a probablement d'autres solutions solutions possibles à mon problème soit créer autant de fichiers html qu'il y a de marque dans ma table data mais je n'en vois pas d'autre

Quelqu'un peut il m'éclairer ?


Merci d'avance
Maral est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/12/2010, 17h08   #2
Membre du Club
 
Isabelle
Inscription : novembre 2007
Messages : 44
Détails du profil
Informations personnelles :
Nom : Isabelle
Âge : 34
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : novembre 2007
Messages : 44
Points : 57
Points : 57
Bonjour,

Je te propose cette solution, il y a peut être plus simple :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
 
 
%macro macmarque;
DATA _null_;
SET test ;
call symput('mac'||LEFT(put(_N_,2.)),compress(marque)) ;
%do i=1 %TO 7;
	%affiche_liste_marque(&&mac&i);
%end;
run;
%mend;
%macmarque;
Il faudra remplacer le 7 par le nombre de marques.

Isabelle
bab22 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 09h06.


 
 
 
 
Partenaires

Hébergement Web