Ir para conteúdo
  • Cadastre-se

dev botao

Publicação das propriedades do Sacado e do Titulo


  • Este tópico foi criado há 1830 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Bom dia

Gostaria, se possível, a publicação das propriedades das classes TACBrSacado e TACBrTitulo, para usar com RTTI.

Hoje, sempre que atualizo os fontes mudo do public para published para que meu fonte funcione corretamente.

Agradeço muito 

Editado por Fabiano Oliveira de Castro
Titulo incorreto
Link para o comentário
Compartilhar em outros sites

Bom dia

Não, somente propriedades "publicadas"

Segue um link sobre

https://www.devmedia.com.br/rtti-no-dia-a-dia-artigo-clube-delphi-113/15245

"Este tipo é um ponteiro para TPropInfo, que é uma estrutura de dados que armazena uma tabela de informações sobre propriedades publicadas de qualquer tipo de classe que seja derivada de TPersistent."

Obrigado

Link para o comentário
Compartilhar em outros sites

  • Moderadores

Essas mudanças ocorreram com uma refactoring que o Elton está fazendo usando o FixInsigth da TMS

acho que ele é indicado pra falar algo mais

 

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
 

 

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Qual necessidade real disso ? Poderia dar um exemplo prático?

Essas classes nao foram projetadas para essa finalidade...

TPersistent consome muito mais memória do que TObject é se uso indiscriminado não é recomendado 

  • Curtir 1
Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

Cara, não sei se me expressei corretamente, segue uma imagem, do arquivo original e do meu, caso houver problema, blz, eu mudo meu código pra não usar o RTTI, que pra mim quando fiz se tornou útil, pois pego os campos do dataset com o mesmo nome das propriedades e alimento tudo num "for".

image.thumb.png.be625ebc3d2e3da04c095da8cf411dda.png

Uso assim

image.thumb.png.3e1d0628f0587740d0f7a9c60fe01b03.png

Link para o comentário
Compartilhar em outros sites

  • Consultores

Olá Fabiano,

   Vamos por partes.

Em 10/04/2019 at 10:35, Fabiano Oliveira de Castro disse:

Mas isso já acontece a tempos, não sei quando, mas faz muito tempo tenho que publicar as propriedades pra poder acessar via rtti

   Realmente. Eu fui até conferir, mas essas classes específicas e suas propriedades não foram afetadas pelos ajustes recentes. Pelo menos desde 2015 elas já estavam desse modo.

   Eu entendi que você gostaria que o projeto publicasse essas propriedades. Até discutimos sobre essa possibilidade. Mas isso é desnecessário.

   Desde o Delphi 2010 quando a RTTI foi reescrita, é possível acessar as propriedades que não são published. É por isso e por outros motivos, (cof, cof, generics, cof), que frameworks avançados como o Spring4D e DSharp funcionam apenas com o Delphi 2010 em diante.

   Colocar essas propriedades como published gera um warning no compilador que queremos evitar:

W1055 PUBLISHED caused RTTI ($M+) to be added to type 'TACBrSacado'

   Mas como as propriedades estão acessíveis por RTTI, você não está sem saída.

1 hora atrás, Fabiano Oliveira de Castro disse:

eu mudo meu código pra não usar o RTTI,

   Com eu disse acima, você não precisa mudar seu código para não usar o RTTI. Talvez você precise usar o seu código para acessar o RTTI de forma atualizada.

   Ou talvez você deva verificar algum framework para fazer isso. Mas enfim, isso é uma decisão de acordo com o seu projeto.

   Veja nesse artigo em português como a RTTI pode acessar propriedades não published. Há vários outros artigos na net que estão em inglês. Eu gosto dessa série aqui porque ele segue uma linha de raciocínio e dessa coleção de posts que fala de assuntos diferentes.  

1 hora atrás, Fabiano Oliveira de Castro disse:

que pra mim quando fiz se tornou útil, pois pego os campos do dataset com o mesmo nome das propriedades e alimento tudo num "for"

1 hora atrás, Fabiano Oliveira de Castro disse:

Uso assim

image.thumb.png.3e1d0628f0587740d0f7a9c60fe01b03.png

Achei interessante o que você fez. Mas não é o que eu recomendaria de uso do RTTI no entanto. Tenho impressão que, a menos que você tenha um teste unitário para isso, se alguém alterar um campo do Dataset você só perceberia isso rodando o programa. Acho melhor quando esse tipo de problema gere erro na compilação.

Mas enfim, essa é mais uma opinião pessoal. Bom trabalho por aí.

 

  • Curtir 1

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Link para o comentário
Compartilhar em outros sites

  • Consultores
17 horas atrás, Fabiano Oliveira de Castro disse:

uso bastante Pascal Script

Legal. Não vejo muitos projetos usando. Sugiro avaliar o uso da DWScript.

https://www.delphitools.info/dwscript/

Suporta classes, interfaces, records, type inference, meta-classes, classes parciais, “case of” and “in […]” de formas generalizadas, e muito mais...

 

  • Curtir 1

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Link para o comentário
Compartilhar em outros sites

1 hora atrás, EMBarbosa disse:

Legal. Não vejo muitos projetos usando. Sugiro avaliar o uso da DWScript.

https://www.delphitools.info/dwscript/

Suporta classes, interfaces, records, type inference, meta-classes, classes parciais, “case of” and “in […]” de formas generalizadas, e muito mais...

 

Muito interessante, vou dar uma olhada, obrigado pela sugestão ?

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 1830 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...