2017-05-16 21 views
0

私はデータを提供する1つのOdataサービスを持っており、このデータをテーブルに表示することができます。このアプリケーションをLaunchpadにデプロイします。これで、ログインしたユーザーがログインIDに従ってデータを取得する必要があります。だから私のユーザーIDがXXXXXならば、私はXXXXXのレコードを取得する必要があります。私はプロセスの流れを理解することができません。私たちがOdata自体でロジックを実装するか、それを表示する前に、すべてのデータを取得してモデルをUIでフィルタリングする必要があります。ログインしたユーザーからOdataサービスからデータを取得

よろしく、ODATA自体で MS

答えて

1

あなたはSY-unameでログインユーザにアクセスすることができます。そのユーザーを使用してデータをフィルタリングすることができます。あなたがいないUIで、以下のコード

var vUrl = "proxy/sap/bc/ui2/start_up"; 
var oxmlHttp = null; 
    oxmlHttp = new XMLHttpRequest(); 
    oxmlHttp.onreadystatechange = function() { 
     if (oxmlHttp.readyState == 4 && oxmlHttp.status == 200) { 
     var oUserData = JSON.parse(oxmlHttp.responseText); 
     vUser = oUserData.id; 
     } 
    }; 
    oxmlHttp.open("GET", vUrl, false); 
    oxmlHttp.send(null); 
0

あなたはサービスレベル(ODataのレベル)でこのような要件に対応すべきであることにより、ログインユーザにアクセスできるフロントエンドでは

OR

。 DPC_EXTクラスの変数SY-UNAMEは、ログインしたユーザーを指定します。だから、より多くの情報を派生させてレコードをフィルタリングする必要があります。

1

これは、小田でのみ処理する必要があります。

var storename = sap.ushell.Container.getService("UserInfo").getId(); 

を使用してユーザーIDを取得し、結果をフィルターに掛けて返信してください。

関連する問題