Close Databases All
Open Database (_Samples + "Northwind\Northwind")
= Paginar("Customers", "CustomerId", "Country, City", 16, 1, "curPaginado")
Function Paginar( ;
tcTabla As String ;
, tcClave As String ;
, tcOrden As String ;
, tnFilPag As Integer ;
, tnNroPag As Integer ;
, tcCursor As String )
Local lnExcluir As Integer, lcSqlSelect, lcWhere As String
lnExcluir = (m.tnNroPag - 1) * m.tnFilPag
Text To m.lcWhere Textmerge Noshow Pretext 15
<<m.tcClave>> Not In (
Select Top <<Transform(lnExcluir)>> <<m.tcClave>>
From <<m.tcTabla>>
Order By <<m.tcOrden>>)
Endtext
Text To m.lcSqlSelect Textmerge Noshow Pretext 15
Select Top <<Transform(m.tnFilPag)>> *
From <<m.tcTabla>>
Where <<Iif(m.tnNroPag = 1, "1=1", m.lcWhere)>>
Order By <<m.tcOrden>>
Into Cursor <<m.tcCursor>>
Endtext
Execscript(m.lcSqlSelect)