Caipira Postado Novembro 18, 2009 Denunciar Share Postado Novembro 18, 2009 Boa Tarde Galera,Alguém por gentileza teria um script para validação de Inscrição estadual do Estado de Minas ?Obrigado Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .Andreia. Postado Novembro 20, 2009 Denunciar Share Postado Novembro 20, 2009 não encontrei nenhum especifico usando só sql server, mas voce pode tentar adaptando de outra linguagem de programação (usando ela ou adaptando)indicação: http://codigofonte.uol.com.br/codigo/asp/v...qualquer-estado Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Caipira Postado Novembro 23, 2009 Autor Denunciar Share Postado Novembro 23, 2009 Valeu andrea Obrigado.! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Alex.Vasc Postado Agosto 20, 2010 Denunciar Share Postado Agosto 20, 2010 (editado) Olá,Segue abaixo função SQLServer 2005 para validação do IE (Inscrição Estadual) inicialmente para o estado de São Paulo. Quando terminar os demais eu faço outro post.O retorno da função é:0 - Validação com Erro1 - Validação OKPara testar:I – Industriais e comerciantes (exceto produtores rurais a eles não equiparados):> Formato: 12 dígitos sendo que o 9º e o 12º são dígitos verificadores> Exemplo: Inscrição Estadual 110.042.490.114---II – Inscrição estadual de Produtor Rural (Não equiparado a industrial ou comerciante, cujas inscrições obedecem a Regra descrita no item anterior):> Formato: - P0MMMSSSSD000- 13 caracteres dos quais o 10º caracter contado a partir da esquerda ("D") é o dígito verificador- Inicia sempre com "P" e apresenta a sequência 0MMMSSSSD000, onde:0MMMSSSS-algarismos que serão utilizados no cálculo do dígito verificador "D""D" - Dígito verificador que consiste os 8 (oito)dígitos imediatamente anteriores000 - 3 (três) dígitos que compõem o nº de inscrição mas não utilizados no cálculo do dígito verificador> Exemplo: Inscrição Estadual P-01100424.3/002Fonte de informações:http://www.sefaz.mt.gov.br/portal/Tributar...cador/dv-SP.phphttp://forum.imasters.uol.com.br/index.php...dos-os-estados/Abraços,Alexandre.---------if exists (select * from sysobjects where id = object_id ('ST_FN_CALCULADIGIE')) drop function dbo.ST_FN_CALCULADIGIEgocreate function dbo.ST_FN_CALCULADIGIE (@vINSCRICAO varchar(16), @vESTADO char(2)) returns numeric(1)asbegin declare @nRETURN numeric(1) declare @nPOS integer declare @vIE varchar(14) declare @nVALORBASE integer declare @nDIGITO integer declare @vCHAR char(1) declare @nSOMA integer if len(@vESTADO) != 2 return 0 else set @vESTADO = upper(@vESTADO) if len(@vINSCRICAO) = 0 return 0 else set @vINSCRICAO = upper(@vINSCRICAO) set @nPOS = 1 set @vIE = '' --Retira CARACTERES inválidos da INSCRIÇÃO ESTADUAL. while @nPOS <= len(@vINSCRICAO) begin set @vCHAR = substring(@vINSCRICAO, @nPOS, 1) if charindex(@vCHAR, '0123456789P') > 0 set @vIE = @vIE + @vCHAR set @nPOS = @nPOS + 1 end if upper(@vESTADO) = 'SP' begin if substring(@vIE, 1, 1) = 'P' begin -- Exemplo: P011004243002 if len(@vIE) != 13 return 0 set @nVALORBASE = 1 set @nSOMA = 0 set @nPOS = 2 while @nPOS <= 9 begin set @vCHAR = substring(@vIE, @nPOS, 1) set @nSOMA = @nSOMA + (convert(integer, @vCHAR) * @nVALORBASE) set @nPOS = @nPOS + 1 set @nVALORBASE = @nVALORBASE + 1 if @nVALORBASE = 2 set @nVALORBASE = 3 if @nVALORBASE = 9 set @nVALORBASE = 10 end set @nDIGITO = @nSOMA % 11 if @nDIGITO > 9 set @nDIGITO = 0 if @nDIGITO != convert(integer, substring(@vIE, 10, 1)) set @nRETURN = 0 else set @nRETURN = 1 end else begin set @vIE = right(replicate('0', 12) + rtrim(ltrim(@vIE)), 12) set @nVALORBASE = 1 set @nSOMA = 0 set @nPOS = 1 while @nPOS <= 7 begin set @vCHAR = substring(@vIE, @nPOS, 1) set @nSOMA = @nSOMA + (convert(integer, @vCHAR) * @nVALORBASE) set @nPOS = @nPOS + 1 set @nVALORBASE = @nVALORBASE + 1 if @nVALORBASE = 2 set @nVALORBASE = 3 if @nVALORBASE = 9 set @nVALORBASE = 10 end set @nDIGITO = @nSOMA % 11 if @nDIGITO > 9 set @nDIGITO = 0 if @nDIGITO != convert(integer, substring(@vIE, 9, 1)) return 0 else begin set @nVALORBASE = 3 set @nSOMA = 0 set @nPOS = 1 while @nPOS <= 11 begin set @vCHAR = substring(@vIE, @nPOS, 1) set @nSOMA = @nSOMA + (convert(numeric(1), @vCHAR) * @nVALORBASE) set @nPOS = @nPOS + 1 set @nVALORBASE = @nVALORBASE - 1 if @nVALORBASE = 1 set @nVALORBASE = 10 end set @nDIGITO = @nSOMA % 11 if @nDIGITO > 9 set @nDIGITO = 0 if @nDIGITO != convert(integer, substring(@vIE, 12, 1)) set @nRETURN = 0 else set @nRETURN = 1 end end end return @nRETURNend------- Editado Agosto 20, 2010 por Alex.Vasc Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Caipira
Boa Tarde Galera,
Alguém por gentileza teria um script para validação de Inscrição estadual do Estado de Minas ?
Obrigado
Link para o comentário
Compartilhar em outros sites
3 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.