1 / 50

Business Connectivity Services: новые возможности

Business Connectivity Services: новые возможности. Баум Виталий Sr. SharePoint Developer Conteq. Содержание. Обзор Business Connectivity Services (BCS) Обзор инструментов для работы с BCS Демо Приложение для работы с покупками Прикладные навыки. Business Connectivity Services (BCS).

seth
Download Presentation

Business Connectivity Services: новые возможности

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Business Connectivity Services: новые возможности Баум Виталий Sr. SharePoint Developer Conteq

  2. Содержание • Обзор Business Connectivity Services (BCS) • Обзор инструментов для работы с BCS • Демо • Приложение дляработы с покупками • Прикладные навыки

  3. Business Connectivity Services (BCS) Обзор

  4. Microsoft SharePoint 2010Платформа бизнесс-взаимодействия для предприятий и Интернета Sites Sites Расширенноевзаимодействие Composites Communities Composites Унифицированная инфраструктура Insights Content Insights Content Реагирование на потребности бинесса Search Search

  5. SharePoint CompositesПредоставляет возможности для построения решений без кодирования с учётом функционала и контроля Sites Sites Быстрое построение решений Composites Communities Composites Расширение возможностей ваших данных Insights Content Insights Content Контроль над прикладными решениями Search Search

  6. Business Connectivity Services Out-of-box возможности Сервисы Утилиты Расширенный SharePoint Оптимизированные решения Интеграция Внешние данные и сервисы

  7. Business Connectivity Services SharePoint Office Applications Design Tools BCS Client Dev Platform Business Intelligence Enterprise Content Management Collaboration Social Enterprise Search SharePointDesigner External Lists External Content Type Repository Visual Studio Business Data Connectivity LOB Web Service WCF DB Web 2.0

  8. Области расширения • Расширение интерфейса пользователя Office и SharePoint для взаимодействия с внешними данными • Представления • Чтение и запись данных из различных хранилищ (DB, WCF/WebService, .NET типы) • Коммуникаций • Интегрированные приложения для выполнения всего ряда работ от кастомизации до разработки сложных решений с дистрибуцией • Прикладной

  9. Внешние типы содержимого Строительные блоки Описывает схему внешних данных и правила взаимодействия с Office и SharePoint *так же известный как BDC Entity Office Clients (Rich) BCS Внешние данные (Web Service, DB, .Net object, LOB system, Web 2.0 service, etc.) External Content Type (ECT) BCS Решения на базе BCS и внешних типов содержимого позволяют интегрировать данные в SharePoint и Office SharePoint (Thin)

  10. Утилиты для построения решений на BCS

  11. Типы решений, утилитыи роли БЕЗ КОДА* С КОДОМ SharePoint Designer SharePoint SDK Visual Studio Advanced Developer Developer Power User

  12. Работа с данными во внешних списках Подключение внешних списков к Outlook, SPW Типы решений, утилитыи роли • Аггрегация, трансформация и обеспечение безопасности данных • Создание дополнительных решений для интеграции в Office • Создание бизнесс-логики в формах • Создание повторно используемых компонент • Кастомизация • Формы InfoPath • Риббон и панель задач Outlook • Word (QuickParts) • Workflow • Страницы веб-частей Просто Требует навыков Сложно БЕЗ КОДА* С КОДОМ SharePoint Designer SharePoint SDK Visual Studio Advanced Developer Developer Power User

  13. Работа с данными во внешних списках Подключение внешних списков к Outlook, SPW Типы решений, утилитыи роли • Аггрегация, трансформация и обеспечение безопасности данных • Создание дополнительных решений для интеграции в Office • Создание бизнесс-логики в формах • Создание повторно используемых компонент • Кастомизация • Формы InfoPath • Риббон и панель задач Outlook • Word (QuickParts) • Workflow • Страницы веб-частей Просто Требует навыков Сложно БЕЗ КОДА* С КОДОМ SharePoint Designer SharePoint SDK Visual Studio Advanced Developer Developer Power User

  14. Подходы к построению решений • Клиент-Серверная среда • Создание приложений для подключения к существующим источникам данных (без кода) (WCF, Sql Server и .Net типы) • Настройка элементов управления и форм InfoPath • Разработка на одной машине • Создание используемых типов содержимого для различных источников данных, используя .Net • Расширение и создание элементов управления для Office и SharePoint Import & Configure СозданиеWSP “Live” Connection Export, Import & Configure Developer Power User Visual Studio SharePoint Server (Shared, Dev/Prod) SharePoint Designer IT Admin Production Environment SharePoint Designer SDK

  15. Обзор утилит • Создание Внешних Типов Содержимого и Профильных страниц • Дизайнер ECT Подключение к существующим WCF/Web Services, Sql Server или.Net Подключение к любым данным через .Netкод Data Connectivity • Интеграция вн. данных в WF • Дизайнер Workflow • Создание внешних списков и форм InfoPath • Дизайнер списков и форм • Расширения для Office • Написание расширений для Office SharePoint and Office Clients UX • Расширение Outlook • Расширение риббона и панели задач Outlook Дополнительные примеры и утилиты

  16. Демо Приложение для работы с покупками

  17. Список Products SharePoint Server Products External List Products External Content Type WCF Service Data Aggregation Plans Currency Sql Database RESTful

  18. Data Aggregation Scenario Office Client SharePoint Server Contacts as Outlook Contacts Contacts List in Excel Contacts External List Connect to Outlook Contact ECT BCS External Data Cache Contacts Contacts ECT BDC Assembly Data Aggregation Contact Contact Info Contact Sales Info

  19. BCS для Office и SharePointУпаковка и дистрибуция Клиент Office Установка и обновление ClickOnceпакет Компоненты для Office SharePoint Server Включён в WSP Решения для BCS Компоненты для SharePoint WSP пакет Импорт

  20. SharePoint Designer и Visual StudioИтог

  21. Прикладные навыкиПолная интеграция

  22. BCS на мобильных устройствах • Специальное представление для мобильных устройств доступно и для внешних данных

  23. Способы подключения

  24. Способы подключения • SQL Server • WCF • .NET Assembly • Остальные источники данных

  25. SQL Server • Microsoft SQL Server • Полная поддержка в SharePoint Designer • Простота создания внешний типов содержимого • Oracle, MySQL, ODBC • Нет поддержки в SharePoint Designer • Ручное редактирование ADF

  26. Web services • WCF Services • Полная поддержка в SharePoint Designer • Простота создания внешний типов содержимого • REST Services • Нет поддержки в SharePoint Designer • Ручное редактирование ADF

  27. .NET Assemblies • .NET Assembly Connector • Создание специфичных, часто денормализованных данных, предназначенных для представления • Возможность предоставления точек конфигурирования

  28. Остальные источники • Большинство потребностей подключения к современным типам данных поддерживается на платформе .NET

  29. Прикладные навыкиОбъектная модель

  30. Объектная модель: Чтение • // get the catalog of entities to work with... BdcService service = SPFarm.Local • .Services.GetValue<BdcService>(); IMetadataCatalog catalog = service • .GetDatabaseBackedMetadataCatalog( • SPServiceContext.Current);

  31. Объектная модель: Чтение • // 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; }

  32. Объектная модель: Чтение • // 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);        • }

  33. Объектная модель: Создание • //Create a new customer modelModelcustomerModel = Model.Create("CustomerModel", true, catalog);//Make a new Customer LobSystemLobSystemawLobSystem = customerModel.OwnedReferencedLobSystems.Create("Customer", true, SystemType.Database);//Make a new AdventureWorksLobSystemInstanceLobSystemInstanceawLobSystemInstance = 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");

  34. Объектная модель: Создание • <LobSystemInstances> • <LobSystemInstanceName="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>

  35. Объектная модель: Создание • //Create a new Customer Entity EntitycustomerEntity = 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");

  36. Прикладные навыкиТиповые операции

  37. Типовые операции • AccessChecker • AssociationNavigator • Scalar • Associator • BinarySecurityDescriptorAccessor • BulkAssociatedIdEnumerator • BulkAssociationNavigator • BulkIdEnumerator • BulkSpecificFinder

  38. Типовые операции • ChangedIdEnumerator • Creator • DeletedIdEnumerator • Deleter • Disassociator • Finder • GenericInvoker • IdEnumerator • SpecificFinder

  39. Типовые операции • StreamAccessor • Updater

  40. Finder • SELECT * FROM Customers • SELECT ProductID, Name, ProductNumber, ListPrice • FROM Product • WHERE (ProductID<= @MinProductID) • EntityDataType[] GetEntities()

  41. SpecificFinder • SELECT * FROM Customers WHERE CustomerID= id • EntityDataTypeGetEntityById(IdType1 id1, etc…)

  42. IDEnumerator • SELECT TOP 100 Id FROM Customers WHERE Id>=@LastIdSeen ORDER BY Id

  43. IDEnumerator • SELECT TOP 100 Id FROM Customers WHERE Id>=@LastIdSeen ORDER BY Id

  44. Типы фильтров • Limit • PageNumber • Wildcard • UserContext • UserCulture • Username • Password • LastIdSeen

  45. Sorting & Paging • [OperationContract]IEnumerable<Employee> GetEmployeesPaged( • intstartRowNumber, intpageCount, stringsortColumn, stringsortDir);

  46. Sorting & Paging • <View> <MethodName="GetEmployeesPaged"> <FilterName="FilterRowNum"Value="{dvt_firstrow}"/> <FilterName="FilterPageCount"Value="30"/> <FilterName="FilterSortColumn"Value="{dvt_sortfield}"/> <FilterName="FilterSortDir"Value="{dvt_sortdir}"/> </Method> <RowLimitPaged="TRUE">30</RowLimit></View>

  47. Business Connectivity Services

  48. Business Connectivity Services

  49. Business Connectivity Services • Возможности чтения и записи к большинству источников данных • Работа в online и offline • Большое количество возможностей доступных из коробки • Адаптируемость под нужды бизнеса • Поддержка по стороны средств разработки и кастомизации • Унификация рабочей среды

  50. Спасибо • Виталий Баум • http://butaji.ru

More Related