I have done considerable research and cannot resolve the error in the subject line. My data is coming from an excel spreadsheet uploaded to the mainframe as a PRN file.
I want to insert the data to an existing mainframe DB2 table with the following layout:
FIN_YEAR CHAR(4) PRIM
MIN_EFC DEC(7,0) PRIM
MAX_EFC DEC(7,0) PRIM
PELL_AMOUNT_F DEC(5,0)
PELL_AMOUNT_Q DEC(5,0)
PELL_AMOUNT_H DEC(5,0)
PELL_AMOUNT_L DEC(5,0)
Sample data:
2016 801 900 4925 3694 2463 1231
2016 901 1000 4825 3619 2413 1206
2016 1001 1100 4725 3544 2363 1181
.
.
.
4801 4900 925 694 0 0
4901 5000 825 619 0 0
5001 5100 725 0 0 0
5101 5198 626 0 0 0
5199 999999 0 0 0 0
SAS code:
LIBNAME FAD DB2 AUTHID=FAD SSID=DB2T
OPTIONS DB2SSID=DB2T ;
DATA PELLSCHD_IN_PRN_FORMAT;
INFILE INSFILE ;
INPUT @5 FINYR $4.
@10 MINEFC 7.0
@18 MAXEFC 7.0
@28 PELLAMTF 5.0
@36 PELLAMTQ 5.0
@44 PELLAMTH 5.0
@52 PELLAMTL 5.0 ;
RUN;
PROC DB2UTIL
DATA = PELLSCHD_IN_PRN_FORMAT
TABLE = FAD.PELL_SCHEDULE
COMMIT = 50
LIMIT = 1000
FUNCTION = INSERT;
MAPTO
FINYR = FIN_YEAR
MINEFC = MIN_EFC
MAXEFC = MIN_EFC
PELLAMTF = PELL_AMOUNT_F
PELLAMTQ = PELL_AMOUNT_Q
PELLAMTH = PELL_AMOUNT_H
PELLAMTL = PELL_AMOUNT_L ;
UPDATE;
RUN;
I am willing to do additional research on my own but i have run out of ideas for where to look.
Many thanx in advance for your help....
A full log will, so we can see in which step you get the error.
And, PRN file? Is that a print file?
Doesn't sound like somthing I would touch for data manipulation.
Is the a manual upload process? Why not use TAB or CSV instead?
I receive the same error for uploaded CSV and TXT file versions
I upload from the PC to TSO ISPF using the SEND utility
The difference between CSV/TXT/PRN files is comma/tab(dot)/right justified between data columns
Log:
NOTE: Copyright (c) 2002-2003 by SAS Institute Inc., Cary, NC, USA.
NOTE: SAS (r) 9.1 (TS1M3)
Licensed to LOUISIANA STATE UNIVERSITY, Site 0001407001.
NOTE: This session is executing on the z/OS V01R10M00 platform.
NOTE: Running on IBM Model 2818 Serial Number 0177A7,
IBM Model 2818 Serial Number 0177A7,
IBM Model 2818 Serial Number 0177A7.
NOTE: SAS 9.1.3 Service Pack 2
Welcome to SAS 9.1.3
SSS AAA SSS 999 I 333
S S A A S S 9 9 II 3 3
S A S 9 9 I 3
S A S 9 9 I 3
S AAAA S 9999 I 333
S A A S 9 I 3
S S A A S S 9 I 3
S S A A S S 9 0 I 0 3 3
SSS AAAAA SSS 99 0 III 0 333
Please report SAS problems to the ITS Help Desk at 225-578-3375
or by email to helpdesk@lsu.edu.
NOTE: The SASUSER library was not specified. SASUSER library will now be the same as the WORK library.
NOTE: All data sets and catalogs in the SASUSER library will be deleted at the end of the session. Use the NOWORKTERM option to
prevent their deletion.
NOTE: SAS system options specified are:
SORT=4
NOTE: 101187584 bytes were available above the line at initialization.
NOTE: 6815744 bytes were available below the line at initialization.
NOTE: 100663296 bytes were available above the line after adjustment for MEMLEAVE=524288.
NOTE: The initialization phase used 0.06 CPU seconds and 6481K.
NOTE: The address space has used a maximum of 648K below the line and 7604K above the line.
1 ********************************************************************;
2 * PROGRAM: FAD7079S *;
3 * DESCRIPTION: THIS PROGRAM LOADS THE FAD.PELL_SCHEDULE DB2 *;
4 * TABLE FROM AN EXCEL CSV INPUT FILE THAT CONTAINS *;
5 * PELL SCHEDULE DATA FROM THE DEPT OF US EDUCATION *;
6 * *;
7 * AUTHOR: DONNA EICHER/BOROVY *;
8 * DATE WRITTEN: NOVEMBER 2014 *;
9 * INPUT: FAD.PROD.FAD7079.PELLSCHD.LOAD CSV INPUT FILE *;
10 * OUTPUT: REPORT OF NEW PELL SCHEDULE ENTRIES *;
11 * ERROR REPORT *;
12 ********************************************************************;
12 The SAS System 13:45 Tuesday, February 3,
13 * CHANGED ANALYST REQ# DESCRIPTION OF CHANGE *;
14 * 11/XX/2014 BOROVY 16906 NEW *;
15 ********************************************************************;
16
17 *LIBNAME FAD DB2 AUTHID=FAD SSID=DB2;
18 *OPTIONS DB2SSID=DB2;
19
20 LIBNAME FAD DB2 AUTHID=FAD SSID=DB2T;
NOTE: Libref FAD was successfully assigned as follows:
Engine: DB2
Physical Name: DB2T
21 OPTIONS DB2SSID=DB2T ;
22
23 DATA PELLSCHD_IN_PRN_FORMAT;
24 INFILE INSFILE ;
25
26 INPUT @5 FINYR $4.
27 @10 MINEFC 7.0
28 @18 MAXEFC 7.0
29 @28 PELLAMTF 5.0
30 @36 PELLAMTQ 5.0
31 @44 PELLAMTH 5.0
32 @52 PELLAMTL 5.0 ;
33 RUN;
NOTE: The infile INSFILE is:
Dsname=BOROVY.PELL.SCHEDULE.PRN,
Unit=3390,Volume=SCR003,Disp=SHR,Blksize=6160,
Lrecl=80,Recfm=FB
NOTE: 54 records were read from the infile INSFILE.
NOTE: The data set WORK.PELLSCHD_IN_PRN_FORMAT has 54 observations and 7 variables.
NOTE: The DATA statement used 0.01 CPU seconds and 7653K.
NOTE: The address space has used a maximum of 712K below the line and 8896K above the line.
34
35 PROC PRINT DATA=PELLSCHD_IN_PRN_FORMAT ;
36
NOTE: There were 54 observations read from the data set WORK.PELLSCHD_IN_PRN_FORMAT.
NOTE: The PROCEDURE PRINT printed page 1.
NOTE: The PROCEDURE PRINT used 0.02 CPU seconds and 7924K.
NOTE: The address space has used a maximum of 712K below the line and 9144K above the line.
37 PROC SORT DATA=PELLSCHD_IN_PRN_FORMAT; BY FINYR MINEFC MAXEFC ;
38
NOTE: There were 54 observations read from the data set WORK.PELLSCHD_IN_PRN_FORMAT.
NOTE: The data set WORK.PELLSCHD_IN_PRN_FORMAT has 54 observations and 7 variables.
NOTE: The PROCEDURE SORT used 0.00 CPU seconds and 8238K.
NOTE: The address space has used a maximum of 712K below the line and 9460K above the line.
13 The SAS System 13:45 Tuesday, February 3,
39 PROC PRINT DATA=PELLSCHD_IN_PRN_FORMAT ;
40
41 *** LOAD SORTED INPUT DATA TO FAD.PELL_SCHEDULE ;
42
NOTE: There were 54 observations read from the data set WORK.PELLSCHD_IN_PRN_FORMAT.
NOTE: The PROCEDURE PRINT printed page 2.
NOTE: The PROCEDURE PRINT used 0.00 CPU seconds and 8238K.
NOTE: The address space has used a maximum of 712K below the line and 9460K above the line.
43 PROC DB2UTIL
44 DATA = PELLSCHD_IN_PRN_FORMAT
45 TABLE = FAD.PELL_SCHEDULE
46 COMMIT = 50
47 LIMIT = 1000
48 FUNCTION = INSERT;
49 MAPTO
50 FINYR = FIN_YEAR
51 MINEFC = MIN_EFC
52 MAXEFC = MIN_EFC
53 PELLAMTF = PELL_AMOUNT_F
54 PELLAMTQ = PELL_AMOUNT_Q
55 PELLAMTH = PELL_AMOUNT_H
56 PELLAMTL = PELL_AMOUNT_L ;
57
58 UPDATE;
59 RUN;
ERROR: Input map and input data do not match, procedure terminated.
+ERROR: Input map and input data do not match, procedure terminated.
+ERROR: Input map and input data do not match, procedure terminated.
NOTE: The SAS System stopped processing this step because of errors.
NOTE: The PROCEDURE DB2UTIL used 0.01 CPU seconds and 8321K.
NOTE: The address space has used a maximum of 716K below the line and 9552K above the line.
60
61
ERROR: Errors printed on page 3.
+ERROR: Errors printed on page 3.
+ERROR: Errors printed on page 3.
NOTE: The SAS session used 0.14 CPU seconds and 8321K.
NOTE: The address space has used a maximum of 716K below the line and 9552K above the line.
NOTE: SAS Institute Inc., SAS Campus Drive, Cary, NC USA 27513-2414
Are there any variables in the table FAD.PELL_SCHEDULE not mapped to a SAS variable?
well everyone, thanx for taking time to look at this issue....but i messed up, so call me embarrassed
the table as a field called MAX_EFC, in the code, i have it labeled as MIN_EFC. i've looked at this for days and just didnt see it.
again, thank you for your time.....
It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.
Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.