Macros 以下ODS错误在SAS中的含义是什么?

Macros 以下ODS错误在SAS中的含义是什么?,macros,sas,options,Macros,Sas,Options,我在SAS大学学习SAS时正在使用一些基本宏,但由于某些原因,我的程序无法运行。我在Ubuntu Linux上的虚拟机中运行它。同样的代码在Windows的SAS 9.4中似乎运行得很好(但是,我现在不选择使用Windows) 我如何在SAS大学修复它 以下是小程序: ls=78 nocenter nodate ps=55 mtrace mlogic mprint nonumber formdlim='#'; /* Macro called indata1 to read in data */

我在SAS大学学习SAS时正在使用一些基本宏,但由于某些原因,我的程序无法运行。我在Ubuntu Linux上的虚拟机中运行它。同样的代码在Windows的SAS 9.4中似乎运行得很好(但是,我现在不选择使用Windows)

我如何在SAS大学修复它

以下是小程序:

ls=78 nocenter nodate ps=55 mtrace mlogic mprint nonumber formdlim='#';

/* Macro called indata1 to read in data */

%macro indata1(fname, num);

  %do i = 1 %to # *Macro do to input many files; 

    data &fname&i; * Create SAS dataset; 
    infile "/folders/myfolder/&fname&i._su15.txt" firstobs=4; * Read in data; 
    input name $ 1-8 breed $ 10-24  age  gender $ 29-34  chip $ 36-39 weight;

    proc print; 

  %end 

%mend indata1;

%indata1(dog, 1);
run; quit;
短版本(显示错误的日志文件的一部分):


我看到的几个可能的错误是:

  • 文件路径缺少一个S,应该是/folders/myfolderS/
  • run程序打印后
  • 第一行缺少
    选项
    部分代码
  • %end缺少分号

  • 编辑:我还应该添加ls和ps,它们是linesize和pagesize,可能对作为SAS UE默认目标的HTML输出没有任何影响。

    请格式化您的代码。另外,我在你的日志中没有看到任何错误,所以发布错误部分和消息。您的宏似乎缺少分号。嗯。。。也许第四点是我在格式化代码,你能检查一下吗?谢谢。不,本来就不见了。我想说,最有可能是4号。您的错误(与您发布的错误一样多)是由宏未正确结束引起的。我敢打赌第一次不是同一个错误——也许你第一次运行它时什么也没发生?我的钱也在4上#2实际上不是问题,因为运行;在宏调用之后提供。但这是一种不同寻常的风格,大多数人都会避免。
    45         ODS LISTING CLOSE;  46         OPTIONS PRINTERPATH=PDF;  47
    ODS AUTONAVIGATE OFF;  48         ODS GRAPHICS ON;  49         ODS
    HTML5 (ID=WEB) DEVICE=PNG GPATH="&_SASWSTEMP_" ENCODING=utf8  49      
    ! FILE=_HTMLOUT (TITLE='Results:  49       ! file4.sas')
    STYLE=Htmlblue OPTIONS(BITMAP_MODE='INLINE'
                               _______________________________________  
    ____________                                                                  
                               49                                           49