나는 이것이 닭고기 및 계란 종류의 문제임을 발견했다. 나는 기존의 SCL 항목을 사용하여 SCL 항목으로 일반 텍스트를 가져 오는 것이 가능하다는 것을 알았습니다. ...
카탈로그 항목에서 SCL 코드를 읽고 쓰는 설정이 있습니다. 텍스트 파일. 나는 개정 통제 목적 (CVS)을 위해 이것을 사용한다.
CVS는 주로 일반 텍스트 코드로 사용되지만 바이너리 파일도 처리 할 수 있습니다. 따라서 필자는 일반 텍스트를 다른 SCL 항목으로 가져올 수있는 SCL 항목 (FILE2SCL)을 만들었습니다. 그런 다음이 SCL 항목을 PROC CPORT'ed하여 이진 파일에 저장하고 CVS에 체크인했습니다.
이 방법은, 난 항상 프로그래밍 CPORT 파일에서이 SCL 항목을 가져 오기 및 기타 SCL 항목에 일반 텍스트에서 SCL 코드를 가져 오려면이 SCL 항목을 사용할 수 있습니다. 나중에 PROC BUILD를 사용하여 SCL 항목을 컴파일 할 수 있습니다.
내 FILE2SCL 항목은 다음과 같습니다
INIT:
/***************************************************************/
/* */
/* Call this SCL like this: */
/* %let srcFile=D:\work\dummy.scl; */
/* %let dstEntry=WORK.NEW.DUMMY.SCL; */
/* proc display catalog=work.cat.file2scl.scl; */
/* run; */
/* */
/***************************************************************/
length Rc 8;
length theFile $ 200;
length theEntry $ 128;
theFile=symget('SRCFILE'); * Source file *;
theEntry=symget('DSTENTRY'); * Destination entry *;
* Assign filename *;
Rc=filename('temp',theFile);
* Include external file into preview buffer *;
Rc=PREVIEW('INCLUDE','temp');
* Save contents of preview buffer to SCL entry *;
Rc=PREVIEW('SAVE',theEntry);
Rc=PREVIEW('CLEAR');
Rc=PREVIEW('CLOSE');
* Deassign filename *;
Rc=filename('temp','');
return;
주석이 그것을 사용하는 방법을 설명 : 당신의 SCL 소스 코드 파일의 경로를 포함, "SRCFILE의"SAS 매크로 변수를 설정 시작 , 그리고 다른 매크로 변수 인 "dstEntry"는 SCL 엔트리를 넣을 곳의 진입 경로를 포함합니다. 그런 다음 PROC는 FILE2SCL 항목을 표시하고 SCL 소스 코드를 지정된 SCL 항목으로 가져옵니다. 그런 다음 PROC BUILD를 사용하여 나중에 컴파일 할 수 있습니다.