BBahmni 한국어 매뉴얼검색
한국어 번역 완료
한국어English

Groovy 스크립트

배경

Groovy 스크립트는 특정 이벤트가 발생할 때 실행할 수 있는 확장 스크립트로 사용됩니다.

이벤트의 예는 다음과 같습니다.

  • Display Control 표시, Observation 저장.

Groovy 스크립트에서 무엇을 설정해야 하나요?

모든 Groovy 스크립트에서 다음 항목을 설정할 수 있습니다.

  • 이벤트 발생 시 실행할 스크립트, 스크립트에서 구현할 내용.

Groovy 스크립트 유형

설정할 수 있는 Groovy 스크립트 유형은 다음과 같습니다.

  • 표준 확장, 사용자 지정 확장.

표준 확장

  • 표준 확장 파일의 이름은 변경할 수 없습니다. 명시적으로 설정할 필요가 없고 이름이 표준화되어 있기 때문에 표준 확장이라고 부릅니다. 스크립트 구현만 사용자 지정할 수 있습니다. 파일이 있으면 해당 이벤트 발생 시 기본적으로 실행됩니다. 이러한 확장에는 BahmniObsValueCalcuator와 TreatmentRegimenExtension이 있습니다.
파일 이름위치 및 예시 파일참고
BahmniObsValueCalculator.groovy파일 위치: /var/www/bahmni_config/openmrs/obscalculator/; BahmniObsValueCalculator.groovy 예시 파일Consultation 저장 버튼을 클릭할 때 실행됩니다. ObsValueCalculator를 구현해야 하며 요구사항에 맞게 run() 메서드를 재정의합니다.
TreatmentRegimenExtension.groovy파일 위치: /var/www/bahmni_config/openmrs/treatmentRegimenExtension/; TreatmentRegimenExtension.groovy 예시 파일‘Chronic Treatment’ Control을 표시하기 전에 실행됩니다. BaseTableExtension<TreatmentRegimen>을 확장해야 하며 요구사항에 맞게 update() 메서드를 재정의합니다.

사용자 지정 확장

  • 사용자 지정 파일과 구현을 사용할 수 있는 Groovy 확장입니다. Obs To Obs Flowsheet 같은 Display Control은 사용자 지정 확장을 유연하게 지원합니다. 이 스크립트는 확장이 설정된 Display Control을 표시할 때 실행됩니다.

Obs To Obs Flowsheet

설정위치 및 예시참고
ObsToObsFlowSheet Control의 configuration 절에서 "type" 키 값으로 Groovy 확장 이름을 추가합니다.모든 사용자 지정 Groovy 파일은 /var/www/bahmni_config/openmrs/flowSheetExtension/ 아래에 있어야 합니다. 예시: https://github.com/Bahmni/endtb-config/blob/master/openmrs/flowsheetExtension/DstExtension.groovyBaseTableExtension<PivotTable>을 확장하고 요구사항에 맞게 update() 메서드를 재정의해야 합니다.

개발자 팁

개발 중 Groovy 스크립트를 디버깅하는 한 가지 방법은 임시 파일에 내용을 기록하는 것입니다. 예를 들어 BahmniObsValueCalculator.groovy에서 아래 코드를 사용합니다. groovy_debug.txt에는 쓰기 권한이 있어야 합니다. 배포 전 디버깅 구문과 임시 파일을 반드시 제거하세요.

def file1 = new File(OpenmrsUtil.getApplicationDataDirectory() + "obscalculator/groovy_debug.txt")
file1.append 'debugging statement\n'
원문 정보

Bahmni Wiki · CC BY-SA 4.0

원문 보기 ↗