Dear all, I have recently come across a very surprising behaviour of PROC METALIB: if the format (same format name, same catalog) indicated at the metadata server level uses letter cases(s) different from the letter case(s) used in the descriptor portion of a dataset, PROC METALIB considers these formats as different. So if we have, say, the format at the metadata server level written as $ASquared. and the format stored in the descriptor portion of the dataset (to which the metadata object is pointing) written as $ASQUARED. PROC METALIB (noexec; report;) considers the formats are different. This is a problem because we are currently using PROC METALIB to identify any discrepancies between the (metadata server) metadata and the descriptor portion of datasets, and this is obviously giving us a (currently unknown) number of false positives (I haven't checked the informats yet, but I assume the same problem wil arise). And it is surprising because SAS does not allow the same format (even with different letter case(s)) to be present in the same catalog (this is SAS on Windows). Is this something one of you has already noticed? Is there a fix? Many TIA Cheers Anne. |
Hi Anne,
Probably the most expedient fix would simply be to make the metada match (case-wise). For that, you could consider updating the physical metadata using these two macros (one to get the formats, the other to apply them (after an uppercase):
/Allan
Join us for SAS Innovate 2025, our biggest and most exciting global event of the year, in Orlando, FL, from May 6-9. Sign up by March 14 for just $795.
Need to connect to databases in SAS Viya? SAS’ David Ghan shows you two methods – via SAS/ACCESS LIBNAME and SAS Data Connector SASLIBS – in this video.
Find more tutorials on the SAS Users YouTube channel.