# 生命科学-2026年三季度汇报 转写自检报告

生成时间：2026-10-05（zone-b 会话） · 转写人：Hermes Agent

被转写文件（**均未修改**，只读）：

- `生命科学-2026年三季度销售工作汇报.pptx`（1,829,978 字节）
- `附表-生命科学-2026年三季度销售工作汇报.xlsx`（18,369 字节）

转写产物：

- `生命科学-2026年三季度销售工作汇报__pptx.md`
- `附表-生命科学-2026年三季度销售工作汇报__xlsx.md`
- `生命科学__转写自检.md`（本文件）

---

## 一、规模核对（与文件实际对齐）

### 1.1 PPTX

| 项目 | 值 | 来源 |
|---|---|---|
| `ppt/slides/slideN.xml` 数（按 `presentation.xml` 的 sldId 顺序解析） | **14** | zipfile 计数 |
| `docProps/app.xml` 声明 `<Slides>` | **14** | ✅ 与 14 一致 |
| `docProps/app.xml` 声明 `<Notes>` | **0** | 无备注页 |
| 字数 `<Words>` / 段落 `<Paragraphs>` | 2685 / 805 | docProps |
| 原生表格（`<a:tbl>`） | **13** | 逐页解析 |
| 图表（`ppt/charts/chartN.xml`） | **2**（chart1 = barChart、chart2 = pieChart） | zipfile + chart XML |
| SmartArt / diagram（`ppt/diagrams/`） | **0** | zipfile |
| 备注页（`ppt/notesSlides/`） | **0** | zipfile |
| 内嵌位图（`ppt/media/`） | **10**（image1.png–image10.png） | zipfile |
| 嵌入 OLE 对象（`ppt/embeddings/`） | **1**（`Workbook1.xlsx`，`progId=Excel.Sheet.12`，位于第 6 页） | slide6.xml + zipfile |

> 页序说明：`rId` 与文件名编号**不一一对应**是常见坑；本文件两者恰好同为 slide1–slide14 顺序，已按 `presentation.xml` 的 `sldId r:id` 顺序解析确认。

#### 幻灯片元数据

- `dc:title` = 空白演示（WPS 模板残留标题）
- `dc:creator` = 空（未写）
- `cp:lastModifiedBy` = **刘新元**
- `dcterms:created` = 2026-09-30T09:02:43Z · `<Application>` = WPS 表格 · `<PresentationFormat>` = 宽屏

### 1.2 XLSX

| # | Sheet 名 | 声明范围（max_row × max_col） | 实际有内容区域 | 非空单元格数 | 合并单元格 | 表头 |
|---|---|---|---|---|---|---|
| 1 | `2026年销售目标` | 34 × 21 | 行 1–19；列 A–U | 232 | 0 处 | 第 1 行：（空） / 1月 / 2月 / 3月 / 4月 / 5月 … |
| 2 | `重点课题组` | 11 × 14 | 行 1–2；列 A–N | 28 | 0 处 | 第 1 行：学校 / 院系 / 名称 / 商机状态 / 意向产品 / 导师研究方向 … |
| 3 | `2026年销售预测（四季度）` | 100 × 44 | 行 1–2；列 A–X | 47 | 0 处 | 第 1 行：客户名称 / 院系 / 课题组 / 研究方向 / 课题组人数 / 采购模式 … |

- `docProps/app.xml` 声明工作表数 = 3，与解析一致；表名 = 2026年销售目标、重点课题组、2026年销售预测（四季度）
- `dc:creator` = **吴云** · `cp:lastModifiedBy` = **刘新元** · `dcterms:modified` = 2026-10-01T00:59:00Z
- **无公式**：`data_only=True` 与 `data_only=False` 读出的非空单元格集合完全一致。
- **无合并单元格**：3 张表 `merged_cells` 均为空（故本份转写不存在「合并区语义」丢失问题）。

---

## 二、人员名单

> 说明：本份汇报是**模板化通报稿**，客户名与课题组名被系统性脱敏为 `X`/`XX`（如「XX大学」「余X」「X威课题组」）。下列为文档中**实际出现的字符**，未做任何推断补全。

### 2.1 姓名（文件元数据，真实姓名）

