Disculpame por dirigirme a ti directamente, pero ya me ayudaste anteriormente con una consulta que hice sobre TXBrowse y ojalá pudieras con esta otra
Resulta que quiero mostrar un browse que contenga en el primer caso 4 campos y en el segundo tres
Este es un fragmento de mi código
- Code: Select all Expand view
# include "fivewin.ch"
STATIC cAliasCpe, cAliasCde, cAliasCop, cAliasDed, cAliasDep, cAliasInc, cAliasIsr, cAliasOpa
STATIC cAliasPer, cAliasPue, cAliasSmi, cAliasTip, cAliasTva, cAlias
FUNCTION Tablas()
LOCAL oDlg := nil, oWChild := nil, oFld := nil
LOCAL aoObjetos := { nil, nil, nil, nil, nil, nil, nil }
LOCAL aoBtn := { nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ;
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil }
LOCAL aoCbx := { nil, nil, nil }
LOCAL oBrw1, oBrw2, oBrw3, oBrw4, oBrw5, oBrw6, oBrw7
LOCAL cCveTab, cNomCon, cNomIsr
LOCAL aGradBarSelFocus:= { { 1, RGB(252,232,171) , RGB(248,195, 34) } }
LOCAL aGradBarSel:= {{1, RGB(252,235, 184), RGB(251,222,88)}}
cAliasCpe := GetNewAlias( "cpersat" ) // catalogo de percepciondes sat
cAliasCde := GetNewAlias( "cdedsat" ) // catalogo de deducciones sat
cAliasCop := GetNewAlias( "copasat" ) // catalogo otros pagos sat
cAliasDed := GetNewAlias( "deduc" ) // catalogo de deducciones empresa
cAliasDep := GetNewAlias( "deptos" ) // catalogo de departamentos
cAliasInc := GetNewAlias( "incid" ) // catalogo de incidencias
cAliasIsr := GetNewAlias( "isr" ) // catalogo de i.s.r.
cAliasOpa := GetNewAlias( "otrpag" ) // catalogo de otros pagos
cAliasPer := GetNewAlias( "perc" ) // catalogo de percepciones empresa
cAliasPue := GetNewAlias( "puestos" ) // catalogo de puestos
cAliasSmi := GetNewAlias( "salmin" ) // catalogo de salarios minimos
cAliasTip := GetNewAlias( "tipmov" ) // catalogo de tipos de movimientos de asistencia
cAliasTva := GetNewAlias( "tabvac" ) // catalogo de tabla de vacaciones
if ! net_use( "cpersat",,cAliasCpe,oApp:xDatos ) .or. ;
! net_use( "cdedsat",,cAliasCde,oApp:xDatos ) .or. ;
! net_use( "copasat",,cAliasCop,oApp:xDatos ) .or. ;
! net_use( "deduc",, cAliasDed,oApp:xDatos ) .or. ;
! net_use( "deptos",, cAliasDep,oApp:xDatos ) .or. ;
! net_use( "incid",, cAliasInc,oApp:xDatos ) .or. ;
! net_use( "isr",, cAliasIsr,oApp:xDatos ) .or. ;
! net_use( "otrpag",, cAliasOpa,oApp:xDatos ) .or. ;
! net_use( "perc",, cAliasPer,oApp:xDatos ) .or. ;
! net_use( "puestos",,cAliasPue,oApp:xDatos ) .or. ;
! net_use( "salmin",, cAliasSmi,oApp:xDatos ) .or. ;
! net_use( "tabvac",, cAliasTva,oApp:xDatos ) .or. ;
! net_use( "tipmov",, cAliasTip,oApp:xDatos )
return nil; dbCloseAll()
endif
oApp:oMnuTab:Disable()
oApp:aoBtn[5]:Disable()
cNomIsr := "I.s.r."
cCveTab := 1
(cAliasIsr)->(QuickScope("1"))
DEFINE WINDOW oWChild mdichild of oApp:oWnd title "Tablas de Control de Personal" ;
from 00,00 TO 00,00 nomaximize
DEFINE DIALOG oDlg RESOURCE "DLG_FLD_TABLAS" OF oWChild
REDEFINE FOLDER oFld ID 800 OF oDlg ;
PROMPT "Conceptos", "Departamentos", "Puestos", "Movtos. Asistencia", "Isr", "Salarios Minimos", "Vacaciones" ;
DIALOGS "DLG_TAB_1", "DLG_TAB_2", "DLG_TAB_2", "DLG_TAB_2", "DLG_TAB_1", "DLG_TAB_2", "DLG_TAB_2"
// Redefine controles dialogo 1 Conceptos de percepciones, deducciones, otros pagos e incidencias
// Redefine controles dialogo 3 Puestos
// Redefine controles dialogo 4 Tipo de movimientos de asistencia
// Redefine controles dialogo 5 Tabla de I.S.R.
REDEFINE COMBOBOX aoCbx[2] VAR cNomIsr ID 201 OF oFld:aDialogs[5] UPDATE ;
ITEMS { "I.s.r.", "Subsidio", "Anual I.s.r.", "Anual Subsidio" } ;
ON CHANGE( IF( cNomIsr == "I.s.r.", cCveTab := 1, ;
IF( cNomIsr == "Subsidio", cCveTab := 2, ;
IF( cNomIsr == "Anual I.s.r.", cCveTab := 3, cCveTab := 4))), ;
(cAliasIsr)->(QuickScope(AllTrim(cStr(cCveTab)))), oBrw5:cAlias := cAliasIsr, ;
oBrw5:refresh(), oBrw5:gotop(), oFld:aDialogs[5]:Update() )
oBrw5 := TXBrowse():New( oFld:aDialogs[5] )
oBrw5:CreateFromResource(500)
oBrw5:cAlias := cAliasIsr
oBrw5:nMarqueeStyle := MARQSTYLE_HIGHLROW
oBrw5:nColDividerStyle := LINESTYLE_LIGHTGRAY
oBrw5:nRowDividerStyle := LINESTYLE_LIGHTGRAY
oBrw5:lColDividerComplete := .t.
oBrw5:bClrStd := { || If( oBrw5:KeyNo() % 2 == 0, ;
{ CLR_BLACK, RGB( 224, 236, 255 ) }, ;
{ CLR_BLACK, RGB( 189, 211, 253 ) } ) }
oBrw5:bClrSel := {|| { nRGB( 0, 0,255), aGradBarSel } } // para barra de linea selecc cuando el control no tiene el foco
oBrw5:bClrSelFocus := { || { CLR_BLACK, aGradBarSelFocus } } // para barra de linea selecc cuando el control tiene el foco
oBrw5:nStretchCol := STRETCHCOL_LAST
oBrw5:nFreeze := 1
oBrw5:nFooterLines := 1
IF cCveTab = 1 .or. cCveTab = 3
oCol := oBrw5:AddCol()
oCol:bEditValue := { || (cAliasIsr)->liminf }
oCol:cEditPicture := "99,999,999.99"
oCol:cHeader := "Lim Inf"
oCol:nWidth := 82
oCol:nDataStrAlign := AL_RIGHT
oCol:nHeadStrAlign := AL_CENTER
oCol := oBrw5:AddCol()
oCol:bEditValue := { || (cAliasIsr)->limsup }
oCol:cEditPicture := "99,999,999.99"
oCol:cHeader := "Lim Sup"
oCol:nWidth := 82
oCol:nDataStrAlign := AL_RIGHT
oCol:nHeadStrAlign := AL_CENTER
oCol := oBrw5:AddCol()
oCol:bEditValue := { || (cAliasIsr)->cuotafi }
oCol:cEditPicture := "99,999,999.99"
oCol:cHeader := "Cuota Fija"
oCol:nWidth := 82
oCol:nDataStrAlign := AL_RIGHT
oCol:nHeadStrAlign := AL_CENTER
oCol := oBrw5:AddCol()
oCol:bEditValue := { || (cAliasIsr)->porcexc }
oCol:cEditPicture := "999.99"
oCol:cHeader := "% Exced"
oCol:nWidth := 82
oCol:nDataStrAlign := AL_RIGHT
oCol:nHeadStrAlign := AL_CENTER
ELSEIF cCveTab = 2 .or. cCveTab = 4
oCol := oBrw5:AddCol()
oCol:bEditValue := { || (cAliasIsr)->liminf }
oCol:cEditPicture := "99,999,999.99"
oCol:cHeader := "Lim Inf"
oCol:nWidth := 82
oCol:nDataStrAlign := AL_RIGHT
oCol:nHeadStrAlign := AL_CENTER
oCol := oBrw5:AddCol()
oCol:bEditValue := { || (cAliasIsr)->limsup }
oCol:cEditPicture := "99,999,999.99"
oCol:cHeader := "Lim Sup"
oCol:nWidth := 82
oCol:nDataStrAlign := AL_RIGHT
oCol:nHeadStrAlign := AL_CENTER
oCol := oBrw5:AddCol()
oCol:bEditValue := { || (cAliasIsr)->subsidio }
oCol:cEditPicture := "99,999,999.99"
oCol:cHeader := "Subsidio"
oCol:nWidth := 110
oCol:nDataStrAlign := AL_RIGHT
oCol:nHeadStrAlign := AL_CENTER
ENDIF
Esta es el link de la imagen del primer caso
https://screenshot.net/es/8gz1ktk
en el segunco caso unicamente quiero que me muestre lim Inf, lim Sup y Subsidio
De antemano muchas gracias