business connectivity services: новые возможности
DESCRIPTION
Business Connectivity Services: новые возможности. Баум Виталий Sr. SharePoint Developer Conteq. Содержание. Обзор Business Connectivity Services (BCS) Обзор инструментов для работы с BCS Демо Приложение для работы с покупками Прикладные навыки. Business Connectivity Services (BCS). - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/1.jpg)
Business Connectivity Services: новые возможностиБаум ВиталийSr. SharePoint DeveloperConteq
![Page 2: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/2.jpg)
Содержание
Обзор Business Connectivity Services (BCS)Обзор инструментов для работы с BCSДемо
Приложение для работы с покупками
Прикладные навыки
![Page 3: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/3.jpg)
Business Connectivity Services (BCS)Обзор
![Page 4: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/4.jpg)
Microsoft SharePoint 2010Платформа бизнесс-взаимодействия для предприятий и Интернета
Расширенное взаимодействие
Унифицированная инфраструктура
Реагирование на потребности бинесса
Communities
Search
Sites
Composites
ContentInsights
Search
Sites
Composites
ContentInsights
![Page 5: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/5.jpg)
Быстрое построение решений
Расширение возможностей ваших данных
Контроль над прикладными решениями
SharePoint CompositesПредоставляет возможности для построения решений без кодирования с учётом функционала и контроля
Communities
Search
Sites
Composites
ContentInsights
Search
Sites
ContentInsights
Composites
![Page 6: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/6.jpg)
Business Connectivity Services
Out-of-box возможностиСервисыУтилиты
Расширенный SharePoint
ИнтеграцияВнешние данные и
сервисы
Оптимизированные решения
![Page 7: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/7.jpg)
SharePointDesign Tools
Office Applications
BCS Client
Business Data Connectivity
External Content Type Repository
External Lists
Dev Platform
Enterprise Search
Business Intelligence
Collaboration Social
Enterprise Content
Management
Web 2.0DBWCFWeb ServiceLOB
SharePointDesigner
Visual Studio
Business Connectivity Services
![Page 8: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/8.jpg)
Области расширения
Расширение интерфейса пользователя Office и SharePoint для взаимодействия с внешними данными
Представления
Чтение и запись данных из различных хранилищ (DB, WCF/WebService, .NET типы)
Коммуникаций
Интегрированные приложения для выполнения всего ряда работ от кастомизации до разработки сложных решений с дистрибуцией
Прикладной
![Page 9: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/9.jpg)
Внешние типы содержимого
Office Clients (Rich)
SharePoint (Thin)
External Content Type (ECT)
Внешние данные(Web Service, DB, .Net
object, LOB system, Web 2.0 service, etc.)
BCS
BCSРешения на базе BCS и внешних типов содержимого позволяют интегрировать данные в SharePoint и Office
Описывает схему внешних данных и правила взаимодействия с Office и SharePoint
*так же известный как BDC Entity
Строительные блоки
![Page 10: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/10.jpg)
Утилиты для построения решений на BCS
![Page 11: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/11.jpg)
Типы решений, утилитыи роли
SharePoint Designer
Advanced Developer
SharePoint SDK
VisualStudio
DeveloperPower User
БЕЗ КОДА* С КОДОМ
![Page 12: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/12.jpg)
Типы решений, утилитыи роли
Требует навыков СложноПросто
• Кастомизация• Формы InfoPath• Риббон и панель
задач Outlook• Word (QuickParts)• Workflow• Страницы веб-
частей
• Аггрегация, трансформация и обеспечение безопасности данных• Создание
дополнительных решений для интеграции в Office• Создание бизнесс-
логики в формах• Создание
повторно используемых компонент
• Работа с данными во внешних списках
• Подключение внешних списков к Outlook, SPW
SharePoint Designer
SharePoint SDK
DeveloperPower User
БЕЗ КОДА*
Advanced Developer
VisualStudio
С КОДОМ
![Page 13: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/13.jpg)
Требует навыковПросто
• Кастомизация• Формы InfoPath• Риббон и панель
задач Outlook• Word (QuickParts)• Workflow• Страницы веб-
частей
• Работа с данными во внешних списках
• Подключение внешних списков к Outlook, SPW
SharePoint Designer
SharePoint SDK
DeveloperPower User
БЕЗ КОДА*
Сложно
• Аггрегация, трансформация и обеспечение безопасности данных• Создание
дополнительных решений для интеграции в Office• Создание бизнесс-
логики в формах• Создание
повторно используемых компонент
Advanced Developer
VisualStudio
С КОДОМ
Типы решений, утилитыи роли
![Page 14: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/14.jpg)
Подходы к построению решений
Power User
SharePoint Designer
Developer
VisualStudio
SharePoint
Designer
SDK
Разработка на одной машинеСоздание используемых типов содержимого для различных источников данных, используя .NetРасширение и создание элементов управления для Office и SharePoint
Клиент-Серверная средаСоздание приложений для подключения к существующим источникам данных (без кода) (WCF, Sql Server и .Net типы)Настройка элементов управления и форм InfoPath
IT AdminProduction
EnvironmentСозданиеWSP
Import & Configure
SharePoint Server(Shared, Dev/Prod)
“Live” ConnectionExport, Import
& Configure
![Page 15: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/15.jpg)
Data
Connect
ivit
yShare
Poin
t and O
ffice
Clie
nts
UX
Обзор утилитВозможности
SharePoint Designer 2010
Visual Studio 2010 SDK
Создание Внешних Типов Содержимого и Профильных страниц• Дизайнер ECT
Интеграция вн. данных в WF• Дизайнер WorkflowСоздание внешних списков и форм InfoPath• Дизайнер списков и форм
Расширения для Office• Написание расширений для Office
Расширение Outlook• Расширение риббона и панели
задач Outlook
Дополнительные примеры и утилиты
Подключение к существующим WCF/Web Services, Sql Server
или .Net
Подключение к любым данным через .Net код
![Page 16: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/16.jpg)
Приложение для работы с покупками
Демо
![Page 17: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/17.jpg)
SharePoint Server
Список Products
WCF ServiceData Aggregation
ProductsExternal Content
Type
ProductsExternal List
PlansSql Database
CurrencyRESTful
![Page 18: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/18.jpg)
SharePoint Server Office Client
Data Aggregation Scenario
ContactsExternal List
BDC AssemblyData Aggregation
ContactECT
Connect to Outlook
BCS External Data Cache
Contacts
ContactsECT
Contacts asOutlook Contacts
Contacts Listin Excel
ContactContact Info
ContactSales Info
![Page 19: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/19.jpg)
BCS для Office и SharePoint Упаковка и дистрибуция
Реш
ен
ия д
ля B
CS
Компоненты для Office
Компоненты для
SharePoint
ClickOnce пакет
WSPпакет
SharePointServer
Импорт
Установка и обновление
Включён в WSP
Клиент Office
![Page 20: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/20.jpg)
SharePoint Designer и Visual StudioИтог
Возможности SharePoint Designer 2010 Visual Studio 2010
Соединения К существующим WCF, Sql Server, .Net Assembly
К любым источникам данных через .Net Assemblies
Моделирование Изучение и настройка Создание и публикация
Типовые сценарии Создание простых моделей и элементов управления (Внешние списки, Outlook, SharePoint Workspace, InfoPath, Поиск, Ассоциации)
- Создание сложных моделей с учётом аггрегации, трансформации и безопасности данных- Расширение базовых возможностей Office через VSTO- Создание элементов управления для Office и SharePoint (Веб-части для BDC)
Ограничения -Источники данных должны соответствовать требованиям-Дополнительные, пакетные операции-Разнородные сервисы-Связи по внешнему ключу
- Визуальный дизайнер только для можелей на основе .Net- Различия в установке для Office и SharePoint
![Page 21: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/21.jpg)
Прикладные навыкиПолная интеграция
![Page 22: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/22.jpg)
BCS на мобильных устройствах
Специальное представление для мобильных устройств доступно и для внешних данных
![Page 23: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/23.jpg)
Способы подключения
![Page 24: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/24.jpg)
Способы подключения
SQL ServerWCF.NET AssemblyОстальные источники данных
![Page 25: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/25.jpg)
SQL Server
Microsoft SQL ServerПолная поддержка в SharePoint DesignerПростота создания внешний типов содержимого
Oracle, MySQL, ODBCНет поддержки в SharePoint DesignerРучное редактирование ADF
![Page 26: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/26.jpg)
Web services
WCF ServicesПолная поддержка в SharePoint DesignerПростота создания внешний типов содержимого
REST ServicesНет поддержки в SharePoint DesignerРучное редактирование ADF
![Page 27: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/27.jpg)
.NET Assemblies
.NET Assembly ConnectorСоздание специфичных, часто денормализованных данных, предназначенных для представленияВозможность предоставления точек конфигурирования
![Page 28: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/28.jpg)
Остальные источники
Большинство потребностей подключения к современным типам данных поддерживается на платформе .NET
![Page 29: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/29.jpg)
Прикладные навыкиОбъектная модель
![Page 30: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/30.jpg)
Объектная модель: Чтение
// get the catalog of entities to work with... BdcService service = SPFarm.Local
.Services.GetValue<BdcService>(); IMetadataCatalog catalog = service
.GetDatabaseBackedMetadataCatalog(SPServiceContext.Current);
![Page 31: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/31.jpg)
Объектная модель: Чтение
// get the Employee external content type... IEntity entity = catalog
.GetEntity("http://localhost", "Employees");// get the filters for the default Finder method IFilterCollection filters = entity
.GetDefaultFinderFilters();// if FirstNameTextbox has a value set the filter value... if (FirstNameTextbox.Text != string.Empty) { WildcardFilter filter = (WildcardFilter)filters[0]; filter.Value = FirstNameTextbox.Text; }
![Page 32: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/32.jpg)
Объектная модель: Чтение
// return the filtered data using the default Finder method... IEntityInstanceEnumerator enumerator = entity
.FindFiltered(filters, entity.GetLobSystem().GetLobSystemInstances()[0].Value);
DataTable table = null;// loop through the data returned while (enumerator.MoveNext()) { // first time setup the datatable, everytime there after add a row... if (table == null) table = enumerator.Current.EntityAsDataTable; else enumerator.Current.EntityAsDataRow(table); }
![Page 33: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/33.jpg)
Объектная модель: Создание
//Create a new customer modelModel customerModel = Model.Create("CustomerModel", true, catalog);
//Make a new Customer LobSystemLobSystem awLobSystem = customerModel.OwnedReferencedLobSystems.Create("Customer", true, SystemType.Database);
//Make a new AdventureWorks LobSystemInstanceLobSystemInstance awLobSystemInstance = awLobSystem.LobSystemInstances.Create("AdventureWorks", true);
//Set the connection propertiesawLobSystemInstance.Properties.Add("AuthenticationMode", "PassThrough");awLobSystemInstance.Properties.Add("DatabaseAccessProvider", "SqlServer");awLobSystemInstance.Properties.Add("RdbConnection Data Source", "DEV1");awLobSystemInstance.Properties.Add("RdbConnection Initial Catalog", "Customers");awLobSystemInstance.Properties.Add("RdbConnection Integrated Security", "SSPI");awLobSystemInstance.Properties.Add("RdbConnection Pooling", "true");
![Page 34: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/34.jpg)
Объектная модель: Создание
<LobSystemInstances> <LobSystemInstance Name="AdventureWorksWS"> <Properties> <Property Name="WcfAuthenticationMode" Type="System.String">PassThrough</Property> <Property Name="WcfEndpointAddress" Type="System.String">http://webserver:90/webservice.asmx</Property> <Property Name="ShowInSearchUI" Type="System.String"></Property> </Properties> </LobSystemInstance> </LobSystemInstances>
![Page 35: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/35.jpg)
Объектная модель: Создание
//Create a new Customer Entity Entity customerEntity = Entity.Create("Customer", "AdventureWorks", true, new Version("1.0.0.0"), 10000, CacheUsage.Default, awLobSystem, customerModel, catalog); //Set the identifier - CustomerID columncustomerEntity.Identifiers.Create("CustomerId", true, "System.Int32");
![Page 36: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/36.jpg)
Прикладные навыкиТиповые операции
![Page 37: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/37.jpg)
Типовые операции
AccessCheckerAssociationNavigatorScalarAssociatorBinarySecurityDescriptorAccessorBulkAssociatedIdEnumeratorBulkAssociationNavigatorBulkIdEnumeratorBulkSpecificFinder
![Page 38: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/38.jpg)
Типовые операции
ChangedIdEnumeratorCreatorDeletedIdEnumeratorDeleterDisassociatorFinderGenericInvokerIdEnumeratorSpecificFinder
![Page 39: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/39.jpg)
Типовые операции
StreamAccessorUpdater
![Page 40: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/40.jpg)
Finder
• SELECT * FROM Customers• SELECT ProductID, Name, ProductNumber, ListPrice FROM Product WHERE (ProductID <=
@MinProductID) • EntityDataType[] GetEntities()
![Page 41: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/41.jpg)
SpecificFinder
• SELECT * FROM Customers WHERE CustomerID = id
• EntityDataType GetEntityById(IdType1 id1, etc…)
![Page 42: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/42.jpg)
IDEnumerator
• SELECT TOP 100 Id FROM Customers WHERE Id>=@LastIdSeen ORDER
BY Id
![Page 43: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/43.jpg)
IDEnumerator
• SELECT TOP 100 Id FROM Customers WHERE Id>=@LastIdSeen ORDER
BY Id
![Page 44: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/44.jpg)
Типы фильтров
LimitPageNumberWildcardUserContextUserCultureUsernamePasswordLastIdSeen
![Page 45: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/45.jpg)
Sorting & Paging
[OperationContract]IEnumerable<Employee> GetEmployeesPaged(
int startRowNumber, int pageCount, string sortColumn, string sortDir);
![Page 46: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/46.jpg)
Sorting & Paging
<View><Method Name="GetEmployeesPaged">
<Filter Name="FilterRowNum" Value="{dvt_firstrow}"/>
<Filter Name="FilterPageCount" Value="30"/>
<Filter Name="FilterSortColumn" Value="{dvt_sortfield}"/>
<Filter Name="FilterSortDir" Value="{dvt_sortdir}"/>
</Method><RowLimit Paged="TRUE">30</RowLimit>
</View>
![Page 47: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/47.jpg)
Business Connectivity Services
![Page 48: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/48.jpg)
Business Connectivity Services
![Page 49: Business Connectivity Services: новые возможности](https://reader035.vdocuments.site/reader035/viewer/2022081513/56815ac3550346895dc88f90/html5/thumbnails/49.jpg)
Business Connectivity Services
Возможности чтения и записи к большинству источников данныхРабота в online и offlineБольшое количество возможностей доступных из коробкиАдаптируемость под нужды бизнесаПоддержка по стороны средств разработки и кастомизацииУнификация рабочей среды