cMFDbCJGridMultiSelect

Pacote

A classe cMFDbCJGridMultiSelect está definida no pacote cMFDbCJGridMultiSelect.pkg.

Hierarquia

A classe cMFDbCJGridMultiSelect é uma subclasse da classe cMFDbCJGrid e herda todas as propriedades, eventos e métodos existentes nesta classe.

Para que serve

A classe cMFDbCJGridMultiSelect é uma subclasse da classe cMFDbCJGrid e foi especializada para ser usada em Grids onde se deseja disponibilizar o recurso de seleção múltipla de registros para um processamento.

Exemplo

Object oLancamentosDbCJGrid is a cMFDbCJGridMultiSelect
    Set Ordering to 4
    Set Size to 57 551
    Set Location to 119 5
    Set peAnchors to anAll

Object oGridSelectColumn is a cMFDbCJGridSelectColumn
Set piWidth to 18
Set pbResizable to False
Set pbEditable to True
End_Object

Object oLancto_Recid is a cMFDbCJGridColumn
Entry_Item Lancto.Recid
Set piWidth to 44
Set psCaption to “Cód.”
End_Object

Object oLancto_Nr_Nota_Fiscal is a cMFDbCJGridColumn
Entry_Item Lancto.Nr_Nota_Fiscal
Set piWidth to 49
Set psCaption to “N.F.”
End_Object

Object oLancto_Nr_Parcela is a cMFDbCJGridColumn
Entry_Item Lancto.Nr_Parcela
Set piWidth to 28
Set psCaption to “Par.”
Set pbResizable to False
End_Object

Object oLancto_Dt_Fato_Gerador is a cMFDbCJGridColumn
Entry_Item Lancto.Dt_Fato_Gerador
Set piWidth to 79
Set psCaption to “Dt. fato ger.”
Set pbResizable to False
End_Object

Object oLancto_Dt_Vencimento is a cMFDbCJGridColumn
Entry_Item Lancto.Dt_Vencimento
Set piWidth to 79
Set psCaption to “Dt. vencto.”
Set pbResizable to False
End_Object

Object oLancto_Dt_Pagto is a cMFDbCJGridColumn
Entry_Item Lancto.Dt_Pagto
Set piWidth to 79
Set psCaption to “Dt. pagto.”
Set pbResizable to False
End_Object

Object oLancto_Sg_Posicao is a cMFDbCJGridColumn
Entry_Item Lancto.Sg_Posicao
Set piWidth to 30
Set psCaption to “Pos.”
Set pbResizable to False
On_Key Key_F4 Send None // Desabilitando Prompt via tecla
End_Object

Object oClasse_Codigo1 is a cMFDbCJGridColumn
Entry_Item Classe.Codigo
Set piWidth to 45
Set psCaption to “Classe”
Set pbResizable to False
End_Object

Object oLancto_Ds_Historico is a cMFDbCJGridColumn
Entry_Item Lancto.Ds_Historico
Set piWidth to 276
Set psCaption to “Histórico”
End_Object

Object oLancto_Vl_Total is a cMFDbCJGridColumn
Entry_Item Lancto.Vl_Total
Set piWidth to 96
Set psCaption to “Vlr. total”
End_Object

Procedure ProcessaItens String sFormaPagto
Integer iContador // Conta o número de registros processados
RowID[] rwSelected // Recebe o RowId dos registros selecionados

Get SelectedRecords to rwSelected

// Verificando se há ao menos um item selecionado
If (SizeOfArray(rwSelected) = 0) Begin
Error Dferr_Operator “Não há lançamentos selecionados.\n\nA baixa não será efetuada.”
Procedure_Return
End

// Inicializar Status Panel
Send Initialize_StatusPanel of ghoStatusPanel “Baixando lançamentos…” “*** Aguarde ***” “Processando…”
Set Allow_Cancel_State of ghoStatusPanel to False
Send Start_StatusPanel of ghoStatusPanel
Send Update_StatusPanel of ghoStatusPanel “Inciando…”
Set Dynamic_Update_State to False

