Odoo Connect 시작 및 EMR 동기화
Bahmni는 환자 데이터 동기화를 지원하고 EMR에서 처리된 주문의 견적을 Odoo에 생성합니다. 이 Atomfeed 동기화를 활성화하도록 odoo-connect라는 서비스를 Bahmni Docker Compose 명세에 포함했습니다.
1단계: 마커 정보 백업
제품, 고객 및 미결제 정보를 이미 마이그레이션했으므로 Atomfeed 마커는 마이그레이션을 시작한 위치로 설정해야 합니다. OpenERP 또는 Odoo 10 데이터베이스에서 아래 쿼리를 실행하여 markers 테이블 항목의 덤프 출력을 가져옵니다.
OpenERP 7:
pg_dump -U openerp --column-inserts --data-only --table=markers openerp
Odoo 10:
pg_dump -U odoo --column-inserts --data-only --table=markers odoo
출력의 INSERT 문을 텍스트 파일로 복사합니다. URL의 호스트 IP와 포트를 openmrs:8080으로 바꿉니다. 예: http://openmrs:8080/openmrs/ws/atomfeed/drug/108
2단계: Odoo 데이터베이스에서 Atomfeed 스키마 초기화
Odoo 데이터베이스가 새 데이터베이스이므로 markers 테이블이 존재하지 않습니다. 아래 단계에 따라 Atomfeed 서비스를 시작하고 필요한 스키마를 초기화합니다.
- .env 파일의 OPENMRS_ATOMFEED_USER, OPENMRS_ATOMFEED_USER 변수를 업데이트하고 값을 dummy로 설정합니다. 동기화가 처음 위치부터 시작하지 않게 하려면 이 작업이 중요합니다. odoo-connect 서비스를 시작합니다. docker compose up -d odoo-connect. odoo-connect 서비스가 시작되어 Liquibase 마이그레이션을 실행할 때까지 기다립니다. Liquibase 마이그레이션이 완료될 때까지 로그를 확인합니다. 이제 서비스를 중지합니다. docker compose stop odoo-connect. Atomfeed 자격 증명을 이전 값으로 복원합니다.
3단계: 마커 정보 삽입
- odoodb 컨테이너에 접속하여 Odoo 데이터베이스에 연결합니다. 1단계에서 가져온 INSERT 쿼리를 실행합니다. select * from markers;를 실행하여 모든 마커 정보가 채워졌는지 확인합니다.
4단계: 동기화 시작
이제 odoo-connect 서비스를 다시 시작하면 추가된 위치부터 동기화가 재개됩니다.
docker compose --profile odoo up -d이제 동기화가 재개되고 EMR의 새 주문이 이전과 같이 Odoo에 동기화됩니다.
Bahmni Wiki · CC BY-SA 4.0