sexta-feira, 10 de junho de 2011

Eduardo e Mônica - O Clipe

Depois de 25 anos, o clássico “Eduardo e Mônica”, do Legião Urbana, ganhou um merecido clipe.



quinta-feira, 9 de junho de 2011

7 modos de negociar um contrato de software

Mudança nas regras de licenciamento, custos imprevistos, upgrades. Como se preparar para mudanças indesejadas na difícil arte de comprar e gerir contratos de software?
Entenda um pouco mais lendo os sete itens descritos abaixo.


1) Documente tudo
Documente todas as funções e responsabilidades de fornecedores estratégicos, criando um plano de relacionamento. 
No início da negociação, quem aparece são os vendedores. Na implementação, o setor técnico entra em contato com o time designado pela empresa para tocar o projeto. Mais tarde, as relações com o software se tornam mais complexas e é necessário ter múltiplos pontos de contato com o fornecedor. Por isso, você deve entender que relações ocorrerão ao longo do tempo e documentar, no contrato, que funções serão realizadas por quem.
Isso é importante, em primeiro lugar, para evitar o empurra-empurra de responsabilidades quando imprevistos acontecerem. Além disso, se o fornecedor mantiver contatos com setores da sua empresa que você desconhece, isso pode prejudicar o seu poder de barganha. Por exemplo, no momento da negociação, você afirma que não há interesse de renovar o módulo de finanças. No entanto, o fornecedor já telefonou para um gerente da área de finanças que se tornou seu "camarada" e este mencionou que estão aguardando o upgrade dos sistemas. Seu blefe foi descoberto.

2) Atenção às mudanças
Fique de olho nas mudanças que estão por vir no licenciamento de softwares e negocie a troca de sistemas de cobrança.
O modo como os softwares são cobrados sofrerá alterações. O modelo de usuários concomitantes está caindo em desuso, o que significa que os novos contratos tornarão as versões antigas do software e os acordos de licenciamento obsoletos rapidamente. "Na maioria das vezes, as empresas saem perdendo na conversão de um tipo de licença para outro", afirma Alexa.
Para evitar dúvidas ou confusão sobre a nova métrica proposta pelo fornecedor, as bases para conversão de qualquer modelo devem ser bem especificadas no contrato inicial. E não se deixar confundir por siglas e novas nomenclaturas: você deve ter em mente, no ato da negociação, exatamente o que é capaz de fazer com que quantidade de dinheiro e como isso pode mudar com a nova proposta.

3) Detalhe seus contratos
Faça constar do contrato todos os serviços que você espera do software. Não se restrinja aos nomes dos programas.
As licenças e os acordos de manutenção freqüentemente não descrevem com exatidão para que servem os programas, apenas fazem constar o nome do produto. Pior: muitos contratos não garantem os upgrades, ou seja, as atualizações são cobradas como se fossem produtos novos. Para evitar surpresas desagradáveis, é preciso colocar no contrato todas as ações que devem ser realizadas com o programa, independentemente de seu título.
4) Defina usuários
 Crie perfis de usuários do software e reduza custos
Um dos meios mais eficientes para se reduzir custos é mapear o tipo de uso que um funcionário ou um grupo de funcionários fará dele. Muitas vezes, empregados que cairiam na categoria de usuário profissional vão extrair do software muito menos valor do que ele propõe. Nesses casos, de usuários light, é possível negociar um status diferente e pagar menos pelo direito ao software. A economia no final do ano, em alguns casos, é de 10%, e muito maior em contratos mais longos, segundo estudo do Gartner.
5) Defina sistemas operacionais
Garanta o direito à transferência de plataforma
Qualquer que seja o sistema operacional ou a máquina em que a software rodará, o preço cobrado pelo programa será o mesmo. No entanto, se a companhia quiser transferir o software para outro sistema poderá se deparar com uma taxa de transferência. Explicite no contrato o direito à transferência sem custos adicionais.
6) É permitido desistir
A empresa pode desistir de programas
Na ânsia de cumprir suas metas de vendas, os fornecedores fazem promoções e acabam empurrando mais licenças do que a companhia realmente precisa. Na hora de desistir do excedente, o cliente se depara com a recusa do fornecedor em remover licenças parcialmente ou ainda com o recalculo das licenças que sobraram como condição para a remoção. Isso deve ser evitado em contrato. Inclua cláusulas garantindo seu direito a desistir de licenças desnecessárias.
7) Suspensão não é crime
Proteja seu direito a suspender algumas aplicações
Muitas empresas, sob pressão para reduzir custos, pensam em suspender o pagamento de licenças de softwares que não estão utilizando. Mas aí percebem que seus contratos impõem uma multa para reinstalação das licenças, caso elas as queiram de volta, que pode ser até três vezes maior do que o pagamento da manutenção pelo período.
Exija, no contrato inicial, o fim das penalidades por desistência de algum programa e limite as cobranças por reinstalação de uma licença a no máximo 100% do valor que teria sido pago no período de suspensão.