| 姓名 | 出处 | 角色/字段 |
|---|---|---|
| **刘新元** | pptx `docProps/core.xml` | `cp:lastModifiedBy`（最后保存人） |
| **吴云** | xlsx `docProps/core.xml` | `dc:creator`（创建人） |
| **刘新元** | xlsx `docProps/core.xml` | `cp:lastModifiedBy`（最后保存人） |

> pptx `dc:creator` 为空；pptx 正文首页写「汇报人：XXX    汇报日期：2026.10.XX」，**汇报人未填写**（模板占位）。

### 2.2 正文出现的姓名 / 课题组名（均为 X 脱敏形式，逐字照录）

| 出现文本 | 位置 | 类型 |
|---|---|---|
| `余X、范X` | pptx 第 4 页 · 表格2「重点课题组名称」 | 人的姓氏（脱敏） |
| `黄X、蔡X、乐X` | pptx 第 4 页 · 表格2「重点课题组名称」 | 人的姓氏（脱敏） |
| `楼X、梁X、X峰 李X、王X` | pptx 第 4 页 · 表格2「重点课题组名称」 | 人的姓氏（脱敏） |
| `方x、尤X、黄X、王X、赵X、黎X、刘X、钱X` | pptx 第 4 页 · 表格3「课题组名称」 | 人的姓氏（脱敏） |
| `X威课题组` | pptx 第 5 页 · 表格4「课题组」 | 课题组名（含人名脱敏） |
| `X刚课题组` | pptx 第 5 页 · 表格4「课题组」 | 课题组名（含人名脱敏） |
| `X课题组` | pptx 第 5 页 · 表格4「课题组」 | 课题组名（脱敏） |
| `余XX<br>课题组` | xlsx Sheet2「重点课题组」C2 | 课题组名（脱敏） |
| `黄云鹏<br>课题组` | xlsx Sheet3「2026年销售预测（四季度）」C2 | 课题组名（**未脱敏**） |
| `黄X` | xlsx Sheet3 F2「专门采购黄X核心试剂按需补采」 | 人的姓氏（脱敏） |
| `老师/学生` | xlsx Sheet2「决策人」G2 | 角色，非姓名 |

### 2.3 非人员实体（公司/机构，供核对，不计入人员）

| 名称 | 位置 | 性质 |
|---|---|---|
| 诺唯赞 | pptx 第 10 页 · 表格9「竞品公司名称」 | 竞品公司 |
| 爱博泰克 | pptx 第 11 页 · 表格10「竞对公司名称」 | 竞对公司 |
| 宝锐生物 / BiOri / BiOCi | pptx 位图 image3.png、image5.png（Logo 残字） | 本公司 |
| XX大学 / XX高等研究院 / X理工大学 / X医科大学 | pptx 第 4 页、第 5 页 | 客户（脱敏） |
| XX高等研究院 / XX学院 | xlsx Sheet3 A2/B2 | 客户（脱敏） |
| XX课题组 | pptx 第 10 页 · 表格9「信息来源」 | 客户（脱敏） |
| 余XX课题组 / 黄云鹏课题组 | xlsx Sheet2 C2 / Sheet3 C2 | 课题组 |

> ⚠️ **未发现的姓名**：pptx 14 页正文中**没有出现任何一位销售/科研人员的完整姓名**；文内出现的全部人员信息都是姓氏 + `X` 的脱敏形式。唯一完整人名「黄云鹏」出现在 xlsx 的课题组名里。

---

## 三、逐页转写一览（页码 → 标题 / 归属人 → 已提取内容类型）

