Tive a necessidade de encontrar a zona UTM de uma cidade para conversao de umas coordenadas de um mapa gerado no Autocad.Consegui usando a integracao do Google Maps encontrar a latitude e longitude de uma cidade, e com isso encontrar sua zona UTM.Para encontrar uma Zona UTM basta utilizar a coordenada Longitude.Em javascript:Sao Paulo - SP, Brasil; -23.5489433, -46.6388182;<script> function calculaZONAUTM(valorLongitude) { try { valor = (Math.floor((valorLongitude + 180) / 6) % 60) + 1; return valor; } catch (e) { alert(e.message); } }var zonautm = calculaZONAUTM (-46.6388182);alert(zonautm);</script>Exemplo pratico: http://deepsystem.com.br/encontra_utm_cidade.htmlAbc Apos instalar o SQL SERVER 2008 Express me deparei com a seguinte mensagem de erro ao startar o servico:FileMgr::StartLogFiles: Operating system error 2(O sistema no pode encontrar o arquivo especificado.) occurred while creating or opening file 'e:\sql10_main_t.obj.x86fre\sql\mkmastr\databases\objfre\i386\MSDBLog.ldf'. Diagnose and correct the operating system error, and retry the operation.E o servico do SQL Express nao startava.Para resolver fiz o seguinte:Force o inicio do servico via prompt:NET START MSSQL$SQLEXPRESS /f /T3608Depois usei o comando SQLCMD :SQLCMD -S .\SQLEXPRESSDepois alterei o caminho fisico dos bancos de dados do sistema usando os comandos abaixo:ALTER DATABASE tempdb MODIFY FILE ( NAME = tempdev, FILENAME = 'c:\Arquivos de programas\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\tempdb.mdf');GOALTER DATABASE tempdb MODIFY FILE ( NAME = templog, FILENAME = 'c:\Arquivos de programas\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\templog.ldf');GOALTER DATABASE model MODIFY FILE ( NAME = modeldev, FILENAME = 'c:\Arquivos de programas\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\model.mdf');GOALTER DATABASE model MODIFY FILE ( NAME = modellog, FILENAME = 'c:\Arquivos de programas\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\modellog.ldf');GOALTER DATABASE msdb MODIFY FILE ( NAME = MSDBdata, FILENAME = 'c:\Arquivos de programas\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\MSDBData.mdf');GOALTER DATABASE msdb MODIFY FILE ( NAME = MSDBlog, FILENAME = 'c:\Arquivos de programas\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\MSDBLog.ldf');GODepois criei um usuario administrador:Case necessario crie um usuario de acesso ao servidor, o comando abaixo cria e da acessos admin:USE [master]GOCREATE LOGIN [usuarioXXX] WITH PASSWORD = 'senhadousuario', DEFAULT_DATABASE=[master],CHECK_EXPIRATION=OFF, CHECK_POLICY=ONGOEXEC sys.sp_addsrvrolemember @loginame = N'usuarioXXX', @rolename = N'serveradmin'GOEXEC sys.sp_addsrvrolemember @loginame = N'usuarioXXX', @rolename = N'sysadmin'GOSaia do SQLCMD digitando "Exit"Pare o servico do SQLNET STOP MSSQL$SQLEXPRESSDepois execute novamenteNET START MSSQL$SQLEXPRESS Outro dia nos deparamos com um problema na nossa aplicacao de lentidao no SQL SERVER.O cenario era o seguinte, o servidor SQL SERVER fica no escritorio matriz em Sao Paulo e as filiais fazem acesso via intranet. Essas filiais estao espalhadas por varias cidades do Brasil.Em acesso locais as consultas eram rapidas. Porem nas filiais o tempo era proporcionalmente maior conforme a distancia fosse aumentando.Para resolver, foi adicionado o recurso de cache em algumas rotinas, aonde os dados sao poucos volateis (poucas alteracoes).Com isso tivemos uma ganho de 90% na velocidade.Segue um pequeno exemplo de como usar o cache em uma aplicacao windows Form c#using System.Runtime.Caching;public class teste{ObjectCache cache = MemoryCache.Default; public List<dados> retornaDados() { try { // seta um tempo para expirar o cache // isso evita possiveis problemas de dados desatualizados. CacheItemPolicy pol = new CacheItemPolicy(); pol.AbsoluteExpiration = new DateTimeOffset(DateTime.UtcNow.AddSeconds(180)); List<dados> listaDadosPublicos = new List<dados>(); //verifica a existencia do objeto no cache //nao existindo cria no cache if (!cache.Contains("listaDadosPublicos")) { // efetua a chamada em outra classe que retorna uma lista de dados. listaNodesPublicos = _noController.RetornarTodos(); //adiciona no cache cache.Add("listaDadosPublicos", listaDadosPublicos , pol);