2013-05-27 44 views
3

我有一個分析視圖和一個.xsodata將它公開給web。問題是如何形成訪問url?這裏的HANA文檔是不夠的,對於主持的SCN來說也是一樣。如何使用odata訪問分析視圖?

這裏是我的func_x_cview.xsodata:

service namespace "CTag" { 
    "MyPackage::FUNC_X_CALC_VIEW" as "CView" keys generate local "ID" 
    parameters via entity "InputParams" ; 
} 

http://awshana:8000/package/path/to/xsodata/file/$metadata顯示:

<EntityType Name="InputParamsType"> 
    <Key> 
     <PropertyRef Name="ATTRIBUTE"/> 
     <PropertyRef Name="ATTRIBUTE_VALUE"/> 
     <PropertyRef Name="category"/> 
     <PropertyRef Name="from_date"/> 
     <PropertyRef Name="process"/> 
     <PropertyRef Name="to_date"/> 
    </Key> 
    <Property Name="ATTRIBUTE" Type="Edm.String" Nullable="false" MaxLength="50"/> 
    <Property Name="ATTRIBUTE_VALUE" Type="Edm.String" Nullable="false" MaxLength="100"/> 
    <Property Name="category" Type="Edm.String" Nullable="false" MaxLength="50"/> 
    <Property Name="from_date" Type="Edm.DateTime" Nullable="false"/> 
    <Property Name="process" Type="Edm.String" Nullable="false" MaxLength="50"/> 
    <Property Name="to_date" Type="Edm.DateTime" Nullable="false"/> 
    <NavigationProperty Name="Results" Relationship="CTag.InputParams_CViewType" 
        FromRole="InputParamsPrincipal" 
        ToRole="CViewDependent"/> 
</EntityType> 

應該是什麼訪問URL? xsodata是否需要調整?

感謝

- 編輯 -

當試圖通過類似建議網址ongis-名手到http://awshana:8000/Pkg/Proj_X/services/tagA.xsodata/InputParams%28%27category%27=%27abcd%27%29/Results?$select=exception_name然後我得到像下面這樣的錯誤:

<error> 
    <code/> 
    <message xml:lang="en-US"> 
    No property ''category'' exists in type 'CTag.InputParamsType'. 
    </message> 
</error> 

這是令人困惑,因爲我們可以在$metadata查詢中看到名爲InputParamsType的實體中名爲category的屬性。

拆除周圍category單引號(也試過雙引號)給出 http://awshana:8000/Pkg/Proj_X/services/tagA.xsodata/InputParams%28category=%27abcd%27%29/Results?$select=exception_name

<error> 
    <code/> 
    <message xml:lang="en-US"> 
    The number of keys specified in the URI at position 27 does not match number of key properties for the resource 'CTag.InputParamsType'. 
    </message> 
</error> 

因此,需要一個單引號。

更接近但仍然是同樣的問題。我需要以某種方式限定每個參數名稱嗎?

謝謝。

+0

請不要把標籤信息在您的標題。這裏的標記系統非常擅長對事物進行分類,並且不需要幫助。 :-)請參閱[應該在其標題中是否包含「標籤」?](http://meta.stackexchange.com/q/19190/172661)。謝謝。 –

+0

感謝您的更正 – Dinesh

回答

2

可能有點晚:但是你必須爲每個關鍵參數指定一個值。 另請注意,時間戳必須以ODatas Edm.DateTime格式指定。

實例爲您服務:

 http://server:8080/pathToService/tagA.xsodata/InputParams(ATTRIBUTE='?',ATTRIBUTE_VALUE='?',category='?',from_date=datetime'2014-01-01T00:00:00',process='?',to_date=datetime'2014-09-01T00:00:00')/Results