Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
product:api:list:updateproject [19.08.2021 08:35] – [Передаваемые параметры] holkinaproduct:api:list:updateproject [10.06.2025 07:13] (текущий) ekaterina.menkhuzina
Строка 3: Строка 3:
 Метод: **UpdateProject** Метод: **UpdateProject**
 =====Передаваемые параметры===== =====Передаваемые параметры=====
-^Параметр^Описание^ +^Параметр^Описание^Комментарии
-|ASPNETSessionId*|Идентификатор сессии| +|ASPNETSessionId|Идентификатор сессии|Обязательно для заполнения
-|Project|Массив значений проекта| +|Project|Массив значений проекта|
-|UID*|Идентификатор проекта| +|UID|Идентификатор проекта|Обязательно для заполнения
-|ParentProjectId|Идентификатор родительского проекта| +|ParentProjectId|Идентификатор родительского проекта|
-|Name|Название проекта| +|Name|Название проекта|
-|Status|Статус проекта.+|Status|Статус проекта|
-|PercentComplete|Процент выполнения| +|PercentComplete|Процент выполнения|
-|PlannedStartDate%%**%%|Планируемая дата начала проекта| +|PlannedStartDate|Планируемая дата начала проекта|Плановая дата начала игнорируется, если в параметре StartDateConstraint передано одно из значений: AS_SOON_AS_POSSIBLE, AS_LATE_AS_POSSIBLE, NOT_SET
-|PlannedEndDate%%**%%|Планируемая дата окончания проекта| +|PlannedEndDate|Планируемая дата окончания проекта|Плановая дата окончания игнорируется, если в параметре EndDateConstraint передано значение NOT_SET
-|ActualStartDate|Фактическая дата начала проекта| +|ActualStartDate|Фактическая дата начала проекта|
-|ActualEndDate|Фактическая дата завершения проекта| +|ActualEndDate|Фактическая дата завершения проекта|
-|OwnerId|Идентификатор руководителя проекта| +|OwnerId|Идентификатор руководителя проекта| <text type="danger"> Изменять ответственных в существующем объекте возможно только методом [[/product/api/list/delegateproject|delegate project]] </text> 
-|ResponsibleId|Идентификатор исполнителя проекта| +|ResponsibleId|Идентификатор исполнителя проекта| <text type="danger"> Изменять ответственных в существующем объекте возможно только методом [[/product/api/list/delegateproject|delegate project]] </text> 
-|ResourceAssignments|Массив назначенных ресурсов| +|ResourceAssignments|Массив назначенных ресурсов|
-|ResourceAssignmentWrapper|Массив параметров ресурса| +|ResourceAssignmentWrapper|Массив параметров ресурса|
-|PersonId|Идентификатор ресурса| +|PersonId|Идентификатор ресурса|
-|Value|Значение ресурса| +|Value|Значение ресурса|
-|PlannedDuration|Плановая длительность проекта| +|PlannedDuration|Плановая длительность проекта|
-|DurationUnit|Единица измерения плановой длительности проекта. Возвращаемые значения: HOURS, DAYS, WEEKS, MONTHS, YEARS| +|DurationUnit|Единица измерения плановой длительности проекта. Возвращаемые значения: HOURS, DAYS, WEEKS, MONTHS, YEARS|
-|StartDateConstraint%%****%%|Тип ограничения даты начала проекта. Передаваемые значения: MUST_START_ON, START_NO_EARLIER_THAN, AS_SOON_AS_POSSIBLE, AS_LATE_AS_POSSIBLE, NOT_SET (ограничение не установлено)| +|StartDateConstraint|Тип ограничения даты начала проекта. Передаваемые значения: MUST_START_ON, START_NO_EARLIER_THAN, AS_SOON_AS_POSSIBLE, AS_LATE_AS_POSSIBLE, NOT_SET (ограничение не установлено)|Если в параметре StartDateConstraint передано одно из значений: AS_SOON_AS_POSSIBLE, AS_LATE_AS_POSSIBLE, NOT_SET, то ограничение в плановой дате начала объекта будет удалено 
-|EndDateConstraint%%*****%%|Тип ограничения даты окончания проекта. Передаваемые значения: MUST_FINISH_ON, FINISH_NO_EARLIER_THAN, FINISH_NO_LATER_THAN, NOT_SET (ограничение не установлено)| +|EndDateConstraint|Тип ограничения даты окончания проекта. Передаваемые значения: MUST_FINISH_ON, FINISH_NO_EARLIER_THAN, FINISH_NO_LATER_THAN, NOT_SET (ограничение не установлено)|Если в параметре EndDateConstraint передано значение NOT_SET, то ограничение в плановой дате окончания объекта будет удалено
-|CalendarId|Идентификатор производственного календаря проекта| +|CalendarId|Идентификатор производственного календаря проекта|
-* -- параметры, обязательные для заполнения. \\ +|UsePlannedCost|''(с версии 3.29)'' Использовать значение плановых трудозатратпереданное в параметре ''PlannedCost''\\ Доступные значения:\\ • true;\\ • false (или null) - значение по умолчанию| 
-%%**%% -- плановая дата начала игнорируется, если в параметре StartDateConstraint передано одно из значений: AS_SOON_AS_POSSIBLE, AS_LATE_AS_POSSIBLE, NOT_SET. \\ +|PlannedCost|''(с версии 3.29)'' Значение плановых трудозатрат\\ Доступные значения:\\ • неотрицательные дробные значения (округляются до сотых);\\ • null| 
-%%***%% -- плановая дата окончания игнорируется, если в параметре EndDateConstraint передано значение NOT_SET. \\ +
-%%****%% -- если в параметре StartDateConstraint передано одно из значений: AS_SOON_AS_POSSIBLE, AS_LATE_AS_POSSIBLE, NOT_SET, то ограничение в плановой дате начала объекта будет удалено. \\ +
-%%*****%% -- если в параметре EndDateConstraint передано значение NOT_SET, то ограничение в плановой дате окончания объекта будет удалено\\+
 Возможные статусы проектов: Возможные статусы проектов:
