Problemas al cargar un xbrowse

Problemas al cargar un xbrowse

Postby surGom » Sat Oct 21, 2017 12:35 pm

Hola compañeros, cuando cargo este xbrowse, con un array me repite el primer renglon del array

https://drive.google.com/file/d/0B8UT409V4x1ma3I3U2czbjVPVW8/view?usp=sharing

como se puede apreciar en la imagen carge el item que dice stock 24750.
Ahora bien si edito, sobre la segunda fila del array que cargue en el segundo browse, me muestra 24750 y el lote correspondiente, al presionar enter me muesta nuevamente los valores de la imagen que muestro

Code: Select all  Expand view

local beval := { || AAdd(adeta,{cProducto, oLote:lote, oLote:stock}),oBrw1:refresh()}





oLote:setfilter("codigo =" + AllTrim(Str( nCodigo) ) )

DEFINE DIALOG odlg RESOURCE "DIA_PEDDEPO"
odlg:cCaption := "Lotes existentes  de " + cProducto

   REDEFINE BTNBMP RESOURCE  "BTPEDIDO", "BTPEDIDO1" ID 106 action impriped(adeta)

   REDEFINE XBROWSE oBrw ID 103 OF odlg DATASOURCE oLote;
      COLUMNS { 1, 2, 3, 4 };
      HEADERS "Fecha", "Lote", "Cantidad", "Stock";
      COLSIZES 80, 90, 190, 100;
      LINES CELL  UPDATE ON DBLCLICK Eval(beval)

   WITH OBJECT oBrw
      :lDisplayZeros := .F.
      :nMarqueeStyle := MARQSTYLE_HIGHLROWRC
      :nStretchCol := STRETCHCOL_WIDEST
      :lColDividerComplete := .F.
      :lAllowColHiding := .F.
   END WITH

   WITH OBJECT oBrw:aCols[ 1 ]
      :bEditValue := {|| oLote:entrada }
      :nDataStrAlign := AL_LEFT
   END WITH


   WITH OBJECT oBrw:aCols[ 2 ]
      :bEditValue := {|| oLote:lote }
      :nDataStrAlign := AL_LEFT
   END WITH

   WITH OBJECT oBrw:aCols[ 3 ]
      :bEditValue := {|| oLote:cantidad }
      :nDataStrAlign := AL_RIGHT
   END WITH

   WITH OBJECT oBrw:aCols[ 4 ]
      :bEditValue := {|| oLote:stock }
      :nDataStrAlign := AL_RIGHT
   END WITH

   REDEFINE XBROWSE oBrw1 ID 102 OF odlg array adeta;
      COLUMNS { 1, 2, 3 };
      HEADERS "Producto", "Lote" ,"Cantidad";
      COLSIZES 200, 100, 190;
      LINES CELL  UPDATE

   WITH OBJECT oBrw1
      :lDisplayZeros := .F.
      :nMarqueeStyle := MARQSTYLE_HIGHLROWRC
      :nStretchCol := STRETCHCOL_WIDEST
      :lColDividerComplete := .F.
      :lAllowColHiding := .F.
    //  :bGotFocus:= {|| oCom:activate() }
   END WITH


   WITH OBJECT oBrw1:aCols[ 1 ]
      :bStrData := {|| iif( Len( adeta ) = 0, "",adeta[ oBrw:nArrayAt, 1 ] ) }
      :nFootStrAlign := AL_LEFT
   END WITH


   WITH OBJECT oBrw1:aCols[ 2 ]
      :bStrData := {|| iif( Len( adeta ) = 0, "",adeta[ oBrw:nArrayAt, 2 ] ) }
      :nFootStrAlign := AL_RIGHT
      :nEditType := EDIT_GET
      :bOnPostEdit := {| oCol, xVal, nKey | If( nKey <> VK_ESCAPE,oCol:value := xVal, delreg( oBrw,adet ) ) }
   END WITH

   WITH OBJECT oBrw1:aCols[ 3 ]
      :bStrData := {|| iif( Len( adeta ) = 0, 0, adeta[ oBrw:nArrayAt, 3 ] ) }
      :cEditPicture := "@E 999,999.99"
      :nFootStrAlign := AL_RIGHT
      :nEditType := EDIT_GET
      :bOnPostEdit := {| oCol, xVal, nKey | If( nKey <> VK_ESCAPE,oCol:value := xVal, ) }
   END WITH
   ACTIVATE DIALOG odlg CENTER

   oLote:setfilter("nil")
return nil
 


Gracias por su atención
surGom
 
Posts: 639
Joined: Wed Oct 19, 2005 12:03 pm

Re: Problemas al cargar un xbrowse

Postby surGom » Sun Oct 22, 2017 12:34 am

Compañeros cambié el código y ahora funciona
Esta es la parte que cambié
Code: Select all  Expand view

   REDEFINE XBROWSE oBrw1 ID 102 OF odlg array adeta;
      COLUMNS { 1, 2, 3 };
      HEADERS "Producto", "Lote" ,"Cantidad";
      COLSIZES 200, 100, 190;
      LINES CELL fastedit UPDATE  
     
     
    AEval( oBrw1:aCols, { |o| o:nEditType := EDIT_GET } )  
    oBrw1:nStretchCol := STRETCHCOL_WIDEST
 


Me interesería saber el porqué de la otra forma tiene ese comportamiento tan extraño

Luis
surGom
 
Posts: 639
Joined: Wed Oct 19, 2005 12:03 pm


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot], groiss and 14 guests