Replace all en Xbrowse

Replace all en Xbrowse

Postby Jorge_T » Thu Feb 14, 2019 12:06 pm

Hola, buenos dias,

Tengo cargado un dbf en un xbrowse (campos: codigo, nombre, tarifa, ...) y desearia que al pulsar un "button" cambiase para todos los registros cargados el contenido del campo tarifa por otro. (Es decir un replace tarifa with "text" all)

Quizas es muy simple, pero no se como hacerlo en xbrowse,

Muchas gracias por vuestra ayuda,
Jorge
--------------------------------------------------
Fivewin 18.10 - Harbour - BCC 7 - PellesC
--------------------------------------------------
Jorge_T
 
Posts: 38
Joined: Tue Jan 22, 2019 8:28 am

Re: Replace all en Xbrowse

Postby FranciscoA » Thu Feb 14, 2019 8:41 pm

Hola.
Si entendí bien, creo que puedes hacerlo de dos maneras. Mira si el siguiente codigo ejemplo te es útil y lo adaptas a tus necesidades.
Code: Select all  Expand view
//------------------------
Function Prueba()
local oDlg, oBrw, cOldSele:=Select()

   DBSELECTAREA("MAEPRODT")
   copy to c:\mae for maeprodt->(Recno()) <= 15
   DbUseArea(.t.,,"c:\mae","mae",.f.)

DEFINE DIALOG oDlg FROM 1,2 to 20,80 TITLE "FapSoft"

@.10,.10 XBROWSE oBrw OF oDlg ;
     COLUMNS "CODIGO","DESCRIP","PVENTA" ;
     ALIAS "mae"  CELL LINES FOOTERS AUTOSORT

     oBrw:CreateFromCode()

 @7,2 BUTTON "Action" OF oDlg SIZE 30, 12   ACTION DoAction(oBrw)

 @7,8 BUTTON "Salir"  OF oDlg SIZE 30, 12   ACTION oDlg:End()
 
 ACTIVATE DIALOG oDlg  CENTERED ;
   ON INIT ( oBrw:nHeight:=oDlg:nHeight-80, oBrw:nWidth:=oDlg:nWidth-40, oBrw:nTop:=oDlg:nTop+0.50 )

   mae->(dbCloseArea())
   Ferase("c:\mae.dbf")

   dbSelectArea(cOldSele)
Return nil
//----------------------------
Function DoAction(oBrw)
local cAlias := oBrw:cAlias, n

/*
//Modo 1
(cAlias)->(dbgotop())
While (cAlias)->(!eof())
    (cAlias)->Pventa := 5.00
    (cAlias)->(dbSkip())
Enddo
(cAlias)->(dbgotop())
oBrw:Refresh()
*/


//Modo 2
For n := 1 to oBrw:nLen
    oBrw:PVenta:Value := 5.00  //ó oBrw:aCols[3]:Value
    oBrw:GoDown()
Next
oBrw:GoTop()
oBrw:Refresh()

Return nil

 

Saludos.
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh-MySql-TMySql
User avatar
FranciscoA
 
Posts: 2157
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: Replace all en Xbrowse

Postby nageswaragunupudi » Fri Feb 15, 2019 2:23 am

Jorge_T wrote:Hola, buenos dias,

Tengo cargado un dbf en un xbrowse (campos: codigo, nombre, tarifa, ...) y desearia que al pulsar un "button" cambiase para todos los registros cargados el contenido del campo tarifa por otro. (Es decir un replace tarifa with "text" all)

Quizas es muy simple, pero no se como hacerlo en xbrowse,

Muchas gracias por vuestra ayuda,


Please try this sample and adapt to your needs.
Code: Select all  Expand view
#include "fivewin.ch"

function Main()

   local oDlg, oBrw

   USE CUSTOMER NEW SHARED

   DEFINE DIALOG oDlg SIZE 700,400 PIXEL TRUEPIXEL

   @ 70,20 XBROWSE oBrw SIZE -20,-20 PIXEL OF oDlg ;
      DATASOURCE "CUSTOMER" ;
      COLUMNS "FIRST", "LAST", "STREET", "CITY", "STATE" ;
      CELL LINES NOBORDER

   WITH OBJECT oBrw
      :City:lHide   := .t.
      :CreateFromCode()
   END

   @ 10, 20 BTNBMP PROMPT "SHOW Street" SIZE 120,40 PIXEL OF oDlg FLAT ;
      ACTION ( oBrw:Street:Show(), oBrw:City:Hide(), oBrw:SetFocus() )

   @ 10,150 BTNBMP PROMPT "SHOW City"   SIZE 120,40 PIXEL OF oDlg FLAT ;
      ACTION ( oBrw:Street:Hide(), oBrw:City:Show(), oBrw:SetFocus() )

   ACTIVATE DIALOG oDlg CENTERED

return nil
 


Image
Regards

G. N. Rao.
Hyderabad, India
User avatar
nageswaragunupudi
 
Posts: 10465
Joined: Sun Nov 19, 2006 5:22 am
Location: India

Re: Replace all en Xbrowse

Postby Jorge_T » Fri Feb 15, 2019 4:08 pm

Muchas gracias Francisco,

La opcion 1 funciona perfecto,

Saludos,
Jorge
--------------------------------------------------
Fivewin 18.10 - Harbour - BCC 7 - PellesC
--------------------------------------------------
Jorge_T
 
Posts: 38
Joined: Tue Jan 22, 2019 8:28 am


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 48 guests