onde que vc configura essa opção de para as exceptions do delphi. ??

 
----------------------------------------------------------------------------------------
Uberdam Cavaletti
Programador Delphi
Formado em Tecnologia da Informação
Pós-graduado em desenvolvimento Java.
Professor Tópicos Especias em BD - Unoesc Xanxerê
Professor Estruturas de Dados    - Unoesc Xanxerê

http://buscatextual.cnpq.br/buscatextual/visualizacv.jsp?id=K4251629Y0
----------------------------------------------------------------------------------------





________________________________
De: Alemão <forumdel...@gmail.com>
Para: delphi-br@yahoogrupos.com.br
Enviadas: Sexta-feira, 27 de Novembro de 2009 16:21:32
Assunto: Re: [delphi-br] Validação de IE do RS

Carrego ela de modo dinamico.

Junto com a DLL do sintegra vem um programa de exemplo. Fiz igualzinho a
esse programa.

Sempre que eu executava os processos dela pelo Delphi, realmente ela gerava
algumas mensagens, mas usei ferramentas  para verificar se ficava algo
perdido na memoria e não ficava, aí coloquei a IDE do delphi pra ignorar
essas exception e acabou o problema.

Nunca tive dor de cabeça com essa DLL. Em todos os meus clientes, ela nunca
deu nenhum tipo de problema.



2009/11/27 Berdam <berdamzi...@yahoo.com.br>

