/********************** COMMENTS ***********************************/ /* */ /* IF YOU RECEIVED OUTPATIENT FILES BEFORE JANUARY 2009 THEN YOU WILL */ /* NEED A DIFFERENT INPUT STATEMENT. PLEASE CONTACT ANGELA MEEKINS VIA */ /* E-MAIL MEEKINSA@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 REGCASE/HICBIC, daily date in column 266 and the link number in */ /* column 256 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 payment */ /* amount variable in column 64. This variable is present only when */ /* record count (column 278) is equal to 1. This is to help eliminate */ /* duplicate counting. */ /***********************************************************************/ /***********************************************************************/ /* */ /* Please Note: 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/outsaf98.txt'; /*reading in an un-zipped file*/ filename outin pipe 'gunzip -c /directory/outsaf98.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(drop=inc2 inc3 j); infile outin lrecl=448 missover pad; input @001 patient_id $char11. /*@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. /****************Speical 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 $char1. @064 pmt_amt 15.2 @079 tot_chrg 15.2 @094 prpay_cd $char1. @095 prpayamt 15.2 @110 actioncd $char1. @111 prstate $char2. @123 at_upin $char6. @139 op_upin $char6. @155 ot_upin $char6. @171 stus_cd $char2. @173 pps_ind $char1. @174 oprevcnt $char3. @177 center $char4. @181 cendm $char2. @183 cendd $char2. @185 cendy $char4. @189 hcpcs $char5. @194 mf1 $char2. @196 mf2 $char2. @198 unit 8. @206 rate 15.2 @221 charge 15.2 @236 pay 15.2 @251 ded $char1. @252 year $char4. @256 link_num $char10. /*use daily date and link number to identify a claim for each patient*/ @266 daily_dtm $char2. /*use daily date and link number to identify a claim for each patient*/ @268 daily_dtd $char2. @270 daily_dty $char4. @274 tot_seg $char2. @276 seg_num $char2. @278 rec_count $char3. @281 ptb_ded 15.2 @296 ptb_coin 15.2 @311 blddedam 15.2 @; inc2=326; array ndx_cd(10) $ 5 dgn_cd1-dgn_cd10; do j = 1 to 10; input @inc2 ndx_cd(j) $char5. @; inc2 = inc2 + 5; end; inc3=376; array prcdr_cd(6) $ 4 pr_cd1-pr_cd6; array prcdrdtm(6) $ 2 prdtm1-prdtm6; array prcdrdtd(6) $ 2 prdtd1-prdtd6; array prcdrdty(6) $ 4 prdty1-prdty6; do J = 1 to 6; input @inc3 prcdr_cd(j) $char4. @inc3+4 prcdrdtm(j) $char2. @inc3+6 prcdrdtd(j) $char2. @inc3+8 prcdrdty(j) $char4. @; inc3 = inc3 + 12; end; input; label patient_id = 'Patient ID' /*regcase = 'SEER Registry Case Number'*/ /*HICBIC = 'Non Cancer Patient ID'*/ year = 'Claim Year' bic = '8 - BIC' state_cd = '10 - State code' cnty_cd = '36 - County code' bene_zip = '43 - Zip code (Special Permission Required)' ms_cd = '47 - Medicare Status code' daily_dty = '20 - Year of Daily processing' daily_dtm = '20 - Month of Daily processing' daily_dtd = '20 - Day of Daily processing' from_dty = '11 - Year of From date' from_dtm = '11 - Month of From date' from_dtd = '11 - Day of From date' thru_dty = '12 - Year of Thru date' thru_dtm = '12 - Month of Thru date' thru_dtd = '12 - Day of Thru date' fi_num = '40 - Ficarr id number' provider = '19 - Provider number' query_cd = '18 - Claim query' fac_type = '28 - Claim facility type' typesrvc = '29 - Classification type code' freq_cd = '30 - Claim frequency code' pmt_amt = '56 - Claim payment amount' tot_chrg = '91 - Claim total charge amt.' prpay_cd = '58 - Primary payer code' prpayamt = '57 - Primary payer payment amt.' actioncd = '60 - Claim action' at_upin = '64 - Claim attending physician UPIN' stus_cd = '87 - Patient discharge status code' ot_upin = '69 - Other physician number' op_upin = '74 - Operating physician number' oprevcnt = '24 - Revenue center code count' center = '159 - Revenue center code' mf1 = '167 - Initial modifier code' mf2 = '168 - Second modifier code' hcpcs = '166 - Hcpcs code' unit = '179 - Revenue center unit count' rate = '180 - Revenue center rate amount' charge = '192 - Revenue center total amount' ded = '194 - Deductible coinsurance code' dgn_cd1 = '140 - ICD-9-CM code #1' dgn_cd2 = '140 - ICD-9-CM code #2' dgn_cd3 = '140 - ICD-9-CM code #3' dgn_cd4 = '140 - ICD-9-CM code #4' dgn_cd5 = '140 - ICD-9-CM code #5' dgn_cd6 = '140 - ICD-9-CM code #6' dgn_cd7 = '140 - ICD-9-CM code #7' dgn_cd8 = '140 - ICD-9-CM code #8' dgn_cd9 = '140 - ICD-9-CM code #9' dgn_cd10 = '140 - ICD-9-CM code #10' prdty1 = '145 - Year procedure performed #1' prdtm1 = '145 - Month procedure performed #1' prdtd1 = '145 - Day procedure performed #1' pr_cd1 = '143 - Procedure codes #1' prdty2 = '145 - Year procedure performed #2' prdtm2 = '145 - Month procedure performed #2' prdtd2 = '145 - Day procedure performed #2' pr_cd2 = '143 - Procedure codes #2' prdty3 = '145 - Year procedure performed #3' prdtm3 = '145 - Month procedure performed #3' prdtd3 = '145 - Day procedure performed #3' pr_cd3 = '143 - Procedure codes #3' prdty4 = '145 - Year procedure performed #4' prdtm4 = '145 - Month procedure performed #4' prdtd4 = '145 - Day procedure performed #4' pr_cd4 = '143 - Procedure codes #4' prdty5 = '145 - Year procedure performed #5' prdtm5 = '145 - Month procedure performed #5' prdtd5 = '145 - Day procedure performed #5' pr_cd5 = '143 - Procedure codes #5' prdty6 = '145 - Year procedure performed #6' prdtm6 = '145 - Month procedure performed #6' prdtd6 = '145 - Day procedure performed #6' pr_cd6 = '143 - Procedure codes #6' ptb_ded = '109 - Part B deductible amount' ptb_coin = '110 - Part B coinsurance amount' rec_count = 'Record Count for Claim' blddedam = '108 - NCH Beneficiary Blood Deductible Liability Amount' cendm = '160 - Revenue Center Month' cendd = '160 - Revenue Center Day' cendy = '160 - Revenue Center Year' clm_type = '5 - NCH Claim Type Code' link_num = '21 - NCH Segment Link Number' nopay_cd = '54 - Claim Medicare Non Payment Reason Code' pay = '191 - Revenue Center Payment Amount' pps_ind = '90 - Claim PPS Indicator Code' prstate = '62 - NCH Provider State Code' seg_num = '23 - Claim Segment Number' tot_seg = '22 - Claim Total Segment Count' ; run; proc contents data=outpat position; run;