Tag Archives: linha

PowerShell e o Metrô

Trabalhando no centro você acaba tendo que usar muito o transporte público, o que na maioria dos casos é muito chato,,,

Devido a chuva a operação da CPTM e do Metrô estavam com algumas lentidões, mas nada comparado ao sites deles,,,

O site do Metrô (www.metro.sp.gov.br) estava muito lento, um tempo de resposta de uns 10/15 segundos.

O da CPTM (www.cptm.sp.gov.br) não estava muito longe disso também,,,

Aí fiquei pensando se algum deles tinha uma API para trazer a informação do status da linha e descobri que, claro, nenhum deles tem isso…

Mas, a Viaquatro, que opera a linha 4 do metrô tem uma API, que apenas trás as informações do metrô e por curiosidade não trás informações sobre a própria linha 4,,, mas já está valendo….

O site com as informações das linhas de metrô é o: http://www.viaquatro.com.br/generic/Main/LineStatus

Legal, não precisa de chave de API, não tem necessidade de autenticação, é bem simples e direto…

metro

 

Agora com isso já é possível trabalhar um pouco com o poweshell…


$metro = Invoke-RestMethod -Uri "http://www.viaquatro.com.br/generic/Main/LineStatus" | select * -ExpandProperty StatusMetro
$linha = $metro.ListLineStatus

$linha | select Line,StatusMetro

E agora tenho uma pesquisa direta do status das linhas na hora que eu quiser e sem ter que abrir o site do metrô,,,

Quando eu descobrir se a CPTM tem o mesmo tipo de serviço tento incorporar no código,,,

 

Conversor de RPT para CSV

Mais um para a minha lista de programas inúteis,,,

Esse programa é um command line que vai converter o arquivo de saída do SSMS quando você escolhe ter o resultado em arquivo (.RPT) para arquivo separado por vírgula (.CSV)

Ele tem uma limitação que é pegar apenas uma saída do arquivo de resultado. O que isso significa? Se você executar mais de uma query no SSMS e isso gerar mais de um resultado dentro do arquivo RPT ele só vai converter o primeiro resultado.

Essa limitação não é do programa em si, mas da limitação do CSV, já que ele vai usar a primeira linha do arquivo como coluna e remover os traços da segunda linha você acaba tendo apenas um resultado dentro de um arquivo CSV pois não dá para ter mais de uma linha com nome de coluna.

Não entendeu nada? imaginei…

A execução dele é bem simples:

  • Para um arquivo: rpt2csv nome_do_arquivo.RPT
  • Para mais arquivos: rpt2csv nome_do_arquivo.RPT nome_do_arquivo2.RPT nome_do_arquivo3.RPT …

Percebeu que NÃO tem o nome_do_arquivo.CSV ? Ele vai gerar no mesmo local onde está o RPT o arquivo CSV com o mesmo nome.

Se você digitar apenas rpt2csv ele vai mostrar um pequeno help, já se você adicionar o /? ele vai mostrar um exemplo…

O download do projeto está aqui, caso queira apenas o executável baixe o projeto, descompacte e vá até o diretório “rpt2csv\rpt2csv\bin\Debug” lá você vai encontrar o rpt2csv.

Se isso for útil comente e responta a enquete,,, se não foi útil responda a enquete,,,

[polldaddy poll=8777809]

Se você fizer uma análise mais a fundo, vai perceber que ele converte qualquer coisa que se pareça com o RPT e não apenas RPT para o CSV.

ATUALIZAÇÃO !!!

Adicionei o projeto ao GitHub, quem quiser ajudar ou alterar o projeto pode acessar o endereço https://github.com/bigleka/rpt2csv