# 下推 RuleId 与分录关联规则

Push 参数见 [SKILL.md](../SKILL.md) 中 `DynamicFormService.Push`。`TargetFormId` 有时由转换规则决定，可省略。

## 常见下推场景（销售收款）

| 源 FormId | RuleId | 目标 | 说明 |
|-----------|--------|------|------|
| SAL_SaleOrder | `{sales_order_to_receipt_rule_id}` | AR_RECEIVEBILL | 订单下推收款单，常需再 Save 补结算方式/账号 |
| SAL_SaleOrder | `{sales_order_to_delivery_rule_id}` | SAL_DELIVERYNOTICE | 订单→发货通知（亦可手工 Save + Link） |

> RuleId 以账套「单据转换」配置为准；表中只保留语义化占位符，**生成代码前建议在环境中核实并替换**。

## 分录关联（Save Model 内 Link，非 Push）

| 场景 | FRuleId 示例 | FSTableName 示例 |
|------|--------------|------------------|
| 销售订单→发货通知 | `{sales_order_to_delivery_rule_id}` | `{sales_order_entry_table}` |
| 销售订单→销售发票 | `{sales_order_to_invoice_rule_id}` | `{sales_order_entry_table}` |
| 应收→销售发票 | `{receivable_to_invoice_rule_id}` | `{receivable_entry_table}` |
| 其他出库→其他出库（归还） | `{return_conversion_rule_id}` | `{misc_delivery_entry_table}` |

关联字段名因单据而异（`FEntity_Link_*`、`FSALESICENTRY_Link_*` 等），以 View 元数据为准。

## Push 后常见步骤

1. 从 `SuccessEntitys[0].Id` 取目标单内码
2. `ExecuteBillQuery` 查分录 EntryId
3. `Save` 更新金额、结算、对照字段
4. `Submit` / `Audit`（按业务）

片段：[ArReceiveBillPushFromOrder.md](../assets/snippets/ArReceiveBillPushFromOrder.md)、[PushFlow.md](../assets/snippets/PushFlow.md)。