LISTSERV at the University of Georgia
Menubar Imagemap
Home Browse Manage Request Manuals Register
Previous messageNext messagePrevious in topicNext in topicPrevious by same authorNext by same authorPrevious page (April 2009, week 2)Back to main SAS-L pageJoin or leave SAS-L (or change settings)ReplyPost a new messageSearchProportional fontNon-proportional font
Date:         Tue, 14 Apr 2009 14:10:54 -0700
Reply-To:     Nalin Tikoo <NTikoo@BMRN.COM>
Sender:       "SAS(r) Discussion" <SAS-L@LISTSERV.UGA.EDU>
From:         Nalin Tikoo <NTikoo@BMRN.COM>
Subject:      Re: Last modification date for a format in a format catalog
Comments: To: "./ ADD NAME=Data _null_;" <iebupdte@gmail.com>
In-Reply-To:  <ce1fb7450904141405t364481a1xd94215e6be8e924@mail.gmail.com>
Content-Type: text/plain; charset="Windows-1252"

Thanks, for the sample code, I used the sashelp.vcatalg view for the same. I actually have a little more complex situation to deal with but the basis are clear now thanks to you and Joe for the responses.

Nalin

-----Original Message----- From: ./ ADD NAME=Data _null_; [mailto:iebupdte@gmail.com] Sent: Tuesday, April 14, 2009 2:05 PM To: Nalin Tikoo Cc: SAS-L@listserv.uga.edu Subject: Re: Last modification date for a format in a format catalog

I was thinking you could use the PROC CATALOG CONTENTS out= data as the meta data and update it as you modify the format catalog. Something like this maybe.

** Original fmt lib with MASTER CONTENTS; ** Create date will be preserved; proc format; value a; value b; run; proc catalog c=work.formats; contents out=work.master; run; quit;

proc sort data=work.master; *** keep in safe place; by LIBNAME MEMNAME NAME TYPE; run;

data _null_; rc = sleep(10); run;

*** update library by adding new and replaceing existing.; proc format; value x; value $x; value a; value $a; run; proc catalog c=work.formats; contents out=work.update(rename=(crdate=crdate2)); run; proc sort data=work.update; by LIBNAME MEMNAME NAME TYPE; run;

data work.master; *** Update the master contents; update work.master(in=in1) work.update(in=in2); by LIBNAME MEMNAME NAME TYPE; if in2 and not in1 then crdate=crdate2; ** for new formats; run; proc print; run;

This message is intended only for the confidential use of the intended recipient(s). If you have received this communication in error, please notify the sender by reply e-mail, and delete the original message and any attachments. Any unauthorized disclosure, copying, or distribution of this message (including the attachments), or the taking of any action based on it, is strictly prohibited.


Back to: Top of message | Previous page | Main SAS-L page