02-20-2014 05:03 PM
I am not able to troubleshoot the errors with the proc sql. I have attached the log with the error in the text file since I am not able to copy paste the code here. The question is - there is no comparison operator (eq/gt/ge) being used in this proc sql but the error says the data types being compared are different.
Here in the code the proc sql dataset _7_casecntofacct sources from qm0casecountofaccount1 (a sas proc sql view ) which in turn uses another proc sql sas view qmbcaseuseacctbycycle which has the comparison operators (=).
The log does not give any errors but only says -
Note: sql view xxx has been defined.
So only when the proc sql create table is executed, does the error with the different data types show up? I hope I am making sense.
02-20-2014 06:25 PM
SAS Views are not evaluated other than for syntax at create time. I would suspect that if you just performed a select * from the view, you would get the same error.
02-25-2014 02:52 PM
Thanks Reeza and DBailey for the suggestions. I was able to troubleshoot. I guess sas views are compiled at run time. They are executed only when a sas dataset (or in other words a materialized view) using those views is being created. Is that correct understanding?
The error was in a join between two different datasets using the same field but different format.