xBrowse y Maketotals con condicion

Post Reply
Enrrique Vertiz
Posts: 440
Joined: Fri Oct 07, 2005 2:17 pm
Location: Lima - Peru
Contact:

xBrowse y Maketotals con condicion

Post by Enrrique Vertiz »

Saludos, una consulta

Tengo un xBrowse con 2 campos, un campo caracter que uso para Marcar y Desmarcar, segun los documentos que se seleccionan o no y un campo importe donde hago un maketotal, quiero mostrar el total de los documentos marcados, no marcados y todos, osea si tengo 10 documentos y solo selecciono/marco 3, quisiera saber si hay forma de mostrar 3 totales :
El primero con solo el total de los 3 registros marcados
El segundo con el total de los 7 registros NO marcados
El ultimo con el total de todos los registros

Si no se puede, por lo menos que el total me muestre solo la suma de los documentos marcados.

Muchas gracias
Enrrique Vertiz Pitta
Lima-Peru
xHb 1.23, Fwh 20.04, MySQL 5.7 - 8.0, SQLLIB 1.9m, SQLRDD
User avatar
nageswaragunupudi
Posts: 8017
Joined: Sun Nov 19, 2006 5:22 am
Location: India
Contact:

Re: xBrowse y Maketotals con condicion

Post by nageswaragunupudi »

If you want to display all the three totals, you need to calculate the totals yourself and display them in the footer.

Code: Select all

oBrw:nFooterLines := 3
oCol:cFooter := Str( nMarkedTotal ) + CRLF + Str( nUnmarkedTotal ) + CRLF + Str( nMarkedTotal + nUnmarkedTotal)
If you want to display only one line of Marked totals, then XBrowse can do this automatically for you.

Code: Select all

oCol:nFooterType := AGGR_SUM
oCol:bSumCondition := { || If( field->marked, .t., .f. ) }
oBrw:MakeTotals()
 
Regards

G. N. Rao.
Hyderabad, India
Enrrique Vertiz
Posts: 440
Joined: Fri Oct 07, 2005 2:17 pm
Location: Lima - Peru
Contact:

Re: xBrowse y Maketotals con condicion

Post by Enrrique Vertiz »

Thanks Mr. Rao, please help, does not show sum of marked :

Code: Select all

   DEFINE DIALOG oDlg SIZE 1150,460 TITLE "Barra Espaciadora SELECCIONA (Click derecho en Grupo),   Doble Click VER PDF"

      @ 10,10 XBROWSE oBrw HEADERS "Selecciona", "Cuenta", "Proveedor", "Razon Social - Nombre" ,"Td", "Numero", "Vencim", iif(nRb1==2,"Dolares","Soles"), iif(nRb1==2,"Soles","Dolares"), oApp:cNomAu2, "Banco", "Provision" ;
               COLUMNS "FL(doc_yausad)", "cdo_cuenta", "cdo_auxili", "des_auxili", "tip_docume", "num_docume", "fec_vencim", iif(nRb1==2,"sal_monext","sal_monnac"), iif(nRb1==2,"sal_monnac","sal_monext"), "cdo_auxil2", "cdo_pagban", "mes_provis"+"-"+"vou_provis" ;
               COLSIZES 50,70,100,240,30,120,85,100,100,80,50,100 OF oDlg ;
               SIZE 555,170 PIXEL JUSTIFY .T. ;
               DATASOURCE cAlias CELL LINES NOBORDER FOOTERS AUTOSORT FASTEDIT

oBrw:Selecciona:SetCheck( , "S" )
oBrw:bClrStd := {|| {iif( Field->doc_yausad=="S", CLR_RED, CLR_BLUE ), CLR_WHITE } }
oBrw:lHScroll:= .T.
oBrw:lVScroll:= .T.

WITH OBJECT oBrw
   :nMarqueeStyle := 4
   :bClrSelFocus  := { || { CLR_BLACK, aSelGrad } }
   :bClrRowFocus  := { || { CLR_BLACK, aRowGrad } }
   :bLDblClick = { || (verpdftnd(alltrim(97->cdo_auxili),97->tip_docume,alltrim(97->num_docume),subs(dtoc(97->fec_provis),7,4),97->mes_provis,.t.), oBrw:refresh()) }
   :bKeyDown   = { | nKey | if(nKey!=VK_SPACE, Nil, (iif(97->doc_yausad=="N",97->doc_yausad:="S",97->doc_yausad:="N"), oBrw:refresh()) ) }

   :Soles:nFooterType    := AGGR_SUM
   :Dolares:nFooterType  := AGGR_SUM
   :Soles:bSumCondition  := {|| If( 97->doc_yausad == "S" , .t. , .f. ) }
   :Dolares:bSumCondition:= {|| If( 97->doc_yausad=="S", .t. , .f. ) }
   :MakeTotals()

END

oBrw:CreateFromCode()

@ 185,320 BUTTON "&Seleccionar" SIZE 40,12 PIXEL OF oDlg CANCEL ACTION (sendinfo(cTde),oDlg:End())

ACTIVATE DIALOG oDlg CENTERED
Image
Enrrique Vertiz Pitta
Lima-Peru
xHb 1.23, Fwh 20.04, MySQL 5.7 - 8.0, SQLLIB 1.9m, SQLRDD
Enrrique Vertiz
Posts: 440
Joined: Fri Oct 07, 2005 2:17 pm
Location: Lima - Peru
Contact:

Re: xBrowse y Maketotals con condicion

Post by Enrrique Vertiz »

Mr Rao, please any idea ... Thanks
Enrrique Vertiz Pitta
Lima-Peru
xHb 1.23, Fwh 20.04, MySQL 5.7 - 8.0, SQLLIB 1.9m, SQLRDD
EBM
Posts: 123
Joined: Tue Oct 11, 2005 8:22 pm
Location: Guadalajara, Jal Mexico

Re: xBrowse y Maketotals con condicion

Post by EBM »

Hola Enrique:

Yo lo hago de la siguiente manera y me funciona perfecto:

// Col 7
oCol := oBrowse:AddCol()
oCol:bStrData := { || Transform( ( oBoleta:caAlias )->PRESTAMO,"999,999,999.99" ) }
oCol:cHeader := "Préstamo"
oCol:nHeadStrAlign := 2 // Center
oCol:nWidth := 100
oCol:nDataStrAlign := AL_RIGHT
oCol:bEditValue := { || ( oBoleta:caAlias )->PRESTAMO }
oCol:cEditPicture := "999,999,999.99"
oCol:bSumCondition := { || ( oBoleta:caAlias )->STATUS == "A" }

...

oBrowse:aCols[ 7 ]:nFooterType := AGGR_TOTAL
oBrowse:MakeTotals()


Espero y te sirva

Saludos !!

Eduardo Borondón Muñiz
Enrrique Vertiz
Posts: 440
Joined: Fri Oct 07, 2005 2:17 pm
Location: Lima - Peru
Contact:

Re: xBrowse y Maketotals con condicion

Post by Enrrique Vertiz »

Eduardo, gracias por tu respuesta.

Sucede que necesito que se cambie la condicion, al momento, presionando la barra espaciadora, cambia de un estado al otro, habia que aumentar el Maketotals() en este caso, para que recalcule y pinte la nueva suma segun se vaya marcando o desmarcado ...
Enrrique Vertiz Pitta
Lima-Peru
xHb 1.23, Fwh 20.04, MySQL 5.7 - 8.0, SQLLIB 1.9m, SQLRDD
Post Reply