[Gambas-user] gb.report

Fabien Bodard gambas.fr at ...626...
Wed Feb 20 14:00:04 CET 2008


will see about that this evening,

but the correction will be available only in the trunk first.


Fabien

2008/2/19, Steven Lobbezoo <steven at ...1652...>:
>
> Hi,
>
> I'm still messing around with gb.report.
> I try to make a module that takes care of a lot of the internals to
> print a report (new page : redo header, etc.)
> For testing I have this in the module :
>
> ' 1 Header description
> PUBLIC HImg AS String  ' the image (logo ?) to put in
> PUBLIC HImgPos AS String ' the position (left, center or right) of the
> image
> PUBLIC HImgDes AS Integer[2] ' The Height, Width of the picture
> PUBLIC Htxt AS String  ' the general title of the report
> PUBLIC {HtxtF} AS NEW Font   ' the font of the general title
> PUBLIC HtxtAlign AS String    ' the alignment of the headertext
> PUBLIC Hsub AS String  ' the sub-title of the report
> PUBLIC {HsubF} AS NEW Font   ' the sub-title font
>
> ' 2 Footer description
> PUBLIC FRight AS String  ' the right part of the footer
> PUBLIC FCenter AS String ' the middle part of the footer
> PUBLIC FLeft AS String   ' the left part of the footer
>
> ' 3 the titles and other parms of the columns
> PUBLIC CTits AS String[] ' array of text = titles
> PUBLIC {CTitsF} AS NEW Font    ' the font to use
> PUBLIC CTitsB AS Color   ' the background color
> PUBLIC CAlign AS String[]  ' the alignment (right, left,..) of each
> column
> PUBLIC Ctot AS Boolean[]   ' the columns have totals (TRUE) or not
> (FALSE)
>
> ' 4 The lines in the report
> PUBLIC Lin AS String[]   ' the array of values
>
> ' 5 general parms
> PUBLIC ULin AS Boolean   ' use lines around fields (TRUE, False)
> PUBLIC Target AS String  ' the report to a printer, a pdf or a previewer
>
> ' 6 and the internals
> PrBoxH AS ReportHBox
> PrBoxV AS ReportVBox
> PrImg AS ReportImage
> PrLab AS ReportLabel
>
>
>
>
> PUBLIC FUNCTION Init() AS Boolean
>   Report.Clear
>   Report.size = "A4"
>   Report.orientation = report.Portrait
>   Report.Padding = "1 cm"
>   Object.Attach(Report, ME, "Report")
>   Report.Spacing = "0.2 cm"
>   Report.LineStyle = line.Solid
>   Report.Tag = "Report"
>   Report.Font.Name = "Tahoma"
>   RETURN TRUE
> END
>
> PUBLIC SUB DoHdr() ' do the header
> DIM MyPic AS Picture
> DIM i AS Integer
>
>
>     PrBoxH = NEW ReportHBox(Report)
>     PrBoxH.Height = "3 cm"
>     PrBoxH.Width = "16 cm"
>     PrImg = NEW ReportImage(PrBoxH)
>     PrImg.Path = "./revimmologo.gif"
>     PrImg.Width = "6 cm"
>     PrImg.Height = "3 cm"
>     PrImg.Tag = "Image"
>     PrLab = NEW ReportLabel(PrBoxH)
>     PrLab.Text = "Revimmo - liste du " & Date(Now)
>     PrLab.Alignment = Align.Right
>     PrLab.Font = Font["16"]
>     PrLab.Expand = TRUE
>     PrLab.Tag = "Titre"
>
> END
>
> 'x Print or draw the report
> PUBLIC SUB DoIt()
> DIM i AS Integer
>
>   INC Application.Busy
>   draw.Begin(Printer)
>   Report.Zoom = 1
>   Report.Resolution = Printer.Resolution
>   Report.layout
>
>   FOR i = 1 TO Report.count
>     Report.Draw(i)
>     IF i < Report.count THEN Printer.NewPage
>   NEXT
>   draw.End
>   DEC Application.Busy
>
> END
>
> Now, the above Report.Layout allways gives the message 'Null Object'
> since Report.Count is and stays Null, nomather what I write in it.!
> I checked, and the controles made are there, and attached to the report
> object.
>
> Any ideas ?
> Thanks,
> Steven
>
>
>
>
> -------------------------------------------------------------------------
> This SF.net email is sponsored by: Microsoft
> Defy all challenges. Microsoft(R) Visual Studio 2008.
> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
> _______________________________________________
> Gambas-user mailing list
> Gambas-user at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gambas-user
>



More information about the User mailing list