第四十六章 开发Productions - ObjectScri
2023-07-02 本文已影响0人
Cache技术分享
第四十六章 开发Productions - ObjectScript Productions - 使用复杂记录映射器
使用复杂记录映射器
如果消息格式由多个异构记录组成,可以使用 Complex Record Mapper
并使用内置的文件或 FTP
服务和操作来处理这些复杂的记录。通常,这些复杂的记录有一个标题记录,后面跟着一个记录模式,并以一个尾记录结束。这些记录可以是固定字段记录或分隔记录,并且可以是可选的和重复的。通常,记录具有标识记录类型的前导数据。
对于更简单的记录,请使用普通的 Record Mapper
工具。另请参阅高效处理成批记录。
简介
复杂的记录映射可以描述包含以下内容的结构化记录:
- 一个可选的头记录。
- 元素序列,其中每个元素可以是由
RecordMap
或序列定义的记录。一个序列可以包含一个记录序列和其他序列。 - 可选的
trailer record
.。
序列中的记录可以是定界记录或固定宽度的记录。尽管可以在复杂的记录映射中混合使用定界记录和固定宽度记录,但通常所有记录都是定界记录或都是固定宽度记录。
以下分隔的示例数据可以用复杂的记录映射来描述。数据包括标识大学学期的标题以及有关学生和每个学生参加的课程的信息。
SEM|194;2012;Fall;20
STU|12345;Adams;John;Michael;2;john.michael.adams@example.com;617-999-9999
CLS|18.034;1;Differential Equations;4
CLS|21W.759;1;Writing Science Fiction;4
STU|12346;Adams;Jane;Michelle;3;jane.michelle.adams@example.com;
CLS|21L.285;1;Modern Fiction;3
CLS|7.03;1;Genetics;4
STU|12347;Jones;Robert;Alfred;1;bobby.jones@example.com;
CLS|18.02;1;Calculus;4
描述此数据的复杂记录映射包括:
- 由前导数据“
SEM|
”标识的标题记录。 - 一系列学生,其中每个学生包括:
- 由前导数据“
STU|
”标识的学生记录。 - 由前导数据“
CLS|
”标识的重复类记录。
- 由前导数据“
学生的顺序定义了复杂记录的重复结构,但不对应于数据中的记录。
复杂的记录映射定义了文件结构和对象结构。复杂记录映射文件服务使用复杂记录映射定义的文件结构解析文件,然后将数据存储在对象结构定义的对象中。复杂记录映射文件操作执行相反的操作——它获取对象中的数据并使用复杂记录映射定义的文件结构将其写出到文件中。