2016-08-24 32 views
2

我有以下代碼varnum爲什麼會停止sas中的proc內容?

ods select Variables; 
    proc contents data=xmlout.&XML_DSET; 
    run; 

消耗臭氧層物質的PDF打開說法早在代碼

ods pdf file="&exceldir\README.pdf" startpage=never; 
title 'README FILE'; 

這需要xmlout。 & XML_DSET,很好地把它放在我的pdf(ods pdf關閉;稍後在代碼中)。

但是!

如果我把VARNUM訂購可變數據集中存在像這樣

ods select Variables; 
    proc contents data=xmlout.&XML_DSET varnum; 
    run; 

PDF格式不顯示在所有的結果!

我在做什麼錯?

謝謝!

回答

4

看起來像添加VARNUM選項時,不會創建VARIABLES輸出對象,而是會創建一個名爲POSITION的輸出對象。要找到一個方法產生的不同的對象,最簡單的方法是使用ODS TRACE:

52 ods trace on; 
53 proc contents data=sashelp.class; 
54 run; 


Output Added: 
------------- 
Name:  Attributes 
Label:  Attributes 
Template: Base.Contents.Attributes 
Path:  Contents.DataSet.Attributes 
------------- 

Output Added: 
------------- 
Name:  EngineHost 
Label:  Engine/Host Information 
Template: Base.Contents.EngineHost 
Path:  Contents.DataSet.EngineHost 
------------- 

Output Added: 
------------- 
Name:  Variables 
Label:  Variables 
Template: Base.Contents.Variables 
Path:  Contents.DataSet.Variables 
------------- 

55 
56 proc contents data=sashelp.class varnum; 
57 run; 


Output Added: 
------------- 
Name:  Attributes 
Label:  Attributes 
Template: Base.Contents.Attributes 
Path:  Contents.DataSet.Attributes 
------------- 

Output Added: 
------------- 
Name:  EngineHost 
Label:  Engine/Host Information 
Template: Base.Contents.EngineHost 
Path:  Contents.DataSet.EngineHost 
------------- 

Output Added: 
------------- 
Name:  Position 
Label:  Varnum 
Template: Base.Contents.Position 
Path:  Contents.DataSet.Position 
------------- 

58 ods trace off; 

看到的是,你可以改變你的代碼來選擇位置輸出對象,即:

ods select position;  
proc contents data=sashelp.class varnum; 
run; 
ods select all;