Realizando SELECT no SQL Server + SharePoint Solution

Opá que post é esse, isso não é nada aconselhável… Muitos devem estar falando isso, mas isso necessidade surgiu desse post aqui -> Problemas com a proc_ListUrls. Da uma lidinha nele vocês entenderam o problema que tive, e um problema da biblioteca Microsoft.SharePoint, ela funciona perfeitamente para uma Library ou List que possua poucos itens, mas no meus caso eram cerca 1,5 mi, só tive problemas e dor de cabeça, dai então realizei querys diretamente no banco, e ainda tive que criar novos índices, pois os criados não estavam performando nada, lógico que tive a ajuda de um DBA, pois não são especialista em SQL Server.

Mas vamos lá, você ao tentar criar um ConnectionString em um projeto SharePoint, pode ser um Projeto App, ou uma Solution, terá problemas ao tentar se conectar a base de dados do SharePoint.

Mas usando o método que criei isso não será o problema.

Da uma olhadinha:

public static SqlDataReader SelectTo(SqlConnection connection)
        {
            SqlDataReader reader = null;
            SPSecurity.RunWithElevatedPrivileges(delegate ()
            {
                using (SPSite ElevatedsiteColl = new SPSite(SPContext.Current.Web.Url))
                {
                    using (SPWeb ElevatedSite = ElevatedsiteColl.OpenWeb())
                    {
                        try
                        {
                          
                            connection.Open();
                            SqlCommand cmdSelect = new SqlCommand(procGetItens, connection);
                            cmdSelect.CommandType = CommandType.StoredProcedure;
                            reader = cmdSelect.ExecuteReader();
                        }
                        catch (Exception ex)
                        {
                            reader = null;
                        }
                    }
                }
            });
            return reader;
        }

Realizando queries diretamente na base de dados consegui performar muito minha solução, antes o tempo para retorna uma busca era de 48 seg. com essa customização reduzi para 2 seg. é um ganho considerável.

Esse feature já esta no ar e o feedback dos usuários esta sendo muito positivo.

Abraços! Achei justo compartilhar esse case com vocês.

Criando List Items usando JQuery e SharePoint Web Services

Criando List Items usando JQuery e SharePoint Web Services

Neste post vou explicar como trabalhar com Web Services List.asmx usando JQuery.
Primeiramente vou começar falando de algumas interfaces que podemos usar o SharePoint para programar, podemos usar o Object Model só de ser usado no code/application e será executado no seu SharePoint Server na sua farm, ao se consegue usar Object Model do lado Client.
Vamos falar um pouco do Web Service do SharePoint

List Template ID para Listas do SharePoint

Muitos elementos do SharePoint usam ListTemplateID para identificar a lista a que se referem. Para Event Receivers tem esta aparência .
Os tipos de  ListTemplateID seguem abaixo.

List template name ListTemplateID
NoListTemplate 0
GenericList 100
DocumentLibrary 101
Survey 102
Links 103
Announcements 104
Contacts 105
Events 106
Tasks 107
DiscussionBoard 108
PictureLibrary 109
DataSources 110
WebTemplateCatalog 111
UserInformation 112
WebPartCatalog 113
ListTemplateCatalog 114
XMLForm 115
MasterPageCatalog 116
NoCodeWorkflows 117
WorkflowProcess 118
WebPageLibrary 119
CustomGrid 120
SolutionCatalog 121
NoCodePublic 122
ThemeCatalog 123
DataConnectionLibrary 130
WorkflowHistory 140
GanttTasks 150
Meetings 200
Agenda 201
MeetingUser 202
Decision 204
MeetingObjective 207
TextBox 210
ThingsToBring 211
HomePageLibrary 212
Posts 301
Comments 302
Categories 303
Facility 402
Whereabouts 403
CallTrack 404
Circulation 405
Timecard 420
Holidays 421
IMEDic 499
ExternalList 600
IssueTracking 1100
AdminTasks 1200
HealthRules 1220
HealthReports 1221
InvalidType -1

Backup, Restore, Export e Import usando PowerShell – SharePoint

Backup, Restore, Export e Import usando PowerShell – SharePoint 


Vou falar um pouco dos comando de backup, restore, export e import usando PowerShell e suas aplicações.

  • Backup de um site no SharePoint podemos usar o seguinte comando:

Backup-SPSite http://seu_site/ -Path C:\Backup\nome_site.bak

  • Restore de um site usamos o seguinte comando: 

Restore-SPSite http://seu_site -Path C:\Backup\nome_site.bak

  • Export em uma lista ou em um subsite podemos usar o seguinte comando:
Export-SPWeb -Identity http://seu_site/sub_site  -path C:\\Export\sub_site.cmp
 
O comando acima pode ser usado para exportar listas também basta apenas setarmos o endereço dessa lista.
  • Import de uma lista ou subsite podemos usar o seguinte comando:
Import-SPWeb -Identity http://mysite/mysubsite  -Path C:\\Export\sub_site.cmp 
 
 
Espero ter ajudado, até a + 🙂

 

Resolvendo a mensagem de erro “The local farm is no acessible”.

Resolvendo a mensagem de erro “The local farm is no acessible”.

Ao rodarmos o SharePoint Management Shell (PowerShell) é retornado o seguinte erro “The local farm is not accessible. Cmdlets with FeatureDependencyId are not registered“. Isso indica que seu usuário não esta habilitado para rodar nenhum comando, isso porque não esta configurada algumas permissões no servidor de bando de dados da aplicação. Todos usuários que pertencem a um grupo de administradores não recebem essa mensagem de erro.
Abaixo segue as configurações que devemos fazer para que não seja exibida essa mensagem de erro.





Vamos acessar o Management Studio e lá dar a seguinte permissões.  Acesse a base de dados SharePoint_Configuration e atribua as seguintes permissões SharePoint_Shell_Access and db_owner.













Após setada as permissões abra o PowerShell novamente, vejao erro foi resolvido e voce já tem permissão para executar linha de comando.



Simples, espero ter ajudado, até a próxima.