Maximize Your Potential

BackEnd/HIS System 9

[병원 HIS] 수술조회 화면의 엑셀 출력 기능 확인

오늘은 병원 HIS(의료정보시스템)의 수술조회 화면을 점검하며, 수술감점자 리스트의 엑셀 출력 기능과 관련된 버튼 이벤트 및 데이터 처리 스크립트를 분석했습니다.이 화면은 수술과 관련된 특정 환자 리스트를 조회하고, 필요한 데이터를 엑셀로 내려받는 기능을 제공합니다.✅ 엑셀 출력 기능 분석수술감점자 대상 리스트를 엑셀로 추출하는 버튼 클릭 시 다음과 같은 자바스크립트 함수가 실행됩니다.function button2_onclick(objBtn, eClickEventInfo) { gdf_exportExcel(dsrd_oppaterfile_excel, "수술위험감점자 대상 리스트", "수술위험감점자 대상 리스트", false, "", "user", false);}사용자 정의 데이터셋(dsrd_oppate..

BackEnd/HIS System 2025.07.24

[병원 HIS] 진료과 인증의사 조회 조건 수정

안녕하세요. 오늘은 병원 전산팀에서 수행한 HIS 시스템의 진료과 인증의사 관련 SQL 쿼리 수정 작업을 기록으로 남겨보려 합니다. 이번 수정은 수탁 접수 시 조회되는 인증의사 리스트가 일부 진료과에서 비정상적으로 출력되는 이슈에 대한 대응이었습니다.🧩 문제 배경수탁검사 접수 이후 인증의사 콤보박스에서 특정 진료과 소속 의사가 보이지 않거나 불필요한 의사가 노출되는 현상이 확인되었습니다.이는 주로 특정 청구 불가능 진료과 코드 또는 과거에 종료된 부서 정보가 쿼리 조건에 포함되어 발생하는 문제였습니다.🔧 주요 수정 내용📌 1. SQL 쿼리 수정 (가명파일: diagTestQuery.xml)기존 쿼리 ID: getILB0111목적: 인증의사 목록에 청구 가능 진료과만 포함되도록 조건 필터 추가주석 참..

BackEnd/HIS System 2025.07.24

[병원 HIS] 직원 감염노출보고서 전송 오류 — 변수명 하나 때문에 생긴 큰 문제

안녕하세요!이번 글에서는 병원 전산이나 공공기관 연계 업무를 하다 보면 꼭 한 번은 겪는 ‘변수명 오류로 인한 데이터 누락’ 사례를 공유하려고 합니다.특히 법정 보고서나 외부 기관 연계 모듈을 다룰 때는 정말 작은 변수명 하나가 전체 데이터 흐름을 멈출 수 있기 때문에 꼭 참고해두시면 좋겠습니다.문제 상황병원에서는 직원이 감염 위험에 노출되면, 감염노출보고서를 작성해서 감염관리실(줄여서 감염실)로 전송해야 합니다.이 과정은 보건법, 산업안전보건법 등 관련 법령에 따라 필수로 보고가 이루어져야 하는 중요한 단계입니다.그런데 최근에 노출 일자 데이터가 감염실 쪽 DB에 계속 NULL로 찍혀 있는 문제가 발생했습니다.원인은 생각보다 단순했지만, 재조사와 보고서 재등록으로 번거로운 작업이 필요했죠.원인 분석문제..

BackEnd/HIS System 2025.07.22

[병원 HIS] 국가명(국적명) 공통코드 가나다순 정렬 적용하기

[HIS 유지보수] 국가명(국적명) 공통코드 가나다순 정렬 적용하기병원 HIS 개발/유지보수를 하다 보면 자주 들어오는 요청 중 하나가 드롭다운 코드 정렬입니다.특히 국가명(국적명) 같이 선택지가 많은 필드는 가나다순이나 알파벳순으로 깔끔하게 보여줘야 실무자들이 실수를 줄일 수 있습니다.이번 글에서는 국가명 공통코드 정렬 요청이 들어왔을 때 처리 방법을 간단히 공유합니다.✅ 요청 배경기존 화면 : 국가명이 코드 테이블 등록순(dispseq)으로만 나와서 찾기 불편.요청 : 사용자들이 나라를 쉽게 찾을 수 있도록 국가명을 가나다/ABC순으로 정렬해 달라는 요구.적용 화면 : 예) 전염병 신고서, 외국인 환자 등록 등 국적 선택 필드가 있는 모든 화면.✅ 처리 방법 요약1️⃣ 공통 코드 호출 파라미터 수정우..

BackEnd/HIS System 2025.07.16

[병원 HIS] 건강증진센터 진료내역 수정요청 쿼리 정리

