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 25/05/2011, 19h40   #1
Invité régulier
 
Femme
Étudiant
Inscription : mai 2011
Messages : 20
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : Finance

Informations forums :
Inscription : mai 2011
Messages : 20
Points : 5
Points : 5
Par défaut options sortie en lecture seule avec ods tagsets

Bonjour à tous.

Je voulais savoir si il existe une option dans l'ods tagsets excelxp qui permet de créer un fichier excel en lecture seule.
Je voudrais que les tableaux que j'ai crée dans SAS se retrouve dans un fichier excel qui puisse être consultable mais pas modifiable.

* Merci *
servane est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/05/2011, 21h47   #2
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
Bonsoir Servane.
A ma connaissance, non, il n'y a rien de tel dans les options du Tagsets. La liste exhaustive des options dans la dernière version est disponible ici.
Une solution serait de gérer des droits par rapport au répertoire de stockage du classeur Excel.
Bon courage.
Olivier
olivier.decourt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/05/2011, 08h31   #3
Membre éprouvé
 
Homme Rémi Bousquet
responsable adjoint service stat
Inscription : mars 2009
Messages : 334
Détails du profil
Informations personnelles :
Nom : Homme Rémi Bousquet
Âge : 35
Localisation : France

Informations professionnelles :
Activité : responsable adjoint service stat
Secteur : Finance

Informations forums :
Inscription : mars 2009
Messages : 334
Points : 464
Points : 464
Le problème avec le tagset ExcelXP, c'est que tu ne crées pas un fichier Excel, tu crées un fichier xml qui peut être lu avec Excel.

Pour répondre à ton besoin, si tu es sous Windows (hors installation spécifique type GUIDE où SAS ne peut communiquer avec Excel), tu peux avec quelques commandes DDE basiques résoudre ton problème.

Code :
1
2
3
4
5
6
7
8
DATA _NULL_ ;
    file SYS ;
    put "[ERROR(false)]";
    put "[open(""&chemin.\&fichier."")]"; 
    put "[SAVE.AS(""&chemin.\&fichier."",,,,,TRUE)]";
    put "[close()]";    
    put "[ERROR(true)]";
run ;
le 6ième paramètre de la commande SAVE.AS est le paramètre "read_only_rec", qui permet de sauvegarder en lecture seul.

L'avantage supplémentaire avec ce procédé, c'est que ton fichier sera transformé en un vrai fichier Excel, ce qui aura pour effet de réduire considérablement la place qu'il occuppe (divise souvent par 5 ou 10 la taille du fichier xml).

---

si tu n'es pas familier avec les liens DDE, avant de lancer le code ci-dessus, il faut déjà créer le lien entre SAS et Excel et démarrer Excel, ce que tu peux faire comme suit :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
options noxwait noxsync;
filename sys dde "Excel|system";
DATA _NULL_ ;
    length FID RC STOP 8 ;
    FID = FOPEN("SYS","S");                         
    IF FID = 0 then do ;                            
        RC = SYSTEM("start excel");                 
        STOP = datetime() + 10 ;                    
        do while (FID = 0) ;                        
            FID = FOPEN("SYS","S");                 
            IF (Datetime() > STOP) then FID = 1 ;   
        end ;
    end ;
    RC = fclose(FID);
run ;
RemiBousquet est déconnecté   Envoyer un message privé Réponse avec citation 30
Vieux 26/05/2011, 18h36   #4
Invité régulier
 
Femme
Étudiant
Inscription : mai 2011
Messages : 20
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : Finance

Informations forums :
Inscription : mai 2011
Messages : 20
Points : 5
Points : 5
Bonjour.
Si j'ai bien compris Remi, comme j'utilise Guide, je ne peux pas me servir de ton code?
Mais je le note, il pourra me servir plus tard. Merci.
Je pense que je vais finalement utiliser la solution d'Olivier, et gérer les droits sur le répertoire de stockage.
Merci à vous deux.
servane est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/05/2011, 22h20   #5
Membre éprouvé
 
Homme Rémi Bousquet
responsable adjoint service stat
Inscription : mars 2009
Messages : 334
Détails du profil
Informations personnelles :
Nom : Homme Rémi Bousquet
Âge : 35
Localisation : France

Informations professionnelles :
Activité : responsable adjoint service stat
Secteur : Finance

Informations forums :
Inscription : mars 2009
Messages : 334
Points : 464
Points : 464
Il existe une solution, que je n'ai jamais testé, pour faire marcher les commandes dos et les liens dde depuis guide (je n'ai pas guide... heureusement... mais c'est un autre débat)

cf un post du forum clubsasquebec.ca
http://forum.clubsasquebec.ca/viewtopic.php?t=41
RemiBousquet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/05/2011, 06h32   #6
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
@Rémi : la méthode proposée permettra effectivement de passer des commandes DOS depuis SEG, à condition que la session SAS utilisée comme serveur soit sur le même PC !
Je ne suis pas sûr que ce soit la configuration ici.
De plus, ça ne résoudrait probablement pas le problème du DDE, qui est différent : DDE n'autorise pas des applications lancées en batch (c'est le cas de la session SAS utilisée comme serveur par SEG) à dialoguer. De plus, il faut que les deux applications soient sous Windows, sur le même PC je pense. Là encore, DDE n'est une solution que quand on a SAS installé en local.
olivier.decourt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/05/2011, 07h40   #7
Rédacteur
 
Homme Stéphane
Consultant et formateur SAS et Cognos
Inscription : avril 2009
Messages : 1 791
Détails du profil
Informations personnelles :
Nom : Homme Stéphane
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Consultant et formateur SAS et Cognos
Secteur : Conseil

Informations forums :
Inscription : avril 2009
Messages : 1 791
Points : 4 012
Points : 4 012
si les clefs de registre sont modifiées par rapport au -XCMD et que le serveur est sous windows, il est possible de faire du DDE dans EGUIDE.
Il faut les pleins pouvoirs sur le serveur.
__________________
N'oubliez pas de cliquer sur lorsque votre problème est réglé !

Moteur de recherche dans les papiers SAS
datametric 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 15h41.


 
 
 
 
Partenaires

Hébergement Web