Fonte : Por FLÁVIA YURI, DO COMPUTERWORLD

quarta-feira, 18 de maio de 2011

Como Inserir uma coluna de Incremento (contador sequencial) dinâmica no SQL Server 2005 ou Superior

Como Inserir uma coluna de Incremento (contador sequencial) dinâmica no SQL Server 2005 ou Superior.

Esta informação foi muito útil na prática para a criação ítens dinâmicos e sequenciais nos diversos relatórios que  exigem a necessidade de exibição dos famosos itens, solicitados pelos superiores.

É muito simples basta adcionar ao seu select uma nova coluna descrita abaixo e indicar um item que seja uma coluna real da tabela.
Ex:
Tabela : Cliente
Atributo : Nome_Cliente

Select row_number() over(Order By Nome_Cliente) asc) as Item, Nome_Cliente from Cliente
------------------------
Item  | Nome
------|------------------
1       |  Joao
2       |  Maria
3       |  Jose
4       |  Amelia
------------------------

terça-feira, 10 de maio de 2011

Formato de data do SQL Server

Uma das perguntas mais freqüentes em fóruns do SQL Server é como formatar um valor datetime ou coluna em um formato de data específica. Aqui está um resumo dos formatos de data diferentes, que vêm como padrão no SQL Server como parte dafunção CONVERT. Seguindo o formato padrão de data estão alguns formatos de dataestendida que muitas vezes são feitas pelos desenvolvedores do SQL Server.

Vale notar que a saída desses formatos de data são de tipos de dados VARCHAR e jánão é do tipo de dados DATETIME. Com isso em mente, qualquer comparação realizada após a data valor datetime foi formatado usando o valor VARCHAR da data e hora, e não o seu valor DATETIME original.

