1

ソース クエリは、必要な XML を 1 つの変数で返します。SSIS では、OLE アダプターから返された変数をどのように取得し、最上位の各リーフでファイルに分割するのですか。私のサンプル データの場合、提出タイプ タグの新しいファイルを開始したいのですが、ファイル名は日付と患者 ID になります。したがって、患者ごとに新しいファイルが作成されます。

サンプルデータ。

<submission type="HOSPITAL" data="CLINICAL" version="1.0" action-code="ADD">
    <provider>
        <provider-id>120129</provider-id>
        <patient>
            <birthdate>07-26-1925</birthdate>
            <sex>F</sex>
            <race>1</race>
            <ethnic>N</ethnic>
            <postal-code>32142</postal-code>
            <episode-of-care measure-set="PN">
                <admit-date>09-13-1987</admit-date>
                <discharge-date>09-14-1988</discharge-date>
                <pthic/>
                <patient-id>7228</patient-id>
                <detail answer-code="3" row-number="0" question-cd="ANOTHERINF"/>
                <detail answer-code="Y" row-number="0" question-cd="ANTIALLERGY"/>
            </episode-of-care>
        </patient>
    </provider>
</submission>
<submission type="HOSPITAL" data="CLINICAL" version="1.0" action-code="ADD">
    <provider>
        <provider-id>168729</provider-id>
        <patient>
            <birthdate>07-26-1835</birthdate>
            <sex>F</sex>
            <race>1</race>
            <ethnic>N</ethnic>
            <postal-code>39142</postal-code>
            <episode-of-care measure-set="PN">
                <admit-date>09-13-1986</admit-date>
                <discharge-date>09-14-1987</discharge-date>
                <pthic/>
                <patient-id>888</patient-id>
                <detail answer-code="3" row-number="0" question-cd="ANOTHERINF"/>
                <detail answer-code="Y" row-number="0" question-cd="ANTIALLERGY"/>
            </episode-of-care>
        </patient>
    </provider>
</submission>
4

1 に答える 1

1

警告: この回答は、現時点ではすべて理論上のものです。興味深い質問だと思いますし、私たち自身のプロジェクトが同様のことをする必要があるかもしれない将来のポイントを見ることができたので、私は今夜自分でそれをやろうとします. さらに、SSIS の新しいアプローチを学ぶのも好きです。

とにかく、これが私の理論です。

Foreach ループ コンテナー

  • コレクションの列挙子を Foreach NodeList 列挙子に変更します
  • ドキュメント ソースを XML に変更します (変数、クエリ結果などの形式で)
  • OuterXPathString を //Submission に変更します
  • ループで xml の内部コンテンツをデータフローを介してフラット ファイルの宛先に渡す
  • Sumissionまた、途中で要素のプロパティを抽出する必要があります

私が言ったように、これは理論的なものです - 私が考えていないいくつかの落とし穴があるかもしれませんが、私は次の 24 時間以内に動作するプロトタイプで戻ってきます (他の誰かがより良い答えを持っていない限り)。

于 2012-10-12T00:33:55.117 に答える