home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #16 / NN_1992_16.iso / spool / bit / listserv / sasl / 3481 < prev    next >
Encoding:
Text File  |  1992-07-29  |  2.2 KB  |  59 lines

  1. Comments: Gated by NETNEWS@AUVM.AMERICAN.EDU
  2. Path: sparky!uunet!darwin.sura.net!paladin.american.edu!auvm!COMPUSERVE.COM!76350.1604
  3. Message-ID: <920729213244_76350.1604_EHJ52-3@CompuServe.COM>
  4. Newsgroups: bit.listserv.sas-l
  5. Date:         Wed, 29 Jul 1992 17:32:44 EDT
  6. Reply-To:     Andy Norton <76350.1604@COMPUSERVE.COM>
  7. Sender:       "SAS(r) Discussion" <SAS-L@UGA.BITNET>
  8. From:         Andy Norton <76350.1604@COMPUSERVE.COM>
  9. Subject:      File date in SAS 6.07 VMS
  10. Comments: To: SAS-L <SAS-L@AWIIMC12.IMC.UNIVIE.AC.AT>
  11. Lines: 46
  12.  
  13. ----------------------------------------------------------------------
  14. CONTENT:   Response
  15. SUMMARY:   Response to Mark Shaffer (obtaining sas dataset creation)
  16.            Use version 6.07 SQL Dictionary Views
  17. REL/PLTF:  6.07.01/CMS, 6.04/PC-DOS
  18. E-ADDR:    76350.1604@compuserve.com
  19. NAME:      Andy Norton
  20. ADDRESS:   Trilogy Consulting, 5822 Lovers Lane, Kalamazoo MI 49002
  21. PHONE:     (616) 344-2191
  22. ----------------------------------------------------------------------
  23. Marc Schaeffer  (mschaeff@PILOT.NJIN.NET) asked
  24. >  Is there a macro, like &sysdate, which I can use to insert the
  25. >  filedate (i.e., the date the file was last refreshed) in a footer
  26. >  in my reports?
  27.  
  28. On page 289 of Technical Report P-222 ("Changes and Enhancements to
  29. BASE SAS Software, Release 6.07")  it describes SQL dictionary views.
  30. These let you get at internal dataset header information that was
  31. previously only printed on PROC CONTENTS listings.
  32.  
  33. Using SQL,
  34.    proc sql noprint;
  35.      select CRDATE
  36.      into   :CRDATE
  37.      from   DICTIONARY.TABLES
  38.      where      LIBNAME = 'WHATEVER'
  39.             and MEMNAME = 'WHATELSE';
  40.    quit;
  41.    proc print data=WHATEVER.WHATELSE;
  42.      footnote "Created on &CRDATE";
  43.    run;
  44.  
  45. Note that CRDATE yields a formatted DATETIME value.  You might want to
  46. use the DATEPART function to get a DATE value.
  47.  
  48. You can also do it without PROC SQL (no particular advantage):
  49.  
  50.    data _null_;
  51.      set SASHELP.VTABLE;
  52.        where LIBNAME='WHATEVER' and MEMNAME='WHATELSE';
  53.      call symput ('CRDATE', put(CRDATE, DATETIME.));
  54.    run;
  55.  
  56. Note:  SASHELP.VTABLE is a built-in kludge allowing you to access
  57. Dictionary views from outside of SQL (after all, DICTIONARY is an
  58. invalid libname).  See page 290 of Tech Rpt P-222.
  59.