/* Published: 12/31/2012 */ /************************** COMMENTS *******************************/ /* THIS INPUT STATMENT IS FOR THE 2012 SEER-MEDICARE LINKAGE. */ /* IF YOU RECEIVED OUTPATIENT FILES BEFORE DECEMBER 2012 THEN YOU WILL */ /* NEED A DIFFERENT INPUT STATEMENT. PLEASE CONTACT IMS VIA E-MAIL AT */ /* SEER-MEDICARE@IMSWEB.COM AND AN INPUT STATEMENT WILL BE SENT TO YOU */ /***********************************************************************/ /* */ /* For cancer files, Patient Identifier is @01 REGCASE $char10. */ /* For non-cancer files, Patient Identifier is @01 HICBIC $char11. */ /* */ /***********************************************************************/ /*************** IMPORTANT PROGRAMING NOTES ************************/ /* TO IDENTIFY CLAIMS PER PATIENT */ /* */ /* The Patient ID, daily process date (column 436), and link number */ /* (column 426) should be used to identify all the records for each */ /* claim per patient. All are needed to identify a claim. */ /***********************************************************************/ /***********************************************************************/ /* TO CALCULATE COSTS PER PATIENT */ /* */ /* When calculating costs per patient you will need to use the claim */ /* payment amount variable (column 65). The value from the record */ /* count (column 448) equal to 1 should be used. This will eliminate */ /* duplicate counting from other records. */ /***********************************************************************/ /***********************************************************************/ /* If you are using PC SAS to read in these files you will have to */ /* un-zip the files first and use the un-zipped filename statement, */ /* rather than using the zipped files and statement. */ /***********************************************************************/ *filename outin '/directory/outsaf10.txt'; /* reading in an un-zipped file */ *filename outin pipe 'gunzip -c /directory/outsaf10.txt.gz'; /* reading in a zipped file */ *filename outin pipe 'gunzip -c /directory/outsaf*.txt.gz'; /* using wildcard to match multiple files */ options nocenter validvarname=upcase; data outpat; infile outin lrecl=1131 missover pad; input @001 patient_id $char11. /* Patient ID (for either Cancer or Non-Cancer Patients) */ /*@001 REGCASE $char10.*/ /* ID for Cancer Patients */ /*@001 HICBIC $char11.*/ /* ID for Non Cancer Patients */ @012 bic $char2. @014 state_cd $char2. @016 cnty_cd $char3. @019 bene_zip $char9. /****************Special Permission Required***************/ @028 ms_cd $char2. @030 clm_type $char2. @032 from_dtm $char2. @034 from_dtd $char2. @036 from_dty $char4. @040 thru_dtm $char2. @042 thru_dtd $char2. @044 thru_dty $char4. @048 fi_num $char5. @053 provider $char6. @059 query_cd $char1. @060 fac_type $char1. @061 typesrvc $char1. @062 freq_cd $char1. @063 nopay_cd $char2. /* $char1. in 2010 Linkage */ @065 pmt_amt 15.2 @080 tot_chrg 15.2 @095 prpay_cd $char1. @096 prpayamt 15.2 @111 actioncd $char1. @112 prvstate $char2. /* named prstate in 2010 Linkage */ @114 orgnpinm $char10. @124 at_upin $char6. @130 at_npi $char10. @140 op_upin $char6. @146 op_npi $char10. @156 ot_upin $char6. @162 ot_npi $char10. @172 stus_cd $char2. @174 pps_ind $char1. @175 tot_line $char3. /* new in 2012 Linkage */ @178 seg_line $char2. /* new in 2012 Linkage */ @180 mcopdsw $char1. /* new in 2012 Linkage */ @181 authrztn $char18. /* new in 2012 Linkage */ @199 e1dgnscd $char7. /* new in 2012 Linkage */ @206 srvcfac $char9. /* new in 2012 Linkage */ @215 oprevcnt $char2. /* $char3. in 2010 Linkage */ @217 opsrvtyp $char1. /* new in 2012 Linkage */ @218 op_rfrl $char1. /* new in 2012 Linkage */ @219 center $char4. @223 cendm $char2. @225 cendd $char2. @227 cendy $char4. @231 revan1 $char5. /* new in 2012 Linkage */ @236 revhipps $char5. /* new in 2012 Linkage */ @241 hcpcs $char5. @246 mf1 $char2. @248 mf2 $char2. @250 mf3 $char2. /* new in 2012 Linkage */ @252 pmtmthd $char2. /* new in 2012 Linkage */ @254 dscntind $char1. /* new in 2012 Linkage */ @255 packgind $char1. /* new in 2012 Linkage */ @256 pricing $char2. /* new in 2012 Linkage */ @258 qtyqlfr $char2. /* new in 2012 Linkage */ @260 ndcqty 15.3 /* new in 2012 Linkage */ @275 unit 8. @283 rate 15.2 @298 revdctbl 15.2 /* new in 2012 Linkage */ @313 wageadj 15.2 /* new in 2012 Linkage */ @328 rev_msp1 15.2 /* new in 2012 Linkage */ @343 rprvdpmt 15.2 /* new in 2012 Linkage */ @358 ptntresp 15.2 /* new in 2012 Linkage */ @373 charge 15.2 @388 pay 15.2 @403 revncvr 15.2 /* new in 2012 Linkage */ @418 ded $char1. @419 rstusind $char2. /* new in 2012 Linkage */ @421 dup_chk $char1. /* new in 2012 Linkage */ @422 year $char4. @426 link_num $char10. /*use daily date and link number to identify a claim for each patient*/ @436 daily_dtm $char2. /*use daily date and link number to identify a claim for each patient*/ @438 daily_dtd $char2. @440 daily_dty $char4. @444 tot_seg $char2. @446 seg_num $char2. @448 rec_count $char3. @451 ptb_ded 15.2 @466 ptb_coin 15.2 @481 blddedam 15.2 @496 prvdrpmt 15.2 /* new in 2012 Linkage */ @511 bldfrnsh 3. /* new in 2012 Linkage */ @514 blddedpt 3. /* new in 2012 Linkage */ @517 trantype $char1. /* new in 2012 Linkage */ @518 editind1 $char1. /* new in 2012 Linkage */ @519 editcd1 $char4. /* new in 2012 Linkage */ @; array mcoind(2) $ mcoind1 -mcoind2; array mconum(2) $ mconum1 -mconum2; array mcoptn(2) $ mcoptn1 -mcoptn2; array mcoedty(2) $ mcoedty1-mcoedty2; array mcoedtm(2) $ mcoedtm1-mcoedtm2; array mcoedtd(2) $ mcoedtd1-mcoedtd2; array mcotdty(2) $ mcotdty1-mcotdty2; array mcotdtm(2) $ mcotdtm1-mcotdtm2; array mcotdtd(2) $ mcotdtd1-mcotdtd2; inc = 523; do j = 1 to 2; input @inc+0 mcoind(j) $char1. /* new in 2012 Linkage */ @inc+1 mconum(j) $char5. /* new in 2012 Linkage */ @inc+6 mcoptn(j) $char1. /* new in 2012 Linkage */ @inc+7 mcoedty(j) $char4. /* new in 2012 Linkage */ @inc+11 mcoedtm(j) $char2. /* new in 2012 Linkage */ @inc+13 mcoedtd(j) $char2. /* new in 2012 Linkage */ @inc+15 mcotdty(j) $char4. /* new in 2012 Linkage */ @inc+19 mcotdtm(j) $char2. /* new in 2012 Linkage */ @inc+21 mcotdtd(j) $char2. /* new in 2012 Linkage */ @; inc=inc+23; end; input @569 (dgn_cd1-dgn_cd25) ($char7.) /* $char5. and only 10 codes in 2010 Linkage */ @744 (edgnsd1-edgnsd6) ($char7.) /* new in 2012 Linkage */ @; array prcdr_cd(13) $ prcdr_cd1-prcdr_cd13; /* only 6 codes in 2010 Linkage */ array prcdrdtm(13) $ prcdrdtm1-prcdrdtm13; array prcdrdtd(13) $ prcdrdtd1-prcdrdtd13; array prcdrdty(13) $ prcdrdty1-prcdrdty13; inc = 786; do j = 1 to 13; input @inc+0 prcdr_cd(j) $char7. /* $char4. and only 5 codes in 2010 Linkage */ @inc+7 prcdrdtm(j) $char2. /* only 6 codes in 2010 Linkage */ @inc+9 prcdrdtd(j) $char2. /* only 6 codes in 2010 Linkage */ @inc+11 prcdrdty(j) $char4. /* only 6 codes in 2010 Linkage */ @; inc=inc+15; end; input @981 (rlt_cond1-rlt_cond5) ($char2.) /* new in 2012 Linkage */ @; array ocrnc_cd(14) $ ocrnc_cd1-ocrnc_cd14; array ocrncdty(14) $ ocrncdty1-ocrncdty14; array ocrncdtm(14) $ ocrncdtm1-ocrncdtm14; array ocrncdtd(14) $ ocrncdtd1-ocrncdtd14; inc = 991; do j = 1 to 14; input @inc+0 ocrnc_cd(j) $char2. /* new in 2012 Linkage */ @inc+2 ocrncdty(j) $char4. /* new in 2012 Linkage */ @inc+6 ocrncdtm(j) $char2. /* new in 2012 Linkage */ @inc+8 ocrncdtd(j) $char2. /* new in 2012 Linkage */ @; inc=inc+10; end; input; drop j inc; label patient_id = 'Patient ID' /* regcase = 'SEER Registry Case Number - Cancer Patients' */ /* hicbic = 'Patient ID for the Non Cancer Patients' */ bic = '12 - BIC' state_cd = '14 - State code' cnty_cd = '42 - County code' bene_zip = '49 - Zip code (Special Permission Required)' ms_cd = '53 - Medicare Status code' clm_type = '7 - NCH Claim Type Code' from_dtm = '15 - Month of Claim From date' from_dtd = '15 - Day of Claim From date' from_dty = '15 - Year of Claim From date' thru_dtm = '16 - Month of Claim Thru date' thru_dtd = '16 - Day of Claim Thru date' thru_dty = '16 - Year of Claim Thru date' fi_num = '46 - Ficarr id number' provider = '23 - Provider number' query_cd = '22 - Claim query code' fac_type = '34 - Claim facility type' typesrvc = '35 - Classification type code' freq_cd = '36 - Claim frequency code' nopay_cd = '62 - Claim Medicare Non Payment Reason Code' pmt_amt = '64 - Claim payment amount' tot_chrg = '103 - Claim total charge amount' prpay_cd = '66 - Primary payer code' prpayamt = '65 - Primary payer payment amount' actioncd = '68 - FI Claim action code' prvstate = '70 - NCH Provider State Code' orgnpinm = '71 - Organization NPI Number' at_upin = '73 - Claim Attending Physician UPIN' at_npi = '74 - Claim Attending Physician NPI' op_upin = '79 - Claim Operating Physician UPIN' op_npi = '80 - Claim Operating Physician NPI' ot_upin = '85 - Claim Other Physician UPIN' ot_npi = '86 - Claim Other Physician NPI' stus_cd = '98 - Patient discharge status code' pps_ind = '102 - Claim PPS Indicator Code' tot_line = '28 - Claim Total Line Count' seg_line = '29 - Claim Segment Line Count' mcopdsw = '92 - Claim MCO Paid Switch' authrztn = '93 - Claim Treatment Authorization Number' e1dgnscd = '101 - Claim 1st Diagnosis E Code' srvcfac = '108 - Claim Service Facility Zip Code' oprevcnt = '124 - Outpatient Revenue Center Code Count' opsrvtyp = '127 - Claim Outpatient Service Type Code' op_rfrl = '128 - Claim Outpatient Referral Code' center = '199 - Revenue Center Code' cendm = '200 - Revenue Center Month' cendd = '200 - Revenue Center Day' cendy = '200 - Revenue Center Year' revan1 = '201 - Revenue Center 1st ANSI Code' revhipps = '205 - Revenue Center APC/HIPPS' hcpcs = '206 - HCPCS Code' mf1 = '207 - Initial modifier code' mf2 = '208 - Second modifier code' mf3 = '209 - Third modifier code' pmtmthd = '212 - Payment Method Indicator Code' dscntind = '213 - Revenue Center Discount Indicator Code' packgind = '214 - Revenue Center Packaging Indicator Code' pricing = '215 - Revenue Center Pricing Indicator Code' qtyqlfr = '218 - Revenue Center NDC Quantity Qualifier Code' ndcqty = '219 - Revenue Center NDC Quantity' unit = '220 - Revenue Center unit count' rate = '221 - Revenue Center rate amount' revdctbl = '223 - Revenue Center cash deductible amount' wageadj = '224 - Coinsurance/Wage Adjusted Coinsurance' rev_msp1 = '226 - 1st Medicare Secondary Payer Paid Amount' rprvdpmt = '228 - Revenue Center Provider Payment Amount' ptntresp = '230 - Patient Responsibility Payment Amount' charge = '232 - Revenue Center Total Amount' pay = '231 - Revenue Center Payment Amount' revncvr = '233 - Non-Covered Charge Amount' ded = '234 - Deductible Coinsurance Code' rstusind = '236 - Revenue Center Status Indicator Code' dup_chk = '237 - Duplicate Claim Check Indicator Code' year = 'Claim Year' link_num = '25 - Segment Link Number' daily_dty = '24 - Year of Daily claim processing' daily_dtm = '24 - Month of Daily claim processing' daily_dtd = '24 - Day of Daily claim processing' tot_seg = '26 - Claim Total Segment Count' seg_num = '27 - Claim Segment Number' rec_count = 'Claim record count' ptb_ded = '130 - Part B deductible liability' ptb_coin = '131 - Part B coinsurance liability' blddedam = '129 - NCH Beneficiary Blood Deductible Liability Amount' prvdrpmt = '134 - Claim Outpatient Provider Payment Amount' bldfrnsh = '136 - NCH Blood Pints Furnished Quantity' blddedpt = '139 - NCH Blood Deductible Pints Quantity' trantype = '140 - Claim Outpatient Transaction Type Code' editind1 = '151 - NCH Edit Trailer Indicator Code' editcd1 = '152 - NCH Edit Code' mcoind1 = '158 - MCO Trailer Indicator Code 1' mcoind2 = '158 - MCO Trailer Indicator Code 2' mconum1 = '159 - MCO Contract Number 1' mconum2 = '159 - MCO Contract Number 2' mcoptn1 = '160 - MCO Option Code 1' mcoptn2 = '160 - MCO Option Code 2' mcoedty1 = '161 - MCO Period Effective Year 1' mcoedtm1 = '161 - MCO Period Effective Month 1' mcoedtd1 = '161 - MCO Period Effective Day 1' mcoedty2 = '161 - MCO Period Effective Year 2' mcoedtm2 = '161 - MCO Period Effective Month 2' mcoedtd2 = '161 - MCO Period Effective Day 2' mcotdty1 = '162 - MCO Period Termination Year 1' mcotdtm1 = '162 - MCO Period Termination Month 1' mcotdtd1 = '162 - MCO Period Termination Day 1' mcotdty2 = '162 - MCO Period Termination Year 2' mcotdtm2 = '162 - MCO Period Termination Month 2' mcotdtd2 = '162 - MCO Period Termination Day 2' dgn_cd1 = '171 - ICD-9-CM code #1' dgn_cd2 = '171 - ICD-9-CM code #2' dgn_cd3 = '171 - ICD-9-CM code #3' dgn_cd4 = '171 - ICD-9-CM code #4' dgn_cd5 = '171 - ICD-9-CM code #5' dgn_cd6 = '171 - ICD-9-CM code #6' dgn_cd7 = '171 - ICD-9-CM code #7' dgn_cd8 = '171 - ICD-9-CM code #8' dgn_cd9 = '171 - ICD-9-CM code #9' dgn_cd10 = '171 - ICD-9-CM code #10' dgn_cd11 = '171 - ICD-9-CM code #11' dgn_cd12 = '171 - ICD-9-CM code #12' dgn_cd13 = '171 - ICD-9-CM code #13' dgn_cd14 = '171 - ICD-9-CM code #14' dgn_cd15 = '171 - ICD-9-CM code #15' dgn_cd16 = '171 - ICD-9-CM code #16' dgn_cd17 = '171 - ICD-9-CM code #17' dgn_cd18 = '171 - ICD-9-CM code #18' dgn_cd19 = '171 - ICD-9-CM code #19' dgn_cd20 = '171 - ICD-9-CM code #20' dgn_cd21 = '171 - ICD-9-CM code #21' dgn_cd22 = '171 - ICD-9-CM code #22' dgn_cd23 = '171 - ICD-9-CM code #23' dgn_cd24 = '171 - ICD-9-CM code #24' dgn_cd25 = '171 - ICD-9-CM code #25' edgnsd1 = '175 - Claim Diagnosis E Code 1' edgnsd2 = '175 - Claim Diagnosis E Code 2' edgnsd3 = '175 - Claim Diagnosis E Code 3' edgnsd4 = '175 - Claim Diagnosis E Code 4' edgnsd5 = '175 - Claim Diagnosis E Code 5' edgnsd6 = '175 - Claim Diagnosis E Code 6' prcdr_cd1 = '179 - Procedure code #1' prcdrdtm1 = '180 - Month procedure performed #1' prcdrdtd1 = '180 - Day procedure performed #1' prcdrdty1 = '180 - Year procedure performed #1' prcdr_cd2 = '179 - Procedure code #2' prcdrdtm2 = '180 - Month procedure performed #2' prcdrdtd2 = '180 - Day procedure performed #2' prcdrdty2 = '180 - Year procedure performed #2' prcdr_cd3 = '179 - Procedure code #3' prcdrdtm3 = '180 - Month procedure performed #3' prcdrdtd3 = '180 - Day procedure performed #3' prcdrdty3 = '180 - Year procedure performed #3' prcdr_cd4 = '179 - Procedure code #4' prcdrdtm4 = '180 - Month procedure performed #4' prcdrdtd4 = '180 - Day procedure performed #4' prcdrdty4 = '180 - Year procedure performed #4' prcdr_cd5 = '179 - Procedure code #5' prcdrdtm5 = '180 - Month procedure performed #5' prcdrdtd5 = '180 - Day procedure performed #5' prcdrdty5 = '180 - Year procedure performed #5' prcdr_cd6 = '179 - Procedure code #6' prcdrdtm6 = '180 - Month procedure performed #6' prcdrdtd6 = '180 - Day procedure performed #6' prcdrdty6 = '180 - Year procedure performed #6' rlt_cond1 = '183 - Claim related condition code 1' rlt_cond2 = '183 - Claim related condition code 2' rlt_cond3 = '183 - Claim related condition code 3' rlt_cond4 = '183 - Claim related condition code 4' rlt_cond5 = '183 - Claim related condition code 5' ocrnc_cd1 = '186 - Claim related occurrence code 1' ocrnc_cd2 = '186 - Claim related occurrence code 2' ocrnc_cd3 = '186 - Claim related occurrence code 3' ocrnc_cd4 = '186 - Claim related occurrence code 4' ocrnc_cd5 = '186 - Claim related occurrence code 5' ocrnc_cd6 = '186 - Claim related occurrence code 6' ocrnc_cd7 = '186 - Claim related occurrence code 7' ocrnc_cd8 = '186 - Claim related occurrence code 8' ocrnc_cd9 = '186 - Claim related occurrence code 9' ocrnc_cd10 = '186 - Claim related occurrence code 10' ocrnc_cd11 = '186 - Claim related occurrence code 11' ocrnc_cd12 = '186 - Claim related occurrence code 12' ocrnc_cd13 = '186 - Claim related occurrence code 13' ocrnc_cd14 = '186 - Claim related occurrence code 14' ocrncdty1 = '187 - Claim related occurrence year 1' ocrncdtm1 = '187 - Claim related occurrence month 1' ocrncdtd1 = '187 - Claim related occurrence day 1' ocrncdty2 = '187 - Claim related occurrence year 2' ocrncdtm2 = '187 - Claim related occurrence month 2' ocrncdtd2 = '187 - Claim related occurrence day 2' ocrncdty3 = '187 - Claim related occurrence year 3' ocrncdtm3 = '187 - Claim related occurrence month 3' ocrncdtd3 = '187 - Claim related occurrence day 3' ocrncdty4 = '187 - Claim related occurrence year 4' ocrncdtm4 = '187 - Claim related occurrence month 4' ocrncdtd4 = '187 - Claim related occurrence day 4' ocrncdty5 = '187 - Claim related occurrence year 5' ocrncdtm5 = '187 - Claim related occurrence month 5' ocrncdtd5 = '187 - Claim related occurrence day 5' ocrncdty6 = '187 - Claim related occurrence year 6' ocrncdtm6 = '187 - Claim related occurrence month 6' ocrncdtd6 = '187 - Claim related occurrence day 6' ocrncdty7 = '187 - Claim related occurrence year 7' ocrncdtm7 = '187 - Claim related occurrence month 7' ocrncdtd7 = '187 - Claim related occurrence day 7' ocrncdty8 = '187 - Claim related occurrence year 8' ocrncdtm8 = '187 - Claim related occurrence month 8' ocrncdtd8 = '187 - Claim related occurrence day 8' ocrncdty9 = '187 - Claim related occurrence year 9' ocrncdtm9 = '187 - Claim related occurrence month 9' ocrncdtd9 = '187 - Claim related occurrence day 9' ocrncdty10 = '187 - Claim related occurrence year 10' ocrncdtm10 = '187 - Claim related occurrence month 10' ocrncdtd10 = '187 - Claim related occurrence day 10' ocrncdty11 = '187 - Claim related occurrence year 11' ocrncdtm11 = '187 - Claim related occurrence month 11' ocrncdtd11 = '187 - Claim related occurrence day 11' ocrncdty12 = '187 - Claim related occurrence year 12' ocrncdtm12 = '187 - Claim related occurrence month 12' ocrncdtd12 = '187 - Claim related occurrence day 12' ocrncdty13 = '187 - Claim related occurrence year 13' ocrncdtm13 = '187 - Claim related occurrence month 13' ocrncdtd13 = '187 - Claim related occurrence day 13' ocrncdty14 = '187 - Claim related occurrence year 14' ocrncdtm14 = '187 - Claim related occurrence month 14' ocrncdtd14 = '187 - Claim related occurrence day 14' ; run; proc contents data=outpat position; run;