华为MetaERP 先给结论:FA_API_TYPES 本身几乎不包含“业务函数“,它本质上是 FA 模块的“类型字典包(TYPE-ONLY package)“——SPEC 里 95% 是 TYPE

发布时间:2026/10/10 18:37:05
华为MetaERP 先给结论:FA_API_TYPES 本身几乎不包含“业务函数“,它本质上是 FA 模块的“类型字典包(TYPE-ONLY package)“——SPEC 里 95% 是 TYPE 先给结论FA_API_TYPES本身几乎不包含业务函数它本质上是 FA 模块的类型字典包TYPE-ONLY package——SPEC 里 95% 是TYPE/RECORD/TABLE OF RECORD声明只有极少量辅助常量与空壳初始化逻辑真正干活的函数都在FA_CACHE_PKG/FA_SRVR_MSG/FA_DEBUG_PKG/FA_*_PUB 里。下面把常被误以为是 FA_API_TYPES 函数和包里真有的少量成员拆开讲。一、FA_API_TYPES 里真正声明的东西R12.2 实测 SPEC 结构1. 类型声明主体占 95%RECORD类型trans_rec_type、asset_hdr_rec_type、asset_desc_rec_type、asset_cat_rec_type、asset_fin_rec_type、asset_deprn_rec_type、asset_dist_rec_type、asset_retire_rec_type、inv_rec_type、reclass_options_rec_type、log_level_rec_type、period_rec_type、msg_rec_type、who_rec_type等TABLE OF RECORDasset_dist_tbl_type、inv_tbl_type、inv_rate_tbl_type、asset_fin_tbl_type、subcomp_tbl_type常量G_MISS_CHAR、G_MISS_NUM、G_MISS_DATEFA 自己复刻的 FND_API 缺失值标记用于传 NULL 但要覆盖原值的场景见 Adjustment API 文档2. 包体BODY里极少的函数/过程翻 R12.2 的FA_API_TYPESbody能看到的无非是无业务函数没有get_asset_cost()、calc_deprn()这类东西仅有类型构造/默认值填充的私有辅助例如init_trans_rec(p_rec OUT NOCOPY trans_rec_type)—— 某些内部包会调但 Public API 调用方一般不直接用调用方自己l_trans_rec : NULL;再赋值更简单init_who_rec(p_rec OUT NOCOPY who_rec_type)—— 填fnd_global.user_id等实际项目里大家都手写不调它这些过程不在官方 Integration Repository 登记Oracle Support 也不建议外部调用所以严格回答FA_API_TYPES 有哪些常用函数——公开可依赖的函数数量为 0只有类型和常量。二、为什么大家以为它有函数容易混淆的邻居包写 FA API 程序时和FA_API_TYPES.*记录类型成对出现的初始化/辅助调用其实来自别的包你写的代码真实归属包作用FA_SRVR_MSG.Init_Server_MessageFA_SRVR_MSG清 FA 消息栈必调否则报错不刷出来FA_DEBUG_PKG.InitializeFA_DEBUG_PKG初始化 FA 调试堆栈FA_CACHE_PKG.fazarel_releaseFA_CACHE_PKG取当前 FA release被各 PUB 包用来设g_releaseFND_API.G_VALID_LEVEL_FULLFND_API校验级别常量FND_API.G_MISS_CHAR/NUM/DATEFND_API缺失值标记FA 自己也抄了一份在 FA_API_TYPES 里FND_GLOBAL.user_idFND_GLOBAL填who_info.last_updated_by典型新增资产匿名块的开头永远是fa_srvr_msg.init_server_message; -- 不是 FA_API_TYPES fa_debug_pkg.initialize; -- 不是 FA_API_TYPES l_trans_rec.who_info.last_updated_by : fnd_global.user_id;这里的trans_rec_type才是FA_API_TYPES的贡献。三、实战视角该去哪找函数如果你要做 FA 二次开发按用途去这几个包找函数/过程而不是去 FA_API_TYPES事务执行FA_ADDITION_PUB.DO_ADDITION、FA_TRANSFER_PUB.DO_TRANSFER、FA_RECLASS_PUB.DO_RECLASS、FA_RETIREMENT_PUB.DO_RETIREMENT、FA_ADJUSTMENT_PUB.DO_ADJUSTMENT、FA_DEPRN_ROLLBACK_PUB.DO_ROLLBACK缓存/上下文FA_CACHE_PKG账簿控制、期间、类别默认消息/调试FA_SRVR_MSG、FA_DEBUG_PKG折旧计算内核FA_STD_TYPESFA_CALC_DEPRN_BASIS*FAP_CALCULATE注意计算结构体在FA_STD_TYPES不在FA_API_TYPES内部轨迹FA_TRACK_MEMBER_PVT.get_member_at_start这种用FA_API_TYPES.period_rec_type做入参但函数本体在别处四、一句话总结FA_API_TYPESFA 模块所有 Public API 的参数结构体字典 少量 MISSING 常量无业务函数、无查询函数、无计算函数。写代码时用到 FA_API_TYPES指的是FA_API_TYPES.trans_rec_type这种类型引用不是调它的函数。真正要初始化/清栈/取数/算折旧去FA_SRVR_MSG/FA_CACHE_PKG/FA_*_PUB/FA_STD_TYPES。

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询