Данные без разделителей
файл считается «истинно плоским», если в файле данных отсутствуют разделители и поля имеют фиксированную ширину. В этом случае для определения длины каждого поля используется атрибут max-length в элементе «Field».
В данных фиксированной длины, значения данных часто дополнятся для обеспечения расположения полей в правильных позициях. Для этого используется атрибут trailing-chars. Этот атрибут определяет символы, которые можно включить после фактических данных и которые будут автоматически отброшены перед записью в формате XML. Кроме того, обработчик FSD использует атрибут trailing-chars для определения подходящего символа-заполнителя при преобразовании данных из формата XML обратно в плоский формат.
Пример FSD с полями фиксированной длины:
<?xml encoding='UTF-8' version='1.0' ?> <schema xmlns='http://www.infor.com/2017/TD/SSTransform/fsd/' version='1.0'> <sequence output='no'> <record max-occur='0' name='parent'> <field name='child1' max-length='20' trailing-chars=' '/> <field name='child2' max-length='20' trailing-chars=' '/> </record> </sequence> </schema>
Пример входных данных для этого FSD:
Child Data 1 Child Data 2 Child Data 3 Child Data 4
Пример выходных данных для этого FSD:
<parent> <child1>Child 1 Data</child1> <child2>Child 2 Data</child2> </parent> <parent> <child1>Child 3 Data</child1> <child2>Child 4 Data></child> </parent>