I have two libraries that I want to combine into a single library. I completed this task as follows:
proc datasets;
copy in=safety out=dsur;
quit;
proc datasets;
copy in=demog out=dsur;
quit;
All the datasets copied over just fine. However, I noticed that after running the first PROC, all the formats in the DSUR library are present. Then when I run the second PROC, all the formats from SAFETY are replaced by all the formats in DEMOG. In other words, I am getting all the desired datasets, but I am only getting formats from the last library copied over. Is there some kind of option that will not overwrite existing formats?
The formats are not even named the same, by the way. SAFETY has Action, Ctcgrd, Outcome, Relate, and Serious. DEMOG as Cancertp, Ctry, Ethnic, Gender, and Race. If that information helps at all.
Use the MEMTYPE option on the COPY statement in PROC DATASETS so that it will only copy the datasets.
Use PROC CATALOG to copy the members in the format catalogs. If you have more than one catalog you might need to loop over them.
Use the MEMTYPE option on the COPY statement in PROC DATASETS so that it will only copy the datasets.
Use PROC CATALOG to copy the members in the format catalogs. If you have more than one catalog you might need to loop over them.
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.