Ayuda con TDolphin

Ayuda con TDolphin

Postby EBM » Wed Jun 26, 2013 5:45 pm

Hola compañeros:

Estoy cambiando una aplicacion que utilizaba Eagle a Dolphin, pero necesito saber si en Dolphin existe ya algun array donde se encuentre el resultado de una consulta o forzosamente debo hacer aArray := oQuery:FillArray()?? Ya busque en el codigo pero no encuentro nada y como soy nuevo en Dolphin ando un poco perdido y quiero ahorrarme algunas lineas de codigo haciendolo directamente como lo hacia antes con Eagle.

Saludos y gracias

LCP Eduardo Borondón Muñiz
EBM
 
Posts: 147
Joined: Tue Oct 11, 2005 8:22 pm
Location: Guadalajara, Jal Mexico

Re: Ayuda con TDolphin

Postby Ariel » Wed Jun 26, 2013 7:33 pm

Eduardo,

lo puedes ver en testfill.prg de los samples de dolphin :

Code: Select all  Expand view


   oQry = TDolphinQry():New( "SELECT * FROM testman", oServer )
   aData = oQry:FillArray(, { "name", "last", "birth" } )
   ? "Array filled"
   ? "Total Items:" + Str( Len( aData ) )
   oQry:SetLimit( 10 )
   oQry:GoTop()
   aData = oQry:FillArray( { | aRow | qout( aRow[ 2 ] ) } )
   ? "Change Limit to 10, Array filled"
   ? "Total Items:" + Str( Len( aData ) )
   ?
     
 


de todos modos tienes el metodo en tdolpqry.prg :

METHOD FillArray( bOnFillArray, aColumns ) CLASS TDolphinQry

Espero te sirva,
Salu2, Ariel
Ariel
 
Posts: 374
Joined: Wed Nov 29, 2006 1:51 pm
Location: Rosario - Argentina

Re: Ayuda con TDolphin

Postby Daniel Garcia-Gil » Wed Jun 26, 2013 7:39 pm

Hola

Debes llamar al metodo fillarray cuando asi lo requieras, la ventaja de hacerlo de esa forma es que no hace falta hacer el recorrido de toda la una consulta si no lo necesitas, no generara un arreglo de registros si no lo necesitas, ejemplo si el resultado de la consulta es muy grande no tienes pq esperar a que retorne todos los datos de la misma para processar

si quieres ahorrarte esa linea de codigo, puedes crear una funcion propia que ejecute la sentencia y te retorne un arreglo

Code: Select all  Expand view
function myquery(oServer, cQuery)
   local aDatos
   local oQry
   
   oQry = oServer:Query(cQuery)

   aDatos = oQry:FillArray()

   oQry:End()

return aDatos
User avatar
Daniel Garcia-Gil
 
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 pm
Location: Isla de Margarita

Re: Ayuda con TDolphin

Postby EBM » Thu Jun 27, 2013 2:55 pm

Gracias por contestar, así lo había implementado, solo que pensé que internamente ya tendría un arreglo y yo lo estaba duplicando, muchas gracias por la respuesta.

Saludos y gracias a ambos

LCP Eduardo Borondón Muñiz
EBM
 
Posts: 147
Joined: Tue Oct 11, 2005 8:22 pm
Location: Guadalajara, Jal Mexico


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 57 guests