2013-07-08 4 views
0

Я импортирую файл .CSV для проекта HRIS, который будет сообщать о новых нарядах и завершении. У меня есть один отчет, который показывает следующую дату.Сплит данные по дате

|PersNo|Name|EntryDate|TermDate| 

Я хочу, чтобы разделить дату, так что люди с датами Срочные идут в одну БД, и люди с датами NewHire перейти в другую БД.

Я думаю, что условное разделение - это ответ, но он, похоже, не хочет работать. я имел условия, установленные в качестве таковых:

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

Я также думал о медленно изменяющемся измерении. Создание таблицы сотрудников со всей информацией о сотруднике, которая будет ссылаться на информацию из отчета о найме/пожаре и добавить дату окончания для любого сотрудника (используя номер сотрудника в качестве отношения), который имеет дату срока.

Любые мысли о том, как я должен развиваться, приветствуются.

+0

Я получил пакет для успешной работы, но данные не доходят до БД. –

+0

Я включил средство просмотра данных в нескольких областях, и похоже, что условное разделение вызывает проблему. Кажется, что данные здесь останавливаются и не проходят. У меня есть настройка по умолчанию, чтобы перейти к NewHire и другим к Условиям, но я не думаю, что у меня это настроено правильно. –

+1

Моя общая рекомендация состоит в том, чтобы добавить «Derived Column» с вашей логической логикой. Назовите их «Вариант1» и «Параметр2», если они не нужны для более удобных имен столбцов. Удалите средство просмотра данных после производного столбца и до условного разделения и наблюдайте значения. Я подозреваю, что @mike Хендерсон прав, поскольку у вас есть NULL в ваших данных. Не говоря уже о том, что ваша логика кажется неправильной (когда условие TermDate будет когда-либо удовлетворено?) – billinkc

ответ

2

Вы можете проверить наличие нулей в своем состоянии. Например, ISNULL([TermDate]) == FALSE может указывать строку, которая должна быть отправлена ​​в конечный пункт назначения.

0

Еще одна вещь, о которой стоит подумать, - это возможность того, что у сотрудника будет несколько дат найма и окончания, и что одна запись может не предоставлять полную и точную отчетность в зависимости от ваших требований.

Существует два способа обойти это. Либо прямо предположите, что дата найма является последней датой найма, и что дата прекращения является последней датой прекращения действия и предполагает, что если последняя дата найма после последней даты прекращения действия работника все еще работает.

Лучшим вариантом является сохранение стопки эффективных датированных записей для каждого сотрудника, который показывает каждую транзакцию в течение определенного периода времени. Используя этот метод, вы можете лучше сравнить исторические сравнения. Чтобы получить еще более подробную информацию, вы можете подумать о добавлении увеличивающейся эффективной последовательности для записи нескольких транзакций в тот же день (например, PeopleSoft).

Смежные вопросы