Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Classe disponibilizada para a construção do Objeto de Negócio para integração com o TReports, sendo possível utilizá-la como um facilitador para geração de relatórios.

Utilização da

...

classe IntegratedProvider

A nova classe criada em TL++ possui Namespace que deverá ser herdado no novo fonte.

...

Neste método serão criados os objetos oData e oSchema que serão utilizados para a montagem do Objeto de Negócio.

...

.

Sintaxe: New() → objeto self

GetSchema()

Retorna a Estrutura de dados.

Informações

Objeto oData

O objeto oData terá sua inicialização feita no método New() da IntegratedProvider para a montagem do Objeto de Negócio, serão feitos tratamentos internos neste objeto.

Ele possui apenas um método para uso externo, usado em conjunto com os métodos da nova classe, sendo ele:

Método AliasToData() - Método do objeto oData que converte o alias recebido em dados para o TReports.

Exemplos de uso estarão abaixo nos métodos criados para a classe IntegratedProvider.

title
Informações

Objeto oSchema

O objeto oSchema terá sua inicialização feita no método New() da IntegratedProvider para a montagem do Objeto de Negócio, serão feitos tratamentos internos neste objeto.

Ele possui apenas dois métodos para uso externo, usado em conjunto com os métodos da nova classe, sendo eles:

Método AliasToSchema() - Método

Informações
titleMétodo AliasToSchema()
Informações

self:oSchema:AliasToSchema() - Método do objeto oSchema que transforma o alias em um schema, todos os campos serão enviados.

Método disponível para uso externo, outros tratamentos do objeto oSchema é feito internamente.

Exemplo de uso:

Bloco de código
method getSchema() as object class SEDTReportsBusinessObject
	self:oSchema:aliasToSchema("SED") //Alias utilizado para retorno dos dados
return self:oSchema


Método AddProperty()

self:oSchema:AddProperty()  - Método do objeto oSchema que adiciona uma propriedade ao schema.

Método disponível para uso externo, outros tratamentos do objeto oSchema é feito internamente.

Parâmetros:

NomeTipoObrigatórioDefaultDescrição
cNameCaracterX
Nome da propriedade
cDescriptionCaracterX
Descrição da propriedade
cTypeCaracterX
Tipo da propriedade
cRealNameCaracterX
Nome da propriedade no Protheus (Nome real do campo da tabela)

Exemplos de uso estarão abaixo nos métodos criados para a classe IntegratedProvider.

GetSchema()

...

Retorna a Estrutura de dados.

Exemplos de uso:

Bloco de código
method getSchema() as object class SEDTReportsBusinessObject
	self:oSchema:aliasToSchema("SED") //Alias utilizado para retorno dos dados
return self:oSchema

...

Bloco de código
method getSchema() as object class SEDTReportsBusinessObject
	self:oSchema:addProperty("Descrição", "Descrição da Natureza", "C", "ED_DESCRIC")
	self:oSchema:addProperty("Código", "Código da Natureza", "C", "ED_CODIGO")
return self:oSchema

...

Nome

TipoObrigatórioDefaultDescrição
nPageNumérico
Página atualNúmero da página atual
oFilterObjeto

Objeto do Filtro

...

titleMétodo AliasToData()

self:oSchema:AliasToData() - Método do objeto oData que converte o alias recebido em dados para o TReports.

...

Exemplo de uso:

Bloco de código
method getData(nPage as numeric, oFilter as object) as object class SEDTReportsBusinessObject
	// Objeto de filtro nulo pois o recurso não se encontra ativo
	self:oData:aliasToData("SED", oFilter)
return self:oData

...

Define o nome do relatório.

Exemplo de uso:

Bloco de código
SetDisplayName("Naturezas")

...

NomeTipoObrigatórioDefaultDescrição
cAreaCaracterX
Nome da área do relatório

Exemplo de uso:

Bloco de código
AppendArea("Financeiro")

...