Dynamics AX 2012 に、HcmWorker テーブルと HcmEmployment テーブル (とりわけ) で構成される AOT クエリがあります。私の問題は、(SSRS ではなく) レポートを作成するとき、またはこのクエリを使用するときに、HcmEmployment で有効な時間状態を持つ従業員のみを取得することです。
現在雇用されていない場合でも、このテーブルにレコードがあるすべての従業員を一度だけ取得したいと考えています。最適な解決策は、HcmEmployment から現在の雇用のレコードを取得することです (存在する場合)。そうでない場合は、開始日が「今」より前の最後のレコードを取得します。ただし、最後の開始日と結合するソリューションを受け入れることができます。
使用するたびにコードを追加する必要のないソリューション (つまり、AOT クエリで解決する) を希望します。
コードからのクエリで validTimeStateDateTimeRange プロパティを設定しようとしましたが、従業員が複数の雇用を持っている場合、重複した行が発生しました。
HcmEmployment データソースを ExistsJoin と firstOnly に設定すると、ビューでは機能しますが、レポートでは機能しません (レコードはまだ重複しています) :( ユーザーが DefaultDimension でフィルタリングできる必要があるため、レポートでこのビューを使用することはオプションではありませんHcm雇用から。
どうすればこの問題を解決できますか?