PROBLEMA CON TXBROWSE

PROBLEMA CON TXBROWSE

Postby LuisPonce » Mon Jan 07, 2013 2:34 pm

Hola

Uso el FWH 8.02 y necesito usar algo mas avanzado que el Listbox para editar algunas tablas, alguien tiene un ejemplo funcional del XBrowse ?, Altas, Bajas, Modificaciones etc.



Gracias
Luis Ponce
User avatar
LuisPonce
 
Posts: 195
Joined: Tue Jul 01, 2008 6:34 pm
Location: PERU

Re: PROBLEMA CON TXBROWSE

Postby joseluisysturiz » Mon Jan 07, 2013 3:36 pm

Pasate por fwh\samples, hay varios ejemplos, tambien hay que saber que vas usar para almacenamiento de datos, DBF, ADO, MYSQL, etc., saludos... :shock:
Dios no está muerto...

Gracias a mi Dios ante todo!
User avatar
joseluisysturiz
 
Posts: 2064
Joined: Fri Jan 06, 2006 9:28 pm
Location: Guatire - Caracas - Venezuela

Re: PROBLEMA CON TXBROWSE

Postby LuisPonce » Mon Jan 07, 2013 8:27 pm

Gracias por responder Jose Luis

he puesto este codigo, con recursos, a partir de uno de los ejemplos de \Samples

REDEFINE XBROWSE oLbxAlmacenes ID 112 OF oDlgTraslado ;
ALIAS "FTAlmacenes" ;
HEADERS "Tipo", "Número","Fecha","Concepto","Cargo","Abono","Fec Capt" ;
fields "A_TIPO", "A_NUMPOL", "A_FHAMOV", "LEFT(A_CONCEP,35)", ;
"A_TOTCARG", "A_TOTCRED", "F_ECALTA" ;
CELL LINES FOOTERS NOBORDER

con el fichero xbrowse.ch al inicio, y al compilar con el xharbour me da este error :

Error E0030 syntax error "Syntax error at 'XBROWSE' "

1 error

No code generade

Le he dado mil vueltas, y no encuentro la razon de este mensaje

Te agradezco
Luis Ponce
User avatar
LuisPonce
 
Posts: 195
Joined: Tue Jul 01, 2008 6:34 pm
Location: PERU

Re: PROBLEMA CON TXBROWSE

Postby joseluisysturiz » Mon Jan 07, 2013 10:26 pm

Prueba este campo asi "A_CONCEP", como definistes el xbrowse en tu recurso.? debe ser de tipo custom, verifica y avisa...saludos... :shock:
Dios no está muerto...

Gracias a mi Dios ante todo!
User avatar
joseluisysturiz
 
Posts: 2064
Joined: Fri Jan 06, 2006 9:28 pm
Location: Guatire - Caracas - Venezuela

Re: PROBLEMA CON TXBROWSE

Postby cnavarro » Mon Jan 07, 2013 10:55 pm

LuisPonce wrote:Gracias por responder Jose Luis

he puesto este codigo, con recursos, a partir de uno de los ejemplos de \Samples

REDEFINE XBROWSE oLbxAlmacenes ID 112 OF oDlgTraslado ;
ALIAS "FTAlmacenes" ;
HEADERS "Tipo", "Número","Fecha","Concepto","Cargo","Abono","Fec Capt" ;
fields "A_TIPO", "A_NUMPOL", "A_FHAMOV", "LEFT(A_CONCEP,35)", ;
"A_TOTCARG", "A_TOTCRED", "F_ECALTA"
;
CELL LINES FOOTERS NOBORDER

con el fichero xbrowse.ch al inicio, y al compilar con el xharbour me da este error :

Error E0030 syntax error "Syntax error at 'XBROWSE' "

1 error

No code generade

Le he dado mil vueltas, y no encuentro la razon de este mensaje

Te agradezco



Buenas noches
Creo que los nombres de los campos de la base de datos no van entre comillas

