%PDF-1.6
%
790 0 obj
<>/Metadata 823 0 R/Outlines 180 0 R/Pages 780 0 R/StructTreeRoot 187 0 R/Type/Catalog>>
endobj
823 0 obj
<>stream
The task of importing delimited text files can often seem like a black box process. If the resulting data set contains errors, how do you know? Some errors are easy to spot, such as unspecified extra fields showing up in the data set. Other errors, like data ending up in the wrong field, can be more difficult to identify, especially when they occur well into the resulting data set. Fortunately, every correctly formatted, delimited text file complies with one of two formats, each containing its own text pattern. If every cell of the delimited text file matches the text pattern, then the file is said to be in that format. The text-qualified format is the more complex of the two and the one that this paper concentrates on. The non-text-qualified format is very simple and receives only minor mentioning. This paper introduces a SAS® macro that uses SAS PRX functions to verify that a delimited text file is in text-qualified format. If the macro reports that it is, then the file can be imported without error. <br/><br/>Paul Genovesi, State of Washington/DSHS/RDA
Session 2605
en
jeff.foxx@sas.com
The task of importing delimited text files can often seem like a black box process. If the resulting data set contains errors, how do you know? Some errors are easy to spot, such as unspecified extra fields showing up in the data set. Other errors, like data ending up in the wrong field, can be more difficult to identify, especially when they occur well into the resulting data set. Fortunately, every correctly formatted, delimited text file complies with one of two formats, each containing its own text pattern. If every cell of the delimited text file matches the text pattern, then the file is said to be in that format. The text-qualified format is the more complex of the two and the one that this paper concentrates on. The non-text-qualified format is very simple and receives only minor mentioning. This paper introduces a SAS® macro that uses SAS PRX functions to verify that a delimited text file is in text-qualified format. If the macro reports that it is, then the file can be imported without error. <br/><br/>Paul Genovesi, State of Washington/DSHS/RDA
Adobe Acrobat 15.0
2018-03-28T13:26:37.000-04:00
2018-03-28T13:26:37.000-04:00
2018-03-28T13:26:18.000-04:00
2018-04-03T15:46:48.171-04:00
0263f05fc4d81eb213c999eb7d40ca9a8254b0f8
913128
application/pdf
2018-04-03T15:46:48.378-04:00
A SAS® Macro That Uses PRX Functions to Verify Delimited Text File Formatting
uuid:e4370759-c6c7-4a2d-bb6f-b3206c02a96f
uuid:6d2016cb-0cd0-4be7-b468-ba16b6ce7083
thirdparty
Acrobat Web Capture 15.0
support:sgf-papers
year:2018
software:BASE
support:sgf-papers/session-type/breakout
support:sgf-papers/skill-level/advanced
support:sgf-papers/topic/data-management/data-quality
support:customer-roles/programmer
endstream
endobj
180 0 obj
<>
endobj
780 0 obj
<>
endobj
187 0 obj
<>
endobj
188 0 obj
<>>>
endobj
189 0 obj
<>
endobj
190 0 obj
<>
endobj
191 0 obj
<>
endobj
192 0 obj
<><>779 0 R]/P 384 0 R/Pg 16 0 R/S/Link>>
endobj
193 0 obj
<>778 0 R]/P 385 0 R/Pg 16 0 R/S/Link>>
endobj
194 0 obj
<>777 0 R]/P 385 0 R/Pg 16 0 R/S/Link>>
endobj
195 0 obj
<>776 0 R]/P 406 0 R/Pg 23 0 R/S/Link>>
endobj
196 0 obj
<>775 0 R]/P 410 0 R/Pg 23 0 R/S/Link>>
endobj
197 0 obj
<>774 0 R]/P 471 0 R/Pg 65 0 R/S/Link>>
endobj
198 0 obj
<>773 0 R]/P 476 0 R/Pg 65 0 R/S/Link>>
endobj
199 0 obj
<>772 0 R]/P 481 0 R/Pg 65 0 R/S/Link>>
endobj
200 0 obj
<>771 0 R]/P 486 0 R/Pg 69 0 R/S/Link>>
endobj
201 0 obj
<>770 0 R]/P 489 0 R/Pg 69 0 R/S/Link>>
endobj
202 0 obj
<>769 0 R]/P 492 0 R/Pg 69 0 R/S/Link>>
endobj
203 0 obj
<>768 0 R]/P 208 0 R/Pg 1 0 R/S/Link>>
endobj
204 0 obj
<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>]/P 205 0 R/Pg 84 0 R/S/Article>>
endobj
205 0 obj
<>
endobj
84 0 obj
<>/Font<>/ProcSet[/PDF/Text]>>/Rotate 0/StructParents 34/Type/Page>>
endobj
85 0 obj
<>stream
HWn8柕hU.E%wRU*dS|JbvJ+aIn{sg3n`7b! MH0S[\)Íj{@~0`q 7orOiN~upڎu1dmضݶ\(Z|D<猋4P@[P:eɭܚiZU-5*
nq_hdcT,uP.ޱ91
on_P{@ 1A*TU@ͫ뇠fH@۽ƻXz6-E3۞ njGu3hR 8
Ì)"h<0Bf.+MPBBWP_:XYej劆D
F)\nYҪc˫V~N/.!?VemdII 8L)r?f Q5t)L>hjxBMLU\!1yԂ㛈
m?|A˵ tإo?*9B=\cƒl+ f7]Wϼ{w
4}ôGb*/{wqnw kVN^#5~+dYcM.1dM71*>g./J(/'
XS,WЖ2o`d:qpŌK9Һhh$!717EʰǞ
yo`2xam`/TC-^!OzقD|L ('$$W1fDAgTkBՂaDr?aԌV74*^Fu[{i˯}Rd"
2PAbvL`zoj&`nTG-zJkxEd/=\z6sW 0
endstream
endobj
147 0 obj
<>
endobj
148 0 obj
(wXm\na!)
endobj
785 0 obj
<>
endobj
177 0 obj
<>
endobj
178 0 obj
<>
endobj
179 0 obj
[/ICCBased 121 0 R]
endobj
121 0 obj
<>stream
Hb``$WR~|@T#2S/`M.(*(%8H8c-
fԉd9@6_IjH9(3=DR1%?)U!$5X3/9 ($5j%V*'&*r" (,!!0b;CҢ2(ɘ I8/
endstream
endobj
88 0 obj
<>/Font<>/ProcSet[/PDF/Text]>>/Rotate 0/StructParents 35/Type/Page>>
endobj
90 0 obj
<>/Font<>/ProcSet[/PDF/Text]>>/Rotate 0/StructParents 36/Type/Page>>
endobj
92 0 obj
<>/Font<>/ProcSet[/PDF/Text]>>/Rotate 0/StructParents 37/Type/Page>>
endobj
94 0 obj
<>/Font<>/ProcSet[/PDF/Text]>>/Rotate 0/StructParents 38/Type/Page>>
endobj
96 0 obj
<>/Font<>/ProcSet[/PDF/Text]>>/Rotate 0/StructParents 39/Type/Page>>
endobj
97 0 obj
<>stream
HV[sP}(S8`ИK[PLmEd2bGCIj:]PKݳ93{h
cV#czS CpKc
BA0Uٮlυr P`0P"v1tCۡ' iɅY'?
*z>O|OvG2T>2SK=\?Q?@wQ&wA]vOgSAcA"1'RD"Ъw3]hu@CJ:~q@wA$˃\|
}DK2;!!6%(Hh\P
0"% ˼s(6GϹf4ɚSB
foaW;ю8_Cs kh.NȋuȮ:[
mzK83ab(JzK1S%MG!Dx:OQ݈c1Ldr5V^$Qly5k$JFyP]55JuFJÁ396;\'(GӕUG>П[;'ln0S {d4Wtkt?9!frN֮ꗋĘv^*KWy&,)m͈59\Y)mЫoV-[!9lbڵw!5ݨ6PWڗ1awC`ۺڬń4K}3WܸnUZs-ݻ w
endstream
endobj
95 0 obj
<>stream
HWR8~NЄ M{IH{@7y[N|XAV Jv Row]6]̎qD ?)I0!ܘ].%4 - _
#8`~\RWWd'D"l˱p1_P U P8DZJʫ=1e_iiNjr!P7#ӱ#O։cm
A
-R ۂ4m αɀQEEiHm{}ᾥоC]2f6[:~H6ܿ*YJqĒ3P.q;!t0Cj[rB
e݂=۰4r4Ũ*43 ` ,Зt!}U"W$ ;?>%GCjr`:O%$5^Wnkgs Z[4 ,Oyy6(A
<{:B$)i(\jCH}Mr\H_Ѐj<Ӵ _m -laJ$tr%;J'F8lΈ8+> r*RGzO>>VJJTJVK?_cX;Sv#;ؒ6]*0>Ugir22"P4iP8#/)r0_xwv_N0{R]hb(t 6^>({AxknpODLFx(>1. O${wsTeZG^m4U:OQtD{biIlX@ <6A(lX6ԅ==Ӌ6+QDp21^Sx3<.XPXoknZ`
e^,5
i@fYJVBVgT0R5K]W#zɫ*{ꋵ vg9i@.+4rpg:+n. +
j
endstream
endobj
93 0 obj
<>stream
HWo:GSG~@&Ӟ"IyJlj;@J۴)}9Zq?'uXëWnOkOY#/\(ڞ|_fS!4FuI':^ ;"Q
]0YΎ]
f{TȲpOqV*$gRČ%=̬EqĤ~y7OLeM=G-78r?8h\]7`xby9vf'N5 ]0y6x{.iH3N3h~e~:a,uW-gB5oMiI ˳",k6cy+J4k}d6Ƃkq`b g!i@,n4ltMߤvedT[pk.qgwgIz;WjY
5E%I}&F5!ɳ?Ã4JōBna8جajxexuuqu)P9)5ha+h,#`3ǽ5JZp!ً&ANWdg˗gbuQ<ڱems>qŽS
'S$Gh̪J_Dл|vYM5V Ν j`\!2\--.*jP} gW8HuЮЫUd2W~~iV,&]Ϩ_s{O Xw
endstream
endobj
91 0 obj
<>stream
HWmo8Z. (z@KN4qOILmJ[8N
R33~P1MU/yT?F+`8٨>Ukhp0 `
)A^0t]7CGyEW qp>䚥6,^D[
1ii_dbu5V%hئraн}(>8CWD=<