Page 1 of 1

Consulta en mysql

PostPosted: Tue Apr 11, 2017 11:36 pm
by surGom
Otra consulta, para una cuenta corriente lo que hago es cargar un array y mostrarlo

Code: Select all  Expand view
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: Select all  Expand view
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: Select all  Expand view
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

Re: Consulta en mysql

PostPosted: Wed Apr 12, 2017 3:52 pm
by joseluisysturiz
Saludos, si no vas a manipular la data del xBrow, me refierona editar algun registro, es bueno trabajar directamente con el qry, saludos... :shock:

Re: Consulta en mysql

PostPosted: Wed Apr 12, 2017 10:20 pm
by surGom
Gracias José Luis, venía manejando el auto hacia casa y pense en lo que vos me comentaste. Lo voy a cambiar

Luis

Re: Consulta en mysql

PostPosted: Thu Apr 13, 2017 12:38 am
by joseluisysturiz
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... :shock: