Los campos no se muestran correctamente

User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Los campos no se muestran correctamente

Post by Antonio Linares »

Si situamos un texto en el reporte y revisamos sus propiedades, al pulsar en el segundo bitmap que aparece arriba en la caja de diálogo, aparece una caja de diálogo desde la que podemos insertar un campo de una base de datos.

Al pulsar ahi, nos aparecen las bases de datos disponibles y sus campos, y el contenido de _ está erróneo.

A ver si damos con el problema.

Puede que esté relacionado con el fichero INI, el cual he comprobado que de no existir, ER no lo genera automaticamente de forma satisfactoria. Esto es algo que reportaré en otro post para solucionarlo, y me da que pueda estar relacionado con este error que comento.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
lucasdebeltran
Posts: 1303
Joined: Tue Jul 21, 2009 8:12 am
Contact:

Re: Los campos no se muestran correctamente

Post by lucasdebeltran »

Hola Antonio,

_ de la DBF o bien el campo en ADO se definen mejor desde la aplicación del cliente:


EASYREPORT oVRD NAME ".\REPORT\FACTURA.VRD" ;
PREVIEW lPreview PRINTDIALOG .T. OF oWndMain

IF oVRD:lDialogCancel = .T.
dbSelectArea( nOldArea )
RETURN( .F. )
ENDIF





PRINTAREA 1 OF oVRD ;
ITEMIDS { 500,501 ,;
401,402,403,404 ,;
102,103,104,105,106 ,;
201,202,203 } ;
ITEMVALUES { NIL,NIL ,;
EMPRESAS->NOMBRE2, EMPRESAS->DIRECCION, EMPRESAS->POBLACION , "NIF / CIF: " + EMPRESAS->NIF ,;

END EASYREPORT oVRD


Es decir, en ITEMVALUES se puede especificar el campo de la DBF, una variable, etc.
Muchas gracias. Many thanks.

Un saludo, Best regards,

Harbour 3.2.0dev, Borland C++ 5.82 y FWH 13.06 [producción]

Implementando MSVC 2010, FWH64 y ADO.

Abandonando uso xHarbour y SQLRDD.
User avatar
mastintin
Posts: 1502
Joined: Thu May 27, 2010 2:06 pm

Re: Los campos no se muestran correctamente

Post by mastintin »

Relacionado con este mismo tema si creas un nuevo reporte e insertas un texto y le das al primer botón también casca pues no encuentra las dbf General y User .
Tendría que tener un directorio donde guardar estas dos dbf y si no las encuentra en el crearlas . Las dbf están en examples pero en vez llamarse User.dbf a secas se llama Easyreport user.dbf y lo mismo General.dbf .
User avatar
mastintin
Posts: 1502
Joined: Thu May 27, 2010 2:06 pm

Re: Los campos no se muestran correctamente

Post by mastintin »

Antonio Linares wrote:Si situamos un texto en el reporte y revisamos sus propiedades, al pulsar en el segundo bitmap que aparece arriba en la caja de diálogo, aparece una caja de diálogo desde la que podemos insertar un campo de una base de datos.

Al pulsar ahi, nos aparecen las bases de datos disponibles y sus campos, y el contenido de _ está erróneo.
un primer problema :

Code: Select all


FUNCTION OpenDatabases()

   ....

     IF FILE( cDbase ) = .T.
        
         IF Upper(cFileExt( cDBase )) = "DBF"   // Faltaba poner Upper 
              DBUSEAREA( .T.,, cDbase, "DBTEMP", .T. )
            DBGOTOP()
            FOR x := 1 to DBTEMP->(FCOUNT())

....

 
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Los campos no se muestran correctamente

Post by Antonio Linares »

Manuel,

Totalmente de acuerdo :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
mastintin
Posts: 1502
Joined: Thu May 27, 2010 2:06 pm

Re: Los campos no se muestran correctamente

Post by mastintin »

Codigo para la creación de las dos dbfs en directorio Datas sin no existen ya .

Code: Select all


function Main()

  .....
  cDateFormat := LOWER(ALLTRIM( GetPvProfString( "General", "DateFormat", "", cGeneralIni )))

   SET DATE FORMAT IIF( EMPTY( cDateFormat ), "dd.mm.yyyy", cDateFormat )

    CreateDatas()  // creación de las dbf con las datas 

   //Open Undo database
   OpenUndo()

 .....


FUNCTION CreateDatas()
   LOCAL cPath := GetCurDir()+"\Datas\"

 LOCAL aGeneral := {;
                    { "NAME"      , "C",    60,    0 },;
                    { "EXPRESSION", "C",   200,    0 },;
                    { "INFO"      , "C",   200,    0 } }


 LOCAL aUser := {;
                 { "NAME"      , "C",   100,    0 },;
                 { "EXPRESSION", "C",   200,    0 },;
                 { "INFO"      , "C",   200,    0 } }

  IF ! lIsDir( cPath )
     lMkDir( cPath )
  ENDIF
  IF !File( cPath+"General.dbf"  )
     DBCreate(cPath+"General.dbf",aGeneral )
  endif
  IF  !File( cPath+"User.dbf"  )
     DBCreate(cPath+ "User.dbf",aUser )
  ENDIF

RETURN nil


FUNCTION GetDBField( oGet, lInsert )
   LOCAL cPath := GetCurDir()+"\Datas\"    // añadido
   LOCAL oDlg, oLbx1, oLbx2, i, cDbase, cField, oBtn, aTemp, cGeneral, cUser
   LOCAL nShowExpr  := VAL( GetPvProfString( "General", "Expressions", "0", cDefIni ) )
   LOCAL nShowDBase := VAL( GetPvProfString( "General", "EditDatabases", "1", cDefIni ) )
   LOCAL cGenExpr   := ALLTRIM( cPath + GetPvProfString( "General", "GeneralExpressions", "", cDefIni ) )  // cambiado CDefaultPath por Cpath
   LOCAL cUserExpr  := ALLTRIM( cPath + GetPvProfString( "General", "UserExpressions", "", cDefIni ) )      // cambiado CDefaultPath por Cpath   
.....
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Los campos no se muestran correctamente

Post by Antonio Linares »

Manuel,

Ya te he dado acceso como administrador al repositorio, si eres tan amable sube directamente _ allí, gracias :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
mastintin
Posts: 1502
Joined: Thu May 27, 2010 2:06 pm

Re: Los campos no se muestran correctamente

Post by mastintin »

Antonio Linares wrote:Manuel,

Ya te he dado acceso como administrador al repositorio, si eres tan amable sube directamente _ allí, gracias :-)
Subidos . :)
Franklin Demont
Posts: 166
Joined: Wed Aug 29, 2012 8:25 am

