Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > SAS > Macro
Macro Forum d'entraide sur le langage Macro 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 05/05/2011, 11h24   #1
Futur Membre du Club
 
julien quetel
Inscription : juillet 2010
Messages : 91
Détails du profil
Informations personnelles :
Nom : julien quetel

Informations forums :
Inscription : juillet 2010
Messages : 91
Points : 16
Points : 16
Par défaut macro variable pour chemin d'une proc

Bon voila j'ai un fichier global que j'ai fragmenté en fonction d'une variable de classification, chaque fichier porte le nom de la modalité de la variable, probleme je n'arrive pas a m'en servir pour faire une procedure, je vous mets le code ce sera peut etre plus clair...

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 
DATA _null_;
SET alz.statclient;
call symputx('clientnuml'||LEFT(trim(_n_)),clientnum);
/*compte le nombre de clients*/
call symput('nb_client',_n_);
/*permet de creer une liste contenant client avec un numero avec un nom de client associé*/
call symputx('clientnoml'||LEFT(trim(_n_)),clientnom);
call symputx('clientreg'||LEFT(trim(_n_)),region);
call symputx('cheminreg'||LEFT(trim(_n_)),'alz.'||region);
run;
 
%do i=1 %TO &nb_client*/;
 
	proc tabulate DATA=&&cheminreg&i..;
	cLASS mms_lib/ORDER=DATA;
	KEYLABEL n='Fréquence (n)' pctn='%' ;
	TABLE MMS_lib='' ALL="Nombre de visite ayant eu lieu en 2010",
	N pctn/ PRINTMISS BOX ="Type visite";
	run;
%end;

Code :
1
2
3
 
ERROR: File ALZ.NORDPASDECALAIS.DATA does NOT exist.
ERROR: No DATA SET open TO look up VARIABLES.
traersa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 11h46   #2
Membre Expert
 
Homme
Biostatisticien
Inscription : juin 2009
Messages : 1 143
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Irlande

Informations professionnelles :
Activité : Biostatisticien
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : juin 2009
Messages : 1 143
Points : 1 760
Points : 1 760
sas ne retrouve pas le fichier ALZ.NORDPASDECALAIS. La résolue des macros variables fournit-elle une affectation correcte? D'autre part, pour utiliser les %do, tu dois créer un macro programme.
Manoutz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 11h50   #3
Futur Membre du Club
 
julien quetel
Inscription : juillet 2010
Messages : 91
Détails du profil
Informations personnelles :
Nom : julien quetel

Informations forums :
Inscription : juillet 2010
Messages : 91
Points : 16
Points : 16
l'erreur est la suivante :
Code :
1
2
3
 
ERROR: File ALZ.NORDPASDECALAIS.DATA does NOT exist.
ERROR: No DATA SET open TO look up VARIABLES.
le truc c'est que ma table s'apelle ALZ.NORDPASDECALAIS, mais il me rajoute un data on dirait, j'arrive pas a l'enlever...

sinon oui ca fait partie d'une grosse macro, mais j'ai mis que la partie qui plante.
traersa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 11h54   #4
Membre Expert
 
Homme
Biostatisticien
Inscription : juin 2009
Messages : 1 143
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Irlande

Informations professionnelles :
Activité : Biostatisticien
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : juin 2009
Messages : 1 143
Points : 1 760
Points : 1 760
Et pour la librairie c'est bon aussi? Bizarre..

Essaie déjà te lancer ta proc tabulate sans passer par du macro language, et dis nous si ca marche.
Manoutz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 12h15   #5
Modérateur
 
Homme Samir SELMANE
Consultant en Business Intelligence
Inscription : février 2011
Messages : 1 006
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 006
Points : 1 703
Points : 1 703
ERROR: File ALZ.NORDPASDECALAIS.DATA le (.DATA ) c'est pour dire que c'est une table, parce qu'il se peut qu'elle soit une vue
s_a_m est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 12h19   #6
Membre Expert
 
Avatar de MEGAMIND2
 
