# PIT3000 의약품정보/API·이미지 흐름 Reverse Engineering Notes PIT3000/PM2000V6에서 확인한 **의약품 상세정보, 식별 이미지, 약품 이미지, pictogram** 관련 SQL/API 흐름을 정리한 저장소입니다. ## 핵심 결론 1. 화면/인쇄에 쓰이는 약품 상세정보는 로컬 DB(`PM_DRUG`, `PM_IMAGE`)와 외부 health.kr URL을 병행합니다. 2. `DRUGCODE`에서 `DIK_CODE`, `SUNG_CODE`를 조회합니다. 3. `SUNG_CODE`는 **성분코드**입니다. 보험코드가 아닙니다. 4. 식별/약품 이미지는 `PM_IMAGE..DrugImg`, `C:\Dik20\Data\Drugimg2005.MDB`, `C:\Dik2004\Data\Drugimg.MDB` 계열에서 확인됩니다. 5. health.kr URL은 상세 페이지/확대 이미지 페이지를 여는 보조 경로로 확인됩니다. ## 확인된 외부 URL ```text https://health.kr/searchDrug/result_drug_simple.asp?drug_cd={DIK_CODE} https://www.health.kr/drug_info/sb/zoom.asp?drug_code={DIK_CODE}&print_front={PRINT_FRONT}&print_back={PRINT_BACK} https://www.pharm.or.kr/search/zoom.asp?drug_code={DIK_CODE} ``` ## 확인된 주요 SQL ```sql -- DRUGCODE → DIK_CODE / SUNG_CODE SELECT ISNULL(DIK_CODE, '') AS DIK_CODE, SUNG_CODE FROM PM_DRUG..CD_GOODS WHERE DRUGCODE = :drugcode; -- 약품 상세정보 SELECT A.ETCNAME, A.SPLNAME, C.SUNG_ENM, B.PRINT_TYPE, A.EFFCTNAME, B.CHARACT, B.SAVE_MEDI, B.INDIC_MEDI, B.EFFECT, B.ADR, B.INTERACTION, B.GEN_MEDI FROM PM_DRUG..CD_ETCGOODS AS A INNER JOIN PM_DRUG..CD_MC AS B ON A.DRUGCODE = B.DRUGCODE LEFT JOIN PM_DRUG..CD_SUNG AS C ON A.SUNG_CODE = C.SUNG_CODE WHERE A.DRUGCODE = :drugcode; -- SQL Server 이미지 테이블 SELECT DIK_CODE, DRUG_IMG, EXPR1 FROM PM_IMAGE..DrugImg WHERE DIK_CODE = :dik_code ORDER BY EXPR1 DESC; -- Access MDB 계열 이미지 SELECT DRUGCODE, FILENAME, FILELENGTH, DRUGIMG, SEQ FROM DRUGIMG WHERE DRUGCODE = :drugcode ORDER BY SEQ; -- pictogram SELECT TOP 3 PIC_CODE FROM PM_DRUG..CD_PICTOGRAM_SUB WHERE DIK_CODE = :dik_code ORDER BY SEQ; SELECT TOP 1 PIC_IMG FROM PM_DRUG..CD_PICTOGRAM WHERE PIC_CODE = :pic_code AND PIC_LAG = '0' AND IMG_CODE = '1'; ``` ## 예시 JSON `examples/drug-info-response.example.json` 참고. ## 원본 분석 산출물 - `data/teoul_drug_image_api_PM_PharmCharge.txt` PM_PharmCharge에서 추출한 문자열/SQL/API URL 히트 요약. ## 주의 - 이 저장소는 API 계약/흐름 문서화용입니다. 외부 사이트를 과도하게 호출하지 마세요. - 실제 환자/처방 데이터는 포함하지 않습니다. - 이미지 BLOB은 예시에서는 URL/base64 placeholder로만 둡니다.