Replace all en Xbrowse

Post Reply
Jorge_T
Posts: 36
Joined: Tue Jan 22, 2019 8:28 am

Replace all en Xbrowse

Post by Jorge_T »

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 _ 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
--------------------------------------------------
User avatar
FranciscoA
Posts: 1964
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: Replace all en Xbrowse

Post by FranciscoA »

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

//------------------------
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.

Fwxh1204-MySql-TMySql
User avatar
nageswaragunupudi
Posts: 8017
Joined: Sun Nov 19, 2006 5:22 am
Location: India
Contact:

Re: Replace all en Xbrowse

Post by nageswaragunupudi »

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 _ 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

#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
Jorge_T
Posts: 36
Joined: Tue Jan 22, 2019 8:28 am

Re: Replace all en Xbrowse

Post by Jorge_T »

Muchas gracias Francisco,

La opcion 1 funciona perfecto,

Saludos,
Jorge
--------------------------------------------------
Fivewin 18.10 - Harbour - BCC 7 - PellesC
--------------------------------------------------
Post Reply