Olá, recentemente precisei consultar a documentação do uso de Interface com TLPP, porém pelo que vi agora não está mais disponível.
Essa feature foi removida?
Olá, recentemente precisei consultar a documentação do uso de Interface com TLPP, porém pelo que vi agora não está mais disponível.
Essa feature foi removida?
Gabriel, acredito que ainda esteja funcionando.
Testei agora mesmo, e consegui utilizar, seguinto o exemplo do blog.
Observação importante
Mudar onde está extends
para implements
class UsandoInterface implements MinhaInterface
Aí aponta certinho ao compilar:
Error in SampleInterface.tlpp C9907 Method TESTANDO defined in interface and not defined in class USANDOINTERFACE
Existe algum link para Documentação de referência, TDN ou noutro site?
— Denis Amaral Galvani 27 de Nov de 2020Olá Denis. A única documentação que encontrei foi essa do Blog mesmo. No post anterior o Daniel explicou que "a documentação foi fechada", provavelmente estão ajustando ainda, e não está oficialmente liberado para fora.
Porém, estou usando em várias customizações com sucesso. Como ele cita no Blog, coloca a interface em um arquivo de include, e utilizo ela através da palavra reservada "implements".
Detalhe, tem que chamar também o #Include "tlpp-object.th"
Não repara pois o VsCode ainda não identifica a palavra "implements", mas tá funcionando.
— Thiago Gonçalves Mota 27 de Nov de 2020Se você for experimentar, primeiro tenta criar uma classe sem implementar os métodos da interface, que vc vai ver o erro de compilação.
Depois implementa certinho, e usa o CRL+SHIFT+F9 pra gerar o PPO, e você vai ver a conversão para as funções _ObjNewInterface e _ObjEndInterface.
Pelo que percebi, a interface não compila nada no RPO, ela só informa o compilador que do formato da classe mesmo, por isso tem que colocar os includes em todos os fontes que forem usá-la.
— Thiago Gonçalves Mota 27 de Nov de 2020Tentei fazer o procedimento e ao compilar o vscode gera a mensagem "Syntax Error compile [3,1]".
Teria como colocar um exemplo funcionam ?
David, a documentação da interface foi fechada: https://tdn.totvs.com/display/tec/Interface , não temos maiores informações sobre o que aconteceu.
— Daniel Mendes 11 de Dec de 2020Olá.
O uso de Interface continua com o este problema?
Pois estou tentando implementar na minha classe é recebo o mesmo erro Syntax Error compile.
A documentação foi fechada: https://tdn.totvs.com/display/tec/Interface
— Daniel Mendes 20 de Nov de 2020@Daniel Mendes a URL passada exige autenticação, não é pública.
— Denis Amaral Galvani 27 de Nov de 2020Pois é, essa documentação mesmo que eu estava tentando acessar.
— Gabriel Alencar 30 de Nov de 2020Ela não está acessível mesmo, coloquei pra exemplificar que alguma coisa aconteceu em relação a essa feature, porém não tenho mais informações.
— Daniel Mendes 11 de Dec de 2020