2013-07-08 99 views
0

我正在爲HRIS項目導入一個.CSV文件,該文件將報告新員工和終止。 我有一個報告顯示以下日期。按日期分解數據

|PersNo|Name|EntryDate|TermDate| 

我想使之與期限日期的人進入一個數據塊,並NewHire日期的人去到另一個DB分裂的日期。

我認爲條件拆分是答案,但它似乎並不想工作。 我設置這樣的條件:

|1|EntryDate == EntryDate| 
|2|TermDate == TermDate| 

我也想過一個緩慢變化的維度。 創建一個員工表,其中包含將引用Hire/Fire Report中的信息的所有員工信息,並將Term Term添加到任何具有期限日期的員工(使用員工編號作爲關係)。

任何想法,我應該如何發展,歡迎。

+0

我得到了包成功運行,但沒有數據運行到數據庫。 –

+0

我在多個區域啓用了我的數據查看器,看起來像條件​​拆分是導致問題的原因。數據似乎停在那裏,並沒有經過。我有默認設置去NewHire和其他人的條款,但我不認爲我有這個設置正確。 –

+1

我的一般目的是在你的布爾邏輯中添加一個「派生列」。爲了獲得更好的列名稱,將它們稱爲「Option1」和「Option2」。在派生列之後並在條件分割之前拍攝數據查看器並觀察值。我懷疑@mike Henderson是否正確,因爲你的數據中有NULL。更不用說你的邏輯本身似乎是錯誤的(t​​ermDate條件何時會得到滿足?) – billinkc

回答

2

您可能會檢查您的狀況中是否有空值。例如,ISNULL([TermDate]) == FALSE可能表示要將行發送到終止目標。

0

另一個要考慮的問題是員工可能有多個聘用和終止日期,並且單個記錄可能無法提供完整和準確的報告,具體取決於您的要求。

有兩種方法可以解決這個問題。要麼明確地假定僱用日期是最近的僱用日期,並且終止日期是最近的終止日期,並且假定如果最近僱用日期是在僱員最近終止日期之後僱員仍在工作。

更好的選擇是爲每個員工保存一堆有效的日期記錄,以顯示一段時間內的每筆交易。使用該方法,您可以提供更好的歷史比較。爲了更加細緻,您可以考慮添加一個遞增的有效序列,以便在同一天記錄多個交易(如PeopleSoft)。