首先对这个问题感兴趣,所以搜索了下相关资料,贴出来给点思路,以便楼下讨论。
- filename readdoc1 dde
- "winword|c:\n0321\sapa00321.doc!FirstListOfTitles"
- notab;
- filename readdoc2 dde
- "winword|c:\n0321\sapa00321.doc!SecondListOfTitles"
- notab;
- data sasuser.titles1;
- infile readdoc1 end=eof truncover;
- input @1 title $char200.;
- run;
- data sasuser.titles2;
- infile readdoc2 end=eof truncover;
- input @1 title $char200.;
- run;
- data sasuser.Titles_In_SAP;
- set sasuser.titles1
- sasuser.titles2;
- if substr(title,1,2) in('14','16');
- first_space=index(title,' ');
- title_number=substr(title,1,first_space-1);
- title=substr(title,first_space+1);
- title=tranwrd(title,'Data Listing','Listing');
- title=tranwrd(title,'Subject ','Subjects');
- run;
- proc sort data=sasuser.Titles_In_SAP out=Titles_In_SAP;
- by title;
- run;
- data sasuser.Titles_In_Docs;
- set a00321_doc_titles;
- path="r:\products\efz\a00321\stat\analysis\info\deliverables\20011202
- - draft1\"||substr(filename,1,3)||'doc\';
- title=tranwrd(title,'Populatio','Population');
- title=tranwrd(title,'Data Listing','Listing');
- title=tranwrd(title,'Subject ','Subjects');
- run;
- proc sort data=sasuser.Titles_In_Docs out=Titles_In_Docs;
- by title;
- run;
- data SAPonly
- Docsonly
- both;
- merge Titles_In_SAP(in=inSAP)
- Titles_In_Docs(in=inDocs);
- by title;
- if inSAP & inDocs then output both;
- else if inSAP & ^ inDocs then output SAPonly;
- else if ^inSAP & inDocs then output Docsonly;
- run;
复制代码