FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin for Harbour/xHarbour class to make Report with tdatabase
Posts: 7317
Joined: Thu Oct 18, 2012 07:17 PM
class to make Report with tdatabase
Posted: Fri May 31, 2019 08:37 AM
I tried to make a report with tdatabase and I have this error


Code (fw): Select all Collapse
#include "fivewin.ch"
#include "report.ch"

REQUEST DBFCDX

STATIC oReport


Function test()

  RDDSetDefault( 'DBFCDX' )

      SET DATE FORMAT "dd/mm/yyyy"
      SET DATE ITALIAN
      SET CENTURY ON
      SET EPOCH TO ( YEAR( DATE() ) - 50 )



TRepTariffe():New():Attivare()

return nil

//-------------------------------------------------//

CLASS TRepTariffe
   DATA cPath init cFilePath(GetModuleFileName( GetInstance() ))  + "Data\"
   DATA oReport
   DATA oTariffeReport
   DATA oFont

   METHOD New() CONSTRUCTOR
   METHOD Attivare()

END CLASS

METHOD New() CLASS TRepTariffe

     ::oTariffeReport:= TDatabase():Open( , ::cPath+"TARIFFE", "DBFCDX", .t. )
     ::oTariffeReport:setorder(1)


     /*
     ::oTariffeReport:Exec( < ||
     SET FILTER TO  FIELD->IDLISTINO = strzero(nListino,2)
      return nil
              > )
       */

     // xbrowser ::oTariffeReport

   DEFINE FONT ::oFont NAME "Tahoma" SIZE 0,-10



   REPORT ::oReport                            ;
      TITLE  "ELENCO TARIFFE"             ;
      FONT   ::oFont                           ;
      HEADER "Data: "  + DTOC( DATE() )      ,;
           "stabilimento bagno"                      ,;
           "stabilimento bagno"                    ,;
           "1234567890"      LEFT            ;
      FOOTER "Pagina: " + STR( ::nPage, 3 ) RIGHT  ;
      PREVIEW

   COLUMN TITLE "TIPO  "       DATA ::oTariffeReport:tipo
   COLUMN TITLE "ELEMENTO   "  DATA ::oTariffeReport:elemento
   COLUMN TITLE "SERVIZIO"     DATA ::oTariffeReport:servizio
   COLUMN TITLE "SETTORE  "    DATA ::oTariffeReport:settore
   COLUMN TITLE "GIORNI"       DATA ::oTariffeReport:giorni
   COLUMN TITLE "PREZZO   "    DATA ::oTariffeReport:costo     PICTURE "99,999.99" RIGHT  SHADOW

   END REPORT

   RETURN Self

//---------------------------------------------------------------//

METHOD Attivare() CLASS TRepTariffe

   ::oTariffeReport:GoTop()

   ::bSkip := { || ::oTariffeReport:Skip(1) }
   ::Cellview()

   ACTIVATE REPORT ::oReport  WHILE !::oTariffeReport:eof()

   ::End()

   ::oTariffeReport:Close()

RETURN NIL



Now print one page ok and one blank as you can see here

Since from 1991/1992 ( fw for clipper Rel. 14.4 - Momos)

I use : FiveWin for Harbour March-April 2024 - Harbour 3.2.0dev (harbour_bcc770_32_20240309) - Bcc7.70 - xMate ver. 1.15.3 - PellesC - mail: silvio[dot]falconi[at]gmail[dot]com
Posts: 1816
Joined: Wed Oct 26, 2005 02:49 PM
Re: class to make Report with tdatabase
Posted: Fri May 31, 2019 09:36 PM
Mira si ayuda

Code (fw): Select all Collapse
********************
*IMPRIME EN PANTALLA
********************
PROC pIPCaj()
local oReport,nLinea := 1, nHasta := oRsCajaRg:RECORDCOUNT(), ;
nBookMark := oRsCajaRg:BookMark
oRsCajaRg:MoveFirst()
uFec:=dtoc(date())
uTim:=subs(time(),1,8)

