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 07/06/2008, 14h56   #1
Membre habitué
 
Inscription : juillet 2006
Messages : 284
Détails du profil
Informations forums :
Inscription : juillet 2006
Messages : 284
Points : 107
Points : 107
Par défaut Interprétation de macro-variable

Bonjour,

je ne comprends pas pourquoi SAS ne m'affiche pas la valeur d'une macro-variable à l'exécution de (il ne m'affiche rien...)

Alors que lorsque je lance ce programme, il m'affiche bien la valeur :

Code :
1
2
3
4
5
6
DATA _NULL_;
  SET LIB.TABLE_FR;
  IF _N_ = 1 THEN LE_V_FR = V_FR;
  PUT LE_V_FR;
  CALL SYMPUT('LE_V_FRR',LE_V_FR);
RUN;
voici ma log :

Code :
1
2
3
4
5
6
7
8
277  DATA _NULL_;
278    SET LIB.TABLE_FR;
279    IF _N_ = 1 THEN le_V_FR = V_FR;
280    put le_v_fr;
281    CALL SYMPUT('LE_V_FRR',LE_V_fr);
282    RUN;
 
Dhrtarastra dit: O Sanjaya, quont fait mes fils et les fils de Pandu après s%'être assemblés au lieu saint de Kuruksetra, prêtes à livrer bataille?
merci pour votre aide.

ash_rmy.
ash_rmy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/06/2008, 08h50   #2
Membre Expert
 
Inscription : mars 2005
Messages : 1 028
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 1 028
Points : 1 278
Points : 1 278
Envoyer un message via Yahoo à bahraoui
Si la macro variable doit prendre la valeur de la première ligne :
Code :
1
2
3
4
5
6
7
8
9
 
DATA _NULL_;
  SET LIB.TABLE_FR;
  IF _N_ = 1 THEN do;
         LE_V_FR = V_FR;
         PUT LE_V_FR;
         CALL SYMPUT('LE_V_FRR',LE_V_FR);
end;
RUN;
bahraoui est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/06/2008, 12h42   #3
Membre habitué
 
Inscription : juillet 2006
Messages : 284
Détails du profil
Informations forums :
Inscription : juillet 2006
Messages : 284
Points : 107
Points : 107
merci pour l'aide. mais ça ne marche pas à cause des quotes... comment faire ?
ash_rmy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/06/2008, 22h58   #4
Membre Expert
 
Inscription : mars 2005
Messages : 1 028
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 1 028
Points : 1 278
Points : 1 278
Envoyer un message via Yahoo à bahraoui
Je ne comprends pas bien le problème, tu peux joindre la log.
bahraoui est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/06/2008, 14h42   #5
Membre habitué
 
Inscription : juillet 2006
Messages : 284
Détails du profil
Informations forums :
Inscription : juillet 2006
Messages : 284
Points : 107
Points : 107
Bonjour,

c'est bon ! j'ai contourné le problème :

Code :
1
2
3
4
5
6
7
DATA TEMP;
  SET LIB.FICHIERS (FIRSTOBS = 1 OBS = 1);
RUN;
 
DATA _NULL_;
  SET TEMP; CALL SYMPUT(COMPRESS("LINK_PJ"||_N_),CH_COMP);
RUN;
ash_rmy.
ash_rmy 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 02h04.


 
 
 
 
Partenaires

Hébergement Web