// Configurando DD para permitir alteração
Set Read_Only_State of (Server(Self)) to False
For iContador from 0 to (SizeOfArray(rwSelected)-1)
: // Processamento
:
Loop

Set Read_Only_State of (Server(Self)) to True
Send DoSelectNone

Send Stop_StatusPanel of ghoStatusPanel

Send Reset of (phoDataSource(Self))
Send MoveToFirstRow
End_Procedure // ProcessaItens
End_Object // oLancamentosDbCJGrid

Observação

  • Para que o recurso de múltipla seleção funcione é obrigatório ter um objeto da classe cMFDbCJGridSelectColumn em uma das colunas.

Métodos

Confira abaixo a documentação dos métodos de classe cMFDbCJGridMultiSelect:

DoSelectAll

Tipo

Procedure

Para que serve

Seleciona todas as linhas da Grid.

Parâmetros

  • Handle hCallBack: é um Handle de uma procedure de Callback que será chamada a cada registro lido pela função DoSelectAll. Pode ser útil, se você desejar mostrar, por exemplo, em um Form, o valor total de um dos campos de todos os registros selecionados. Este parâmetro é opcional. Se for informado, é necessário informar também o parâmetro hCallBackObject.
  • Handle hCallBackObject: é o Handle do objeto onde a procedure de Callback informada em hCallBack está definida.

Exemplo

Procedure OnClick
    Forward Send OnClick
    Set Value of oTotal_Form to 0
    Send DoSelectAll of oLancamentosMultiSelectGrid (RefProc(CallBackSelectAll)) Self
End_Procedure // OnClick

 

Procedure CallBackSelectAllNumber nValor
Move Lancto.Vl_Total to nValor
If (Lancto.Sg_Posicao = “CA”)
Move (-1*nValor) to nValor
Set Value of oTotal_Form to (Value(oTotal_Form(Self)) + nValor)
End_Procedure

DoSelectNone

Tipo

Procedure

Para que serve

Desmarca todas as linhas da Grid.

SelectedRecords

Tipo

Function

Retorno

RowID[]

Para que serve

Esta função retorna um vetor do tipo RowID[] com os registros que estão selecionados na lista.

Exemplo

Object oLancamentosDbCJGrid is a cMFDbCJGridMultiSelect

 

Object oGridSelectColumn is a cMFDbCJGridSelectColumn
Set piWidth to 18
Set pbResizable to False
Set pbEditable to True
End_Object
:
:
Procedure ProcessaItens String sFormaPagto
Integer iContador // Conta o número de registros processados
RowID[] rwSelected // Recebe o RowId dos registros selecionados

Get SelectedRecords to rwSelected

// Verificando se há ao menos um item selecionado
If (SizeOfArray(rwSelected) = 0) Begin
Error Dferr_Operator “Não há lançamentos selecionados.\n\nA baixa não será efetuada.”
Procedure_Return
End

// Inicializar Status Panel
Send Initialize_StatusPanel of ghoStatusPanel ;
“Baixando lançamentos…” “*** Aguarde ***” “Processando…”

Set Allow_Cancel_State of ghoStatusPanel to False
Send Start_StatusPanel of ghoStatusPanel
Send Update_StatusPanel of ghoStatusPanel “Inciando…”
Set Dynamic_Update_State to False

// Configurando DD para permitir alteração
Set Read_Only_State of (Server(Self)) to False
For iContador from 0 to (SizeOfArray(rwSelected)-1)
// Processa os itens
:
:
Loop

Set Read_Only_State of (Server(Self)) to True
Send DoSelectNone // Desmarcando todos os itens da Grid

Send Stop_StatusPanel of ghoStatusPanel

// Atualizando a gridSend Reset of (phoDataSource(Self))
Send MoveToFirstRow
End_Procedure // ProcessaItens
:
:
End_Object

Propriedades

Confira abaixo a documentação das propriedades da classe cMFDbCJGridMultiSelect:

piSelectedLineColor

Tipo

Integer

Valor padrão

33023

Para que serve

Cor que será usada para destacar as linhas que estão selecionadas pelo usuário.

Não encontrou o que precisava? Entre em contato conosco.