Homme Brice Beare
Paris
Inscription : janvier 2011
Messages : 956
Détails du profil
Informations personnelles :
Nom : Homme Brice Beare
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Paris

Informations forums :
Inscription : janvier 2011
Messages : 956
Points : 1 366
Points : 1 366
Pourquoi proc tabulate pour moi ça devait être
Code :
proc tabulate DATA=&&cheminreg&i.
ie un seul point.
N'hésite pas à mettre les options pour t'aider à débuger:

Code :
options mprint mlogic symbolgen
MEGAMIND2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 12h46   #7
Expert Confirmé
 
Avatar de olivier.decourt
 
Homme Olivier Decourt
Formateur en informatique
Inscription : avril 2008
Messages : 1 467
Détails du profil
Informations personnelles :
Nom : Homme Olivier Decourt
Âge : 34
Localisation : France

Informations professionnelles :
Activité : Formateur en informatique
Secteur : Conseil

Informations forums :
Inscription : avril 2008
Messages : 1 467
Points : 2 823
Points : 2 823
Et pourquoi pas .. Brice ? Les deux vont disparaître, le premier avec le &i et le 2e lors du second passage sur l'expression.
Je vote aussi pour la table-qui-devrait-exister-mais-en-fait-non. Genre le nom de bibliothèque n'est pas bon, ou ce n'est pas exactement le nom de la table, ou un truc du genre.
olivier.decourt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 12h50   #8
Modérateur
 
Homme Samir SELMANE
Consultant en Business Intelligence
Inscription : février 2011
Messages : 1 006
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 006
Points : 1 703
Points : 1 703
[QUOTE=MEGAMIND2;5960897]Pourquoi proc tabulate c'est juste Brice. ( au fait le point c'est juste pour marquer le fin de la macro variable. les &+& =& c'est la régle donc après on pour fermer les deux macro variable on met 2 . )
exemple

Code :
1
2
3
4
5
6
 
PROC EXPORT DATA=&&tab&i..
		OUTFILE= "c:\temp\&&var&i...txt" /*avec un seul ou 2 points sa ne marchera pas */
		DBMS=DLM;
		DELIMITER=';';
RUN;
&tab je l'ai récupéré d'une table qui contien les nom des tables à exporter avec un call symput.
s_a_m est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 12h55   #9
Membre Expert
 
Avatar de MEGAMIND2
 
Homme Brice Beare
Paris
Inscription : janvier 2011
Messages : 956
Détails du profil
Informations personnelles :
Nom : Homme Brice Beare
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Paris

Informations forums :
Inscription : janvier 2011
Messages : 956
Points : 1 366
Points : 1 366
De quoi vous parlez, je n'ai rien dit moi
MEGAMIND2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 12h57   #10
Modérateur
 
Homme Samir SELMANE
Consultant en Business Intelligence
Inscription : février 2011
Messages : 1 006
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 006
Points : 1 703
Points : 1 703
Citation:
Envoyé par MEGAMIND2 Voir le message
De quoi vous parlez, je n'ai rien dit moi
s_a_m est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 13h12   #11
Membre Expert
 
Avatar de MEGAMIND2
 
Homme Brice Beare
Paris
Inscription : janvier 2011
Messages : 956
Détails du profil
Informations personnelles :
Nom : Homme Brice Beare
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Paris

Informations forums :
Inscription : janvier 2011
Messages : 956
Points : 1 366
Points : 1 366
Sam
MEGAMIND2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 17h10   #12
Futur Membre du Club
 
julien quetel
Inscription : juillet 2010
Messages : 91
Détails du profil
Informations personnelles :
Nom : julien quetel

Informations forums :
Inscription : juillet 2010
Messages : 91
Points : 16
Points : 16
je suis désolé... vous avez raison je suis un boulet et dire que j'ai cherché des heures, j'avais pas mis le nom de la bibliotheque a un data du coup en librairie work merci a tous pour votre aide
traersa est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 10h00.


 
 
 
 
Partenaires

Hébergement Web