Você está na página 1de 31

Páginas / … /

Base de Conhecimento

FwBrowse
Tempo aproximado para leitura: superior a 15 minutos

Fornece um objeto do tipo grid que permite a exibição de dados do tipo array, texto, tabela e query.

Hierarquia

                 TGrid

Construtores

                  New

Construtor da classe

Sintaxe

FWBrowse(): New ( [ oOwner] ) --> oSelf

Parâmetros

Nome Tipo Descrição Obrigatório Referência

oOwner Objeto Objeto proprietário


Retorno
oSelf
()
Objeto FWBrowse

Exemplos
oBrowse := FWBrowse():New()

Métodos

 Activate

Ativação da classe.

Sintaxe

FWBrowse(): Activate ( [ lFWBrowse] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

lFWBrowse Lógico Indica se a chamada foi acionada pela classe FWBROWSE


Exemplos
oBrowse:Activate()

AddBrwRelation

Permite adicionar a informacao de um browse relacionado.

Sintaxe

FWBrowse(): AddBrwRelation ( < oBrwRel> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

oBrwRel Objeto Browse que se deseja informar como relacionado X

AddColumn
Adiciona uma coluna no Browse em tempo de execução.

Sintaxe

FWBrowse(): AddColumn ( < aColumn> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

aColumn Array of Record Indica o array com informações para criação da coluna. X

aColumn Estrutura da Coluna


[n][01] Título da coluna

[n][02] Code-Block de carga dos dados

[n][03] Tipo de dados

[n][04] Máscara

[n][05] Alinhamento (0=Centralizado, 1=Esquerda ou 2=Direita)

[n][06] Tamanho

[n][07] Decimal

[n][08] Indica se permite a edição

[n][09] Code-Block de validação da coluna após a edição


[n][10] Indica se exibe imagem

[n][11] Code-Block de execução do duplo clique

[n][12] Variável a ser utilizada na edição (ReadVar)

[n][13] Code-Block de execução do clique no header

[n][14] Indica se a coluna está deletada

[n][15] Indica se a coluna será exibida nos detalhes do Browse

[n][16] Opções de carga dos dados (Ex: 1=Sim, 2=Não)

[n][17] Id da coluna
[n][18] Indica se a coluna é virtual

 AddCustomConfig

Permite adicionar uma configuração customizada na opção de configuração do Browse.

Sintaxe

FWBrowse(): AddCustomConfig ( < cTitle>, < bView>, [ bSave] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

cTitle Caracter Título a ser exibido na configuração. X

bView Bloco de código Code-Block de carga da janela de configuração X

bSave Bloco de código Code-Block de gravação das configurações efetuadas pelo usuário.

Exemplos
oBrowse:AddCustomConfig("Filial",{|o| MBrFilialCfg(o,Self) }, { || MBrSaveFilCfg(Self) } )

AddFilter

Permite adicionar um filtro na lista de opções de filtros do Browse. 

Sintaxe

FWBrowse(): AddFilter ( < cFilter>, < cExpAdvPL>, [ lNoCheck], [ lSelected], [ cAlias], [ lFilterAsk], [ aFilParser], [ cID] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

cFilter Caracter Título que será exibido no filtro X

cExpAdvPL Caracter Expressão do filtro em formato AdvPL. X

lNoCheck Lógico Indica que o filtro não poderá ser marcado/desmarcado.


lSelected Lógico Indica que o filtro deverá ser apresentado como marcado/desmarcado.

cAlias Caracter Indica que o filtro é de relacionamento entre as tabelas e a expressão AdvPL deve ser informado obrigatoriamente com

expressões SQL.

lFilterAsk Lógico Não suportado


aFilParser Array of Não suportado


Record

cID Caracter Nome do identificador do filtro


Exemplos
oBrowse:AddFilter(cTitle,xCondition)

Observação
Não recomendamos o uso dos filtros da classe FwBrowse com Browses do tipo Array ( DataArray() == .T. )

AddLegend

Permite adicionar legendas no Browse.

Sintaxe

FWBrowse(): AddLegend ( < xCondition>, < cColor>, <cTitle>, <cID>, <lFilter>) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

xCondition Expressão Expressão AdvPL ou Code-Block com a regra da legenda X

cColor Caracter Cor que identifica a regra X

cTitle Caracter Título da legenda, utilizado na janela de visualização das legendas


cID Caracter Id

lFilter Lógico Indica se deve ser exibido filtro da legenda


Exemplos
oBrowse:AddLegend(xCondition,cColor,cTitle)

AddLine

Permite adicionar um linha no Browse.

Sintaxe

FWBrowse(): AddLine ( ) -->

AddMarkColumns

Permite adicionar uma coluna com a opção de marca e desmarca.

Sintaxe

FWBrowse(): AddMarkColumns ( < bMark>, [ bLDblClick], [ bHeaderClick] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

bMark Bloco de código Code-Block com a regra e deverá retornar a imagem referente a marcado/desmarcado. X

bLDblClick Bloco de código Code-Block com a execução do duplo clique na coluna.


bHeaderClick Bloco de código Code-Block com a execução do clique no header da coluna.


AddStatusColumns

Permite adicionar uma coluna de status.

Sintaxe

FWBrowse(): AddStatusColumns ( < bStatus>, [ bLDblClick] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

bStatus Bloco de código Code-Block com a regra e deverá retornar a imagem referente ao status. X

bLDblClick Bloco de código Code-Block com a execução do duplo clique na coluna.


   Alias
Retorna o Alias utilizado no Browse.

Sintaxe

FWBrowse(): Alias ( ) --> cAlias


Retorno
cAlias
(caracter)
Alias utilizado no Browse.

AllOk

Executa o Code-Block definido no método SetAllOK(bAllOK).

Sintaxe

FWBrowse(): AllOk ( ) --> lReturn


Retorno
lReturn
(logico)
Retorno da execução do Code-Block.

At

Retorna a posição atual do registro.

Sintaxe

FWBrowse(): At ( ) --> nAt


Retorno
nAt
()
Posição atual do registro.

Browse

Retorna o componente Browse (TGRID).

Sintaxe

FWBrowse(): Browse ( ) --> oBrowse


Retorno
oBrowse
()
Objeto Browse (TGRID).

ClassName

Retorna o nome da classe (FWBROWSE).

Sintaxe

FWBrowse(): ClassName ( ) --> cClassName


Retorno
cClassName
(caracter)
Nome da classe.

CleanExFilter

Executa a limpeza dos filtros estendidos realizados no Browse.

Sintaxe

FWBrowse(): CleanExFilter ( ) -->

            CleanFilter

Realizada a limpeza dos filtros utilizados no Browse.

Sintaxe

FWBrowse(): CleanFilter ( ) -->

CleanProfile

Elimina as configurações realizadas no Browse do perfil do usuário.

Sintaxe

FWBrowse(): CleanProfile ( ) -->


            ColPos

Retorna a coluna posicionada no Browse

Sintaxe

FWBrowse(): ColPos ( [ lDeleted] ) --> nColPos

Parâmetros

Nome Tipo Descrição Obrigatório Referência

lDeleted Lógico Indica que deve considerar as colunas deletadas.


Retorno
nColPos
()
Coluna posicionada.

Data

Retorna o objeto de dados no Browse.

Sintaxe

FWBrowse(): Data ( ) --> oData


Retorno
oData
()
Retorna o objeto de dados do Browse

DataArray

Retorna se o dados apresentados no Browse é de Array.

Sintaxe

FWBrowse(): DataArray ( ) --> lDataArray


Retorno
lDataArray
(logico)
Indica que o Browse utiliza informações de um array.

            DataQuery

Retorna se o dados apresentados no Browse é de Query.

Sintaxe

FWBrowse(): DataQuery ( ) --> lDataQuery


Retorno
lDataQuery
(logico)
Indica que o Browse utiliza informações de uma Query.

            DataTable

Retorna se o dados apresentados no Browse é de Tabela.

Sintaxe

FWBrowse(): DataTable ( ) --> lDataTable


Retorno
lDataTable
(logico)
Indica que o Browse utiliza informações de uma Tabela.

            DataText

Retorna se o dados apresentados no Browse é de Texto.

Sintaxe

FWBrowse(): DataText ( ) --> lDataText


Retorno
lDataText
(logico)
Indica que o Browse utiliza informações de um arquivo Texto.

            DBFFilter
Indica se utiliza filtro para tabelas CODEBASE.

Sintaxe

FWBrowse(): DBFFilter ( ) --> lDBFFilter


Retorno
lDBFFilter
(logico)
Indica se utiliza filtro para tabelas CODEBASE.

            DeActivate

Método de destruição da classe.

Sintaxe

FWBrowse(): DeActivate ( [ lFreeChildren] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

lFreeChildren Lógico Indica se é necessário limpar a classe proprietária. (oOwner)


            Default

Compatibilização com a MBrowse antiga.

Sintaxe

FWBrowse(): Default ( ) -->

            DelColumn

Indica que uma determinada coluna está deletada.

Sintaxe

FWBrowse(): DelColumn ( < nColumn> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

nColumn Numérico Indica a coluna que será marcada como deletada. X

            DeleteFilter

Permite realizar a exclusão de filtros.

Sintaxe

FWBrowse(): DeleteFilter ( [ cID] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

cID Caracter Identificador do Filtro


             DelLine

Executa o Code-Block, definido no método SetDelete(lDelete,bDelete), para deleção de uma linha no Browse.

Sintaxe

FWBrowse(): DelLine ( ) -->

            DelOk

Executa o Code-Block, definido no método SetDelOk(bDelOK), para validar a deleção de uma linha no Browse.

Sintaxe

FWBrowse(): DelOk ( ) --> lReturn


Retorno
lReturn
            Disable

Desabilita a utilização do Browse.

Sintaxe

FWBrowse(): Disable ( ) -->

            DisableConfig

Desabilita a utilização das configurações do Browse.

Sintaxe

FWBrowse(): DisableConfig ( ) -->

            DisableFilter

Desabilita a utilização do filtro no Browse.                                                                                                                  

Sintaxe

FWBrowse(): DisableFilter ( ) -->

            DisableLocate

Desabilita a utilização do localizador de registro no Browse.

Sintaxe

FWBrowse(): DisableLocate ( ) -->


DisableReport
Desabilita a impressão das informações disponíveis no Browse.                                                                                        

Sintaxe
FWBrowse(): DisableLocate ( ) -->

            DisableSaveConfig

Desabilita a gravação das configurações realizadas no Browse.                                                                                         

Sintaxe

FWBrowse(): DisableSaveConfig ( ) -->

            DisableSeek

Desabilita a utilização da pesquisa no Browse.                                                                                                             

Sintaxe

FWBrowse(): DisableSeek ( ) -->

            Enable

Habilita a utilização do Browse.

Sintaxe

FWBrowse(): Enable ( ) -->                                                                                                                                                                                                             

            ExecuteFilter
Aplica os filtros realizados no Browse.

Sintaxe

FWBrowse(): ExecuteFilter ( [ lBrwUpdate] ) -->                                                                                                                                                                                

Parâmetros

Nome Tipo Descrição Obrigatório Referência

lBrwUpdate Lógico Atualiza o Browse e posiciona no primeiro registro.

Observação

Não recomendamos o uso dos filtros da classe FwBrowse com Browses do tipo Array ( DataArray() == .T. )

            Filtrate

Indica se o Browse está filtrado.                                                                                                                             

Sintaxe

FWBrowse(): Filtrate ( ) --> lFiltrate


Retorno
lFiltrate

(logico)
Indica se o Browse está filtrado.

            FWFilter

Retorna o objeto FWFilter.

Sintaxe

FWBrowse(): FWFilter ( ) --> oFWFilter                                                                                                                                                                                            


Retorno
oFWFilter

()
Retorna o objeto FWFilter.

            GetBackColor

Retorna a cor de fundo do Browse.

Sintaxe

FWBrowse(): GetBackColor ( ) --> nBackColor                                                                                                                                                                                   


Retorno
nBackColor

()
Retorna a cor de fundo do Browse

            GetClrAlterRow

Retorna a cor alternada do Browse.

Sintaxe

FWBrowse(): GetClrAlterRow ( ) --> nClrAlterRow                                                                                                                                                                              


Retorno
nClrAlterRow

()
Retorna a cor alternada do Browse

            GetColumn
Retorno um objeto tipo FWBrwColumn da coluna passada.                                                                                              

Sintaxe

FWBrowse(): GetColumn ([nCol])


Retorno
oCol

Retorna o objeto da coluna posicionada.

            GetDescription

Retorna a descrição do Browse.

Sintaxe

FWBrowse(): GetDescription ( ) --> cDescription                                                                                                                                                                               


Retorno 
cDescription

(caracter)
Retorna a descrição do Browse

            GetFilterDefault

Retorna o filtro padrão do Browse

Sintaxe

FWBrowse(): GetFilterDefault ( ) --> cFilterDefault                                                                                                                                                                            


Retorno
cFilterDefault

(caracter)
Retorna o filtro padrão do Browse.

            GetForeColor

Retorna a cor da fonte do Browse.

Sintaxe

FWBrowse(): GetForeColor ( ) --> cForeColor                                                                                                                                                                                   


Retorno
cForeColor

(caracter)
Retorna a cor da fonte do Browse.

            GetObjMark

Retorna o objeto FWMARKBROWSE utilizado na passagem de parâmetros na execução das rotinas na FWFORMBROWSE;                     

Sintaxe

FWBrowse(): GetObjMark ( ) --> oObjMark


Retorno
oObjMark

()
Indica o objeto FWMARKBROWSE

GetProfileID

Retorna o identificador do Browse utiliza na gravação das configurações no profile do usuário. Deve ser utilizado quando existir mais de um Browse na
rotina.

Sintaxe

FWBrowse(): GetProfileID ( ) --> cProfileID


Retorno
cProfileID

(caracter)
Identificador do Browse
GetQuery

Retorna a Query que esta sendo utilizada no Browse.                                                                                                     

Sintaxe
FWBrowse(): GetQuery ( ) --> cQuery
Retorno
cQuery

(caracter)
Indica a Query para a criação do Browse.

GoBottom

Posiciona no último registro do Browse.                                                                                                                    

Sintaxe

FWBrowse(): GoBottom ( [ lCallRefresh] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

lCallRefresh Lógico Indica que foi chamado através do método Refresh().

GoColumn

Posiciona na coluna desejada.                                                                                                                               

Sintaxe

FWBrowse(): GoColumn ( [ nColumn] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

nColumn Numérico Indica a coluna que deseja posicionar.

GoDown

Salta uma ou mais linhas para baixo do item posicionado.                                                                                                


Sintaxe

FWBrowse(): GoDown ( [ nOffSet], [ lReport] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

nOffSet Numérico Indica a quantidade de linhas a serem saltadas.

lReport Lógico Indica se é impressão dos itens do Browse.

GoPgDown
Salta uma página para baixo do item posicionado.                                                                                                         

Sintaxe

FWBrowse(): GoPgDown ( ) -->


GoPgUp
Salta uma página para cima do item posicionado.

Sintaxe
FWBrowse(): GoPgUp ( ) -->

GoTo

Posiciona em um determinado registro do Browse.                                                                                                        

Sintaxe

FWBrowse(): GoTo ( < nGoto>, [ lRefresh] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

nGoto Numérico Indica o item que deverá ser posicionado. X

lRefresh Lógico Indica se deverá forçar a atualização do Browse.

GoTop

Posiciona no primeiro registro do Browse.                                                                                                                 

Sintaxe

FWBrowse(): GoTop ( [ lForce] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

lForce Lógico Indica que deverá forçar o posicionamento.

GoUp

Salta uma ou mais linhas para cima do item posicionado.                                                                                                

Sintaxe

FWBrowse(): GoUp ( [ nOffSet] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

nOffSet Numérico Indica a quantidade de linhas a serem saltadas.

Hide

Permite tornar o Browse invisível                                                                                                                           

Sintaxe

FWBrowse(): Hide ( ) -->

LineOk
Executa o Code-Block, definido no método SetLineOk(bLineOk), para validação da linha posicionada.                                              

Sintaxe

FWBrowse(): LineOk ( ) --> lRet


Retorno
lRet

(logico)
Indica se a linha é válida.

LineRefresh

Executa a atualização das informações de uma determinada linha do Browse.                                                                         

Sintaxe

FWBrowse(): LineRefresh ( [ nAt] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

nAt Numérico Indica a linha que será atualizada.

Observação:

O parâmetro nAt que refere-se a linha, começa em zero, ele índice é enviado para o método TGrid:SetRowData do binário.

LogicLen

Retorna a quantidade de registros disponíveis para o browse.                                                                                           

Sintaxe

FWBrowse(): LogicLen ( ) --> nLogicLen


Retorno
nLogicLen

()
Indica a quantidade de registros disponíveis.Quando o Browse for de tabela ou Query será retornado o último registro para a orderm selecionada.

ObligateFilter

Retorna se a selecão de um filtro é obrigatório para a apresentação do browse.                                                                       

Sintaxe

FWBrowse(): ObligateFilter ( ) --> lObligateFilter


Retorno
lObligateFilter

(logico)
Indica se a selecão de um filtro é obrigatório para a apresentação do browse

Observação

Não recomendamos o uso dos filtros da classe FwBrowse com Browses do tipo Array ( DataArray() == .T. )

OptionConfig

Indica se a opção de configuração do Browse está habilitada.                                                                                           

Sintaxe

FWBrowse(): OptionConfig ( ) --> lOptionConfig


Retorno
lOptionConfig

(logico)
Indica se a opção de configuração está habilitada.

OptionReport
Indica se a opção de impressão das informações do Browse está habilitada.                                                                           

Sintaxe

FWBrowse(): OptionReport ( ) --> lOptionReport


Retorno
lOptionReport

(logico)
Indica se a opção de impressão está habilitada.

Refresh

Executa a atualização das informações no Browse.                                                                                                        

Sintaxe

FWBrowse(): Refresh ( [ lGoTop] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

lGoTop Lógico Indica que deverá ser posicionado no primeiro registro do Browse.

Report

Executa a impressão das informações do Browse.                                                                                                        

Sintaxe

FWBrowse(): Report ( ) -->

Reset

Compatibilidade com o Browse antigo.                                                                                                                     

Sintaxe

FWBrowse(): Reset ( ) -->

ResetLen

Compatibilidade com o Browse antigo.                                                                                                                     

Sintaxe

FWBrowse(): ResetLen ( ) -->

SetAddLine

Indica a Code-Block executado para adicionar linha no browse.                                                                                          

Sintaxe

FWBrowse(): SetAddLine ( < bAdd> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

bAdd Bloco de código Indica a Code-Block executado para adicionar linha no browse. X

SetAfterAddLine
Indica o Code-Block que será executado após a inclusão de uma linha.                                                                                 

Sintaxe

FWBrowse(): SetAfterAddLine ( < bAfterAddLine> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

bAfterAddLine Bloco de código Code-Block a ser executado após a inclusão de uma linha. X

SetAlias

Indica o alias da tabela que será utilizada no Browse.                                                                                                     

Sintaxe

FWBrowse(): SetAlias ( < cAlias> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

cAlias Caracter Indica o alias da tabela X

           SetAllOk

Indica o Code-Block executado para validar todos itens do Browse.                                                                                     

Sintaxe

FWBrowse(): SetAllOk ( < bAllOk> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

bAllOk Bloco de código Code-Block para validar todos itens do Browse. X

SetArray

Indica o array utilizado para apresentação dos dados no Browse.                                                                                       

Sintaxe

FWBrowse(): SetArray ( < aArray> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

aArray Array of Record Array utilizado para apresentação dos dados no Browse. X

SetBackColor
Indica a cor de fundo do Browse.                                                                                                                           

Sintaxe

FWBrowse(): SetBackColor ( < nBackColor> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

nBackColor Numérico Cor de fundo do Browse. X

SetBlkBackColor

Indica a cor de fundo para a linha atual.                                                                                                                    

Sintaxe

FWBrowse(): SetBlkBackColor ( < bBackColor> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

bBackColor Bloco de código Codigo de bloco que retorna a cor de fonte para a linha atual. X

SetBlkColor

Indica a cor de fonte para a linha atual.                                                                                                                     

Sintaxe

FWBrowse(): SetBlkColor ( < bBlkColor> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

bBlkColor Bloco de código Codigo de bloco que retorna a cor de fonte para a linha atual. X

SetChange

Indica a Code-Block executado após a mudança de uma linha.                                                                                           

Sintaxe

FWBrowse(): SetChange ( < bChange> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

bChange Bloco de código Code-Block executado após a mudança de uma linha. X

SetClrAlterRow
Indica a cor alternada do Browse.                                                                                                                            

Sintaxe

FWBrowse(): SetClrAlterRow ( < nClrAlterRow> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

nClrAlterRow Numérico Indica a cor de alternada do Browse. X

SetDataArray

Indica que o Browse exibe dados através de um array.                                                                                                   

Sintaxe

FWBrowse(): SetDataArray ( ) -->

Observação

Não recomendamos o uso dos filtros da classe FwBrowse com Browses do tipo Array ( DataArray() == .T. )

SetDataQuery

Indica que o Browse exibe dados através de uma Query, porém, a Query cria um arquivo temporário atualizando de acordo com a demanda.  

Sintaxe

FWBrowse(): SetDataQuery ( ) -->

SetDataTable

Indica que o Browse exibe dados através de uma tabela.                                                                                                 

Sintaxe

FWBrowse(): SetDataTable ( ) -->

SetDataText

Indica que o Browse exibe dados através de um arquivo texto.                                                                                           

Sintaxe

FWBrowse(): SetDataText ( ) -->

SetDelete

Indica que o usuário pode excluir linhas no Browse.                                                                                                      

Sintaxe

FWBrowse(): SetDelete ( [ lDelete], [ bDelete] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

lDelete Lógico Indica se o usuário pode excluir linhas no Browse.

bDelete Bloco de código Code-Block executado na exclusão da linha.

SetDelOk
Indica o Code-Block executado para validar a exclusão da linha.                                                                                        

Sintaxe

FWBrowse(): SetDelOk ( < bDelOK> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

bDelOK Bloco de código Code-Block executado para validar a exclusão da linha. X

SetDescription

Indica a descrição do Browse.                                                                                                                               

Sintaxe

FWBrowse(): SetDescription ( < cDescription> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

cDescription Caracter Indica a descrição do Browse X

SetDoubleClick

Indica o Code-Block executado no duplo clique do item no Browse.                                                                                     

Sintaxe

FWBrowse(): SetDoubleClick ( < bLDblClick> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

bLDblClick Bloco de código Code-Block executado no duplo clique do item no Browse. X

SetFieldFilter

Indica os campos que serão apresentados na edição de filtros.                                                                                          

Sintaxe

FWBrowse(): SetFieldFilter ( < aFields> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

aFields Array of Record Array contendo os campos apresentados na edição de filtros.


X

O formato para do parâmetroaFields deve ser:

[n][01] Campo

[n][02] Título

[n][03] Tipo de dado

[n][04] Tamanho

[n][05] Decimal

[n][06] Picture

Exemplo:

{ {"CAMPO1", "Campo 1", "C", 10, 0, "@!"},  {"CAMPO2", "Campo 2", "D", 8, 0, ""} }

Observação

Não recomendamos o uso dos filtros da classe FwBrowse com Browses do tipo Array ( DataArray() == .T. )
SetFile

Indica o arquivo texto que será utilizado no Browse.                                                                                                      

Sintaxe

FWBrowse(): SetFile ( < cFile>, [ cCharSeparator] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

cFile Caracter Arquivo texto. Ex.: "\Browse\Teste.txt" X

cCharSeparator Caracter Indica o caracter separador dos dados. Ex.: ";" para "dados1;dados2;dados3"

SetFilter

Indica o limite superior e inferior de um campo respeitando a classificação das informações atual.                                                 

Sintaxe

FWBrowse(): SetFilter ( < cCpoFil>, < cTopFun>, [ cBotFun] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

cCpoFil Caracter Indica o campo a ser considerado o limite superior e inferior. X

cTopFun Caracter Indica o limite superior. X

cBotFun Array of Record Indica o limite inferior.

Observação

Não recomendamos o uso dos filtros da classe FwBrowse com Browses do tipo Array ( DataArray() == .T. )

SetFilterDefault

Indica o filtro padrão do Browse.                                                                                                                            

Sintaxe

FWBrowse(): SetFilterDefault ( < cFilterDefault> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

cFilterDefault Caracter Indica o filtro AdvPL para o Browse. X

Observação

Não recomendamos o uso dos filtros da classe FwBrowse com Browses do tipo Array ( DataArray() == .T. )

SetFilterRelation

Indica o relacionamento de filtros para o Browse.                                                                                                          

Sintaxe

FWBrowse(): SetFilterRelation ( < aFilterRelation>, < bChgFields> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

aFilterRelation Array of Record Array contendo os itens do relacionamento. X

bChgFields Bloco de código Indica o Code-Block executado para trocar os campos para o filtro. X

Observação

Não recomendamos o uso dos filtros da classe FwBrowse com Browses do tipo Array ( DataArray() == .T. )
SetFocus

Força o foco no objeto Browse.                                                                                                                              

Sintaxe

FWBrowse(): SetFocus ( ) -->

SetFontBrowse

Indica a fonte do Browse.                                                                                                                                     

Sintaxe

FWBrowse(): SetFontBrowse ( [ oFont] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

oFont Objeto Indica o objeto TFont utilizado no Browse.

SetForeColor

Indica a cor da fonte no Browse.                                                                                                                            

Sintaxe

FWBrowse(): SetForeColor ( < nForeColor> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

nForeColor Numérico Cor da fonte no Browse. X

SetGroup

Indica que o Browse utiliza agrupamento de informações.                                                                                               

Sintaxe

FWBrowse(): SetGroup ( < bGroup>, [ lOpen] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

bGroup Bloco de código Code-Block com a regra do agrupamento retornando um valor lógico (.T. = Quebra, .F. = Filho ). X

lOpen Lógico Indica que o agrupamento será apresentado com os sub-itens visíveis na abertura do Browse.

SetHeaderImage
Indica a imagem que será apresentada ao lado do título da coluna.                                                                                     

Sintaxe

FWBrowse(): SetHeaderImage ( < nColumn>, < cResource> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

nColumn Numérico Indica coluna que será apresentada a imagem. X

cResource Caracter Indica a imagem que será apresentada ao lado da coluna. X

SetInsert

Indica que o usuário poderá inserir novas linhas no Browse.                                                                                            

Sintaxe

FWBrowse(): SetInsert ( [ lInsert] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

lInsert Lógico Indica que poderá inserir novas linhas.

SetItemDoubleClick

Indica os itens que serão disponibilizados para a configuração do duplo clique pelo usuário.                                                        

Sintaxe

FWBrowse(): SetItemDoubleClick ( < aItemDoubleClick> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

aItemDoubleClick Array of Record Array contendo as informações que serão apresentadas para configuração do duplo clique. X

SetItemHeaderClick

Indica os itens que serão disponibilizados para a configuração do clique no header pelo usuário.                                                   

Sintaxe

FWBrowse(): SetItemHeaderClick ( < aItemHeaderClick> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

aItemHeaderClick Array of Record Indica os itens que serão disponibilizados para a configuração do clique no header pelo usuário. X

SetLineBegin
Indica a linha do arquivo texto que deverá ser considerado para ínicio da leitura no Browse.                                                         

Sintaxe

FWBrowse(): SetLineBegin ( < nLineBegin> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

nLineBegin Numérico Indica a linha inicial do arquivo texto. X

SetLineHeight

Indica a altura da linha no Browse.                                                                                                                          

Sintaxe

FWBrowse(): SetLineHeight ( [ nHeight] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

nHeight Numérico Indica a altura da linha

SetLineOk

Indica o Code-Block executado na troca de linha do Browse.                                                                                            

Sintaxe

FWBrowse(): SetLineOk ( < bLineOk> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

bLineOk Bloco de código Code-Block executado na troca de linha. X

SetLocate

Habilita a utilização do localizador de registros no Browse.                                                                                              

Sintaxe

FWBrowse(): SetLocate ( [ bAction] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

bAction Bloco de código Code-Block executado para localização das informações, caso não seja informado será utilizado o padrão.

SetNumberLegend
Indica que a legenda será representada por números.                                                                                                     

Sintaxe

FWBrowse(): SetNumberLegend ( [ lNumber] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

lNumber Lógico Indica que a legenda será representada por números.

SetObjMark

Indica o objeto FWMARKBROWSE utilizado na passagem de parâmetros na execução das rotinas na FWFORMBROWSE.                        

Sintaxe

FWBrowse(): SetObjMark ( < oObjMark> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

oObjMark Objeto Indica o objeto FWMARKBROWSE X

SetObligateFilter

Indica se a selecão de um filtro é obrigatório para a apresentação do browse.                                                                          

Sintaxe

FWBrowse(): SetObligateFilter ( [ lObligateFilter], [ lCanCancel] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

lObligateFilter Lógico Indica que o filtro será solicitado na entrada do Browse

lCanCancel Lógico Indica que permite o cancelamento na tela de filtros.

Observação

Não recomendamos o uso dos filtros da classe FwBrowse com Browses do tipo Array ( DataArray() == .T. )

SetOwner

Indica o container para criação do Browse.                                                                                                                

Sintaxe

FWBrowse(): SetOwner ( [ oOwner] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

oOwner Objeto Indica o container para criação do Browse.

SetEditCell
Indica que será permitido a edição de células no Browse

Sintaxe

FWBrowse(): SetEditCell ( <lEditCell>,<bValidEdit> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

lEditCell Lógico Indica se permite a edição de células X

bValidEdit Bloco de código Code-Block executado para validar a edição da célula          X

SetPreEditCell

Indica o bloco de pré-validação para a edição de celula, o bloco devera retorna .T. para abrir a edição e .F. para nao abrir.

Sintaxe

FWBrowse(): SetPreEditCell ( < bBlock> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

bBlock Bloco de código Code-Block com a funcao de validação. O bloco recebe como parametro o objeto do Browse, a coluna ,e o caracter precionado. X

SetProfileID

Define o identificador do Browse utiliza na gravação das configurações no profile do usuário. Deve ser utilizado quando existir mais de um Browse na
rotina.

Sintaxe

FWBrowse(): SetProfileID ( < cProfileID> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

cProfileID Caracter Identificador do Browse X

Obs.: o tamanho máximo do ID deve ser de 4 (quatro) caracteres

SetQuery

Indica a Query que será utilizada para criação do Browse.                                                                                                

Sintaxe

FWBrowse(): SetQuery ( < cQuery> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

cQuery Caracter Indica a Query para a criação do Browse. X

Observação: A partir da versão Lib 20161010, não deve ser informado o campo R_E_C_N_O_ na query, pois tratasse de um campo exclusivo na criação de arquivos temporários no
banco de dados.

SetQueryIndex
Indica os índices utilizados pela Query na criação do Browse.                                                                                           

Sintaxe

FWBrowse(): SetQueryIndex ( < aIndex> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

aIndex Array of Record Indica os índices utilizados pela Query na criação do Browse. X

SetSeek

Habilita a utilização da pesquisa de registros no Browse.                                                                                                 

Sintaxe

FWBrowse(): SetSeek ( [ bAction], [ aOrder] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

bAction Bloco de código Code-Block executado para a pesquisa de registros, caso não seja informado será utilizado o padrão.

aOrder Array of Record Array contendo as informações para criação dos detalhes da pesquisa.

Estrutura do array:

                [n,1] Título da pesquisa

                [n,2,n,1] LookUp

                [n,2,n,2] Tipo de dados

                [n,2,n,3] Tamanho

                [n,2,n,4] Decimal

                [n,2,n,5] Título do campo

                [n,2,n,6] Máscara

                [n,2,n,7] Nome Físico do campo - Opcional - é ajustado no programa

                [n,3] Ordem da pesquisa

                [n,4] Exibe na pesquisa

SetSeekChange

Indica o Code-Block executado na mudança da ordem de pesquisa.                                                                                    

Sintaxe

FWBrowse(): SetSeekChange ( [ bSeekChange] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

bSeekChange Bloco de código Code-Block executado na mudança da ordem de pesquisa.

SetShowLimit

Indica se apresenta somente o limite de informacoes do Browse do tipo Query quando a Query ultrapassar o limite definido.

Sintaxe

FWBrowse(): SetShowLimit ( [ lShowLimit] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

lShowLimit Lógico Indica se apresenta somente o limite de informacoes do Browse do tipo Query quando a Query ultrapassar o limite definido.

SetSuperDel

Indica o Code-Block executado ao pressionar as teclas CTRL+Del.                                                                                      

Sintaxe

FWBrowse(): SetSuperDel ( < bSuperDel> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

bSuperDel Bloco de código Code-Block executado no CTRL+Del. X

SetTypeMove

Indica o tipo de navegação do Browse                                                                                                                      

Sintaxe

FWBrowse(): SetTypeMove ( < nTypeMove> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

nTypeMove Numérico Indica o tipo de navegação no Browse 0=Linha ou 1=Coluna X

SetUseCaseFilter

Habilita a utilização do filtro case no Browse.                                                                                                              

Sintaxe

FWBrowse(): SetUseCaseFilter ( [ nAlign] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

nAlign Numérico Indica o alinhamento do filtro no Browse.

SetUseFilter
Habilita a utilização do filtro no Browse.                                                                                                                
  

Sintaxe

FWBrowse(): SetUseFilter ( [ nAlign], [ bOnStart] ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

nAlign Numérico Indica o alinhamento do filtro no Browse.

bOnStart Bloco de código Code-Block executado na criação do componente de filtro.

Observação

Este método espera que os campos para filtro tenham sido definidos previamente pelo método SetFieldFilter. 

Caso o array de campos para o filtro não tenha sido preenchido e o browse seja baseado em tabela (alias ou temporária), a lista de
campos será preenchida lendo as informações através de dbStruct da tabela, exibindo algo parecido com"A1_FILIAL, A1_COD,
A1_LOJA"ao invés dos títulos dos campos"Filial, Código, Loja"no momento de criação dos filtros.

Observação

Não recomendamos o uso dos filtros da classe FwBrowse com Browses do tipo Array ( DataArray() == .T. )

 SetVldExecFilter

Define um bloco de códigos para validar se o filtro deve ser executado.                                                                                

Sintaxe

FWBrowse(): SetVldExecFilter ( < bVldExecFilter> ) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

bVldExecFilter Bloco de código Code-Block para validar se o filtro deve ser executado. X

  SetUniqueKey(aSetKey)

Define os campos chave de um browse de query ou array para conseguir reposicionar posteriormente em atualizações que forcem a reconstrução do
browse. Não será realizado controle de inserção em duplicidade de registros no browse.                                                                                

Sintaxe

FWBrowse(): SetUniqueKey(aSetKey) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

aSetKey Array Lista com os campos definidos como chave.


X

Quando browse de query espera { “CAMPO1”, “CAMPO2” }, nomes dos campos. Quando browse de array { 1, 2, 3 }, número das
colunas do array.

Retorno
Lógico, indica se a definição dos campos aconteceu ou não.

  GetUniqueKey()

Retorna a lista com os campos ou colunas definidos como chave para o browse.                                                                                

Sintaxe

FWBrowse(): GetUniqueKey() -->

Retorno
Array, lista com os campos definidos como chave do browse.

  GetUniqueDataKey()

Captura o conteúdo dos campos e colunas informados como chave do browse.                                                                               

Sintaxe

FWBrowse(): SetUniqueKey(aSetKey) -->

Retorno
Array, com lista com os pares de campos e valores identificados. Quando browse por query: { { “CAMPO”, VALOR }, { “CAMPO”, VALOR } }. Quando browse por array: { {
NUM_COLUNA, VALOR }, { NUM_COLUNA, VALOR } }.

  GoToDataKey(aDataKey)

Posiciona o browse no registro conforme a chave recebida por parâmetro.                                                                              

Sintaxe

FWBrowse(): SetUniqueKey(aDataKey) -->

Parâmetros

Nome Tipo Descrição Obrigatório Referência

aDataKey Array Lista com os pares de campos e valores identificados. Quando browse por query: { { “CAMPO”, VALOR }, { “CAMPO”, VALOR } }. X

Quando browse por array: { { NUM_COLUNA, VALOR }, { NUM_COLUNA, VALOR } }.

Retorno
Lógico, indica se foi possível realizar o posicionamento no registro do browse conforme o parâmetro informado.

Show

Permite tornar o Browse visível.                                                                                                                             

Sintaxe

FWBrowse(): Show ( ) -->

UpdateBrowse
Realiza a reconstrução do browse para atualizações em tempo de execução. Este método fará com que exista problemas de desempenho nos programas
pois o browse é completamente reconstruído.                                                                                                                             

Sintaxe

FWBrowse(): UpdateBrowse(lResetSeek) → NIL

Parâmetros

Nome Tipo Descrição

lResetSeek Lógico Indica se deve refazer a construção das ordens de pesquisa no browse.

Retorno
NIL

 A função POSICIONE, quando utilizada em campos virtuais, não deve utilizar a tabela principal do browse. Caso utilize o POSICIONE ou outra maneira (como User Function) utilizando a tabela
principal, atente-se a respeito do desposicionamento da tabela ou demora na execução.

Exemplos

Exemplo com Define

1 #INCLUDE "PROTHEUS.CH"
2 #INCLUDE "FWBROWSE.CH"
3 User Function BrwTable()
4  
5 Local oBrowse
6 Local oColumn
7 Local oDlg
8  
9 //-------------------------------------------------------------------// Abertura da tabela//------------------------------------------------------
10 DbSelectArea("SX2")
11 DbSetOrder(1)
12  
13 //-------------------------------------------------------------------// Define a janela do Browse//-----------------------------------------------
14 DEFINE DIALOG oDlg FROM 0,0 TO 600,800 PIXEL
15  
16 //------------------------------------------------------------------- // Define o Browse //-------------------------------------------------------
17 DEFINE FWBROWSE oBrowse DATA TABLE ALIAS "SX2" OF oDlg
18  
19 //-------------------------------------------------------- // Cria uma coluna de marca/desmarca//----------------------------------------------
20 ADD MARKCOLUMN oColumn DATA { || If(.T./* Função com a regra*/,'LBOK','LBNO') };
21 DOUBLECLICK { |oBrowse| /* Função que atualiza a regra*/ };
22 HEADERCLICK { |oBrowse| /* Função executada no clique do header */ } OF oBrowse
23  
24 //-------------------------------------------------------- // Cria uma coluna de status //--------------------------------------------------------
25 ADD STATUSCOLUMN oColumn DATA { || If(.T./* Função com a regra*/,'BR_VERDE','BR_VERMELHO') };
26 DOUBLECLICK { |oBrowse| /* Função executada no duplo clique na coluna*/ } OF oBrowse
27  
28 //-------------------------------------------------------- // Adiciona legenda no Browse //-------------------------------------------------------
29 ADD LEGEND DATA 'X2_CHAVE $ "AA1|AA2"' COLOR "GREEN" TITLE "Chave teste 1" OF oBrowse
30 ADD LEGEND DATA '!(X2_CHAVE $ "AA1|AA2")' COLOR "RED" TITLE "Chave teste 2" OF oBrowse
31  
32 //------------------------------------------------------------------- // Adiciona as colunas do Browse //-----------------------------------------
33 ADD COLUMN oColumn DATA { || X2_CHAVE } TITLE "Chave" SIZE 3 OF oBrowse
34 ADD COLUMN oColumn DATA { || X2_ARQUIVO } TITLE "Arquivo" SIZE 10 OF oBrowse
35 ADD COLUMN oColumn DATA { || X2_NOME } TITLE DecodeUTF8("Descrição") SIZE 40 OF oBrowse
36 ADD COLUMN oColumn DATA { || X2_MODO } TITLE "Modo" SIZE 1 OF oBrowse
37  
38 //------------------------------------------------------------------- // Ativação do Browse//-----------------------------------------------------
39 ACTIVATE FWBROWSE oBrowse
40  
41 //-------------------------------------------------------------------// Ativação do janela//------------------------------------------------------
42 ACTIVATE DIALOG oDlg CENTERED
43  
44 Return

Exemplo sem Define


1
2 User Function BrwTable()
  
3 Local oBrowse
4 Local oColumn
5 Local oDlg
6   
7 // Abertura da tabela
8 DbSelectArea("SX2")
9 DbSetOrder(1)
10  
11 //Define a janela do Browse
12 oDlg = TDialog():New(0, 0, 600, 800,,,,,,,,,,.T.)
13  
14 // Define o Browse
15 oBrowse := FWBrowse():New(oDlg)
16 oBrowse:SetDataTable(.T.)
17 oBrowse:SetAlias("SX2")
18  
19 // Cria uma coluna de marca/desmarca
20 oColumn := oBrowse:AddMarkColumns({||If(.T./*Função de Marca/desmaca*/,'LBOK','LBNO')},{|oBrowse|/*Função de DOUBLECLICK*/},{|oBrowse|/* Função de
21  
22 // Cria uma coluna de status
23 oColumn := oBrowse:AddStatusColumns({||If(.T./*Função de avaliação de status*/,'BR_VERDE','BR_VERMELHO')},{|oBrowse|/*Função de DOUBLECLICK*/})
24  
25 // Adiciona legenda no Browse
26 oBrowse:AddLegend('X2_CHAVE $ "AA1|AA2"',"GREEN","Chave teste 1")
27 oBrowse:AddLegend('!(X2_CHAVE $ "AA1|AA2")',"RED","Chave teste 2")
28  
29 // Adiciona as colunas do Browse
30 oColumn := FWBrwColumn():New()
31 oColumn:SetData({||X2_CHAVE})
32 oColumn:SetTitle("Chave")
33 oColumn:SetSize(3)
34 oBrowse:SetColumns({oColumn})
35  
36 oColumn := FWBrwColumn():New()
37 oColumn:SetData({||X2_ARQUIVO})
38 oColumn:SetTitle("Arquivo")
39 oColumn:SetSize(10)
40 oBrowse:SetColumns({oColumn})
41  
42 oColumn := FWBrwColumn():New()
43 oColumn:SetData({||X2_NOME})
44 oColumn:SetTitle(DecodeUTF8("Descrição"))
45 oColumn:SetSize(40)
46 oBrowse:SetColumns({oColumn})
47  
48 oColumn := FWBrwColumn():New()
49 oColumn:SetData({||X2_MODO})
50 oColumn:SetTitle("Modo")
51 oColumn:SetSize(1)
52 oBrowse:SetColumns({oColumn})
53  
54 // Ativação do Browse
55 oBrowse:Activate()
56  
57 // Ativação da janela
58 oDlg:Activate(,,,.T.)
59  
60 Return

Exemplo com Array


1
2 Function u_BrwArray
3  
4     Local oDlg        := Nil
5     Local oFwBrowse   := Nil
6     Local aColumns    := {}
7     Local aItems      :={}
8     Local nX
9  
10  
11     oDlg = TDialog():New(0, 0, 600, 800, "Browse com Array",,,,,,,,,.T.)
12  
13     oFwBrowse := FWBrowse():New(oDlg)
14     oFwBrowse:SetDataArrayoBrowse()  //Define utilização de array
15  
16     aItems := LoadItems()      //Carregar os itens que irão compor o conteudo do grid
17     oFwBrowse:SetArray(aItems) //Indica o array utilizado para apresentação dos dados no Browse.
18  
19     aColumns := RetColumns( aItems )
20  
21     //Cria as colunas do array
22     For nX := 1 To Len(aColumns )
23         oFwBrowse:AddColumn( aColumns[nX] )
24     Next
25  
26     oFwBrowse:SetOwner(oDlg)
27     oFwBrowse:SetDescription( "Browse com Array" )
28     oFwBrowse:Activate()
29  
30     oDlg:Activate()
31  
32 Return
33  
34 Static Function RetColumns(aItems)
35     Local aColumns := {}
36  
37     aAdd(aColumns, {;
38                         "Coluna 1",;                     // [n][01] Título da coluna
39                         {|oBrw| aItems[oBrw:At(), 1] },; // [n][02] Code-Block de carga dos dados
40                         "N",;                            // [n][03] Tipo de dados
41                         "@E 9999",;                      // [n][04] Máscara
42                         2,;                              // [n][05] Alinhamento (0=Centralizado, 1=Esquerda ou 2=Direita)
43                         10,;                             // [n][06] Tamanho
44                         0,;                              // [n][07] Decimal
45                         .T.,;                            // [n][08] Indica se permite a edição
46                         {|| },;                          // [n][09] Code-Block de validação da coluna após a edição
47                         .F.,;                            // [n][10] Indica se exibe imagem
48                         Nil,;                            // [n][11] Code-Block de execução do duplo clique
49                         "__ReadVar",;                    // [n][12] Variável a ser utilizada na edição (ReadVar)
50                         {|| AlwaysTrue()},;              // [n][13] Code-Block de execução do clique no header
51                         .F.,;                            // [n][14] Indica se a coluna está deletada
52                         .T.,;                            // [n][15] Indica se a coluna será exibida nos detalhes do Browse
53                         {},;                             // [n][16] Opções de carga dos dados (Ex: 1=Sim, 2=Não)
54                         "ID1"})                          // [n][17] Id da coluna
55  
56     aAdd(aColumns, {;
57                         "Coluna 2",;                    // [n][01] Título da coluna
58                         {|oBrw| aItems[oBrw:At(), 2] },; // [n][02] Code-Block de carga dos dados
59                         "C",;                            // [n][03] Tipo de dados
60                         "@!",;                           // [n][04] Máscara
61                         0,;                              // [n][05] Alinhamento (0=Centralizado, 1=Esquerda ou 2=Direita)
62                         10,;                             // [n][06] Tamanho
63                         0,;                              // [n][07] Decimal
64                         .F.,;                            // [n][08] Indica se permite a edição
65                         {|| },;                          // [n][09] Code-Block de validação da coluna após a edição
66                         .F.,;                            // [n][10] Indica se exibe imagem
67                         Nil,;                            // [n][11] Code-Block de execução do duplo clique
68                         __ReadVar,;                      // [n][12] Variável a ser utilizada na edição (ReadVar)
69                         {|| AlwaysTrue()},;              // [n][13] Code-Block de execução do clique no header
70                         .F.,;                            // [n][14] Indica se a coluna está deletada
71                         .T.,;                            // [n][15] Indica se a coluna será exibida nos detalhes do Browse
72                         {},;                             // [n][16] Opções de carga dos dados (Ex: 1=Sim, 2=Não)
73                         "ID2"})                          // [n][17] Id da coluna
74  
75     aAdd(aColumns, {;
76                         "Coluna 3",;                      // [n][01] Título da coluna
77                         {|oBrw| aItems[oBrw:At(), 3 ] },; // [n][02] Code-Block de carga dos dados
78                         "C",;                             // [n][03] Tipo de dados
79                         "@!",;                            // [n][04] Máscara
80                         0,;                               // [n][05] Alinhamento (0=Centralizado, 1=Esquerda ou 2=Direita)
81                         10,;                              // [n][06] Tamanho
82                         0,;                               // [n][07] Decimal
83                         .F.,;                             // [n][08] Indica se permite a edição
84                         {|| },;                           // [n][09] Code-Block de validação da coluna após a edição
85                         .F.,;                             // [n][10] Indica se exibe imagem
86                         Nil,;                             // [n][11] Code-Block de execução do duplo clique
87                         "__ReadVar",;                     // [n][12] Variável a ser utilizada na edição (ReadVar)
88                         {|| AlwaysTrue()},;               // [n][13] Code-Block de execução do clique no header
89                         .F.,;                             // [n][14] Indica se a coluna está deletada
90                         .T.,;                             // [n][15] Indica se a coluna será exibida nos detalhes do Browse
91                         {},;                              // [n][16] Opções de carga dos dados (Ex: 1=Sim, 2=Não)
92                         "ID3"})                           // [n][17] Id da coluna
93  
94 Return aColumns
95  
96 Static Function LoadItems()
97    Local aLinha     := {}
98    Local nX
99  
100     For nX := 1 To 20
101         aAdd(aLinha,{ nX, StrZero(nX, 5), " Linha : "+ cValToChar(nX)})
102     Next
Return aLinha

Exemplo com Query


1 Function u_FwBrwQry()
2     Local oDlg      As Object
3     Local aColumns  As Array
4     Local nContFlds As Numeric
5  
6     cAliasTemp  := MpSysOpenQuery( "SELECT * FROM " + RetSqlName("SC5") + " WHERE D_E_L_E_T_ = ''" )
7  
8     DEFINE MSDIALOG oDlg TITLE "Browse com Query" FROM 0,0 TO 600, 800 PIXEL
9  
10     oBrowse := FWBrowse():New()
11     oBrowse:SetDataTable( .T. )
12     oBrowse:SetAlias( cAliasTemp )
13     oBrowse:SetOwner( oDlg )
14     oBrowse:SetDescription( "Browse com Query" )
15  
16     //-------------------------------------------------------------------
17     // Adiciona as colunas do Browse
18     //-------------------------------------------------------------------
19     aColumns    := {}
20     aFields     := {}
21  
22     aAdd( aFields, "C5_FILIAL" )
23     aAdd( aFields, "C5_NUM" )
24     aAdd( aFields, "C5_TIPO" )
25     aAdd( aFields, "C5_CLIENTE" )
26     aAdd( aFields, "C5_PEDEXP"  )
27  
28  
29     For nContFlds := 1 To Len( aFields )
30  
31         AAdd( aColumns, FWBrwColumn():New() )
32  
33         aColumns[Len(aColumns)]:SetData( &("{ || " + aFields[nContFlds] + " }") )
34         aColumns[Len(aColumns)]:SetTitle( aFields[nContFlds] )
35         aColumns[Len(aColumns)]:SetSize( 15 )
36         aColumns[Len(aColumns)]:SetID( aFields[nContFlds] )
37     Next nContFlds
38  
39     oBrowse:SetColumns(aColumns)
40     oBrowse:Activate()
41  
42     ACTIVATE MSDIALOG oDlg
43 Return

           Abrangência

            Todas as versões
Define os campos chave de um browse de query ou array para conseguir reposicionar posteriormente em atualizações que forcem a reconstrução do browse. Não será realizado controle de inserção
em duplicidade de registros no browse.
AddLegend

fwbrowse framework todos_paises browse base_de_conhecimento


mp_framework_inov documento_tecnico framespdev

4 Comentários
Everson Da Costa Almeida
Bom dia,
Não encontrei a documentação referente ao método SetColumns.

Everson Da Costa Almeida


Bom dia, por favor, no método AddColumn informar na documentação de forma mais clara que se passada o 11º parametro, serve para editar ou não o campo.
Além disso, parece não estar funcionando, pois mesmo passando  '{| |  .F.}', e todos os outros parametros de edição, ele não permite a edição.
Desde já agradeço

Everson Da Costa Almeida


Por favor, o ultimo exemplo está equivocado em alguns aspectos já que o mesmo se trata de um exemplo para um QUERY, e os métodos deveriam estar configurados de forma diferente.
Poderiam corrigir e colocar um exemplo funcional, e de preferencia com campos editáveis?

Everson Da Costa Almeida


Não identifiquei possibilidade de editar um campo, e definir sua consulta padrão. Como faria?

Política de Termos
privacidade de uso

Você também pode gostar