[delphi-br] Mobile , Animal , Flower Love Wallpaper 11:03:10 AM8/10/2010
11:03:10 AM Mobile , Animal , Flower Love Wallpaper Landscape Mobile FlowersCats2 Mobile 20 Wallpaper Flowers1cats1 best Mobile Wallpaper Flower Wallpapers 3Frog_Wallpapers Mobile Wallpaper 2010 HQ Beautiful Flowers Beautiful Animals Wallpap Best Mobile Wallpaper-1 Black2Cartoon Cats Pictures Cute Mobile Wallpaper1 Black Wallpaper-14Animal Best Mobile Wallpaper 2 Black Wallpapers - Part 1Graphic Wallpaper1 Love WallpaperLovely Wallpaper 2Wallpaper Love kiss Lovely WallpaperLovely Wallpaper-3 Best Pic of Love Story Best Love Story 2 Love Wallpaper exotic birds Best Mobile Wallpaper 3 Wallpaper Black Packe Hot Links Best Desktop Wallpaper Pack 1Best Mobile Ringtone Pack 2Mobile Wallpaper Best Desktop Wallpaper Pack 2Best Mobile Ringtone Pack 1Animal Wallpaper Love WallpaperBest Magazine-Free DownloadFlower Wallpaper Model WallpaperFamous Artists Singers picHot Wallpaper Best Cars 2011Best 2010 video ClipsHot Artists Pic [As partes desta mensagem que não continham texto foram removidas]
Re: [delphi-br] Calculo de hora extra
Por partes ve se essa função te ajuda , fiz o teste e ela retorna a diferença de horas entre datas e horas como seu exemplo. *Código:* function FormatHoras(time: double; havDay: boolean): string; var *dias*, horas: double; Pos1, horas24: integer; aux1: string; begin *dias* := trunc(time); horas := frac(time); if havDay then Result := FloatToStr(*dias*) + 'd ' + TimeToStr(horas) else begin aux1 := TimeToStr(horas); pos1 := pos(':', aux1); horas24 := StrToInt(copy(aux1, 1, pos1 -1)) + (trunc(*dias*) * 24); Result := IntToStr(horas24) + Copy(aux1, pos1, Length(aux1)); end; end; faz o teste coloca 4 edits no form e um button no evento onclick do button declara 2 variáveis dt1 e dt2 depois bota esse código: *Código:* dt1:= StrToDateTime(Edit1.Text); dt2:= StrToDateTime(Edit2.Text); Edit3.Text := FormatHoras(dt2 - dt1, True); Edit4.Text := FormatHoras(dt2 - dt1, False); edit1 recebe a data inicial com a hora edit2 recebe a data final com a hora edit3 quantidade de *dias* (resultado edit1 e edit2) edit4 quantidade de horas (resultado edit1 e edit2) agora a segunda parte. somas as horas como a soma de horas no delphi so pode ser feira para resultados ate 24h entao precisamos de um acumulador de horas var // declare as seguintes variaveis Acumula: array[1..2] of integer; Hora,minuto:Integer; zera as variaveis hora e minuto procedure AcumulaHoras(Tempo : TTime); begin //soma a hora passada com com o total acumulador de horas Hora:=Hora+StrToInt(Copy(TimeToStr(Tempo),1,2)); // soma os minutos Minuto:=Minuto+StrToInt(Copy(TimeToStr(Tempo),4,2)); // se passa ou igualar a 60 min , ajusta somando mais uma hora e deixando os min restantes If Minuto = 60 Then Begin Hora:=Hora+1; Minuto:= minuto - 60; end; Acumula[1]:=Hora; Acumula[2]:=Minuto; end; infelizmente tem que ser assim, vc calcula a jornada e depois soma o total de cada jornada. ve se te ajuda. t+ Luciano Bruno Prj. e Desenvolvimento de Software Especialista em Banco de Dados. www.simsolution.com.br Em 8 de agosto de 2010 22:32, SERGIO LOPES moro...@yahoo.com.br escreveu: Pedro, eu trabalho com o delphi mas nao o conheco muito bem ainda, em situacoes que precisei de um calculo desses eu usei as funcoes decodetime e decodedate para separar totalizar subtrair as diferencas. abaixo tem uma funcao que criei a muito tempo para contar os dias entre duas datas e a opção de incluir ou nao o primeiro dia na contagem, foi feita para calcular dias em um periodo muito longo com precisao de dias, so nao tratei caso de ano bisexto, tendo a quantidade de dias vc pode decodificar a hora pegar as horas até o minuto inicial e as horas do minuto final até as 24:00 e subtrair da (quandedias*24h). se vc quizer precisao pode converter tudo em segundos antes de fazer a calculo e depois converter novamente para hora. function contardias(datainicio, datafim : TDateTime; contar_primeiro_dia : boolean) : integer; var VDia,VMes,VAno,pDia,pMes,pAno : word; vtotal_dias, X : Integer;//1 2 3 4 5 6 7 8 9 10 11 12 const vmes_qdias : array[1..12] of integer = (31,28,31,30,31,30,31,31,30,31,30,31); begin DecodeDate(datafim,pAno,pMes,pdia); DecodeDate(datainicio,VAno,VMes,VDia); vtotal_dias := VMes_QDIAS[VMES]-VDIA; FOR x := 1 to VMes do vtotal_dias := vtotal_dias-VMes_QDIAS[x]; FOR x := 1 to pMes do vtotal_dias := vtotal_dias+VMes_QDIAS[x]; vtotal_dias := vtotal_dias-(VMes_QDIAS[pmes]-pdia); if contar_primeiro_dia then if datainicio datafim then vtotal_dias := vtotal_dias-1 else vtotal_dias := vtotal_dias+1; vtotal_dias := vtotal_dias+((pAno-VAno)*365); Result := VTOTAL_DIAS; end; é meio groseira mas funciona. espero ter dado uma ideia de como resolver o seu problema. se nao conseguir posta me avisa que mando uma funcao pronta para vc. mas acredito que há posibilidade de fazer esse calculo de maneira mais simples convertendo a data e hora para ponto flutuante, subtrair os dois valores e converte novamente para data e hora, nunca tentei mas acho que pode funcionar. --- Em sáb, 7/8/10, Pedro Neves neve...@yahoo.com neveshp%40yahoo.com escreveu: De: Pedro Neves neve...@yahoo.com neveshp%40yahoo.com Assunto: [delphi-br] Calculo de hora extra Para: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br Data: Sábado, 7 de Agosto de 2010, 20:56 Ola, tenho uma base de dados com que armazena data e hora em que os funcionarios treabalham, agora estou tentando somar as datas e horas por semana, por exemplo DataHoraInicio DataHoraFim DiaSemana 01/08/2010 08:00 02/08/2010 08:00 Domingo 04/08/2010 08:00 05/08/2010 08:00 Quarta-feira 07/08/2010 08:00 08/08/2010 08:00 Sábado Então, gostaria de somar todas as datas e hora entre às 00:00h do dia 01/08/2010 às 24:00h do dia
[delphi-br] Novo RAD Studio XE, trazendo Delphi XE, C++Builder XE, Delphi Prism XE e RadPHP
Amigos desenvolvedores já não é mais segredo. Delphi 2011 está chegando e se chama Delphi XE. Além do novo IDE para desenvolvimento PHP o RadPHP Mais informações em http://www.andreanolanusse.com/blogpt/rad-studio-xe-agora-com-delphi-xe-cbuilder-xe-delphi-prism-xe-e-radphp-xe/ -- Andreano Lanusse Technical Lead Evangelist, Developer Relations Embarcadero Technologies Blog: http://www.andreanolanusse.com Twitter: http://twitter.com/andreanolanusse CONFIDENTIALITY NOTICE: This email message is for the sole use of the intended recipient(s) and may contain confidential and privileged information. Any unauthorized review, use, disclosure or distribution is prohibited. If you are not the intended recipient, please contact the sender by reply email and destroy all copies of the original message. [As partes desta mensagem que não continham texto foram removidas]
Re: RES: [delphi-br] Estrutura Padrão de So ftware
Entendi Adriano... Eu to meio perdidão mesmo na estrutura que terei que montar, programar e lógica é facil, o problema é como fazer da melhor maneira sabe Aproveitando, gostaria de algumas dicas de como posso organizar meu sistema em pacotes BPL, já sei como criar pacotes, adicionar ao projeto... bla...bla...bla... mas gostaria de saber como vocês separam isso, é por módulo? Se sim voces criam um DM para cada projeto? Eu tenho um arquivo .INI que o sistema lê antes de conectar na base, em qual BPL posso deixar esse arquivo? E a organização de pastas com os arquivos do delphi (PAS, DCU, DCP) como voces organizam isso? Ainda não consegui achar a estrutura que me agrade Att. Rodrigo Rossi Skype: rodrigotrentinrossi MSN: rdrg_ro...@hotmail.com Fone: (45) 9963-1897 Cascavel - PR On 09/08/2010 19:03, Adriano de F. Trindade wrote: Não quero te desanimar, mas mostrar os problemas provoca a busca de soluções para eles, e com isso aprende-se. Pelo jeito você está meio cru no negócio, e a lógica, você até que está indo bem, considerando a herança dos formulários. O que falta, na real, é você fracionar estes seus casos de uso aí. Explico: DataSource, por exemplo, alguns formulários vão precisar de um, outros de 5 e outros de 20. Se você fazer no seu modelo primário um único DataSource, em cada formulário que você criar herdando este formulário, terá que adicionar mais DataSources. Mas, se você fizer o modelo com 10, aí você atende a maioria dos casos, e em raras oportunidades terás que adicionar mais data sources além desses 10 aí. Entendeu o exemplo? Eu quis dizer: projetar considerando o máximo de possibilidades para cada form, e não o mínimo. Certo? Agora esqueça esses data sources aí. Crie um único Data Module, com um nome bem curto (eu uso DM) e coloque todos seus componentes de acesso á dados lá: ClientDataSets, DataModules, DataSetProviders e por aí vai. Desta maneira, você não vai ter componentes de acesso á dados espalhados pelo seu projeto. Eu comecei há 5 anos atrás um sistema mais ou menos da maneira que você estava começando este. Começou com 34 tabelas e hoje tem 220 tabelas no BD. De todo o tempo de desenvolvimento, no mínimo 30% dele foi refazendo coisas que fiz sem considerar todas as possibilidades. Por exemplo: ao projetar um formulário para Notas Fiscais, você precisa de uma tabela para os dados da NF e outra para o detalhamento da NF, que são os produtos/serviços. Primeiro fiz com uma tabela para produtos e outra para serviços: tive que refazer para colocar produtos e serviços em uma única tabela. Alguns valores como frete e seguro iam no corpo da NF. Não, não dá certo, valores de frete e seguro tem que ser distribuídos pelos itens da NF para conseguir gerar a NF-e direito. No corpo da NF, só dados cadastrais, dados monetários tem que ser tudo nos itens. E tome refazer enormes partes do código. Minha dica pra ti é: vá para o Delphi por último. Faça funcionar no papel primeiro. Vai lidar com Notas Fiscais? Estude o lay-out da NFe e do SPED antes para saber de quais dados você precisará e modelar seu BD de acordo. Sugiro usar a padronização de nomes de campos que consta no lay-out da NF-e, vai tornar sua vida mais fácil no futuro. Vais trabalhar com ECF? Estude o manual do PAF-ECF. Vais gerar boletos para bancos? Estude a documentação sobre quais dados você precisa informar nos arquivos gerados para os bancos e use eles nas contas á pagar/receber. Quais impostos vais ter que informar? Campos no BD para cada um. É mais importante para seu projeto entrar nas empresas e ver como que todos trabalham, que informações um departamento precisa obter do outro, o rastreamento de quem fez o quê, o controle de acesso, permissões para os menus, acesso de vários usuários ao mesmo tempo... Depois que tiver tudo isso no papel, aí sim você vai pro Delphi. Porque sabendo isso tudo, aí você saberá quantos formulários vai precisar, quantos campos em cada formulário, quantos ClientDataSets... Bote a prancheta embaixo do braço, esqueça a programação de software acadêmica e disseque a prática das pessoas. Só depois você vai saber o quê precisa fazer no Delphi e quais problemas terá que solucionar DE VERDADE. Falou! De: delphi-br@yahoogrupos.com.br mailto:delphi-br%40yahoogrupos.com.br [mailto:delphi-br@yahoogrupos.com.br mailto:delphi-br%40yahoogrupos.com.br] Em nome de Rodrigo Rossi Enviada em: segunda-feira, 9 de agosto de 2010 17:42 Para: delphi-br@yahoogrupos.com.br mailto:delphi-br%40yahoogrupos.com.br; n...@yahoogrupos.com.br mailto:NDDV%40yahoogrupos.com.br Assunto: [delphi-br] Estrutura Padrão de Software Boa tarde. Estou desenvolvendo já faz uns 3 meses um software em Delphi 2010 para ERP, não é um ERP muito grande mas a idéia é atender vários ramos de atividade, é um projeto importantíssimo para min, este software estou desenvolvendo sozinho, como nunca fiz um projeto grande
Res: [delphi-br] Novo RAD Studio XE, trazendo Delphi XE, C++Builder XE, Delphi Prism XE e RadPHP
O que tem de novo no delphi XE além da integração com o subversion e o diagrama de sequencia de classes no uml. De: Andreano Lanusse andreano.lanu...@embarcadero.com Para: delphi-br@yahoogrupos.com.br delphi-br@yahoogrupos.com.br Enviadas: Terça-feira, 10 de Agosto de 2010 5:57:46 Assunto: [delphi-br] Novo RAD Studio XE, trazendo Delphi XE, C++Builder XE, Delphi Prism XE e RadPHP Amigos desenvolvedores já não é mais segredo. Delphi 2011 está chegando e se chama Delphi XE. Além do novo IDE para desenvolvimento PHP o RadPHP Mais informações em http://www.andreanolanusse.com/blogpt/rad-studio-xe-agora-com-delphi-xe-cbuilder-xe-delphi-prism-xe-e-radphp-xe/ -- Andreano Lanusse Technical Lead Evangelist, Developer Relations Embarcadero Technologies Blog: http://www.andreanolanusse.com Twitter: http://twitter.com/andreanolanusse CONFIDENTIALITY NOTICE: This email message is for the sole use of the intended recipient(s) and may contain confidential and privileged information. Any unauthorized review, use, disclosure or distribution is prohibited. If you are not the intended recipient, please contact the sender by reply email and destroy all copies of the original message. [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
RES: [delphi-br] Novo RAD Studio XE, trazendo Delphi XE, C++Builder XE, Delphi Prism XE e RadPHP
Dia mestre, dia 17 vai ter outra mostra sobre automação e otimização e dia 24 sobre multi-tier / web e cloud. Acredito que tenha muita coisa nova, no site da embarcadero já tem uma área para o sneak previews http://www.embarcadero.com.br/rad-studio-xe-preview%20 Vamos esperar e torcer. Força a todos. José Ricardo Aviles. assinatura1 ( Tel.: 19 3868-7185 ( Cel.: 19 8173 0077 * E-mail: mailto:jravi...@stiware.com.br jravi...@stiware.com.br Skype: stiware De: delphi-br@yahoogrupos.com.br [mailto:delphi...@yahoogrupos.com.br] Em nome de Marcelo Enviada em: terça-feira, 10 de agosto de 2010 09:40 Para: delphi-br@yahoogrupos.com.br Assunto: Res: [delphi-br] Novo RAD Studio XE, trazendo Delphi XE, C++Builder XE, Delphi Prism XE e RadPHP O que tem de novo no delphi XE além da integração com o subversion e o diagrama de sequencia de classes no uml. De: Andreano Lanusse andreano.lanu...@embarcadero.com mailto:andreano.lanusse%40embarcadero.com Para: delphi-br@yahoogrupos.com.br mailto:delphi-br%40yahoogrupos.com.br delphi-br@yahoogrupos.com.br mailto:delphi-br%40yahoogrupos.com.br Enviadas: Terça-feira, 10 de Agosto de 2010 5:57:46 Assunto: [delphi-br] Novo RAD Studio XE, trazendo Delphi XE, C++Builder XE, Delphi Prism XE e RadPHP Amigos desenvolvedores já não é mais segredo. Delphi 2011 está chegando e se chama Delphi XE. Além do novo IDE para desenvolvimento PHP o RadPHP Mais informações em http://www.andreanolanusse.com/blogpt/rad-studio-xe-agora-com-delphi-xe-cbuilder-xe-delphi-prism-xe-e-radphp-xe/ -- Andreano Lanusse Technical Lead Evangelist, Developer Relations Embarcadero Technologies Blog: http://www.andreanolanusse.com Twitter: http://twitter.com/andreanolanusse CONFIDENTIALITY NOTICE: This email message is for the sole use of the intended recipient(s) and may contain confidential and privileged information. Any unauthorized review, use, disclosure or distribution is prohibited. If you are not the intended recipient, please contact the sender by reply email and destroy all copies of the original message. [As partes desta mensagem que não continham texto foram removidas] [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] Re: Como Associar 2 Classe a uma variavel
se vc quer só criar as querys, pode usar uma factory: TQueryFactory = class class function CreateQry(ConnType: ???): TDataSet; end; implementation class function TQueryFactory.CreateQry(ConnType: ??): TDataSet; begin if ConnType = ctBDE then Result := TQuery.Create(nil) else if FConnType = ctUniDac then Result := TUniQuery.Create(nil); end; ai vc constroi as classes usando a factory: q := TQueryFactory.CreateQry(FConnType); mas dentro da factory, como disse o Márico, vc vai ter que ter um if ou case pra checar qual o tipo de conexão o/ Em 09/08/2010 15:25, NTS INFORMÁTICA escreveu: Eric, Na verdade, muitos metodos são comuns as 3 ou mais classes que eu fosse trabalhar, para a conexao com meu dicionario de dados., tenho que fazer isso para compatibilidade de conexões com BDE. Então eu aproveitaria muita linha de codigo no meu dicionario de dados. q.DataBaseName // Metodo Somente na Tquery ( Derivado da TDataBase ) q.Connection // Metodo Somente na TUniQuery ( Derivado da TUniConnection ) q.Connection // Metodo Somente na TAdoiQuery ( Derivado da TAdoConnection ) // todos os demais metodos são iguais q.SQL q.Open q.Close - Original Message - From: eric_developer To: delphi-br@yahoogrupos.com.br mailto:delphi-br%40yahoogrupos.com.br Sent: Sunday, August 08, 2010 9:18 PM Subject: [delphi-br] Re: Como Associar 2 Classe a uma variavel Marcio, não vejo sentido lógico no pedido, o IF será necessário mesmo que tivesse chamando somente uma classe, ainda teria que testar FConnType. Eric Developer Systems --- Em delphi-br@yahoogrupos.com.br mailto:delphi-br%40yahoogrupos.com.br, NTS INFORMÁTICA ntsi...@... escreveu Amigos, existe alguma forma ou maneira para associar classes diferentes a uma variavel, pois muito metodos sao comuns as 2 classes, e outro não, isso seria muito bom para evitar IFs Exemplo Abaixo ? l var q : TComponent; i : Integer; begin if FConnType = ctBDE then q := TQuery.Create(nil); if FConnType = ctUniDac then q := TUniQuery.Create(nil); Márcio [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
Res: [delphi-br] Estrutura Padrão de Softwar e
Como vc trabalha numa aplicação MDI utilizando DataModule? Se o usuário quiser abrir dois formularios de clientes como vc faz? Não dá conflito já que os componentes de acesso aos dados estão no DM? -- Eny Trova Urias Somos o que repetitivamente fazemos, portanto, a excelência não é um feito, mas um hábito- Aristóteles De: Adriano de F. Trindade trind...@desbrava.com.br Para: delphi-br@yahoogrupos.com.br Enviadas: Segunda-feira, 9 de Agosto de 2010 19:03:05 Assunto: RES: [delphi-br] Estrutura Padrão de Software Não quero te desanimar, mas mostrar os problemas provoca a busca de soluções para eles, e com isso aprende-se. Pelo jeito você está meio “cru” no negócio, e a lógica, você até que está indo bem, considerando a herança dos formulários. O que falta, na real, é você fracionar estes seus casos de uso aí. Explico: DataSource, por exemplo, alguns formulários vão precisar de um, outros de 5 e outros de 20. Se você fazer no seu modelo primário um único DataSource, em cada formulário que você criar herdando este formulário, terá que adicionar mais DataSources. Mas, se você fizer o modelo com 10, aí você atende a maioria dos casos, e em raras oportunidades terás que adicionar mais data sources além desses 10 aí. Entendeu o exemplo? Eu quis dizer: projetar considerando o máximo de possibilidades para cada form, e não o mínimo. Certo? Agora esqueça esses data sources aí. Crie um único Data Module, com um nome bem curto (eu uso “DM”) e coloque todos seus componentes de acesso á dados lá: ClientDataSets, DataModules, DataSetProviders e por aí vai. Desta maneira, você não vai ter componentes de acesso á dados espalhados pelo seu projeto. Eu comecei há 5 anos atrás um sistema mais ou menos da maneira que você estava começando este. Começou com 34 tabelas e hoje tem 220 tabelas no BD. De todo o tempo de desenvolvimento, no mínimo 30% dele foi refazendo coisas que fiz sem considerar todas as possibilidades. Por exemplo: ao projetar um formulário para Notas Fiscais, você precisa de uma tabela para os dados da NF e outra para o detalhamento da NF, que são os produtos/serviços. Primeiro fiz com uma tabela para produtos e outra para serviços: tive que refazer para colocar produtos e serviços em uma única tabela. Alguns valores como frete e seguro iam no corpo da NF. Não, não dá certo, valores de frete e seguro tem que ser distribuídos pelos itens da NF para conseguir gerar a NF-e direito. No corpo da NF, só dados cadastrais, dados monetários tem que ser tudo nos itens. E tome refazer enormes partes do código. Minha dica pra ti é: vá para o Delphi por último. Faça funcionar no papel primeiro. Vai lidar com Notas Fiscais? Estude o lay-out da NFe e do SPED antes para saber de quais dados você precisará e modelar seu BD de acordo. Sugiro usar a padronização de nomes de campos que consta no lay-out da NF-e, vai tornar sua vida mais fácil no futuro. Vais trabalhar com ECF? Estude o manual do PAF-ECF. Vais gerar boletos para bancos? Estude a documentação sobre quais dados você precisa informar nos arquivos gerados para os bancos e use eles nas contas á pagar/receber. Quais impostos vais ter que informar? Campos no BD para cada um. É mais importante para seu projeto entrar nas empresas e ver como que todos trabalham, que informações um departamento precisa obter do outro, o rastreamento de quem fez o quê, o controle de acesso, permissões para os menus, acesso de vários usuários ao mesmo tempo... Depois que tiver tudo isso no papel, aí sim você vai pro Delphi. Porque sabendo isso tudo, aí você saberá quantos formulários vai precisar, quantos campos em cada formulário, quantos ClientDataSets... Bote a prancheta embaixo do braço, esqueça a “programação de software acadêmica” e disseque a prática das pessoas. Só depois você vai saber o quê precisa fazer no Delphi e quais problemas terá que solucionar DE VERDADE. Falou! De: delphi-br@yahoogrupos.com.br [mailto:delphi...@yahoogrupos.com.br] Em nome de Rodrigo Rossi Enviada em: segunda-feira, 9 de agosto de 2010 17:42 Para: delphi-br@yahoogrupos.com.br; n...@yahoogrupos.com.br Assunto: [delphi-br] Estrutura Padrão de Software Boa tarde. Estou desenvolvendo já faz uns 3 meses um software em Delphi 2010 para ERP, não é um ERP muito grande mas a idéia é atender vários ramos de atividade, é um projeto importantíssimo para min, este software estou desenvolvendo sozinho, como nunca fiz um projeto grande assim de delphi, gostaria da opinião de vocês sobre alguns assuntos. Estou com muita dificuldade em definir a arquitetura do software (o modelo), por exemplo, o que fiz até agora foi: 1 - Criar um DM para conexão com o Firebird usando SqlConnection. 3 - Criar três formulários genéricos que serão herdados para a geração de outros (herança de formulários). Nesses formulários coloquei um DataSource. 4 - Criei um cadastro de clientes herdando do formulário genério do item 3, neste cadastro, coloquei um SqlQuery, um
[delphi-br] Re: Ajuda com Checklistbox
Valeu pela Ajuda Obrigado a todos --- Em delphi-br@yahoogrupos.com.br, SERGIO LOPES moro...@... escreveu //0 - item 1 //1 - item 2 if lista.ItemIndex = 0 then lista.Checked[1] := lista.Checked[0] = false; if lista..ItemIndex = 1 then lista.Checked[0] := lista.Checked[1] = false; //esse codigo quando vc desmarca o item 1 o dois vai marcar autormaticamente e vice-versa. a propriedade itemindex informa em qual item o cursor esta no momento dai é só fazer a checagem do outro item que vc quer tratar.; --- Em sáb, 7/8/10, Darkzad dark...@... escreveu: De: Darkzad dark...@... Assunto: Re: [delphi-br] Re: Ajuda com Checklistbox Para: delphi-br@yahoogrupos.com.br Data: Sábado, 7 de Agosto de 2010, 10:26 Entendi, Olha se esse código ajuda. if (CheckListBox1.Checked[1]) AND (CheckListBox1.Checked[2]) then if (CheckListBox1.Selected[1]) then CheckListBox1.Checked[2] := False else if (CheckListBox1.Selected[2]) then CheckListBox1.Checked[1] := False else if (CheckListBox1.Checked[1]) then CheckListBox1.Checked[2] := False else if (CheckListBox1.Checked[2]) then CheckListBox1.Checked[1] := False; []'s Em 07-08-2010 09:28, rodrigo escreveu: eu fiz isso, mas o problema é o seguinte: se o item 1 ta selecionado e eu clicar para selecionar o item 2, não funciona com o código abaixo, pois ele vai ver que o 1 ta selecionado e vai desselecionar o item dois antes de verificar o se o item 2 ta selecionado if CheckListBox1.Checked[1] then CheckListBox1.Checked[2] := False; if CheckListBox1.Checked[2] then CheckListBox1.Checked[1] := False; Como acertar isso? --- Em delphi-br@yahoogrupos.com.br mailto:delphi-br%40yahoogrupos.com.br, Darkzad darkzad@ escreveu No evento OnclickCheck vc verfica se o item1 está selecionado. if CheckListBox1.Checked[1] then CheckListBox1.Checked[2] := False; Não esqueça que a array começa do Zero. []'s Em 06-08-2010 19:53, rodrigo escreveu: Olá, tenho um checklistbox onde tenho dois vários itens, mas tem dois que são mutuamente excludentes, isto é quando um for selecionado o outro tem que estar sem seleção, como posso fazer isso automático, para que quando meu usuario selecionar o item1, o item2 perca a seleção e vice-versa. Desde já agradeço [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
[delphi-br] problemas com StrPcopy com Strings e Arrays
bom dia amigos... existem algo de errado no código abaixo? * * *function LimparHistorico(const DtInicio, DtFim : String):Integer;* *var* * aInicio : Array[0..6] of char;* * aFim: Array[0..6] of Char;* *begin* ** * FillChar(aInicio,7,#0);* * StrPCopy(aInicio, Copy(DtInicio,4,7));* * * * FillChar(aFim,7,#0);* * StrPCopy(aFim, Copy(DtFim,4,7));* ... Simplesmente, quando passa pelo segundo StrPCopy, a primeira posição do primeiro vetor (aInicio) fica com o valor #0, ou seja, vazia, independente do valor que estiver armazenado no vetor... notei que se tivessem outros StrPCopy durante o código, sempre o primeiro vetor acima teria sua primeira posição bagunçada não faço a menor idéia do porque isso está acontecendo... Estranho que na mesma unit, tenho o seguinte código * FillChar(aAno,4,#0);* * StrPCopy(aAno,Copy(DateToStr(Date),7,4));* * * * FillChar(aMes,2,#0);* * StrPCopy(aMes,Copy(DateToStr(Date),4,2));* * * Neste caso, fica normal... Se alguém tiver alguma idéia do que possa fazer já me ajuda muito Obrigado.. *Diego Garcia* [As partes desta mensagem que não continham texto foram removidas]
[delphi-br] Ver o resultado do Inner Join sem applyupdate
Bom dia Pessoal, Existe alguma maneira de ver o resultado de uma junsão somente dando o post no clientdataset ? sem aplicar o applyupdate ? Estou trabalhando com Master/Detail, então não posso dar um applyupdate diretamente no detail e preciso dos dados ele em outro furmulário antes de salvar o master. o sql do SqldataSet é esse : SELECT EO.*, E.DSC_EQUIPAMENTO FROM TBL_EQUIP_ORDEM EO INNER JOIN TBL_EQUIPAMENTO E ON (EO.ID_EQUIPAMENTO = E.ID_EQUIPAMENTO) WHERE ID_ORDEM = :ID_ORDEM -- Marciano Venter Email: venter.marci...@gmail.com Celular: (51) 9672 6093 venter.marci...@gmail.com marcianoven...@hotmail.com [image: Twitter] http://www.twitter.com/ventermarciano@ventermarciano [image: Facebook]http://www.facebook.com/profile.php?id=10304177338ref=profile Marciano Venter [As partes desta mensagem que não continham texto foram removidas]
RES: [delphi-br] Estrutura Padrã o de Software
Minha aplicação é SDI. Bem mais simples e menos propensa á erros, tipo, um registro ser modificado em um form e no outro você ter o mesmo dado atualizado. Quanto mais você deixar o usuário fazer o que ele quiser, maior serão as possibilidades de algo dar errado. Mas isso é a minha opção pessoal, claro. As precauções e checagens para MDI e SDI são bem diferentes. Você define como você quer trabalhar. Eu tenho uma maneira bem peculiar de trabalhar aqui, muito “old school”. Falou! De: delphi-br@yahoogrupos.com.br [mailto:delphi...@yahoogrupos.com.br] Em nome de Eny Urias Enviada em: terça-feira, 10 de agosto de 2010 15:51 Para: delphi-br@yahoogrupos.com.br Assunto: Res: [delphi-br] Estrutura Padrão de Software Como vc trabalha numa aplicação MDI utilizando DataModule? Se o usuário quiser abrir dois formularios de clientes como vc faz? Não dá conflito já que os componentes de acesso aos dados estão no DM? -- Eny Trova Urias Somos o que repetitivamente fazemos, portanto, a excelência não é um feito, mas um hábito- Aristóteles De: Adriano de F. Trindade trind...@desbrava.com.br mailto:trindade%40desbrava.com.br Para: delphi-br@yahoogrupos.com.br mailto:delphi-br%40yahoogrupos.com.br Enviadas: Segunda-feira, 9 de Agosto de 2010 19:03:05 Assunto: RES: [delphi-br] Estrutura Padrão de Software Não quero te desanimar, mas mostrar os problemas provoca a busca de soluções para eles, e com isso aprende-se. Pelo jeito você está meio “cru” no negócio, e a lógica, você até que está indo bem, considerando a herança dos formulários. O que falta, na real, é você fracionar estes seus casos de uso aí. Explico: DataSource, por exemplo, alguns formulários vão precisar de um, outros de 5 e outros de 20. Se você fazer no seu modelo primário um único DataSource, em cada formulário que você criar herdando este formulário, terá que adicionar mais DataSources. Mas, se você fizer o modelo com 10, aí você atende a maioria dos casos, e em raras oportunidades terás que adicionar mais data sources além desses 10 aí. Entendeu o exemplo? Eu quis dizer: projetar considerando o máximo de possibilidades para cada form, e não o mínimo. Certo? Agora esqueça esses data sources aí. Crie um único Data Module, com um nome bem curto (eu uso “DM”) e coloque todos seus componentes de acesso á dados lá: ClientDataSets, DataModules, DataSetProviders e por aí vai. Desta maneira, você não vai ter componentes de acesso á dados espalhados pelo seu projeto. Eu comecei há 5 anos atrás um sistema mais ou menos da maneira que você estava começando este. Começou com 34 tabelas e hoje tem 220 tabelas no BD. De todo o tempo de desenvolvimento, no mínimo 30% dele foi refazendo coisas que fiz sem considerar todas as possibilidades. Por exemplo: ao projetar um formulário para Notas Fiscais, você precisa de uma tabela para os dados da NF e outra para o detalhamento da NF, que são os produtos/serviços. Primeiro fiz com uma tabela para produtos e outra para serviços: tive que refazer para colocar produtos e serviços em uma única tabela. Alguns valores como frete e seguro iam no corpo da NF. Não, não dá certo, valores de frete e seguro tem que ser distribuídos pelos itens da NF para conseguir gerar a NF-e direito. No corpo da NF, só dados cadastrais, dados monetários tem que ser tudo nos itens. E tome refazer enormes partes do código. Minha dica pra ti é: vá para o Delphi por último. Faça funcionar no papel primeiro. Vai lidar com Notas Fiscais? Estude o lay-out da NFe e do SPED antes para saber de quais dados você precisará e modelar seu BD de acordo. Sugiro usar a padronização de nomes de campos que consta no lay-out da NF-e, vai tornar sua vida mais fácil no futuro. Vais trabalhar com ECF? Estude o manual do PAF-ECF. Vais gerar boletos para bancos? Estude a documentação sobre quais dados você precisa informar nos arquivos gerados para os bancos e use eles nas contas á pagar/receber. Quais impostos vais ter que informar? Campos no BD para cada um. É mais importante para seu projeto entrar nas empresas e ver como que todos trabalham, que informações um departamento precisa obter do outro, o rastreamento de quem fez o quê, o controle de acesso, permissões para os menus, acesso de vários usuários ao mesmo tempo... Depois que tiver tudo isso no papel, aí sim você vai pro Delphi. Porque sabendo isso tudo, aí você saberá quantos formulários vai precisar, quantos campos em cada formulário, quantos ClientDataSets... Bote a prancheta embaixo do braço, esqueça a “programação de software acadêmica” e disseque a prática das pessoas. Só depois você vai saber o quê precisa fazer no Delphi e quais problemas terá que solucionar DE VERDADE. Falou! De: delphi-br@yahoogrupos.com.br mailto:delphi-br%40yahoogrupos.com.br [mailto:delphi-br@yahoogrupos.com.br mailto:delphi-br%40yahoogrupos.com.br ] Em nome de Rodrigo Rossi Enviada em: segunda-feira, 9 de agosto de 2010 17:42 Para: delphi-br@yahoogrupos.com.br
RES: RES: [delphi-br] Estrutura Padrão de Software
Opa! Olha, cara, eu não uso BPL. Criei uma pasta e todos os arquivos do sistema (mais de 800) estão nela. Como o Delphi gerencia isso, você não precisa se preocupar com os arquivos. Jogue o arquivo INI na mesma pasta, porque quando você distribuir sua aplicação, é só colocar ele na mesma pasta do EXE principal e valeu. E o DataModule é um só para todo o projeto. Eu tenho um único DataModule para mais de 500 forms aqui. Tente não complicar o que pode ser simples, desde que isso não prejudique sua organização. Estrutura que te agrade? Isso será resultado da sua experimentação. E vai mudar á medida que você adquirir conhecimento. Se eu fosse reescrever hoje este sistema aqui do zero, ele seria MUITO diferente, hehehehe. Falou! De: delphi-br@yahoogrupos.com.br [mailto:delphi...@yahoogrupos.com.br] Em nome de Rodrigo Rossi Enviada em: terça-feira, 10 de agosto de 2010 08:30 Para: delphi-br@yahoogrupos.com.br Assunto: Re: RES: [delphi-br] Estrutura Padrão de Software Entendi Adriano... Eu to meio perdidão mesmo na estrutura que terei que montar, programar e lógica é facil, o problema é como fazer da melhor maneira sabe Aproveitando, gostaria de algumas dicas de como posso organizar meu sistema em pacotes BPL, já sei como criar pacotes, adicionar ao projeto... bla...bla...bla... mas gostaria de saber como vocês separam isso, é por módulo? Se sim voces criam um DM para cada projeto? Eu tenho um arquivo .INI que o sistema lê antes de conectar na base, em qual BPL posso deixar esse arquivo? E a organização de pastas com os arquivos do delphi (PAS, DCU, DCP) como voces organizam isso? Ainda não consegui achar a estrutura que me agrade Att. Rodrigo Rossi Skype: rodrigotrentinrossi MSN: rdrg_ro...@hotmail.com mailto:rdrg_rossi%40hotmail.com Fone: (45) 9963-1897 Cascavel - PR On 09/08/2010 19:03, Adriano de F. Trindade wrote: Não quero te desanimar, mas mostrar os problemas provoca a busca de soluções para eles, e com isso aprende-se. Pelo jeito você está meio cru no negócio, e a lógica, você até que está indo bem, considerando a herança dos formulários. O que falta, na real, é você fracionar estes seus casos de uso aí. Explico: DataSource, por exemplo, alguns formulários vão precisar de um, outros de 5 e outros de 20. Se você fazer no seu modelo primário um único DataSource, em cada formulário que você criar herdando este formulário, terá que adicionar mais DataSources. Mas, se você fizer o modelo com 10, aí você atende a maioria dos casos, e em raras oportunidades terás que adicionar mais data sources além desses 10 aí. Entendeu o exemplo? Eu quis dizer: projetar considerando o máximo de possibilidades para cada form, e não o mínimo. Certo? Agora esqueça esses data sources aí. Crie um único Data Module, com um nome bem curto (eu uso DM) e coloque todos seus componentes de acesso á dados lá: ClientDataSets, DataModules, DataSetProviders e por aí vai. Desta maneira, você não vai ter componentes de acesso á dados espalhados pelo seu projeto. Eu comecei há 5 anos atrás um sistema mais ou menos da maneira que você estava começando este. Começou com 34 tabelas e hoje tem 220 tabelas no BD. De todo o tempo de desenvolvimento, no mínimo 30% dele foi refazendo coisas que fiz sem considerar todas as possibilidades. Por exemplo: ao projetar um formulário para Notas Fiscais, você precisa de uma tabela para os dados da NF e outra para o detalhamento da NF, que são os produtos/serviços. Primeiro fiz com uma tabela para produtos e outra para serviços: tive que refazer para colocar produtos e serviços em uma única tabela. Alguns valores como frete e seguro iam no corpo da NF. Não, não dá certo, valores de frete e seguro tem que ser distribuídos pelos itens da NF para conseguir gerar a NF-e direito. No corpo da NF, só dados cadastrais, dados monetários tem que ser tudo nos itens. E tome refazer enormes partes do código. Minha dica pra ti é: vá para o Delphi por último. Faça funcionar no papel primeiro. Vai lidar com Notas Fiscais? Estude o lay-out da NFe e do SPED antes para saber de quais dados você precisará e modelar seu BD de acordo. Sugiro usar a padronização de nomes de campos que consta no lay-out da NF-e, vai tornar sua vida mais fácil no futuro. Vais trabalhar com ECF? Estude o manual do PAF-ECF. Vais gerar boletos para bancos? Estude a documentação sobre quais dados você precisa informar nos arquivos gerados para os bancos e use eles nas contas á pagar/receber. Quais impostos vais ter que informar? Campos no BD para cada um. É mais importante para seu projeto entrar nas empresas e ver como que todos trabalham, que informações um departamento precisa obter do outro, o rastreamento de quem fez o quê, o controle de acesso, permissões para os menus, acesso de vários usuários ao mesmo tempo... Depois que tiver tudo isso no papel, aí sim você vai pro Delphi. Porque sabendo isso tudo, aí você
Re: Res: [delphi-br] Estrutura Padrão de Sof tware
Boa tarde, Para trabalhar com aplicação MDI não mudar muita coisa em relação aos datamodules. Voce pode criar os data modulos normalmente, depois crie um form novo (na aba propriedades formstyle = mdiform) e os demais forms dev ser criardos formstyle = mdichild tendo que ser criado em tempo de execução onde sera criado por cima dos form child. --- Em ter, 10/8/10, Eny Urias enyur...@yahoo.com.br escreveu: De: Eny Urias enyur...@yahoo.com.br Assunto: Res: [delphi-br] Estrutura Padrão de Software Para: delphi-br@yahoogrupos.com.br Data: Terça-feira, 10 de Agosto de 2010, 18:51 Como vc trabalha numa aplicação MDI utilizando DataModule? Se o usuário quiser abrir dois formularios de clientes como vc faz? Não dá conflito já que os componentes de acesso aos dados estão no DM? -- Eny Trova Urias Somos o que repetitivamente fazemos, portanto, a excelência não é um feito, mas um hábito- Aristóteles De: Adriano de F. Trindade trind...@desbrava.com.br Para: delphi-br@yahoogrupos.com.br Enviadas: Segunda-feira, 9 de Agosto de 2010 19:03:05 Assunto: RES: [delphi-br] Estrutura Padrão de Software Não quero te desanimar, mas mostrar os problemas provoca a busca de soluções para eles, e com isso aprende-se. Pelo jeito você está meio “cru” no negócio, e a lógica, você até que está indo bem, considerando a herança dos formulários. O que falta, na real, é você fracionar estes seus casos de uso aí. Explico: DataSource, por exemplo, alguns formulários vão precisar de um, outros de 5 e outros de 20. Se você fazer no seu modelo primário um único DataSource, em cada formulário que você criar herdando este formulário, terá que adicionar mais DataSources. Mas, se você fizer o modelo com 10, aí você atende a maioria dos casos, e em raras oportunidades terás que adicionar mais data sources além desses 10 aí. Entendeu o exemplo? Eu quis dizer: projetar considerando o máximo de possibilidades para cada form, e não o mínimo. Certo? Agora esqueça esses data sources aí. Crie um único Data Module, com um nome bem curto (eu uso “DM”) e coloque todos seus componentes de acesso á dados lá: ClientDataSets, DataModules, DataSetProviders e por aí vai. Desta maneira, você não vai ter componentes de acesso á dados espalhados pelo seu projeto. Eu comecei há 5 anos atrás um sistema mais ou menos da maneira que você estava começando este. Começou com 34 tabelas e hoje tem 220 tabelas no BD. De todo o tempo de desenvolvimento, no mínimo 30% dele foi refazendo coisas que fiz sem considerar todas as possibilidades. Por exemplo: ao projetar um formulário para Notas Fiscais, você precisa de uma tabela para os dados da NF e outra para o detalhamento da NF, que são os produtos/serviços. Primeiro fiz com uma tabela para produtos e outra para serviços: tive que refazer para colocar produtos e serviços em uma única tabela. Alguns valores como frete e seguro iam no corpo da NF. Não, não dá certo, valores de frete e seguro tem que ser distribuídos pelos itens da NF para conseguir gerar a NF-e direito. No corpo da NF, só dados cadastrais, dados monetários tem que ser tudo nos itens. E tome refazer enormes partes do código. Minha dica pra ti é: vá para o Delphi por último. Faça funcionar no papel primeiro. Vai lidar com Notas Fiscais? Estude o lay-out da NFe e do SPED antes para saber de quais dados você precisará e modelar seu BD de acordo. Sugiro usar a padronização de nomes de campos que consta no lay-out da NF-e, vai tornar sua vida mais fácil no futuro. Vais trabalhar com ECF? Estude o manual do PAF-ECF. Vais gerar boletos para bancos? Estude a documentação sobre quais dados você precisa informar nos arquivos gerados para os bancos e use eles nas contas á pagar/receber. Quais impostos vais ter que informar? Campos no BD para cada um. É mais importante para seu projeto entrar nas empresas e ver como que todos trabalham, que informações um departamento precisa obter do outro, o rastreamento de quem fez o quê, o controle de acesso, permissões para os menus, acesso de vários usuários ao mesmo tempo... Depois que tiver tudo isso no papel, aí sim você vai pro Delphi. Porque sabendo isso tudo, aí você saberá quantos formulários vai precisar, quantos campos em cada formulário, quantos ClientDataSets... Bote a prancheta embaixo do braço, esqueça a “programação de software acadêmica” e disseque a prática das pessoas. Só depois você vai saber o quê precisa fazer no Delphi e quais problemas terá que solucionar DE VERDADE. Falou! De: delphi-br@yahoogrupos.com.br [mailto:delphi...@yahoogrupos.com.br] Em nome de Rodrigo Rossi Enviada em: segunda-feira, 9 de agosto de 2010 17:42 Para: delphi-br@yahoogrupos.com.br; n...@yahoogrupos.com.br Assunto: [delphi-br] Estrutura Padrão de Software Boa tarde. Estou desenvolvendo já faz uns 3 meses um software em Delphi 2010 para ERP, não é um ERP muito grande mas a idéia é atender vários ramos de atividade, é um projeto importantíssimo para min, este software estou
[delphi-br] QRAngledLabel
Olá a todos, alguem aqui usa ou já usou este componente ? preciso colocar um texto com varias linhas, mas o texto sai em uma linha só e com aqueles caracteres especiais, indicando a quebra. com o QRDBText ou QRLabel, fica normal, utilizando o WordWrap, porem este QRAngledLabel nao possui esta propriedade. Alguem já fez isso ? ps: Tem de ser esse componente, pois preciso do texto em vários ângulos. Obrigado. [As partes desta mensagem que não continham texto foram removidas]
Re: [delphi-br] Novo RAD Studio XE, trazendo Delphi XE, C++Builder XE, Delphi Prism XE e RadPHP
Show. Mas e quanto a cross-plataform? Em 10 de agosto de 2010 10:50, thevorte...@yahoo.com.br escreveu: Dia mestre, dia 17 vai ter outra mostra sobre automação e otimização e dia 24 sobre multi-tier / web e cloud. Acredito que tenha muita coisa nova, no site da embarcadero já tem uma área para o sneak previews http://www.embarcadero.com.br/rad-studio-xe-preview%20 Vamos esperar e torcer. Força a todos. José Ricardo Aviles. assinatura1 ( Tel.: 19 3868-7185 ( Cel.: 19 8173 0077 * E-mail: mailto:jravi...@stiware.com.br jraviles%40stiware.com.br jravi...@stiware.com.br jraviles%40stiware.com.br Skype: stiware De: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br [mailto: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br] Em nome de Marcelo Enviada em: terça-feira, 10 de agosto de 2010 09:40 Para: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br Assunto: Res: [delphi-br] Novo RAD Studio XE, trazendo Delphi XE, C++Builder XE, Delphi Prism XE e RadPHP O que tem de novo no delphi XE além da integração com o subversion e o diagrama de sequencia de classes no uml. De: Andreano Lanusse andreano.lanu...@embarcadero.comandreano.lanusse%40embarcadero.commailto: andreano.lanusse%40embarcadero.com andreano.lanusse%2540embarcadero.com Para: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.brmailto: delphi-br%40yahoogrupos.com.br delphi-br%2540yahoogrupos.com.br delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br mailto: delphi-br%40yahoogrupos.com.br delphi-br%2540yahoogrupos.com.br Enviadas: Terça-feira, 10 de Agosto de 2010 5:57:46 Assunto: [delphi-br] Novo RAD Studio XE, trazendo Delphi XE, C++Builder XE, Delphi Prism XE e RadPHP Amigos desenvolvedores já não é mais segredo. Delphi 2011 está chegando e se chama Delphi XE. Além do novo IDE para desenvolvimento PHP o RadPHP Mais informações em http://www.andreanolanusse.com/blogpt/rad-studio-xe-agora-com-delphi-xe-cbuilder-xe-delphi-prism-xe-e-radphp-xe/ -- Andreano Lanusse Technical Lead Evangelist, Developer Relations Embarcadero Technologies Blog: http://www.andreanolanusse.com Twitter: http://twitter.com/andreanolanusse CONFIDENTIALITY NOTICE: This email message is for the sole use of the intended recipient(s) and may contain confidential and privileged information. Any unauthorized review, use, disclosure or distribution is prohibited. If you are not the intended recipient, please contact the sender by reply email and destroy all copies of the original message. [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] -- Atenciosamente, Paulo Coutinho. Blog: www.prsolucoes.com/blog Site: www.prsolucoes.com Msn: pa...@prsolucoes.com Skype: paulo.prsolucoes Consultor Certificado Bindows [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