Import 문 및 use 문
EGL Import 및 use 문을 사용하여 코드 요소의 가시성을 펼치십시오.
import 및 use 문은
다음 상황에서 공통적으로 사용됩니다.
- 현재 패키지의 파트였던 것처럼 파트를 참조할 수 있도록 로직 파트(예: 프로그램 또는 라이브러리) 또는 데이터 파트(예: 레코드 또는 데이터 항목)를 가져오기 합니다.
- 현재 패키지의 파트였던 것처럼 이를 포함하는 파트를 참조할 수 있도록 전체 패키지를 가져오기 합니다.
- 해당 라이브러리에서 사용하는 변수 이름 또는 함수 이름에서 라이브러리 접두부를 삭제할 수 있도록 현재 패키지에 있는 라이브러리를 사용합니다.
- 현재 패키지에서 양식 그룹을 사용하여 해당 그룹의 양식에 대해 규정되지 않은 액세스를 얻으십시오.
- 프로그램이 해당 필드에 직접 액세스할 수 있도록 데이터 테이블을 사용할 수 있습니다.
- import 및 use 문을 결합하여 다른 패키지의 라이브러리에서 함수 또는 변수를 참조할 수 있습니다.
자세한 정보는 import 및 use의 내용을 참조하십시오.
암시적 가져오기 및 사용
가져오기하지 않고 EGL이 정의하는 파트를 직접 참조할 수 있으며 사용하지 않고 EGL 정의 열거 또는 시스템 라이브러리에서 함수를 직접 참조할 수 있습니다. 그러므로 해당 파트는 암시적으로 가져옴 및 사용됨으로 설명됩니다.
예를 들어,
이 암시적 사용으로 인해
라이브러리를 참조하지 않고 sysLib.writeStdOut() 시스템 함수를
호출할 수 있습니다.
writeStdOut("Progam complete.");
예제
고객 관계 관리(CRM) 패키지에서
데이터 정의 및 함수를 사용하여
외상 매출금(AR) 패키지의
고객 정보에 액세스하려고
할 수 있습니다.
패키지 com.companyb.crmpackage의
라이브러리 CustomerLib에서
함수 getCustomer()를
호출하기 위해 다음 코드를
사용할 수 있습니다.
package com.companyb.arpackage;
import com.companyb.crmpackage.*; // CustomerLib 라이브러리의 홈
program CustomerTest type BasicProgram
use CustomerLib; // 내 범위에 해당 함수 추가
function main()
getCustomer();
end
end
예제의 다음 측면이 중요합니다.
- import com.companyb.crmpackage.*; 행은 EGL이 현재 로직 파트의 범위에 전체 CRMPackage를 포함시키도록 지시합니다. 사용자가 참조하는 파트만 코드에 추가됩니다.
- use 문을 주석 처리하는 경우 CustomerLib.getCustomer()에서와 같이 라이브러리 이름을 함수 이름에 추가하지 않는 경우 프로그램을 생성할 수 없습니다.
- 이후에 CustomerTest 프로그램에서 로컬 getCustomer() 함수를 정의하는 경우 EGL이 com.companyb.crmpackage.CustomerLib에 있는 동일한 이름의 함수에 대한 환경 설정에서 해당 함수를 호출합니다. 마찬가지로, ARPackage 및 CRMPackage 모두에서 CustomerLib로 이름 지정된 라이브러리가 있는 경우 EGL이 로컬(ARPackage) 버전을 사용합니다.