Page 1 of 1
How to print Labels with Fivewin (TO MR.RAO)
Posted: Tue May 12, 2020 6:49 pm
by dagiayunus
Dear Sirs
How Can I print Labels same as attached photo using Fivewin ?
Same as link
https://imgur.com/tsmrFkm
Mr.Rao Can you provide me example for the same ?
Regards
Dagia Yunus
Re: How to print Labels with Fivewin
Posted: Tue May 12, 2020 8:19 pm
by Silvio.Falconi
On folder fwh/samples/label you found the classes for label
Re: How to print Labels with Fivewin
Posted: Wed May 13, 2020 1:28 pm
by dagiayunus
Dear Silvio
its gives me following error
Error: Unresolved external '_HB_FUN_TLITEM_NEW' referenced from C:\FWH\SAMPLES\LABELS\SAMPLES\DEMO.OBJ
Error: Unresolved external '_HB_FUN_TLITEM_STABILIZE' referenced from C:\FWH\SAMPLES\LABELS\SAMPLES\DEMO.OBJ
Error: Unresolved external '_HB_FUN_TLITEM_SAYDATA' referenced from C:\FWH\SAMPLES\LABELS\SAMPLES\DEMO.OBJ
Error: Unresolved external '_HB_FUN_TLABEL' referenced from C:\FWH\SAMPLES\LABELS\SAMPLES\DEMO.OBJ
Error: Unable to perform link
Re: How to print Labels with Fivewin
Posted: Wed May 13, 2020 1:40 pm
by Silvio.Falconi
here run ok
wich rel of fwh you have ?
these are the files must be compiled
Re: How to print Labels with Fivewin
Posted: Thu May 14, 2020 11:20 am
by dagiayunus
Dear Silvio
I am still getting this error
Compile using xmate 1.5
Error: Unresolved external '_HB_FUN_FW_GT' referenced from C:\FWH\SAMPLES\LABELS\SAMPLES\OBJ\DEMO.OBJ
Error: Unresolved external '_HB_FUN_TLITEM_NEW' referenced from C:\FWH\SAMPLES\LABELS\SAMPLES\OBJ\PDLABEL.OBJ
Error: Unresolved external '_HB_FUN_TLITEM_STABILIZE' referenced from C:\FWH\SAMPLES\LABELS\SAMPLES\OBJ\PDLABEL.OBJ
Error: Unresolved external '_HB_FUN_TLITEM_SAYDATA' referenced from C:\FWH\SAMPLES\LABELS\SAMPLES\OBJ\PDLABEL.OBJ
Warning: Public symbol '_HB_FUN_TLITEM' defined in both module C:\FWH\SAMPLES\LABELS\SAMPLES\OBJ\LITEM.OBJ and C:\FWH\SAMPLES\LABELS\SAMPLES\OBJ\PDLABEL.OBJ
Re: How to print Labels with Fivewin
Posted: Thu May 14, 2020 12:39 pm
by Silvio.Falconi
dagiayunus wrote:Dear Silvio
I am still getting this error
Compile using xmate 1.5
Error: Unresolved external '_HB_FUN_FW_GT' referenced from C:\FWH\SAMPLES\LABELS\SAMPLES\OBJ\DEMO.OBJ
Error: Unresolved external '_HB_FUN_TLITEM_NEW' referenced from C:\FWH\SAMPLES\LABELS\SAMPLES\OBJ\PDLABEL.OBJ
Error: Unresolved external '_HB_FUN_TLITEM_STABILIZE' referenced from C:\FWH\SAMPLES\LABELS\SAMPLES\OBJ\PDLABEL.OBJ
Error: Unresolved external '_HB_FUN_TLITEM_SAYDATA' referenced from C:\FWH\SAMPLES\LABELS\SAMPLES\OBJ\PDLABEL.OBJ
Warning: Public symbol '_HB_FUN_TLITEM' defined in both module C:\FWH\SAMPLES\LABELS\SAMPLES\OBJ\LITEM.OBJ and C:\FWH\SAMPLES\LABELS\SAMPLES\OBJ\PDLABEL.OBJ
tell me
1) wich rel of fwh you have
2) use xharbour or Harbour
3) public here the env file you use to compile with xmate
Re: How to print Labels with Fivewin (TO MR.RAO)
Posted: Thu May 14, 2020 3:37 pm
by Silvio.Falconi
I sent you my env
Re: How to print Labels with Fivewin (TO MR.RAO)
Posted: Thu May 21, 2020 3:01 am
by nageswaragunupudi
dagiayunus wrote:Dear Sirs
How Can I print Labels same as attached photo using Fivewin ?
Same as link
https://imgur.com/tsmrFkm
Mr.Rao Can you provide me example for the same ?
Regards
Dagia Yunus
Try this code:
Code: Select all
#include "fivewin.ch"
REQUEST DBFCDX
//----------------------------------------------------------------------------//
function Main()
local oPrn, nPgWidth, nPgHeight
local nTop, nLeft, nWidth, nHeight
local nRow, nRows, nCol, nCols
local nPrintHeight, nPrintWidth, nTopMargin, nLeftMargin
local nGutter
local oFont, oBold, oPen
USE CUSTOMER NEW SHARED VIA "DBFCDX"
SET FILTER TO RECNO() > 99 .AND. RECNO() < 141
GO TOP
PRINT oPrn PREVIEW
DEFINE FONT oFont NAME "TAHOMA" SIZE 0,-14 OF oPrn
DEFINE FONT oBold NAME "VERDANA" SIZE 0,-25 BOLD OF oPrn
DEFINE PEN oPen STYLE PS_DASH OF oPrn
nPgWidth := oPrn:PageWidth( "CM" )
nPgHeight := oPrn:PageHeight( "CM" )
// label dimensions
nWidth := 4 //cm
nHeight := 3
nGutter := 1 // cm gap between labels
nRows := Int( ( nPgHeight - 2 ) / ( nHeight + nGutter ) )
nCols := Int( ( nPgWidth - 2 ) / ( nWidth + nGutter ) )
nPrintHeight := nRows * ( nHeight + nGutter ) - nGutter
nPrintWidth := nCols * ( nWidth + nGutter ) - nGutter
nTopMargin := ( nPgHeight - nPrintHeight ) / 2
nLeftMargin := ( nPgWidth - nPrintWidth ) / 2
do while !Eof()
PAGE
nTop := nTopMargin
for nRow := 1 to nRows
nLeft := nLeftMargin
for nCol := 1 to nCols
if nRow > 1
oPrn:Line( nTop - nGutter/2, nLeftMargin, nTop - nGutter/2, ;
nLeftMargin + nPrintWidth, oPen, "CM" )
endif
OneLabel( oPrn, nTop, nLeft, nWidth, nHeight, oFont, oBold )
nLeft += ( nWidth + nGutter )
SKIP
if Eof()
EXIT
endif
next
nTop += ( nHeight + nGutter )
if Eof()
EXIt
endif
next
nTop -= nGutter
for nCol := 1 to nCols - 1
oPrn:Line( nTopMargin, nLeftMargin + ( nWidth + nGutter ) * nCol - nGutter / 2, ;
nTop, nLeftMargin + ( nWidth + nGutter ) * nCol - nGutter / 2, oPen, "CM" )
next
ENDPAGE
enddo
ENDPRINT
RELEASE FONT oFont, oBold
RELEASE PEN oPen
return nil
//----------------------------------------------------------------------------//
function OneLabel( oPrn, nRow, nCol, nWidth, nHeight, oFont, oBold )
field ID, FIRST, LAST, CITY
oPrn:Box( nRow, nCol, nRow + nHeight, nCol + nWidth, { CLR_HRED, 2 }, nil, nil, "CM" )
nRow += 0.2
nCol += 0.2
nWidth -= 0.4
nHeight -= 0.4
@ nRow, nCol PRINT TO oPrn TEXT TRIM(FIRST) + " " + TRIM(LAST) ;
SIZE nWidth, nHeight CM ALIGN "T" FONT oFont
@ nRow, nCol PRINT TO oPrn TEXT ID * 10 SIZE nWidth, nHeight CM ALIGN "B" FONT oBold
@ nRow, nCol PRINT TO oPrn TEXT "Fc" SIZE nWidth, nHeight CM ALIGN "BR" FONT oFont
return nil
//----------------------------------------------------------------------------//
Re: How to print Labels with Fivewin (TO MR.RAO)
Posted: Thu May 21, 2020 6:58 am
by dagiayunus
Dear Sir Mr.Rao
It gives me following error
Error description: Error BASE/1004 Message not found: TPRINTER:PAGEWIDTH
Args:
[ 1] = O TPRINTER
I am using Fivewin 18.07 , Harbour 3.2 & Bcc7
Thanks & Regards
Yunus
Re: How to print Labels with Fivewin (TO MR.RAO)
Posted: Thu May 21, 2020 7:31 am
by nageswaragunupudi
This is for older versions like 1807
Code: Select all
#include "fivewin.ch"
REQUEST DBFCDX
//----------------------------------------------------------------------------//
function Main()
local oPrn, nPgWidth, nPgHeight
local nTop, nLeft, nWidth, nHeight
local nRow, nRows, nCol, nCols
local nPrintHeight, nPrintWidth, nTopMargin, nLeftMargin
local nGutter
local oFont, oBold, oPen
USE CUSTOMER NEW SHARED VIA "DBFCDX"
SET FILTER TO RECNO() > 99 .AND. RECNO() < 141
GO TOP
PRINT oPrn PREVIEW
DEFINE FONT oFont NAME "TAHOMA" SIZE 0,-14 OF oPrn
DEFINE FONT oBold NAME "VERDANA" SIZE 0,-25 BOLD OF oPrn
DEFINE PEN oPen STYLE PS_DASH OF oPrn
nPgWidth := 21 //oPrn:PageWidth( "CM" )
nPgHeight := 29.7 //oPrn:PageHeight( "CM" )
// label dimensions
nWidth := 4 //cm
nHeight := 3
nGutter := 1 // cm gap between labels
nRows := Int( ( nPgHeight - 2 ) / ( nHeight + nGutter ) )
nCols := Int( ( nPgWidth - 2 ) / ( nWidth + nGutter ) )
nPrintHeight := nRows * ( nHeight + nGutter ) - nGutter
nPrintWidth := nCols * ( nWidth + nGutter ) - nGutter
nTopMargin := ( nPgHeight - nPrintHeight ) / 2
nLeftMargin := ( nPgWidth - nPrintWidth ) / 2
do while !Eof()
PAGE
nTop := nTopMargin
for nRow := 1 to nRows
nLeft := nLeftMargin
for nCol := 1 to nCols
if nRow > 1
oPrn:cmLine( nTop - nGutter/2, nLeftMargin, nTop - nGutter/2, ;
nLeftMargin + nPrintWidth, oPen )
endif
OneLabel( oPrn, nTop, nLeft, nWidth, nHeight, oFont, oBold )
nLeft += ( nWidth + nGutter )
SKIP
if Eof()
EXIT
endif
next
nTop += ( nHeight + nGutter )
if Eof()
EXIt
endif
next
nTop -= nGutter
for nCol := 1 to nCols - 1
oPrn:cmLine( nTopMargin, nLeftMargin + ( nWidth + nGutter ) * nCol - nGutter / 2, ;
nTop, nLeftMargin + ( nWidth + nGutter ) * nCol - nGutter / 2, oPen )
next
ENDPAGE
enddo
ENDPRINT
RELEASE FONT oFont, oBold
RELEASE PEN oPen
return nil
//----------------------------------------------------------------------------//
function OneLabel( oPrn, nRow, nCol, nWidth, nHeight, oFont, oBold )
field ID, FIRST, LAST, CITY
oPrn:cmBox( nRow, nCol, nRow + nHeight, nCol + nWidth )
nRow += 0.2
nCol += 0.2
nWidth -= 0.4
nHeight -= 0.4
@ nRow, nCol PRINT TO oPrn TEXT TRIM(FIRST) + " " + TRIM(LAST) ;
SIZE nWidth, nHeight CM ALIGN "T" FONT oFont
@ nRow, nCol PRINT TO oPrn TEXT ID * 10 SIZE nWidth, nHeight CM ALIGN "B" FONT oBold
@ nRow, nCol PRINT TO oPrn TEXT "Fc" SIZE nWidth, nHeight CM ALIGN "BR" FONT oFont
return nil
//----------------------------------------------------------------------------//
Re: How to print Labels with Fivewin (TO MR.RAO) Solved.
Posted: Thu May 21, 2020 7:49 am
by dagiayunus
Dear Mr.Rao
It works now.
Thank you so much for the example.
Regards
Yunus
Re: How to print Labels with Fivewin (TO MR.RAO)
Posted: Fri May 22, 2020 1:38 pm
by Silvio.Falconi
Rao's system lends itself to any label, just make small changes and call it works from our programs, for example I tried to make labels with bar codes
this is mycent.
Code: Select all
function OneLabel( oPrn, nRow, nCol, nWidth, nHeight, oFont, oBold )
local nWid
field ID, FIRST, LAST, CITY
oPrn:cmBox( nRow, nCol, nRow + nHeight, nCol + nWidth )
nRow += 0.2
nCol += 0.2
nWidth -= 0.4
nHeight -= 0.4
cText := TRIM(FIRST)
@ nRow, nCol PRINT TO oPrn TEXT TRIM(FIRST) AS BARCODE TYPE "EAN13" ;
SIZE nWidth, nHeight-1 CM BARSIZE nWid
@ nRow+2, nCol PRINT TO oPrn TEXT cText cm SIZE nWid ALIGN "S" FONT oFont
* @ nRow, nCol PRINT TO oPrn TEXT TRIM(FIRST) + " " + TRIM(LAST) ;
* SIZE nWidth, nHeight CM ALIGN "T" FONT oFont
* @ nRow, nCol PRINT TO oPrn TEXT ID * 10 SIZE nWidth, nHeight CM ALIGN "B" FONT oBold
* @ nRow, nCol PRINT TO oPrn TEXT "Fc" SIZE nWidth, nHeight CM ALIGN "BR" FONT oFont
return nil