- Code: Select all Expand view RUN
#include "FiveWin.ch"
#include "TSButton.ch"
#Include "SSay.Ch"
#include "Voget.ch"
#include "adordd.ch"
REQUEST ADORDD
#define adOpenForwardOnly 0
#define adOpenKeyset 1
#define adOpenDynamic 2
#define adOpenStatic 3
#define adLockReadOnly 1
#define adLockPessimistic 2
#define adLockOptimistic 3
#define adLockBatchOptimistic 4
//----------------------------------------------------------------------------//
Function Oper201( oWnd )
local oClient, lAcao
local oFont
private oLbx, oDbf, txSql, oDados, Cliente, oBtn
lAcao := .f.
oBtn := Array(10)
DEFINE FONT oFont NAME "Arial" SIZE 0, -11
// Abre o banco de dados
TRY
oCn := CreateObject( "ADODB.Connection" )
oCn:ConnectionString := "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=bigdados.mdb"
oCn:Open()
CATCH oErr
Alert( "Error: " + oErr : Operation + " -> " + oErr : Description )
END
Data := ctod( '06/03/2008' )
// Filtro para mostrar somente os DADOS que interessam
txSql := "SELECT tbclientes.nome, tbclientes.telefone, tbclientes.end," +;
"tbpedido.id, tbpedido.hora, tbpedido.Situacao, tbpedido.tipo, tbpedido.Data "+;
"FROM tbclientes "+;
"INNER JOIN tbpedido "+;
"ON tbclientes.id = tbpedido.Cliente " +;
"WHERE tbpedido.Data = Data"
oDados := oCn:Execute( txSql )
DEFINE DIALOG oClient RESOURCE "LISTA001" FONT oFont OF oClient;
TITLE " Oper201 - Lista de Pedidos" STYLE nOr( DS_SYSMODAL, DS_MODALFRAME )
REDEFINE LISTBOX oLbx;
FIELDS oDados:Fields( "id" ):Value,;
oDados:Fields( "nome" ):Value,;
oDados:Fields( "telefone" ):Value,;
oDados:Fields( "End" ):Value,;
oDados:Fields( "data" ):Value;
HEADERS 'Id', 'Nome', 'Telefone','Endereço', 'Data';
ON RIGHT CLICK( oLbx:Report( "TWBrowse report", .T. ),;
oDados:MoveFirst() ) ID 100 OF oClient
// Força o browse trabalhar com celulas
oLbx:lCellStyle := .t.
oLbx:nLineStyle := 4
oLbx:nClrBackHead := nRgb( 255, 128, 64 )
oLbx:nClrForeHead := nRgb( 0, 0, 185 )
oLbx:Refresh()
//--- Inicio dos Botões ---------------------------------------------------//
REDEFINE SBUTTON oBtn[1] ID 105 OF oClient FONT oFont;
PROMPT "[Esc]" + CRLF + "Retorna";
ACTION( lAcao := .t., oClient:End() ) CANCEL;
TOOLTIP "Clique ou Tecle Esc para Retornar";
COLORS bTColor, bBColor;
BORDER TEXT POSITION ON_RIGHT
//--- Termino dos Botões ---------------------------------------------------//
// Eventos do Teclado
oClient:bKeyDown := { |nKey| IF( nKey = VK_ESCAPE,( lAcao := .t., oClient:End() ), nil )}
ACTIVATE DIALOG oClient CENTER;
ON INIT( oClient:lHelpIcon := .f.,;
xSetFocus( oLbx ) );
VALID( lAcao )
oFont:End()
oCn:Close()
Return nil
Lo que pasa es que no logro mostrar el contenido del QUERY en el LISTBOX, no me da error, que hago mal?
Gracias en adelantado,