Desktop productivity for business analysts and programmers

ERROR: Insufficient authorization to access

Reply
Frequent Contributor
Posts: 78

ERROR: Insufficient authorization to access

We have moved from using Base SAS mainframe to now SAS EG, and so I am transferring data sets to SAS EG, but this is not running in the SAS EG environment.  I'm not even sure what this is to begin with and I definitely as lost on how to make this SAS EG friendly.  Any help you can provide is much appreciated.  PLease let me know if there's more info I can provide. Thank you in advance.

 

 

NOTE: There were 538 observations read from the data set THRUINC.OUTPUT01.

NOTE: The data set THRUINC.OUTPUT02 has 96 observations and 53 variables.

NOTE: PROCEDURE SUMMARY used (Total process time):

real time 0.00 seconds

cpu time 0.00 seconds

 

2835 DATA _NULL_;

2836 SET &NAME..OUTPUT02;

2837 FILE OUTPUTO1 LS=750;

2838

2839 PUT NETAREA +(-1)'$'

2840 AREA +(-1)'$'

2841 AREATYP +(-1)'$'

2842 CIVALLW +(-1)'$'

2843 CIVPRE +(-1)'$'

2844 OTHALLW +(-1)'$'

2845 OTHPRE +(-1)'$'

2846 CIVINCN +(-1)'$'

2847 CIVCN +(-1)'$'

2848 CIVINPD +(-1)'$'

2849 CIVPD +(-1)'$'

2850 MTFINCN +(-1)'$'

2851 MTFCN +(-1)'$'

2852 MTFINPD +(-1)'$'

2853 MTFPD +(-1)'$'

2854 EDICNT +(-1)'$'

2855 PPRCNT +(-1)'$'

2856 CIVRFNET +(-1)'$'

2857 CIVRFTOT +(-1)'$'

2858 MTFRFNET +(-1)'$'

2859 MTFRFTOT +(-1)'$'

2860 OTHRFNET +(-1)'$'

2861 OTHRFTOT +(-1)'$'

78 The SAS System 21:13 Friday, February 16, 2018

2862 CIVAUNET +(-1)'$'

2863 CIVAUTOT +(-1)'$'

2864 MTFAUNET +(-1)'$'

2865 MTFAUTOT +(-1)'$'

2866 OTHAUNET +(-1)'$'

2867 OTHAUTOT +(-1)'$'

2868 ELIGADSM +(-1)'$'

2869 ELIGADFM +(-1)'$'

2870 ELIGNADF +(-1)'$'

2871 ELIGOTHR +(-1)'$'

2872 ADSMCIV +(-1)'$'

2873 ADSMMTF +(-1)'$'

2874 ADSTCIV +(-1)'$'

2875 ADSTMTF +(-1)'$'

2876 ADFMCIV +(-1)'$'

2877 ADFMMTF +(-1)'$'

2878 ADFTCIV +(-1)'$'

2879 ADFTMTF +(-1)'$'

2880 NADFCIV +(-1)'$'

2881 NADFMTF +(-1)'$'

2882 TAMPCIV +(-1)'$'

2883 TAMPMTF +(-1)'$'

2884 TRSVCIV +(-1)'$'

2885 TRSVMTF +(-1)'$'

2886 TRRSP +(-1)'$'

2887 TRRFM +(-1)'$'

2888 TRSSP +(-1)'$'

2889 TRSFM +(-1)'$'

2890 TYA +(-1)'$'

2891 TYAPR +(-1)'$';

2892 RUN;

ERROR: Insufficient authorization to access /opt/t7iw/sas94/Config/Lev1/SASApp/outputo1.dat.

NOTE: The SAS System stopped processing this step because of errors.

NOTE: DATA statement used (Total process time):

real time 0.00 seconds

cpu time 0.00 seconds

 

2893

2894 PROC SUMMARY NWAY MISSING DATA=&NAME..OUTPUT02;

2895 BY NETAREA;

