Saltar para o conteúdo principal
Versão: 20 R8 BETA

Call chain

Call chain : Collection

ParâmetroTipoDescrição
ResultadoCollectionColeção de objetos descrevendo a cadeia de método de chamada dentro de um processo

Descrição

O comando Call chain devolve uma coleção de objetos que descrevem cada passo da cadeia de chamadas ao método dentro do processo atual. Oferece a mesma informação que a janela do Depurador. Tem a vantagem adicional de poder ser executado desde qualquer ambiente 4D, incluido o modo compilado.

O comando facilita a depuração ao permitir a identificação de método chamado, o componente que o chamou e o número de linha onde foi realizada a chamada. Cada objeto na coleção devolvida contém as propriedades abaixo:

PropriedadeTipoDescriçãoExemplo
databasetextoNome do banco de dados que chama ao método (para distinguir métodos locais e métodos componentes)"database":"contactInfo"
lineentero largoNúmero de linha da chamada ao método"line":6
nametextoNome de método chamado"name":"On Load"
typetextoTipo de método:
  • "projectMethod"
  • "formObjectMethod",
  • "formmethod"
  • "databaseMethod"
  • "triggerMethod"
  • "executeOnServer" (quando chamara um método projeto com Executar no atributo servidor.)
  • "executeFormula" (quando executar uma fórmula através de PROCESS 4D TAGS ou a avaliação de uma fórmula em um documento 4D Write Pro.)
  • "formMethod"
  • "type":"formMethod"

    Nota: para que este comando possa operar em modo compilado, a verificação de Range não deve estar desabilitada. Ver Controle de execução.

    Exemplo

    O código abaixo devolve uma coleção de objetos que contenham informação sobre a cadeia de chamadas ao método:

     var $currentCallChain : Collection
     $currentCallChain:=Call chain

    Se for executado um un método projeto, a string de chamadas poderia conter (por exemplo):

    [   {    "type":"projectMethod",    "name":"detailForm",    "line":1,    "database":"myDatabase"   }]

    Se for executado um método de objeto de formulário, a cadeia de chamadas poderia conter (por exemplo):

    [   {    "type":"formObjectMethod",    "name":"detailForm.Button",    "line":1,    "database":"myDatabase"   },   {    "type":"formMethod",    "name”:"detailForm",    "line":2,    "database":"myDatabase"   },   {    "type":"projectMethod",    "name”:"showDetailForm",    "line":2,    "database":"myDatabase”   }]

    Propriedades

    Número do comando1662
    Thread-seguro