SAS: tempi di file di autoexec / applicazione di formati di insiemi di dati per la visualizzazione

StackOverflow https://stackoverflow.com/questions/541505

  •  23-08-2019
  •  | 
  •  

Domanda

Ecco lo sfondo. Mi dispiace che sia così a lungo:
Faccio programmazione SAS per 3 progetti differenti. Ogni progetto ha una propria cartella principale del progetto. Ogni cartella principale del progetto contiene una cartella formati (che contiene il catalogo in formato), e poi diverse altre cartelle, ognuna delle quali contiene programmi e set di dati. Faccio la maggior parte del mio lavoro in modalità batch, in modo da SAS di solito non è aperto. Di tanto in tanto, però, voglio aprire un set di dati in SAS di guardare qualcosa in particolare. Quando faccio questo, SAS non sa dove cercare il catalogo in formato appropriato, perché i cataloghi in formato non sono mai nella stessa cartella dei set di dati. Così Attualmente uso un file autoexec.sas che specifica l'opzione nofmterr, in modo che aprirò la mia serie di dati.

Mi piacerebbe davvero, però, di essere in grado di aprire i miei set di dati con la formattazione appropriata. Ho scritto un programma autoexec diversa che utilizza una finestra di dialogo che mi chiede quale progetto cui sto lavorando e quindi imposta l'opzione fmtsearch conseguenza. Questa grande opera se voglio aprire prima SAS, e quindi aprire un set di dati. Ma se SAS non è già installato e funzionante, e cerco di aprire un insieme di dati con un doppio clic su di esso, ecco cosa succede: il file autoexec inizia a correre, poi SAS tenta di aprire il set di dati prima che il file autoexec ha terminato l'esecuzione. Quindi, se ho impostato nofmterr, il set di dati si aprirà senza formati, o se non ho impostato nofmterr, il set di dati non si apre a tutti.

Quindi, ecco la mia domanda: C'è un modo per ottenere SAS di attendere fino a quando il file autoexec termina l'esecuzione prima che tenta di aprire il set di dati? Oppure, c'è un altro modo per aggirare il problema? (Non voglio aggiungere tutti i 3 file in formato all'opzione fmtsearch, perché diversi progetti potrebbero avere diversi formati con lo stesso nome.)

È stato utile?

Soluzione

Dal momento che il set di dati si sta aprendo, senza alcun codice in esecuzione prima della mano, questo diventa tranquillo difficile. E 'possibile aprire il set di dati come parametro di un codice. Mi immagino qualcosa di simile:

commandline:/sas ./opends.sas -sysparm "/this/is/the/dataset/location_and_name"

Il tuo codice "opends.sas" dovrebbe includere tutte le informazioni di formattazione relavent per il vostro progetto.

Si potrebbe anche scrivere uno script (bash o di un lotto a seconda del sistema operativo) che ha tutto quanto sopra predefinito e si potrebbe chiamare lo script con il set di dati come parametro.

So che questo sembra ingombrante, ma è la prima soluzione che ho potuto venire con base alla descrizione.

- Aggiunto 20090218

Lo script opends.sas dovrebbe prendere in una variabile sysparm e, a seconda del sistema operativo, si deve stampare il set di dati o di emettere un comando per aprire il set di dati.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top