2896 VAR CIVALLW CIVPRE OTHALLW OTHPRE

2897 EDICNT PPRCNT

2898 ELIGADFM ELIGADSM ELIGNADF ELIGOTHR

2899 ADFMCIV ADFMMTF ADSMCIV ADSMMTF NADFCIV NADFMTF

2900 ADFTCIV ADFTMTF ADSTCIV ADSTMTF TRSSP TRSFM

2901 TRRSP TRRFM TYA TYAPR TAMPCIV TAMPMTF TRSVCIV TRSVMTF

2902 CIVAUNET CIVAUTOT CIVRFNET CIVRFTOT MTFAUNET MTFAUTOT

2903 MTFRFNET MTFRFTOT OTHAUNET OTHAUTOT OTHRFNET OTHRFTOT

2904 CIVCN CIVINCN CIVINPD CIVPD MTFCN MTFINCN MTFINPD MTFPD;

2905 OUTPUT OUT=TEMP (DROP=_TYPE_ _FREQ_) SUM=;

2906

NOTE: There were 96 observations read from the data set THRUINC.OUTPUT02.

NOTE: The data set WORK.TEMP has 70 observations and 51 variables.

NOTE: PROCEDURE SUMMARY used (Total process time):

real time 0.00 seconds

79 The SAS System 21:13 Friday, February 16, 2018

cpu time 0.00 seconds

 

2907 DATA _NULL_;

2908 SET TEMP;

2909 FILE OUTPUTO2 LS=750;

2910

2911 PUT NETAREA +(-1)'$'

2912 CIVALLW +(-1)'$'

2913 CIVPRE +(-1)'$'

2914 OTHALLW +(-1)'$'

2915 OTHPRE +(-1)'$'

2916 CIVINCN +(-1)'$'

2917 CIVCN +(-1)'$'

2918 CIVINPD +(-1)'$'

2919 CIVPD +(-1)'$'

2920 MTFINCN +(-1)'$'

2921 MTFCN +(-1)'$'

2922 MTFINPD +(-1)'$'

2923 MTFPD +(-1)'$'

2924 EDICNT +(-1)'$'

2925 PPRCNT +(-1)'$'

2926 CIVRFNET +(-1)'$'

2927 CIVRFTOT +(-1)'$'

2928 MTFRFNET +(-1)'$'

2929 MTFRFTOT +(-1)'$'

2930 OTHRFNET +(-1)'$'

2931 OTHRFTOT +(-1)'$'

2932 CIVAUNET +(-1)'$'

2933 CIVAUTOT +(-1)'$'

2934 MTFAUNET +(-1)'$'

2935 MTFAUTOT +(-1)'$'

2936 OTHAUNET +(-1)'$'

2937 OTHAUTOT +(-1)'$'

2938 ELIGADSM +(-1)'$'

2939 ELIGADFM +(-1)'$'

2940 ELIGNADF +(-1)'$'

2941 ELIGOTHR +(-1)'$'

2942 ADSMCIV +(-1)'$'

2943 ADSMMTF +(-1)'$'

2944 ADSTCIV +(-1)'$'

2945 ADSTMTF +(-1)'$'

2946 ADFMCIV +(-1)'$'

2947 ADFMMTF +(-1)'$'

2948 ADFTCIV +(-1)'$'

2949 ADFTMTF +(-1)'$'

2950 NADFCIV +(-1)'$'

2951 NADFMTF +(-1)'$'

2952 TAMPCIV +(-1)'$'

2953 TAMPMTF +(-1)'$'

2954 TRSVCIV +(-1)'$'

2955 TRSVMTF +(-1)'$'

2956 TRRSP +(-1)'$'

2957 TRRFM +(-1)'$'

2958 TRSSP +(-1)'$'

2959 TRSFM +(-1)'$'

2960 TYA +(-1)'$'

2961 TYAPR +(-1)'$';

80 The SAS System 21:13 Friday, February 16, 2018

2962 RUN;

