Что такое пси в проекте
Объявления
Если вы интересуетесь релейной защитой и реле, то подписывайтесь на мой канал
ПМИ и ПСИ
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Сообщений 10
1 Тема от BenGan 2013-08-28 08:06:16
Тема: ПМИ и ПСИ
2 Ответ от Yuriy82 2013-08-28 08:21:24
Re: ПМИ и ПСИ
3 Ответ от BenGan 2013-08-30 12:46:35
Re: ПМИ и ПСИ
4 Ответ от _vlad 2013-09-09 13:56:21
Re: ПМИ и ПСИ
Коллеги, немного заблуждаетесь.
Стадии сдачи заказчику:
1. Заводская приемка (Заводские ПСИ).
2. Приемка в опытную эксплуатацию.
3. Приемка в пром. эксплуатацию.
5 Ответ от BenGan 2013-09-11 07:16:27 (2013-09-11 07:18:51 отредактировано BenGan)
Re: ПМИ и ПСИ
Теперь осталось понять, что описывается в ПМИ, все три стадии:
1. Заводская приемка (Заводские ПСИ).
2. Приемка в опытную эксплуатацию.
3. Приемка в пром. эксплуатацию.
или только последние две, или на каждую стадию своя ПМИ?
6 Ответ от Yuriy82 2013-09-11 09:11:16
Re: ПМИ и ПСИ
На каждый вид испытаний свое ПМИ. Вы же когда собираетесь испытывать что-то, должны представлять как именно и что вы испытываете, вот это и пишется в ПМИ.
Содержание документов на системы автоматизации, как правило регламентируются ГОСТ 34
Если интересуют ПМИ для объектов ФСК, то на сайте ФСК должны быть типовые ПМИ.
7 Ответ от BenGan 2013-09-12 11:04:08
Re: ПМИ и ПСИ
Теперь понятно, Спасибо!
8 Ответ от lik 2013-09-12 12:13:41
Re: ПМИ и ПСИ
9 Ответ от last_hero 2014-01-10 10:59:58
Re: ПМИ и ПСИ
Нет коллега протокол вам могут выдать на шкаф или на конкретный терминал, а вот испытания системы в целом (сеть, шторма и прочее) это уже ПМИ. По крайней мере я так всегда делаю на терминалы, шкафы, интеграции по цифре оформляются протоколы, после чего проводятся комплексные испытания.
10 Ответ от TapakaH 2015-01-30 16:32:49
Re: ПМИ и ПСИ
Сообщений 10
Тему читают: 1 гость
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Какие задачи PSI выполняет, а какие — нет
Интерфейс Project сервера (PSI) может помочь автоматизировать многие серверные процессы в локальной установке Project Server 2013. Но некоторые функции требуют использования Microsoft Project профессиональный 2013.
PSI предназначен для дополнения возможностей Project профессиональный 2013 г., а не для предоставления серверной альтернативы для всех Project профессиональный функций. Сторонние разработчики могут использовать PSI для создания веб-части для локальных установок рабочих пространств Project Web App и проекта, создания настраиваемого Windows приложений и веб-приложений, взаимодействующих с локальными данными Project Server, разработки логики рабочих процессов для управления портфелями проектов, разработки локальных обработчиков событий с полным доверием и интеграция Project Server с другими приложениями. PSI нельзя использовать для разработки приложений для Office Store, мобильных устройств или планшетов; для этого можно использовать клиентскую объектную модель (CSOM).
PSI предоставляет более полный программный интерфейс для Project Server 2013, чем CSOM. Но, если CSOM не предоставляет необходимые функции, рекомендуется использовать CSOM для разработки новых приложений. Дополнительные сведения см. в дополнительных сведениях о том, что делает и не делает CSOM.
Сценарии использования для PSI
Ниже приводится пример некоторых приложений, поддерживаемых PSI для серверных проектов и вычислений:
Автоматизация создания или управления сущностями в Project Server Хотя Project профессиональный 2013 и Project Web App вместе предназначены для обработки управления и создания сущностях, таких как проекты, корпоративные ресурсы и настраиваемые поля, часто бывают случаи, когда настраиваемые приложения могут сэкономить время с помощью массовых или повторяющихся заданий. PSI может автоматизировать несколько видов заданий, которые CSOM не делает, например, с кубами OLAP, анализом портфеля проектов, драйверами бизнеса, уведомлениями, поставщиками ссылок на объекты, безопасностью и SharePoint работой.
Получать данные в опубликованных или архивных таблицах Project базы данных Так как прямой доступ к таблицам черновиков, опубликованных и архивных таблиц не поддерживается, можно использовать PSI для чтения данных, недоступных в таблицах отчетов или представлениях. Например, получите сведения о версиях проекта, датах и изменениях, хранимых в таблицах архива, а затем заполнять управление JS Grid в веб-части информацией.
Проверка данных о состоянии и времени Используйте PSI в локальных обработчиках предварительного события, чтобы проверить состояние назначения или данные таблицы, которые введите пользователи, прежде чем данные будут сохранены в Project Web App.
Проекты по обслуживанию Создайте проекты-заполнители для использования с планами ресурсов. Зарезервируйте время и ресурсы для работ по обслуживанию или основного бизнеса. В проектах по обслуживанию задачи обычно не используются.
Создание финансовых проектов. Создавайте проекты для резервирования времени с помощью расписаний для последующей интеграции с финансовыми системами. Создавайте иерархию финансовых кодов, отражающих структуру детализации затрат финансовой системы. Для финансовых проектов не требуется выполнять планирование или обновлять состояния.
Интеграция с системами бухгалтерского учета. Регистрируйте затраты на ресурсы и расходы, связанные с проектами, и передавайте данные в финансовые системы и системы выставления счетов, а также используйте эти данные для целей сравнения с бюджетом. Синхронизируйте задачи, ресурсы и назначения между системами. Отметьте данные расписания в одной системе для передачи в другую (вопрос о том, какое расписание должно использоваться, зависит от потребностей организации или от индивидуальных проектов).
Автоматизация обновлений, получаемых от участников рабочих групп. При работе с проектами, которые не являются активно управляемыми, вы можете автоматически обновлять проекты на сервере по мере прогресса и внесения изменений в проекты участниками рабочих групп. Проекты можно обновлять и повторно публиковать без участия руководителей проектов, проверяющих результаты или корректирующих планы.
Оценка Project серверов в локальных обработчиках событий полного доверия Локальный обработник событий для предварительного события ProjectCreating может использовать данные Project Server из PSI, чтобы определить, следует ли отменять событие. Например, прежде чем создать проект, можно сравнить предлагаемый проект с существующими проектами.
Создание настраиваемой деятельности рабочего процесса для управления запросами Используйте PSI в локальных действиях рабочего процесса с полным доверием для изменения и обновления предложений проектов на основе шаблонов корпоративных проектов. Используйте настраиваемые поля проекта для тегов проекта с информацией, необходимой для процесса инициации и утверждения. Добавьте задачи по определению этапов проекта, основных вех и конечных результатов. После утверждения предложений по проектам рабочий процесс может изменять их в полнофутбные проекты, управляемые с помощью Project профессиональный.
Создание расширений PSI (Deprecated. Расширения обесценяются в Project Server 2013 и не будут поддерживаться в будущих выпусках.) PSI можно расширить с помощью настраиваемой службы с помощью интерфейса Windows связи (WCF). Расширения PSI работают на компьютере Project Server и могут использовать ту же инфраструктуру безопасности, что и встроенные службы PSI. Расширения могут запрашивать таблицы отчетов, использовать отдельные таблицы баз данных, консолидировать вызовы PSI для сохранения пропускной способности, а также интегрироваться с сторонними приложениями и другими серверными компонентами. Дополнительные сведения см. в дополнительных сведениях о разработке расширений PSI.
Использование обезличения в локальных приложениях с полным доверием Вызовы к интерфейсу WCF PSI можно обезличить, чтобы приложение допускали разрешения безопасности обезличенных пользователей. Обезличение следует использовать с осторожностью и осторожностью. Чтение и обновление сведений о состоянии для других пользователей не требует обезличения. Новые приложения, которые требуют обезличения, должны использовать протокол CSOM и OAuth вместо PSI. Дополнительные сведения о вымыске с PSI см. в см. в этой ссылке Use Impersonation with WCF.
В некоторых случаях PSI можно использовать в клиентских приложениях с CSOM и Project Online. Если вы используете веб-службу PSI на основе ASMX, приложение должно включать метод проверки подлинности объекта Microsoft.ProjectServer.Client.ProjectContext в CSOM и метод проверки подлинности клиентского объекта System.Web.Services.Protocols.SoapHttpClientProtocol. Пример, использующий веб-службу с SharePoint CSOM, см. в SharePoint Online с использованием проверки подлинности на основе утверждений. > из-за ограниченных разрешений на уровне приложений PSI не может использоваться в приложениях, предназначенных для распространения в общедоступных Office Store. В этом случае можно использовать только CSOM.
Что не делает PSI
Несмотря на то, что PSI может делать много вещей, PSI не делает. Ниже следующую следующую статью: PSI не может сделать, но CSOM может сделать.
Project Online и удаленные приемники событий
Основное ограничение PSI — это Project Online. Приложения, которые используют PSI, требуют полного доступа к локальной установке Project Server. Например, PSI нельзя использовать в приемниках удаленных событий, где приемник событий устанавливается в качестве службы Microsoft Azure.
Проверка подлинности рабочего процесса и утверждений
Определение рабочего процесса, использующее Windows workflow Foundation версии 4 (WF4), требует проверки подлинности утверждений, которую PSI не поддерживает напрямую. Это означает, что вы не можете использовать PSI для создания проекта в Project Server 2013 с типом корпоративного проекта (EPT) с определением рабочего процесса WF4.
PSI можно использовать для создания проектов с epTs, которые либо не имеют рабочего процесса, либо используют устаревшее определение WF3.5 (версия рабочего процесса в Project Server 2010). Чтобы создать проект с EPT с определением WF4, используйте CSOM.
Действия, Project профессиональный:
Следующий список — это вещи, которые не могут сделать ни PSI, ни CSOM.
Локальные данные
Управление данными в локальных проектах (.mpp files). Например, определение таблиц коэффициента затрат или контуров доступности для локальных ресурсов.
Определение или редактирование локальных базовых календарей или календарей ресурсов, включая исключения календаря.
Определение локальных пользовательских полей. (PSI поддерживает редактирование локальных пользовательских значений полей для задач, ресурсов и назначений.)
Корпоративные данные
Проверка или редактирование корпоративного глобального шаблона. Глобальные корпоративные данные в Project Server 2013 — это набор двоичных таблиц данных в базе данных Project, а не шаблон проекта, как в Office Project Server 2007 и более ранних версиях.
Определение или редактирование корпоративных календарей. Методы Calendar управляют только исключениями календаря.
Мастер-проекты и межпроектные ссылки
Создание мастер-проектов и вставка подпроектов.
Планирование критического пути в мастер-проекте.
Создание межпроектных ссылок.
Ресурсы
Запрос или выполнение выравнивания ресурсов.
Изменение ресурса при назначении. (С помощью PSI можно удалить назначение и создать новое.)
Удаление или замена ресурса, на который фактически принята работа (фактические данные).
Изменение типа ресурса между работой, материалом и стоимостью.
Создание или редактирование календарей ресурсов.
При добавлении ресурса в задачу PSI автоматически не перераспределяет работу так, Project профессиональный делает. От разработчика зависит выбор и явное назначение распределения работ.
Затратные ресурсы
Контуры работы
Редактирование данных с периодом времени.
Метод UpdateStatus в веб-службе Statusing Может изменять время выполнения заданий после обновления и публикации данных назначения руководителем проекта.
Настройка или изменение типа контура назначения (например, плоский, загруженный сзади или фронтальная загрузка).
Базовые показатели и заработаное значение
Сохранение базовых данных или редактирование базовых данных.
Настройка даты выполнения.
Вычисление отклонений и заработанных значений.
Интерактивное планирование
Поддержка интерактивного планирования. (Поскольку Project Сервер асинхронно обрабатывает взаимодействия, интерактивное планирование должно быть сделано с Project профессиональный.)
Чтобы избежать изменения программного поведения, методы PSI, которые выдвигаются из Project Server 2010, действуют так же в Project Server 2013. Например, QueueUpdateProject по-прежнему имеет те же ограничения и использует более старый серверный движок планирования. Новый метод QueueUpdateProject2 устраняет многие из этих ограничений и использует новый серверный движок Project Server 2013, который является тем же механизмом планирования, что и в Project профессиональный 2013 г.
Задачи
Изменение типа задачи (фиксированная работа, продолжительность или единицы).
Изменение того, является ли задача управляемой усилиями.
Изменение начисления с фиксированной стоимостью задачи.
Создание или редактирование повторяющихся задач.
Назначение или изменение календаря задач для существующих задач.
Создание новой задачи с календарем задач.
Изменение значения поля TASK_IGNORES_RES_CAL (задача игнорирует календарь ресурсов).
Изменение активного состояния задачи с помощью QueueUpdateProject, если в одном вызове будут внесены дополнительные изменения. Дополнительные сведения см. в Project Scheduling on the Server в разделе Project Server.
Суммарные задачи.
Создание или изменение назначений в сводных задачах.
Рекомендуется не выполнять назначения по суммарным задачам с помощью Project профессиональный или другим способом. Дополнительные сведения см. в Project Scheduling on the Server в разделе Project Server.
Редактирование сводных полей задач, которые обычно свернуты из подзадачи. Проекты на стороне серверов всегда сверкают сводную информацию, а не настраивают сведения о сводной задаче и передвигают ее в подзадачи. В сводных задачах можно редактировать только следующие поля:
Как инженеры a1qa проводили приёмо-сдаточные испытания ПО: Часть 1. Теоретическая
Вот уже более двух лет команда a1qa работает на проекте по созданию платежной системы для одного крупного банка. Поначалу задачи нашей команды сводились только к тестированию системы, однако через некоторое время заказчик поручил нам подготовку и проведение приёмо-сдаточных испытаний.
Задача эта нетипичная для тестировщиков. Поэтому мы решили поделиться своим опытом и рассказать, как её грамотно выполнить, оправдав доверие заказчика.
Что такое приёмо-сдаточные испытания (ПСИ)?
Прежде чем выпускать продукт на рынок, заказчик должен убедиться в возможности использования разработанного решения, в его безопасности, надёжности, корректном функционировании и проверить другие характеристики, описанные в требованиях к продукту.
ПСИ особенно актуальны для проектов, на которых выпуск некачественного продукта может привести к значительным финансовым потерям (к слову, наш проект именно к таким и относится).
Итак, цели проведения ПСИ:
Избежать хаоса в подготовке и проведении ПСИ, развеять сомнения в методах убеждения и их эффективности помогают различные нормативно-правовые документы, которые стандартизируют процессы разработки и тестирования.
Один из таких документов, обязательный для любых приёмо-сдаточных испытаний, – это «Программа и методика испытаний».
Документ «Программа и методика испытаний»: что нужно знать тестировщику
Написанием и форматированием данного документа обычно занимаются специально обученные люди, например, технические писатели.
Однако знать, из чего состоит документ, тестировщику не помешает. Кроме того, подготовка одного из разделов может быть поручена именно тестировщикам.
Обратимся к официальной документации. Согласно межгосударственному стандарту ГОСТ 19.301-79, документ «Программа и методика испытаний» должен иметь следующую структуру:
Какой из разделов под силу подготовить функциональному тестировщику? Конечно же, «Методы испытаний». Об этом поговорим позже, а пока ещё немного теории.
Критерии успешности приёмо-сдаточных испытаний
Как правило, успешность ПСИ определяется на этапе заключения контракта. Одним из таких критериев может быть процент успешно пройденных во время демонстрации проверок. Например, если на проверку выносятся 100 тест-кейсов и критерий pass-rate составляет 80%, то 80 тест-кейсов должно быть успешно пройдено, иначе считается, что продукт приёмку не прошел, а значит, не может быть допущен к опытной и промышленной эксплуатации.
На практике же успешность приёмо-сдаточных испытаний чаще определяется не одним критерием, а совокупностью нескольких. Например, учитывается процент реализованных требований от общего числа и ограничение по количеству дефектов того или иного приоритета. Оперируя данными по этим критериям, принимается решение об успешности ПСИ.
На этом необходимая теория заканчивается. В следующей части расскажем, как приёмо-сдаточные испытания проводила команда a1qa и какие трудности ей пришлось преодолеть.
Для чего производятся приемо-сдаточные испытания электроустановок
Электромонтажные работы – завершающий этап строительства любого объекта, в ходе которого производится комплекс мероприятий по реализации всех проектных решений и монтажу электрооборудования. Фактически после проведения электромонтажных работ, независимо строительство ли это нового или реконструкция уже действующего объекта, электрооборудование должно быть пригодно для использования в расчетных режимах, однако перед приемкой в эксплуатацию электроустановок в обязательном порядке проводятся приемо-сдаточные испытания (ПСИ).
Главной целью, преследуемой при приемо-сдаточных испытаниях электрооборудования можно считать подтверждение:
Приемо-сдаточные испытания электроустановок обязательны для всех вновь построенных или реконструированных объектов, без их проведения электроустановка допуска в эксплуатацию не получит.
Нормы приемо-сдаточных испытаний приведены в ряде нормативных документов, в частности в Правилах устройства электроустановок (ПУЭ, гл. 1.8) и ГОСТ Р 50571.16-2019. В случае недочетов или несоответствия проектной документации, выявленных при приемо-сдаточных испытаниях, объект требует их устранения, с повторным проведением ПСИ.
Основные этапы проведения ПСИ и фиксация результатов
Для получения исчерпывающей и объективной информации о сдаваемом в эксплуатацию объекте приемо-сдаточные испытания включают в себя комплекс проверок работоспособности и измерений, предусматривающий следующие этапы.
Каждый протокол должен содержать выводы о соответствии исследуемого объекта действующим нормам и заводской документации на оборудование.
По результатам проведения комплексного исследования электроустановки составляется итоговый технический отчет. В протоколе приемо-сдаточных испытаний должна быть отражена следующая документация:
Проведение ПСИ лежит в компетенции лицензированных электротехнических лабораторий, измерения проводятся опытными специалистами, имеющими специальные допуски. Измерения выполняются приборами, прошедшими регулярную поверку и включенными в государственный реестр
Общий справочник по Project PSI
Интерфейс Project Server (PSI) — это интерфейс API, используемый для разработки приложений, которые локально интегрируются с Project Server 2013.
В этой статье приведены общие сведения о задокументированных сборках, пространствах имен и службах в интерфейсе PSI. Справочник по библиотеке классов и веб-службам Project Server 2013 в пакете SDK содержит всю документацию по управляемому коду для PSI и пространства имен Microsoft.ProjectServer.Client в Project Server 2013. При разработке приложений для Project Online необходимо вместо интерфейса PSI использовать пространство имен Microsoft.ProjectServer.Client.
Интерфейс служб WCF определяется SVC-файлами в тыловом виртуальном каталоге https://ServerName:32843/GUID/PSI/ в приложении веб-служб SharePoint. URL-адрес служб PSI в виртуальном каталоге приложения-службы Project (например, https://ServerName:32843/GUID/PSI/project.svc ) включает SVC-файлы. Однако с помощью тылового URL-адреса невозможно непосредственно задать ссылку на службу WCF. Разработать приложение или компонент, использующие службы WCF, которые входят в интерфейс PSI, можно с помощью сборки прокси-сервера или прокси-файла. Доступный для скачивания пакет для SDK Project 2013 включает прокси-файлы для служб WCF в Project Server 2013, а также сценарии для получения обновленных прокси-файлов WCF и их последующей компиляции в сборку прокси-сервера для более новых сборок Project Server.
Имя каталога приложения службы Project представляет собой значение GUID, которое совпадает с GUID локального экземпляра Project Web App. В окне диспетчера Internet Information Services (IIS) разверните узел Веб-службы SharePoint, выберите имя каталога GUID, а затем нажмите Дополнительные параметры, чтобы скопировать значение Виртуальный путь.
Интерфейс веб-службы ASMX PSI признан нерекомендуемым в Project Server 2013, однако все еще поддерживается. В новых приложениях необходимо использовать интерфейс WCF PSI или CSOM. Дополнительные сведения о нерекомендуемых компонентах см. в статье Обновления для разработчиков в Project 2013.
Новые приложения и компоненты ПО промежуточного слоя, которые выполняются только в локально установленной версии Project Server, должны использовать интерфейс WCF. Именно эту технологию мы рекомендуем использовать для сетевых подключений. Приложения прежних версий, в которых используется интерфейс ASMX, должны использовать URL-адрес в Project Web App, который отвечает за проверку разрешений Project Server.
Разрабатывать приложения, в которых используется интерфейс WCF, можно с помощью Visual Studio 2010 или Visual Studio 2012. Для создания декларативных бизнес-процессов Project Server можно использовать SharePoint Designer 2013. Бизнес-процессы Project Server, которым требуется доступ к PSI или CSOM, можно разрабатывать с помощью Visual Studio 2012.
Использование справочника по PSI
Объектная модель PSI отличается большим размером. Ряд классов и элементов предназначен исключительно для внутреннего использования. Поэтому вам может быть сложно найти необходимые разделы в справочнике по библиотеке классов и веб-службам Project Server 2013. Большинство разделов справки, которые используются при разработке, находятся в следующих группах:
Методы основных классов. Каждая служба в интерфейсе PSI включает основной класс, которому присваивается имя службы. Например, служба Resource содержит класс Resource, который входит в пространство имен WebSvcResource. Чтобы просмотреть список методов, доступных в классе Resource, разверните узел класса в области содержимого, а затем выберите раздел Методы Resource.
Свойства DataRow. Многие методы основных классов используют или возвращают класс DataSet. Каждый объект DataTable в классе DataSet содержит данные в одном или нескольких объектах DataRow. В большинстве случаев вам нужно просмотреть только свойства строки, а не все другие элементы классов DataSet, DataTable или DataRow. Например, класс ResourceAssignmentDataSet включает подклассы для классов ResourceAssignmentDataTable и ResourceAssignmentDataSet.ResourceAssignmentRow. Чтобы просмотреть список свойств, доступных в классе ResourceAssignmentRow, разверните узел класса в области содержимого, а затем выберите раздел ResourceAssignmentDataSet.ResourceAssignmentRow Properties.
Кроме пространств имен служб, раздел справочника по библиотеке классов и веб-службам Project Server 2013 содержит ссылки на три сборки Project Server, которые используются при разработке сторонних приложений для локальных установок. Документация по этим сборкам представлена в минимальном объеме. В справочнике по PSI описываются основные классы и элементы, которые входят в 23 общедоступные службы. Шесть служб PSI предназначены исключительно для внутреннего использования и не представлены в справочнике.
Классы в клиентской объектной модели (CSOM) можно использовать независимо от других сборок и служб Project Server. Вы можете использовать пространство имен Microsoft.ProjectServer.Client в среде удаленной разработки с компьютера Project Server и разрабатывать приложения, которые интегрируются с Project Online или локально установленной версией Project Server. Однако CSOM содержит подмножество функций полного решения PSI. CSOM обеспечивает разработку наиболее распространенных сценариев для интеграции с Project Server. Дополнительные сведения см. в статьях Какие задачи CSOM выполняет, а какие — нет и Microsoft.ProjectServer.Client.
Для разработки большинства приложений, в которых используется интерфейс PSI, не требуется компьютер с установленным Project Server. Кроме того, вам не нужно задавать ссылки на сборки Project Server в глобальном кэше сборок. Вы можете скопировать сборки Project Server на свой компьютер, используемый для разработки. Project Server 2013 устанавливает следующие сборки в раздел [Program Files] \Microsoft Office Servers\15.0\Bin :
Пространствам имен для служб PSI присваиваются произвольные имена, созданные для сборки прокси-сервера PSI (ProjectServerServices.dll), выполняемой в целях документации. В ссылке на PSI каждое пространство имен службы содержит имя-заполнитель, такое как [Веб-служба Project], и веб-ссылку (например, https://ServerName/ProjectServerName/_vti_bin/psi/Project.asmx?wsdl ).
Сборки и пространства имен Project Server
Многие сборки устанавливаются при установке Project Server. Задокументированы только четыре сборки Project Server. Как правило, сторонние разработчики используют только несколько классов и элементов в этих сборках. К незадокументированным сборкам Project Server относятся пространства имен и классы, которые используются в Project Server для внутренних целей. Например, классы для Project Web App, бизнес-элементы и компонент DAL (Data Access Layer). Если в Visual Studio вы задали ссылку на одну из задокументированных сборок Project Server, все пространства имен, классы и элементы отобразятся в обозревателе объектов Visual Studio.
Многие элементы задокументированных пространств имен Project Server используются только во внутренних целях и представлены в документации в минимальном объеме.
При разработке для Project Online можно использовать только CSOM для доступа к функциональным возможностям Project Server. У вас не будет доступа к службам PSI или другим сборкам Project Server.
Microsoft.Office.Project.Server.Library.dll. Эта сборка содержит одно задокументированное и три незадокументированных пространства имен, как указано ниже.
Пространство имен Microsoft.Office.Project.Server.Library включает ряд перечислений, поля и свойства классов, которые часто используются в локальных приложениях для Project Server. Например, разработчики обычно используют такие перечисления, как CustomField.Type, а также классы PSClientError, PSErrorInfo и Filter.
Пространство имен Microsoft.Office.Project.Server.Library также включает следующие семь классов свойств, в которые входят более чем 3200 подклассов:
Классы свойств используются для внутренних целей и не документируются. Классы свойств также используются для сериализации между Project профессиональный 2013 и Project Server. Когда вы работаете с пространством имен Microsoft.Office.Project.Server.Library в Visual Studio, в обозревателе объектов отображаются все классы свойств, что усложняет поиск классов, необходимых для сторонней разработки. Так как сторонним разработчикам не нужно использовать классы свойств, они не документируются в пакете SDK.
Microsoft.Office.Project.Server.DataServices. Классы и элементы этого пространства имен используются службой OData во внутренних целях в Project Online для доступа к таблицам отчетов в базе данных Project. Классы DataServices не задокументированы.
Microsoft.Office.Project.Server.Administration. Класс и элементы этого пространства имен используются во внутренних целях для журнала ведения диагностики и не документируются.
Microsoft.Office.Project.Server.Base. Классы и элементы этого пространства имен используются во внутренних целях как базовые классы и не документируются.
Microsoft.Office.Project.Server.Library.FilterSchema. Это пространство имен используется во внутренних целях для создания схем фильтров и не документируется.
Microsoft.Office.Project.Server.Workflow.dll. Эта сборка используется для бизнес-процессов Project Server 2010 прежних версий, которые могут работать в Project Server 2013. Для создания бизнес-процессов следует использовать SharePoint Designer 2013 или Visual Studio 2012 с классом Microsoft.ProjectServer.Client.WorkflowActivities. Сборка Microsoft.Office.Project.Server.Workflow.dll включает три следующих пространства имен:
Microsoft.Office.Project.Server.Workflow. Это пространство имен включает классы, которые используются для действий бизнес-процессов Project Server. К действиям относятся чтение, сравнение и обновление свойств проектов. Другие классы управляют бизнес-процессами и включают обратные вызовы бизнес-процессов при изменении проектов.
Microsoft.Office.Project.PWA. Это пространство имен содержит внутренний прокси для PSI, который используется с Project Web App и настраиваемыми действиями бизнес-процессов. Данное пространство имен не документируется.
Для доступа ко всем классам в службах PSI настраиваемому действию бизнес-процесса требуется ссылка на Microsoft.Office.Project.PWA. Например, класс Microsoft.Office.Project.PWA.PSI включает свойство ProjectWebService, которое позволяет получить прокси для пространства имен WebSvcProject.
Microsoft.Office.Project.Server.WebServiceProxy. Это пространство имен содержит внутренние классы прокси для основного класса в каждой службе PSI. Используя повышенный уровень разрешений, рабочий процесс может вызывать методы PSI через классы прокси. Классы прокси не документированы.
Microsoft.Office.Project.Server.Events.Receivers.dllMicrosoft.Office.Project.Server.Events — единственное пространство имен в этой сборке. Включает приемник событий и классы аргументов событий для служб PSI и других внутренних классов.
Разработчики пишут обработчики событий, производные от классов приемника события. Большинство основных классов в службах PSI имеет соответствующий класс приемника события. Например, класс ProjectEventReceiver содержит методы приемника события до операции и события после операции, которые соответствуют методам в классе Project в PSI. Методы OnCreating и OnCreated являются методами приемника события до операции и события после операции для метода QueueCreateProject.
Разработчики обычно используют следующие классы приемников событий:
Классы RulesEventReceiver и StatusReportsEventReceiver используются в Project Web App для внутренних целей.
В приложениях, которые используют CSOM, применяют удаленные обработчики событий или получают доступ к Project Online, не используется пространство имен Microsoft.Office.Project.Server.Schema.
В некоторых приложениях, использующих обработчики событий с полным доверием, когда обработчики событий устанавливаются на компьютере Project Server, необходимо установить ссылку на сборку Microsoft.Office.Project.Schema.dll. Далее приводятся два примера.
В обработчике события после операции OnCreated с полным доверием для настраиваемых полей можно использовать аргумент события e.CustomFieldInformation со ссылкой на пространство имен Microsoft.Office.Project.Server.Schema для определений CustomFieldDataSet и CustomFieldsRow.
Настраиваемому действию бизнес-процесса может требоваться ссылка на пространство имен Microsoft.Office.Project.Server.Schema для определений DataSet.
Службы PSI
Справочник по PSI включает имена-заполнители службы имен для служб PSI, такие как [Веб-служба администрирования], [Веб-служба драйверов] и [Веб-служба проектов]. Каждая служба имен PSI содержит основной класс, в который входят веб-методы для этой службы. Например, если задать ссылку на службу Admin и присвоить ей имя WebSvcAdmin, в вашем приложении служба имен WebSvcAdmin будет включать основной класс Admin с веб-методами GetServerCurrency, ListInstalledLanguages, ReadServerVersion и т. д. Список нерекомендуемых служб PSI см. в статье Обновления для разработчиков в Project 2013.
Всего насчитывается 30 служб PSI. Службы authentication, ExchangeSync, OData, P12Upgrade, psiserviceapp, PWA, View и WinProj используются в Project Web App и Project профессиональный во внутренних целях и не задокументированы. Хотя вы можете создать прокси-файлы или сборку прокси-сервера, в которую входят внутренние службы PSI, они не предназначены для использования сторонними разработчиками. Эти службы не задокументированы в справочнике по PSI. На рисунке ниже показано расположение серверных служб PSI в диспетчере Internet Information Services.
Поиск служб PSI в IIS
Ниже перечислены все классы, содержащие веб-методы в службах PSI.
Admin. Включает методы, которые используются на страницах Администрирование Project Server в Project Web App. Определяет финансовые года, управляет параметрами отчетов о состоянии и валют, определяет отчетные периоды, журнал аудита и настройки Active Directory.
Archive. Включает методы для управления резервным копированием и восстановлением проектов, категориями безопасности, настраиваемыми полями, ресурсами, системными параметрами, представлениями и глобальными корпоративными проектами. Считывает и обновляет расписание архивирования. Сохраняет все проекты в архиве или удаляет указанные архивированные проекты. Сохраняет объекты резервных копий в архивных таблицах баз данных и восстанавливает резервные копии объектов в опубликованных таблицах баз данных.
authentication. Включает методы, которые используются в Project профессиональный и Project Web App исключительно во внутренних целях.
Calendar. Управляет исключениями в корпоративном календаре. Извлекает и возвращает ресурсы календаря. Используется для перечисления всех исключений календаря, а также их создания, удаления, обновления и возврата.
CubeAdmin. Управляет параметрами куба OLAP. Получает сведения о состоянии сервера анализа данных и базы данных, а также список кубов. Переводит запрос службы построения куба в очередь. Используется для считывания и обновления определений вычисляемых элементов и параметров полей для измерений в кубе.
CustomFields. Управляет корпоративными настраиваемыми полями. Включает методы извлечения и возврата, а также методы создания, чтения, обновления и удаления (CRUD) для корпоративных настраиваемых полей.
Driver. Управляет целями анализа портфеля, а также определением приоритетов целей для создания проектов и управления запросами. Содержит методы CRUD для целей проекта.
Events. Управляет связями с обработчиками событий. Содержит методы CRUD для связей обработчиков событий Project Server для конкретного события или для всех связей обработчиков событий.
ExchangeSync. Это внутренняя служба Project Server, которая управляет событиями Exchange Server. ExchangeSync используется в Project Web App для синхронизации назначений между Project Server и Exchange Server вместо непосредственной синхронизации с клиентом Outlook, как в Office Project Server 2007.
Доступ к службе ExchangeSync возможен только с помощью URL-адреса ProjectServiceApplication. Классы и элементы ExchangeSync для сторонней разработки не поддерживаются.
LoginForms. Предоставляет методы Login и Logoff с проверкой подлинности на основе форм. Доступ к службе LoginForms предоставляется только с сайта Project Web App переднего плана.
LoginWindows. Обеспечивает методы Login и Logoff, которые позволяют выполнять проверку подлинности Windows в приложениях на основе ASMX для установленных версий Project Server 2013 с использованием нескольких способов (на основе утверждений и форм). Доступ к службе LoginWindows предоставляется только с внешнего сайта Project Web App.
Служба LoginWindows не используется в приложениях на основе WCF и для приложений, работающих в установках Project Server, применяющих только проверку подлинности на основе утверждений или OAuth; в этих случаях метод Login всегда возвращает false. Проверка подлинности на основе утверждений обрабатывает интегрированную проверку подлинности Windows.
LookupTable. Управляет таблицами подстановки (в том числе многоязыковыми) и соответствующими масками кодов. Извлекает, возвращает, считывает, создает, удаляет и обновляет эти таблицы.
Notifications. Управляет оповещениями и напоминаниями. Включает методы для получения, установки, регистрации и отмены регистрации результатов оповещений.
ObjectLinkProvider. Управляет веб-объектами и ссылками для документов и элементов списков на сайтах SharePoint. Создает, удаляет или считывает проекты, задачи, а также связанные с проектами и задачами веб-объекты.
Службу ObjectLinkProvider не рекомендуется использовать в Project Server 2013. Дополнительные сведения см. в разделе Нерекомендуемые компоненты статьи Обновления для разработчиков в Project 2013.
OData. Предоставляет внутренний интерфейс OData для таблиц и представлений отчетов. Доступ к службе OData возможен только с помощью внутреннего URL-адреса ProjectServiceApplication. Частная служба OData в PSI предоставляет один метод — ODataClient.ProcessOdataMessage, который обычно используется Project Server внутренним образом для обработки запросов данных отчетов. Запросы HTTP проходят через внутреннюю службу ProjectData.
Сведения о службе ProjectData и протоколе OData для считывания данных отчетов см. в статье ProjectData — справочник по службе OData.
P12Upgrade. Обеспечивает внутренние методы, используемые установщиком Project Server 2013 для обновления установленной версии Office Project Server 2007. Доступ к службе P12Upgrade предоставляется только через URL-адрес ProjectServiceApplication. Методы P12Upgrade не поддерживаются для сторонней разработки.
PortfolioAnalyses. Содержит методы CRUD для зависимостей проекта, а также для решений по оптимизатору, Планировщику и анализу.
Project. Управляет проектами. Извлекает, возвращает, создает, удаляет, считывает или обновляет проекты в черновых или опубликованных таблицах в базах данных Project. Переводит сообщение в очередь на публикацию.
Создает или удаляет сущности в проектах (задачи, ресурсы, назначения и т. д.). Извлекает сведения или обновляет группу проекта или адрес сайта проекта. Извлекает состояние проекта, список проектов в черновых таблицах, все суммарные задачи, задачи, которые можно назначить указанному ресурсу, или все проекты, в которых ресурс имеет назначения.
Создает обязательства и управляет ими, создает предложения по проекту и проекты из списков задач SharePoint, а также находит отношения между проектами и главными проектами.
psiserviceapp. Используется в Project Online во внутренних целях. Классы и элементы psiserviceapp не поддерживаются для сторонней разработки.
PWA. Содержит ряд методов, оптимизированных для Project Web App, в том числе методы для правил утверждения обновления задач и для управления отчетами о состоянии. Методы PWA часто являются специализированными и в некоторой мере избыточными по сравнению с эквивалентными методами в других службах PSI. Методы PWA часто используют или возвращают те же наборы данных, что и другие методы PSI.
Доступ к службе PWA возможен только с помощью URL-адреса ProjectServiceApplication. Классы и элементы PWA не поддерживаются для сторонней разработки.
QueueSystem. Управляет очередью Project Server. Извлекает счетчик заданий, время ожидания задания или группы заданий, состояние всех заданий, указанные задания, задания, принадлежащие вызывающему объекту, или задания для указанных проектов. Управляет корреляцией заданий и настраивает очередь.
Resource. Управляет корпоративными ресурсами. Извлекает, возвращает, обновляет или создает ресурсы либо пользователей Project Server и их параметры авторизации. Обнаруживает ресурсы по имени или GUID. Считывает данные ресурса или пользователя, а также структурную декомпозицию ресурсов (СДРес) и соответствующие сведения о безопасности. Извлекает все назначения для ресурса и сбрасывает пароли пользователей. Класс Resource содержит методы CRUD для делегирования пользователей.
ResourcePlan. Управляет планами ресурсов. Извлекает, возвращает, публикует и включает методы CRUD для планов ресурсов.
Security. Содержит методы CRUD для шаблонов безопасности, категорий безопасности, организационных и глобальных разрешений, а также групповых разрешений. Класс Security включает методы для категорий проекта.
Statusing. Управляет обновлениями состояния и назначениями. Применяет обновления состояния или утверждения, отправляет обновления состояния, устанавливает сводные сведения для отправленных обновлений, удаляет утвержденные обновления состояния или историю утверждений для конкретного пользователя, а также удаляет все сведения о состоянии для набора проектов. Создает, извлекает или делегирует назначения, а также устанавливает длительность работ назначения. Извлекает новые назначения для текущего пользователя. Извлекает журнал назначений или транзакций задач, повременные фактические данные или иерархию суммарных задач.
Выполняет предварительный просмотр или импорт данных расписания или читает рабочее и нерабочее время пользователя. Находит ожидающие обновления состояния, сведения для отправленных обновлений или запись транзакции изменений в отправленном обновлении. Читает состояние группы.
TimeSheet. Управляет расписаниями. Включает методы CRUD для расписаний и отправляет или повторно вызывает расписания. Находит расписания, которые просрочены или ожидают утверждения. Выполняет поиск расписаний по дате или периоду. Получает список утверждающих расписания. Предварительно загружает фактические данные расписаний и проверяет строки расписаний. Класс TimeSheet включает методы ReadProjectTimesheetLines и SubmitTimesheetLines для считывания и отправки расписаний для другого ресурса без необходимости в олицетворении.
View. Служба View разработана для использования только в Project Web App. Методы в классе View управляют представлениями, просматривают отчеты и считывают поля в представлениях.
Доступ к службе View возможен только с помощью URL-адреса ProjectServiceApplication. Методы View не поддерживаются для сторонней разработки.
WinProj. Служба WinProj предназначена для использования только в Project профессиональный. Сторонние разработчики не должны использовать методы WinProj для программирования в Project Server.
Некоторые методы WinProj используют наборы данных, например ProjectRelationsDataSet и ResourceDataSet, которые также используются службами Project и Resource, но в Project Professional для них требуются особые свойства и функции.
Доступ к службе WinProj возможен только с помощью URL-адреса ProjectServiceApplication. Методы WinProj не поддерживаются для сторонней разработки.
WssInterop. Управляет сайтами проектов. Создает и удаляет сайты проектов. Получает сведения, а также обновляет параметры и сайты администрирования SharePoint. Синхронизирует и обновляет данные членства и группы для сайтов проектов.
Пространство имен каждой службы включает все классы схемы DataSet и обработчик событий, используемые службой. Например, Calendar.svc (или Calendar.asmx?wsdl для веб-службы ASMX) описывает службу Calendar. Если вы присвоите ссылке имя WebSvcCalendar, пространство имен прокси-сервера будет содержать основной класс Calendar с методами CheckInCalendars, CheckOutCalendars и т. д. Пространство имен прокси-сервера WebSvcCalendar также включает класс CalendarDataSet со всеми его подклассами.
Некоторые из служб PSI содержат дублирующиеся классы DataSet. Например, обе службы Project и Statusing содержат класс ProjectDataSet. Это объясняется тем, что методы в обеих службах Project и Statusing включают ссылки на ProjectDataSet, и сборки прокси, созданные при установке ссылок и компиляции приложения, включают соответствующие наборы данных. Службам Project и Statusing могут требоваться значения для разных полей в классе ProjectDataSet.ProjectRow.
При переходе по пространствам имен и классам в справке PSI, например, для просмотра веб-методов для службы Project, разверните пространство имен [Веб-служба Project] в списке Содержимое, а затем разверните класс Project.