众所周知(哈哈哈在吹牛)
PeopleSoft是一种元数据驱动的企业应用软件。在PeopleSoft系统中,基础的元数据是非常重要的,它定义了系统中各个组件和页面的结构和行为。
在PeopleSoft中,Field(字段)、Record(记录)、Page(页面)和Component(组件)是构成前端页面的基本构件,它们都有对应的元数据表。这些元数据表存储了这些构件的定义和属性信息,包括字段的数据类型、长度、约束等,记录的结构和字段关系,页面的布局和控件设置,以及组件的交互逻辑等。
通过元数据表,PeopleSoft系统能够在运行时动态地根据配置的元数据来生成页面和组件的实例,并控制其行为和展现方式。这种元数据驱动的特性使得系统更加灵活和可配置,可以根据不同的业务需求和用户角色进行定制和扩展。
同时,基于元数据的设计也使得系统的维护和升级更加简便,只需要修改元数据的配置即可达到修改系统行为和界面的效果,而无需修改源代码。这提高了系统的可维护性和可扩展性。
本文写一下PeopleSoft 最基础的元数据Field(字段) 和Record (记录)
根据PeopleBook介绍
字段是 PeopleSoft 系统中的基本构建块;在数据库术语中,它们表示表或视图中的列。在PeopleSoft 字段定义是独立的开发定义,因为在PeopleSoft中,与表和视图相对应的元数据对象Record有着更多的类型,除了视图和表,还可以是queryView ,Dynimc View ,临时表,甚至可以的是一组按钮和链接或者DIV的组合。所以在PeopleSoft中
基本是上什么都可以用一个字段来定义的或者代表的。
Field在 Application Designer 中定义,并且可以在多个记录(record)定义之间共享。
每个字段定义包括属性,例如数据类型、字段名称、长名称、短名称、字段长度和各种格式值。
PS中filed有10中类型,分别是
Character
Long Character
Number
Signed Number
Date
Time
Datetime
Image
ImageReference
Attachment
如果用10种类型字段创建一个sql table的话其在Oracle中对应的数据类型是下图
说了这么多回到 PeopleSoft field 的元数据表
在PeopleSoft中与 field相关的元数据表有
- PSDBFIELD PS数据库字段表,即字段库
- PSDBFIELDLANG 数据库字段语言表 国际化使用
- PSDBFLDLABL 字段label表
- PSDBFLDLABLLANG 字段label多语言表 国际化使用
- PSXLATDEFN字段枚举值定义表(当字段类型为char 且长度小于等于4可用)
- PSXLATITEM字段枚举值列表(当字段类型为char 且长度小于等于4可用)
- PSXLATITEMLANG 字段枚举值列表多语言表(当字段类型为char 且长度小于等于4可用)
下面我挨个贴一下这些元数据表的字段全图,并对一些重要字段做一下介绍
PSDBFIELD
该表重要的字段是字段类型和version还有字段长度, 关于PeopleSoft 也是个重要的知识点,以后可以开篇文章介绍
PSDBFIELDLANG
该表用途国际化,重要字段是语言代码
PSDBFLDLABL
字段标签表,设计初衷是一个字段可以有多个标签,在引用该字段的record 中可以使用默认标签
也可以使用其他标签
比如PS中的核心字段EMPLID 就有很多标签,在HCM系统可以是工号,ID ,员工ID,如果在学校使用可能就是学号
PSDBFLDLABLLANG
字段国际化表 重要字段为语言代码
PSXLATDEFN
转换值定义表 (当字段类型为char 且长度小于等于4可用)
比如性别字段SEX
PSXLATITEM
字段枚举值列表(当字段类型为char 且长度小于等于4可用)
该表有生效日期和生效状态(枚举值的变化和描述的变化)
比如上图性别字段的枚举值 F,M,U就存在这张表里
PSXLATITEMLANG
字段枚举值列表多语言表(当字段类型为char 且长度小于等于4可用),国际化用
比如上图的SEX字段,中文语言环境 F,M,U 值对应的描述是女,男,未知
英文语言环境下对应的描述是Female,Male,UNKOWN
这时如果基语言是中文的话,英文枚举值的描述就要存在这张表中
注意语言代码,以及没有生效状态