IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Import et export des fichiers Microsoft dans l'environnement SAS 9.2 sur Windows 64-bits

Import et export des fichiers Microsoft dans l'environnement SAS 9.2 sur Windows 64-bits


précédentsommairesuivant

4. Les solutions à apporter pour stabiliser ou réussir ses échanges entre SAS et les produits Office

4-A. Installer une version récente de SAS 9.2

Installer SAS 9.2 Maintenance 3 permet de profiter des derniers correctifs. Cette version a été largement améliorée au niveau de la stabilité et supporte la plupart des plates-formes 64-bits.

SAS 9.3 M0 n'a pas changé la gestion des drivers Excel, ce ne peut être la raison de migrer malheureusement.

4-B. Installer une version d'Excel compatible

La dernière version mise à jour par MS Office pour Excel 2007 est la version 12.0.6557, le support SAS liste dans cette note : http://support.sas.com/kb/40/383.html, quelques problèmes pouvant encore apparaître lors de l'utilisation de celle-ci.

Pour éviter tout problème de stabilité entre SAS et Excel 2007, il vaut mieux utiliser la version 12.0.4518. Autrement, les utilisateurs qui vont ouvrir des fichiers Excel depuis le serveur (lorsque les utilisateurs travaillent directement sur le serveur depuis MSTSC par exemple), risqueront de visualiser un fichier avec de nombreuses données manquantes alors que ce même fichier peut être ouvert sur leur poste (XP 32-bits) sans problème.

4-C. Installer les drivers spécifiques Microsoft Access Database Engine 2010

Ces drivers semblent plus stables pour les échanges. Indépendamment du niveau de maintenance de SAS 9.2 (M1, M2, M3).

http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=13255

4-D. Donner les pleins droits aux utilisateurs sur une clef de registre

Afin d'éviter certaines erreurs du service PC FILE SERVER, il est parfois nécessaire de modifier les droits sur HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ODBC en donnant les pleins droits au groupe SAS. Dans l'exemple ci-dessous le groupe SAS se nomme LogAsBatch et hérite des pleins droits sur la clef ODBC.

Image non disponible

4-E. Utiliser SAS Enterprise Guide

La version SAS Enterprise Guide (EG) 4.1 possède quelques bogues : le plus connu étant le blocage des futurs imports d'un fichier sur le nombre d'observations issu du premier import. Par exemple, si le fichier a été importé à l'instant avec vingt lignes, une seconde importation n'en importera pas plus même si le fichier Excel a été modifié entre-temps (cf. http://support.sas.com/kb/14/647.html).

Néanmoins, si l'on se focalise sur la version EG 4.2 et 4.3, il arrive très souvent que l'utilisateur de SAS Enterprise Guide (EG) constate un meilleur fonctionnement dans ces imports/exports qu'avec le client traditionnel.

À la différence du client traditionnel, SAS Enterprise Guide n'utilise pas le module SAS ACCESS TO PC FILES. SAS EG réalise ces importations et exportations en deux temps. Dans un premier temps, il utilise un composant Windows pour transformer les fichiers Excel ou Access en un fichier texte stocké dans un espace temporaire (dans l'image illustrant cette action, le répertoire est C:\Users\datametric\AppData\Local\Temp\ SEG4020).

Image non disponible


Dans un second temps, l'assistant d'importation crée une étape DATA pour récupérer le résultat. L'image montre bien que SAS crée une étape DATA basée sur l'INFILE.

Image non disponible


Il faut donc conclure que la tâche d'import de SAS visible dans le projet n'est donc que la phase finale du processus d'importation. Il en va de même pour la tâche d'exportation, l'outil va utiliser une API pour créer les fichiers au format XLS et MDB.

En ce qui concerne les exports au format XLSX, EG 4.3 n'a pas la possibilité d'exporter nativement dans ce format. Il faut utiliser cette tâche personnalisée mise à disposition par SAS :

  • http://support.sas.com/documentation/onlinedoc/guide/customtasks/samples/SAS.Tasks.ExcelExport.zip

Une fois de plus, cet outil n'utilise pas le module SAS, mais les composants Windows.

Sachez que SAS Enterprise Guide pourrait utiliser ce module et donc générer des PROC IMPORT et EXPORT réexploitable. Cependant, les conditions d'utilisation sont strictes et le code généré utilisera le moteur de connexion DBMS=EXCEL ou ACCESS.

Les conditions sont les suivantes :

  • le fichier Excel doit être stocké là où se trouve le moteur d'exécution (si SAS est exécuté en local alors le fichier doit être en local ou sur un répertoire visible depuis l'explorateur Windows) ;
  • si le moteur DBMS=EXCEL ou ACCESS n'est pas valide (comme sur les plates-formes 64-bits), l'outil ne permettra pas d'activer cette option.

L'image suivante montre que l'assistant désactive l'option sur une plate-forme 64-bits.

Image non disponible


précédentsommairesuivant

Copyright © 2011 Stéphane COLAS. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.