2016-10-06 12 views
1

さまざまなSharepointリストからデータを読み取る40以上の別々のパッケージでSSISプロジェクトを継承しました。接続はすべてOData Feedsです。フィードはすべてのファイルのリストです。私は各ファイルのURLにアクセスしようとしていますが、その情報はSSISが読むことができるフィードの部分には表示されません。SSISパッケージのSharePoint ODataフィードから余分な情報にアクセス

フィードから返されたデータを見ると、「プロパティ」の子要素の情報しか表示されません。フィードから他の情報にアクセスする方法はありますか?具体的には、コンテンツノードの「src」。

私はパッケージを編集するためにVS 2015を使用しています。ここで

は、私が読んしようとしているフィードのサンプルです:

<feed 
    xml:base="http://www.sharepointURL.com/consumer/_vti_bin/listdata.svc/" 
    xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" 
    xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" 
    xmlns="http://www.w3.org/2005/Atom"> 
<title type="text">ConsumerInquiryLibrary</title> 
<id>http://www.sharepointURL.com/consumer/_vti_bin/listdata.svc/ConsumerInquiryLibrary</id> 
<updated>2016-10-05T19:27:55Z</updated> 
<link rel="self" title="ConsumerInquiryLibrary" href="ConsumerInquiryLibrary" /> 
<entry m:etag="W/&quot;1&quot;"> 
    <id>http://www.sharepointURL.com/consumer/_vti_bin/listdata.svc/ConsumerInquiryLibrary(3)</id> 
    <title type="text"></title> 
    <updated>2009-01-26T13:55:24-05:00</updated> 
    <author> 
    <name /> 
    </author> 
    <link m:etag="&quot;{00000000-0000-0000-0000-000000000000},1&quot;" rel="edit-media" title="ConsumerInquiryLibraryItem" href="ConsumerInquiryLibrary(3)/$value" /> 
    <link rel="edit" title="ConsumerInquiryLibraryItem" href="ConsumerInquiryLibrary(3)" /> 
    <link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/CreatedBy" type="application/atom+xml;type=entry" title="CreatedBy" href="ConsumerInquiryLibrary(3)/CreatedBy" /> 
    <link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/ModifiedBy" type="application/atom+xml;type=entry" title="ModifiedBy" href="ConsumerInquiryLibrary(3)/ModifiedBy" /> 
    <link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/CheckedOutTo" type="application/atom+xml;type=entry" title="CheckedOutTo" href="ConsumerInquiryLibrary(3)/CheckedOutTo" /> 
    <category term="Microsoft.SharePoint.DataService.ConsumerInquiryLibraryItem" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme" /> 

    <!-- I need access to the URL In the following Node --> 
    <content type="application/octetstream" src="http://www.sharepointURL.com/consumer/Consumer%20Inquiry%20Library/DocumentTitle.pdf" /> 
    <m:properties xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices"> 
    <!-- It appears I only have access to the following elements --> 
    <d:Id m:type="Edm.Int32">3</d:Id> 
    <d:ContentTypeID>00000000-0000-0000-0000-000000000000</d:ContentTypeID> 
    <d:ContentType>Document</d:ContentType> 
    <d:Created m:type="Edm.DateTime">2009-01-26T13:55:24</d:Created> 
    <d:CreatedById m:type="Edm.Int32">20</d:CreatedById> 
    <d:Modified m:type="Edm.DateTime">2009-01-26T13:55:24</d:Modified> 
    <d:ModifiedById m:type="Edm.Int32">20</d:ModifiedById> 
    <d:CopySource m:null="true"></d:CopySource> 
    <d:ApprovalStatus>0</d:ApprovalStatus> 
    <d:Path>/xxx/yyy</d:Path> 
    <d:CheckedOutToId m:type="Edm.Int32" m:null="true"></d:CheckedOutToId> 
    <d:Name>DocumentTitle.pdf</d:Name> 
    <d:VirusStatus>42282</d:VirusStatus> 
    <d:IsCurrentVersion m:type="Edm.Boolean">true</d:IsCurrentVersion> 
    <d:Owshiddenversion m:type="Edm.Int32">1</d:Owshiddenversion> 
    <d:Version>1.0</d:Version> 
    <d:Title m:null="true"></d:Title> 
    <!-- End of the elements I can access--> 
    </m:properties> 
</entry> 
</feed> 

答えて

0

プロジェクトの他の多くの側面で働いた後、私は最終的にこの問題に周りに戻ってきました。

私はフィードから利用可能なすべてのデータを調べ、実行可能なソリューションを思いついた。

"Path"プロパティをサイトのベースURL(プロジェクトパラメータ経由で渡す)と "Name"を組み合わせてファイルリーダーを構築することができました。

1つのパッケージがダウンし、44が行く!