BookmarkSubscribeRSS Feed
☑ This topic is solved. Need further help from the community? Please sign in and ask a new question.
twildone
Pyrite | Level 9

Hi....I am trying to correct a EffectiveWithdrawDate on a student record and I am getting an "Invalid numeric data". I tried double quotes around the datetime and get an error message. Any suggestion on how to deal with this.....Thanks.

 

1          ;*';*";*/;quit;run;
2          OPTIONS PAGENO=MIN;
3          %LET _CLIENTTASKLABEL='Program (3)';
4          %LET _CLIENTPROCESSFLOWNAME='Process Flow';
5          %LET _CLIENTPROJECTPATH='';
6          %LET _CLIENTPROJECTPATHHOST='';
7          %LET _CLIENTPROJECTNAME='';
8          %LET _SASPROGRAMFILE='';
9          %LET _SASPROGRAMFILEHOST='';
10         
11         ODS _ALL_ CLOSE;
12         OPTIONS DEV=PNG;
13         GOPTIONS XPIXELS=0 YPIXELS=0;
14         FILENAME EGSR TEMP;
15         ODS tagsets.sasreport13(ID=EGSR) FILE=EGSR
16             STYLE=HTMLBlue
17             STYLESHEET=(URL="file:///C:/Program%20Files/SASHome/SASEnterpriseGuide/7.1/Styles/HTMLBlue.css")
18             NOGTITLE
19             NOGFOOTNOTE
20             GPATH=&sasworklocation
21             ENCODING=UTF8
22             options(rolap="on")
23         ;
NOTE: Writing TAGSETS.SASREPORT13(EGSR) Body file: EGSR
24         
25         GOPTIONS ACCESSIBLE;
26         
27         data DropBag1;
28         	length DropBagID 8 StudentUID 8 TermCalendarID 8 Department $ 5 CourseID $ 5 CourseType $ 5 Section $ 5 CourseName $ 60
28       ! CollegeID 8 Credits 8 Grade $ 5 LastUpdate 8 EffectsTermGPA $ 3 EffectsCumGPA $ 3 CategoryID 8 GradePoint 8 CreditFactor
28       ! 8 TermEarned 8 CumulativeEarned 8 TermGPAHours 8 CumulativeGPAHours 8
29                     MidTermGrade $ 2 MidTermPoints 8 ShowGradeReport $ 3 ShowTranscript $ 3 OverallGradePoint 8
29       ! OverallCreditFactor 8 ShowAdvisorTranscript $ 3 GPAGroupID 8 RegistrationStatus $ 40 ClockHours 8 StartDate 8
29       ! CompletionDate 8 FacultyID 8 PreviousGrade $ 2 StartInputDate 8 CompletionInputDate 8 IgnoreRepeats $ 3
30                     Repeat $ 3 TranscriptATTHours 8 TranscriptERNHours $ 3 EffectiveRegDate 8 DropUserID $ 15 DropTime 8
30       ! SracademicID 8 SrofferID 8 MatchSRMasterID 8 IncludeHopeGPA 8 WritingIntensive 8 Honors 8 NumberGradeFinal 8
30       ! NumberGradeMidTerm 8 EffectiveAddDate 8 EffectiveWithdrawDate 8;
31             format Department $char5. CourseID $char5. CourseType $char5. Section	$char5. CourseName $char60. Grade $char5.
31       ! LastUpdate DATETIME20. EffectsTermGPA $char3. EffectsCumGPA $char3. MidTermGrade $char2. ShowGradeReport $char3.
31       ! ShowTranscript $char3. ShowAdvisorTranscript $char3. RegistrationStatus $char40.
32                     StartDate DATETIME22.3 CompletionDate DATETIME22.3 StartInputDate DATETIME22.3 CompletionInputDate
32       ! DATETIME22.3 IgnoreRepeats $char3. Repeat $char3. TranscriptERNHours $char3. EffectiveRegDate DATETIME22.3
32       ! DropUserID	$char15. DropTime DATETIME22.3 EffectiveAddDate DATETIME22.3 EffectiveWithdrawDate DATETIME22.3;
33         	set sqldb.DropBag;
34                 if StudentUID in (13125) and TermCalendarID in (104) and Department in ('NCT') then do;
35                     CourseName = 'Cisco Level II';
36                     EffectiveWithdrawDate = '15APR2015:00:00:00.000';
37                 end;
38         run;

NOTE: Character values have been converted to numeric values at the places given by: (Line):(Column).
      36:37   
NOTE: Invalid numeric data, '15APR2015:00:00:00.000' , at line 36 column 37.
DropBagID=17617 StudentUID=13125 TermCalendarID=104 Department=NCT CourseID=060 CourseType=40S Section=CECP3
CourseName=Cisco Level II CollegeID=0 Credits=1 Grade=  LastUpdate=30MAR2015:16:04:00 EffectsTermGPA=Yes EffectsCumGPA=Yes
CategoryID=1099 GradePoint=0 CreditFactor=0 TermEarned=0 CumulativeEarned=0 TermGPAHours=0 CumulativeGPAHours=0 MidTermGrade= 
MidTermPoints=0 ShowGradeReport=Yes ShowTranscript=Yes OverallGradePoint=0 OverallCreditFactor=0 ShowAdvisorTranscript=Yes
GPAGroupID=0 RegistrationStatus=Official ClockHours=0 StartDate=10FEB2015:00:00:00.000 CompletionDate=16APR2015:00:00:00.000
2                                                          The SAS System                               11:02 Thursday, June 9, 2022

FacultyID=0 PreviousGrade=  StartInputDate=. CompletionInputDate=. IgnoreRepeats=No Repeat=No TranscriptATTHours=1
TranscriptERNHours=Yes EffectiveRegDate=15APR2015:00:00:00.000 DropUserID=PENHEC DropTime=15APR2015:14:19:00.000
SracademicID=1213294 SrofferID=24691 MatchSRMasterID=. IncludeHopeGPA=1 WritingIntensive=0 Honors=0 NumberGradeFinal=.
NumberGradeMidTerm=. EffectiveAddDate=10FEB2015:16:03:55.000 EffectiveWithdrawDate=. _ERROR_=1 _N_=842
1 ACCEPTED SOLUTION

Accepted Solutions
PaigeMiller
Diamond | Level 26
EffectiveWithdrawDate = '15APR2015:00:00:00.000';

makes EffectiveWithdrawData a character string. It should be

 

EffectiveWithdrawDate = '15APR2015:00:00:00.000'dt;

 

and now EffectiveWithdrawData is a SAS date/time value, which is numeric.

 

By the way, if you want a variable to be numeric and have length of 8, you don't have to do anything, 8 is the default.

--
Paige Miller

View solution in original post

2 REPLIES 2
PaigeMiller
Diamond | Level 26
EffectiveWithdrawDate = '15APR2015:00:00:00.000';

makes EffectiveWithdrawData a character string. It should be

 

EffectiveWithdrawDate = '15APR2015:00:00:00.000'dt;

 

and now EffectiveWithdrawData is a SAS date/time value, which is numeric.

 

By the way, if you want a variable to be numeric and have length of 8, you don't have to do anything, 8 is the default.

--
Paige Miller
twildone
Pyrite | Level 9
Thanks Paige.....that fixed the problem and thanks for the information about numeric variables.

Ready to join fellow brilliant minds for the SAS Hackathon?

Build your skills. Make connections. Enjoy creative freedom. Maybe change the world. Registration is now open through August 30th. Visit the SAS Hackathon homepage.

Register today!
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.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 2 replies
  • 288 views
  • 0 likes
  • 2 in conversation