Получение неактивных сотрудников

У меня есть следующий запрос, использующий Invantive Query Tool для подключения к NMBRS.

select e.number
,      es.EmployeeId  
,      e.displayname
,      es.ParttimePercentage
,      es.startdate
from   Nmbrs.Employees.EmployeeSchedules es
left 
outer 
join   Nmbrs.Employees.Employees e 
on     es.EmployeeId = e.id 
order 
by     e.displayname
,      es.startdate

(Я хочу получить все мутации в процентах/графике неполного рабочего дня)

Однако Nmbrs.Employees.Employees показывает только активных сотрудников. И мне это нужно, потому что это показывает, что идентификатор сотрудника, как показано в Nmbrs.Employees.EmployeeSchedules, не является идентификатором сотрудника, отображаемым в пользовательском интерфейсе, а является внутренним идентификатором.

Я заметил, что Nmbrs.Employees.Employees имеет дополнительное предложение where (согласно документации):

Additional Where Clause:
- CompanyId
- active

Следующий запрос

select * from Nmbrs.Employees.Employees where active = 1

дает ошибку:

Неизвестный идентификатор «активен».

Consider one of the following: Nmbrs.Employees.Employees.PartitionID,     Nmbrs.Employees.Employees.Id, Nmbrs.Employees.Employees.Number,     Nmbrs.Employees.Employees.DisplayName, Employees.Employees.PartitionID, Employees.PartitionID, PartitionID, Employees.Employees.Id.

Active не упоминается, поэтому я не знаю, можно ли это использовать.


person RS Finance    schedule 19.06.2018    source источник
comment
Вы хотите получить информацию о неактивных сотрудниках, и находятся ли они в данный момент в представлении? Или у вас теперь есть активные, и вы хотите, чтобы неактивные тоже были включены?   -  person Guido Leenders    schedule 19.06.2018
comment
У меня сейчас только активные и нужны активные и неактивные сотрудники. Мне нужно иметь все изменения процента неполного рабочего времени за последний год для всех сотрудников, которые работали в прошлом году.   -  person RS Finance    schedule 20.06.2018


Ответы (1)


active — это серверный фильтр на Nmbrs.nl. По умолчанию установлено значение «активный». Не спрашивайте меня, почему они решили, что API отражает пользовательский интерфейс; это странно, но это так.

Чтобы получить всех сотрудников из одной или нескольких компаний (разделов), используйте:

use all

select * from employeesall

OR

select * from employeesinactive

Это недавние дополнения к поддерживаемым таблицам API Nmbrs.nl.

Обратите внимание, что выходные данные НЕ содержат информацию о том, активен ли сотрудник. Если вам это тоже нужно, используйте представление или:

 select 'active' type
 ,      t.*
 from   nmbrs..employeesactive t
 union all
 select 'inactive' type
 ,      t.*
 from   nmbrs..employeesinactive t
person Guido Leenders    schedule 22.06.2018