<?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>Marco Molina &#187; CNPJ</title>
	<atom:link href="http://webcorp.wordpress.com/tag/cnpj/feed/" rel="self" type="application/rss+xml" />
	<link>http://webcorp.wordpress.com</link>
	<description>Flash Developer</description>
	<lastBuildDate>Wed, 02 Apr 2008 02:41:44 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>pt-br</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<cloud domain='webcorp.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/a740ec8314cc84764685f83e671fe087?s=96&#038;d=http://s.wordpress.com/i/buttonw-com.png</url>
		<title>Marco Molina &#187; CNPJ</title>
		<link>http://webcorp.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://webcorp.wordpress.com/osd.xml" title="Marco Molina" />
		<item>
		<title>Validação de CNPJ em Flash AS2</title>
		<link>http://webcorp.wordpress.com/2008/02/14/validacao-de-cnpj-em-flash-as2/</link>
		<comments>http://webcorp.wordpress.com/2008/02/14/validacao-de-cnpj-em-flash-as2/#comments</comments>
		<pubDate>Fri, 15 Feb 2008 00:51:38 +0000</pubDate>
		<dc:creator>Marco Molina</dc:creator>
				<category><![CDATA[Actionscript 2 AS2]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[AS2]]></category>
		<category><![CDATA[CNPJ]]></category>
		<category><![CDATA[validação]]></category>

		<guid isPermaLink="false">http://webcorp.wordpress.com/?p=5</guid>
		<description><![CDATA[Dando continuidade a série de validação, agora é a vez de validarmos o Cadastro Nacional da Pessoa Jurídica &#8211; CNPJ.
O script segue a mesma lógica do post anterior de validação CPF, usando operadores aritméticos, lógicos, de comparação, &#8230; para fazer o cálculo.

O CNPJ é composto por quatorze algarismos, divididos em três blocos: 12.345.678/0001-95
- o primeiro [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=webcorp.wordpress.com&blog=2872436&post=5&subd=webcorp&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Dando continuidade a série de validação, agora é a vez de validarmos o Cadastro Nacional da Pessoa Jurídica &#8211; CNPJ.<br />
O script segue a mesma lógica do <a href="http://webcorp.wordpress.com/2008/02/14/validacao-de-cpf-em-flash/" title="post anterior de validação de CPF">post anterior de validação CPF</a>, usando operadores aritméticos, lógicos, de comparação, &#8230; para fazer o cálculo.<br />
<span id="more-5"></span><br />
O CNPJ é composto por quatorze algarismos, divididos em três blocos: 12.345.678/0001-95</p>
<p>- o primeiro bloco representa o número da inscrição propriamente dito;<br />
- o segundo, localizado após a barra, representa um código único para a matrix ou filial;<br />
- o terceiro, representados pelos dois últimos valores chamados de dígitos verificadores (DV) e são calculados a partir dos algarismos dos dois primeiros blocos conforme determinado pelo Ministério da Fazenda.</p>
<p>O cálculo é feito em duas etapas utilizando o módulo de divisão por 11.</p>
<p>Vamos ao código, mas dessa vez vamos incorporar algumas condições para orientar o usuário.</p>
<p>Crie um <em>campo texto Input</em> e instancie como <strong>cnpj_txt</strong>.</p>
<p>Crie também um <em>campo texto Dynamic</em> e instancie como <strong>retorno_txt</strong>.</p>
<p>Crie um <em>movieclip</em> para servir como botão e instancie como <strong>enviar_btn</strong>.</p>
<p>Agora vamos colocar a ação na timeline.</p>
<p><code>// Iniciamos o script já com o cursor no campo<br />
Selection.setFocus ("cnpj_txt");<br />
//e restringindo a digitação a apenas números<br />
cnpj_txt.restrict = "0-9";</code><br />
<code>envia_btn.onRelease = function() {<br />
validaCNPJ();<br />
};</code><br />
<code>//a função de validação do CNPJ<br />
function validaCNPJ() {<br />
CNPJ = new String();<br />
CNPJ = cnpj_txt.text;<br />
// Primeiro verificamos se o CNPJ foi preenchido<br />
if (CNPJ.length == 0) {<br />
retono_txt.text = "Por favor, digite o CNPJ!";<br />
// ou se satifaz a condição de tamanho de ter no máximo 14 algarismos<br />
} else if (CNPJ.length&gt;0 &amp;&amp; CNPJ.length&gt;14) {<br />
retono_txt.text = "É necessarios preencher corretamente o CNPJ!";<br />
// se as condições acima foram cumpridas<br />
} else {<br />
var a:Array = new Array;<br />
var b:Number = new Number();<br />
var c:Array = new Array (6, 5, 4, 3, 2, 9, 8, 7, 6, 5, 4, 3, 2);<br />
for (i=0; i&lt;12; i++) {<br />
a[i] = CNPJ.charAt(i);<br />
b += a[i]*c[i+1];<br />
}<br />
if ((x=b%11)&lt;2) {<br />
a[12] = 0;<br />
} else {<br />
a[12] = 11-x;<br />
}<br />
b = 0;<br />
for (y=0; y&lt;13; y++) {<br />
b += (a[y]*c[y]);<br />
}<br />
if ((x=b%11)&lt;2) {<br />
a[13] = 0;<br />
} else {<br />
a[13] = 11-x;<br />
}<br />
if ((CNPJ.charAt(12) != a[12]) || (CNPJ.charAt(13) != a[13])) {<br />
retono_txt.text = "Dígito verificador com problema! CNPJ inválido";<br />
trace ( "O primeiro dígito deveria ser "+a[12]+"\n"+"E o segundo "+a[13]);<br />
} else {<br />
retono_txt.text = "CNPJ válido";<br />
// coloque aqui suas outras ações<br />
}<br />
}<br />
}</code><br />
É isso.<br />
No próximo post vamos ver como funciona a validação da Inscrição Estadual que possui um cálculo diferente por estado.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/webcorp.wordpress.com/5/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/webcorp.wordpress.com/5/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/webcorp.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/webcorp.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/webcorp.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/webcorp.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/webcorp.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/webcorp.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/webcorp.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/webcorp.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/webcorp.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/webcorp.wordpress.com/5/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=webcorp.wordpress.com&blog=2872436&post=5&subd=webcorp&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://webcorp.wordpress.com/2008/02/14/validacao-de-cnpj-em-flash-as2/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/625b61ee22f35649b6a0d7792292efe2?s=96&#38;d=identicon" medium="image">
			<media:title type="html">webcorp</media:title>
		</media:content>
	</item>
	</channel>
</rss>