DATA Step, Macro, Functions and more

Removing labels using from proc datasets for many files

Accepted Solution Solved
Reply
Contributor
Posts: 38
Accepted Solution

Removing labels using from proc datasets for many files

Hello,

 

I have many files (file1, file2, ...) in my work directory and I executed this command to remove the labels from all the files:

 

proc datasets library=work memtype=data; modify file: ; attrib _all_ label=""; quit;

 

but I got an error:

ERROR 22-322: Syntax error, expecting one of the following: ;, (, /.

ERROR 200-322: The symbol is not recognized and will be ignored.

 

So is there a  way to remove the labels from all the files of the library with 1 line of code ?

 

(the command works for one file though)


Accepted Solutions
Solution
‎11-01-2017 11:20 AM
Super User
Super User
Posts: 9,397

Re: Removing labels using from proc datasets for many files

You need slightly more:

data have1;
  set sashelp.class;
run;
data have2;
  set sashelp.cars;
run;

data _null_;
  set sashelp.vtable (where=(libname="WORK"));
  call execute('proc datasets library=work nolist; modify '||strip(memname)||"; attrib _all_ label=''; run;");
run;

View solution in original post


All Replies
Solution
‎11-01-2017 11:20 AM
Super User
Super User
Posts: 9,397

Re: Removing labels using from proc datasets for many files

You need slightly more:

data have1;
  set sashelp.class;
run;
data have2;
  set sashelp.cars;
run;

data _null_;
  set sashelp.vtable (where=(libname="WORK"));
  call execute('proc datasets library=work nolist; modify '||strip(memname)||"; attrib _all_ label=''; run;");
run;
Super User
Posts: 13,293

Re: Removing labels using from proc datasets for many files

[ Edited ]

Post code and the error message from the log into a code box opened with the forum {I} menu icon.

The error message you show would have an underscore _ character under the position with the error such as:

 

97   proc datasets library=work memtype=data;
NOTE: Writing HTML Body file: sashtml1.htm
98      modify file: ;
                   -
                   22
                   200
NOTE: Enter RUN; to continue or QUIT; to end the procedure.
ERROR 22-322: Syntax error, expecting one of the following: ;, (, /.
ERROR 200-322: The symbol is not recognized and will be ignored.
99      attrib _all_ label="";
100  quit;

The main message windows will reformat text and you would not be able to tell that the : character is not allowed in that position.

 

 

 

☑ This topic is solved.

Need further help from the community? Please ask a new question.

Discussion stats
  • 2 replies
  • 164 views
  • 3 likes
  • 3 in conversation