Saludes a todo el foro, puse un pedazo de codigo desde donde intento hacer un listbox con un recordset y no hay forma, William me contesto mi mensaje anterior con un ejemplo de RDDADO pero no me funciona y yo necesito toda la potencia porque estoy tratando de migrar a 32 bits sistemas que ya funcionan, les agradeceria toda su aportacion, el codigo es el siguiente :
Public oDlg,oBrw
Public oCon2 := TOLEAUTO():New("adodb.connection")
Public oRecordSet
Public oCommand := TOleAuto():New("adodb.command")
oCon2:Open("DRIVER={MySQL ODBC 3.51 Driver}; SERVER=127.0.0.1 ; DATABASE=Personal1; UID=root; PWD=1234")
oRecordSet := TOleAuto():New("adodb.recordset")
oRecordSet:ActiveConnection(oCon2)
oRecordSet:Source := "SELECT * FROM MAESTRO"
oRecordSet:LockType := adLockOptimistic
oRecordSet:CursorType := adOpenKeyset
oRecordSet:Open()
DEFINE DIALOG oDlg FROM 1, 1 TO 25, 79
@ 1, 1 LISTBOX oBrw FIELDS oRecordSet:Fields(0):Value ,;
oRecordSet:Fields(1):Value ,;
oRecordSet:Fields(2):Value ,;
oRecordSet:Fields(3):Value ,;
oRecordSet:Fields(4):Value ;
HEADERS "Codigo","Nombre ","Salario","Nombre ","Salario";
FIELDSIZES 60,200,60,200,60 ;
SIZE 284, 137 OF oDlg
@154,08 BTNBMP LEFT PROMPT " Agregar" SIZE 50,19 OF oDlg FILENAME "NEW1.BMP" ACTION oDlg:End()
@154,67 BTNBMP LEFT PROMPT " Modificar" SIZE 50,19 OF oDlg FILENAME "CARDF00C.BMP" ACTION oDlg:End()
@154,125 BTNBMP LEFT PROMPT " Borrar" SIZE 50,19 OF oDlg FILENAME "BORRAR1.BMP" //ACTION BorraU(oLbx )
@154,184 BTNBMP LEFT PROMPT " Buscar" SIZE 50,19 OF oDlg FILENAME "FIND.BMP" //ACTION BuscaU(oLbx,3,"Color")
@154,242 BTNBMP LEFT PROMPT " Salir" SIZE 50,19 OF oDlg FILENAME "SALIR3.BMP" ACTION oDlg:End()
ACTIVATE DIALOG oDlg CENTERED
oRecordSet:close()
RETURN NIL
estoy trabajando con FWH 7.01 + xharbour + bcc++
Le estare agradecido cualquier aporte que me saque de este atolladero,
Desde Nicaragua
Ramon Paredes
Nuevamente auxilio de Browse con ado,
- Ramon Paredes
- Posts: 215
- Joined: Fri Feb 02, 2007 3:38 pm
- Location: Managua, Nicaragua
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
Ramón
El recordset devuelto con la consulta es un arreglo que contiene las filas y columnas con el resultado de la consulta. Por lo tanto se puede usar directamente el recordset para mostrar en el browse. Lo que veo que te hace falta es colocar el listbox:bline:={||} donde se especifica el oRs:MoveNext()........
Personalmente tuve problemas al mostrar en el browse directamente el recordset, y para no hacerme lío lo que hice es pasar todo el recordset a una array, y este último mostrar en el browse.
aDatos := {}
oDatos:MoveFirst()
do while .not. oDatos:EOF()
AADD(aDatos, {oDatos:Fields(0):value,;
oDatos:Fields(1):value,;
oDatos:Fields(2):value,;
oDatos:Fields(3):value})
oDatos:MoveNext()
enddo
En todo caso si lo que quieres es sólo mostrar datos y nada más te aconsejo que hagas lo que hice.
Esperemos que pronto esté completo el ADORDD el cual nos facilitará enormemente el acceso por ADO. Felicitaciones y gracias infinitas a quienes están llevando adelante este trabajo.
Un saludo
Marcelo Jingo
El recordset devuelto con la consulta es un arreglo que contiene las filas y columnas con el resultado de la consulta. Por lo tanto se puede usar directamente el recordset para mostrar en el browse. Lo que veo que te hace falta es colocar el listbox:bline:={||} donde se especifica el oRs:MoveNext()........
Personalmente tuve problemas al mostrar en el browse directamente el recordset, y para no hacerme lío lo que hice es pasar todo el recordset a una array, y este último mostrar en el browse.
aDatos := {}
oDatos:MoveFirst()
do while .not. oDatos:EOF()
AADD(aDatos, {oDatos:Fields(0):value,;
oDatos:Fields(1):value,;
oDatos:Fields(2):value,;
oDatos:Fields(3):value})
oDatos:MoveNext()
enddo
En todo caso si lo que quieres es sólo mostrar datos y nada más te aconsejo que hagas lo que hice.
Esperemos que pronto esté completo el ADORDD el cual nos facilitará enormemente el acceso por ADO. Felicitaciones y gracias infinitas a quienes están llevando adelante este trabajo.
Un saludo
Marcelo Jingo
- Ramon Paredes
- Posts: 215
- Joined: Fri Feb 02, 2007 3:38 pm
- Location: Managua, Nicaragua
Estos son los errores de compilacion con RDDADO
Antonio,
Al compilar me emite estos errores :
ompiling...
xHarbour Compiler build 0.99.71 (SimpLex)
Copyright 1999-2006, http://www.xharbour.org http://www.harbour-project.org/
Compiling 'personal.prg' and generating preprocessed output to 'personal.ppo'...
100
500
Lines 601, Functions/Procedures 9
Generating C source output to 'personal.c'...
Done.
Borland C++ 5.5 for Win32 Copyright (c) 1993, 2000 Borland
personal.c:
Borland Resource Compiler Version 5.40
Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved.
Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland
Error: Unresolved external '_hb_vmProcessSymbolsEx' referenced from C:\XHARBOUR\LIB\ADORDD.LIB|adordd
Error: Unresolved external '_HB_FUN_USRRDD_RDDDATA' referenced from C:\XHARBOUR\LIB\ADORDD.LIB|adordd
Error: Unresolved external '_HB_FUN_USRRDD_AREADATA' referenced from C:\XHARBOUR\LIB\ADORDD.LIB|adordd
Error: Unresolved external '_HB_FUN_HB_TOKENGET' referenced from C:\XHARBOUR\LIB\ADORDD.LIB|adordd
Error: Unresolved external '_HB_FUN_USRRDD_ID' referenced from C:\XHARBOUR\LIB\ADORDD.LIB|adordd
Error: Unresolved external '_HB_FUN_UR_SUPER_ERROR' referenced from C:\XHARBOUR\LIB\ADORDD.LIB|adordd
Error: Unresolved external '_HB_FUN_UR_SUPER_SETFIELDEXTENT' referenced from C:\XHARBOUR\LIB\ADORDD.LIB|adordd
Error: Unresolved external '_HB_FUN_UR_SUPER_ADDFIELD' referenced from C:\XHARBOUR\LIB\ADORDD.LIB|adordd
Error: Unresolved external '_HB_FUN_UR_SUPER_OPEN' referenced from C:\XHARBOUR\LIB\ADORDD.LIB|adordd
Error: Unresolved external '_HB_FUN_UR_SUPER_CLOSE' referenced from C:\XHARBOUR\LIB\ADORDD.LIB|adordd
Error: Unresolved external '_HB_FUN_USRRDD_GETFUNCTABLE' referenced from C:\XHARBOUR\LIB\ADORDD.LIB|adordd
* There are errors
*** Process "buildx.bat personal" terminated. Return code=0
tengo la lib de rddado en fwh\lib y en xharbour\lib, el include donde corresponde asi que no se que estoy haciendo mal,
Siempre agradecido por tu atencion y al resto del foro
Ramon Paredes
Al compilar me emite estos errores :
ompiling...
xHarbour Compiler build 0.99.71 (SimpLex)
Copyright 1999-2006, http://www.xharbour.org http://www.harbour-project.org/
Compiling 'personal.prg' and generating preprocessed output to 'personal.ppo'...
100
500
Lines 601, Functions/Procedures 9
Generating C source output to 'personal.c'...
Done.
Borland C++ 5.5 for Win32 Copyright (c) 1993, 2000 Borland
personal.c:
Borland Resource Compiler Version 5.40
Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved.
Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland
Error: Unresolved external '_hb_vmProcessSymbolsEx' referenced from C:\XHARBOUR\LIB\ADORDD.LIB|adordd
Error: Unresolved external '_HB_FUN_USRRDD_RDDDATA' referenced from C:\XHARBOUR\LIB\ADORDD.LIB|adordd
Error: Unresolved external '_HB_FUN_USRRDD_AREADATA' referenced from C:\XHARBOUR\LIB\ADORDD.LIB|adordd
Error: Unresolved external '_HB_FUN_HB_TOKENGET' referenced from C:\XHARBOUR\LIB\ADORDD.LIB|adordd
Error: Unresolved external '_HB_FUN_USRRDD_ID' referenced from C:\XHARBOUR\LIB\ADORDD.LIB|adordd
Error: Unresolved external '_HB_FUN_UR_SUPER_ERROR' referenced from C:\XHARBOUR\LIB\ADORDD.LIB|adordd
Error: Unresolved external '_HB_FUN_UR_SUPER_SETFIELDEXTENT' referenced from C:\XHARBOUR\LIB\ADORDD.LIB|adordd
Error: Unresolved external '_HB_FUN_UR_SUPER_ADDFIELD' referenced from C:\XHARBOUR\LIB\ADORDD.LIB|adordd
Error: Unresolved external '_HB_FUN_UR_SUPER_OPEN' referenced from C:\XHARBOUR\LIB\ADORDD.LIB|adordd
Error: Unresolved external '_HB_FUN_UR_SUPER_CLOSE' referenced from C:\XHARBOUR\LIB\ADORDD.LIB|adordd
Error: Unresolved external '_HB_FUN_USRRDD_GETFUNCTABLE' referenced from C:\XHARBOUR\LIB\ADORDD.LIB|adordd
* There are errors
*** Process "buildx.bat personal" terminated. Return code=0
tengo la lib de rddado en fwh\lib y en xharbour\lib, el include donde corresponde asi que no se que estoy haciendo mal,
Siempre agradecido por tu atencion y al resto del foro
Ramon Paredes
- Ramon Paredes
- Posts: 215
- Joined: Fri Feb 02, 2007 3:38 pm
- Location: Managua, Nicaragua