CMFReportTool

  "Copyright (C) 2002, net-labs Systemhaus GmbH":COPYRIGHT.html.
  
  CMFReportTool is an Extension to Zope/CMF and Plone.
  
    Similar to HTML-Skins one can use 'PML' to describe Dynamic
    Content as PDF-Document using the advanced layout-capabilities
    of reportlab's Platypus module. The MarkupLanguage is inspired
    by pythonpoint (example from reportlab) but is provides all
    features of the Platypus module.
    
    The Product supplies a tool: 'portal_report' and several skins
    as well as an Installation routine.
    
    The 'portal_report' Tool renders 'PML' Documents to pdf and 
    converts StructuredText-Documents to 'PML'. the provided
    skins are mostly examples of views for CMF Standard Types.
    
    The Rendering-Process uses a script with traversal to
    determine the PDF-Templatename and the PDF-Documentname.
    The templatename is looked up in the context of 'portal_report',
    which is folderish and usually holds the portals templates.
    the documentname is looked up in the context of the object (here)
    and the 'portal_skins' Tool will provide the right objects.
    'PML' Documents are (Alt)PageTemplates that are parsed/interpreted
    and result in a valid (hopefully valid - the parser is not 
    perfect yet) 'PML' Document that is rendered using reportlab.
    the 'portal_report' Tool returns a buffer that needs to be
    return to the client (setting the header to 'application/pdf'
    is required - look at the example-skins)
	
	External Resources (Images) can be located in ZODB or Filesystem.
	A filename-Attribute knows two url-schemes: file://&lt;path-to-image&gt;
	and zodb://&lt;path-to-image-object&gt;.
    
    The Markup-Language ('PML' - PageMarkupLanguage) defines:
    
      - Templates: Templates define static elements, stylesheets
        as well as Frames. It works like Quark-XPress or FrameMaker.
        Predefined and linked Frames are filled with Flowables from
        the Document (think like slots in PageTemplates, but content
        is concated and nicely distributed across the frames.
        
      - Documents: Documents define dynamic Content, Images,
        Vectorgraphics as well as Metadata. This part is usually
        generated when the client requests a view as PDF and
        it is filled in (using PageTemplates) with the objects/lists
        values and rendered.
        
      - Styles: Paragraph- and Table-Styles can be preconfigured 
        within the Template-Header.
  
      - Static-Elements: FixedImage,InfoString,Line,Rectangle,..
        all these Static-Element-Types are usable within the
        Templates Pagedefinition to setup static content.
        
      - Frames: Frames hold Flowables (Dynamic-Elements). They
        are linked via Names to enable things like: different
        Startpage, left/right-page of books, etc.
        
      - Flowables: Dynamic-Elements are called Flowables. They
        are aranged within the predefined order in Frames.
        Available Types are: Paragraph, Preformatted, Table,
        Image, Line, Rectangle, ...
        
        
  
What is needed ??

   - >= Zope-2.5.1
   
   - CMF-1.3
   
   - PageTemplates


This tool is made by 

  Ulrich Eck (net-labs Systemhaus GmbH, Germany)
  email: ueck@net-labs.de