ERROR: Insufficient authorization to access /opt/t7iw/sas94/Config/Lev1/SASApp/outputo2.dat.

Super User
Posts: 6,534

Re: ERROR: Insufficient authorization to access

[ Edited ]

The FILE statement indicates a file that the DATA step should write to.  It requires a definition of what the destinations are (in this case, outputo1 and outputo2).  

 

When you were on the mainframe, the JCL took care of defining those files.  There would have been DD statements for each:

 

//OUTPUTO1 DD ...........

//OUTPUTO2 DD ...........

 

With JCL now out of the picture, your program needs to add statements (at the top of the program) to define those destination files:

 

filename outputo1 'complete path to the 1st destination file';

filename outputo2 'complete path to the 2nd destination file';

 

Of course, you first need to figure out where you want the results written ... what files should hold the output.

 

As an alternative (but not the style that I prefer), you can skip writing FILENAME statements and instead include the path within the FILE statement:

 

file 'complete path to destination file' ls=750;

 

In all cases, the quotes around the complete path are required.

Frequent Contributor
Posts: 78

Re: ERROR: Insufficient authorization to access

Posted in reply to Astounding

I just created another data set and all the data went to that:

 

This is what I did:

 

DATA OTWO;

SET &NAME..OUTPUT02;

 

 

PUT NETAREA +(-1)'$'

AREA +(-1)'$'

AREATYP +(-1)'$'

CIVALLW +(-1)'$'

CIVPRE +(-1)'$'

OTHALLW +(-1)'$'

OTHPRE +(-1)'$'

CIVINCN +(-1)'$'

CIVCN +(-1)'$'

CIVINPD +(-1)'$'

CIVPD +(-1)'$'

MTFINCN +(-1)'$'

MTFCN +(-1)'$'

MTFINPD +(-1)'$'

MTFPD +(-1)'$'

EDICNT +(-1)'$'

PPRCNT +(-1)'$'

CIVRFNET +(-1)'$'

CIVRFTOT +(-1)'$'

MTFRFNET +(-1)'$'

MTFRFTOT +(-1)'$'

OTHRFNET +(-1)'$'

OTHRFTOT +(-1)'$'

CIVAUNET +(-1)'$'

CIVAUTOT +(-1)'$'

MTFAUNET +(-1)'$'

MTFAUTOT +(-1)'$'

OTHAUNET +(-1)'$'

OTHAUTOT +(-1)'$'

ELIGADSM +(-1)'$'

ELIGADFM +(-1)'$'

ELIGNADF +(-1)'$'

ELIGOTHR +(-1)'$'

ADSMCIV +(-1)'$'

ADSMMTF +(-1)'$'

ADSTCIV +(-1)'$'

ADSTMTF +(-1)'$'

ADFMCIV +(-1)'$'

ADFMMTF +(-1)'$'

ADFTCIV +(-1)'$'

ADFTMTF +(-1)'$'

NADFCIV +(-1)'$'

NADFMTF +(-1)'$'

TAMPCIV +(-1)'$'

TAMPMTF +(-1)'$'

TRSVCIV +(-1)'$'

TRSVMTF +(-1)'$'

TRRSP +(-1)'$'

TRRFM +(-1)'$'

TRSSP +(-1)'$'

TRSFM +(-1)'$'

TYA +(-1)'$'

TYAPR +(-1)'$';

RUN;

 

Super User
Posts: 6,534

Re: ERROR: Insufficient authorization to access

You changed the program, but not in the way I suggested.

 

The intent of this program is to write out a text file.  Because you removed the FILE statement, all the PUT messages were written to the log window.  The output is in the log instead of in a file.  So your change got the program to execute without error, but didn't create a program that carries out its original mission.

 

An absolute rule for all SAS programming ... always examine the log.  You will need that information to determine what happened when the program ran.

Ask a Question
Discussion stats
  • 3 replies
  • 267 views
  • 0 likes
  • 2 in conversation