BookmarkSubscribeRSS Feed
sas_new
Calcite | Level 5

Dear friends,

I want to use the FORMAT CATALOG created from some other platform.

In my case i have format catalog created from UNIX operating system. I want to use the format catalog in WIN platform also.

When i try to open the catalog i getting error message like below,

format error.bmp

Kindly help me to resolve this..

Thanks in advance,

Kuthubudeen

10 REPLIES 10
Ksharp
Super User

It is almost not.

You can't transport format from one OS to another OS, You should re-compile format.

Do you have source code of format?

And Is there someone can offer a workaround way?

sas_new
Calcite | Level 5

Thanks Ksharp.

Thanks for your quick response.

I dont have the source code for that format.

Thanks,

Kuthubudeen

jcheema
Calcite | Level 5

In case you have access to SAS on the source platform then you could use Proc Format to create a dataset from the formats. On target platform again use Proc format to convert the dataset to formats

FriedEgg
SAS Employee

You can transport any catalog type from one OS to another using proc cport and proc cimport.

mojerry2
Fluorite | Level 6

I confirm the formats can be transferred from different operating systems.

Two options exists, you hav the possiblity to rsubmit on the unix (source) from the windows server (target). In the rsubmit do a proc download.

Other option, you're on the unix server and do a proc cport. Transfer the file to windows and there do a proc cimport.

Tom
Super User Tom
Super User

In addition to using CPORT/CIMPORT or PROC DOWNLOAD/UPLOAD I usually recommend that you avoid this problem by always storing the source PROC FORMAT code with the format catalog.

If you do not have the source code then you should use PROC FORMAT CNTLOUT= option to create a SAS dataset in addtion to the format catalog.  SAS datasets are much more portable than format catalogs.

proc format lib=MYLIB.FORMATS cntlout=MYLIB.FORMATS noprint;

run;

Ayaz020377
Calcite | Level 5

Hi Tom,

I am new in SAS and i need to know in details of your suggested solution.

proc format lib=MYLIB.FORMATS cntlout=MYLIB.FORMATS noprint;

run;

should i run above code in source system. In my case source system is Windows.

Then what should i do to use in my Unix system?

Tom
Super User Tom
Super User

Once you have moved the files where the Unix system can see them you can do the opposite.

proc format lib=unixlib.formats cntlin=unixlib.formats;

run;

Ksharp
Super User

Using following code copy code from Win to Unix if their sas version are almost same.

proc copy in=...   out=.....   noclone ;

or using

proc immgate ..

Ksharp

SAS Innovate 2025: Save the Date

 SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!

Save the date!

How to Concatenate Values

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.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 10 replies
  • 5158 views
  • 2 likes
  • 7 in conversation