REDEFINE XBROWSE oBrw ID 101 OF oDlg ;
COLUMNS "First", "Salary" ;
FIELDS (cAlias)->State, (cAlias)->Age ;
HEADERS nil, nil, "State", "AGE" ;
JUSTIFY .F., nil, .F., .T. ;
ALIAS cAlias AUTOSORT LINES CELL ;
BACKGROUND aGrad HORIZONTAL

Puede ser?
Un saludo
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
cnavarro
 
Posts: 6549
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: PROBLEMA CON TXBROWSE

Postby LuisPonce » Mon Jan 07, 2013 11:07 pm

Estoy probando como me aconsejan, quité el "LEFT(A_CONCEP,35)" puse el alias a los campos, y me sigue dando el mismo error de syntaxis...

el cosigo quedó asi:

REDEFINE XBROWSE oLbxAlmacenes ID 112 OF oDlgTraslado ;
ALIAS "FTAlmacenes" ;
HEADERS "FL","Co","Almacen","Cantidad","Unidad" ;
FIELDS FTAlmacenes->FILIAL,FTAlmacenes->CODIGO,FTAlmacenes->ALMACEN,TRANS(FTAlmacenes->CANTIDAD,IMPMUM),FTAlmacenes->UNIDAD ;
CELL LINES FOOTERS NOBORDER

y el resultado es:

Error E0030 syntax error "Syntax error at 'XBROWSE' "

1 error

No code generade
Luis Ponce
User avatar
LuisPonce
 
Posts: 195
Joined: Tue Jul 01, 2008 6:34 pm
Location: PERU

Re: PROBLEMA CON TXBROWSE

Postby LuisPonce » Mon Jan 07, 2013 11:25 pm

El ejemplo lo saqué de aqui:

viewtopic.php?f=6&t=24706&p=134157&hilit=txbrowse#p134157

y lo acondiconé a mi necesidad :

uso una tabla con esta estructura:

FILIAL,C,2
CODIGO,C,2
ALMACEN,30
CANTIDAD,N,2
UNIDAD,C,3

FUNCTION EDITAFILE()
LOCAL oLbxAlmacenes,oFntArial,oFntArial2,oSayCod,oSayDes,oSayMar

* Dialogo

DEFINE FONT oFntArial NAME "Arial" SIZE 0, -14
DEFINE FONT oFntArial2 NAME "Arial" SIZE 0, -14 BOLD
DEFINE BRUSH oBrush NAME "BMP_TECLAS2"
DEFINE DIALOG oDlgTraslado RESOURCE "CONS_TABLA" BRUSH oBrush OF oDlg TITLE "Stock en Almacenes"

REDEFINE XBROWSE oLbxAlmacenes ID 112 OF oDlgTraslado ;
ALIAS "FTAlmacenes" ;
HEADERS "FL","Co","Almacen","Cantidad","Unidad" ;
FIELDS FTAlmacenes->FILIAL,FTAlmacenes->CODIGO,FTAlmacenes->ALMACEN,TRANS(FTAlmacenes->CANTIDAD,IMPMUM),FTAlmacenes->UNIDAD ;
CELL LINES FOOTERS NOBORDER

oLbxAlmacenes:Concepto:cFooter := "Prueba Adriano"
* oLbxAlmacenes:aCols[ 5 ]:nFooterType := AGGR_SUM
* oLbxAlmacenes:aCols[ 6 ]:nFooterType := AGGR_SUM
oLbxAlmacenes:MakeTotals()

REDEFINE BTNBMP ID 117 OF oDlgTraslado NAME "BMP_ACEPTAR" ACTION (lAceptar:=.T.,oDlgTraslado:End())
REDEFINE BTNBMP ID 118 OF oDlgTraslado NAME "BMP_SALIR" ACTION (lAceptar:=.F.,oDlgTraslado:End())

ACTIVATE DIALOG oDlgTraslado CENTERED ON INIT (oLbxAlmacenes:SetFocus(.T.))

Select("FTAlmacenes")

IF lAceptar

* ACCIONES

