Upload
andre-lage
View
1.168
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Citation preview
CanalSharePoint – Maior Comunidade SharePoint do Brasil 1
Ribbons e Cliente Object Model
André LageConsultor SharePoint
Sybase, SBS Portugal
Wagner AmorinEspecialista SharePoint, EPM, BI, CRM
TerraForum Consultores
CanalSharePoint – Maior Comunidade SharePoint do Brasil 2
Agenda
• Apresentação• Ribbon• Client Object Model• Perguntas e respostas
CanalSharePoint – Maior Comunidade SharePoint do Brasil 3
Apresentação
• MCTS (Windows SharePoint Services 3.0, Microsoft Office SharePoint Server 2007 - configuração e desenvolvimento);
• Participação ativa nos foruns da microsoft sobre Sharepoint• Tem atuado diretamente na elaboração de artigos em Sharepoint para a Comunidade
CanalSharepoint.com.br.
André LageSybase, SBS Portugalhttp://www.sybase.pt
http://aaclage.blogspot.com
CanalSharePoint – Maior Comunidade SharePoint do Brasil 4
Apresentação
• MCPD Web Developer• MCTS (Windows SharePoint Services 3.0, Microsoft Office SharePoint Server 2007 -
configuração e desenvolvimento);
• Tem atuado diretamente na liderança da Comunidade CanalSharepoint.com.br.
Wagner AmorimTerraForum Consultores
ww.canalsharepoint.com.br\wagnerawaamorim.spaces.live.com
CanalSharePoint – Maior Comunidade SharePoint do Brasil 5
Objetivo
• Com a evolução dos produtos SharePoint 2007 e agora a nova versão, este webcast terá como objetivo fazer um Overview das funcionalidades Ribbon e Client Object Model do SharePoint 2010.
CanalSharePoint – Maior Comunidade SharePoint do Brasil 6
Entendendo a evolução
• SharePoint 2010
• SharePoint 2007
CanalSharePoint – Maior Comunidade SharePoint do Brasil 7
Follow Allways
• Microsoft “Best Pratices” SEMPRE...
Estudo das Metodologias e Paradigmas Sharepoint, antes de cada Projecto...
CanalSharePoint – Maior Comunidade SharePoint do Brasil 8
Vantagens Ribbon
• Substituir Menus por Tabs• Flexibilidade• Facilidade• Interactivo e apelativo• Uniformizar com Office 2007/2010
CanalSharePoint – Maior Comunidade SharePoint do Brasil 9
Feature Ribbon
Package Feature:Criar ficheiro WSP para instalação da Solução.
Feature Manifest:
Definição das Funcionalidades através de uma estrutura XML “Feature.xml”.
Elements Manifest:Ficheiro para definição das novas funcionalidades.
Para definir as novas opções para personalizar precisamos escolher uma das seguintes opções:
<CustomAction> Criar novas opções para Menu. <CustomActionGroup> - Criar novo grupo de opções para Menu. <HideCustomAction> - Esconder opções do Menu.
CanalSharePoint – Maior Comunidade SharePoint do Brasil 10
Estrutura do Ribbon
• CustomAction<CustomAction
Id="AsminhasTab"
Location="CommandUI.Ribbon"
RegistrationId="101"
RegistrationType="List">
TemplateID Descrição
100 Generic list101 Document library
102 Survey
103 Links list
.....
CanalSharePoint – Maior Comunidade SharePoint do Brasil 11
Estados para o Ribbon
Class DescriçãoCommandUI.Ribbon Menus associados aos templates pela opção
RegistrationId.CommandUI.Ribbon.ListView
Menus aparecem quando a Listagem de webpart está presente.
CommandUI.Ribbon.EditForm
Menus associado a form de edição.
CommandUI.Ribbon.NewForm
Menus associado a Nova form.
CommandUI.Ribbon.DisplayForm
Menus associado a visualização da form.
CanalSharePoint – Maior Comunidade SharePoint do Brasil 12
Controlos para Ribbons
Controlo Descrição
Button A simple button used to perform an action.
Checkbox A check box used to select an option.
Color Picker A grid used to select a color or style.
Combo Box A list used to select a value by clicking or typing.
Drop Down A list used to select a value by clicking.
Flyout Anchor A button with a down arrow used to open a menu.
Insert Table A 10-by-10 grid used to specify the dimensions of a table.
Label A line of text used to provide information.
Menu A container used to show pop-up menus.
.......
http://msdn.microsoft.com/en-us/library/ee537017(office.14).aspx
CanalSharePoint – Maior Comunidade SharePoint do Brasil 13
Identificar onde ficar o Ribbons
• Ribbon.Read• Ribbon.BDCAdmin• Ribbon.DocLibListFormEdit• Ribbon.ListForm.Display• Ribbon.ListForm.Edit• Ribbon.SvcApp• Ribbon.Solution• Ribbon.UsageReport• Ribbon.WikiPageTab• Ribbon.PublishTab• Ribbon.WebPartPage• Ribbon.WebApp• Ribbon.SiteCollections• Ribbon.CustomCommands
CanalSharePoint – Maior Comunidade SharePoint do Brasil 14
Exemplo Controlo Ribbon
<CustomAction Id=“Botao Ribbon" RegistrationType="List" RegistrationId="101" Location="CommandUI.Ribbon" Sequence="5"> <CommandUIExtension> <CommandUIDefinitions> <CommandUIDefinition Location="Ribbon.Documents.Manage.Controls._children"> <Button Id="Ribbon.Documents.New.DemoButton" Alt=“Botao Ribbon“ Sequence="5" Command="Opcao“ Image32by32="_layouts/images/Ribbon/Pinguim.png" LabelText="Link to Sybase“ TemplateAlias="o1"/> </CommandUIDefinition> </CommandUIDefinitions> <CommandUIHandlers> <CommandUIHandler Command=" Opcao" CommandAction="javascript:window.location.href='http://www.sybase.pt';" /> </CommandUIHandlers> </CommandUIExtension> </CustomAction>
CanalSharePoint – Maior Comunidade SharePoint do Brasil 15
Desenhar Ribbon
CanalSharePoint – Maior Comunidade SharePoint do Brasil 16
Desenhar Ribbon
<CommandUIDefinition Location="Ribbon.Tabs._children"> <Tab Id="Ribbon.CustomTabExample" Title="A minha Tab" Description="Aqui ficam os meus controls" Sequence="501"><Scaling //Escala da nossa Tab “Size="OneLargeTwoMedium"” Id="Ribbon.CustomTabExample.Scaling">....
<Groups Id="Ribbon.CustomTabExample.Groups"> <Group Id="Ribbon.CustomTabExample.CustomGroupExample" Description="Novo Grupo Base" Title="Novo Grupo Base" Sequence="52" Template="Ribbon.Templates.CustomTemplateExample"> <Controls Id="Ribbon.CustomTabExample.CustomGroupExample.Controls"> <Button. ...
CanalSharePoint – Maior Comunidade SharePoint do Brasil 17
Desenhar Ribbon
<CommandUIDefinition Location="Ribbon.Templates._children"> <GroupTemplate Id="Ribbon.Templates.CustomTemplateExample"> <Layout Title="OneLargeTwoMedium" LayoutTitle="OneLargeTwoMedium"> <Section Alignment="Top" Type="OneRow"> <Row>....
<CommandUIHandlers> <CommandUIHandler Command="CustomTabExample.HelloWorldCommand" CommandAction="javascript:alert('Botao Selecionado');" /> ....
CanalSharePoint – Maior Comunidade SharePoint do Brasil 18
• Mais WebServices para Sharepoint• Cliente Object Model fornece uma api em vez
de mais serviços • Fornece nova layer para reconhecer os
Objectos d SharePoint• Aumentar a consistencia dos
Desenvolvedores nas diversas plataformas (.Net, ECMAScript, Silverlight)
Porque Client Object Model?
CanalSharePoint – Maior Comunidade SharePoint do Brasil 19
Facilmente é referenciado numa paginas aspx
• _layouts/sp.js• <SharePoint:ScriptLink>• Todas as Librarias foram optimizadas• Jquery
ECMAScript Client Object Model
CanalSharePoint – Maior Comunidade SharePoint do Brasil 20
• Site Collections e Sites• Listas, items da Lista e Schema da Lista• Files e Folders “Ficheiros e Pastas”• Web, List, e List Item Property Bags• Web Parts• Security “Segurança “• Content Types• Site templates “Modelos de Sites”
Areas Suportadas?
CanalSharePoint – Maior Comunidade SharePoint do Brasil 21
Areas Suportadas?
Server (Microsoft .Sharepoint)
.Net (Microsoft.Sharepoint.Client)
Silverlight(Microsoft.SharePoint.Client.Silverlight)
ECMAScript(SP.js)
SPcontext ClientContext ClientContext ClientContext
SPSite Site Site Site
SPWeb Web Web Web
SPList List List List
SPListItem ListItem ListItem ListItem
SPField Field Field Field
Exemplo: SPWeb.Url = Web.Url
CanalSharePoint – Maior Comunidade SharePoint do Brasil 22
Como funciona?
CanalSharePoint – Maior Comunidade SharePoint do Brasil 23
SilverLight• O desenvolvimento em Silverlight é possivel
em Client OM• Podemos utilizar ou numa pagina ASPX ou
numa webPart• Posibilidade de criar Aplicações de
sharepoint utilizando Client OM
Client Object Model
CanalSharePoint – Maior Comunidade SharePoint do Brasil 24
• A Web Part pode ser o host para o Silverlight• Sharepoint ja está pronto para receber o
Silverlight• A Web Part pode guardar propiedade que
podem ser enviadas para o Silverlight pela propiedade InitParameters property “user Control”
• O XAP pode estar na pasta Layouts para efeito de runtime e uso do Client OM
Criar Web Part em Silverlight
CanalSharePoint – Maior Comunidade SharePoint do Brasil 25
Vantagens• Acesso Objectos Sharepoint• Funcionalidades Dinâmicas• API Microsoft
Client Object Model
Possiveis problemas• Desenvolvimento robusto• Intervenções Pontuais• Browsers em Sites Internet
CanalSharePoint – Maior Comunidade SharePoint do Brasil 26
Client Object Model
using System;using Microsoft.SharePoint.Client; class DisplayWebTitle{ static void Main() { ClientContext clientContext = new ClientContext("http://intranet.contoso.com"); Web site = clientContext.Web; clientContext.Load(site); clientContext.ExecuteQuery(); Console.WriteLine("Title: {0}", site.Title); }}
CanalSharePoint – Maior Comunidade SharePoint do Brasil 27
Client Object Model
<script type="text/javascript"> function useClientContext() { var clientContext = new SP.ClientContext('/'); this.oWebsite = clientContext.get_web(); clientContext.load(oWebsite); clientContext.executeQueryAsync(Function.createDelegate(this, this.onQuerySucceeded), Function.createDelegate(this, this.onQueryFailed));}
function onQuerySucceeded() { alert('Titulo: ' + oWebsite.get_title()+ '\n '+oWebsite.get_description());} function onQueryFailed(sender, args) { alert('Request failed. ' + args.get_message() + '\n' + args.get_stackTrace());}</script>
<input type="button" value="Pegar Titulo site" onclick="javascript:useClientContext()"/></div>
http://msdn.microsoft.com/en-us/library/ee537247(office.14).aspx
CanalSharePoint – Maior Comunidade SharePoint do Brasil 28
Client Object Model
CanalSharePoint – Maior Comunidade SharePoint do Brasil 29
Custom Dialog Client OM
CanalSharePoint – Maior Comunidade SharePoint do Brasil 30
Custom Dialog Client OM
CanalSharePoint – Maior Comunidade SharePoint do Brasil 31
P&R
André Lage Wagner Amorimhttp://aaclage.blogspot.com
http://canalsharepoint.com.br/wagnera