Преобразование данных для больших данных в файле

Я новичок в ансамбле и у меня есть разъяснения относительно преобразований данных.

У меня есть 2 схемы следующим образом,

PatientID,
Patient Name,
Patient Address (combination of door number, Street, District, State)

и другая схема как,

PatientID,
Patient Name,
Door Number
Street
District
State

Теперь есть входящий текстовый файл с тысячами записей в соответствии с первой схемой (разделенных '|'), как показано ниже,

1001|John|220,W Maude Ave,Suisun City, CA

вот так во входном файле 1000 записей

Мое требование состоит в том, чтобы преобразовать это согласно второй схеме (то есть, чтобы отделить Адрес) и сохранить в файле как,

1001|John|220|W Maude Ave|Suisun City|CA

Одним из решений, которое я реализовал, было прохождение каждой строки в файле и замена адреса в адресе на "|".

У меня вопрос, можем ли мы сделать это через DTL. Если ответ "да", то как нам пройти через тысячи записей, используя DTL?

Будет ли DTL трудоемким? потому что нам нужно загрузить схему, а затем сделать преобразования.

Пожалуйста помоги.

2 ответа

Вы можете использовать DTL с любым классом, унаследованным от Ens.VirtualDocument или%XML.Adaptor, фактически Ensemble использует словарь классов для представления схемы, поэтому для базовых классов проблем не возникает, если вы расширяете% XML. Adsetor Ensemble может представлять ее. В случае виртуальных документов объект должен быть установлен DocType.

Для того, чтобы сделать цикл есть в DTL

Да, DTL могут анализировать тысячи записей. Вы можете сделать следующее: 1) Создать карту записей для анализа входящего файла со схемой 1 2) Определить промежуточный объект, который сопоставляет поля схемы 2 со свойствами объекта 3) Создать DTL, исходным объектом которого является объект карты записей из 1 выше и цель - объект от 2 выше.

Другие вопросы по тегам