当前位置: 首页 > article >正文

医疗数据报表无数据问题完整排查复盘

一、场景与问题说明本次问题发生在医疗数据中台病案相关报表开发中具体场景为超声门诊科室相关的业务报表在展示检查项目名称、执行医生这两个关键字段时完全无数据展示前端页面一片空白客户直接反馈该报表无法正常使用影响业务查看与核对。简单概括问题超声门诊报表 → 检查项目名称、执行医生字段无数据 → 前端展示为空 → 业务不可用。二、第一步先验证问题是否真实存在接到客户反馈后我第一时间登录数据平台按照客户提供的筛选条件院区、科室、时间范围、门诊类型逐一复现查询。复现结果- 报表确实无任何数据返回- 与客户描述完全一致- 排除客户操作失误、筛选条件错误等非技术问题确认问题真实存在需要正式排查。三、第二步排查报表取数逻辑我先查看了这张报表底层的 SQL 逻辑梳理出完整链路1. 报表展示字段 → 来源于 标签结果表2. 标签结果表 → 来源于 业务标签加工表biz_medical_record_xxx3. 标签加工表 → 关联 ODS 层原始业务表也就是说报表没数据 → 大概率是标签表里关键字段为空 → 再往上就是 ODS 层源头没数据。四、第三步排查标签表逻辑与字段值定位到标签加工表后我做了两步关键检查1. 检查 JOIN 关联是否有问题逐行核对表之间的关联字段患者 ID、病案 ID、科室 ID、院区 ID 等。确认所有关联都是 LEFT JOIN没有因为 INNER JOIN 被过滤也没有关联键写错、关联表缺失的情况。→ 排除 SQL 关联逻辑错误。2. 直接查询标签表字段值手动执行查询查看检查项目名称、执行医生这两个字段select check_item_name, doctor_name from biz.biz_medical_record_xxx where dept_name超声门诊结果非常明确→ 这两个字段在标签表里全部为 NULL。字段本身为空报表自然展示不出来这是直接原因。五、第四步向上溯源到 ODS 层原始表既然标签表字段为空我继续向上追溯查看标签加工的字段映射确认- 检查项目名称 ← 取自 ODS 层某张门诊业务表- 执行医生 ← 同样取自该 ODS 层原始表于是我直接查询 ODS 层原始表select check_item_name, doctor_name from ods.xxx_ultrasound_record where dept_name超声门诊;结果→ ODS 层原始表中这两个字段本身就没有数据全部为空。根源定位不是下游加工错了是底层 ODS 层源头就没有同步到这部分数据。六、第五步联系上游同事协同排查ODS 层无数据属于上游采集同步问题我立刻联系上游同事把- 表名- 科室超声门诊- 缺失字段检查项目名称、执行医生- 我的排查过程全部同步过去请他们查业务库原始数据。同事反馈1. 上游业务系统中这部分数据确实没有同步到数仓2. 暂时无法补数、重新同步3. 给了一个临时建议试试关联医嘱表看能不能从医嘱表带出项目名称和医生信息七、第六步尝试关联医嘱表方案失败我按照同事建议把医嘱表 ods_hbos_diagnosis_treatment_dtc_doctor_order 加入关联重新查询select a.check_item_name, b.doctor_order_name, b.doctor_namefrom biz.biz_medical_record_xxx aleft join ods_hbos_diagnosis_treatment_dtc_doctor_order bon a.patient_id b.patient_id and a.dept_id b.dept_id执行结果- 能关联上的记录极少- 超声门诊对应的检查项目名称、执行医生依然为空→ 关联医嘱表方案无效此路不通。八、第七步请教师哥拿到最终解决方案实在卡壳我带着完整排查过程找师哥- 报表展示超声门诊检查项目名称、执行医生为空- 报表数据 ← 标签表- 标签表 ← ODS 层- ODS 层 ← 本身无数据- 上游无法补数- 医嘱表关联无效师哥听完给出明确方案不要死磕原来那两个空字段换一张同业务含义的表用另一张表的检查项目名称、执行医师字段做关联替换掉原来为空的字段只要业务口径一致就行。九、第八步修改报表逻辑问题彻底解决我按照师哥的思路修改了报表 SQL1. 去掉原来取自 ODS 层、一直为空的 check_item_name 、 doctor_name2. 关联师哥指定的另一张业务明细附表3. 用新表中的 item_name 、 operator_name 替换原有字段4. 保留原有筛选条件、展示格式不变修改后重新执行查询- 超声门诊数据正常展示- 检查项目名称完整- 执行医生字段完整- 前端报表不再空白问题彻底闭环。十、完整总结1. 问题本质超声门诊报表无数据是因为ODS 层原始表未同步检查项目名称、执行医生字段导致下游标签表字段为空最终报表无数据。2. 排查链路客户反馈 → 复现问题 → 查报表逻辑 → 查标签表 → 查 ODS 层 → 找上游同事 → 试医嘱表无效 → 请教师哥 → 替换字段解决。3. 关键收获- 报表无数据优先按“报表→标签层→ODS 层”逐层溯源- 字段为空不一定是 SQL 写错很可能是源头没数据- 上游无法补数时业务等效字段替换是最高效方案- 遇到卡点及时请教能避免在错误方向浪费大量时间4. 后续注意后续做报表开发前先提前校验 ODS 层字段是否完整避免开发完成后才发现源头无数据