| 页 | 标题（取该页最大字号文本） | 归属人 | 已提取内容类型 |
|---|---|---|---|
| 1 | 生命科学销售部2026年 三季度工作总结报告 | 未填写（首页占位「汇报人：XXX」） | 文本框 3 个、位图 2 张 |
| 2 | 汇报内容 | 未标注 | 文本框 8 个、位图 3 张 |
| 3 | 01目标达成-数据分析 | 未标注 | 文本框 2 个、原生表格 1 个、图表 1 个、位图 1 张 |
| 4 | 01目标达成-客户开发总结 | 未标注 | 文本框 3 个、原生表格 2 个、位图 1 张 |
| 5 | 01回款达成 | 未标注 | 文本框 2 个、原生表格 1 个、位图 1 张 |
| 6 | 02差距分析与改善措施 | 未标注 | 文本框 3 个、位图 3 张、嵌入 OLE 1 个 |
| 7 | 02前三季度各类产品销售数据 | 未标注 | 文本框 2 个、原生表格 1 个、图表 1 个、位图 3 张 |
| 8 | 02前三季度出货TOP5货号 | 未标注 | 文本框 4 个、原生表格 2 个、位图 3 张 |
| 9 | 03销售行为分析 | 未标注 | 文本框 2 个、原生表格 1 个、位图 1 张 |
| 10 | 03竞品价格分析 | 未标注 | 文本框 2 个、原生表格 1 个、位图 1 张 |
| 11 | 03竞品市场活动 | 未标注 | 文本框 2 个、原生表格 1 个、位图 1 张 |
| 12 | 03产品竞争 | 未标注 | 文本框 2 个、原生表格 1 个、位图 1 张 |
| 13 | 03需求总结 | 未标注 | 文本框 2 个、原生表格 2 个、位图 3 张 |
| 14 | Thanks | 未标注 | 文本框 5 个、位图 3 张 |

### 3.1 逐页表格 / 图表明细

| 页 | 对象 | 类型 | 规格 | 转写去向 |
|---|---|---|---|---|
| 3 | 表格 1 | 原生 `<a:tbl>` | 6 行 × 19 列网格 | pptx.md「表格 1」 |
| 3 | 图表 chart1.xml | 原生 chart XML | barChart | pptx.md「📊 图表」数据表 |
| 4 | 表格 2 | 原生 `<a:tbl>` | 5 行 × 5 列网格 | pptx.md「表格 2」 |
| 4 | 表格 3 | 原生 `<a:tbl>` | 4 行 × 3 列网格 | pptx.md「表格 3」 |
| 5 | 表格 4 | 原生 `<a:tbl>` | 4 行 × 6 列网格 | pptx.md「表格 4」 |
| 7 | 表格 5 | 原生 `<a:tbl>` | 12 行 × 6 列网格 | pptx.md「表格 5」 |
| 7 | 图表 chart2.xml | 原生 chart XML | pieChart | pptx.md「📊 图表」数据表 |
| 8 | 表格 6 | 原生 `<a:tbl>` | 6 行 × 3 列网格 | pptx.md「表格 6」 |
| 8 | 表格 7 | 原生 `<a:tbl>` | 6 行 × 4 列网格 | pptx.md「表格 7」 |
| 9 | 表格 8 | 原生 `<a:tbl>` | 7 行 × 4 列网格 | pptx.md「表格 8」 |
| 10 | 表格 9 | 原生 `<a:tbl>` | 11 行 × 7 列网格 | pptx.md「表格 9」 |
| 11 | 表格 10 | 原生 `<a:tbl>` | 6 行 × 4 列网格 | pptx.md「表格 10」 |
| 12 | 表格 11 | 原生 `<a:tbl>` | 11 行 × 5 列网格 | pptx.md「表格 11」 |
| 13 | 表格 12 | 原生 `<a:tbl>` | 5 行 × 3 列网格 | pptx.md「表格 12」 |
| 13 | 表格 13 | 原生 `<a:tbl>` | 2 行 × 3 列网格 | pptx.md「表格 13」 |

---

## 四、失败 / 存疑清单（位置 + 原因）

### 4.1 转写失败（内容未能提取）

**无。**

完整性反查结果（脚本 `verify2.py`）：

- 源 pptx 段落级文本节点（剔除页眉页脚）共 **318 条**，未出现在 md 中的 = **0 条**。
- 图表 `<c:v>` 缓存值共 **74 个**，未出现在 md 中的 = **0 个**。
- xlsx 全部 **307 个**非空单元格（232 + 28 + 47）均已逐格落到 xlsx.md（区块表 + 附录逐格清单）。
- pptx 内嵌 OLE 对象 **1 个**（第 6 页）已识别并落到 pptx.md（📎 段落）。

### 4.2 存疑 / 需业务方确认（转写无误，但**源文件本身**存在异常）

