Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > SAS > SAS Base
SAS Base Forum d'entraide sur SAS base : étape data, procédures non statistiques, procédures non graphiques, SQL
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 23/12/2007, 10h49   #1
Membre habitué
 
Inscription : juillet 2006
Messages : 283
Détails du profil
Informations forums :
Inscription : juillet 2006
Messages : 283
Points : 106
Points : 106
Par défaut Récupérer la ligne des variables

Bonjour tout le monde,

J'essaie de mettre en oeuvre le tutoriel SAS de la page : http://www.sas.com/offices/europe/fr...200706_a1.html, intitulé "UNE MACRO POUR LIRE PLUSIEURS FICHIERS TEXTE".

Cependant je bloque à l'étape qui consiste à construire une variable qui doit contenir le nom de toutes les variables d'un fichier TXT.

Voici le code que j'ai trouvé sur le site. La log SAS ne me met aucune erreur mais la table TAB1 contient un enregistrement qui reste à vide.

Pour plus d'information, en pièce jointe je mets la table du fichier Texte.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
DATA TAB1 ;
  INFILE "C:\DOCUMENTS AND SETTINGS\A\MES DOCUMENTS\MY SAS FILES\FICHIER1.TXT" OBS=1 MISSOVER LRECL=72;
  LENGTH VAR $72;
  INPUT @1 VAR $ 1-72 ;
  VAR=TRIM(LEFT(COMPBL(VAR)));
  PUT VAR;
RUN;
 
/* LA FONCTION COMPBL ELIMINE LES BLANCS A GAUCHE ET A DROITE, ET DES BLANCS MULTIPLES.*/
 
/* LA FONCTION TRIM ELIMINE LES BLANCS A DROITE.*/
 
/* LA FONCTION LEFT ELIMINE LES BLANCS A GAUCHE.*/
Merci pour l'aide.

ash_rmy.
ash_rmy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/12/2007, 16h14   #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,

Ca ne marche pas peut etre parce que la premiere ligne de ton fichier texte est une ligne vide.

A+
bab22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/12/2007, 18h18   #3
Membre habitué
 
Inscription : juillet 2006
Messages : 283
Détails du profil
Informations forums :
Inscription : juillet 2006
Messages : 283
Points : 106
Points : 106
salut,

en fait même lorsque la premiere ligne de mon fichier n'est pas à vide ça ne marche pas.

merci pour l'aide.

ash_rmy.
ash_rmy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/12/2007, 19h54   #4
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
En supprimant le missover et en mettant obs=2, ca a l'air de fonctionner, mais je ne sais pas trop pourquoi. De plus, il faut bien laisser une ligne vide en début de fichier ...

Code :
1
2
 
INFILE "C:\DOCUMENTS AND SETTINGS\A\MES DOCUMENTS\MY SAS FILES\FICHIER1.TXT" OBS=2 LRECL=72;
A+
bab22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/12/2007, 20h01   #5
Membre habitué
 
Inscription : juillet 2006
Messages : 283
Détails du profil
Informations forums :
Inscription : juillet 2006
Messages : 283
Points : 106
Points : 106
Merci beaucoup bab22.

J'ai remarqué que certains code SAS du site officiel ne marchaient pas toujours.

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 11h39.


 
 
 
 
Partenaires

Hébergement Web