Re: [delphi-br] Validação de IE do RS
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 = ' X- NNNXY- NNX- NX- NNYX-' + ' XY- NX- XNNY- XNNN- NNNXY'; PESOS_: String = 'GFEDCJIHGFEDCA- FEDCJIHGFEDCAA- GFEDCJIHGFEDAC- GFEDCA- ABCDEFGHIA- ' + 'AAAJIAAHGFEDCA- FEDCBJIHGFEDCA- IHGFEDCHGFEDCA- HGFEDCHGFEDCAA- ABCBBCBCBCBCAA- ADCLKJIHGFEDCA- ' + 'AABDEFGHIK- AADCKJIHGFEDCA- AJIHGFEDCA- AIHGFEDCAA- AJIHGFEDCA- KJIHGFEDCA- '; PESO_: String = 'ABABBABAAJ AAIGAHAADAEALLAF NOQ!A !CC!A !!K!!H!!! !!M!! !!P!'; ALFA_: String = 'ABCDEFGHIJKLMNOPQR S'; ROTINAS_: String = 'EE0112 EE0EEEDEDDEE EE0!E !EE!E !!E!!E!!! !!D!! !!E!'; MODULOS_: String = '999898 9979 999090890900 9009 0990' ; INICIO_ : String = '002AB000111X2X 11X11X2XXX22 XX21143337XC C2X8X56X89X0XXX4 9XX0' ; MASCARA_: String = 'ABAEEABCAB AAFDAEAGADAAHIAC AJG'; FATORES_: String = '100010 00011100 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 = '00' ; 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('0 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('012345- 67- 01- 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 481926, 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.99-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
Re: [delphi-br] Problemas com arredondamento
Pessoal, muito obrigado a todos por toda ajuda. João Carlos 2009/11/26 Valfrid-Ly Silva Couto valfrid...@yahoo.com.br Tico, É muito mais simples!! Faça a divisão do valor normalmente pelo número de parcelas, some-as e acrescente/diminua a diferença na última parcela! Ex: 1000 / 3 = 3x 333,3,33 x 3 = 999,991000 - 999,99 = 0,01somando-se esse 0,01 na última parcela, teria-se 2x333,33 + 1x333,34 Esse raciocínio serve para qualquer quantidade de parcelas! Valfrid --- Em qua, 25/11/09, Tico doutort...@gmail.com doutortico%40gmail.com escreveu: De: Tico doutort...@gmail.com doutortico%40gmail.com Assunto: [delphi-br] Problemas com arredondamento Para: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br Data: Quarta-feira, 25 de Novembro de 2009, 16:45 Boa tarde senhores, Estou tendo um problema com arredondamento no meu sistema. É o seguinte: Se o valor da minha nota é de R$ 1477,00, e preciso dividir em 3 parcelas eu antes deixava simplesmente 3 parcelas de R$ 492,33. O problema é que agora, com a NF-e, os clientes estão exigindo que a soma das parcelas sejam exatamente o valor da nota (o que é lógico), já que na forma antiga totalizava R$ 1476,99. Montei uma rotina que, durante um loop na minha tabela temporária de duplicatas faço o seguinte: // Somente a primeira parcela leva o valor do ICMS-ST // A primeira parcela é arredondada e divide-se o restante nas demais nParcela := ((nValTotNota - nTotValICMSST) / iQtdParc) + nTotValICMSST; if (DM.TabFaturas.RecordCount 1) then begin if (DM.TabFaturas.Bof) then begin nDiferenca := Round(nParcela); nDupl1 := nDiferenca; end else nDupl1 := (nValTotNota - nDiferenca) / (iQtdParc - 1); end else nDupl1 := (nValTotNota - nTotValICMSST - nDiferenca) / (iQtdParc) + nTotValICMSST; Neste caso, a nota de R$ 1477,00 ficaria 1 parcela de R$ 492,00 e 2 parcelas de R$ 492,50. Mas me apareceu um outro caso onde o valor da nota é R$ 5670,00 e preciso dividir em 4x. Fica 1 parcela de R$ 1418,00 e as outras 3 de R$ 1417,33 o que me leva novamente ao primeiro caso. Alguém já teve algum problema parecido? Obigado pessoal. [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] [As partes desta mensagem que não continham texto foram removidas] -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM * Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages * Para falar com o moderador, envie um e-mail para: delphi-br-ow...@yahoogrupos.com.br Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ * Para sair deste grupo, envie um e-mail para: delphi-br-unsubscr...@yahoogrupos.com.br * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
Re: [delphi-br] [OFF Topic] Curso para forma ção ESPECIALISTA EM SOFTWARE
Desculpe talvez você esteja procurando pelo curso de pós graduação em Engenharia de Software seria esse o caso ? Marcelo Fortes. --- Em qui, 26/11/09, Jorge Ericsson jericsson...@gmail.com escreveu: De: Jorge Ericsson jericsson...@gmail.com Assunto: [delphi-br] [OFF Topic] Curso para formação ESPECIALISTA EM SOFTWARE Para: Data: Quinta-feira, 26 de Novembro de 2009, 23:08 Olá amigos, Gostaria de saber aonde posso encontrar um curso para formação em Especialista em Softwares. Tenho interesse de fazer Graduação ou Pós caso. Obrigado. Jorge Ericsson Brasília - DF [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]
[delphi-br] Re: [NDDV] [OFF Topic] Curso para formação ESPECIALISTA EM SOFTWARE
Voce quer é algo no segmento de Engenharia de Software certo? O que seria especificamente? Faculdade, pós graduação ou apenas curso técnico? []s Walter Alves Chagas Junior Belo Horizonte - MG - Brazil wchag...@bol.com.br http://delphitocorporerm.blogspot.com/ http://twitter.com/wchagas MSN: whitesock...@hotmail.com SKYPE: WalterChagasJr - Original Message - From: Jorge Ericsson To: undisclosed-recipients: Sent: Thursday, November 26, 2009 10:08 PM Subject: [NDDV] [OFF Topic] Curso para formação ESPECIALISTA EM SOFTWARE Olá amigos, Gostaria de saber aonde posso encontrar um curso para formação em Especialista em Softwares. Tenho interesse de fazer Graduação ou Pós caso. Obrigado. Jorge Ericsson Brasília - DF [As partes desta mensagem que não continham texto foram removidas]
RE: [delphi-br] Re: [NDDV] [OFF Topic] Cur so para formação ESPECIALISTA EM SOFTWARE
www.noginfo.com.br From: delphi-br@yahoogrupos.com.br [mailto:delphi...@yahoogrupos.com.br] On Behalf Of Walter Chagas (Bol) Sent: sexta-feira, 27 de novembro de 2009 09:47 To: n...@yahoogrupos.com.br; Grupo Delphi-BR Subject: [delphi-br] Re: [NDDV] [OFF Topic] Curso para formação ESPECIALISTA EM SOFTWARE Voce quer é algo no segmento de Engenharia de Software certo? O que seria especificamente? Faculdade, pós graduação ou apenas curso técnico? []s Walter Alves Chagas Junior Belo Horizonte - MG - Brazil wchag...@bol.com.br mailto:wchagasj%40bol.com.br http://delphitocorporerm.blogspot.com/ http://twitter.com/wchagas MSN: whitesock...@hotmail.com mailto:whitesockets%40hotmail.com SKYPE: WalterChagasJr - Original Message - From: Jorge Ericsson To: undisclosed-recipients: Sent: Thursday, November 26, 2009 10:08 PM Subject: [NDDV] [OFF Topic] Curso para formação ESPECIALISTA EM SOFTWARE Olá amigos, Gostaria de saber aonde posso encontrar um curso para formação em Especialista em Softwares. Tenho interesse de fazer Graduação ou Pós caso. Obrigado. Jorge Ericsson Brasília - DF [As partes desta mensagem que não continham texto foram removidas] Click here https://www.mailcontroller.altohiway.com/sr/oZ733CC0o67TndxI!oX7UnlPSUZHzmrIAL4mYEyP7!IsMkDHiy6!V9L2QN!oc3+xSw9fV5QVhWCVy4oAFznL6w== to report this email as spam. This message has been scanned for viruses by MailController http://www.MailController.altohiway.com/ . [As partes desta mensagem que não continham texto foram removidas]
[delphi-br] Program or unit XXXXX recursively uses itself , como solucionar?
Amigos, como soluciono este problema? Achei na net, vários textos, pra apagar DCU, RES, e etc.. fiz tudo e continua dando este erro em um componente que eu estou criando.. O problema que a tal unit XXX, não é usada em local nenhum, só mesmo neste pacote... Att. -- _ T.·.F.·.A.·. Fellipe Henrique --- CAMPANHA POR UMA INTERNET SEGURA Proteja o endereço de seus amigos como estou protegendo o seu. Ao enviar mensagens use SEMPRE o Cco (cópia oculta). Assim TODOS os endereços estarão preservados. E, claro, antes de encaminhar um e-mail, delete todas as informações que apareçam no corpo do e-mail e que possam ser usadas por hackers. ### [As partes desta mensagem que não continham texto foram removidas]
[delphi-br] Modularização de aplicações utilizando bpl
Pessoal, estou fazendo a modularização de aplicativos do meu sistema e me deparei com um problema. Tenho dois modulos que eu criei duas bpl´s uma para cada modulo. O primiero modulo possui uma unit que é usada no segundo modulo e o segundo modulo possui uma unit que é usada no primeiro modulo, assim quando compilo as package não dá erro, mas quando vou carregar a a segunda bpl, ele fala que a unit já existe na primeira bpl carregada. Alguém pode me ajudar? Muto obrigado.
[delphi-br] Dúvida com SQL
Olá pessoal, Estou desenvolvendo um aplicatico para Emitir Conhecimento de Frete. Tenho a Tabela Cliente e a Tabela cabeçalho do Conhecimento que se relacionam. Dúvida: No Cabeçalho do Conhecimento tenho os campos: Remetente Destinatário Pagador Pergunta: Esses três campos PODE ser todos pegos da tabela CLIENTE ou eu tenho que criar uma tabela para cada um deles? Qual impacato eu teria se pegasse os três tabela CLIENTE? É só isso pessoal []'s DarkZad __ Faça ligações para outros computadores com o novo Yahoo! Messenger http://br.beta.messenger.yahoo.com/
Re: [delphi-br] Modularização de aplicaçõe s utilizando bpl
Tente isso... Coloque a unit que está dando erro na sessão de implementation e não na interface, desde que não utilize na unit para implemetação. From: mateus Sent: Friday, November 27, 2009 11:28 AM To: delphi-br@yahoogrupos.com.br Subject: [delphi-br] Modularização de aplicações utilizando bpl Pessoal, estou fazendo a modularização de aplicativos do meu sistema e me deparei com um problema. Tenho dois modulos que eu criei duas bpl´s uma para cada modulo. O primiero modulo possui uma unit que é usada no segundo modulo e o segundo modulo possui uma unit que é usada no primeiro modulo, assim quando compilo as package não dá erro, mas quando vou carregar a a segunda bpl, ele fala que a unit já existe na primeira bpl carregada. Alguém pode me ajudar? Muto obrigado. [As partes desta mensagem que não continham texto foram removidas]
[delphi-br] Dúvida - Para o Bruno Lichot
Caro Bruno, O Delphi 2010 continua com o limite de instalações ? No Delphi PHP o limite era de 5 instalações, caso quisesse fazer uma sexta instalação tinha que entrar no site da Codegear/Embarcadero para solicitar o aumento de número de instalações. []´s João Carlos
RE: [delphi-br] Dúvida - Para o Bruno Lichot
Todos os produtos licenciados tem limite de instalações, mas não é um limite que se consuma nem em um ano, pensando que vc formataria sua maquina umas 5 vezes por ano. Chegando no limite vc pode fazer um bump através do próprio site para usuários registrados ou solicitar o bump através do suporte. Agora se vc instalar um licença varias vezes para usuários diferentes, alem de ser caracterizado pirataria devido ao fato de mais de um usuário utilizar um única licença, o seu numero de instalações também será consumido mais rápido. Abs BL From: delphi-br@yahoogrupos.com.br [mailto:delphi...@yahoogrupos.com.br] On Behalf Of João Carlos Sent: sexta-feira, 27 de novembro de 2009 10:11 To: delphi-br@yahoogrupos.com.br Subject: [delphi-br] Dúvida - Para o Bruno Lichot Caro Bruno, O Delphi 2010 continua com o limite de instalações ? No Delphi PHP o limite era de 5 instalações, caso quisesse fazer uma sexta instalação tinha que entrar no site da Codegear/Embarcadero para solicitar o aumento de número de instalações. []´s João Carlos Click here https://www.mailcontroller.altohiway.com/sr/OgRme9Pb!FDTndxI!oX7UnF1h4o+NsfXwzTO!je67PlrFGVO+EtKGYfgbI20tEGaSw9fV5QVhWApdY6WjzZSeg== to report this email as spam. This message has been scanned for viruses by MailController http://www.MailController.altohiway.com/ . [As partes desta mensagem que não continham texto foram removidas]
Res: [delphi-br] Modularização de aplicações utilizando bpl
Boa tarde; Fábio, você pode ter um terceiro pacote com estas duas units que serão compartilhadas com o modulo principal de cada um dos dois pacotes. Ex. DataModule, Clientes, PosVendas; DataModule fica em um pacote. Cliente em outro e tem o pacote do DataModule como requerido. PosVendas em outro pacote e tambem tem o pacote do DataModule como requerido. Trabalhei muito com bpls algum tempo atraz, com criação dinamica de menus e relatorios utilzando este principio. Se existe alguma coisa que vai ser utilizada por mais de um modulo mete em um pacote especifico pra isto, lembrando que pra trabalhar com pacotes as coisas devem seguir uma hierarquia, como neste exemplo o DataModule seria o topo da piramide. Atenc; Elazar Dornelles Ceza De: Fábio Henrique Beltrame fhbeltr...@yahoo.com.br Para: delphi-br@yahoogrupos.com.br Enviadas: Sexta-feira, 27 de Novembro de 2009 11:37:40 Assunto: Re: [delphi-br] Modularização de aplicações utilizando bpl Tente isso... Coloque a unit que está dando erro na sessão de implementation e não na interface, desde que não utilize na unit para implemetação. From: mateus Sent: Friday, November 27, 2009 11:28 AM To: delphi...@yahoogrup os.com.br Subject: [delphi-br] Modularização de aplicações utilizando bpl Pessoal, estou fazendo a modularização de aplicativos do meu sistema e me deparei com um problema. Tenho dois modulos que eu criei duas bpl´s uma para cada modulo. O primiero modulo possui uma unit que é usada no segundo modulo e o segundo modulo possui uma unit que é usada no primeiro modulo, assim quando compilo as package não dá erro, mas quando vou carregar a a segunda bpl, ele fala que a unit já existe na primeira bpl carregada. Alguém pode me ajudar? Muto obrigado. [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]
[delphi-br] Gerenciador Padrão TEF
Pessoal onde posso fazer o download do Gerenciador Padrão do TEF para Windows Vista 64bits. Tenho vários mas da erro na instalação dizendo que ñão e possivel instalar por ser um PC de 64bits. Valeu
Re: [delphi-br] Gravar informações dentro do execu tável / DLL
A minha máquina possui o antivirus avast. Nos varios testes que fiz ele não reclamou de nada. Mas é uma boa observação. Vou fazer testes com aquele norton internet security que tenho em outra maquina. Para o CRM Desenvolvimentos: Eu passei as duas rotinas num e-mail anterior. Se não tiver conseguido pegar me avise mando de novo. valeu. 2009/11/27 EmbarcaDelphi embarcadel...@yahoo.com.br Só uma observação aí... Já testou num computador com antivírus??? Pode ser que ele não autorize pensando ser um trojan... Alguém já testou? Alemão escreveu: Claro, vamos lá: para gravar as informações no arquivo que eu quero, estou usando um outro programa. Não da pro executavel gravar as informações nele mesmo, ja que está em uso. Portanto o meu programa de instalação é que está gravando. Segue o processo pra gravação: function GravarResourceInfo(const FileName, NomeRecurso, Texto: string): boolean; var hRes : THandle; cHD : String; Begin cHD := AnsiUpperCase(Texto); hRes := BeginUpdateResource(pchar(FileName),False); if hRes 0 then begin result := true; UpdateResource(hRes,RT_RCDATA,pchar(AnsiUpperCase(NomeRecurso)), 0 , Pointer(cHD), StrLen(PCHAR(cHD)) + 1); If EndUpdateResource(hRes,False) then Result := true else Result := false; end else result := false; end; onde: FileName é o nome do arquivo que será atualizado. NomeRecurso é o nome que você irá dar para o recurso armazenado, para poder ler a partir do aplicativo. Texto é o conteúdo que você quer gravar. Pode ser qualquer informação. Agora dentro do meu executavel de programa, vou ler o conteúdo gravado no resource. Esta é a função: function LerResourceInfo(NomeRecurso: string): string; var ResData: HGLOBAL; ResInfo: HRSRC; Begin Result := ''; ResInfo := FindResource(hInstance, pchar(AnsiUpperCase(NomeRecurso)), RT_RCDATA); if ResInfo 0 then begin ResData := LoadResource(hInstance, ResInfo); if ResData 0 then begin try Result := PChar(LockResource(ResData)); UnlockResource(ResData); finally FreeResource(ResData); end; end; end; end; Funcionou muito bem. O legal é que a partir daí vc pode inclusive criptografar o texto, para que ninguem consiga ver o seu conteúdo com um editor de recursos (Ex: Resource Explorer). ps.: para testar se deu certo mesmo, é so abrir o seu programa alterado neste editor de recursos e ir em RCData, que la vai estar o que vc acabou de criar. 2009/11/26 José Henrique (Zote) z...@bludata.com.brzote%40bludata.com.br [As partes desta mensagem que não continham texto foram removidas] -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM * Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages * Para falar com o moderador, envie um e-mail para: delphi-br-ow...@yahoogrupos.com.br Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ * Para sair deste grupo, envie um e-mail para: delphi-br-unsubscr...@yahoogrupos.com.br * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
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 = ' X- NNNXY- NNX- NX- NNYX-' + ' XY- NX- XNNY- XNNN- NNNXY'; PESOS_: String = 'GFEDCJIHGFEDCA- FEDCJIHGFEDCAA- GFEDCJIHGFEDAC- GFEDCA- ABCDEFGHIA- ' + 'AAAJIAAHGFEDCA- FEDCBJIHGFEDCA- IHGFEDCHGFEDCA- HGFEDCHGFEDCAA- ABCBBCBCBCBCAA- ADCLKJIHGFEDCA- ' + 'AABDEFGHIK- AADCKJIHGFEDCA- AJIHGFEDCA- AIHGFEDCAA- AJIHGFEDCA- KJIHGFEDCA- '; PESO_: String = 'ABABBABAAJ AAIGAHAADAEALLAF NOQ!A !CC!A !!K!!H!!! !!M!! !!P!'; ALFA_: String = 'ABCDEFGHIJKLMNOPQR S'; ROTINAS_: String = 'EE0112 EE0EEEDEDDEE EE0!E !EE!E !!E!!E!!! !!D!! !!E!'; MODULOS_: String = '999898 9979 999090890900 9009 0990' ; INICIO_ : String = '002AB000111X2X 11X11X2XXX22 XX21143337XC C2X8X56X89X0XXX4 9XX0' ; MASCARA_: String = 'ABAEEABCAB AAFDAEAGADAAHIAC AJG'; FATORES_: String = '100010 00011100 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 = '00' ; 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('0 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('012345- 67- 01- 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 481926, 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 ??
Res: [delphi-br] Validação de IE do RS
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 Para: delphi-br@yahoogrupos.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 = ' X- NNNXY- NNX- NX- NNYX-' + ' XY- NX- XNNY- XNNN- NNNXY'; PESOS_: String = 'GFEDCJIHGFEDCA- FEDCJIHGFEDCAA- GFEDCJIHGFEDAC- GFEDCA- ABCDEFGHIA- ' + 'AAAJIAAHGFEDCA- FEDCBJIHGFEDCA- IHGFEDCHGFEDCA- HGFEDCHGFEDCAA- ABCBBCBCBCBCAA- ADCLKJIHGFEDCA- ' + 'AABDEFGHIK- AADCKJIHGFEDCA- AJIHGFEDCA- AIHGFEDCAA- AJIHGFEDCA- KJIHGFEDCA- '; PESO_: String = 'ABABBABAAJ AAIGAHAADAEALLAF NOQ!A !CC!A !!K!!H!!! !!M!! !!P!'; ALFA_: String = 'ABCDEFGHIJKLMNOPQR S'; ROTINAS_: String = 'EE0112 EE0EEEDEDDEE EE0!E !EE!E !!E!!E!!! !!D!! !!E!'; MODULOS_: String = '999898 9979 999090890900 9009 0990' ; INICIO_ : String = '002AB000111X2X 11X11X2XXX22 XX21143337XC C2X8X56X89X0XXX4 9XX0' ; MASCARA_: String = 'ABAEEABCAB AAFDAEAGADAAHIAC AJG'; FATORES_: String = '100010 00011100 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 = '00' ; 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('0 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('012345- 67- 01- 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,
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 = ' X- NNNXY- NNX- NX- NNYX-' + ' XY- NX- XNNY- XNNN- NNNXY'; PESOS_: String = 'GFEDCJIHGFEDCA- FEDCJIHGFEDCAA- GFEDCJIHGFEDAC- GFEDCA- ABCDEFGHIA- ' + 'AAAJIAAHGFEDCA- FEDCBJIHGFEDCA- IHGFEDCHGFEDCA- HGFEDCHGFEDCAA- ABCBBCBCBCBCAA- ADCLKJIHGFEDCA- ' + 'AABDEFGHIK- AADCKJIHGFEDCA- AJIHGFEDCA- AIHGFEDCAA- AJIHGFEDCA- KJIHGFEDCA- '; PESO_: String = 'ABABBABAAJ AAIGAHAADAEALLAF NOQ!A !CC!A !!K!!H!!! !!M!! !!P!'; ALFA_: String = 'ABCDEFGHIJKLMNOPQR S'; ROTINAS_: String = 'EE0112 EE0EEEDEDDEE EE0!E !EE!E !!E!!E!!! !!D!! !!E!'; MODULOS_: String = '999898 9979 999090890900 9009 0990' ; INICIO_ : String = '002AB000111X2X 11X11X2XXX22 XX21143337XC C2X8X56X89X0XXX4 9XX0' ; MASCARA_: String = 'ABAEEABCAB AAFDAEAGADAAHIAC AJG'; FATORES_: String = '100010 00011100 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 = '00' ; 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('0 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('012345- 67- 01-
Res: [delphi-br] Validação de IE do RS
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 = ' X- NNNXY- NNX- NX- NNYX-' + ' XY- NX- XNNY- XNNN- NNNXY'; PESOS_: String = 'GFEDCJIHGFEDCA- FEDCJIHGFEDCAA- GFEDCJIHGFEDAC- GFEDCA- ABCDEFGHIA- ' + 'AAAJIAAHGFEDCA- FEDCBJIHGFEDCA- IHGFEDCHGFEDCA- HGFEDCHGFEDCAA- ABCBBCBCBCBCAA- ADCLKJIHGFEDCA- ' + 'AABDEFGHIK- AADCKJIHGFEDCA- AJIHGFEDCA- AIHGFEDCAA- AJIHGFEDCA- KJIHGFEDCA- '; PESO_: String = 'ABABBABAAJ AAIGAHAADAEALLAF NOQ!A !CC!A !!K!!H!!! !!M!! !!P!'; ALFA_: String = 'ABCDEFGHIJKLMNOPQR S'; ROTINAS_: String = 'EE0112 EE0EEEDEDDEE EE0!E !EE!E !!E!!E!!! !!D!! !!E!'; MODULOS_: String = '999898 9979 999090890900 9009 0990' ; INICIO_ : String = '002AB000111X2X 11X11X2XXX22 XX21143337XC C2X8X56X89X0XXX4 9XX0' ; MASCARA_: String = 'ABAEEABCAB AAFDAEAGADAAHIAC AJG'; FATORES_: String = '100010 00011100 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 = '00' ; 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);
[delphi-br] Delphi terá em 2010 versões para Linux e Mac OS
Delphi terá em 2010 versões para Linux e Mac OS Ferramenta de desenvolvimento para os dois ambientes deve chegar ao mercado no meio do próximo ano Por EDILEUZA SOARES, DO IDG NOW! 26 de novembro de 2009 - 13h15 · O programa Delphi, ferramenta para desenvolvimento de aplicações, principalmente para PCs, ganhará no próximo ano versões para Linux e Mac OS. A informação é do vice-presidente para relacionamento com desenvolvedores da Embarcadero e evangelista da tecnologia, David Intersimone. Ele esteve esta semana no Brasil reunido com cerca de 600 desenvolvedores. Intersimone, mas conhecido por David I, e que tem um http://blogs.computerworld.com/intersimone blog no site Computerworld americana, veio ao Brasil para apresentar à comunidade que trabalha com a ferramenta de desenvolvimento as inovações incorporadas ao Delphi 2010, versão que chegou recentemente ao mercado. O programa concorre com plataformas como .Net da Microsoft, Visual Studio e Java passou para as mãos da norte-americana Embarcadeiro no meio do ano passado. Na época, a companhia comprou a divisão CodeGear da Borland, unidade responsável por ferramentas multiplataforma para bancos de dados. Entre os quais estavam o Delphi. A Embarcadero ainda não está presente no Brasil e o atendimento aos usuários de Delphi no país continua sendo realizado pelo time da antiga Borland, comprada no ano passado pela Micro Focus. David I diz que o Brasil tem uma comunidade atuante de Delphi e acredita que o suporte da tecnologia a outros ambientes deverá dar mais flexibilidade aos que utilizam a ferramenta para desenvolver aplicações. Até então, o programa falava somente Windows. Ele estima que a versão do produto compatível com o sistema operacional de código aberto Linux e o Mac Os da Apple deverá chegar ao mercado no meio do próximo ano. Inovações do Delphi 2010 Ao comentar sobre as novidades do Delphi 2010, o especialista destacou, que além do produto já está preparado para Windows 7, vem com interfaces baseadas no recurso touch. Essa funcionalidade vai permitir aos desenvolvedores criarem mais rapidamente aplicações interativas para serem acessadas com toque na tela para rodar em celulares, PCs, terminais bancários e em outros tipos de hardware. David I afirma que uma das vantagens do recurso touch para os desenvolvedores e que eles vão poder levar essa funcionalidade também para as aplicações já existentes. · http://computerworld.uol.com.br/tecnologia/2009/11/26/delphi-tera-em-2010-ve rsoes-para-linux-e-mac-os/ []'s Luciano Topolniak Analista de Sistemas www.aquinoacre.com.br Professor Universitário www.uninorteac.com.br [As partes desta mensagem que não continham texto foram removidas]
Res: Res: [delphi-br] Validação de IE do RS
Complementando o assunto... O Componente ACBrValidador do Projeto ACBr, é capaz de validar (e formatar) todas as Insc.Estaduais do Brasil, além de CPF, CNPJ, PIS, cartão de crédito, cheques, CEP... []s Daniel Conheça o Projeto ACBr - Automaçao Comercial Brasil Equipamentos para automação ? DJSystem - a Loja Patrocinadora do ACBr De: Berdam berdamzi...@yahoo.com.br Para: delphi-br@yahoogrupos.com.br Enviadas: Sexta-feira, 27 de Novembro de 2009 15:48:19 Assunto: Res: [delphi-br] Validação de IE do RS 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=K4251629Y 0 - - - - - - _ _ __ De: Alemão forumdelphi@ gmail.com Para: delphi...@yahoogrup os.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 = ' X- NNNXY- NNX- NX- NNYX-' + ' XY- NX- XNNY- XNNN- NNNXY'; PESOS_: String = 'GFEDCJIHGFEDCA- FEDCJIHGFEDCAA- GFEDCJIHGFEDAC- GFEDCA- ABCDEFGHIA- ' + 'AAAJIAAHGFEDCA- FEDCBJIHGFEDCA- IHGFEDCHGFEDCA- HGFEDCHGFEDCAA- ABCBBCBCBCBCAA- ADCLKJIHGFEDCA- ' + 'AABDEFGHIK- AADCKJIHGFEDCA- AJIHGFEDCA- AIHGFEDCAA- AJIHGFEDCA- KJIHGFEDCA- '; PESO_: String = 'ABABBABAAJ AAIGAHAADAEALLAF NOQ!A !CC!A !!K!!H!!! !!M!! !!P!'; ALFA_: String = 'ABCDEFGHIJKLMNOPQR S'; ROTINAS_: String = 'EE0112 EE0EEEDEDDEE EE0!E !EE!E !!E!!E!!! !!D!! !!E!'; MODULOS_: String = '999898 9979 999090890900 9009 0990' ; INICIO_ : String = '002AB000111X2X 11X11X2XXX22 XX21143337XC C2X8X56X89X0XXX4 9XX0' ; MASCARA_: String = 'ABAEEABCAB AAFDAEAGADAAHIAC AJG'; FATORES_: String = '100010 00011100 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 = '00' ; 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('0 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('012345- 67- 01- 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(
Re: [delphi-br] Modularização de aplicaçõe s utilizando bpl
Boa tarde, Correto, porém a referência circular de units só ocorre quando elas são declaradas no uses do interface, mas não ocorrem no uses do implementation. Essa hierarquia que você diz, é em relação aos requires packages(os dcps) e concordo plenamente com você, mas acredito que a dúvida do Mateus era quanto ao problema das units. Se entendi bem. []'s Fábio Henrique Beltrame Analista de Sistemas - Delphi From: Elazar Dornelles Ceza Sent: Friday, November 27, 2009 2:06 PM To: delphi-br@yahoogrupos.com.br Subject: Res: [delphi-br] Modularização de aplicações utilizando bpl Boa tarde; Fábio, você pode ter um terceiro pacote com estas duas units que serão compartilhadas com o modulo principal de cada um dos dois pacotes. Ex. DataModule, Clientes, PosVendas; DataModule fica em um pacote. Cliente em outro e tem o pacote do DataModule como requerido. PosVendas em outro pacote e tambem tem o pacote do DataModule como requerido. Trabalhei muito com bpls algum tempo atraz, com criação dinamica de menus e relatorios utilzando este principio. Se existe alguma coisa que vai ser utilizada por mais de um modulo mete em um pacote especifico pra isto, lembrando que pra trabalhar com pacotes as coisas devem seguir uma hierarquia, como neste exemplo o DataModule seria o topo da piramide. Atenc; Elazar Dornelles Ceza De: Fábio Henrique Beltrame fhbeltr...@yahoo.com.br Para: delphi-br@yahoogrupos.com.br Enviadas: Sexta-feira, 27 de Novembro de 2009 11:37:40 Assunto: Re: [delphi-br] Modularização de aplicações utilizando bpl Tente isso... Coloque a unit que está dando erro na sessão de implementation e não na interface, desde que não utilize na unit para implemetação. From: mateus Sent: Friday, November 27, 2009 11:28 AM To: delphi...@yahoogrup os.com.br Subject: [delphi-br] Modularização de aplicações utilizando bpl Pessoal, estou fazendo a modularização de aplicativos do meu sistema e me deparei com um problema. Tenho dois modulos que eu criei duas bpl´s uma para cada modulo. O primiero modulo possui uma unit que é usada no segundo modulo e o segundo modulo possui uma unit que é usada no primeiro modulo, assim quando compilo as package não dá erro, mas quando vou carregar a a segunda bpl, ele fala que a unit já existe na primeira bpl carregada. Alguém pode me ajudar? Muto obrigado. [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]
Re: [delphi-br] Dúvida com SQL
vc tem q fazer a verificacao de relacao: 1 - N, 1 - 1 ou N - N, no primeiro caso nao precisa criar uma terceira tabela, no segundo nao precisa nem da segunda tabela soh da tabela cliente, no terceiro sim precisa de uma tabela com chaves estrageiras das duas (cliente e frete) se nao entendeu oq eu disse entao da uma pesquisada sobre o assunto para ficar a par.. 2009/11/27 Darkzad dark...@yahoo.com.br Olá pessoal, Estou desenvolvendo um aplicatico para Emitir Conhecimento de Frete. Tenho a Tabela Cliente e a Tabela cabeçalho do Conhecimento que se relacionam. Dúvida: No Cabeçalho do Conhecimento tenho os campos: Remetente Destinatário Pagador Pergunta: Esses três campos PODE ser todos pegos da tabela CLIENTE ou eu tenho que criar uma tabela para cada um deles? Qual impacato eu teria se pegasse os três tabela CLIENTE? É só isso pessoal []'s DarkZad __ Faça ligações para outros computadores com o novo Yahoo! Messenger http://br.beta.messenger.yahoo.com/ -- Leandro, MuTukA [As partes desta mensagem que não continham texto foram removidas] -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM * Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages * Para falar com o moderador, envie um e-mail para: delphi-br-ow...@yahoogrupos.com.br Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ * Para sair deste grupo, envie um e-mail para: delphi-br-unsubscr...@yahoogrupos.com.br * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
RE: [delphi-br] Dúvi da com SQL
O que é que isso tem a ver com Delphi? To: delphi-br@yahoogrupos.com.br From: dark...@yahoo.com.br Date: Fri, 27 Nov 2009 11:35:26 -0300 Subject: [delphi-br] Dúvida com SQL Olá pessoal, Estou desenvolvendo um aplicatico para Emitir Conhecimento de Frete. Tenho a Tabela Cliente e a Tabela cabeçalho do Conhecimento que se relacionam. Dúvida: No Cabeçalho do Conhecimento tenho os campos: Remetente Destinatário Pagador Pergunta: Esses três campos PODE ser todos pegos da tabela CLIENTE ou eu tenho que criar uma tabela para cada um deles? Qual impacato eu teria se pegasse os três tabela CLIENTE? É só isso pessoal []'s DarkZad __ Faça ligações para outros computadores com o novo Yahoo! Messenger http://br.beta.messenger.yahoo.com/ _ Você já ama o Messenger? Conheça ainda mais sobre ele no Novo site de Windows Live. http://www.windowslive.com.br/?ocid=WindowsLive09_MSN_Hotmail_Tagline_out09 [As partes desta mensagem que não continham texto foram removidas] -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM * Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages * Para falar com o moderador, envie um e-mail para: delphi-br-ow...@yahoogrupos.com.br Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ * Para sair deste grupo, envie um e-mail para: delphi-br-unsubscr...@yahoogrupos.com.br * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
[delphi-br] Re: [NDDV] Travar Atualização do Form
entao galera resolvi o problema com uma singela solução de adaptação tecnica. como nao consegui resolver de maneira ortodoxa, fiz o seguinte: no momento de chamar as atualizações do form que causavam o efeito indesejado eu fiz: * copiei o canvas do handle em questao; * salvei ele em um bitmap; * deixei a area desejada invisivel; * Criei uma imagem e carreguei o bitmap nela; * fiz as atualizações na tela; * Deixei a area visivel novamente; * Destruí a imagem com o bitmap carregado; Com isso, tenho apenas uma piscada na tela, contra trocentas e tantas outras que ocorriam anteriormente. ps: Mas é um put* de um POG. rsrs 2009/11/20 Magnun Oliveira magnunolive...@gmail.com Olha nao funcionou mesmo, acredito que um dos componentes utilzados burlem o lockwindowUpdate. estive fazendo uns testes e por ex. se apos vc aplicar um lockwindowupdate em algum form, vc redimensiona-lo, ele volta a receber as atualizacoes, por isso acredito q algum componente do meu form em questao burla ou no caso destrava a atualizacao do form. quanto a fazer em background, nao serve nesse caso, pois o usuario está trabalhando no form em questao. vlw. [As partes desta mensagem que não continham texto foram removidas]
Re: [delphi-br] Gerenciador Padrão TEF
aproveitando o espaço, alguem sabe ond encontro o gerenciador do Hiper? na site da softexpress nao acei, mesmo depois do cadastro 2009/11/27 dionatanhenrique dionata...@hotmail.com Pessoal onde posso fazer o download do Gerenciador Padrão do TEF para Windows Vista 64bits. Tenho vários mas da erro na instalação dizendo que ñão e possivel instalar por ser um PC de 64bits. Valeu -- Nazareno Neto Programador Delphi e Firebird http://www.delphisistemas.com.br nazarenon...@hotmail.com nazareno.nobr...@gmail.com [As partes desta mensagem que não continham texto foram removidas] -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM * Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages * Para falar com o moderador, envie um e-mail para: delphi-br-ow...@yahoogrupos.com.br Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ * Para sair deste grupo, envie um e-mail para: delphi-br-unsubscr...@yahoogrupos.com.br * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
Re: [delphi-br] Delphi ter� em 2010 vers�es para Linux e Mac OS
Delphi terá em 2010 versões para Linux e Mac OS Ferramenta de desenvolvimento para os dois ambientes deve chegar ao mercado no meio do próximo ano Corrigindo: O Delphi não terá versões para Linux ou Mac OS, mas irá gerar binários para essas plataformas e terá recursos de debugger remoto para ambas as plataformas também. A IDE continua no Windows apenas. -- Jackson
Re: [delphi-br] Re: [NDDV] [OFF Topic] Curso para fo rmação ESPECIALISTA EM SOFTWARE
Tenho um amigo que está terminando o curso de sistema de informação e me perguntou sobre o curso de especialista em software e não soube informar ao mesmo. Eu não sei se é pós-graduação ou ligado em engenharia de software. Apenas gostaria de saber como informar a ele qual curso e em qual instituição ele poderia se forma em ESPECIALISTA EM SOFTWARE. 2009/11/27 Bruno Lichot bruno.lic...@microfocus.com www.noginfo.com.br From: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br[mailto: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br] On Behalf Of Walter Chagas (Bol) Sent: sexta-feira, 27 de novembro de 2009 09:47 To: n...@yahoogrupos.com.br NDDV%40yahoogrupos.com.br; Grupo Delphi-BR Subject: [delphi-br] Re: [NDDV] [OFF Topic] Curso para formação ESPECIALISTA EM SOFTWARE Voce quer é algo no segmento de Engenharia de Software certo? O que seria especificamente? Faculdade, pós graduação ou apenas curso técnico? []s Walter Alves Chagas Junior Belo Horizonte - MG - Brazil wchag...@bol.com.br wchagasj%40bol.com.br mailto:wchagasj%40bol.com.brwchagasj%2540bol.com.br http://delphitocorporerm.blogspot.com/ http://twitter.com/wchagas MSN: whitesock...@hotmail.com whitesockets%40hotmail.com mailto: whitesockets%40hotmail.com whitesockets%2540hotmail.com SKYPE: WalterChagasJr - Original Message - From: Jorge Ericsson To: undisclosed-recipients: Sent: Thursday, November 26, 2009 10:08 PM Subject: [NDDV] [OFF Topic] Curso para formação ESPECIALISTA EM SOFTWARE Olá amigos, Gostaria de saber aonde posso encontrar um curso para formação em Especialista em Softwares. Tenho interesse de fazer Graduação ou Pós caso. Obrigado. Jorge Ericsson Brasília - DF [As partes desta mensagem que não continham texto foram removidas] Click here https://www.mailcontroller.altohiway.com/sr/oZ733CC0o67TndxI!oX7UnlPSUZHzmrIAL4mYEyP7!IsMkDHiy6!V9L2QN!oc3+xSw9fV5QVhWCVy4oAFznL6w== to report this email as spam. This message has been scanned for viruses by MailController http://www.MailController.altohiway.com/ . [As partes desta mensagem que não continham texto foram removidas] -- Att, Jorge Ericsson S. Pinheiro Ericsson Sistemas e Soluções (61) 3797-4785 / 8592-9960 / 9227-4785 http://www.jericsson.com.br jericsson...@gmail.com jericsson...@jericsson.com.br skype:jericsson Brasília - DF [As partes desta mensagem que não continham texto foram removidas] -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM * Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages * Para falar com o moderador, envie um e-mail para: delphi-br-ow...@yahoogrupos.com.br Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ * Para sair deste grupo, envie um e-mail para: delphi-br-unsubscr...@yahoogrupos.com.br * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
Re: [delphi-br] Dúvida com SQL
ok matheus entao a proxima vez q vc vier com uma duvida q nao seja de delphi, que seja de banco de dados, ninguem ira te ajudar ok? ja que eh assim que prefere.. ps. tem pessoas que perdem a oportunidade de nao serem chatas 2009/11/27 Matheus Nabao matheus_...@hotmail.com O que é que isso tem a ver com Delphi? To: delphi-br@yahoogrupos.com.br From: dark...@yahoo.com.br Date: Fri, 27 Nov 2009 11:35:26 -0300 Subject: [delphi-br] Dúvida com SQL Olá pessoal, Estou desenvolvendo um aplicatico para Emitir Conhecimento de Frete. Tenho a Tabela Cliente e a Tabela cabeçalho do Conhecimento que se relacionam. Dúvida: No Cabeçalho do Conhecimento tenho os campos: Remetente Destinatário Pagador Pergunta: Esses três campos PODE ser todos pegos da tabela CLIENTE ou eu tenho que criar uma tabela para cada um deles? Qual impacato eu teria se pegasse os três tabela CLIENTE? É só isso pessoal []'s DarkZad __ Faça ligações para outros computadores com o novo Yahoo! Messenger http://br.beta.messenger.yahoo.com/ _ Você já ama o Messenger? Conheça ainda mais sobre ele no Novo site de Windows Live. http://www.windowslive.com.br/?ocid=WindowsLive09_MSN_Hotmail_Tagline_out09 [As partes desta mensagem que não continham texto foram removidas] -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM -- Leandro, MuTukA [As partes desta mensagem que não continham texto foram removidas]
Re: [delphi-br] Re: [NDDV] Travar Atualização do F orm
soh para desencargo de consciencia: DoubleBuffered Determina se o controle da imagem é feita diretamente à janela ou em um bitmap de em-memória. Class TWinControl DoubleBuffered := True; Descrição Quando DoubleBuffered for falso, o windows controla pinturas diretamente para a janela. Quando DoubleBuffered for verdade, o windows controla pinturas para um bitmap de em-memória que é usado para pintar a janela então. Reduz a quantia de vezes que a tela pisca, no entanto o uso de memória é intenso. 2009/11/27 Magnun Oliveira magnunolive...@gmail.com entao galera resolvi o problema com uma singela solução de adaptação tecnica. como nao consegui resolver de maneira ortodoxa, fiz o seguinte: no momento de chamar as atualizações do form que causavam o efeito indesejado eu fiz: * copiei o canvas do handle em questao; * salvei ele em um bitmap; * deixei a area desejada invisivel; * Criei uma imagem e carreguei o bitmap nela; * fiz as atualizações na tela; * Deixei a area visivel novamente; * Destruí a imagem com o bitmap carregado; Com isso, tenho apenas uma piscada na tela, contra trocentas e tantas outras que ocorriam anteriormente. ps: Mas é um put* de um POG. rsrs 2009/11/20 Magnun Oliveira magnunolive...@gmail.commagnunoliveira%40gmail.com Olha nao funcionou mesmo, acredito que um dos componentes utilzados burlem o lockwindowUpdate. estive fazendo uns testes e por ex. se apos vc aplicar um lockwindowupdate em algum form, vc redimensiona-lo, ele volta a receber as atualizacoes, por isso acredito q algum componente do meu form em questao burla ou no caso destrava a atualizacao do form. quanto a fazer em background, nao serve nesse caso, pois o usuario está trabalhando no form em questao. vlw. [As partes desta mensagem que não continham texto foram removidas] -- Leandro, MuTukA [As partes desta mensagem que não continham texto foram removidas] -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM * Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages * Para falar com o moderador, envie um e-mail para: delphi-br-ow...@yahoogrupos.com.br Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ * Para sair deste grupo, envie um e-mail para: delphi-br-unsubscr...@yahoogrupos.com.br * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
Re: [delphi-br] Dúvida com SQL
Bom, Vc não utiliza SQL no Delphi para fazer consulta, insert e update. ;) DarkZad --- Em sex, 27/11/09, Leandro mutu...@yahoo.com.br escreveu: De: Leandro mutu...@yahoo.com.br Assunto: Re: [delphi-br] Dúvida com SQL Para: delphi-br@yahoogrupos.com.br Data: Sexta-feira, 27 de Novembro de 2009, 22:14 ok matheus entao a proxima vez q vc vier com uma duvida q nao seja de delphi, que seja de banco de dados, ninguem ira te ajudar ok? ja que eh assim que prefere.. ps. tem pessoas que perdem a oportunidade de nao serem chatas 2009/11/27 Matheus Nabao matheus_nab@ hotmail.com O que é que isso tem a ver com Delphi? To: delphi...@yahoogrup os.com.br From: dark...@yahoo. com.br Date: Fri, 27 Nov 2009 11:35:26 -0300 Subject: [delphi-br] Dúvida com SQL Olá pessoal, Estou desenvolvendo um aplicatico para Emitir Conhecimento de Frete. Tenho a Tabela Cliente e a Tabela cabeçalho do Conhecimento que se relacionam. Dúvida: No Cabeçalho do Conhecimento tenho os campos: Remetente Destinatário Pagador Pergunta: Esses três campos PODE ser todos pegos da tabela CLIENTE ou eu tenho que criar uma tabela para cada um deles? Qual impacato eu teria se pegasse os três tabela CLIENTE? É só isso pessoal []'s DarkZad _ _ _ _ __ Faça ligações para outros computadores com o novo Yahoo! Messenger http://br.beta. messenger. yahoo.com/ _ _ _ _ _ _ Você já ama o Messenger? Conheça ainda mais sobre ele no Novo site de Windows Live. http://www.windowsl ive.com.br/ ?ocid=WindowsLiv e09_MSN_Hotmail_ Tagline_out09 [As partes desta mensagem que não continham texto foram removidas] - - -- -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM -- Leandro, MuTukA [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]
RES: [delphi-br] Dúvida com SQL
Faça um join entre as duas tabelas pela chave primaria (PK) e selecione os campos que você quer na sua query ! Se você cometer um erro de relacionamento entre as tabelas pode ocorrer de vc fazer um acesso FULL em uma delas o que vai ocasionar um lentidão ! Em alguns programas se você rodar essa query errada, mesmo ela fazendo full... o programa traz geralmente as primeiras linhas e dá a impressão que está tudo certo... cuidado ! Exemplo : Tabela Cliente CodCliente Nome Tabela Conhec_Embarque CodCliente ( este campo deve existir aqui sendo parte da sua PK ) ok Remetente Destinatário Pagador // Traz Dados de um Cliente em especifico ! Select a.CodCLiente, a.Nome, b.Remetente, b.Destinatario, b.Pagador From Cliente a, Conhec_Embarque b Where a.CodCliente = 1 And b.CodCliente = a.CodCliente ; Falow -Mensagem original- De: delphi-br@yahoogrupos.com.br [mailto:delphi...@yahoogrupos.com.br] Em nome de Leandro Enviada em: sexta-feira, 27 de novembro de 2009 13:36 Para: delphi-br@yahoogrupos.com.br Assunto: Re: [delphi-br] Dúvida com SQL vc tem q fazer a verificacao de relacao: 1 - N, 1 - 1 ou N - N, no primeiro caso nao precisa criar uma terceira tabela, no segundo nao precisa nem da segunda tabela soh da tabela cliente, no terceiro sim precisa de uma tabela com chaves estrageiras das duas (cliente e frete) se nao entendeu oq eu disse entao da uma pesquisada sobre o assunto para ficar a par.. 2009/11/27 Darkzad dark...@yahoo.com.br Olá pessoal, Estou desenvolvendo um aplicatico para Emitir Conhecimento de Frete. Tenho a Tabela Cliente e a Tabela cabeçalho do Conhecimento que se relacionam. Dúvida: No Cabeçalho do Conhecimento tenho os campos: Remetente Destinatário Pagador Pergunta: Esses três campos PODE ser todos pegos da tabela CLIENTE ou eu tenho que criar uma tabela para cada um deles? Qual impacato eu teria se pegasse os três tabela CLIENTE? É só isso pessoal []'s DarkZad __ Faça ligações para outros computadores com o novo Yahoo! Messenger http://br.beta.messenger.yahoo.com/ -- Leandro, MuTukA [As partes desta mensagem que não continham texto foram removidas] -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM
[delphi-br] Inserir dados no Mysql com ZEOS
Olá pessoal, comecei a utilizar o delphi 2009 com mysql e instalei o zeos, pois diferente do dbExpress, ele permite escolher qual a porta de conexão. Bem... minha dúvida é o seguinte... ja consigo conectar com o banco de dados normalmente, mas como que cadastro algo na minha tabela utilizando o zeos? Agradeço a ajuda de todos!