Создание "тонкого" рабочего места Oracle в интерфейсе SharePoint 2010

Перед специалистами Контек была поставлена интересная и не простая задача: реализовать на платформе SharePoint тонкого клиента существующей системы, которая полностью реализована на технологиях Oracle.

Вся сложность поставленной задачи была в том, что клиент (рабочее место оператора) должен быть полностью тонким и гибким. Т.е. никаких изменений в существующую систему вносить было нельзя и также нельзя было выносить логику уровня приложения в SharePoint - вся логика работы системы должна была остаться в Oracle, а SharePoint должен был служить исключительно интерфейсом. Гибкость же клиента подразумевала управление логикой отображения данных также со стороны Oracle. Т.е. реализация рабочего места в SharePoint должна была соблюдать следующие условия:

  • Для доступа к данным Oracle нельзя использовать прямое подклюение в БД
  • Системы безопасности SharePoint и Oracle должны быть интегрированы
  • Работа с файлами в SharePoint должна осуществляться как обычно, а сами файлы должны храниться в БД Oracle
  • Поддержка генерации пользовательских форм "на лету", в соответствии с моделью отображения переданной из БД Oracle
  • Работа с длинными списками, постраничный вывод, фидьтрация по нескольким полям
  • Использование форм InfoPath

В результате проведенного анализа функциональных возможностей BCS было выработано проектное решение, в котором основная роль отводилась именно этому компоненту


Компании Контек удалось за два месяца построить прототип информационной системы на платформе SharePoint 2010. В ходе проекта были опробованы механизмы:

  • Поддержка "тонких" операций CRUD (Create-Read-Update-Delete) для данных, хранимых в БД Oracle. Сама реализация операций CRUD осталась в БД Oracle
  • Регулирование прав доступа к данным и к функциям на стороне клиента/сервер
  • Определение собственных действий с данными (Actions) и просмотр результатов операций
  • Генерируемое из файла xml представление данных, работа с формами InfoPath
  • Работа с файлами из БД Oracle (upload/ download)