Akhil Madivada Ответов: 0

Создать пакет в ssis для XML файла и разобрать его и получить необходимые столбцы в таблице SQL


Привет, ребята, я работаю над SSIS, мой вопрос в том, что я хочу написать пакет ssis для анализа XML-файла, а выходные данные должны храниться в базе данных.
фактический вывод должен быть таким в базе данных:
metername, серийный номер, meterreadingid,medaitype,installdate
а вот и код

-<AMRDEF CreationTime="2013-08-09 00:18:42" version="7.0" Purpose="AMRDataRequest">


-<MeterReadings Purpose="OnRequestRead" CollectionTime="2013-08-09 19:57:11" Initiator="OnRequest" SourceIrn="30" SourceName="coll_0591_stuart" Source="Remote" Irn="21">

<Meter MediaType="900 MHz" ObservesDaylightSavings="true" TimeZoneOffset="300" Timezone="(GMT-05:00) Eastern Time (US & Canada)" TimeZoneIndex="11" Location="" SdpIdent="" AccountName="" AccountIdent="" RemovalDate="" InstallDate="2013-05-01 20:28:09" Description="" MeterType="REX" SerialNumber="03310266" IsActive="true" MeterName="03310266" MeterIrn="21"/>


+<ConsumptionData>


-<ConsumptionData>

<ConsumptionSpec Multiplier="1" MeasurementPeriod="EndOfIntervalSnapshot" TouBucket="Total" Direction="Received" UOM="kWh"/>

<Reading Value="0" TimeStamp="2013-08-09 00:00:00"/>

</ConsumptionData>


-<LoadProfileSummary>

<Channel Multiplier="0.1" Direction="Delivered" UOM="kWh" SumOfIntervalValues="155316.3" ReadingRangeEndTimestamp="2013-08-09 00:00:00" ReadingRangeStartTimestamp="2013-08-02 00:00:00" FirstIntervalTimestamp="2013-08-02 00:15:00" NumIntervalsRead="675" IntervalSeconds="900"/>

<Channel Multiplier="0.1" Direction="Received" UOM="kWh" SumOfIntervalValues="0" ReadingRangeEndTimestamp="2013-08-09 00:00:00" ReadingRangeStartTimestamp="2013-08-02 00:00:00" FirstIntervalTimestamp="2013-08-02 00:15:00" NumIntervalsRead="675" IntervalSeconds="900"/>

</LoadProfileSummary>


+<IntervalData>









































-<IntervalData>

<IntervalSpec Multiplier="0.1" Direction="Received" UOM="kWh" TimestampEnd="2013-08-09 00:00:00" TimestampStart="2013-08-02 00:15:00" Channel="2" Interval="15"/>

<Reading TimeStamp="2013-08-02 00:15:00" RawReading="0"/>

<Reading TimeStamp="2013-08-02 00:30:00" RawReading="0"/>

<Reading TimeStamp="2013-08-02 00:45:00" RawReading="0"/>

<Reading TimeStamp="2013-08-02 01:00:00" RawReading="0"/>

<Reading TimeStamp="2013-08-02 01:15:00" RawReading="0"/>

<Reading TimeStamp="2013-08-02 01:30:00" RawReading="0"/>

<Reading TimeStamp="2013-08-02 01:45:00" RawReading="0"/>


Что я уже пробовал:

что я сделал: в этом пакете я не написал никакого кода для синтаксического анализа.вот вывод я получаю прямые заголовки и я не получаю все данные из файла входных данных и мне нужно прочитать данные для каждого заголовка и получить каждое значение чтения,
может ли кто-нибудь помочь мне в этой задаче, как создать пакет SSIS, эта помощь очень ценится,
Спасибо.

PIEBALDconsult

SSIS делает XML. В чем проблема?

Akhil Madivada

да, вы правы, SSIS делает XML, но мне трудно создавать пакеты для моих XML-данных ,мне нужен вывод с metername,серийным номером,meterreadingid,medaitype, installdate из XML-данных. Я не знаю, как создать пакет в SSIS, пожалуйста, помогите мне в этом.
Спасибо Вам за ваш ответ.

0 Ответов