http://www.microsoft.com/pt-br/showcase/details.aspx?uuid=2c750e08-5a27-42bb-8fc9-b3caf761f384
Filed under: Arquitetura, SharePoint | Deixar um comentário »
Um dos maiores problemas pós configuração do SharePoint é habilitar a pesquisa de pessoas, no link abaixo tem um artigo Microsoft de como fazer isso:
http://technet.microsoft.com/en-us/library/ee808863.aspx
Filed under: SharePoint | Deixar um comentário »
As PDPs podem ser utilizadas para coletar informações dos usuários durante a criação dos projetos. Uma PDP é uma página customizada do SharePoint (página de WebPart) que permite a inclusão de WebParts do Project Server 2010.
As PDPs podem ser utilizadas para preenchimento dos campos customizados, inclusão de informações de relatórios ou integração com sistemas proprietários, neste último caso a maioria das vezes requer desenvolvimento.
Existem três tipos de PDPs que podem ser criadas:
Abaixo mostro como é utilizada uma PDP do Project Server 2010.
1 – Dentro da Central de Projetos > Novo > Selecionei um dos projetos que tenho na lista.
2 – A primeira PDP que aparece no meu caso é do tipo New Project e contém estes campos abaixo.
3 – A segunda PDP contém os campos customizados e é do tipo Project e contém os campos customizados para este tipo de projeto.
A próxima PDP que aparecerá será com relação ao cronograma, bom agora vamos aprender a criar estas PDPs e fazer a ligação entre elas.
Para criar uma Project Detail Page proceda: Configurações do Servidor > Páginas de Detalhes do Projeto.
Veja como as Web Parts foram acrescentadas, a única Web Part mais importante é do Project Custom Fields, que a primeira PDP deve conter no mínimo os campos: “Nome do Projeto”, “Descrição”, “Data de Início” e “Proprietário”.
Importante: não se esqueça que a primeira deve ser do tipo “New Project”, você pode trocar nas propriedades da página na tela anterior.
Depois que as PDPs foram criadas, você precisa determinar a informação do Departamento do Projeto: Configurações do Servidor > Campos Personalizados da Empresa > Tabela de Pesquisa Department. Nela crie pelo menos duas informações, uma com o nome da empresa e outra pode ficar como Indefinido. Exemplo:
As informações que estão aparecendo como SQLNet Soluções Tecnológicas irão aparecer para o template desejado, as outras não aparecerão. A idéia é, você poder dividir os tipos de projeto pelos departamentos.
Após preencher as informações do campo “Departament”, selecione quais campos customizados pertencem a qual departamento.
O próximo passo e salvar o cronograma como um template, com a informação do “Department” correto, assim os campos customizados serão filtrados para este modelo de cronograma. Exemplo:
Após toda a configuração acima, você deverá fazer a ligação dos itens para aparecer no menu Novo da central de projetos, para isso: Configurações do Servidor > Tipos de Projetos da Empresa.
Faça as ligações dos tipos de páginas, do modelo de cronograma e o modelo de site que será utilizado para este modelo de projeto. Quando o menu novo for utilizado para criar um novo projeto, tudo será ligado, chamando o modelo certo, com os campos certos e com o site certo.
Não se esqueça em as opções da “Nova Página do Projeto” devem abrir o projeto, ou seja, ter os campos Nome do Projeto, Descrição, Início e Proprietário. E claro serem do tipo “New Project”.
Espero ter auxliado a criar páginas de Detail Page.
Filed under: Project Server | 1 Comentário »
Na hora de alterar as informações de DateTime de um Relatório temos a função FormatDateTime, mas se você quiser colocar a data no estilo português do Brasil você poder utilizar a seguinte sintaxe:
=Format(Fields!FinishDate.Value),"dd/MM/yyyy"
Isso fará com que a data fique no formato brasileiro, mas essa função “Format” não é listada no reporting service.
Filed under: Reporting Service | Deixar um comentário »
Um modo prático de modificar o resultado obtido com os dados do SQL Server é a utilização do “Case”, abaixo mostro uma consulta com “Case” que pode ser utilizada para retornar os valores de acordo com intervalos de informações.
Select Title, Category, Exposure,
Case
When Exposure > 7 Then ‘Alto’
When Exposure > 3 Then ‘Médio’
When Exposure > 0 Then ‘Baixo’
Else ‘Não há riscos’
End As ExposureLabel
From MSP_WssRisk_OlapView
A consulta acima está aponta para uma tabela com 3 colunas, e quero apresentar uma quarta coluna com as informações de “Alto”, “Médio”, “Baixo” ou “Não há riscos”, para isto utilizei o Case.
Link MSDN com outros exemplos: http://msdn.microsoft.com/en-us/library/ms181765.aspx
Filed under: SQL Server | Deixar um comentário »
Em algumas estações de trabalho você acaba recebendo a mensagem: "The ActiveX control on which this feature depends could not be created. Because of this error, you can only copy the XML data to the Clipboard. Do you want to continue?"
Quando o problema ocorrer proceda:
Artigo original: http://solvecomputerissues.ideacity.ro/2009/03/project-server-export-grid-to-excel.html
Filed under: Project Server | Deixar um comentário »
Artigo original: http://blogs.msdn.com/b/cjohnson/archive/2006/03/16/552314.aspx
Você esta com problema para calcular duas datas dentro do SharePoint, os passos abaixo resolvem o problema:
Pronto.
Filed under: Project Server, SharePoint | Deixar um comentário »
Um dos grandes problemas do InfoPath é a incapacidade de calcular datas, para isto devemos progredir utilizando codificação, e neste caso vou utilizar VBScript para isto.
O artigo original está no link: http://www.bizsupportonline.net/infopath2003/datediff-vbscript-infopath.htm
Mas vou resumir o artigo acima.
1. Modifique o InfoPath para executar códigos em VBScript ao invés de JScript: Ferramentas – Opções do Formulário – Avançado
2. Crie três campos no seu formulário, sendo:
a) startDate e endDate como DateTime
b) dateDiff e dateInterval como Text
3. Acrescente o código conforme informações abaixo:
Dentro do formulário:
Function ISODateStringToVBDate(ISODateString)
Dim dtRetVal
dtRetVal = Null
If Trim(ISODateString) <> "" Then
dtRetVal = DateSerial(Mid(ISODateString, 1, 4), _
Mid(ISODateString, 6, 2), Mid(ISODateString, 9, 2))
End If
ISODateStringToVBDate = dtRetVal
End Function
Sub CalculateDateDifference()
Dim strStartDate
Dim strEndDate
Dim strDateInterval
Dim dtStart
Dim dtEnd
Dim intDateDiff
‘Retrieve the ISO date from the InfoPath date fields
strStartDate = XDocument.DOM.selectSingleNode("/my:meusCampos/my:startDate").text
strEndDate = XDocument.DOM.selectSingleNode("/my:meusCampos/my:endDate").text
‘Convert ISO date into VBScript date
dtStart = ISODateStringToVBDate(strStartDate)
dtEnd = ISODateStringToVBDate(strEndDate)
If Not IsNull(dtStart) And Not IsNull(dtEnd) Then
‘Retrieve the date interval to be used
strDateInterval = XDocument.DOM.selectSingleNode("/my:meusCampos/my:dateInterval").text
Select Case LCase(strDateInterval)
Case "yyyy"
‘Difference between dates in years
intDateDiff = DateDiff("yyyy", dtStart, dtEnd)
Case "m"
‘Difference between dates in months
intDateDiff = DateDiff("m", dtStart, dtEnd)
Case "d"
‘Difference between dates in days
intDateDiff = DateDiff("d", dtStart, dtEnd)
Case "h"
‘Difference between dates in hours
intDateDiff = DateDiff("h", dtStart, dtEnd)
Case "n"
‘Difference between dates in minutes
intDateDiff = DateDiff("n", dtStart, dtEnd)
Case "s"
‘Difference between dates in seconds
intDateDiff = DateDiff("s", dtStart, dtEnd)
Case Else
‘If interval is not recognized so use difference in days
intDateDiff = DateDiff("d", dtStart, dtEnd)
End Select
‘Set the value of the dateDiff field
XDocument.DOM.selectSingleNode("/my:meusCampos/my:dateDiff").text = intDateDiff
End If
End Sub
4. Duplo clique no campo startDate vá em Validação de Dados e depois selecione OnAfterChange no evento e clique em Editar. Acrescente o código a seguir, tanto no startDate quanto do endDate.
Sub msoxd_my_startDate_OnAfterChange(eventObj)
If eventObj.IsUndoRedo Then
Exit Sub
End If
CalculateDateDifference
End Sub
Filed under: InfoPath | 1 Comentário »
Um item muito interessante do Reporting Service é fazer com que uma imagen seja exibida de acordo com um terminado valor de um campo. Isto pode ser feito através do comando “switch”.
1 – Crie um relatório, acrescente um campo do tipo imagem, este campo pode ser até acrescentado dentro de um Grid.
2 – Acesse as propriedades do seu campo imagem, em “Gereral” na opção “Use this image” clique no botão “Fx” e acrescenta a fórmula abaixo:
=Switch(Fields!Status.Value=1,"green",Fields!Status.Value=2,"yellow",Fields!Status.Value=3,"red")
Importante: no caso desta fórmula eu tenho um campo que se chama Status no banco de dados, e altero os valores das imagens de acordo com o valor que nele apresenta. Você precisa adicionar as imagens no reporting service para funcionar.
Filed under: Reporting Service | Deixar um comentário »
Geralmente as ferramentas mais antigas sempre tem as suas limitações, utilizando-se hoje do InfoPath 2010 podemos notar uma grande diferença entre as ferramentas, principalmente quando dizemos respeito a funcionalidades.
Uma das coisas que sempre queremos e enviar o conteúdo do InfoPath no corpo do e-mail, e na versão 2003 não era possível fazer isso sem colocar uma codificação, ou fazer com o usuário clica-se no botão correspondente ao e-mail na caixa de ferramentas e colocasse as informações.
O código abaixo auxilia na chamada desta caixa com os respectivos e-mails já preenchidos. Basta colocar seu conteúdo em um botão.
function OpenMailEnvelop(subject, to)
{
try
{
var oEnvelope = Application.ActiveWindow.MailEnvelope;
oEnvelope.Subject = subject;
oEnvelope.To = to;
oEnvelope.Visible = true;
return true;
}
catch(exception)
{
return false;
}
}
function btnSomeButton::OnClick(eventObj)
{
OpenMailEnvelop("this is the subject", "someone@somewhere.com")
}
Filed under: InfoPath | Deixar um comentário »