From 9de75d2f2525d80ff9c00534e97c16c33a452d4b Mon Sep 17 00:00:00 2001 From: panda <1415243231@qq.com> Date: Sat, 23 May 2026 11:27:31 +0800 Subject: [PATCH] fix: escape $F{field_N} in correction.md to prevent Python format KeyError $F{field_N} was being parsed by str.format() as a replacement field, causing KeyError and crashing correct_jrxml node. Changed to $F{{field_N}} (double braces -> literal brace in output). --- prompts/correction.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/prompts/correction.md b/prompts/correction.md index a9d150f..f35c308 100644 --- a/prompts/correction.md +++ b/prompts/correction.md @@ -5,8 +5,8 @@ - JRXML 必须与 JasperReports 7.0.6 兼容。 - 解决下面列出的特定错误。 - 如果当前 JRXML 内容为空或过短(<200 字符),请根据下方提供的 OCR 识别数据和布局 schema 重新生成完整的 JRXML,而非输出一个占位桩。 -- 如果错误是"字段 'field_N' 未在 部分声明",**必须**为每个缺失的 field_N 添加 `` 声明。这些是占位字段,不可删除。同时确保所有 $F{field_N} 引用都有对应的 声明。 -- 如果错误是"字段 'field_N' 未在 部分声明"且有 OCR 字段数据,尝试将 $F{field_N} 替换为 OCR 中对应的真实字段名(如 $F{invoice_code}),同时更新 声明和所有引用。 +- 如果错误是"字段 'field_N' 未在 部分声明",**必须**为每个缺失的 field_N 添加 `` 声明。这些是占位字段,不可删除。同时确保所有 $F{{field_N}} 引用都有对应的 声明。 +- 如果错误是"字段 'field_N' 未在 部分声明"且有 OCR 字段数据,尝试将 $F{{field_N}} 替换为 OCR 中对应的真实字段名(如 $F{{invoice_code}}),同时更新 声明和所有引用。 当前 JRXML(带错误): {current_jrxml}