亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? setup.sas

?? 缺失數(shù)據(jù)的利器
?? SAS
字號:

%macro setup;  /* macro to get the setup file */

  %getpath;  /* get the file path */

  %let sysin1 = %sysfunc(getoption(SYSIN));  /* check for log/lst file name conflict */
  %if (%bquote(&sysin1) ne ) %then %do;
    %let sysin2 = &path..sas;
    %if (%qsubstr(&sysin2, 1, 1) eq %str(~)) %then
      %let sysin2 = %sysget(HOME)/%qsubstr(&sysin2, 3, %length(&sysin2)-2);
    %if (%bquote(&sysin1) eq %bquote(&sysin2)) %then
      %let msg = SAS and SRCware log/lst file name conflict;
  %end;

  %if (%bquote(&msg) eq ) %then %do;
    %if (%lowcase(&setup) eq new or %lowcase(&setup) eq old) %then %do;
      %if (%bquote(&name) eq ) %then %let setup = new;  /* unnamed new (inline) setup file */
      %let msg = %str(Can%'t find setup file.);  /* assume error */
      %if (%sysfunc(filename(setref, &path..set)) eq 0) %then %do;
        %if (%sysfunc(fileref(&setref)) le 0) %then %do;
          %let path = %sysfunc(pathname(&setref));
          %let path = %qsubstr(&path, 1, %length(&path)-4);

          %if (%lowcase(&setup) eq new) %then %do;  /* new (inline) setup file */
            %let msg = ;  /* assume no error */

            %if (&sysscp eq WIN) %then %do;  /* check Windows errors */
              %if (%bquote(%sysfunc(getoption(SYSIN))) ne ) %then
                %let msg = %str(The "setup=new" option works only in interactive mode.);
              %else %if (&sysver ne 6.12) %then %do;
                %if (%sysevalf(&sysver ge 9)) %then %do;
                  %if (%bquote(%sysget(SAS_EXECFILEPATH)) ne ) %then
                    %let msg = %str(The "setup=new" option requires the Program Editor.);
                %end;
              %end;
            %end;

            %else %do;  /* check Unix errors */
              %if (%bquote(%sysfunc(getoption(SYSIN))) ne ) %then
                %let msg = %str(The "setup=new" option works only in interactive mode.);
            %end;

            %if (%bquote(&msg) eq ) %then %do;  /* write file */
              %let msg = %str(Can%'t write setup file.);
              %let file = %sysfunc(fopen(&setref, o));
              %if (&file ne 0) %then %do;
                %do %until(%bquote(%upcase(&key)) eq RUN);
                  %input;
                  %let key = %scan(%bquote(&sysbuffr), 1, " =;");
                  %let rc = %sysfunc(fput(&file, %bquote(&sysbuffr)));
                  %let rc = %sysfunc(fwrite(&file));
                %end;
                %if (%sysfunc(fclose(&file)) eq 0) %then %let msg = ;  /* file written */
              %end;
            %end;
          %end;

          %else %do;  /* old setup file */
            %if (%sysfunc(fexist(&setref)) eq 1) %then %let msg = ;  /* file exists */
          %end;

          %let rc = %sysfunc(filename(setref));
        %end;
      %end;
    %end;

    %else %let msg = Setup parameter "&setup" not recognized.;
  %end;

%mend setup;

%macro getset;  /* macro to get a setup line */

  %if (&sysver eq 6.12) %then %do;  /* set the line and key lengths */
    length line $ 200;
    retain maxlen 200;
  %end;
  %else %do;
    length line $ 32767;
    retain maxlen 32767;
  %end;
  retain reclen 0 recptr 1 quote "";

  comment = 0;
  complete = 0;
  line = "";
  linelen = 0;
  do until (complete);  /* character loop */

    if (recptr gt reclen) then do;  /* need a new input record */
      if (linelen gt 0) then do;  /* will be a continuation record */
        if (substr(line, linelen, 1) ne ' ') then do;  /* insert a blank */
          linelen = linelen + 1;
          substr(line, linelen, 1) = ' ';
        end;
      end;
      do while (recptr gt reclen);  /* physical record loop */
        if (end) then do; /* end of file */
          if (linelen gt 0) then call symput("msg", "Setup line incomplete");
          stop;
        end;
        infile "&path..set" _infile_=record end=end;  /* read record */
        input;
        %if (&list) %then %do;  /* list the setup record */
          file "&path..lst";
          put record;
        %end;
        if (record ne "") then do;
          reclen = length(record);
          recptr = 1;
          do while (recptr le reclen and substr(record, recptr, 1) le ' ');  /* skip leading whitespace */
            recptr = recptr + 1;
          end;
        end;
      end;
    end;

    if (comment) then do;
      if (recptr + 1 le reclen) then do;
        if (substr(record, recptr, 2) eq "*/") then do;  /* end comment */
          recptr = recptr + 1;
          substr(record, recptr, 1) = ' ';
          comment = 0;
        end;
      end;
      if (comment) then recptr = recptr + 1;
    end;
    else if (recptr + 1 le reclen) then do;
      if (substr(record, recptr, 2) eq "/*") then do;  /* begin comment */
        recptr = recptr + 2;
        comment = 1;
      end;
    end;
    if (not comment) then do;
      if (quote ne "") then do;
        if (substr(record, recptr, 1) eq quote) then quote = "";  /* end quote */
        linelen = linelen + 1;
        substr(line, linelen, 1) = substr(record, recptr, 1);
      end;
      else if (substr(record, recptr, 1) eq "'" or substr(record, recptr, 1) eq '"') then do;  /* begin quote */
        quote = substr(record, recptr, 1);
        linelen = linelen + 1;
        substr(line, linelen, 1) = substr(record, recptr, 1);
      end;
      else if (substr(record, recptr, 1) eq ';') then do;  /* semicolon */
        if (substr(line, 1, 1) eq '*') then linelen = 0;  /* comment line */
        else do;  /* non-comment line */
          if (linelen eq 0) then do;  /* setup line empty */
            call symput("msg", "Setup line empty");
            stop;
          end;
          if (substr(line, linelen, 1) ne ' ') then linelen = linelen + 1;
          substr(line, linelen, 1) = ';';  /* append semicolon */
          complete = 1;
        end;
      end;
      else if (substr(record, recptr, 1) gt ' ') then do;  /* keep non-whitespace character */
        linelen = linelen + 1;
        substr(line, linelen, 1) = substr(record, recptr, 1);
      end;
      else do;  /* whitespace character */
        if (linelen gt 0) then do;  /* not a leading whitespace character */
          if (substr(line, linelen, 1) ne ' ') then do;  /* not a repeated whitespace character */
            linelen = linelen + 1;  /* keep it as a blank */
            substr(line, linelen, 1) = ' ';
          end;
        end;
      end;
      recptr = recptr + 1;
    end;

  end;

  line = trim(substr(line, 1, linelen));  /* return the logical line */

%mend getset;

%macro getkeys;  /* macro to get keyword/value pairs */

  %if (&keys ne ) %then %do;

    data _null_;

      array keys(*) $ 32
        %let count = 0;  /* fill the keys array from the keys macro variable */
        %do %until(&key eq );
          %let count = %eval(&count + 1);
          %let key = %scan(&keys, &count, " ");
          %if (&key ne ) %then %do;
            key&count
          %end;
        %end;
        (
        %let count = 0;
        %do %until(&key eq );
          %let count = %eval(&count + 1);
          %let key = %scan(&keys, &count, " ");
          %if (&key ne ) %then %do;
            %if (&count gt 1) %then ,;
            "%upcase(&key)"
          %end;
        %end;
        );
      length key $ 32;

      do while (1);  /* loop through the setup lines */

        %let list = 0;  /* get a setup line */
        %getset;

        key = scan(line, 1, " ");  /* get its key */
        key = upcase(key);
        keylen = length(key);
        do _i_ = 1 to dim(keys);  /* check the key */
          if (keylen ge length(keys(_i_))) then do;
            if (substr(key, 1, length(keys(_i_))) eq keys(_i_)) then do;  /* key matches */
              line = left((substr(line, keylen+1)));  /* extract its value */
              line = substr(line, 1, length(line) - 1);
              call symput(keys(_i_), trimn(line));  /* set the macro */
              leave;
            end;
          end;
        end;

      end;

    run;
  %end;

%mend getkeys;

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久夜色精品国产欧美乱极品| 亚洲一区二区三区四区中文字幕| 午夜精品久久久久久久99水蜜桃| 成人免费小视频| 国产成人免费网站| 中文字幕亚洲不卡| 欧美在线综合视频| 久久99九九99精品| 国产精品三级电影| 在线视频中文字幕一区二区| 日韩精品久久久久久| 日韩精品一区二区三区在线| www.亚洲色图| 久久se精品一区精品二区| 国产精品白丝在线| 7777精品伊人久久久大香线蕉最新版 | 免费人成精品欧美精品| 国产欧美日韩另类视频免费观看| 99国产精品一区| 毛片一区二区三区| 国产精品你懂的| 91精品综合久久久久久| 成人性生交大片免费看中文网站| 亚洲图片欧美视频| 亚洲精品一二三| 国产精品污www在线观看| 欧美日本一道本在线视频| 国产传媒一区在线| 麻豆精品一区二区| 日韩成人免费电影| 亚洲国产欧美一区二区三区丁香婷| 欧美国产精品专区| 亚洲精品一区二区三区99| 欧美日韩国产精选| 91久久国产最好的精华液| 91丨九色丨黑人外教| 99精品在线免费| 久久久久久久久久久黄色| 在线视频一区二区三| eeuss鲁片一区二区三区在线观看| 久久电影网电视剧免费观看| 久久国产精品72免费观看| 九九在线精品视频| 国内不卡的二区三区中文字幕| 久久国产精品99精品国产| 久久国产日韩欧美精品| 精品亚洲成a人在线观看| 国产美女在线精品| 成人美女在线观看| 欧美最猛黑人xxxxx猛交| 欧美四级电影在线观看| 欧美三级视频在线| 日韩免费看的电影| 国产欧美一区二区三区在线老狼| 欧美国产激情二区三区| 亚洲欧美偷拍三级| 香蕉加勒比综合久久| 免费观看一级欧美片| 国产成人鲁色资源国产91色综 | 亚洲国产另类精品专区| 天天操天天色综合| 国产成人av网站| 欧美亚洲一区二区在线| 亚洲精品在线免费观看视频| 亚洲精品国产精华液| 蜜臀av性久久久久蜜臀av麻豆| 国产成人精品午夜视频免费| 欧洲av一区二区嗯嗯嗯啊| 欧美成人综合网站| 亚洲综合小说图片| 激情综合色丁香一区二区| 色哟哟一区二区三区| 精品国产乱码久久久久久1区2区| 综合av第一页| 狠狠色综合播放一区二区| 国产精品欧美一区喷水| 一区二区三区在线观看国产 | 亚洲国产wwwccc36天堂| 成人免费黄色大片| 亚洲国产中文字幕| 91网页版在线| 国产精品久久久久婷婷| 黄色日韩三级电影| 日韩一级精品视频在线观看| 亚洲一区二区三区视频在线 | 蜜桃av一区二区| 欧美激情一区二区三区四区| 久热成人在线视频| 欧美一级黄色录像| 免播放器亚洲一区| 2023国产一二三区日本精品2022| 亚洲高清视频中文字幕| 欧美日本在线播放| 午夜私人影院久久久久| 欧美色图12p| 成人午夜视频福利| 亚洲免费在线观看| 欧美日韩在线综合| 美女国产一区二区三区| 精品国产亚洲一区二区三区在线观看| 精品一区在线看| 国产午夜精品久久久久久久| 顶级嫩模精品视频在线看| 日韩理论片在线| 91精品国产综合久久精品| 日本在线不卡一区| 久久精品人人做人人综合| 不卡av在线免费观看| 亚洲国产欧美日韩另类综合| 精品毛片乱码1区2区3区| 99久久精品免费看| 日本一道高清亚洲日美韩| 久久亚洲精品国产精品紫薇| 色av一区二区| 狠狠色丁香九九婷婷综合五月| 国产精品久久久久三级| 欧美精品自拍偷拍| 高清不卡在线观看av| 亚洲国产精品久久久男人的天堂 | 日韩欧美另类在线| 日本韩国一区二区| 91国偷自产一区二区三区成为亚洲经典| 日韩一区二区在线看片| 色综合天天做天天爱| 色综合久久中文字幕综合网| 蜜臀av一区二区在线观看| 日本一二三不卡| 精品91自产拍在线观看一区| 色一情一伦一子一伦一区| 国产精品自产自拍| 美女在线视频一区| 亚洲aⅴ怡春院| 午夜日韩在线观看| 五月婷婷综合在线| 婷婷久久综合九色综合绿巨人| 亚洲在线成人精品| 亚洲一区二区精品3399| 一卡二卡三卡日韩欧美| 亚洲一区二区精品视频| 午夜欧美电影在线观看| 免费看日韩a级影片| 国产精品 欧美精品| jlzzjlzz欧美大全| 91久久精品国产91性色tv| 日本特黄久久久高潮| 久久av资源网| 欧美日韩国产免费一区二区| 欧美精品一区二区三区视频| 国产精品蜜臀av| 日韩成人免费在线| 成人精品国产一区二区4080| 在线观看国产91| 91精品国产乱码| 国产欧美日韩不卡免费| 五月婷婷激情综合| 成人黄色在线视频| 91精品国产色综合久久ai换脸| 精品国产欧美一区二区| 一区二区三区在线观看欧美| 国产高清视频一区| 91精品国产91久久久久久最新毛片| 中文字幕乱码日本亚洲一区二区| 一区二区三区波多野结衣在线观看 | 欧美大胆人体bbbb| 一区二区三区欧美日| 岛国av在线一区| 精品盗摄一区二区三区| 日韩在线a电影| 欧美群妇大交群中文字幕| 中文字幕佐山爱一区二区免费| 99国产精品久| 久久这里只有精品首页| 亚洲第一狼人社区| 国产精品主播直播| 欧美一区二区私人影院日本| 国产精品传媒入口麻豆| 国产99久久久久| 久久精品视频网| 国产黄色成人av| 精品久久久久香蕉网| 麻豆精品视频在线观看| 欧美久久久一区| 亚洲成人资源在线| 欧美日韩精品一区二区天天拍小说| 亚洲青青青在线视频| 91日韩精品一区| 一区二区免费看| 欧美午夜精品理论片a级按摩| 亚洲青青青在线视频| 欧美性生活大片视频| 亚洲成在人线免费| 7777精品伊人久久久大香线蕉完整版 | 国产精品久久久久久久久图文区| 精品一区精品二区高清| 国产情人综合久久777777| 国产99久久久国产精品免费看| 中文字幕欧美日本乱码一线二线| 国产黄色成人av| 日韩理论片一区二区| 色先锋资源久久综合|