ENDIF

FTAlmacenes->(DbCloseArea())

oFntArial:End()
oFntArial2:End()

ENDIF

oLbxCompra:UpStable()
oLbxCompra:Refresh()

RETURN Nil
Luis Ponce
User avatar
LuisPonce
 
Posts: 195
Joined: Tue Jul 01, 2008 6:34 pm
Location: PERU

Re: PROBLEMA CON TXBROWSE

Postby joseluisysturiz » Tue Jan 08, 2013 1:00 am

Asi lo tengo y trabaja sin problema, solo que uso es un array, revisa como tienes definido tu xbrowse en el recurso, debe ser de tipo CUSTOM, saludos... :shock:

REDEFINE xBrowse oBrw ID 100 of oDlg ;
HEADERS "CODIGO", "DESCRIPCION", "UNIDAD", "CANTIDAD", "PRECIO", "DESC", "SUB-TOTAL" ;
COLUMNS 1, 2, 3, 4, 5, 6, 7 ;
COLSIZES 100, 200, 70, 70, 70, 70, 70 ;
JUSTIFY AL_LEFT, AL_LEFT, AL_LEFT, AL_RIGHT, AL_RIGHT, AL_RIGHT, AL_RIGHT ;
PICTURES , , , "@E 9,999,999", "@E 9,999,999.99", "@E 999.99%", "@E 9,999,999.99" ;
ARRAY aItems FASTEDIT LINES
Dios no está muerto...

Gracias a mi Dios ante todo!
User avatar
joseluisysturiz
 
Posts: 2064
Joined: Fri Jan 06, 2006 9:28 pm
Location: Guatire - Caracas - Venezuela

Re: PROBLEMA CON TXBROWSE

Postby LuisPonce » Tue Jan 08, 2013 2:52 am

Gracias Jose Luis por el interes, lo probare como dices, pero el detalle esta que el error es en la compilacion, no en tiempo de ejecucion.

Gracias
Luis Ponce
User avatar
LuisPonce
 
Posts: 195
Joined: Tue Jul 01, 2008 6:34 pm
Location: PERU

Re: PROBLEMA CON TXBROWSE

Postby FranciscoA » Tue Jan 08, 2013 7:02 pm

Hola Luis, prueba asi: (me funciona en FWH1204)
Code: Select all  Expand view  RUN
REDEFINE XBROWSE oLbxAlmacenes ID 112 OF oDlgTraslado ;
ALIAS "FTAlmacenes" ;
COLUMNS "FILIAL","CODIGO","ALMACEN","CANTIDAD","UNIDAD" ;
HEADERS "FL","Co","Almacen","Cantidad","Unidad" ;
CELL LINES FOOTERS NOBORDER


Asi lo uso:
Code: Select all  Expand view  RUN
REDEFINE XBROWSE oBrw ID 118 OF oDlg ;
         COLUMNS "Codigo", "Nombre", "Apellido","CedulaIde" ;
         HEADERS "Cod/Clte","Nombres","Apellidos","Cedula Id";
         SIZES 70,170,170,140 ;
         ALIAS (cAlias) FOOTERS LINES CELL

   AEval( oBrw:aCols, { |o| o:nEditType := 0 ,;   //No editables
                            o:nHeadStrAlign := 2 } )  //texto encab/col centrado
 

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

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

Re: PROBLEMA CON TXBROWSE

Postby Pedro » Wed Jan 09, 2013 9:51 am

Una pregunta, Luis, aunque parezca tonta, pero a veces por despiste me ha pasado.
¿Tienes puesto el fichero de definiciones, xbrowse.ch?
Un saludo
Pedro
gahetesoft@gmail.com
FWH12.06 BCC582, Xverce CW, Pelles C 6.00.4,PSPAD 4.54
y ahora con ADO
User avatar
Pedro
 
Posts: 464
Joined: Tue Mar 21, 2006 7:30 pm
Location: Córdoba (España)

Re: PROBLEMA CON TXBROWSE

