Import 문 및 use 문

EGL Importuse 문을 사용하여 코드 요소의 가시성을 펼치십시오.

importuse 문은 다음 상황에서 공통적으로 사용됩니다.
  • 현재 패키지의 파트였던 것처럼 파트를 참조할 수 있도록 로직 파트(예: 프로그램 또는 라이브러리) 또는 데이터 파트(예: 레코드 또는 데이터 항목)를 가져오기 합니다.
  • 현재 패키지의 파트였던 것처럼 이를 포함하는 파트를 참조할 수 있도록 전체 패키지를 가져오기 합니다.
  • 해당 라이브러리에서 사용하는 변수 이름 또는 함수 이름에서 라이브러리 접두부를 삭제할 수 있도록 현재 패키지에 있는 라이브러리를 사용합니다.
  • 현재 패키지에서 양식 그룹을 사용하여 해당 그룹의 양식에 대해 규정되지 않은 액세스를 얻으십시오.
  • 프로그램이 해당 필드에 직접 액세스할 수 있도록 데이터 테이블을 사용할 수 있습니다.
  • importuse 문을 결합하여 다른 패키지의 라이브러리에서 함수 또는 변수를 참조할 수 있습니다.

자세한 정보는 importuse의 내용을 참조하십시오.

암시적 가져오기 및 사용

가져오기하지 않고 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에 있는 동일한 이름의 함수에 대한 환경 설정에서 해당 함수를 호출합니다. 마찬가지로, ARPackageCRMPackage 모두에서 CustomerLib로 이름 지정된 라이브러리가 있는 경우 EGL이 로컬(ARPackage) 버전을 사용합니다.