<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Blog ASP</title>
	<atom:link href="http://blogasp.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://blogasp.wordpress.com</link>
	<description>Um Blog para o Desenvolvedor ASP. Por André Vieira</description>
	<lastBuildDate>Thu, 01 Dec 2011 13:38:09 +0000</lastBuildDate>
	<language>pt-br</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='blogasp.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Blog ASP</title>
		<link>http://blogasp.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://blogasp.wordpress.com/osd.xml" title="Blog ASP" />
	<atom:link rel='hub' href='http://blogasp.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Redirecionamento de Páginas</title>
		<link>http://blogasp.wordpress.com/2007/07/05/redirecionamento-de-paginas/</link>
		<comments>http://blogasp.wordpress.com/2007/07/05/redirecionamento-de-paginas/#comments</comments>
		<pubDate>Thu, 05 Jul 2007 14:54:12 +0000</pubDate>
		<dc:creator>André Vieira</dc:creator>
				<category><![CDATA[Dicas]]></category>
		<category><![CDATA[Objeto Response]]></category>

		<guid isPermaLink="false">http://blogasp.wordpress.com/2007/07/05/redirecionamento-de-paginas/</guid>
		<description><![CDATA[Muito útil para redirecionar para um determinado site após a contagem do clique efetuado no link. Ex: o usuário clica em um link do site / o link redireciona para uma página interna que após o loop no banco do clique efetuado / utiliza o redirecionador para o site que o link de fato faz [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blogasp.wordpress.com&amp;blog=327646&amp;post=81&amp;subd=blogasp&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Muito útil para redirecionar para um determinado site após a contagem do clique efetuado no link.</p>
<p><strong>Ex: o usuário clica em um link do site / o link redireciona para uma página interna que após o loop no banco do clique efetuado / utiliza o redirecionador para o site que o link de fato faz referência.</strong></p>
<blockquote><p><span><span>&#8212;&#8212;&#8212;&#8211; Redirecionamento para página ASP &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;  </span></span><br />
<span>  </span><span> </span><span>&lt;%  </span><br />
<span>Response.AddHeader <span class="string">&#8220;Refresh&#8221;</span><span>,</span><span class="string">&#8220;2 ; URL=pagina.asp&#8221;</span><span>  </span></span><br />
<span>%&gt;  </span><br />
<span>  </span><span> </span><br />
<span>EXPLICAÇÕES  </span><br />
<span><span class="comment">&#8216;&#8212; Componente &#8212;&#8212;&#8212;&#8212;&#8212; Tempo &#8212;&#8211; Caminho &#8211;</span><span>  </span></span><br />
<span><span class="comment">&#8216;Response.AddHeader &#8221;Refresh&#8221;,&#8221;segundos ; URL=pagina.asp</span><span>  </span></span><br />
<span> </span><span></span><span></span><span>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-  </span><br />
<span>================================================================  </span><br />
<span>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-  </span><br />
<span>  </span><br />
<span>  </span><br />
<span>  </span><br />
<span>&#8212;&#8212;&#8212;&#8211; Redirecionamento para página HTML &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;  </span><br />
<span>  </span><span> </span><br />
<span>Entre <span class="keyword">as</span><span> tags &lt;head&gt;  &lt;/head&gt; insira o código abaixo:  </span></span><br />
<span>  </span><span>&lt;META HTTP-EQUIV=&#8221;Refresh<span class="string">&#8220; CONTENT=&#8221;</span><span>2 ; URL=pagina.html</span><span class="string">&#8220;&gt;</span> </span><br />
<span><span class="string"></span> </span><span><span class="string"></span> </span><br />
<span><span class="string">EXPLICAÇÕES</span> </span><br />
<span><span class="string">&#8216;&#8212; Componente &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; Tempo &#8212;&#8211; Caminho &#8211;</span> </span><br />
<span><span class="string">&lt;META HTTP-EQUIV=&#8221;</span><span>Refresh</span><span class="string">&#8220; CONTENT=&#8221;</span><span>segundos ; URL=pagina.html&#8221;&gt;  </span></span><br />
<span>  </span><span>  </span><br />
<span>================================================================  </span><br />
<span>= DICA: Em ambos os casos o caminho pode ser redirecionado     =  </span><br />
<span>= para um endereço completo Ex: http://www.codigofonte.com.br  =  </span><br />
<span>================================================================<br />
</span></p></blockquote>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/blogasp.wordpress.com/81/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/blogasp.wordpress.com/81/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/blogasp.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/blogasp.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/blogasp.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/blogasp.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/blogasp.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/blogasp.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/blogasp.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/blogasp.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/blogasp.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/blogasp.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/blogasp.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/blogasp.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/blogasp.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/blogasp.wordpress.com/81/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blogasp.wordpress.com&amp;blog=327646&amp;post=81&amp;subd=blogasp&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blogasp.wordpress.com/2007/07/05/redirecionamento-de-paginas/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/6f88b8178e5d78f9dbec0c2ef40a956f?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">André Vieira</media:title>
		</media:content>
	</item>
		<item>
		<title>Data com dia da semana e mês por extenso</title>
		<link>http://blogasp.wordpress.com/2007/07/05/data-com-dia-da-semana-e-mes-por-extenso/</link>
		<comments>http://blogasp.wordpress.com/2007/07/05/data-com-dia-da-semana-e-mes-por-extenso/#comments</comments>
		<pubDate>Thu, 05 Jul 2007 14:48:44 +0000</pubDate>
		<dc:creator>André Vieira</dc:creator>
				<category><![CDATA[Dicas]]></category>

		<guid isPermaLink="false">http://blogasp.wordpress.com/2007/07/05/data-com-dia-da-semana-e-mes-por-extenso/</guid>
		<description><![CDATA[Para quem precisa exibir a data completa com dia da semana e mês por extenso para saudação ou mesmo para noticias está ai um otimo código. Ex: Response.Write(ExibeData(objRS(&#8220;data&#8221;))) Ex2: Response.Write(ExibeData(Now())) &#60;%   Function ExibeData(data)     dia_semana = WeekDay(data)     Select Case dia_semana     Case 1 : dia_semana = &#8220;Domingo&#8221;     Case 2 : dia_semana = &#8220;Segunda-Feira&#8221;     Case 3 : dia_semana = &#8220;Terça-Feira&#8221;     Case 4 : dia_semana = &#8220;Quarta-Feira&#8221;     Case 5 : dia_semana = &#8220;Quinta-Feira&#8221;     Case 6 : dia_semana = &#8220;Sexta-Feira&#8221;     Case 7 : dia_semana = &#8220;Sábado&#8221;     End Select     mes = Month(data)     Select Case mes     Case 1 : mes = &#8220;Janeiro&#8221;     Case 2 : mes = &#8220;Fevereiro&#8221;     Case 3 : mes = &#8220;Março&#8221;     Case 4 : mes = &#8220;Abril&#8221;     Case 5 : mes = &#8220;Maio&#8221;     Case 6 : mes = &#8220;Junho&#8221;     Case 7 : mes = &#8220;Julho&#8221;     Case 8 : mes = &#8220;Agosto&#8221;     Case 9 : mes = &#8220;Setembro&#8221;     Case 10 : mes = &#8220;Outubro&#8221;     Case 11 : mes = &#8220;Novembro&#8221;   [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blogasp.wordpress.com&amp;blog=327646&amp;post=80&amp;subd=blogasp&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Para quem precisa exibir a data completa com dia da semana e mês por extenso para saudação ou mesmo para noticias está ai um otimo código.</p>
<p>Ex:<br />
<strong>Response.Write(ExibeData(objRS(&#8220;data&#8221;)))</strong><br />
Ex2:<br />
<strong>Response.Write(ExibeData(Now()))</strong></p>
<blockquote><p><span><span>&lt;%  </span></span><br />
<span><span class="keyword">Function</span><span> ExibeData(data)  </span></span><br />
<span>  dia_semana = WeekDay(data)  </span><br />
<span>  <span class="keyword">Select</span><span> </span><span class="keyword">Case</span><span> dia_semana  </span></span><br />
<span>  <span class="keyword">Case</span><span> 1 : dia_semana = </span><span class="string">&#8220;Domingo&#8221;</span><span>  </span></span><br />
<span>  <span class="keyword">Case</span><span> 2 : dia_semana = </span><span class="string">&#8220;Segunda-Feira&#8221;</span><span>  </span></span><br />
<span>  <span class="keyword">Case</span><span> 3 : dia_semana = </span><span class="string">&#8220;Terça-Feira&#8221;</span><span>  </span></span><br />
<span>  <span class="keyword">Case</span><span> 4 : dia_semana = </span><span class="string">&#8220;Quarta-Feira&#8221;</span><span>  </span></span><br />
<span>  <span class="keyword">Case</span><span> 5 : dia_semana = </span><span class="string">&#8220;Quinta-Feira&#8221;</span><span>  </span></span><br />
<span>  <span class="keyword">Case</span><span> 6 : dia_semana = </span><span class="string">&#8220;Sexta-Feira&#8221;</span><span>  </span></span><br />
<span>  <span class="keyword">Case</span><span> 7 : dia_semana = </span><span class="string">&#8220;Sábado&#8221;</span><span>  </span></span><br />
<span>  <span class="keyword">End</span><span> </span><span class="keyword">Select</span><span>  </span></span><br />
<span>  mes = Month(data)  </span><br />
<span>  <span class="keyword">Select</span><span> </span><span class="keyword">Case</span><span> mes  </span></span><br />
<span>  <span class="keyword">Case</span><span> 1 : mes = </span><span class="string">&#8220;Janeiro&#8221;</span><span>  </span></span><br />
<span>  <span class="keyword">Case</span><span> 2 : mes = </span><span class="string">&#8220;Fevereiro&#8221;</span><span>  </span></span><br />
<span>  <span class="keyword">Case</span><span> 3 : mes = </span><span class="string">&#8220;Março&#8221;</span><span>  </span></span><br />
<span>  <span class="keyword">Case</span><span> 4 : mes = </span><span class="string">&#8220;Abril&#8221;</span><span>  </span></span><br />
<span>  <span class="keyword">Case</span><span> 5 : mes = </span><span class="string">&#8220;Maio&#8221;</span><span>  </span></span><br />
<span>  <span class="keyword">Case</span><span> 6 : mes = </span><span class="string">&#8220;Junho&#8221;</span><span>  </span></span><br />
<span>  <span class="keyword">Case</span><span> 7 : mes = </span><span class="string">&#8220;Julho&#8221;</span><span>  </span></span><br />
<span>  <span class="keyword">Case</span><span> 8 : mes = </span><span class="string">&#8220;Agosto&#8221;</span><span>  </span></span><br />
<span>  <span class="keyword">Case</span><span> 9 : mes = </span><span class="string">&#8220;Setembro&#8221;</span><span>  </span></span><br />
<span>  <span class="keyword">Case</span><span> 10 : mes = </span><span class="string">&#8220;Outubro&#8221;</span><span>  </span></span><br />
<span>  <span class="keyword">Case</span><span> 11 : mes = </span><span class="string">&#8220;Novembro&#8221;</span><span>  </span></span><br />
<span>  <span class="keyword">Case</span><span> 12 : mes = </span><span class="string">&#8220;Dezembro&#8221;</span><span>  </span></span><br />
<span>  <span class="keyword">End</span><span> </span><span class="keyword">Select</span><span>  </span></span><br />
<span>  ExibeData = dia_semana &amp; <span class="string">&#8220;, &#8221;</span><span> &amp; Day(</span><span class="keyword">Date</span><span>()) &amp; </span><span class="string">&#8220; de &#8221;</span><span> &amp; mes &amp; </span><span class="string">&#8220; de &#8221;</span><span> &amp; Year(data)  </span></span><br />
<span><span class="keyword">End</span><span> </span><span class="keyword">Function</span><span>  </span></span><br />
<span>  </span><br />
<span><span class="comment">&#8216; Exemplo</span><span>  </span></span><br />
<span>Response.Write(ExibeData(now()))  </span><br />
<span>%&gt;  </span><br />
<span></span></p></blockquote>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/blogasp.wordpress.com/80/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/blogasp.wordpress.com/80/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/blogasp.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/blogasp.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/blogasp.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/blogasp.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/blogasp.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/blogasp.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/blogasp.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/blogasp.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/blogasp.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/blogasp.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/blogasp.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/blogasp.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/blogasp.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/blogasp.wordpress.com/80/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blogasp.wordpress.com&amp;blog=327646&amp;post=80&amp;subd=blogasp&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blogasp.wordpress.com/2007/07/05/data-com-dia-da-semana-e-mes-por-extenso/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/6f88b8178e5d78f9dbec0c2ef40a956f?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">André Vieira</media:title>
		</media:content>
	</item>
		<item>
		<title>Validar CPF com expressão regular</title>
		<link>http://blogasp.wordpress.com/2007/07/05/validar-cpf-com-expressao-regular/</link>
		<comments>http://blogasp.wordpress.com/2007/07/05/validar-cpf-com-expressao-regular/#comments</comments>
		<pubDate>Thu, 05 Jul 2007 14:45:36 +0000</pubDate>
		<dc:creator>André Vieira</dc:creator>
				<category><![CDATA[Dicas]]></category>

		<guid isPermaLink="false">http://blogasp.wordpress.com/2007/07/05/validar-cpf-com-expressao-regular/</guid>
		<description><![CDATA[Esta função é muito útil na validação do CPF passado por parâmetro. A função também verifica se o CPF está digitado no formato correto utilizando Expressão Regular. Na função o CPF pode ser digitado em 2 formatos diferentes: XXXXXXXXX-XX ou XXX.XXX.XXX-XX. &#60;%   &#8216;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;   &#8216;Funcao: IsCPF(ByVal intNumero)   &#8216;Sinopse: Verifica se o valor passado é um CPF válido   &#8216;          Formatos aceitos: XXX.XXX.XXX-XX ou   &#8216;                            XXXXXXXXXXXXXX   &#8216;Parametro: intNumero   &#8216;Retorno: Booleano   &#8216;Autor: Gabriel Fróes - www.codigofonte.com.br   &#8216;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;   Function IsCPF(ByVal intNumero)       &#8216;Validando o formato do CPF com expressão regular       Set regEx = New RegExp                            &#8216;Cria o Objeto Expressão       regEx.Pattern = &#8220;d{3}.?d{3}.?d{3}-?d{2}&#8221;    &#8216; Expressão Regular   [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blogasp.wordpress.com&amp;blog=327646&amp;post=79&amp;subd=blogasp&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Esta função é muito útil na validação do <strong>CPF</strong> passado por parâmetro.</p>
<p>A função também verifica se o <strong>CPF</strong> está digitado no formato correto utilizando <strong>Expressão Regular</strong>.</p>
<p>Na função o <strong>CPF</strong> pode ser digitado em 2 formatos diferentes:<br />
<strong>XXXXXXXXX-XX</strong> ou <strong>XXX.XXX.XXX-XX</strong>.</p>
<blockquote><p><span><span>&lt;%  </span></span><br />
<span><span class="comment">&#8216;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</span><span>  </span></span><br />
<span><span class="comment">&#8216;Funcao: IsCPF(ByVal intNumero)</span><span>  </span></span><br />
<span><span class="comment">&#8216;Sinopse: Verifica se o valor passado é um CPF válido</span><span>  </span></span><br />
<span><span class="comment">&#8216;          Formatos aceitos: XXX.XXX.XXX-XX ou</span><span>  </span></span><br />
<span><span class="comment">&#8216;                            XXXXXXXXXXXXXX</span><span>  </span></span><br />
<span><span class="comment">&#8216;Parametro: intNumero</span><span>  </span></span><br />
<span><span class="comment">&#8216;Retorno: Booleano</span><span>  </span></span><br />
<span><span class="comment">&#8216;Autor: Gabriel Fróes - www.codigofonte.com.br</span><span>  </span></span><br />
<span><span class="comment">&#8216;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</span><span>  </span></span><br />
<span><span class="keyword">Function</span><span> IsCPF(</span><span class="keyword">ByVal</span><span> intNumero)  </span></span><br />
<span>    <span class="comment">&#8216;Validando o formato do CPF com expressão regular</span><span>  </span></span><br />
<span>    <span class="keyword">Set</span><span> regEx = </span><span class="keyword">New</span><span> RegExp                            </span><span class="comment">&#8216;Cria o Objeto Expressão</span><span>  </span></span><br />
<span>    regEx.Pattern = <span class="string">&#8220;d{3}.?d{3}.?d{3}-?d{2}&#8221;</span><span>    </span><span class="comment">&#8216; Expressão Regular</span><span>  </span></span><br />
<span>    regEx.IgnoreCase = <span class="keyword">True</span><span>                            </span><span class="comment">&#8216; Sensitivo ou não</span><span>  </span></span><br />
<span>    regEx.Global = <span class="keyword">True</span><span>  </span></span><br />
<span>    Retorno = RegEx.Test(intNumero)  </span><br />
<span>    <span class="keyword">Set</span><span> regEx = </span><span class="keyword">Nothing</span><span>  </span></span><br />
<span>  </span><br />
<span>    <span class="comment">&#8216;Caso seja verdadeiro posso validar se o CPF é válido</span><span>  </span></span><br />
<span>    <span class="keyword">If</span><span> Retorno = </span><span class="keyword">True</span><span> </span><span class="keyword">Then</span><span>  </span></span><br />
<span>        <span class="comment">&#8216;Validando a sequencia números</span><span>  </span></span><br />
<span>        <span class="keyword">Dim</span><span> CPF_temp  </span></span><br />
<span>        CPF_temp            = intNumero  </span><br />
<span>        CPF_temp            = Replace(CPF_temp, <span class="string">&#8220;.&#8221;</span><span>, </span><span class="string">&#8220;&#8221;</span><span>)  </span></span><br />
<span>        CPF_temp            = Replace(CPF_temp, <span class="string">&#8220;-&#8221;</span><span>, </span><span class="string">&#8220;&#8221;</span><span>)  </span></span><br />
<span>        CPF_Digito_temp        = Right(CPF_temp, 2)  </span><br />
<span>          </span><br />
<span>        <span class="comment">&#8216;Somando os nove primeiros digitos do CPF</span><span>  </span></span><br />
<span>        Soma    = (<span class="keyword">Clng</span><span>(Mid(CPF_temp,1,1)) * 10) + (</span><span class="keyword">Clng</span><span>(Mid(CPF_temp,2,1)) * 9) + (</span><span class="keyword">Clng</span><span>(Mid(CPF_temp,3,1)) * 8) + (</span><span class="keyword">Clng</span><span>(Mid(CPF_temp,4,1)) * 7) + (</span><span class="keyword">Clng</span><span>(Mid(CPF_temp,5,1)) * 6) + (</span><span class="keyword">Clng</span><span>(Mid(CPF_temp,6,1)) * 5) + (</span><span class="keyword">Clng</span><span>(Mid(CPF_temp,7,1)) * 4) + (</span><span class="keyword">Clng</span><span>(Mid(CPF_temp,8,1)) * 3) + (</span><span class="keyword">Clng</span><span>(Mid(CPF_temp,9,1)) * 2)  </span></span><br />
<span>        <span class="comment">&#8216;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</span><span>  </span></span><br />
<span>        <span class="comment">&#8216;Calculando o 1º dígito verificador</span><span>  </span></span><br />
<span>        <span class="comment">&#8216;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</span><span>  </span></span><br />
<span>        <span class="comment">&#8216;Pegando o resto da divisão por 11</span><span>  </span></span><br />
<span>        Resto    = (Soma <span class="keyword">Mod</span><span> 11)  </span></span><br />
<span>          </span><br />
<span>        <span class="keyword">If</span><span> Resto = 1 </span><span class="keyword">Or</span><span> Resto = 0 </span><span class="keyword">Then</span><span>  </span></span><br />
<span>            DigitoHum = 0  </span><br />
<span>        <span class="keyword">Else</span><span>  </span></span><br />
<span>            DigitoHum = <span class="keyword">Cstr</span><span>(11-Resto)  </span></span><br />
<span>        <span class="keyword">End</span><span> </span><span class="keyword">If</span><span>  </span></span><br />
<span>        <span class="comment">&#8216;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</span><span>  </span></span><br />
<span>        <span class="comment">&#8216;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</span><span>  </span></span><br />
<span>        <span class="comment">&#8216;Calculando o 2º dígito verificador</span><span>  </span></span><br />
<span>        <span class="comment">&#8216;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</span><span>  </span></span><br />
<span>        <span class="comment">&#8216;Somando os 9 primeiros digitos do CPF mais o 1º dígito</span><span>  </span></span><br />
<span>        Soma    = (<span class="keyword">Clng</span><span>(Mid(CPF_temp,1,1)) * 11) + (</span><span class="keyword">Clng</span><span>(Mid(CPF_temp,2,1)) * 10) + (</span><span class="keyword">Clng</span><span>(Mid(CPF_temp,3,1)) * 9) + (</span><span class="keyword">Clng</span><span>(Mid(CPF_temp,4,1)) * 8) + (</span><span class="keyword">Clng</span><span>(Mid(CPF_temp,5,1)) * 7) + (</span><span class="keyword">Clng</span><span>(Mid(CPF_temp,6,1)) * 6) + (</span><span class="keyword">Clng</span><span>(Mid(CPF_temp,7,1)) * 5) + (</span><span class="keyword">Clng</span><span>(Mid(CPF_temp,8,1)) * 4) + (</span><span class="keyword">Clng</span><span>(Mid(CPF_temp,9,1)) * 3) + (DigitoHum * 2)  </span></span><br />
<span>        <span class="comment">&#8216;Pegando o resto da divisão por 11</span><span>  </span></span><br />
<span>        Resto    = (Soma <span class="keyword">Mod</span><span> 11)  </span></span><br />
<span>          </span><br />
<span>        <span class="keyword">If</span><span> Resto = 1 </span><span class="keyword">Or</span><span> Resto = 0 </span><span class="keyword">Then</span><span>  </span></span><br />
<span>            DigitoDois = 0  </span><br />
<span>        <span class="keyword">Else</span><span>  </span></span><br />
<span>            DigitoDois = <span class="keyword">Cstr</span><span>(11-Resto)  </span></span><br />
<span>        <span class="keyword">End</span><span> </span><span class="keyword">If</span><span>  </span></span><br />
<span>        <span class="comment">&#8216;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</span><span>  </span></span><br />
<span>        <span class="comment">&#8216;Verificando se os digitos são iguais aos digítados.</span><span>  </span></span><br />
<span>        DigitoCPF = <span class="keyword">Cstr</span><span>(DigitoHum) &amp; </span><span class="keyword">Cstr</span><span>(DigitoDois)  </span></span><br />
<span>        <span class="keyword">If</span><span> </span><span class="keyword">Cstr</span><span>(CPF_Digito_temp) = </span><span class="keyword">Cstr</span><span>(DigitoCPF) </span><span class="keyword">Then</span><span>  </span></span><br />
<span>            Retorno = <span class="keyword">True</span><span>  </span></span><br />
<span>        <span class="keyword">Else</span><span>  </span></span><br />
<span>            Retorno = <span class="keyword">False</span><span>  </span></span><br />
<span>        <span class="keyword">End</span><span> </span><span class="keyword">If</span><span>  </span></span><br />
<span>    <span class="keyword">End</span><span> </span><span class="keyword">If</span><span>  </span></span><br />
<span>    IsCPF = Retorno  </span><br />
<span><span class="keyword">End</span><span> </span><span class="keyword">Function</span><span>  </span></span><br />
<span>%&gt;  </span><br />
<span></span></p></blockquote>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/blogasp.wordpress.com/79/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/blogasp.wordpress.com/79/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/blogasp.wordpress.com/79/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/blogasp.wordpress.com/79/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/blogasp.wordpress.com/79/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/blogasp.wordpress.com/79/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/blogasp.wordpress.com/79/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/blogasp.wordpress.com/79/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/blogasp.wordpress.com/79/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/blogasp.wordpress.com/79/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/blogasp.wordpress.com/79/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/blogasp.wordpress.com/79/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/blogasp.wordpress.com/79/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/blogasp.wordpress.com/79/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/blogasp.wordpress.com/79/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/blogasp.wordpress.com/79/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blogasp.wordpress.com&amp;blog=327646&amp;post=79&amp;subd=blogasp&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blogasp.wordpress.com/2007/07/05/validar-cpf-com-expressao-regular/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/6f88b8178e5d78f9dbec0c2ef40a956f?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">André Vieira</media:title>
		</media:content>
	</item>
		<item>
		<title>Descobrir o país a partir do endereço IP</title>
		<link>http://blogasp.wordpress.com/2007/07/05/descobrir-o-pais-a-partir-do-endereco-ip/</link>
		<comments>http://blogasp.wordpress.com/2007/07/05/descobrir-o-pais-a-partir-do-endereco-ip/#comments</comments>
		<pubDate>Thu, 05 Jul 2007 14:41:48 +0000</pubDate>
		<dc:creator>André Vieira</dc:creator>
				<category><![CDATA[Dicas]]></category>

		<guid isPermaLink="false">http://blogasp.wordpress.com/2007/07/05/descobrir-o-pais-a-partir-do-endereco-ip/</guid>
		<description><![CDATA[Descobrir o país a partir do endereço IP &#60;% Option Explicit &#8216;Declarando das Variáveis Dim ip &#8216;Requisitando os parâmetros ip = Request.Form(&#8220;ip&#8221;) Public Function getPaisFromIP(ByVal ip) &#8216;Declarando das Variáveis Dim objCon Dim objRs Dim ipLongo Dim bdAccess Dim sql &#8216;Convertendo o IP para Longo ipLongo = convertIPToLongo(ip) &#8216;Abrindo Conexão com o Banco de Dados bdAccess [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blogasp.wordpress.com&amp;blog=327646&amp;post=78&amp;subd=blogasp&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p> Descobrir o país a partir do endereço IP</p>
<p style="margin-left:40px;"><span><span>&lt;%  </span></span><br />
<span><span class="keyword">Option</span><span> Explicit  </span></span><br />
<span><span class="comment">&#8216;Declarando das Variáveis</span><span>  </span></span><br />
<span><span class="keyword">Dim</span><span> ip  </span></span><br />
<span>  </span><br />
<span><span class="comment">&#8216;Requisitando os parâmetros</span><span>  </span></span><br />
<span>ip = Request.Form(<span class="string">&#8220;ip&#8221;</span><span>)  </span></span><br />
<span>  </span><br />
<span><span class="keyword">Public</span><span> </span><span class="keyword">Function</span><span> getPaisFromIP(</span><span class="keyword">ByVal</span><span> ip)   </span></span><br />
<span>    <span class="comment">&#8216;Declarando das Variáveis</span><span>  </span></span><br />
<span>    <span class="keyword">Dim</span><span> objCon  </span></span><br />
<span>    <span class="keyword">Dim</span><span> objRs  </span></span><br />
<span>    <span class="keyword">Dim</span><span> ipLongo  </span></span><br />
<span>    <span class="keyword">Dim</span><span> bdAccess  </span></span><br />
<span>    <span class="keyword">Dim</span><span> sql  </span></span><br />
<span>  </span><br />
<span>    <span class="comment">&#8216;Convertendo o IP para Longo</span><span>  </span></span><br />
<span>    ipLongo = convertIPToLongo(ip)  </span><br />
<span>      </span><br />
<span>    <span class="comment">&#8216;Abrindo Conexão com o Banco de Dados</span><span>  </span></span><br />
<span>    bdAccess    = Server.Mappath(<span class="string">&#8220;ipPaises.mdb&#8221;</span><span>)  </span></span><br />
<span>    <span class="keyword">Set</span><span> objCon  = Server.CreateObject(</span><span class="string">&#8220;ADODB.Connection&#8221;</span><span>)  </span></span><br />
<span>    objCon.open <span class="string">&#8220;PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=&#8221;</span><span> &amp; bdAccess &amp; </span><span class="string">&#8220;;&#8221;</span><span>  </span></span><br />
<span>              </span><br />
<span>    <span class="comment">&#8216;Query para descobrir o país do IP</span><span>  </span></span><br />
<span>    sql = <span class="string">&#8220;SELECT TBIP.*, TBPAISES.PAIS FROM TBIP INNER JOIN TBPAISES ON TBIP.SIGLA_PAIS = TBPAISES.SIGLA_PAIS  WHERE &#8220;</span><span> &amp; ipLongo &amp; </span><span class="string">&#8221; BETWEEN IP_INICIO AND IP_FIM&#8221;</span><span>  </span></span><br />
<span>  </span><br />
<span>    <span class="comment">&#8216;Executando a Query</span><span>  </span></span><br />
<span>    <span class="keyword">Set</span><span> objRs = Server.CreateObject(</span><span class="string">&#8220;ADODB.RecordSet&#8221;</span><span>)  </span></span><br />
<span>    <span class="keyword">Set</span><span> objRs = objCon.execute(sql)  </span></span><br />
<span>  </span><br />
<span>    <span class="keyword">If</span><span> </span><span class="keyword">Not</span><span> objRs.EOF </span><span class="keyword">Then</span><span>  </span></span><br />
<span>        getPaisFromIP = objRs(<span class="string">&#8220;PAIS&#8221;</span><span>) &amp; </span><span class="string">&#8221; (&#8220;</span><span> &amp; objRs(</span><span class="string">&#8220;SIGLA_PAIS&#8221;</span><span>) &amp; </span><span class="string">&#8220;)&#8221;</span><span>  </span></span><br />
<span>    <span class="keyword">Else</span><span>  </span></span><br />
<span>        getPaisFromIP = <span class="string">&#8220;Não encontrado.&#8221;</span><span>  </span></span><br />
<span>    <span class="keyword">End</span><span> </span><span class="keyword">If</span><span>  </span></span><br />
<span>  </span><br />
<span>    <span class="comment">&#8216;Destruição dos objetos</span><span>  </span></span><br />
<span>    objRs.close  </span><br />
<span>    objCon.close  </span><br />
<span>    <span class="keyword">set</span><span> objRs   = </span><span class="keyword">Nothing</span><span>  </span></span><br />
<span>    <span class="keyword">Set</span><span> objCon  = </span><span class="keyword">Nothing</span><span>  </span></span><br />
<span><span class="keyword">End</span><span> </span><span class="keyword">function</span><span>   </span></span><br />
<span>  </span><br />
<span><span class="keyword">Function</span><span> convertIPToLongo (</span><span class="keyword">ByVal</span><span> ip)  </span></span><br />
<span>    <span class="keyword">Dim</span><span> Cont  </span></span><br />
<span>    <span class="keyword">Dim</span><span> Pos  </span></span><br />
<span>    <span class="keyword">Dim</span><span> AntPos  </span></span><br />
<span>    <span class="keyword">Dim</span><span> Num  </span></span><br />
<span>      </span><br />
<span>    <span class="keyword">If</span><span> ip = </span><span class="string">&#8220;&#8221;</span><span> </span><span class="keyword">Then</span><span>  </span></span><br />
<span>        convertIPToLongo = 0  </span><br />
<span>    <span class="keyword">Else</span><span>  </span></span><br />
<span>        <span class="keyword">For</span><span> Cont = 1 </span><span class="keyword">To</span><span> 4  </span></span><br />
<span>            Pos = InStr(AntPos + 1, ip, <span class="string">&#8220;.&#8221;</span><span>, 1)  </span></span><br />
<span>            <span class="keyword">If</span><span> Cont = 4 </span><span class="keyword">Then</span><span>   </span></span><br />
<span>                Pos = Len(ip) + 1  </span><br />
<span>            <span class="keyword">End</span><span> </span><span class="keyword">If</span><span>  </span></span><br />
<span>            Num = Int(Mid(ip, AntPos + 1, Pos &#8211; AntPos &#8211; 1))  </span><br />
<span>            AntPos = Pos  </span><br />
<span>            convertIPToLongo = ((Num <span class="keyword">Mod</span><span> 256) * (256 ^ (4 &#8211; Cont))) +   convertIPToLongo  </span></span><br />
<span>        <span class="keyword">Next</span><span>  </span></span><br />
<span>    <span class="keyword">End</span><span> </span><span class="keyword">If</span><span>  </span></span><br />
<span><span class="keyword">End</span><span> </span><span class="keyword">Function</span><span>  </span></span><br />
<span>%&gt;  </span><br />
<span>&lt;!DOCTYPE html <span class="keyword">PUBLIC</span><span> </span><span class="comment">&#8216;-//W3C//DTD XHTML 1.0 Transitional//EN&#8217; &#8216;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&#8217;&gt;</span><span>  </span></span><br />
<span>&lt;html xmlns=<span class="string">&#8220;http://www.w3.org/1999/xhtml&#8221;</span><span> xml:lang=</span><span class="string">&#8220;pt&#8221;</span><span> lang=</span><span class="string">&#8220;pt-br&#8221;</span><span>&gt;  </span></span><br />
<span>&lt;head&gt;&lt;title&gt;DEMO : Descobrir o País a partir <span class="keyword">do</span><span> IP&lt;/title&gt;&lt;/head&gt;  </span></span><br />
<span>&lt;style&gt;body{font:normal 12px tahoma}&lt;/style&gt;  </span><br />
<span>&lt;body&gt;  </span><br />
<span>&lt;h1&gt;DEMO : Descobrir o País a partir <span class="keyword">do</span><span> IP&lt;/h1&gt;  </span></span><br />
<span>Digite o Endereço IP (xxx.xxx.xxx.xxx)&lt;br /&gt;  </span><br />
<span>&lt;form action=<span class="string">&#8220;&lt;%=Request.ServerVariables(&#8220;</span><span>SCRIPT_NAME</span><span class="string">&#8220;)%&gt;&#8221;</span><span> method=</span><span class="string">&#8220;POST&#8221;</span><span>&gt;  </span></span><br />
<span>    &lt;input type=<span class="string">&#8220;text&#8221;</span><span> size=</span><span class="string">&#8220;20&#8243;</span><span> name=</span><span class="string">&#8220;ip&#8221;</span><span> /&gt;  </span></span><br />
<span>    &lt;input type=<span class="string">&#8220;submit&#8221;</span><span> value=</span><span class="string">&#8220;Enviar&#8221;</span><span> /&gt;  </span></span><br />
<span>&lt;form&gt;  </span><br />
<span>&lt;%<span class="keyword">If</span><span> Len(ip) &gt; 10 </span><span class="keyword">Then</span><span>%&gt;  </span></span><br />
<span>    &lt;h2&gt;Resultado:&lt;/h2&gt;  </span><br />
<span>    Endereço IP: &lt;b&gt;&lt;%=ip%&gt;&lt;/b&gt;&lt;br /&gt;  </span><br />
<span>    País: &lt;b&gt;&lt;%=getPaisFromIP(ip)%&gt;&lt;/b&gt;  </span><br />
<span>&lt;%<span class="keyword">Else</span><span>%&gt;  </span></span><br />
<span>    &lt;br /&gt;IP Inválido.  </span><br />
<span>&lt;%<span class="keyword">End</span><span> </span><span class="keyword">If</span><span>%&gt;  </span></span><br />
<span>&lt;/body&gt;  </span><br />
<span>&lt;/html&gt;<br />
</span></p>
<p>Créditos do criador do código fonte: <a href="http://www.codigofonte.com.br/codigo/asp/ambiente/descobrir-o-pais-a-partir-do-endereco-ip" rel="nofollow">http://www.codigofonte.com.br/codigo/asp/ambiente/descobrir-o-pais-a-partir-do-endereco-ip</a></p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/blogasp.wordpress.com/78/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/blogasp.wordpress.com/78/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/blogasp.wordpress.com/78/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/blogasp.wordpress.com/78/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/blogasp.wordpress.com/78/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/blogasp.wordpress.com/78/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/blogasp.wordpress.com/78/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/blogasp.wordpress.com/78/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/blogasp.wordpress.com/78/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/blogasp.wordpress.com/78/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/blogasp.wordpress.com/78/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/blogasp.wordpress.com/78/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/blogasp.wordpress.com/78/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/blogasp.wordpress.com/78/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/blogasp.wordpress.com/78/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/blogasp.wordpress.com/78/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blogasp.wordpress.com&amp;blog=327646&amp;post=78&amp;subd=blogasp&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blogasp.wordpress.com/2007/07/05/descobrir-o-pais-a-partir-do-endereco-ip/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/6f88b8178e5d78f9dbec0c2ef40a956f?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">André Vieira</media:title>
		</media:content>
	</item>
		<item>
		<title>VbScript: FormatDateTime ()</title>
		<link>http://blogasp.wordpress.com/2007/06/29/formatdatetime/</link>
		<comments>http://blogasp.wordpress.com/2007/06/29/formatdatetime/#comments</comments>
		<pubDate>Fri, 29 Jun 2007 14:40:28 +0000</pubDate>
		<dc:creator>André Vieira</dc:creator>
				<category><![CDATA[VBScript]]></category>

		<guid isPermaLink="false">http://blogasp.wordpress.com/2007/06/29/formatdatetime/</guid>
		<description><![CDATA[Retorna Data ou Hora formatada de acordo com parâmetros. Ex: Dim dataAtual, dataFormatada dataAtual = now ( ) dataFormatada = FormatDateTime(dataAtual, 1) Códigos de Formato : 0 &#8211; Retorna o formato short date (caso seja passado apenas a hora o retorno será a hora, se passar a data o retorno será a data, se passar [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blogasp.wordpress.com&amp;blog=327646&amp;post=77&amp;subd=blogasp&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Retorna Data ou Hora formatada de acordo com parâmetros. Ex:</p>
<p>Dim dataAtual, dataFormatada<br />
dataAtual = now ( )<br />
dataFormatada = FormatDateTime(dataAtual, 1)</p>
<p>Códigos de Formato :<br />
0 &#8211; Retorna o formato short date (caso seja passado apenas a hora o retorno será a hora, se passar a data o retorno será a data, se passar ambos, como short format)<br />
1 &#8211; long date<br />
2 &#8211; short date format especificado nas Configurações Regionais do computador<br />
3 &#8211; Retorna a hora especificada nas Configurações Regionais  do computador<br />
4 &#8211; Retorna a hora usando o formato 24horas (hh:mm)</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/blogasp.wordpress.com/77/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/blogasp.wordpress.com/77/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/blogasp.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/blogasp.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/blogasp.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/blogasp.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/blogasp.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/blogasp.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/blogasp.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/blogasp.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/blogasp.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/blogasp.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/blogasp.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/blogasp.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/blogasp.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/blogasp.wordpress.com/77/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blogasp.wordpress.com&amp;blog=327646&amp;post=77&amp;subd=blogasp&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blogasp.wordpress.com/2007/06/29/formatdatetime/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/6f88b8178e5d78f9dbec0c2ef40a956f?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">André Vieira</media:title>
		</media:content>
	</item>
		<item>
		<title>Taxa de Dolar direto do BCB</title>
		<link>http://blogasp.wordpress.com/2007/05/29/taxa-de-dolar-direto-do-bcb/</link>
		<comments>http://blogasp.wordpress.com/2007/05/29/taxa-de-dolar-direto-do-bcb/#comments</comments>
		<pubDate>Tue, 29 May 2007 12:06:13 +0000</pubDate>
		<dc:creator>André Vieira</dc:creator>
				<category><![CDATA[Geral]]></category>

		<guid isPermaLink="false">http://blogasp.wordpress.com/2007/05/29/taxa-de-dolar-direto-do-bcb/</guid>
		<description><![CDATA[&#60;% Set XMLHttp = Server.CreateObject(&#8220;Microsoft.XMLHTTP&#8221;) XMLHttp.open &#8220;GET&#8221;, &#8220;http://www.bcb.gov.br/htms/infecon/taxas/taxas.htm&#8221;, false XMLHttp.send() pega = XMLHttp.ResponseText cotacao = LCase(pega) Set cod = Nothing i = 1 teste = cotacao i = inStr(i,cotacao,&#8221;taxa de venda&#8221;) i = inStr(i,cotacao,&#8221;&#60;tr&#62;&#8221;) i = inStr(i,cotacao,&#8221;&#60;td&#8221;) i = inStr(i,cotacao,&#8221;&#62;&#8221;) f = inStr(i,cotacao,&#8221;&#60;/td&#62;&#8221;) cotacao_data = Mid(cotacao,i,(f-i)) cotacao_data = Replace(cotacao_Data,&#8221;&#62;&#8221;,&#8221; &#8220;) i = inStr(f,cotacao,&#8221;&#60;td &#8220;) i [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blogasp.wordpress.com&amp;blog=327646&amp;post=76&amp;subd=blogasp&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<blockquote><p>  &lt;%<br />
Set XMLHttp = Server.CreateObject(&#8220;Microsoft.XMLHTTP&#8221;)<br />
XMLHttp.open &#8220;GET&#8221;, &#8220;http://www.bcb.gov.br/htms/infecon/taxas/taxas.htm&#8221;, false<br />
XMLHttp.send()<br />
pega = XMLHttp.ResponseText<br />
cotacao = LCase(pega)<br />
Set cod = Nothing</p>
<p>i = 1<br />
teste = cotacao<br />
i = inStr(i,cotacao,&#8221;taxa de venda&#8221;)<br />
i = inStr(i,cotacao,&#8221;&lt;tr&gt;&#8221;)<br />
i = inStr(i,cotacao,&#8221;&lt;td&#8221;)<br />
i = inStr(i,cotacao,&#8221;&gt;&#8221;)<br />
f = inStr(i,cotacao,&#8221;&lt;/td&gt;&#8221;)<br />
cotacao_data = Mid(cotacao,i,(f-i))<br />
cotacao_data = Replace(cotacao_Data,&#8221;&gt;&#8221;,&#8221; &#8220;)<br />
i = inStr(f,cotacao,&#8221;&lt;td &#8220;)<br />
i = inStr(i,cotacao,&#8221;&gt;&#8221;)<br />
f = inStr(i,cotacao,&#8221;&lt;/td&gt;&#8221;)<br />
cotacao_venda = Mid(cotacao,i,(f-i))<br />
cotacao_venda = Replace(cotacao_venda,&#8221;&gt;&#8221;,&#8221; &#8220;)<br />
i = inStr(f,cotacao,&#8221;&lt;td &#8220;)<br />
i = inStr(i,cotacao,&#8221;&gt;&#8221;)<br />
f = inStr(i,cotacao,&#8221;&lt;/td&gt;&#8221;)<br />
cotacao_compra = Mid(cotacao,i,(f-i))<br />
cotacao_compra = Replace(cotacao_compra,&#8221;&gt;&#8221;,&#8221; &#8220;)</p>
<p>response.write &#8220;Data: &#8220;&amp;cotacao_data&amp;&#8221;&lt;br&gt;&#8221;<br />
response.write &#8220;Dolar Venda: &#8220;&amp;cotacao_venda&amp;&#8221;&lt;br&gt;&#8221;<br />
response.write &#8220;Dolar Compra : &#8220;&amp;cotacao_compra&amp;&#8221;&lt;br&gt;&#8221;</p>
<p>%&gt;</p></blockquote>
<p>Fonte: http://artigos.scriptfacil.com/?arquivo=e&amp;t=4&amp;a=29</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/blogasp.wordpress.com/76/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/blogasp.wordpress.com/76/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/blogasp.wordpress.com/76/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/blogasp.wordpress.com/76/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/blogasp.wordpress.com/76/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/blogasp.wordpress.com/76/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/blogasp.wordpress.com/76/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/blogasp.wordpress.com/76/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/blogasp.wordpress.com/76/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/blogasp.wordpress.com/76/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/blogasp.wordpress.com/76/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/blogasp.wordpress.com/76/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/blogasp.wordpress.com/76/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/blogasp.wordpress.com/76/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/blogasp.wordpress.com/76/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/blogasp.wordpress.com/76/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blogasp.wordpress.com&amp;blog=327646&amp;post=76&amp;subd=blogasp&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blogasp.wordpress.com/2007/05/29/taxa-de-dolar-direto-do-bcb/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/6f88b8178e5d78f9dbec0c2ef40a956f?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">André Vieira</media:title>
		</media:content>
	</item>
		<item>
		<title>Tela Cheia</title>
		<link>http://blogasp.wordpress.com/2007/05/28/tela-cheia/</link>
		<comments>http://blogasp.wordpress.com/2007/05/28/tela-cheia/#comments</comments>
		<pubDate>Mon, 28 May 2007 13:11:08 +0000</pubDate>
		<dc:creator>André Vieira</dc:creator>
				<category><![CDATA[Javascript]]></category>

		<guid isPermaLink="false">http://blogasp.wordpress.com/2007/05/28/tela-cheia/</guid>
		<description><![CDATA[Exemplo em Javascript de abertura de um site em tela cheia a partir de um botão: &#60;script languae=&#8221;javascript&#8221;&#62; function Abrir(url) { window.open(url,&#8221;,&#8217;fullscreen=yes&#8217;); } &#60;/script&#62; &#60;input type=&#8221;button&#8221; NAME=&#8221;btnAbrir&#8221; value=&#8221;Abrir em Tela Cheia&#8221; onclick=&#8221;Abrir(&#8216;http://www.bol.com.br&#8217;);&#8221;&#62;<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blogasp.wordpress.com&amp;blog=327646&amp;post=75&amp;subd=blogasp&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Exemplo em Javascript de abertura de um site em tela cheia a partir de um botão:</p>
<blockquote><p>&lt;script languae=&#8221;javascript&#8221;&gt;<br />
function Abrir(url)<br />
{<br />
window.open(url,&#8221;,&#8217;fullscreen=yes&#8217;);<br />
}<br />
&lt;/script&gt;</p>
<p>&lt;input type=&#8221;button&#8221; NAME=&#8221;btnAbrir&#8221; value=&#8221;Abrir em Tela Cheia&#8221; onclick=&#8221;Abrir(&#8216;http://www.bol.com.br&#8217;);&#8221;&gt;</p></blockquote>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/blogasp.wordpress.com/75/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/blogasp.wordpress.com/75/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/blogasp.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/blogasp.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/blogasp.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/blogasp.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/blogasp.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/blogasp.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/blogasp.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/blogasp.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/blogasp.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/blogasp.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/blogasp.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/blogasp.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/blogasp.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/blogasp.wordpress.com/75/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blogasp.wordpress.com&amp;blog=327646&amp;post=75&amp;subd=blogasp&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blogasp.wordpress.com/2007/05/28/tela-cheia/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/6f88b8178e5d78f9dbec0c2ef40a956f?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">André Vieira</media:title>
		</media:content>
	</item>
		<item>
		<title>VbScript: IsEmpty()</title>
		<link>http://blogasp.wordpress.com/2007/05/25/vbscript-isempty/</link>
		<comments>http://blogasp.wordpress.com/2007/05/25/vbscript-isempty/#comments</comments>
		<pubDate>Fri, 25 May 2007 17:52:21 +0000</pubDate>
		<dc:creator>André Vieira</dc:creator>
				<category><![CDATA[VBScript]]></category>

		<guid isPermaLink="false">http://blogasp.wordpress.com/2007/05/25/vbscript-isempty/</guid>
		<description><![CDATA[Função que devolve os valores True ou False de acordo se uma variável foi inicializada. Dim valor, resultado resultado = IsEmpty(valor) &#8216; Devolve True. valor = Null &#8216; Fica Null. resultado = IsEmpty(valor) &#8216; Devolve False. variavel = Empty &#8216; Fica Empty. resultado = IsEmpty(valor) &#8216;Devolve True.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blogasp.wordpress.com&amp;blog=327646&amp;post=74&amp;subd=blogasp&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Função que devolve os valores True ou False de acordo se uma variável foi inicializada.</p>
<p>Dim valor,  resultado<br />
resultado = IsEmpty(valor)  &#8216; Devolve True.</p>
<p>valor = Null      &#8216; Fica Null.<br />
resultado = IsEmpty(valor)      &#8216; Devolve False.</p>
<p>variavel = Empty                 &#8216; Fica Empty.<br />
resultado = IsEmpty(valor)      &#8216;Devolve True.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/blogasp.wordpress.com/74/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/blogasp.wordpress.com/74/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/blogasp.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/blogasp.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/blogasp.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/blogasp.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/blogasp.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/blogasp.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/blogasp.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/blogasp.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/blogasp.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/blogasp.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/blogasp.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/blogasp.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/blogasp.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/blogasp.wordpress.com/74/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blogasp.wordpress.com&amp;blog=327646&amp;post=74&amp;subd=blogasp&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blogasp.wordpress.com/2007/05/25/vbscript-isempty/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/6f88b8178e5d78f9dbec0c2ef40a956f?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">André Vieira</media:title>
		</media:content>
	</item>
		<item>
		<title>VbScript: CStr()</title>
		<link>http://blogasp.wordpress.com/2007/05/22/cstr-vbscript/</link>
		<comments>http://blogasp.wordpress.com/2007/05/22/cstr-vbscript/#comments</comments>
		<pubDate>Tue, 22 May 2007 12:08:15 +0000</pubDate>
		<dc:creator>André Vieira</dc:creator>
				<category><![CDATA[VBScript]]></category>

		<guid isPermaLink="false">http://blogasp.wordpress.com/2007/05/22/cstr-vbscript/</guid>
		<description><![CDATA[Retorna uma String. Ex: idade = CStr(21) Nesse caso a variável idade armazena o valor &#8220;21&#8243; no formato texto.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blogasp.wordpress.com&amp;blog=327646&amp;post=73&amp;subd=blogasp&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Retorna uma String.<br />
Ex:  idade = CStr(21)</p>
<p>Nesse caso a variável idade armazena o valor &#8220;21&#8243; no formato texto.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/blogasp.wordpress.com/73/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/blogasp.wordpress.com/73/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/blogasp.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/blogasp.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/blogasp.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/blogasp.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/blogasp.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/blogasp.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/blogasp.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/blogasp.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/blogasp.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/blogasp.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/blogasp.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/blogasp.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/blogasp.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/blogasp.wordpress.com/73/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blogasp.wordpress.com&amp;blog=327646&amp;post=73&amp;subd=blogasp&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blogasp.wordpress.com/2007/05/22/cstr-vbscript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/6f88b8178e5d78f9dbec0c2ef40a956f?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">André Vieira</media:title>
		</media:content>
	</item>
		<item>
		<title>Artigo interessante: Testes de Software</title>
		<link>http://blogasp.wordpress.com/2007/04/20/artigo-interessante-testes-de-software/</link>
		<comments>http://blogasp.wordpress.com/2007/04/20/artigo-interessante-testes-de-software/#comments</comments>
		<pubDate>Fri, 20 Apr 2007 13:47:22 +0000</pubDate>
		<dc:creator>André Vieira</dc:creator>
				<category><![CDATA[Outros]]></category>

		<guid isPermaLink="false">http://blogasp.wordpress.com/2007/04/20/artigo-interessante-testes-de-software/</guid>
		<description><![CDATA[Apesar de não ser totalmente relacionado com ASP, o artigo é bem interessante para quem desenvolve sistemas seja pra desktop ou web. &#62;&#62;&#62; Teste unitário Origem: Wikipédia, a enciclopédia livre. Teste unitário é toda a aplicação de teste nas assinaturas de entradas e saídas de um sistema, consiste de validar dados validos e inválidos via [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blogasp.wordpress.com&amp;blog=327646&amp;post=72&amp;subd=blogasp&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Apesar de não ser totalmente relacionado com ASP, o artigo é bem interessante para quem desenvolve sistemas seja pra desktop ou web.</p>
<p><strong>&gt;&gt;&gt; Teste unitário</strong><br />
Origem: Wikipédia, a enciclopédia livre.</p>
<p>Teste unitário é toda a aplicação de teste nas assinaturas de entradas e saídas de um sistema, consiste de validar dados validos e inválidos via I/O (entrada/saída) sendo aplicado por desenvolvedores ou analistas de teste.</p>
<p>Relação de conceitos de testes unitários: I/O Input Output (Entrada e Saída).</p>
<p><strong>Validos</strong></p>
<p>São entradas e saídas de dados comuns ao sistema e pertencem ao processo normal. Não apresentam tratamento alem do normal já programado. No caso de retorno devera seguir os padrões estabelecidos e não permitir retornos fora das regras especificadas.</p>
<p><strong>Domínio</strong></p>
<p>Pode ser um campo, uma assinatura, um I/O pode ser qualquer tipo de local que receba valores externos ao sistema. Todo domínio deve realizar consistências de dados validos e inválidos. Um domínio só permite dados com o formato igual ao que será armazenado.</p>
<p>Ex.: Campo DDD devera permitir números ate quatro casas não negativas sendo recomendado quando for possível ate a base de dados deve impedir a entrada de valores inválidos.</p>
<p>Receber e guardar o mesmo tipo de dado o tamanho do campo que recebe os dados deve ser menor ou igual ao campo que irá armazenar os dados (em raros casos os campos de armazenamento são menores que os de exibição).</p>
<p><strong>Inválidos</strong></p>
<p>São entradas e saídas de dados não comuns ao sistema . Apresentam tratamento para validar o tipo de dado invalido ou situação. Pode possuir ate dois retornos, uma mensagem para um log no sistema e uma mensagem em uma formatação e escrita adequada ao usuário.</p>
<p>Ex.: Dividir (x int,y int )=z int .</p>
<p>Caso tenhamos x=1,y=0 z será um valor com erro e devera retorna uma mensagem avisando que a operação é invalida para o usuário. Caso a expressão seja um dado comum do sistema a autorização para tal validação dever ser do usuário pois faz parte da regra de negocio. Não existe retorno invalido sem um tratamento. Tratamento genérico deve ser apenas para condições não visíveis na regra e uso do sistema.</p>
<p><strong>Domínio</strong></p>
<p>Pode ser um campo, uma assinatura, um I/O pode ser qualquer tipo de local que receba valores externos ao sistema. Todo domínio deve realizar consistências de dados validos e inválidos. Um domínio só permite dados com o formata igual ao que será armazenado.</p>
<p>Ex.: Campo DDD devera permitir números ate quatro casas não negativas sendo recomendado quando for possível ate a base de dados deve impedir a entrada de valores inválidos.</p>
<p>Receber e guarda o mesmo tipo de dado o tamanho do campo que recebe os dados deve ser menor ou igual ao campo que ira armazenar os dados (em raros casos os campos de armazenamento são menores que os de exibição).</p>
<p>Em suma, dominio é o tipo de valor valido para cada campo. Como exemplo podemos citar: Campo nome: Dominio = tipo: string;tamanho:50. Ao aplicamos o particionamento por equivalencia e a analise por valor limite poderemos criar as seguintes classes de testes.</p>
<p>Particionamento por Equivalencia: campo nome:</p>
<p>* valor em branco; Cenário Negativo<br />
* valor &gt; 50; Cenário Negativo<br />
* qualquer valor de 1 a 50; Cenário Positivo</p>
<p><strong>Analise por Valor Limite:</strong></p>
<p>campo nome: valor em branco; valores 49,50,51; Usamos um valor exatamente inferior e extamente posterior ao valor do campo, devido ao fato dos erros aparecerem nas fronteiras da aplicação.</p>
<p>Tipos de valores</p>
<p>Existem diversos formatos de valores e cada um possui uma regra própria alem da regras da região em que será usado.</p>
<p>Ex.:. Cálculo do Dia da Páscoa.<br />
Ver artigo principal: Cálculo da Páscoa.<br />
Para calcular o dia da Páscoa (Domingo), usa-se a fórmula abaixo, onde o ANO deve ser introduzido com 4 dígitos. O Operador MOD é o resto da divisão. A fórmula vale para anos entre 1901 e 2099. A fórmula pode ser estendida para outros anos, alterando X e Y conforme a tabela a seguir:</p>
<p>anos de 1582 à 1599 X=22 e Y=2<br />
anos de 1600 à 1699 X=22 e Y=2<br />
anos de 1700 à 1799 X=23 e Y=3<br />
anos de 1800 à 1899 X=24 e Y=4<br />
anos de 1900 à 1999 X=24 e Y=5<br />
anos de 2000 à 2099 X=24 e Y=5<br />
anos de 2100 à 2199 X=24 e Y=6<br />
anos de 2200 à 2299 X=25 e Y=7</p>
<p>Para anos entre 1901 e 2099: X=24 e Y=5<br />
a = ANO MOD 19<br />
b= ANO MOD 4<br />
c = ANO MOD 7<br />
d = (19 * a + X) MOD 30<br />
e = (2 * b + 4 * c + 6 * d + Y) MOD 7<br />
Se (d + e) &gt; 9 então DIA = (d + e &#8211; 9) e MES = Abril<br />
senão DIA = (d + e + 22) e MES = Março</p>
<p>Há dois casos particulares que ocorrem duas vezes por século:</p>
<p>Quando o domingo de Páscoa cair em Abril e o dia for 26, corrige-se para uma semana antes, ou seja, vai para dia 19;<br />
Quando o domingo de Páscoa cair em Abril e o dia for 25 e o termo &#8220;d&#8221; for igual a 28, simultaneamente com &#8220;a&#8221; maior que 10, então o dia é corrigido para 18.<br />
Neste século estes dois casos particulares só acontecerão em 2049 e 2076.<br />
Para calcular a Terça-feira de Carnaval, basta subtrair 47 dias do Domingo de Páscoa.<br />
Para calcular a Quinta-feira de Corpus Christi, soma-se 60 dias ao Domingo de Páscoa.</p>
<p>exemplos:<br />
Para o ano de 1997:</p>
<p>a=1997 MOD 19 = 2<br />
b=1997 MOD 4 = 1<br />
c=1997 MOD 7 = 2<br />
d=(19 * 2 + 24) MOD 30 = 2<br />
e=(2 * 1 + 4 * 2 + 6 * 2 + 5) MOD 7 = 6</p>
<p>(d + e) = 2 + 6 = 8</p>
<p>Logo o Domingo de Páscoa é 30/3/1997<br />
Carnaval: 11/2/1997<br />
Corpus Christi: 29/5/1997</p>
<p><strong>Data</strong></p>
<p>Deve validar anos iguais a faixa de datas existente na base. Deve ser feita conforme o padrão da região de uso. Validar o maior e o menor dia de todos os meses. Deve estar preparado para anos bissextos. Em caso de calculo de feriados deve apresentar todos eles corretamente conforme as regiões definidas pelo o usuário. Não devera. Validar meses e dias invalidados conforme regra (X,X-1,X+1, (X+Y)/2,Y,Y-1,Y+1 ) sendo x o maior numero e y o menor Verificar quantos anos o sistema devera tratar anteriores e posteriores.</p>
<p><strong>Números</strong></p>
<p>Devem ser tratados no formato correto e com as regras para a região especificadas pelo usuário. Validar valores negativos ou sinais. Testar sempre o valor (um acima do maior, o maior, um abaixo do maior, alguns intermediários, um acima do menor, o menor, um abaixo do menor, e alguns valores inválidos) (X,X-1,X+1, (X+Y)/2,Y,Y-1,Y+1 ) sendo x o maior numero e y o menor numero. Tratar valores fracionados conforme a quantidade de casas validadas pela empresa. E-mail. Todo e-mail valido possui um @ e um . sendo que o @ nunca esta no começo ou no fim e o ponto sem esta entre o @ e o fim sendo que ele não pode estar junto com o @. Um e-mail dever ter no mínimo 5 caracteres contando o @ e o ponto.</p>
<p><strong>Senha</strong></p>
<p>Deve atender as normas da empresa. Não deve ser exibida durante a digitação somente com caractere representativo. Deve ser confirmada a digitação. Não deve permitir ser copiada ou colada. Domínio. Existem diversas formas para validar domínio e e-mail valido porem devem ser aprovadas pela empresa pois consomem comunicação com outros sites.</p>
<p>[editar] Campos especiais CPF, CGC, CEP, CNS e etc.</p>
<p>* Validar a formatação na entrada dos dados e na armazenagem.<br />
* Devem atender as regras de calculo existentes.<br />
* Não podem ser dados viciados.<br />
* Campos dependentes DDI-DDD-TEL e similares.<br />
* Validar o preenchimento de ambos em validação única.<br />
* Validar a formatação.<br />
* Campos pré-preenchidos.<br />
* Validar a formatação.<br />
* Testar todas as regras de preenchimento.<br />
* Força dados inválidos ou repetir o preenchimento .</p>
<p><strong>Valores para teste</strong></p>
<p>Existem diversos tipos de dados validos que se tornam inválidos conforme a linguagem usada.</p>
<p><strong>Sintaxes da linguagem</strong></p>
<p>Muitas linguagem podem ter problemas ao tratar valores do tipo objeto, string e outros. Tais linguagem tem tratamentos especiais para estes valores para assim evitar erros ou em alguns casos não tem tratamento pois o erro é na codificação.</p>
<p><strong>Erro na linguagem</strong></p>
<p>Um exemplo claro de erro na linguagem são sistemas feitos na própria base de dados que não permitem pesquisas usando termos como else,while,for por serem palavras reservadas da linguagem atualmente a maior parte dos sistema não apresenta erros com termos reservados.</p>
<p><strong>Alteração de valores</strong></p>
<p>Algumas linguagens ao receberem determinados valores alteram seus dados internos com tratamentos automáticos no geral elas possuem travas para estes tratamentos. Exemplo de valores 0&#215;00, 00FF, 1.1, 1,1, 1^2 e etc.</p>
<p><strong>Interpretação de valores</strong></p>
<p>Algumas linguagens interpretam diretamente valores sem tratar passando eles para outra aplicação em uso. Este erro ocorre geralmente quando uma outra linguagem é usada como intermediário. Exemplo em HTML(ASP,JSP,CGI,PHP e outras) quando passamos uma estrutura HTML(TAGs) para a pagina e esta estrutura é apresentada novamente porem no corpo do html podemos ter dados incorporados que mudam o resultado apresentado. Este tipo de erro é chamado de inject . Outro exemplo de inject é o SQL em junção com outras linguagens, recebendo diretamente linhas de comando podendo alterar pesquisas ou apagar tabelas de dados inteiras.</p>
<p>Ex.: HTLM(&lt;TAGs&gt;,javascript) SQL(términos de linhas seguidas de comandos (1;&#8217; while 1=1 print 1)).</p>
<p>Estes erros ocorrem pois temos uma segunda linguagem que faz o intermédio entre os comandos, para tratar estes tipos de erros devemos sempre conhecer bem as linguagens usadas evitando transferir diretos dados do usuário que acabem por virar comandos.</p>
<p><strong>Cálculos mesclados</strong></p>
<p>Ficar atentos aos valores que são permitimos pois o usuário pode acabar por inserir dados inválidos. Excreções como (-,(),{},[],&#8217;,^,x,*,/,. e outras) podem mudar totalmente o valor que era esperado podendo ate colocar valores alem dos permitidos pela especificação do sistema. Ponto flutuando ou Estouros. Erros de ponto flutuando dificilmente são identificados durante a especificação de um sistema ou acabam por ocorrer com a maturidade da empresa e seus dados. O que acarreta tais erros é:. Não validar os dados corretamente. Não planejar bem o crescimento dos dados. Não ter uma área de armazenamento maior que a área de entrada de dados. Na época da inflação era comum sistema terem um capo valor de 9 casas e uma área de armazenamento com 12 casas. Outro erro comum que permite ocorrer estouro é uso de objeto e matrizes sem estudo, qualquer laço entre eles ou o próprio crescimento descontrolado.</p>
<p><strong>Formatações de região ou não</strong></p>
<p>Onde estou quem sou eu ? E bom sempre força o sistema a usar uma região única caso não se trate todos os valores que ele pode trabalhar. O não tratamento da região pode tanto mudar o valor de um pagamento como alterar a data de uma cobrança. Caso o cliente não defina uma região devemos cobrar ele de tal definição e devemos sempre estar atento para os padrões já existentes evitando misturar dados como (DD/MM com MM/DD e 1.100 com 1,1).</p>
<p><strong>Medidas</strong></p>
<p>Um dado extremamente importante são as medidas. Elas devem ser sempre iguais no sistema inteiro ou serem tratadas para isso. É extremamente recomendado usar uma medida única no sistema evitando assim erros como mandar um foguete para um planeta e errarmos ele por 65.000km (caso da nasa de um sistema que misturava dados em polegadas e dados em metros). Os erros de medidas não se aplicam somente à formulas diferentes e sim a tamanhos ex.: 100cm=1m=0.001km.</p>
<p><strong>Data</strong></p>
<p>A formatação de data é o erro mais comum da maioria dos sistemas muitas vezes o sistema foi todo desenvolvido para dd/mm/yyyy porém ao ser implantado se descobre que a data da base é mm/dd/yyyy. Para evitar este tipo de erro deve ser sempre requisitado do usuário. 1° qual a configuração do servidor que será usado o sistema e seu idioma. 2° qual a configuração dos clientes que usuram o sistema e idiomas. Com estas informações é possível validar para qual data devemos converter os dados ou qual data devemos desenvolver.</p>
<p><strong>Navegação</strong></p>
<p>Pode ser tanto a navegação sobre o sistema ou a navegação entre sistemas. Sendo que somente a navegação dentro do bloco validada como teste unitário. Os itens Interna ao Sistema e Entre Sistema são testes de integração.</p>
<p><strong>Local</strong></p>
<p>Navegação entre os campos ou funcionalidades ta tela. Deve sempre atender a ordem esquerda para direita de cima para baixo. Caso o usuário use outro padrão ele deve ter especificado previamente pois esta fora dos padrões de mercado. A navegação local deve também validar os valores entre campos e seus resultados. Atentar para alteração de valores em campos diferentes do usado, algumas regras pode força as alterações de campos secundários devem validar todas as interações que geram estas alterações com dados validos e inválidos.</p>
<p><strong>Interna ao sistema. Teste Integrado</strong></p>
<p>Consiste da navegação entre as telas do sistema ou suas estruturas internas. Deve seguir o padrão definido pelo usuário. Devemos atentar para alterações entre telas e todas as suas iterações (validas e invalidas). Devemos sempre listar as funcionalidades de navegação em um objeto único ex.: Apontar o objeto que controla o botão (x) o objeto do (ctrl+f4) para o mesmo objeto que controla o fechar do menu. A navegação interna deve ser sempre bem mapeada e deve ser tratada por quem libera uma funcionalidade ou um responsável por integrar ela ao sistema. Muitos sistemas travam pois suas funções ficam congestionadas entre elas por não serem tratadas com sinalização e eventos de integração como (funções de fechar, funções de novo, funções de próxima e anterior).</p>
<p><strong>Entre sistemas. Teste Integrado</strong></p>
<p>Quando temos a integração entre sistemas deve ser programada sempre a prioridade entre eles, quem tem prioridade de gravar ou apagar um dado. Deve ser validada a chamada entre eles para se evitar congestionamento Atualização de dados. Retorno e saída de dados. Formatações de entrada e saída.</p>
<p><strong>Dicas para teste unitário</strong></p>
<p>Existem seis regras básicas para testes unitários.</p>
<p>* 1º Revisão de código.<br />
* 2º Existe erro sem tratamento ou log para seu registro.<br />
* 3º Existe erro na tela do usuário .<br />
* 4º O usuário esta recebendo somente mensagens claras e sem vínculos técnicos conforme os padrões da empresa. .<br />
* 5º Todo processo lento tem apresentação de status de progresso conforme os padrões da empresa.<br />
* 6º Os padrões de formatação estão atendendo a região que o usuário especifico BR,EUA e etc.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/blogasp.wordpress.com/72/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/blogasp.wordpress.com/72/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/blogasp.wordpress.com/72/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/blogasp.wordpress.com/72/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/blogasp.wordpress.com/72/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/blogasp.wordpress.com/72/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/blogasp.wordpress.com/72/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/blogasp.wordpress.com/72/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/blogasp.wordpress.com/72/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/blogasp.wordpress.com/72/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/blogasp.wordpress.com/72/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/blogasp.wordpress.com/72/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/blogasp.wordpress.com/72/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/blogasp.wordpress.com/72/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/blogasp.wordpress.com/72/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/blogasp.wordpress.com/72/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blogasp.wordpress.com&amp;blog=327646&amp;post=72&amp;subd=blogasp&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blogasp.wordpress.com/2007/04/20/artigo-interessante-testes-de-software/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/6f88b8178e5d78f9dbec0c2ef40a956f?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">André Vieira</media:title>
		</media:content>
	</item>
	</channel>
</rss>
