CheckSumControl é um User Control que soma valores de uma coluna da GRID, sem atualizar(refresh) em toda a tela, com base na marcação de um check-box da mesma GRID, ele retorna o valor da soma e da quantidade de check-box marcados para outros objetos como TextBlock. Já vem com um exemplo (Xpz).
Principais características:
1. Somar valores da Grid, sem atualizar(refresh) toda a tela, com base check-box marcado;
2. Conta valores da Grid, sem atualizar(refresh) toda a tela, com base check-box marcado;
Propriedades
ClassCheckBox : Classe do checkbox a ser marcado, se utilizar mais de uma grid colocar class diferentes para cada um. Exemplo: ‘AttSubTitle’
InternalNameValSum : Valor da Grid a ser somado ao marcar o checkbox. Exemplo: &Valor.InternalName
InternalNameTotal = TextBlock receberá o total da soma. Exemplo: TextBlockTotal.InternalName
InternalNameTotalCount = TextBlock receberá o quantidade de check marcado. Exemplo: TextBlockTotalCount.InternalName
PrefixoMoney = Prefixo do Valor monetário. Exemplo: R$
Implementando
Muito simples e prático de ser utilizado, simplesmente passar o Class(checkbox) e o InternalName das variável que estão na Grid que deseja contar ou somar e mostrar em um TextBlock, para as propriedades correspondente , veja:
Event Start
Form.JScriptSrc.Add("js/jquery.js") //No GX ev1 deve-se importar o Jquery.
EndEvent
Event Grid1.Load
//Habita CheckBox e parametriza o UC
&IsOk.Enabled = true
checkSumControl1.ClassCheckBox = 'AttSubTitle' //Class checkbox a ser marcado, se utilizar mais de uma grid colocar class diferentes para cada um.
checkSumControl1.InternalNameValSum = &Valor.InternalName //Valor da Grid a ser somado ao marcar o checkbox
checkSumControl1.InternalNameTotal = TextBlockTotal.InternalName //TextBlock receberá o total da soma
checkSumControl1.InternalNameTotalCount = TextBlockTotalCount.InternalName //TextBlock receberá o quantidade de check marcado
//carrega a GRID
&Valor = 100
load
&Valor = 150
load
&Valor = 100.75
load
&Valor = 990
load
EndEvent
Event Grid2.Load
&IsOk2.Enabled = true
checkSumControl2.ClassCheckBox = 'Attribute'
checkSumControl2.InternalNameValSum = &Valor2.InternalName
checkSumControl2.InternalNameTotal = TextBlockTotal2.InternalName
checkSumControl2.InternalNameTotalCount = TextBlockTotalCount2.InternalName
//carrega a GRID
&Valor2 = 200
load
&Valor2 = 252.5
load
&Valor2 = 400.75
load
&Valor2 = 390
load
EndEvent