Posts Tagged MS SQL Server 2008

Report server – Report viewer Erro 404 – File or directory not found

Esse é um problema que se tornou recorrente comigo na utilização do report services com SQL Server 2008. No inicio não há causa aparente, mas perdendo algum tempo de investigação, você consegue descobrir o motivo. Mas essa dica rápida é para que você não perca esse tempo de pesquisa, que geralmente te leva a dezenas de paginas inúteis antes de achar a solução.

Se você produz relatórios para serem exibidos através do report viewer, usando o report services, você pode se deparar com um erro 404 de pagina não encontrada, dentro do frame do relatório. O sintoma clássico desse problema é que ele não acontece enquanto você estiver rodando a solução em modo debug na sua maquina. Esse problema só ocorre quando a pagina é colocada no IIS 7.

Antes de começar a descrever a solução, verifique se existe essa entrada no seu web.config, na seção de handler:

<add name=”Reserved-ReportViewerWebControl-axd” path=”Reserved.ReportViewerWebControl.axd” verb=”*” type=”Microsoft.Reporting.WebForms.HttpHandler” resourceType=”Unspecified” />

Toda vez que você adiciona o controle report viewer em alguma pagina do seu projeto, essa entrada deve ser preenchida automaticamente no web.config.

O restante da solução é bem simples.

Selecione o Website com problema no gerenciador do IIS 7, clique no icone Handler Mappings

  1. No painel da lateral direita clique em “Add Managed Handler”
  2. Preencha o box com os seguintes valores:
  • Request path: Reserved.ReportViewerWebControl.axd
  • Type: Microsoft.Reporting.WebForms.HttpHandler
  • Name: Reserved-ReportViewerWebControl-axd

Então basta clicar OK e rodar o relatório novamente

, , ,

No Comments

Consistência de hive do registro de contador de desempenho

Hoje o MS SQL Server 2008 e o Windows 7 resolveram me stressar um pouco com esse erro, pouco comun.

Consistência de hive do registro de contador de desempenho

Isso acontece porque o aplicativo tentou acessar uma chave no registro responsável pelo contador de desempenho e não encontrou essa chave.

Se você teve esse mesmo erro ao tentar instalar o SQL Server 2008, não se desespera e não fique no google 2 horas procurando a solução como eu fiz.

O “fix” para esse problema é muito simples, mas até chegar a esse ponto, tive que percorrer inúmeros foruns e sites de support da microsoft.

1- Faça um programa de console qualquer em C# para imprimir o resultado do seguinte código:

string.Format(“{0,3}”, CultureInfo.InstalledUICulture.Parent.LCID.ToString(“X”)).Replace(” “, “0″);

O resultado da minha execução foi 016, então vamos levar esse valor em consideração no nosso exemplo.

2- Vá até o regedit na chave

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib

3- Crie uma nova chave com o valor que foi retornado do aplicativo console, no meu caso, 016

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\016

4- Agora basta ir a chave 009 que se encontra no mesmo caminho, e copiar os registros Counter e Helper para dentro da nova chave que acabou de ser criada.

Pronto!

Agora basta rodar denovo o instalador do SQL 2008 e tudo vai funcionar perfeitamente.

, , ,

3 Comments

Alterando comportamento de mudanças no SQL Server 2008 – Saving Changes Not Permitted

A algum tempo eu venho notando um comportamento que me incomoda no MS SQL Server 2008, quando manipulado pelo management studio. É relativo a mudanças em tabelas já criadas. Se você tentar mudar o tipo da propriedade ou adicionar um identity em algum campo, ele vai dizer que a alteração não é permitida, e vai pedir que você faça um drop na tabela e recrie ela com os valores corretos. Com uma frase chata, “Saving Changes Not Permitted“, você sempre vai levar um prompt de alerta na cara.

sqlPreventSaveError

Mas hoje fiquei com raiva disso. Afinal, o administrador do banco de dados sou eu, então eu faço o que eu quiser porque as tabelas são minhas.

O MS SQL Server já cuida de tudo pra você, de maneira automatizada, nesses casos em que é preciso fazer operações onde é necessário “drop” da tabela. O próprio gerenciador armazena os valores temporariamente e cria a nova tabela com os valores corretos. Tudo isso de forma transparente pra você. Então, vamos usar esse recurso. No Managent Studio, vá em Tools > Options > Designers


sqlPreventSaveSolution

Depois é só desmarcar a opção, “Prevent saving changes that require table re-creation”. Pronto, agora você é uma pessoa mais feliz. Afinal o banco de dados é seu, quem manda é você!

, , ,

1 Comment

 

You need to log in to vote

The blog owner requires users to be logged in to be able to vote for this post.

Alternatively, if you do not have an account yet you can create one here.

Powered by Vote It Up