相关文章:

医疗数据报表无数据问题完整排查复盘

一、场景与问题说明本次问题发生在医疗数据中台病案相关报表开发中,具体场景为:超声门诊科室相关的业务报表,在展示检查项目名称、执行医生这两个关键字段时,完全无数据展示,前端页面一片空白,客户直接反馈…...

大模型这么强,为啥还用YOLO和NLP?

你有没有想过一个问题 GPT-4o能看图说话,Claude能分析图表,Gemini能识别视频里的每一帧。大模型的视觉能力已经强到离谱了,NLP更是不在话下。 那为什么工业界还在用YOLO做目标检测?还在用BERT做文本分类? 是不懂&#…...

【GUI-Agent】阶跃星辰 GUI-MCP 解读---()---HITL(Human In The Loop)鬃

插件化架构 v3 版本最大的变化是引入了模块化插件系统。此前版本中集成在核心包里的原生功能,现在被拆分成独立的插件。 每个插件都是一个独立的 Composer 包,包含 Swift 和 Kotlin 代码、权限清单以及原生依赖。开发者只需安装实际用到的插件&#xff0…...

第九章:Vite API 参考手册

第九章:Vite API 参考手册 9.1 核心 API createServer 创建 Vite 开发服务器 import { createServer } from viteconst server await createServer({configFile: false,root: __dirname,server: { port: 3000 } })await server.listen() console.log(服务器启动在,…...

汽车质量体系_1

从逻辑关系看,ISO9000是最底层的通用质量管理框架,定义了质量管理的基本术语和原则,适用于所有组织。IATF16949在ISO9001的基础上,针对汽车行业的特殊性,提出了更具体的质量管理要求,覆盖从设计、生产到服务…...

营销自动化数据驱动 - 多源数据 OLAP 架构演进们

1. 流图:数据的河流 如果把传统的堆叠面积图想象成一块块整齐堆叠的积木,那么流图就像一条蜿蜒流淌的河流,河道的宽窄变化自然流畅,波峰波谷过渡平滑。 它特别适合展示多个类别数据随时间的变化趋势,尤其是当你想强调整…...

C#/.NET/.NET Core优秀项目和框架2026年3月简报

前言 公众号每月定期推广和分享的C#/.NET/.NET Core优秀项目和框架(每周至少会推荐两个优秀的项目和框架当然节假日除外),公众号推文中有项目和框架的详细介绍、功能特点、使用方式以及部分功能截图等(打不开或者打开GitHub很慢的…...

30分钟掌握OpenClaw:千问3.5-9B新手训练营

30分钟掌握OpenClaw:千问3.5-9B新手训练营 1. 为什么选择OpenClaw千问3.5-9B组合 去年我在尝试自动化处理日常工作报告时,发现市面上的RPA工具要么太笨重,要么需要复杂的编程知识。直到遇到OpenClaw这个开源框架,配合千问3.5-9B…...

三菱PLC搭配雅马哈四轴机械手在线检测收料案例解析:融合CAD电气图纸、CClink与串口通讯...

三菱plc搭配四轴雅马哈机械手在线检测收料案例程序。 (包涵CAD电气图纸,plc程序,人机界面,机器人程序,BOM表)程序中应用到CClink通讯,232串口通讯,数据采集伺服定位控制。这项目有点…...

Linux内核中的网络协议栈详解

Linux内核中的网络协议栈详解 引言 网络协议栈是Linux内核中负责处理网络通信的核心组件,它实现了从物理层到应用层的完整网络协议,为应用程序提供了可靠的网络通信服务。Linux内核的网络协议栈支持多种协议,包括TCP/IP、UDP、ICMP等&#xf…...

分享一个网络智能运维系统

项目简介 网络智能运维系统是一款面向网络设备的一体化智能运维管理平台,旨在帮助企业 IT 运维团队高效、自动化地完成网络设备的日常巡检、配置备份、批量操作及定时任务调度等核心工作。系统支持多品牌设备(华为、H3C、思科、锐捷、Juniper、MikroTik …...

深度排查:Hyper-V 已关但 VirtualBox 仍报错的完整解决方案

一、先确认核心状态:是否真的完全关闭了 Hyper-V 1. 用命令验证 Hyper-V 状态 以管理员身份打开终端,执行以下命令,确认所有相关服务都已禁用: bcdedit /enum | findstr hypervisorlaunchtype你已经确认是 Off,再执行&…...

绍兴Geo优化,如何选对靠谱服务商?

在人工智能技术深度渗透商业推广领域的当下,GEO(地理定位)优化已不再是简单的本地搜索排名,而是演变为一场关于“空间精准度”与“AI语义理解”的双重竞赛。对于绍兴及周边区域的企业而言,如何从众多服务商中筛选出真正…...

Safeboxie沙盘,电脑多开程序神器,系统安全工具,非常好用!

Safeboxie沙盘,电脑多开程序神器,系统安全工具,非常好用! 软件介绍 菜鸟高手裸奔工具沙盘Safeboxie是一款国外著名的系统安全工具,它可以让选定程序在安全的隔离环境下运行,只要在此环境中运行的软件&#…...

【2026企业级Blazor落地白皮书】:金融/医疗场景下SSR+Hydration+Streaming SSR三模混合渲染实战(附GCP/Azure边缘部署Checklist)

第一章:Blazor 2026企业级落地战略全景图 Blazor 正在从“可选框架”跃迁为 2026 年企业级 .NET 应用的默认前端架构范式。其核心驱动力并非仅限于 C# 全栈统一,更在于 WebAssembly 运行时成熟度、AOT 编译稳定性提升、以及与 Azure Static Web Apps、Mi…...

Synopsys Multivoltage Flow User Guide(汉化笔记)

1 Low-Power Design Strategies 1.1 Increasing Challenges of Power 早期的IC设计中EDA工具更多的优化方向是性能和面积,功耗考虑的比较少,但是,现在的设计CMOS器件密度和时钟频率都在提升,功耗重要性也更加明显,供电电压和晶体管阈值电压也在降低,漏电电流也成为无法忽…...

【PHP低代码表单安全生死线】:92%开发者忽略的3类注入漏洞(含OWASP Top 10映射表+自动检测脚本)

第一章:PHP低代码表单安全生死线总览在低代码开发范式下,PHP 表单常被封装为可拖拽、自动生成的组件,但其底层仍依赖 $_POST、$_GET 等超全局变量接收用户输入。这种便利性极易掩盖注入、XSS、CSRF 和越权提交等高危风险——一条未过滤的 $_P…...

【数据库系统】数据库系统概论——第十二章 数据库管理系统

第十二章 数据库管理系统 文章目录 第十二章 数据库管理系统 12.1数据库管理系统的基本功能 12.2数据库管理系统的系统结构 12.2.1数据库管理系统的层次结构 12.2.2关系数据库管理系统的运行过程示例 12.3语言处理层 12.3.1语言处理层的任务和工作步骤 12.3.2解释方法 12.3.3预…...

OpenClaw异常检测技能:基于SecGPT-14B的流量行为分析

OpenClaw异常检测技能:基于SecGPT-14B的流量行为分析 1. 为什么需要AI驱动的流量分析 去年处理一起内网渗透事件时,我花了整整三天手动分析pcap文件。传统规则引擎虽然能识别已知攻击特征,但对新型C2通信协议几乎束手无策——攻击者只需简单…...

OpenClaw技能市场巡礼:Qwen3-4B适配的十大实用模块

OpenClaw技能市场巡礼:Qwen3-4B适配的十大实用模块 1. 为什么需要关注OpenClaw技能市场? 第一次接触OpenClaw时,我被它"AI操控电脑"的概念吸引,但真正让我持续使用的却是它的技能市场(ClawHub)…...

MeteorSeed核

这个代码的核心功能是:基于输入词的长度动态选择反义词示例,并调用大模型生成反义词,体现了 “动态少样本提示(Dynamic Few-Shot Prompting)” 与 “上下文长度感知的示例选择” 的能力。 from langchain.prompts impo…...

15DaysofAnimationsinSwift锁屏动画教程:从概念到代码实现

15DaysofAnimationsinSwift锁屏动画教程:从概念到代码实现 【免费下载链接】15DaysofAnimationsinSwift A project to learn animations. 项目地址: https://gitcode.com/gh_mirrors/15/15DaysofAnimationsinSwift 想要为你的iOS应用添加一个流畅、优雅的锁屏…...

让开发流程更高效:为 Visual Studio 订阅用户解锁 Syncfusion凸

一、什么是requests? requests 是一个用于发送HTTP请求的 Python 库。 它可以帮助你: 轻松发送GET、POST、PUT、DELETE等请求 处理Cookie、会话等复杂性 自动解压缩内容 处理国际化域名和URL 二、应用场景 requests 广泛应用于以下实际场景: …...

【OpenCV教程】Trackbar到底怎么用?

1.createTrackbar创建滚动条1.1 APICV_EXPORTS int createTrackbar(const String& trackbarname, const String& winname,int* value, int count,TrackbarCallback onChange 0,void* userdata 0);参数如下参数含义trackbarname滚动条名字winname(window name)窗体名字…...

零基础入门转录组上游分析——第四章(序列比对)

零基础入门转录组上游分析——第四章(序列比对) 目录零基础入门转录组上游分析——第四章(序列比对)1. 之前章节结果的查看1. 构建参考基因组索引2. 序列比对3. 压缩和排序XXX.sam文件4. 构建bam文件的索引(可选&#…...

Js2Py错误处理与调试:解决常见问题的终极指南

Js2Py错误处理与调试:解决常见问题的终极指南 【免费下载链接】Js2Py JavaScript to Python Translator & JavaScript interpreter written in 100% pure Python🚀 Try it online: 项目地址: https://gitcode.com/gh_mirrors/js/Js2Py Js2Py是…...

知识图谱构建实战:基于Knowledge-Graph项目的实体识别与关系抽取技术

知识图谱构建实战:基于Knowledge-Graph项目的实体识别与关系抽取技术 【免费下载链接】NLP-Knowledge-Graph 项目地址: https://gitcode.com/gh_mirrors/kn/Knowledge-Graph 知识图谱作为人工智能领域的重要技术,能够将复杂的信息转化为结构化的…...

数据存储与管理:QmlBook本地存储与SQL集成教程

数据存储与管理:QmlBook本地存储与SQL集成教程 【免费下载链接】qmlbook The source code for the upcoming qml book 项目地址: https://gitcode.com/gh_mirrors/qm/qmlbook QmlBook提供了全面的本地存储解决方案,帮助开发者轻松实现应用数据的持…...

OpenClaw浏览器自动化:Qwen3.5-9B爬取带图片的学术资料

OpenClaw浏览器自动化:Qwen3.5-9B爬取带图片的学术资料 1. 为什么需要自动化学术资料采集 上周我在研究量子计算的最新进展时,遇到了一个典型痛点:需要在十几个学术平台手动翻页、下载PDF、截图关键图表,再手工整理参考文献。这…...

从春晚到AWE:追觅与扫地机器人市场的“冰与火之歌”

2026年开年,扫地机器人行业呈现出耐人寻味的两极图景:一边是追觅凭借春晚效应交出全渠道市占第一的成绩单,另一边是洛图科技发布的行业数据显示,1-2月中国扫地机器人线上销量同比下降22.2%。在行业大盘承压的背景下,追觅为何能逆势增长?春晚这个国民级舞台,究竟如何改写…...