FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Consulta en mysql
Posts: 652
Joined: Wed Oct 19, 2005 12:03 PM

Consulta en mysql

Posted: Tue Apr 11, 2017 11:36 PM
Otra consulta, para una cuenta corriente lo que hago es cargar un array y mostrarlo

Code (fw): Select all Collapse
 cQueryct := "SELECT * FROM ctacte where ncli  = "+ alltrim(str(oCta:ncli)) + " ORDER by fecha"

oQry :=oMysql:Query( cQueryct)
oQry:gotop()
do

    nImporte :=   0
    if oQry:tipo = "1"
          lTipo := .t.
      nsaldo += oQry:importe
    else
          lTipo := .f.
      nsaldo -= oQry:importe
    endif

    aadd(oCta:adet,{oQry:fecha, (oQry:descripcion  + oQry:numero),lTipo, oQry:importe, nsaldo, oQry:pventa, oQry:numero,oQry:tipodoc})
    oQry:skip()

until oQry:eof()


Y se muestra
Code (fw): Select all Collapse
REDEFINE LISTBOX oBrw fields "" ID 101 of oDlg UPDATE  ON DBLCLICK detacli(oMysql,oBrw,oBrw:nAt,lcliente, oDlg  )
                                         oBrw:bline:= {|nAt| nAt:= oBrw:nAt,;
                                         iif(len(oCta:adet ) < 1 .or. nAt > len(oCta:adet), array(5),;
                                              {transform(oCta:adet[nAt,1],"@d "),oCta:adet[nAt,2] ,;
                                          iif(oCta:aDet[nAt,3], transform(oCta:aDet[nAt,4],"@e 999,999.99"),""),;                               //facturas
                                                iif(oCta:aDet[nAt,3],"", transform(oCta:aDet[nAt,4],"@e 999,999.99")),;                               //pagos
                                                transform(oCta:aDet[nAt,5],"@e 999,999.99")  } )  }


                         oBrw:setarray(oCta:adet)
                         oBrw:acolsizes := {80,158,115,115,120}
                         oBrw:aheaders := { "FECHA","DETALLE","DEBE","PAGOS","SALDO"}
                         oBrw:ajustify := {0,0,1,1,1}
                         oBrw:aHjustify := {2,2,2,2,2}
                         oBrw:lAdjlastcol:= .t.
                         oBrw:nLineStyle := 3
REDEFINE BUTTON oNbut[4] ID 106 ACTION borrar(oMysql, lcliente,oCta,oBrw )

Y como veran un boton para borrar que va a esta funcion

Code (fw): Select all Collapse
STATIC FUNCTION borrar(oMysql, lcliente,oCta,oBrw)


if MsgYesNo("¿Desea borrar este registro y todos los asociados?","Aviso del sistema")
   oQry:goto(oBrw:nAt)
   oQry:delete()
   oQry:refresh()

   ADel( oCta:aDet,oBrw:nAt )
   ASize( oCta:aDet, Len( oCta:aDet ) - 1 )
   
   corregir(oCta:adet)
   oBrw:gotop()
   oBrw:gobottom()
   oBrw:refresh()     
endif

RETURN NIL

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////


Si borro el último registro no hay problema lo elimina sin mas de la base de datos, pero si la elección es algún registro intermedio no la afecta, ni la modifica en ninguno de sus registros.

Otra consulta ¿ es mejor hacer una sentencia en mysql para mostrar la cuenta corriente ó hacerlo como lo he planteado?

Gracias por su atención

Luis
Posts: 2064
Joined: Fri Jan 06, 2006 09:28 PM

Re: Consulta en mysql

Posted: Wed Apr 12, 2017 03:52 PM

Saludos, si no vas a manipular la data del xBrow, me refierona editar algun registro, es bueno trabajar directamente con el qry, saludos... :shock:

Dios no está muerto...



Gracias a mi Dios ante todo!
Posts: 652
Joined: Wed Oct 19, 2005 12:03 PM

Re: Consulta en mysql

Posted: Wed Apr 12, 2017 10:20 PM

Gracias José Luis, venía manejando el auto hacia casa y pense en lo que vos me comentaste. Lo voy a cambiar

Luis

Posts: 2064
Joined: Fri Jan 06, 2006 09:28 PM

Re: Consulta en mysql

Posted: Thu Apr 13, 2017 12:38 AM
surGom wrote:Gracias José Luis, venía manejando el auto hacia casa y pense en lo que vos me comentaste. Lo voy a cambiar

Luis


Cualquier ayuda que se pueda estamos por aca a la orden, para eso es el foro...saludos... :-)
Dios no está muerto...



Gracias a mi Dios ante todo!

Continue the discussion