I am new to SAS so perhaps it is a simple error. I am using code and data that someone else wrote and worked on their system. Data is being read in, but I get the error "Invalid object specified to bridge protocol engine." It seems I may need to do a "hot fix" but none of the fixes seemed to address this issue. I am running Studio 3.81. Thanks
Here is the code, and I have attached five of the sixteen input files (maximum allowed).
options ls=132; * nocenter; * nodate nonumber 80 ps=9999;
/*OITP Summary 110320_AN-INS1BLACK*/
%macro transit(CallN,Man,Ins,Col);
data d&CallN; infile "c:\SAS_Data\OITP Summary 012621_&Man-&Ins&Col..csv" dlm=',' dsd truncover;
MANUF="&Man"; length Layer1 Layer2 $ 5; Layer1="&Ins"; Layer2="&Col"; if Layer2=' ' then Layer2='none';
* input (NO TYPE LAB COLOUR TEMP DRATE) ($) TIME_d (LAB_A MODEL CALIB RAMP TEMP_T FLOW_O FLOW_N) ($) WT1-WT5 OITP1-OITP5;
input (NO TYPE LAB COLOUR TEMP DRATE) ($) TIME_d (LAB_A MODEL CALIB RAMP FLOW_O) ($) WT1-WT5 OITP1-OITP5; chk=substr(NO,1,1);
if 'A'<=chk<='R' then do; chk2=substr(NO,6,1); chk3=substr(NO,7,1);
if '1'<=chk2<='5' then Chamber=chk2; else if '1'<=chk3<='5' then Chamber=chk3; end;
else if '1'<=chk<='6' then Chamber=chk; else delete; if WT1=. then delete;
keep MANUF Layer1 Layer2 TIME_d WT1-WT5 OITP1-OITP5 Chamber;
proc print uniform; var MANUF Layer1 Layer2 Chamber TIME_d WT1-WT5 OITP1-OITP5; title "&CallN Raw &Man-&Ins&Col Data";
data d&CallN; set d&CallN;
if TIME_d=0 then do Chamber='1','2','3','4','5'; output; end; else output;
data d&CallN; set d&CallN; keep MANUF Layer1 Layer2 TIME_d WT OITP Chamber rep;
rep=1; Wt=WT1; OITP=OITP1; output;
rep=2; Wt=WT2; OITP=OITP2; output;
rep=3; Wt=WT3; OITP=OITP3; output;
rep=4; Wt=WT4; OITP=OITP4; output;
rep=5; Wt=WT5; OITP=OITP5; output;
data d&CallN; set d&CallN; if wt>.;
proc print uniform; var MANUF Layer1 Layer2 Chamber TIME_d rep WT OITP; title "&CallN Transposed &Man-&Ins&Col Data";
%mend transit;
%transit(1,RB,J,);
%transit(2,RB,INS1,);
%transit(3,RB,INS2,);
%transit(4,RB,INS3,);
%transit(5,AN,J,);
%transit(6,AN,INS1,BLACK);
%transit(7,AN,INS1,PINK);
%transit(8,AN,INS2,BLACK);
%transit(9,AN,INS2,PINK);
%transit(10,BW,J,);
%transit(11,BW,INS1,);
%transit(12,BW,INS2,);
%transit(13,OK,INS1,);
%transit(14,OK,INS2,);
%transit(15,OK,INS3,);
%transit(16,OK,J,);
data all; set d1 d2 d3 d4 d5 d6 d7 d8 d9 d10 d11 d12 d13 d14 d15 d16; CHAM=0; CHAM=Chamber;
temp=(CHAM=1)*55 + (CHAM>1)*81;
wet =(CHAM=2) + (CHAM=4);
GrHr =(CHAM>3)*20 + (CHAM<4)*69; time_m=TIME_d/30; Exp=time_m/2; drop TIME_d Exp;
* time=Exp*2; dose=round((GrHr=20)*Exp*23.2/8 + (GrHr=69)*Exp*80/8,.1);
proc corr; title 'Basic Relationships for OITP and Read or Generated Variables';
proc univariate normal plot; var OITP; ID Wt;
proc glm; class MANUF Layer1 Layer2 CHAM rep;
model OITP = MANUF Layer1 Layer2 CHAM rep TEMP WET GRHR TIME_m DOSE wt; title2 'Step 0. OITP Full Model';
proc glm; class MANUF Layer1 Layer2 CHAM ;
model OITP = MANUF Layer1 Layer2 CHAM TEMP WET GRHR TIME_m DOSE wt; title2 'Step 1. OITP: Drop REP';
proc glm; class MANUF Layer1 Layer2 CHAM ;
model OITP = MANUF Layer1 Layer2 CHAM TEMP WET GRHR TIME_m DOSE ; title2 'Step 2. OITP: Drop REP, WT';
proc glm; class MANUF Layer1 Layer2 ;
model OITP = MANUF Layer1 Layer2 TEMP WET GRHR TIME_m DOSE ; title2 'Step 3. OITP: Drop REP, WT, CHAM';
proc glm; class MANUF Layer1 Layer2 ;
model OITP = MANUF Layer1 Layer2 WET GRHR TIME_m DOSE ; title2 'Step 4. OITP: Drop REP, WT, CHAM, TEMP';
proc glm; class MANUF Layer1 Layer2 ;
model OITP = MANUF Layer1 Layer2 WET TIME_m DOSE /noint solution; title2 'Step 5. OITP: Drop REP, WT, CHAM, TEMP, GRHR';
endsas;*======================================================================================================;
I found a recommendation on the internet to remove "endsas" at the end of the code. It works!
I found a recommendation on the internet to remove "endsas" at the end of the code. It works!
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!
Get started using SAS Studio to write, run and debug your SAS programs.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.