Метод: CreateProject 
Возвращает идентификатор созданного проекта.
| Параметр | Описание | 
|---|---|
| ASPNETSessionId | Идентификатор сессии | 
| ParentProjectId* | Идентификатор родительского проекта | 
| ProjectTypeId* | Идентификатор типа создаваемого проекта | 
| TemplateID | Шаблон проекта (доступно с версии 3.20) | 
	
| ProjectName* | Название проекта | 
| Order | Порядковый номер | 
| ProjectOwnerId | Идентификатор руководителя проекта | 
| ProjectResponsibleId | Идентификатор исполнителя проекта | 
| Status | Статус проекта. | 
| PercentComplete | Процент выполнения | 
| PlannedStartDate*** | Плановая дата начала | 
| PlannedEndDate**** | Плановая дата окончания | 
| ActualStartDate | Фактическая дата начала проекта | 
| ActualEndDate | Фактическая дата завершения проекта | 
| ResourceAssignments | Массив назначенных ресурсов | 
| ResourceAssignmentWrapper | Массив параметров ресурса | 
| PersonId | Идентификатор ресурса | 
| Value | Значение ресурса | 
| Order | Порядковый номер проекта в родительском объекте | 
| Fields | Массив всех реквизитов проекта | 
| FieldWrapper | Массив значений реквизитов | 
| FieldName | Название реквизита | 
| FieldId | Идентификатор реквизита | 
| FieldVal** | Значение реквизита | 
| DocumentFieldWrapper | Массив значений реквизитов с типом «документ» | 
| FieldId | Идентификатор реквизита | 
| DocumentName | Название документа | 
| DocumentBody | Документ в формате Base64 | 
| DocumentContentType | Тип загружаемого документа | 
| UsePlannedCost | (с версии 3.29) Использовать значение плановых трудозатрат, переданное в параметре PlannedCostДоступные значения: • true; • false (или null) - значение по умолчанию  | 
	
| PlannedCost | (с версии 3.29) Значение плановых трудозатратДоступные значения: • неотрицательные дробные значения (округляются до сотых); • null  | 
	
