2016-10-20 2 views
2

Я запускаю SAS 9.4 на Windows.SAS: Почему ODS LISTING CLOSE предотвращает экспорт графа?

Если я представить

/*ods listing close;*/ 

filename grafout "C:\output\sastest.png"; 
goptions reset=goptions device=png gsfname=grafout; 

proc gchart data=sashelp.class; 
    where sex="F"; 
    vbar age/sumvar=weight type=mean subgroup=age 
       nolegend discrete; 
run; 
quit; 

файл sastest.png экспортируется в папку C:\output. Однако, если я разместил оператор ods listing close; в верхней части кода, график больше не будет экспортироваться.

По-видимому, listing назначения является более

ОРВ назначения, который производит традиционную продукцию SAS (моноширинный формат ).

Это еще больше сбивает с толку, потому что реклама отключена по умолчанию:

Начиная с SAS 9.3, по умолчанию, в среде Windowing с операционными системами Windows, и UNIX, список назначения закрыт, а пункт назначения HTML открыт.

Почему заявление ods listing close; предотвращает экспорт графика?

+1

Когда вы закрываете пункт назначения, куда еще отправляется HTML-адрес? – Reeza

+0

Вы работаете в Base SAS, SAS Studio или Enteprise Guide? –

+0

Я использую Base SAS с Enhanced Editor. Пункт назначения HTML по-прежнему включен, поскольку он никогда не был отключен. –

ответ

1

Причина в том, что назначение ods listing является причиной того, что ваш график будет экспортироваться через gsfname. Я подозреваю, что вы обнаружите, что он действительно включен, прежде чем запускать код с его комментариями (если он действительно сохраняет файл).

ODS HTML использует другой способ определения того, где должна быть экспортирована графика, а не goptions; он использует gpath= для определения пути к файлу и опцию name на графике для определения имени файла. Он фактически «экспортирует» файл каждый раз, когда вы его запускаете - просто не в нужное место (см. В вашем журнале, он использует gpath по умолчанию, возможно временное местоположение и имя файла по умолчанию, имя proc).

ods listing close; 
ods html gpath="c:\temp" ; 
proc gchart data=sashelp.class; 
    where sex="F"; 
    vbar age/sumvar=weight type=mean subgroup=age 
       nolegend discrete name="sastest"; 
run; 
quit; 

Ваш список назначения может или не может быть отключена по умолчанию в зависимости от настроек системы, как определено администратором и/или другие параметры изменены во время сеанса.

См. Controlling Where Your Output Is Stored для получения дополнительных сведений о указании способа сохранения файлов SAS/GRAPH в разных местах.

+0

Это должен быть принятый ответ –

Смежные вопросы