Postby LuisPonce » Wed Jan 09, 2013 2:59 pm

Si pedro, ya revise ese pequeño detalle que a todos nos habrá pasado alguna vez....
El codigo queda asi :


#include "FiveWin.ch"
#include "IMAGE.ch"
#include "xbrowse.ch"


FUNCTION EDITAFILE()
LOCAL oLbxAlmacenes,oFntArial,oFntArial2

* Dialogo

DEFINE FONT oFntArial NAME "Arial" SIZE 0, -14
DEFINE FONT oFntArial2 NAME "Arial" SIZE 0, -14 BOLD
DEFINE BRUSH oBrush NAME "BMP_TECLAS2"
DEFINE DIALOG oDlgTraslado RESOURCE "CONS_TABLA" BRUSH oBrush OF oDlg TITLE "Stock en Almacenes"

REDEFINE XBROWSE oLbxAlmacenes ID 112 OF oDlgTraslado ;
COLUMNS "FILIAL", "CODIGO", "ALMACEN","CANTIDAD" ;
HEADERS "FL","CO","Almacen","Cantidad";
SIZES 70,170,170,140 ;
ALIAS "FTAlmacenes" FOOTERS LINES CELL

AEval( oLbxAlmacenes:aCols, { |o| o:nEditType := 0 ,; //No editables
o:nHeadStrAlign := 2 } ) //texto encab/col centrado


REDEFINE BTNBMP ID 117 OF oDlgTraslado NAME "BMP_ACEPTAR" ACTION (lAceptar:=.T.,oDlgTraslado:End())
REDEFINE BTNBMP ID 118 OF oDlgTraslado NAME "BMP_SALIR" ACTION (lAceptar:=.F.,oDlgTraslado:End())

ACTIVATE DIALOG oDlgTraslado CENTERED ON INIT (oLbxAlmacenes:SetFocus(.T.))

Select("FTAlmacenes")

IF lAceptar

* ACCIONES

ENDIF

FTAlmacenes->(DbCloseArea())

oFntArial:End()
oFntArial2:End()

oLbxCompra:UpStable()
oLbxCompra:Refresh()

RETURN Nil

y sigue saliendo el mismo error de compilacion:

Error E0030 syntax error "Syntax error at 'XBROWSE' "

no encuentro la causa !!
Luis Ponce
User avatar
LuisPonce
 
Posts: 195
Joined: Tue Jul 01, 2008 6:34 pm
Location: PERU

Re: PROBLEMA CON TXBROWSE

Postby LuisPonce » Wed Jan 09, 2013 3:04 pm

A lo mejor sirve de algo comertar lo siguiente... el numero de linea que me da el error como referencia va a:

linea 10978 = ALIAS "FTAlmacenes" FOOTERS LINES CELL

.prg (10978) Error E0030 syntax error "Syntax error at 'XBROWSE' "

lo he probado asi;

ALIAS "FTAlmacenes"

Y da lo mismo
Luis Ponce
User avatar
LuisPonce
 
Posts: 195
Joined: Tue Jul 01, 2008 6:34 pm
Location: PERU

Re: PROBLEMA CON TXBROWSE

Postby joseluisysturiz » Wed Jan 09, 2013 3:47 pm

Podrias mostrar como haces la apertura de la DBF antes de mostrar el xBrowse, es decir, donde asiganas el ALIAS, nose si sera eso lo que te esta hechando broma, saludos... :shock:

Ejemplo totalmente funcional:

DBSELECTAREA("jlalumno") // MAESTRO DE ALUMNOS
jlalumno->( OrdSetFocus(2) )
jlalumno->( DBGOTOP() )
DATABASE oDbfALUM // LECTURA Y CLONACION DE DBF ORIGINAL
oDbfALUM:GOTOP()


oBrow:=TxBrowse():New( oWndAlu )

WITH OBJECT oBrow