Re: Los campos no se muestran correctamente

Post by Franklin Demont »

mastintin wrote:
Antonio Linares wrote:Si situamos un texto en el reporte y revisamos sus propiedades, al pulsar en el segundo bitmap que aparece arriba en la caja de diálogo, aparece una caja de diálogo desde la que podemos insertar un campo de una base de datos.

Al pulsar ahi, nos aparecen las bases de datos disponibles y sus campos, y el contenido de _ está erróneo.
un primer problema :

Code: Select all


FUNCTION OpenDatabases()

   ....

     IF FILE( cDbase ) = .T.
        
         IF Upper(cFileExt( cDBase )) = "DBF"   // Faltaba poner Upper 
              DBUSEAREA( .T.,, cDbase, "DBTEMP", .T. )
            DBGOTOP()
            FOR x := 1 to DBTEMP->(FCOUNT())

....

 
Also :

Code: Select all

   FOR i := 1 TO 12

      ....

      IF FILE( VRD_LF2SF( cDBName ) )
         ...
         AADD( ::aDBType      , UPPER(cFileExt( cDatabase ) ) )
         //AADD( ::aDBType      , cFileExt( cDatabase ) )
         ....
      ENDIF

   NEXT


 
Frank
test
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Los campos no se muestran correctamente

Post by Antonio Linares »

Frank,

Could you please check if your changes are already in the ER repository ?

Manuel (mastintin) has pushed several changes and I had no time yet to review them, so please check if your changes are still needed, thanks
regards, saludos

Antonio Linares
www.fivetechsoft.com
Franklin Demont
Posts: 166
Joined: Wed Aug 29, 2012 8:25 am

Re: Los campos no se muestran correctamente

Post by Franklin Demont »

Antonio Linares wrote:Frank,

Could you please check if your changes are already in the ER repository ?

Manuel (mastintin) has pushed several changes and I had no time yet to review them, so please check if your changes are still needed, thanks
No , it isn't. Without this change the program fail's code as ::aDBType[ nAlias ] = "DBF"

I have also problems with prhst.h

When this file is called from cfunc.c , last line (1079) must be : #endif //_PRSHT_H_

When called as (building with ereport.mak) :
b:\bcc582\bin\brc32.exe -r -Ib:\bcc582\include ereport.rc
Borland Resource Compiler Version 5.40
Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved.

Error prsht.h 1079 1: '#endif' before '#if'

Changing this line in /* #endif //_PRSHT_H_ */ solves the problem.

Frank
test
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Los campos no se muestran correctamente

Post by Antonio Linares »

Frank,

In which PRG should I make the change ? thanks

Regarding the prsht.h problem, this is the right fix:

http://forums.fivetechsupport.com/viewt ... 60#p147360
regards, saludos

Antonio Linares
www.fivetechsoft.com
Franklin Demont
Posts: 166
Joined: Wed Aug 29, 2012 8:25 am

Re: Los campos no se muestran correctamente

Post by Franklin Demont »

Antonio Linares wrote:Frank,

In which PRG should I make the change ? thanks

Regarding the prsht.h problem, this is the right fix:

http://forums.fivetechsupport.com/viewt ... 60#p147360
METHOD OpenDatabases() CLASS VRD

prsht.h solved as described.

Frank
test
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Los campos no se muestran correctamente

Post by Antonio Linares »

ok, in vrd.prg

which source line number please ? :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
Franklin Demont
Posts: 166
Joined: Wed Aug 29, 2012 8:25 am

Re: Los campos no se muestran correctamente

Post by Franklin Demont »

Antonio Linares wrote:ok, in vrd.prg

which source line number please ? :-)

+/- 2700 , i added mine own defines

Frank
test
Post Reply