>
>
> pois é, problema para o cliente essa dll não tem, porém em modo de debug no
> delphi salta umas mensagens.
>
> Mas já verifiquei que a rotina que eu utilizo tinha uma validação que não
> existe mais no RS.
>
> A sua dll gera essas mensages ??
>
> Como vc carrega sua dll, dinamicamente ou de modo fixo ???
>
> Agradeço a ajuda
>
> ----------------------------------------------------------
> Uberdam Cavaletti
> Programador Delphi
> Formado em Tecnologia da Informação
> Pós-graduado em desenvolvimento Java.
> Professor Tópicos Especias em BD - Unoesc Xanxerê
> Professor Estruturas de Dados - Unoesc Xanxerê
>
> http://buscatextual.cnpq.br/buscatextual/visualizacv.jsp?id=K4251629Y0
> ----------------------------------------------------------
>
> ________________________________
> De: Alemão <forumdel...@gmail.com <forumdelphi%40gmail.com>>
> Para: delphi-br@yahoogrupos.com.br <delphi-br%40yahoogrupos.com.br>
> Enviadas: Sexta-feira, 27 de Novembro de 2009 15:40:36
> Assunto: Re: [delphi-br] Validação de IE do RS
>
>
> Berdam,
>
> Eu uso a DLL disponibilizada no site do sintegra sem problema algum.
>
> Ela foi atualizada a um tempo atrás, pode ser que tinha algum problema e
> eles arrumaram.
>
> Alemão
>
> 2009/11/27 jalosii gmail <jalo...@gmail. com>
>
> > aqui quebrou as linhas, se precisar entre em contato
> > al...@digitalsystem .com.br que te envio a função diretamente.
> >
> > berdam escreveu:
> > > o problema daquela dll é que em debug ela solta umas msgs que
> atrapalham
> > > muito.
> > >
> > > Irei tentar ver seu código
> > >
> > > jalosii gmail escreveu:
> > >
> > >> eu usava a dll pra validar os IEs, mas depois que encontrei essa
> função
> > >> na net, arrumei o que precisava e uso ela sem problemas.
> > >>
> > >> function ConfereIE(IE, UF: String; ApenasDigitos: Boolean = True):
> > >> Boolean;
> > >> const
> > >> MASCARAS_: String = ' NNNNNNNNX- NNNNNNNNNNNXY-
> > >> NNNNNNNNNNX- NNNNNNNNNNNNNX- NNNNNNYX-' +
> > >> ' NNNNNNNNXY- NNNNNNNNNX- NNNNNNNNXNNY- NNNNNNNNXNNN-
> > >> NNNNNNNXY';
> > >> PESOS_: String =
> > >> 'GFEDCJIHGFEDCA- FEDCJIHGFEDCAA- GFEDCJIHGFEDAC- AAAAAAAAGFEDCA-
> > >> AAAAABCDEFGHIA- '
> > >> +
> > >>
> > >> 'AAAJIAAHGFEDCA- FEDCBJIHGFEDCA- IHGFEDCHGFEDCA- HGFEDCHGFEDCAA-
> > >> ABCBBCBCBCBCAA- ADCLKJIHGFEDCA- '
> > >> +
> > >>
> > >> 'AABDEFGHIKAAAA- AADCKJIHGFEDCA- AAAAAJIHGFEDCA- AAAAAIHGFEDCAA-
> > >> AAAAAJIHGFEDCA- AAAAKJIHGFEDCA- ';
> > >> PESO_: String =
> > >> 'ABAAAAABBABAAAAAAJ AAIGAHAADAEALLAF NOQ!A!!!! !CC!A!!!! !!K!!H!!!
> > >> !!!!!!M!! !!P!';
> > >> ALFA_: String = 'ABCDEFGHIJKLMNOPQR S';
> > >> ROTINAS_: String =
> > >> 'EE011EEEEEEEEEEEE2 EEEEEE0EEEDEDDEE EE0!E!!!! !EE!E!!!! !!E!!E!!!
> > >> !!!!!!D!! !!E!';
> > >> MODULOS_: String =
> > >> '999999989999999998 9999999999799999 9990900000890900 0000900900000000
> > >> 09000090' ;
> > >> INICIO_ : String =
> > >> '0020000AB000111X2X 11X11X2XXX2XXXX2 XX2114333XXXX7XC C2X8X56X89X0XXX4
> > >> XXXX9XX0' ;
> > >> MASCARA_: String = 'ABAAAAAEEABAAAACAB AAFDAEAGADAAHIAC AJG';
> > >> FATORES_: String = '000010000000100000 0001000011000000 000';
> > >> ESTADOS_: String =
> > >> 'ACACALAPAPAPAMBABA CEDFESGOGOMAMTMS MGPAPBPRPEPIRJRN RSRORORRSCSPSPSE
> > >> T0TOPERN' ;
> > >> var
> > >> c1, c2, alternativa, inicio, posicao, erros, fator, modulo, soma1,
> > >> soma2, valor, digito: Smallint;
> > >> mascara, inscricao, a1, a2, peso, rotina: String;
> > >> begin
> > >> UF := trim(uppercase( UF));
> > >> IE := trim(uppercase( IE));
> > >> result := ((IE = 'ISENTO') or (IE = 'EM ANDAMENTO') or ((UF = 'EX')
> > >> and ((IE = '') or (IE = '00000000000000' ))));
> > >> posicao := 0;
> > >> while not result and (posicao < 37) and (IE <> '') do begin
> > >> inc(posicao) ;
> > >> if (copy(ESTADOS_ , posicao * 2 - 1, 2)) <> UF then
> > >> continue;
> > >> inscricao := '';
> > >> for C1 := 1 to 30 do
> > >> if pos(copy(IE, C1, 1), '0123456789' ) <> 0 then
> > >> inscricao := inscricao + copy(IE, C1, 1);
> > >> mascara := copy(MASCARAS_ , pos(copy(MASCARA_ , posicao, 1), ALFA_) *
> > >> 15 - 14, 14);
> > >> while length(inscricao) < length(trim( mascara)) do
> > >> inscricao := '0' + inscricao;
> > >> if length(inscricao) <> length(trim( mascara)) then
> > >> continue;
> > >> inscricao := copy('0000000000000 0' + inscricao, length(inscricao) +
> > >> 1, 14);
> > >> erros := 0;
> > >> alternativa := 0;
> > >> while alternativa < 2 do begin
> > >> inc(alternativa) ;
> > >> inicio := posicao + (alternativa * 37) - 37;
> > >> peso := copy(PESO_, inicio, 1);
> > >> if peso = '!' then
> > >> continue;
> > >> a1 := copy(INICIO_ , inicio, 1);
> > >> a2 := copy(copy(inscricao , 15 - length(trim( mascara)) ,
> > >> length(trim( mascara)) ), alternativa, 1);
> > >> if not ApenasDigitos and (((pos(a1, 'ABCX') = 0) and (a1 <> a2)) or
> > >> ((pos(a1, 'ABCX') <> 0) and (pos(a2,
> > >> copy('0123458888- 6799999999- 0155555555- 0123456789' , (pos(a1,
> > >> 'ABCX') *
> > >> 11 - 10), 10)) = 0))) then
> > >> erros := 1;
> > >> soma1 := 0;
> > >> soma2 := 0;
> > >> for C2 := 1 to 14 do begin
> > >> valor := StrToInt(copy( inscricao, C2, 1)) *
> > >> (pos(copy(copy( PESOS_, (pos(peso, ALFA_) * 15 - 14), 14), C2, 1),
> > ALFA_)
> > >> - 1);
> > >> soma1 := soma1 + valor;
> > >> if valor > 9 then
> > >> valor := valor - 9;
> > >> soma2 := soma2 + valor;
> > >> end;
> > >> rotina := copy(ROTINAS_ , inicio, 1);
> > >> modulo := StrToInt(copy( MODULOS_, inicio, 1)) + 2;
> > >> fator := StrToInt(copy( FATORES_, posicao, 1));
> > >> if pos(rotina, 'A22') <> 0 then
> > >> soma1 := soma2;
> > >> if pos(rotina, 'B00') <> 0 then
> > >> soma1 := soma1 * 10;
> > >> if pos(rotina, 'C11') <> 0 then
> > >> soma1 := soma1 + (5 + 4 * fator);
> > >> if pos(rotina, 'D00') <> 0 then
> > >> digito := soma1 mod modulo;
> > >> if pos(rotina, 'E12') <> 0 then
> > >> digito := modulo - (soma1 mod modulo);
> > >> if digito = 10 then
> > >> digito := 0;
> > >> if digito = 11 then
> > >> digito := fator;
> > >> if (copy(inscricao, pos(copy('XY' , alternativa, 1), mascara), 1)
> > >> <> IntToStr(digito) ) then
> > >> erros := 1;
> > >> end;
> > >> result := erros = 0;
> > >> end;
> > >> end;
> > >>
> > >> Berdam escreveu:
> > >>
> > >>> Olá pessoal, venho solicitar ajuda principalmente do pessoal do RS.
> > >>>
> > >>> Tenho o seguinte IE 4800001926, que quando cadastro no sistema,
> > >>>
> > >> acusa que o mesmo é inválido
> > >>
> > >>> Tenho o seguinte código para validação, reparem na linha em negrito
> > >>>
> > >> ou aquela q tem o nr 467. A validação testa se os primeiros 3 números
> > >> são maior ou igual a 1 e menor igual a 467.
> > >>
> > >>> Porém o início do meu IE é 480, dai ele não entra no if.
> > >>>
> > >>> Verifiquei no próprios site do sefaz que existe mesmo essa
> > >>>
> > >> validação, será que meu código está desatualizado ??
> > >>
> > >>> Gostaria da ajuda de vcs para resolver isso
> > >>>
> > >>> function ChkIERS(const ie: string): Boolean; // 999.999999-9
> > >>> var
> > >>> b, i, soma: Integer;
> > >>> nro: array[1..10] of byte;
> > >>> dig: SmallInt;
> > >>> begin
> > >>> Result :=false;
> > >>> if (length(ie) <> 10) then
> > >>> exit;
> > >>> if not IsNumero(ie) then
> > >>> exit;
> > >>> i :=StrToInt(copy( ie, 1, 3));
> > >>> if (i >= 1) and (i <= 467) then //i = 480,
> > >>> begin
> > >>> for i :=1 to 10 do
> > >>> nro[i] :=CharToInt( ie[i]);
> > >>> b :=2;
> > >>> soma :=0;
> > >>> for i :=1 to 09 do
> > >>> begin
> > >>> inc(soma, nro[i] * b);
> > >>> dec(b);
> > >>> if b = 1 then
> > >>> b :=9;
> > >>> end;
> > >>> dig :=11 - (soma mod 11);
> > >>> if (dig >= 10) then
> > >>> dig :=0;
> > >>> Result :=(dig = nro[10]);
> > >>> end;
> > >>> end;
> > >>>
> > >>>
> > >>>
> > >>> ____________ _________ _________ _________ _________ _________ _
> > >>> Veja quais são os assuntos do momento no Yahoo! +Buscados
> > >>> http://br.maisbusca dos.yahoo. com <http://br.maisbusca dos.yahoo.
> com>
>
> > >>>
> > >>> [As partes desta mensagem que não continham texto foram removidas]
> > >>>
> > >>>
> > >>>
> > >>> ------------ --------- --------- ------
> > >>>
> > >>>
> > >>>
> > >>
> > >
> > >
> > >
> > > ------------ --------- --------- ------
> > >
> > >
> >
> >
> >
> > ------------ --------- --------- ------
> >
> > --
> > <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>
> >
> >
> >
> >
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> __________________________________________________________
>
> Veja quais são os assuntos do momento no Yahoo! +Buscados
> http://br.maisbuscados.yahoo.com
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]



------------------------------------

-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>



      
____________________________________________________________________________________
Veja quais são os assuntos do momento no Yahoo! +Buscados
http://br.maisbuscados.yahoo.com

[As partes desta mensagem que não continham texto foram removidas]

Responder a