# -*- coding: utf-8 -*- import sys import io sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8', errors='replace') sys.path.insert(0, 'c:\\Users\\청춘약국\\source\\pharmacy-pos-qr-system\\backend') from db.dbsetup import get_db_session from sqlalchemy import text session = get_db_session('PM_DRUG') print('=== CD_ITEM_UNIT_MEMBER 테이블 구조 ===\n') result = session.execute(text(""" SELECT COLUMN_NAME, DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'CD_ITEM_UNIT_MEMBER' ORDER BY ORDINAL_POSITION """)) for row in result: print(f' {row.COLUMN_NAME}: {row.DATA_TYPE}') print('\n=== 관계 확인: 안텔민킹 ===\n') # CD_GOODS print('1. CD_GOODS:') result = session.execute(text(""" SELECT DrugCode, GoodsName, BARCODE FROM CD_GOODS WHERE DrugCode = 'LB000003157' """)) for row in result: print(f' DrugCode: {row.DrugCode}') print(f' GoodsName: {row.GoodsName}') print(f' BARCODE: [{row.BARCODE}]') # CD_SALEGOODS print('\n2. CD_SALEGOODS:') result = session.execute(text(""" SELECT DrugCode, GoodsName, BARCODE FROM CD_SALEGOODS WHERE DrugCode = 'LB000003157' """)) for row in result: print(f' DrugCode: {row.DrugCode}') print(f' BARCODE: [{row.BARCODE}]') # CD_ITEM_UNIT_MEMBER print('\n3. CD_ITEM_UNIT_MEMBER:') result = session.execute(text(""" SELECT DRUGCODE, CD_CD_UNIT, CD_CD_BARCODE, CHANGE_DATE FROM CD_ITEM_UNIT_MEMBER WHERE DRUGCODE = 'LB000003157' ORDER BY SN DESC """)) for row in result: print(f' DRUGCODE: {row.DRUGCODE} | UNIT: {row.CD_CD_UNIT} | BARCODE: {row.CD_CD_BARCODE} | DATE: {row.CHANGE_DATE}') # CD_SALEGOODS.BARCODE 와 CD_ITEM_UNIT_MEMBER.CD_CD_BARCODE 비교 print('\n=== 다른 제품으로 관계 확인 (안텔민) ===\n') result = session.execute(text(""" SELECT g.DrugCode, g.GoodsName, s.BARCODE as SALE_BARCODE, u.CD_CD_BARCODE as UNIT_BARCODE, u.CD_CD_UNIT FROM CD_GOODS g LEFT JOIN CD_SALEGOODS s ON g.DrugCode = s.DrugCode LEFT JOIN CD_ITEM_UNIT_MEMBER u ON g.DrugCode = u.DRUGCODE WHERE g.GoodsName LIKE N'%안텔민%' ORDER BY g.DrugCode, u.SN DESC """)) current_drug = None for row in result: if row.DrugCode != current_drug: print(f'\n{row.DrugCode}: {row.GoodsName}') print(f' CD_SALEGOODS.BARCODE: {row.SALE_BARCODE}') current_drug = row.DrugCode print(f' └ CD_ITEM_UNIT_MEMBER: {row.UNIT_BARCODE} (UNIT: {row.CD_CD_UNIT})') session.close()