:bClrStd := { || If( ( oBrow:nArrayAt % 2 ) == 0, { CLR_BLACK, RGB( 224, 236, 255 ) }, { CLR_BLACK, RGB( 189, 211, 253 ) } ) }
:bClrSel := { || If( ( oBrow:nArrayAt % 2 ) == 0, { CLR_BLACK, RGB( 224, 236, 255 ) }, { CLR_BLACK, RGB( 189, 211, 253 ) } ) }
:nMarqueeStyle := 4
:bRClicked := { || msginfo(cvaltochar(recno())) } // LLAMA MENU-POPUP CON BOTON DERECHO
:nLeft := 203 // DISTANCIA DESDE EL BORDER IZQ.

:nMarqueeStyle := MARQSTYLE_HIGHLROW
:nColDividerStyle := LINESTYLE_BLACK
:nStretchCol := STRETCHCOL_LAST
:lColDividerComplete := .T.
:nHeaderHeight := 30
:l2007 := .T.
:lFooter := .F.
:lRecordSelector := .T.

END WITH
//COMIENZAN LAS COLUMNAS

*** COL.1
oCol := oBrow:AddCol()
oCol:bStrData := {|| IIF( LastRec() > 0 ,;
STRZERO( jlalumno->alu_codigo, 7 ), SPACE(10) ) }
oCol:cHeader := "Código"
oCol:nWidth := 70
oCol:nHeadStrAlign := AL_CENTER
oCol:nDataStrAlign := AL_LEFT

*** COL.2
oCol := oBrow:AddCol()
oCol:bStrData := {|| IIF( LastRec() > 0, jlalumno->alu_ape1, SPACE(250) ) }
oCol:cHeader := "Apellidos"
oCol:nWidth := 250
oCol:nHeadStrAlign := AL_CENTER
oCol:nDataStrAlign := AL_LEFT

*** COL.3
oCol := oBrow:AddCol()
oCol:bStrData := {|| IIF( LastRec() > 0, jlalumno->alu_nom1, SPACE(250) ) }
oCol:cHeader := "Nombres"
oCol:nWidth := 250
oCol:nHeadStrAlign := AL_CENTER
oCol:nDataStrAlign := AL_LEFT

*** COL.4
oCol := oBrow:AddCol()
oCol:bStrData := {|| IIF( LastRec() > 0 ,;
STRZERO( jlalumno->alu_cedula, 8 ), SPACE(10) ) }
oCol:cHeader := "Cédula"
oCol:nWidth := 70
oCol:nHeadStrAlign := AL_CENTER
oCol:nDataStrAlign := AL_LEFT

// TERMINAN LAS COLUMNAS

oBrow:cAlias := "jlalumno"
oBrow:SetRDD()
oBrow:Refresh( .T. )
oBrow:CreateFromCode()
Dios no está muerto...

Gracias a mi Dios ante todo!
User avatar
joseluisysturiz
 
Posts: 2064
Joined: Fri Jan 06, 2006 9:28 pm
Location: Guatire - Caracas - Venezuela

Re: PROBLEMA CON TXBROWSE

Postby FranciscoA » Wed Jan 09, 2013 6:47 pm

Luis,
Solo para informacion, los comandos que tratas de usar están disponibles desde la version AGOSTO/2008 (8.08), y vos indicas que utilizas la 8.02

* New: XBROWSE Commands:

1. @ 0,0 XBROWSE and REDEFINE XBROWSE:
Now list of columns, fields, headers, etc. can also be specified as arrays in line or array variables can be
used. Example:
REDEFINE XBROWSE <clauses> HEADERS 'First', 'Last', ....

can also be written as

REDEFINE XBROWSE <clauses> HEADERS aHdrs .... ( where aHdrs := { 'First', 'Last', .... } )

This applies to all lists in xbrowse creation commands.


PD: Revisando mas cuidadosamente WHATSNEW, estos comandos estan disponibles desde la 8.03
Saludos.
Last edited by FranciscoA on Fri Jan 11, 2013 3:12 am, edited 1 time in total.
Francisco J. Alegría P.
Chinandega, Nicaragua.

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

Next

Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 56 guests