| # | 位置 | 现象（原样照录） | 说明 |
|---|---|---|---|
| 1 | pptx 第 3 页 · 表格1 第 3 行 | 该行 19 个单元格**全为空** | 表头为两行合并结构，此空行为断裂行；原文件即如此 |
| 2 | pptx 第 3 页 · 表格1 表头 | 第 4 行月序列出现 **两个「9月」**（共 13 个类目，1–12 月 + 重复 9 月） | 与 chart1 的 `<c:cat>` 缓存完全一致（13 个类目，idx8/idx9 都是「9月」）。源表月份序列多了一列 |
| 3 | pptx 第 3 页 · 表格1 + chart1 | 2026 年月度值 `10000/20000/30000/20000/40000/50000/30000/30000/80000/80000/50000/100000/50000`、年度累计 `590000`；2025 年为其 0.8 倍、累计 `472000` | 数值高度规整（2025 = 2026 × 0.8），**疑为演示占位数据**。chart1 的外链源为 `2026年诊断原料销售部商机汇总表-2026年半年度汇报.xlsx`（外部文件，本机不可达），md 中已按 XML 缓存原样保留 |
| 4 | pptx 第 7 页 · 表格5 | 「合计」行 = `1310 / 7315 / 8151 / 0.699 / 2.3766`，而 6月列为 `0.699`、合计（元）列为 `2.3766` | 与同表其它列量级不一致（其余为纯整数）。按原样保留，**未做任何换算** |
| 5 | pptx 第 7 页 · 表格5 表头 | 月份列只有 `3月 4月 5月 6月` 四列，但页面标题为「**前三季度**各类产品销售数据」 | 标题与表列口径不一致（疑为上季模板未改） |
| 6 | pptx 第 4 页 · 表格3 | 「课题组名称」列在 `5000及以上` 行与 `1000以下` 行为空 | 原文件即空 |
| 7 | pptx 第 10 / 11 / 12 页 | 竞品价格表仅 1 条数据（诺唯赞 Q712），竞品产品分析表（第 12 页）**整表 9 行数据全空**；竞对市场活动表仅 1 条 | 原文件即空 |
| 8 | pptx 第 13 页 · 两个表格 | 「客户需求（优化方向）」「建议重点优化货号/系列」「需求量预估」**全列为空** | 原文件即空 |
| 9 | pptx 第 9 页 · 表格8 | 「存在问题总结与改善措施」4 个数据行中 **3 行为空**，仅 1 行（陌拜转化率低）有内容 | 原文件即空 |
| 10 | pptx 第 1 页 | `汇报人：XXX    汇报日期：2026.10.XX` | 首页汇报人 / 日期为模板占位符，未填写；`docProps` 亦无 `dc:creator` |
| 11 | xlsx Sheet3 | 声明 44 列（A:AR）、100 行，实际只有 A1:X2 有内容；**仅 1 条客户数据**（XX高等研究院/黄云鹏课题组） | 其余为空白模板行 |
| 12 | xlsx Sheet2 | 声明 11 行，实际只有第 1–2 行；**仅 1 条课题组数据**（余XX课题组） | 其余为空白模板行 |
| 13 | pptx 第 7 页 chart2（饼图） | 无系列名（`<c:tx>` 缺失），类目为 10 个产品线，值 `0, 0.02, 0.23, 0.4, 0.1, 0.05, 0.07, 0.02, 0.12, 0` | 合计 = 1.01（≠ 1），且「建库试剂盒 = 0」「其他 = 0」仍出现在图例中。md 中标注系列为「（无系列名）」并原样保留数值 |
| 14 | pptx 第 7 页 chart2（饼图）外链 | `file:///C:\Users\YUAN\AppData\Local\Temp\wps.zuAUZx\Chart5 in Wps.xlsx` | 指向 WPS 临时目录的**外部文件**，不可达；数值以 XML 缓存为准 |
| 15 | pptx 第 6 页 嵌入 OLE | `progId=Excel.Sheet.12` → `ppt/embeddings/Workbook1.xlsx`（18,393 字节） | 经 3 表逐格比对，与随附 `附表-…xlsx` **0 处差异**（md5 不同仅因元数据/格式），即 PPT 内嵌附件 = 附表本身 |
| 16 | pptx 第 3 页 表格1/chart1 ↔ Workbook1.xlsx | 表格1/chart1 的 2026 年月度值为 `10000 / 20000 / 30000 / 20000 / 40000 / 50000 / 30000 / 30000 / 80000 / 80000 / 50000 / 100000 / 50000`（累计 `590000`）；而 Workbook1.xlsx（=附表）Sheet1「2026年销售目标」为 `0 / 0 / 0.3 / 0.7 / 2 / 2 / 2 / 3 / 5 / 6 / 8 / 9`（合计 `38`） | **两处数值量级/口径完全不同**。chart1 的外链源指向另一份文件（`2026年诊断原料销售部商机汇总表-2026年半年度汇报.xlsx`），缓存值疑为复制模板时残留的占位数据。**md 均按各自文件原样保留，未做任何对齐或换算**，请业务方确认第 3 页图表数据是否需重取 |

