Получение информации о проектах


URL: components/services/APIProjects.asmx

Метод GetProjects

Возвращает все проекты, согласно переданному фильтру проектов и заданной сортировке. В фильтр можно задавать любое поле проекта.

Также можно назначать несколько фильтров, соединяя их по «И» или по «ИЛИ». Получение информации о ресурсах проекта вынесено в отдельный метод: Получение ресурсов по проекту.

Передаваемые параметры

ПараметрОписание
ASPNETSessionIdИдентификатор сессии
filterWrappers*Массив фильтра возвращаемых проектов
FilterWrapper*Элемент фильтра
FieldЭлемент фильтра. Возможные значения:
UID;
ParentProjectId;
ProjectTypeId;
Name;
Status;
PercentComplete;
PlannedStartDate;
PlannedEndDate;
ActualStartDate;
ActualEndDate;
OwnerId;
ResponsiblePersonId.
ValueЗначение передаваемого параметра в FieldId
OperationВозможные значения: =; >, >=, <, ⇐, LIKE, !=.
По умолчанию значение «=».
GroupOrПризнак добавления фильтра.
По умолчанию False - добавление по «И»
sortWrappersМассив с параметрами сортировки проектов
SortWrapperЭлемент сортировки
FieldЭлемент сортировки. Возможные значения:
UID;
ParentProjectId;
Name;
Status;
PercentComplete;
PlannedStartDate;
PlannedEndDate;
ActualStartDate;
ActualEndDate;
OwnerId;
ResponsiblePersonId;
WBS.
DescendingПорядок сортировки.
По умолчанию false - сортировка по возрастанию.
HierarchicalФлаг для получения информации обо всех подчиненных объектах (всей иерархии подчиненных объектов).
True - вернется информация обо всех объектах, попавших в фильтр и их дочерних на всю глубину вложенности.
False - вернется информация только об объектах, попавших в фильтр.

* - параметры, обязательные для заполнения.

Возможные статусы проектов:

  • «1» - Предполагаемый;
  • «3» - В работе;
  • «4» - Требует внимания;
  • «5» - Наивысший приоритет;
  • «6» - Завершен;
  • «7» - Отменен;
  • «8» - Отложен;
  • «9» - Готов к проверке.
<?xml version="1.0" encoding="utf-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:str="http://streamline/">
   <soapenv:Header/>
   <soapenv:Body>
      <str:GetProjects>
         <str:ASPNETSessionId>string</str:ASPNETSessionId>
         <str:filterWrappers>
            <str:FilterWrapper>
               <str:Field>string</str:Field>
               <str:Value>string</str:Value>
               <str:Operation>string</str:Operation>
               <str:GroupOr>boolean</str:GroupOr>
            </str:FilterWrapper>
         </str:filterWrappers>
         <str:sortWrappers>
            <str:SortWrapper>
               <str:Field>string</str:Field>
               <str:Descending>boolean</str:Descending>
            </str:SortWrapper>
         </str:sortWrappers>
         <str:Hierarchical>boolean</str:Hierarchical>
      </str:GetProjects>
   </soapenv:Body>
</soapenv:Envelope>

Возвращаемые параметры

ПараметрОписание
GetProjectsResultМассив с проектами
ProjectWrapperПараметры проекта
UIDИдентификатор проекта
ParentProjectIdИдентификатор родительского проекта
NameНаименование проекта
ProjectTypeIdИдентификатор типа объекта (Директория/Проект/Задача)
ProjectTypeТип объекта (Директория/Проект/Задача)
StatusСтатус проекта
PercentCompleteПроцент выполнения проекта
SystemStartDateРасчетная дата начала проекта
SystemEndDateРасчетная дата окончания проекта
PlannedStartDateПланируемая дата начала проекта
PlannedEndDateПланируемая дата окончания проекта
ActualStartDateФактическая дата начала проекта
ActualEndDateФактическая дата окончания проекта
OwnerIdИдентификатор руководителя проекта
ResponsiblePersonIdИдентификатор исполнителя проекта
PlannedDurationПлановая длительность проекта
DurationUnitЕдиница измерения плановой длительности проекта. Возвращаемые значения: HOURS, DAYS, WEEKS, MONTHS, YEARS
StartDateConstraintТип ограничения даты начала проекта. Возвращаемые значения: MUST_START_ON, START_NO_EARLIER_THAN, AS_SOON_AS_POSSIBLE, AS_LATE_AS_POSSIBLE, NOT_SET (ограничение не установлено)
EndDateConstraintТип ограничения даты окончания проекта. Возвращаемые значения: MUST_FINISH_ON, FINISH_NO_EARLIER_THAN, FINISH_NO_LATER_THAN, NOT_SET (ограничение не установлено)
CalendarIdИдентификатор производственного календаря проекта
WBSПорядок записей, в соответствии с иерархической структурой работ
PlannedCost(с версии 3.29) Значение плановых трудозатрат
Если объект не имеет плановых трудозатрат, то в параметре PlannedCost возвращается значение null
CalculatedCost(с версии 3.29) Значение расчетных трудозатрат
Если объект не имеет расчетных трудозатрат, то в параметре CalculatedCost возвращается значение null

Сортировка по WBS позволяет выводить записи в соответствии с иерархической структурой работ (порядок, в котором они расположены в диаграмме Ганта), но в виде плоского списка.

Иерархическая структура:

  • Проект 1
    • Задача 1
      • Подзадача 1
      • Подзадача 2
    • Задача 2

Сортировка задач по WBS в результате выполнения метода:

Проект 1
Задача 1
Подзадача 1
Подзадача 2
Задача 2

<?xml version="1.0" encoding="utf-8"?>
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
   <s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
      <GetProjectResponse xmlns="http://streamline/">
         <GetProjectResult>
            <UsePlannedCost>boolean</UsePlannedCost>
            <str:PlannedCost>double</str:PlannedCost>
            <CalculatedCost>int</CalculatedCost>
            <UID>string</UID>
            <ParentProjectId>string</ParentProjectId>
            <Name>string</Name>
            <ProjectTypeId>string</ProjectTypeId>
            <ProjectType>string</ProjectType>
            <Status>int</Status>
            <PercentComplete>int</PercentComplete>
            <SystemStartDate>dateTime</SystemStartDate>
            <SystemEndDate>dateTime</SystemEndDate>
            <ActualStartDate>dateTime</ActualStartDate>
            <ActualEndDate>dateTime</ActualEndDate>
            <PlannedDuration>double</PlannedDuration>
            <DurationUnit>string</DurationUnit>
            <StartDateConstraint>string</StartDateConstraint>
            <CalendarId>guid</CalendarId>
            <Order>int</Order>
            <OwnerId>string</OwnerId>
            <ResponsibleId>string</ResponsibleId>
            <ResourceAssignments>
               <str:ResourceAssignmentWrapper>
                  <str:PersonId>guid</str:PersonId>
                  <str:Value>double</str:Value>
               </str:ResourceAssignmentWrapper>
            </str:ResourceAssignments>
         </GetProjectResult>
      </GetProjectResponse>
   </s:Body>
</s:Envelope>