REPORT oReport CAPTION "TABLA CONTROL CAJAS"  HEADER "CIUDADELA","NIT:"+"-","TABLA CONTROL DE DOCUMENTOS","Página Número: " + STR (oReport:nPage, 3),"Fecha Reporte: "+uFec+" - Hora: "+uTim;
CENTER  PREVIEW
  COLUMN TITLE "Código" DATA oRsCajaRg:Fields("kk_codigo"):value SIZE 9
  COLUMN TITLE "Nombre" DATA oRsCajaRg:Fields("kk_nombre"):value SIZE 25
END REPORT

oReport:bWhile := { || nLinea <= nHasta }
oReport:oDevice:SetPortrait()
oReport:oDevice:lPrvModal := .T.
IF oReport:lCreated
  oReport:bSkip := { | | nLinea++, oRsCajaRg:MoveNext() }
ENDIF

ACTIVATE REPORT oReport ;
ON END oRsCajaRg:BookMark := nBookMark
oRsCajaRg:REQUERY()
oBrwCReg:Refresh()
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Turbo Incremental Link64 6.98 Embarcadero 7.70 ] [ FiveWin 25.01 ] [ xHarbour 64 bits) ]
Posts: 7317
Joined: Thu Oct 18, 2012 07:17 PM
Re: class to make Report with tdatabase
Posted: Sat Jun 01, 2019 07:25 AM
STRANGE.....

this morning I add

DEFINE PEN ::oPen1 WIDTH 1 COLOR CLR_HGRAY
DEFINE PEN ::oPen2 WIDTH 1 COLOR CLR_BLACK

and

REPORT ::oReport ;
TITLE "ELENCO TARIFFE LISTINO ALTA STAGIONE" ;
FONT ::oFont ;
PEN ::oPen1,;
::oPen2
;
HEADER "Data: " + DTOC( DATE() ) ,;
"stabilimento bagno" ,;
"stabilimento bagno" ,;
"1234567890" LEFT ;
FOOTER "Pagina: " + STR( ::nPage, 3 ) RIGHT ;
PREVIEW



and now seem print ok as you can see here ...very very strange



Someone among the Gurus and Masters (Nages, CNavarro, Linares ...) can explain to me why it didn't work before and now with the addition of only the Pen it seems that it prints everything well?
Since from 1991/1992 ( fw for clipper Rel. 14.4 - Momos)

I use : FiveWin for Harbour March-April 2024 - Harbour 3.2.0dev (harbour_bcc770_32_20240309) - Bcc7.70 - xMate ver. 1.15.3 - PellesC - mail: silvio[dot]falconi[at]gmail[dot]com
Posts: 4840
Joined: Fri Nov 18, 2005 04:52 PM
Re: class to make Report with tdatabase
Posted: Wed Jun 05, 2019 02:54 PM

It looks like the top and bottom margins may be set too narrow.

FWH 18.05/xHarbour 1.2.3/BCC7/Windows 10
Posts: 7317
Joined: Thu Oct 18, 2012 07:17 PM
Re: class to make Report with tdatabase
Posted: Thu Jun 06, 2019 06:43 AM

I was not talking about the margins, I was talking about the fact that he first printed a page and a white page, then inserting the pages he printed part of the archive

Since from 1991/1992 ( fw for clipper Rel. 14.4 - Momos)

I use : FiveWin for Harbour March-April 2024 - Harbour 3.2.0dev (harbour_bcc770_32_20240309) - Bcc7.70 - xMate ver. 1.15.3 - PellesC - mail: silvio[dot]falconi[at]gmail[dot]com
Posts: 4840
Joined: Fri Nov 18, 2005 04:52 PM
Re: class to make Report with tdatabase
Posted: Thu Jun 06, 2019 04:09 PM

Silvio,

I was just saying that if you try to print past the margin you could get a page feed, and thus a blank page. Just a thought. Easy to test.

FWH 18.05/xHarbour 1.2.3/BCC7/Windows 10

Continue the discussion