Foros Néfele 4 Harbour › Foros › Ejemplos › Nuevo Ejemplo wArrayBrowse
- Este debate tiene 1 respuesta, 2 mensajes y ha sido actualizado por última vez el 3 años, 10 meses por Xevi. This post has been viewed 901 times
Mostrando 1 respuesta al debate
-
AutorEntradas
-
-
30-12-2020 a las 15:19 #1671Alfredo SanzSuperadministrador
Seguimos incorporando funcionalidades nuevas al wArrayBrowse, ahora con posibilidad de filtros por columnas.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124#include "Xailer.ch"#include "Nefele.ch"FUNCTION BcoSort( )LOCAL oPageWebLOCAL cHtmlLOCAL oBrowse, nLOCAL aConsulta// Instanciamos la Pagina Web que queremos crearWITH OBJECT oPageWeb := TWebPage():New()AppMenu( oPageWeb, "Browses", .T. ):aBreadCrumbs := {{GetEnv("SCRIPT_NAME"),"🏠"},{GetEnv("SCRIPT_NAME")+ "?MenuBrowse","📓"},"Bancos SqLite Sort"}:lValign := .f.:lContainer := .f.:cCSS += "#bancos > thead > tr { BORDER-BOTTOM: NONE; }" // Css adicional:cCSS += "td, th { padding: 4px 3px; }" // Css adicionalWITH OBJECT WStyle():New(:WO) // definimos estilo para ...:cId := "#bancos_col3" // bancos_col3 (entidad)WITH OBJECT :AddMedia() // nueva mediaquery css:cMaxWidth := "600px" // Hasta 600 pxWITH OBJECT :oStyle:cFont_size := 11 // Tamaño letraENDEND:Create()ENDWITH OBJECT WPanel():New( oPageWeb ) // Añadimos un panel para meter el ListView:cTitle := "Consulta Tabla de Bancos":oStyle:cPadding := "0px":aWidth := {12,10}:aOffset:= { 0, 1}WITH OBJECT WEdit():New( :WO ):cId := "buscar":cIcon := "search":SetSearch():aWidth [ _movil ] := 12:aOffset[ _tablet ] := 0:aWidth [ _tablet ] := 5:aOffset[ _monitor] := 7:aWidth [ _monitor] := 5:Create()END WITHWITH OBJECT oBrowse := WArrayBrowse():New( :WO ) // Su padre es el panel:cId := "Bancos" // Id asignado al browse:nStyle := xc_Striped + xc_Highlight // Tipo pijama + iluminas seleccionado:cCursor := "pointer":cOnClick := "VisParam" // Este onCli y cCursor se aplica a todas las columnas:cClrHeadText := "red" // Color de la cabecera:nIndexValue := 1 // Campo clave la columna 1** ORDENACION POR COLUMNAS:lSort := .t. // Activamos ordenación de columnas** BUSQUEDA POR COLUMNAS:lSearch := .t. // Activamos búsquedas:cSearchTxt := "Buscar" // Texto a mostrar en las cajas de búsqueda de columna:cSearchId := "Buscar" // cId del edit externo de búsqueda** ACTIVAR SCROLL DEL BROWSE:lScroll := .t. // Activamos scroll:cHeight := "58vh" // Altura del browse// Añadimos ColumnasWITH OBJECT :AddCol( "Cod" ) AS WItemColBrowse //por defecto, cabecera centrada y texto a la izquierda:cCursor := "help":nWidth := "10px"END WITHWITH OBJECT :AddCol( "BIC", xc_Left, xc_Left) AS WItemColBrowse:nWidth := "15px" // anchura en % respecto al total de la tabla:cClass := "hide-on-small-only" // en móvil, la ocultamos. https://materializecss.com/helpers.html#hidingEND WITHWITH OBJECT :AddCol( "Entidad", xc_Left, xc_Left ):nWidth := 100 // Esta columna ocupa el resto del espacio disponibleENDaConsulta := mConsultaSql() // Llamada al modelo de datosFOR n := 1 TO Len( aConsulta ):AddRow( nfl_AsciiHTML( aConsulta[ n ] ) ) // añadimos la línea de correspondiente aConsultaNEXT:Create()END WITH:Create()END WITH //PanelcHtml := :Create() // Y al final la pagina, :Create() nos retorna una cadena con todo el HTML de la paginaEND WITHoCgi:SendPage( cHtml ) // Y por ultimo, le respondemos al Navegador con la pagina creadaRETURN NIL//-----------------------------------------------------------------------------STATIC FUNCTION mConsultaSql( cBuscado, nPagina, nLineasPagina )LOCAL oSql, cConsulta, aConsulta, nWITH OBJECT oSql := nfl_SqlConnect( "Bancos",xc_SQLite )IF oSql <> NilcConsulta := "SELECT Codigo, BIC, NOMBRE FROM bancos WHERE BIC<>'NIL' ORDER BY NOMBRE"aConsulta := :QueryArray( cConsulta )ELSERETURN NILENDIFEND WITH// Ponemos el tooltip de la primera columnaFOR n=1 TO Len( aConsulta)aConsulta[n,1] := {aConsulta[n,1], nfl_AsciiHTML("Código del banco: 
",.t.) + ToString(aConsulta[n,3])} // Ponemos el tootltip a la columna 1 (
) como pasamos luego a utf8 hay que mandarlo en ansi si el prg esta en utf8NEXTRETURN aConsulta
Contenido no disponible.
Por favor, acepta las cookies haciendo clic en este aviso- Este debate fue modificado 3 años, 10 meses por Alfredo Sanz.
- Este debate fue modificado 3 años, 10 meses por Alfredo Sanz.
-
20-01-2021 a las 20:35 #1696XeviParticipante
Fredy,
Teneis previsto alguna actualización próxima y que incluya esta novedad y seguramente más que teneis ya preparadas???
Un Saludo,
Xevi.
-
-
AutorEntradas
Mostrando 1 respuesta al debate
- Debes estar registrado para responder a este debate.