### 4.3 OCR 局限（已按图处理，非编造）

| 位图 | 尺寸 | OCR 结果 | 处理 |
|---|---|---|---|
| image1.png | 2000×1125 | 无文字 | 整页渐变背景（第 2 页）；目视确认无文字 |
| image2.png | 1594×77 | 无文字 | 装饰色条（第 2/6/7/8/13 页） |
| image3.png | 585×229 | 「BiOCi／宝／锐／生／物」 | Logo 残字，按装饰过滤剔除（第 2/6/7/8/13 页） |
| image4.png | 2880×1620 | 无文字 | 封面渐变背景（第 1 页） |
| image5.png | 387×151 | 「BiOri／宝／锐／生／抭」 | Logo 残字（含 OCR 误识「抭」），按装饰过滤剔除（第 1 页） |
| image6.png | 1173×256 | 无文字 | 蓝色色块（第 3/4/5/6/7/8/9/10/11/12/13 页） |
| image7.png | 120×120 | 「00」 | **Excel 附件图标**（第 6 页）。OCR 未识别出图内两行文字，改以**图片目视判读**补录：`附表-生命科` / `学-2026年三季度销`（末行被图标边界截断），md 中以 👁 单列标出 |
| image8.png | 201×201 | 无文字 | 二维码，中央含 BiOri Logo（第 14 页） |
| image9.png | 201×201 | 无文字 | 二维码（第 14 页） |
| image10.png | 166×25 | 「成为生命科学领域领先者」 | 品牌 slogan，**OCR 提取通过**（第 14 页） |

> 数值一律以 XML 直读为准，**未使用 OCR 作为数值来源**。

---

## 五、方法与口径

- **pptx**：`zipfile` 直读 `ppt/slides/slideN.xml`，按 `p:sp` / `p:graphicFrame` / `p:pic` / `p:grpSp` 文档顺序取块；表格解析 `<a:tbl>` 并按 `gridSpan` / `hMerge` 展开为网格；图表读 `ppt/charts/chartN.xml` 的 `<c:strCache>` / `<c:numCache>` 缓存值；`<p:oleObj>` 单独识别为「嵌入 OLE 对象」块。**未做任何渲染**。
- **图片**：`unzip` 出 `ppt/media/*` → macOS Vision `VNRecognizeTextRequest`（zh-Hans + en-US，accurate）→ 装饰过滤（汉字≥4 或字母≥6）→ 回填到所在页；OCR 无果但有内容的图用目视判读单列。
- **xlsx**：`openpyxl` 双模式读取（`data_only=True` / `False`）比对确认无公式；按逻辑区块切表 + 附录全量逐格清单（坐标 → 原值）。
- **标题判定**：取该页字号（`sz`）最大的文本块，排除公司 slogan 与页码。
- **页脚**：第 1 页 = `守护生命健康·缔造美好生活`（「·」分隔版）；第 3、5–13 页 = `守护生命健康  缔造美好生活`（双空格版）；第 14 页 = `追求卓越品质 提供一流服务`；第 2、4 页**无页脚**。均为设计模板页脚，未逐页重复写入 md（已在完整反查中白名单排除，共 22 个 run）。

## 六、交付清单

| 文件 | 说明 |
|---|---|
| `生命科学-2026年三季度销售工作汇报__pptx.md` | 14 页逐页转写（文本 + 13 个表格 + 2 个图表数据表 + 图片位置与 OCR） |
| `附表-生命科学-2026年三季度销售工作汇报__xlsx.md` | 3 张工作表完整转写 + 307 个非空单元格逐格清单 |
| `生命科学__转写自检.md` | 本文件 |

原文件**未被修改**（仅 zipfile/openpyxl 只读打开）。所有写操作均在 `2026年3季度汇报/_汇总/q3报告原文/` 目录内。
