In SAS, was sind gute Techniken / Optionen auf Syntaxfehler zu kontrollieren?

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

  •  08-07-2019
  •  | 
  •  

Frage

Im erweiterten Editor, kann die Färbung gibt Ihnen einen Hinweis. Doch auf dem Mainframe Ich glaube nicht, es gibt nichts, im Editor, das wird Ihnen helfen.

ich

OPTIONS OBS=0 noreplace;

Die obs = 0 Option gibt an, dass 0 observarions gelesen werden aus dem Eingang Daten-Set und noreplace sagen SAS keinen vorhandenen SAS-Datensatz mit einem der overwite gleicher Name. Wenn Sie eine neue datastet schaffen, wird es mit allen Attributen erstellt, aber mit 0 Beobachtungen. (Stellen Sie sicher, dass die Optionen zurücksetzen, falls erforderlich, um Optionen Obs = max ersetzen, wenn nicht mehr Syntaxfehler gefunden werden).

würde ich in irgendwelchen anderen Techniken interessiert. Dank

Erklärung zu den Optionen kam von hier.

War es hilfreich?

Lösung

Ich verwende die Abbrechen-Option auf der Flucht Aussage. Es wird die Syntax des Daten Schritt überprüfen dann beenden, ohne sie tatsächlich auszuführen. Es ist der Daten Schritt analog zur noexec Option in proc sql.

data something;
<stuff here>
run cancel;

Viele weitere Details in diesem SUGI pdf

Andere Tipps

Ich schreibe alle meine Code auf meinem PC mit SAS auf meinem PC und dem erweiterten, farbcodierten Editor. Ich benutze SAS / CONNECT dann auf dem Mainframe zu verarbeiten. Wenn die Datensätze auf DASD sind, verwende ich SAS / CONNECT und Enterprise Guide, um direkt den Code onthe Mainframe laufen (keine JCL!) Wenn ein Datenband beteiligt ist und daher muss ein Batchlauf sein, verwende ich SAS / CONNECT und der SAS ftp-Engine den Code an die Mainframe Batch-Warteschlange zu senden. Ich benutze den SAS E-Mail-Engine mir meine Leistung und mein Protokolls per E-Mail zurück. Ich habe und ODS-Sandwich aound meinen Code den Mainframe haben ein Word-Dokument für die Ausgabe erzeugen. Ich benutze einen PROC Download die Ausgabe auf meinen Server herunterzuladen, damit ich es in Word öffnen kann.

Diese Beratung ist sprachunabhängig.

Ich würde argumentieren, dass eine bevorzugte Technik Syntax für den Fang (und Logik) Fehler ist eine enge Lese- (oder Inspektion) von Ihrem eigenen Code auszuführen (die die Mehrheit der Syntaxfehler sollen), durch Unit-Tests auf kleine Datensätze gefolgt (was alle verbleibenden Syntaxfehler, sowie viele logische Fehler, wenn die Tests sind gut gestaltet).

Ich bin damit einverstanden, es gibt einige Werte in der Prüfung der Isolierung der Syntax, aber Ihren Code gründlich genug vor der ersten Kompilierung zu lesen und zu verstehen, so dass Sie weiß wird es kompilieren ist ein gutes Ideal zu streben. Steve McConnell berührt auf dieser Idee in Code Complete (siehe Seite 827 der 2. Ausgabe).

P. S. Sie erwähnten Syntax in Ihrer ursprünglichen Post hervorgehoben; es gibt auch andere Editoren (wie VIM), die Syntax-Hervorhebung auf SAS-Dateien durchführen wird.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top