Formatos de datas padrões
Formato de DataPadrãoSQLExemplo de Resultado
Mon DD YYYY 1
HH:MIAM (or PM)
DefaultSELECT CONVERT(VARCHAR(20), GETDATE(), 100)Jan 1 2005 1:29PM 1
MM/DD/YYUSASELECT CONVERT(VARCHAR(8), GETDATE(), 1) AS [MM/DD/YY]11/23/98
MM/DD/YYYYUSASELECT CONVERT(VARCHAR(10), GETDATE(), 101) AS [MM/DD/YYYY]11/23/1998
YY.MM.DDANSISELECT CONVERT(VARCHAR(8), GETDATE(), 2) AS [YY.MM.DD]72.01.01
YYYY.MM.DDANSISELECT CONVERT(VARCHAR(10), GETDATE(), 102) AS [YYYY.MM.DD]1972.01.01
DD/MM/YYBritish/FrenchSELECT CONVERT(VARCHAR(8), GETDATE(), 3) AS [DD/MM/YY]19/02/72
DD/MM/YYYYBritish/FrenchSELECT CONVERT(VARCHAR(10), GETDATE(), 103) AS [DD/MM/YYYY]19/02/1972
DD.MM.YYGermanSELECT CONVERT(VARCHAR(8), GETDATE(), 4) AS [DD.MM.YY]25.12.05
DD.MM.YYYYGermanSELECT CONVERT(VARCHAR(10), GETDATE(), 104) AS [DD.MM.YYYY]25.12.2005
DD-MM-YYItalianSELECT CONVERT(VARCHAR(8), GETDATE(), 5) AS [DD-MM-YY]24-01-98
DD-MM-YYYYItalianSELECT CONVERT(VARCHAR(10), GETDATE(), 105) AS [DD-MM-YYYY]24-01-1998
DD Mon YY 1-SELECT CONVERT(VARCHAR(9), GETDATE(), 6) AS [DD MON YY]04 Jul 06 1
DD Mon YYYY 1-SELECT CONVERT(VARCHAR(11), GETDATE(), 106) AS [DD MON YYYY]04 Jul 2006 1
Mon DD, YY 1-SELECT CONVERT(VARCHAR(10), GETDATE(), 7) AS [Mon DD, YY]Jan 24, 98 1
Mon DD, YYYY 1-SELECT CONVERT(VARCHAR(12), GETDATE(), 107) AS [Mon DD, YYYY]Jan 24, 1998 1
HH:MM:SS-SELECT CONVERT(VARCHAR(8), GETDATE(), 108)03:24:53
Mon DD YYYY HH:MI:SS:MMMAM (or PM) 1Default +
milliseconds
SELECT CONVERT(VARCHAR(26), GETDATE(), 109)Apr 28 2006 12:32:29:253PM 1
MM-DD-YYUSASELECT CONVERT(VARCHAR(8), GETDATE(), 10) AS [MM-DD-YY]01-01-06
MM-DD-YYYYUSASELECT CONVERT(VARCHAR(10), GETDATE(), 110) AS [MM-DD-YYYY]01-01-2006
YY/MM/DD-SELECT CONVERT(VARCHAR(8), GETDATE(), 11) AS [YY/MM/DD]98/11/23
YYYY/MM/DD-SELECT CONVERT(VARCHAR(10), GETDATE(), 111) AS [YYYY/MM/DD]1998/11/23
YYMMDDISOSELECT CONVERT(VARCHAR(6), GETDATE(), 12) AS [YYMMDD]980124
YYYYMMDDISOSELECT CONVERT(VARCHAR(8), GETDATE(), 112) AS [YYYYMMDD]19980124
DD Mon YYYY HH:MM:SS:MMM(24h) 1Europe default + millisecondsSELECT CONVERT(VARCHAR(24), GETDATE(), 113)28 Apr 2006 00:34:55:190 1
HH:MI:SS:MMM(24H)-SELECT CONVERT(VARCHAR(12), GETDATE(), 114) AS [HH:MI:SS:MMM(24H)]11:34:23:013
YYYY-MM-DD HH:MI:SS(24h)ODBC CanonicalSELECT CONVERT(VARCHAR(19), GETDATE(), 120)1972-01-01 13:42:24
YYYY-MM-DD HH:MI:SS.MMM(24h)ODBC Canonical
(with milliseconds)
SELECT CONVERT(VARCHAR(23), GETDATE(), 121)1972-02-19 06:35:24.489
YYYY-MM-DDTHH:MM:SS:MMMISO8601SELECT CONVERT(VARCHAR(23), GETDATE(), 126)1998-11-23T11:25:43:250
DD Mon YYYY HH:MI:SS:MMMAM 1KuwaitiSELECT CONVERT(VARCHAR(26), GETDATE(), 130)28 Apr 2006 12:39:32:429AM 1
DD/MM/YYYY HH:MI:SS:MMMAMKuwaitiSELECT CONVERT(VARCHAR(25), GETDATE(), 131)28/04/2006 12:39:32:429AM
Aqui estão alguns formatos de data que não vem padrão no SQL Server como parteda função CONVERT.
Extended Date Formats
Formato de DataSQLExemplo de Resultado
YY-MM-DD
SELECT SUBSTRING(CONVERT(VARCHAR(10), GETDATE(), 120), 3, 8) AS [YY-MM-DD]
SELECT REPLACE(CONVERT(VARCHAR(8), GETDATE(), 11), '/', '-') AS [YY-MM-DD]
99-01-24
YYYY-MM-DD
SELECT CONVERT(VARCHAR(10), GETDATE(), 120) AS [YYYY-MM-DD]
SELECT REPLACE(CONVERT(VARCHAR(10), GETDATE(), 111), '/', '-') AS [YYYY-MM-DD]
1999-01-24
MM/YYSELECT RIGHT(CONVERT(VARCHAR(8), GETDATE(), 3), 5) AS [MM/YY]
SELECT SUBSTRING(CONVERT(VARCHAR(8), GETDATE(), 3), 4, 5) AS [MM/YY]
08/99
MM/YYYYSELECT RIGHT(CONVERT(VARCHAR(10), GETDATE(), 103), 7) AS [MM/YYYY]12/2005
YY/MMSELECT CONVERT(VARCHAR(5), GETDATE(), 11) AS [YY/MM]99/08
YYYY/MMSELECT CONVERT(VARCHAR(7), GETDATE(), 111) AS [YYYY/MM]2005/12
Month DD, YYYY 1SELECT DATENAME(MM, GETDATE()) + RIGHT(CONVERT(VARCHAR(12), GETDATE(), 107), 9) AS [Month DD, YYYY]July 04, 20061
Mon YYYY1SELECT SUBSTRING(CONVERT(VARCHAR(11), GETDATE(), 113), 4, 8) AS [Mon YYYY]Apr 2006 1
Month YYYY 1SELECT DATENAME(MM, GETDATE()) + ' ' + CAST(YEAR(GETDATE()) AS VARCHAR(4)) AS [Month YYYY]February 2006 1
DD Month1SELECT CAST(DAY(GETDATE()) AS VARCHAR(2)) + ' ' + DATENAME(MM, GETDATE()) AS [DD Month]11 September 1
Month DD1SELECT DATENAME(MM, GETDATE()) + ' ' + CAST(DAY(GETDATE()) AS VARCHAR(2)) AS [Month DD]September 11 1
DD Month YY 1SELECT CAST(DAY(GETDATE()) AS VARCHAR(2)) + ' ' + DATENAME(MM, GETDATE()) + ' ' + RIGHT(CAST(YEAR(GETDATE()) AS VARCHAR(4)), 2) AS [DD Month YY]19 February 72 1
DD Month YYYY 1SELECT CAST(DAY(GETDATE()) AS VARCHAR(2)) + ' ' + DATENAME(MM, GETDATE()) + ' ' + CAST(YEAR(GETDATE()) AS VARCHAR(4)) AS [DD Month YYYY]11 September 2002 1
MM-YYSELECT RIGHT(CONVERT(VARCHAR(8), GETDATE(), 5), 5) AS [MM-YY]
SELECT SUBSTRING(CONVERT(VARCHAR(8), GETDATE(), 5), 4, 5) AS [MM-YY]
12/92
MM-YYYYSELECT RIGHT(CONVERT(VARCHAR(10), GETDATE(), 105), 7) AS [MM-YYYY]05-2006
YY-MMSELECT RIGHT(CONVERT(VARCHAR(7), GETDATE(), 120), 5) AS [YY-MM]
SELECT SUBSTRING(CONVERT(VARCHAR(10), GETDATE(), 120), 3, 5) AS [YY-MM]
92/12
YYYY-MMSELECT CONVERT(VARCHAR(7), GETDATE(), 120) AS [YYYY-MM]2006-05
MMDDYYSELECT REPLACE(CONVERT(VARCHAR(10), GETDATE(), 1), '/', '') AS [MMDDYY]122506
MMDDYYYYSELECT REPLACE(CONVERT(VARCHAR(10), GETDATE(), 101), '/', '') AS [MMDDYYYY]12252006
DDMMYYSELECT REPLACE(CONVERT(VARCHAR(10), GETDATE(), 3), '/', '') AS [DDMMYY]240702
DDMMYYYYSELECT REPLACE(CONVERT(VARCHAR(10), GETDATE(), 103), '/', '') AS [DDMMYYYY]24072002
Mon-YY 1SELECT REPLACE(RIGHT(CONVERT(VARCHAR(9), GETDATE(), 6), 6), ' ', '-') AS [Mon-YY]Sep-02 1
Mon-YYYY1SELECT REPLACE(RIGHT(CONVERT(VARCHAR(11), GETDATE(), 106), 8), ' ', '-') AS [Mon-YYYY]Sep-2002 1
DD-Mon-YY 1SELECT REPLACE(CONVERT(VARCHAR(9), GETDATE(), 6), ' ', '-') AS [DD-Mon-YY]25-Dec-05 1
DD-Mon-YYYY 1SELECT REPLACE(CONVERT(VARCHAR(11), GETDATE(), 106), ' ', '-') AS [DD-Mon-YYYY]25-Dec-20051
1 Para fazer com que o nome do mês em maiúsculas, basta utilizar a função string UPPER.

Os cargos mais valorizados em TI no Brasil

Descubra qual o perfil dos profissionais de tecnologia que, hoje, têm mais chances de serem contratados, com altos salários, pelas empresas

segunda-feira, 2 de maio de 2011

Mengão é campeão invicto

Em mais um clássico do futebol internacional o Clube de Regatas Flamengo, de forma invicta leva as 2 taças do rio e unifica o título de campeão carioca de 2011.

Parabéns Mengão