건강증진센터 진료내역 수정요청 쿼리 정리이번에는 건강증진센터 진료내역 수정 요청 업무를 진행하면서 기록해 둔 쿼리를 공유합니다. 데이터 흐름을 이해하고 문제를 해결하기 위해 각 테이블별로 어떤 조건과 로직으로 접근했는지 정리해두면 추후 유사 사례 처리 시 도움이 됩니다. 이번 케이스에서는 진료내역 기본 테이블과 실행 내역 테이블, 그리고 상태 테이블까지 세 단계로 나누어 조건을 검증했습니다. 기본 키는 pid, prcdd, CALCSOCORD이며 각 테이블 간 데이터 연계를 통해 누락되거나 불필요한 정보가 남아있지 않은지 꼼꼼히 확인하는 것이 핵심입니다.1️⃣ 기본 진료내역 조회가장 먼저 ast_aeahaacpt 테이블을 기준으로 진료내역을 확인합니다. 이 테이블은 환자별로 등록된 기본 진료내역이 기록되..

BackEnd/HIS System 2025.07.15

[병원 HIS] CVR(이상결과보고) 기본설정 하드코딩 → 함수 호출로 개선하기

[병원 HIS] CVR(이상결과보고) 기본설정 하드코딩 → 함수 호출로 개선하기✅ 작업 배경영상의학과 CVR(이상결과보고) 알림 로직에서기존에는 부서별 전송번호, 기본설정시간, 전송타입이 쿼리 안에 하드코딩 되어 있었습니다.🔍 문제점부서 담당자나 전송 기준이 바뀔 때마다 SQL을 다시 수정하고 배포해야 함관리 포인트가 분산되어 실수 발생 가능성 높음이번 작업에서는 이 부분을 표준 함수 호출로 통일해 하드코딩을 제거했습니다.✅ 개선 핵심: 표준 함수 구조COM.FN_ZB_GETUSERCDNM부서별 전송번호, 기준시간, 전송타입 등을 테이블에서 조회EMR.FN_MM_GETTELNO사용자 휴대폰 번호를 사용자 테이블에서 조회 ✅ 예시Before (하드코딩)sendtelno = '01012345678' unc..

BackEnd/HIS System 2025.07.14

[병원 HIS] 재고관리 출력버튼 추가 개발 기록

[병원 HIS] 재고관리 출력버튼 추가 개발 기록안녕하세요. 이번 포스팅에서는 병원 물류관리 시스템의 항목별 재고관리 화면에 출력 버튼 추가 작업을 진행한 과정을 정리합니다.출력 요청이 들어온 배경부터 적용한 함수 코드 일부까지 간략히 기록했습니다.📌 1. 개발 배경요청: 특정 재고관리 화면에 출력 버튼이 없어 직원단위 출력 참고용으로 추가 요청위치: 식재관리 서비스관련 화면: 항목별 재고관리참고사항: 동일한 출력이 필요한 다른 화면(등급관리/보고서관리)에도 동일한 방식으로 적용 예정📌 2. 주요 작업 내용✅ 1) 출력 버튼 기능 추가화면의 데이터셋을 DOM 구조로 변환 → XML 생성 → 출력 미리보기 전달rpt_setNodeListToDOM 함수로 데이터셋 노드리스트 작성✅ 2) 출력 함수 예시f..

BackEnd/HIS System 2025.07.11

[병원 HIS] 신장실당직 프로그램 Free Text 추가

신장실 당직알림말 수정기능을 추가하는 작업을 했습니다.당직알림을 하드코딩으로 아예 고정 시켜놨는데, 사용자코드를 통해서 사용자가 직접 알림말을 수정하면 그대로 반영되는 방식입니다.처음에는 삽질 을 했지만 데이터셋 바인딩구조를 충분히이해하고 기존에 사용자코드 설정 함수를 잘 설정하니 바로 반영되었습니다.📌 1) 데이터셋 및 바인딩 구조Invisible Objectsds_cond : 조건값 데이터셋 (ex. 당직날짜, 부서, 사용자코드)ds_UC0070, ds_UC0071 : 사용자 코드 조회용Bind Itemitem1 : day_searchCal.value → ds_cond.dutyymitem2 : Static00 (Static) expr → ds_UC0070.cdomitem3 : Static03 (St..

BackEnd/HIS System 2025.07.04

[병원 HIS] 외래채혈 혈액학검체 조회 화면 가접수 및 접수 통합목록추가

병원 정보시스템(HIS)을 유지보수하다 보면 화면, 쿼리, XML Mapper가 하나로 딱 맞물려야 데이터가 제대로 출력됩니다. 이번에는 외래채혈실에서 사용하는 혈액학검체 조회 프로그램을 유지보수하면서 실제로 겪었던 시행착오와 그 과정을 통해 다시 다잡은 핵심 포인트를 기록해 보았습니다.제가 맡았던 화면은 외래채혈실에서 환자별로 혈액학검체 이력을 조회할 수 있는 프로그램입니다. 화면은 XPLATFORM으로 되어 있고, 환자번호와 기간, 그리고 ‘검체구분’을 선택할 수 있는 ComboBox가 Dataset과 연동되어 있습니다. 선택된 옵션은 Oracle 쿼리로 전달되어 spcflag라는 코드값에 따라 전수, 채혈, 가검수 등으로 분기 처리되도록 되어 있었습니다.✅ 구조 요약화면(XPLATFORM)Combo..

BackEnd/HIS System 2025.06.30