Versão atual:

Erro Log classe herdada com método ClassName

Estava desenvolvendo uma classe customizada herdando da classe padrão FWMBrowse, visando simplificar seu uso para minhas rotinas. Porém observei que caso eu crie um método ClassName(), que eu sempre crio por padrão em minhas classes o sistema passa a apresentar erros logs, quando eu não coloco esse método a classe funciona perfeitamente. O que poderia ser esse comportamento? Não seria recomendado ter esse método ClassName()?

O erro ocorre quando executa o comando tCXMBrowse():New() na função chamadora, e tanto faz se eu passo ou não um objeto como argumento.

#INCLUDE 'RWMake.ch'
#INCLUDE 'Totvs.ch'
#Include "tlpp-object.th"

Class tCXMBrowse From FWMBrowse

    PUBLIC DATA _oDlg                    AS Object

    PUBLIC METHOD New() Constructor
    PUBLIC METHOD ClassName()        AS Character

EndClass

Method New(oDlg) Class tCXMBrowse

    ::cClassName    := 'tCXMBrowse'
    ::_oDlg            := oDlg

    _Super:New(::_oDlg)

Return Self

Method ClassName()        Class tCXMBrowse

Return ::cClassName

Erro log gerado:

THREAD ERROR ([17368], cirilorocha, NBK061)   02/02/2023 07:16:00
variable is not an object  on FWFORMBROWSE:SETOWNER(FWFORMBROWSE.PRW) 30/12/2022 14:25:06 line : 1698

[TOTVS build: 7.00.210324P-20221215]
Called from FWBROWSE:NEW(FWBROWSE.PRW) 30/12/2022 14:25:06 line : 812
Called from FWFORMBROWSE:NEW(FWFORMBROWSE.PRW) 30/12/2022 14:25:06 line : 212
Called from FWMBROWSE:NEW(FWMBROWSE.PRW) 30/12/2022 14:25:06 line : 147
Called from TCXMBROWSE:NEW(TCXMBROWSE.TLPP) 02/02/2023 07:15:40 line : 24
Called from U_CXTESTE(CXTESTE.TLPP) 02/02/2023 06:48:38 line : 5

Versão (1):

Ver a versão formatada

Erro Log classe herdada com método ClassName

Comentário

new question