#đź”’ Reportlab invoice/delivery note/document generation

6 messages · Page 1 of 1 (latest)

inland hazel
#

Hello everyone,

I've been struggling with ReportLab for some time now.
I personally find the ReportLab online documentation very simple and offers me no help when it comes to more complex PDFs.
I have been trying for 2 weeks to generate a proper, multi-page invoice (first with dummy variables and later with user input)...

My goal is the following: I want to create an invoice that adheres to DIN 5008 Form B. I.e. fixed positions for sender, recipient, invoice details, footer and “main block” (text field). This should also work for longer invoices/delivery notes/documents.

My problem: I just can't manage to keep to the positioning of the above positions in BaseDocTemplate or SimpleDocTemplate. Multi-page documents blow up my PDF. I have already tried to solve the problem using frames, which doesn't work properly either, and now I'm really at a loss. I need a template or a procedure from you on how to create fixed (static) elements on the first page, such as sender, recipient, invoice details and footer exactly positioned (true to x,y coordinates) and generate a table between them that automatically makes line breaks and page breaks. On the next page, the main block continues with the table and the footer + possibly the number of pages. I would be very grateful for any tips, snippets, templates, procedures or references to resources.

crisp apexBOT
#

@inland hazel

Python help channel opened

Remember to:

  • Ask your Python question, not if you can ask or if there's an expert who can help.
  • Show a code sample as text (rather than a screenshot) and the error message, if you've got one.
  • Explain what you expect to happen and what actually happens.

:warning: Do not pip install anything that isn't related to your question, especially if asked to over DMs.

wraith mango
#

Are you doing this in Python?

inland hazel
crisp apexBOT
#
Python help channel closed

This help channel has been closed and it's no longer possible to send messages here. If your question wasn't answered, feel free to create a new post in #1035199133436354600. To maximize your chances of getting a response, check out this guide on asking good questions.