| 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 | Идентификатор производственного календаря проекта | 
* – параметры, обязательные для заполнения. 
** – при изменении реквизита-классификатора, основанного на объекте, можно использовать как идентификатор записи классификатора, так и идентификатор объекта (проект, пользователь, документ, дискуссия). Например, в случае, если названия объектов дублируются, а нужно выбрать конкретный объект. 
*** – плановая дата начала игнорируется, если в параметре StartDateConstraint передано одно из значений: AS_SOON_AS_POSSIBLE, AS_LATE_AS_POSSIBLE, NOT_SET. 
**** – плановая дата окончания игнорируется, если в параметре EndDateConstraint передано значение NOT_SET. 
Формат передаваемых дат для все типов стандартных объектных дат (план, факт): YYYY-MM-ddTHH:mm:ss (например: 2019-02-27T13:36:00).
Формат передаваемых дат для реквизита-даты должен быть типа YYYY-MM-DD hh:mm:ssZ, например: 2011-06-06 01:00:00Z
Пример запроса:
<?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> <CreateProject xmlns="http://streamline/"> <newProject> <ASPNETSessionId>string</ASPNETSessionId> <ParentProjectId>string</ParentProjectId> <ProjectTypeId>string</ProjectTypeId> <TemplateId>string</TemplateId> <ProjectName>string</ProjectName> <Order>int</Order> <ProjectOwnerId>string</ProjectOwnerId> <ProjectResponsibleId>string</ProjectResponsibleId> <PlannedStartDateSerialized>string</PlannedStartDateSerialized> <PlannedStartDate>dateTime</PlannedStartDate> <PlannedEndDateSerialized>string</PlannedEndDateSerialized> <PlannedEndDate>dateTime</PlannedEndDate> <Fields> <FieldWrapper> <FieldName>string</FieldName> <FieldId>string</FieldId> <FieldVal>string</FieldVal> <FieldType>string</FieldType> </FieldWrapper> <FieldWrapper> <FieldName>string</FieldName> <FieldId>string</FieldId> <FieldVal>string</FieldVal> <FieldType>string</FieldType> </FieldWrapper> </Fields> <Status>int</Status> <PercentComplete>int</PercentComplete> <ActualStartDateSerialized>string</ActualStartDateSerialized> <ActualStartDate>dateTime</ActualStartDate> <ActualEndDateSerialized>string</ActualEndDateSerialized> <ActualEndDate>dateTime</ActualEndDate> <ResourceAssignments> <ResourceAssignmentWrapper> <PersonId>guid</PersonId> <Value>double</Value> </ResourceAssignmentWrapper> <ResourceAssignmentWrapper> <PersonId>guid</PersonId> <Value>double</Value> </ResourceAssignmentWrapper> </ResourceAssignments> <PlannedDuration>double</PlannedDuration> <DurationUnit>string</DurationUnit> <StartDateConstraint>string</StartDateConstraint> <EndDateConstraint>string</EndDateConstraint> <CalendarId>guid</CalendarId> </newProject> </CreateProject> </soap:Body> </soap:Envelope>
Пример запроса с передачей плановых трудозатрат (доступно с версии 3.29) - добавлены необязательные передаваемые параметры UsePlannedCost и PlannedCost:
<?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> <CreateProject xmlns="http://streamline/"> <newProject> <ASPNETSessionId>string</ASPNETSessionId> <ParentProjectId>string</ParentProjectId> <ProjectTypeId>string</ProjectTypeId> <TemplateId>string</TemplateId> <ProjectName>string</ProjectName> <Order>int</Order> <ProjectOwnerId>string</ProjectOwnerId> <ProjectResponsibleId>string</ProjectResponsibleId> <PlannedStartDateSerialized>string</PlannedStartDateSerialized> <PlannedStartDate>dateTime</PlannedStartDate> <PlannedEndDateSerialized>string</PlannedEndDateSerialized> <PlannedEndDate>dateTime</PlannedEndDate> <Fields> <FieldWrapper> <FieldName>string</FieldName> <FieldId>string</FieldId> <FieldVal>string</FieldVal> <FieldType>string</FieldType> </FieldWrapper> <FieldWrapper> <FieldName>string</FieldName> <FieldId>string</FieldId> <FieldVal>string</FieldVal> <FieldType>string</FieldType> </FieldWrapper> </Fields> <Status>int</Status> <PercentComplete>int</PercentComplete> <ActualStartDateSerialized>string</ActualStartDateSerialized> <ActualStartDate>dateTime</ActualStartDate> <ActualEndDateSerialized>string</ActualEndDateSerialized> <ActualEndDate>dateTime</ActualEndDate> <ResourceAssignments> <ResourceAssignmentWrapper> <PersonId>guid</PersonId> <Value>double</Value> </ResourceAssignmentWrapper> <ResourceAssignmentWrapper> <PersonId>guid</PersonId> <Value>double</Value> </ResourceAssignmentWrapper> </ResourceAssignments> <UsePlannedCost>boolean</UsePlannedCost> <PlannedCost>double</PlannedCost> <PlannedDuration>double</PlannedDuration> <DurationUnit>string</DurationUnit> <StartDateConstraint>string</StartDateConstraint> <EndDateConstraint>string</EndDateConstraint> <CalendarId>guid</CalendarId> </newProject> </CreateProject> </soap:Body> </soap:Envelope>
Варианты комбинаций параметров и результат работы метода:
| UsePlannedCost | PlannedCost | Результат работы метода | 
|---|---|---|
| true | Указан | Значение плановых трудозатрат установлено и равно значению, переданному в параметре PlannedCost Или, если фиксированная общая продолжительность объекта равна 0, значение, переданное в параметре PlannedCost, игнорируется | 
	
| false (или null) | Указан | Значение плановых трудозатрат не установлено  Значение, переданное в параметре PlannedCost, игнорируется | 
	
| true | null | Значение плановых трудозатрат становится расчетным  Результат данной комбинации идентичен результатам второй/четвертой комбинаций  | 
	
| false (или null) | null | Значение плановых трудозатрат не установлено | 
| Параметр | Описание | 
|---|---|
| CreateProjectResult | Результат выполнения запроса | 
<?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> <CreateProjectResponse xmlns="http://streamline/"> <CreateProjectResult>string</CreateProjectResult> </CreateProjectResponse> </soap:Body> </soap:Envelope>
Вызов метода с помощью SoapUI:
1. В окне запроса в передаваемых параметрах указать:
2. При корректно выполненном методе появится код 200 и возвращаемый параметр - в данном случае CreateProjectResult:
Готовый пример: