Buenas tardes para todos,
En este momento me surge la necesidad de actualizar o mejor dicho cambiar el recorset en tiempo de ejecuci贸n, lo estoy intentando de la siguiente manera, pero al hacer el requery, sale un error.
Cabe aclarar que la primera vez, se muestra bien, el problema surge cuando hago click sobre uno de los botones.
El error
En este momento me surge la necesidad de actualizar o mejor dicho cambiar el recorset en tiempo de ejecuci贸n, lo estoy intentando de la siguiente manera, pero al hacer el requery, sale un error.
Cabe aclarar que la primera vez, se muestra bien, el problema surge cuando hago click sobre uno de los botones.
#include "fivewin.ch"
#include "ado.ch"
function Main()
聽 聽local oCnFtr, oRsFtr, oDlg, oBrw,cCnd,cQry,oError
聽 聽local aSql 聽:= { 聽"select * from tbl_empr", ;
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽"select * from tbl_empr WHERE e_codi='01'", ;
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽"select * from tbl_empr WHERE e_tipo='CONTABLE'" }
聽 聽 //CREAMOS UNA CONEXION PARA SOLO FACTURACION
聽 聽 cCnd := "DSN=dlyma;Uid=root;Pwd=secret;"
聽 聽 oCnFtr := FW_OpenAdoConnection( cCnd )
聽 聽 cQry := "USE dlyma"
聽 聽 TRY
聽 聽 聽 oCnFtr:Execute(cQry)
聽 聽 CATCH oError
聽 聽 聽 FW_ShowAdoError(oCnFtr)
聽 聽 END
聽 聽
聽 聽 oRsFtr := FW_OPENRECORDSET(oCnFtr,aSql[1],adLockOptimistic,adOpenKeyset)
聽 聽DEFINE DIALOG oDlg SIZE 600,400 PIXEL TRUEPIXEL ;
聽 聽 聽 TITLE "SWITCH TABLES/FIELDS AT RUNTIME"
聽 聽@ 60, 20 XBROWSE oBrw SIZE -20,-20 PIXEL OF oDlg ;
聽 聽 聽 DATASOURCE oRsFtr AUTOCOLS CELL LINES NOBORDER
聽 聽oBrw:CreateFromCode()
聽 聽@ 20, 20 BTNBMP PROMPT "sin filtro" ;
聽 聽 聽 SIZE 100,35 PIXEL OF oDlg FLAT ;
聽 聽 聽 ACTION ( CursorWait(), oRsFtr:Requery( aSql[ 1 ] ), oRsFtr:SetXbrColumns( oBrw ) )
聽 聽@ 20,140 BTNBMP PROMPT "filtro 1" ;
聽 聽 聽 SIZE 100,35 PIXEL OF oDlg FLAT ;
聽 聽 聽 ACTION ( CursorWait(), oRsFtr:Requery( aSql[ 2 ] ), oRsFtr:SetXbrColumns( oBrw ) )
聽 聽@ 20,260 BTNBMP PROMPT "filtro 2" ;
聽 聽 聽 SIZE 100,35 PIXEL OF oDlg FLAT ;
聽 聽 聽 ACTION ( CursorWait(), oRsFtr:Requery( aSql[ 3 ] ), oRsFtr:SetXbrColumns( oBrw ) )
聽 聽ACTIVATE DIALOG oDlg CENTERED
聽 聽oCnFtr:Close()
return nilEl error
Application
===========
聽 聽Path and name: C:\fwh1909\samples\leandro.exe (32 bits)
聽 聽Size: 3,862,528 bytes
聽 聽Compiler version: xHarbour 1.2.3 Intl. (SimpLex) (Build 20190613)
聽 聽FiveWin 聽version: FWH 19.09
聽 聽C compiler version: Borland/Embarcadero C++ 7.3 (32-bit)
聽 聽Windows version: 6.2, Build 9200
聽 聽Time from start: 0 hours 0 mins 1 secs
聽 聽Error occurred at: 11/16/20, 16:10:35
聽 聽Error description: Error ADODB.RecordSet/6 聽DISP_E_UNKNOWNNAME: REQUERY
聽 聽Args:
聽 聽 聽[ 聽 1] = C 聽 select * from tbl_empr WHERE e_codi='01'
Stack Calls
===========
聽 聽Called from: 聽=> TOLEAUTO:REQUERY( 0 )
聽 聽Called from: leandro.prg => (b)MAIN( 36 )
聽 聽Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:CLICK( 704 )
聽 聽Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:LBUTTONUP( 990 )
聽 聽Called from: .\source\classes\CONTROL.PRG => TCONTROL:HANDLEEVENT( 1791 )
聽 聽Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:HANDLEEVENT( 2030 )
聽 聽Called from: .\source\classes\WINDOW.PRG => _FWH( 3559 )
聽 聽Called from: 聽=> DIALOGBOXINDIRECT( 0 )
聽 聽Called from: .\source\classes\DIALOG.PRG => TDIALOG:ACTIVATE( 304 )
聽 聽Called from: leandro.prg => MAIN( 42 )Saludos
LEANDRO AREVALO
Bogot谩 (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com
[ Turbo Incremental Link64 6.98 Embarcadero 7.70 ] [ FiveWin 25.01 ] [ xHarbour 64 bits) ]
LEANDRO AREVALO
Bogot谩 (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com
[ Turbo Incremental Link64 6.98 Embarcadero 7.70 ] [ FiveWin 25.01 ] [ xHarbour 64 bits) ]