-  * "1" -- Предполагаемый +  * "1"Не начат 
-  * "3" -- В работе +  * "3" - В работе 
-  * "4" -- Требует внимания +  * "6" - Завершен 
-  * "5" -- Наивысший приоритет +  * "7" - Отменен 
-  * "6" -- Завершен +  * "8" - Отложен 
-  * "7" -- Отменен +  * "9"На проверке 
-  * "8" -- Отложен +статусы с номерами 2, 4 и 5 устарели и больше не используются. 
-  * "9" -- Готов к проверке+
 Формат передаваемых дат должен быть типа ''YYYY-MM-DDThh:mm:ss'', например: ''2002-05-30T09:00:00'' Формат передаваемых дат должен быть типа ''YYYY-MM-DDThh:mm:ss'', например: ''2002-05-30T09:00:00''
   * YYYY указатель года   * YYYY указатель года
Строка 87: Строка 85:
 </soap:Envelope> </soap:Envelope>
 </code> </code>
 +
 +Пример запроса с передачей плановых трудозатрат (доступно ''с версии 3.29'') - добавлены необязательные передаваемые параметры ''UsePlannedCost'' и ''PlannedCost'':
 +
 +<code xml>
 +<?xml version="1.0" encoding="utf-8"?>
 +<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
 +  <soap:Body>
 +    <UpdateProject xmlns="http://streamline/">
 +      <contract>
 +        <ASPNETSessionId>string</ASPNETSessionId>
 +        <Project>
 +          <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>
 +          <PlannedStartDate>dateTime</PlannedStartDate>
 +          <PlannedEndDate>dateTime</PlannedEndDate>
 +          <ActualStartDate>dateTime</ActualStartDate>
 +          <ActualEndDate>dateTime</ActualEndDate>
 +          <Order>int</Order>
 +          <OwnerId>string</OwnerId>
 +          <ResponsibleId>string</ResponsibleId>
 +          <ResourceAssignments>
 +            <ResourceAssignmentWrapper xsi:nil="true" />
 +            <ResourceAssignmentWrapper xsi:nil="true" />
 +          </ResourceAssignments>
 +          <UsePlannedCost>boolean</UsePlannedCost>
 +          <PlannedCost>double</PlannedCost>
 +          <CalculatedCost>double</CalculatedCost>
 +          <PlannedDuration>double</PlannedDuration>
 +          <DurationUnit>string</DurationUnit>
 +          <StartDateConstraint>string</StartDateConstraint>
 +          <EndDateConstraint>string</EndDateConstraint>
 +          <CalendarId>guid</CalendarId>
 +        </Project>
 +      </contract>
 +    </UpdateProject>
 +  </soap:Body>
 +</soap:Envelope>
 +</code>
 +
 +Варианты комбинаций параметров и результат работы метода:
 +^UsePlannedCost^PlannedCost^Результат работы метода^
 +|true|Указан|Значение плановых трудозатрат установлено и равно значению, переданному в параметре ''PlannedCost'' \\ **Или**, если изменяемый объект иерархии узловой, значение текущих трудозатрат объекта не изменяется и значение, переданное в параметре ''PlannedCost'', игнорируется|
 +|false (или null)|Указан|Значение плановых трудозатрат не установлено\\ Значение, переданное в параметре ''PlannedCost'', игнорируется \\ Текущее значение трудозатрат объекта и их тип (плановые трудозатраты или расчетные трудозатраты) не изменяются|
 +|true|null|Значение плановых трудозатрат становится расчетным|
 +|false (или null)|null|Значение плановых трудозатрат не установлено \\ Текущее значение трудозатрат объекта и их тип (плановые трудозатраты или расчетные трудозатраты) не изменяются|
 =====Возвращаемые параметры===== =====Возвращаемые параметры=====
 ^Параметр^Описание^ ^Параметр^Описание^
Строка 100: Строка 150:
 </soap:Envelope> </soap:Envelope>
 </code> </code>
 +
 +===== Пример вызова метода =====
 +Вызов метода с помощью [[https://soapui.ru/|SoapUI]]:
 +
 +1. В окне запроса в передаваемых параметрах указать:
 +  * идентификатор сессии (можно получить с помощью метода [[:product:api:list:authenticate|Authenticate]]) и идентификатор проекта - обязательные параметры;
 +  * статус проекта - параметр, который в данном случае будет редактироваться - со статуса "В работе" (3) переведем проект в статус "Отложен" (8):
 +
 +<image shape="thumbnail">{{ :product:api:list:updateproject1.png |}}</image>
 +\\
 +2. При корректно выполненном методе появится код 200 и возвращаемый параметр - в данном случае ''UpdateProjectResult'':
 +
 +<image shape="thumbnail">{{ :product:api:list:updateproject2.png |}}</image>
 +\\
 +Готовый пример:
 +
 +<image shape="thumbnail">{{ :product:api:list:updateproject3.png |}}</image>