Budibase / budibase

Low code platform for building business apps and workflows in minutes. Supports PostgreSQL, MySQL, MariaDB, MSSQL, MongoDB, Rest API, Docker, K8s, and more 🚀
https://budibase.com
Other
21.79k stars 1.49k forks source link

PDF / Document component (Carbone Integration?) #1372

Open joebudi opened 3 years ago

joebudi commented 3 years ago

As a land surveyor, I would like to generate pdfs from table data, so I can store and print them (possibly to send to clients).

More info can be found here:

1353

stale[bot] commented 3 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

shogunpurple commented 3 years ago

Nope - very relevant

Bogey commented 3 years ago

I would welcome this too. Preferably a pre-created template (either DOCX, ODT or PDF) with handlebar variables that are then used to create the PDF.

Manishkparmar80 commented 3 years ago

It is required. Pls refer post ideas # 1696

Manishkparmar80 commented 3 years ago

@joebudi is this feature will be avaible in July 21 release ?

joebudi commented 3 years ago

Hey @Manishkparmar80

@aptkingston had a stab at a report / PDF component during the company's lab day last week. There's still a lot more work to do to complete the component. It's not on our roadmap for this month. But, there does seem to be demand for it so I might be able to push for its completion.

To help me get the work approved, I will need you to detail, very clearly:

P.s this comment is not confirmation that the component will be delivered for the July release.

Bogey commented 3 years ago

why you need the component (use case) A PDF is the new paper (the next best thing) because of it's psychological effect. A report in PDF adds some sort professional weight above an email. It offers to be a document in line with corporate identity, and if printed it maintains that identity. The reports I create are summaries of audits done, numbers analysed and displayed as graphs, and completed with a final recommendation.

how you expect it to work To take out the guesswork of how the PDF will look like the template is designed as DOCX, ODT or PDF. Conversion from HTML proofs still unreliable with the positioning of a/o images. Templates are created upfront with either handlebar, square brackets or other declaration form for variables. Example:


Header of report. Prepared for: {{variable1}} Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.

Subheader Current situation can be described as: {{variable2}}

Recommendation Our recommendation for {{variable1}} is to {{variable3}}

{{variable4}} {{imagevariable1}}


Via a special prep-form I select with what and how the variables are filled. variable1 becomes client X's name that is selected from a dropdown select. Picking client X from the dropdown selects variable2 to be automatically filled with data stored and, of course, linked to client X. Variable3 has some logic: if clientX.profit > 250k then variable3 becomes recommendation ABC. if clientX.profit < 250k then variable3 becomes recommendation XYZ.

Then the data is pushed to create a PDF. This PDF can then be send via email, stored for later access.

what you expect it to do Preferably PDFs can be digitally signed and/or encrypted. Also permissions can be set (can user print, copy, extract or delete pages yes/no).

I hope this helps? Cheers, Eddie

sergey-dme commented 3 years ago

As for the use case, I'd like to add the following:

Whereas Budibase is being used as an internal tool to automate certain processes in organizations, there are often QMS/CMS requirements to sign the final document or form (soft or hard copy) and then store/save it. The PDF is most suitable and usable format for it, as it also can be signed electronically.

Manishkparmar80 commented 3 years ago

Other use case :

E.g.

  1. In store we book the order for item then they need to share Invoice and Delivery challan with customer. Invoice , delivery challan etc are report.

  2. If you visit any grocery shop then after payment they give us printed bill which is also report.

3.After online shopping, we receive purchase bill or invoice in PDF format by email in digitally signed format.

Reports are heart of any application or software. Without report, application can be think of useful.

Application must have provision to provide report in multiple form PDF, DOC , excel etc based on business requirement.

Manishkparmar80 commented 3 years ago

@joebudi Yesterday come across few more real time use cases :

  1. Making online transaction via bank and it provide me option of downloading transaction receipt in PDF , Word or excel.

  2. While downloading my bank statement, website providing me option of downloading bank statement by PDF , excel, work or CSV.

Manishkparmar80 commented 3 years ago

@joebudi Hi, is this feature/ functionality( PDF reporting) is considered for product enhancement?

joebudi commented 3 years ago

Hey @Manishkparmar80

We've talked about this internally and we will need PDF support in the near future. The extent of the functionality is to be decided. There are no plans to complete this work, this month. We have an IPM meeting at the end of the month, where I will bring this discussion forward, to the team. We will then make a decision on whether or not it is to be completed in the next iteration.

During a lab day (2 weeks back), @aptkingston made decent progress on his interpretation of what this would look like. So, there is 1 version of PDF support nearly* complete, but it does not contain some functionality requested in this discussion, nor does it follow the same UX.

Manishkparmar80 commented 3 years ago

@joebudi Thanks for sharing update.

stale[bot] commented 3 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

pepeday commented 2 years ago

Adding my own comment that PDF export support would be great (and required). To clarify, this would need a certain level of complexity i.e. being able to pull data from related records, add images etc. Perhaps the easiest way would be to supply the html template, which we'd be able to use loops etc for writing in the html, then convert that html to pdf. Thanks!

mjashanks commented 2 years ago

Just saying that I had 2 more people say to me today on calls that "Printing Documents" is one feature that every other low/no-code platform is missing.

pepeday commented 2 years ago

Bubble has this feature (more or less)

stale[bot] commented 2 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

igbojionu commented 2 years ago

wow whats the update on this an patiently waiting

kasgithub8 commented 2 years ago

@igbojionu It's on the Roadmap for Q3 this year!

neoguet commented 2 years ago

Hi I wrote here my needs for a PDF integration in BB.

I would like to be able to generate a PDF file when a row is created or updated via an action or automation and after this file is saved in a field of the row. Then I would like to be able to send this file via email. the construction of this file could be done with a template and handlebars syntax as for onboarding mails. jsPDF is maybe a solution?

oswaldB commented 2 years ago

Hello if I may,

I would also suggest to use the jsreport to create pdf rather than Carbone.

insomniacj93 commented 2 years ago

I can see myself using the PDF generator + Graphical Signature for enterprise procedures consent!

berief commented 2 years ago

Hello there,

is there any update when the PDF funcionality will be published? Thank you.

lburtwistle commented 2 years ago

@neoguet - I just heard the same requirements today form a client. Being able to generate and download a pdf with official header would take it to the next level from an enterprise prospective. Right now taking the client to a screen to review costs, so would be great to download a pdf version of it when doing the review. Also, having the ability to include the pdf in automation, so you could send it out within a notification when the review is completed. It really has so many use cases when having to share an official document with outside entities - invoicing, purchase orders, billing, survey, bill of lading, etc.

AlejandroFNadal commented 2 years ago

I add my voice to say that this functionality is vital. The companies that go to a low-code tool are in overlap with those that still value or require report in files instead of a dashboard.

mahxds commented 1 year ago

Yep, Companies that use Low-Code to get fast and easy app fitting their unique workflow mostly are that small or have overlapping situations with external service providers and other stuff , who need need paperwork.

Thats why it would be very great to get a small and simple component that will put a PDF printout with value on predefined "positions".

Like, define bindings and their positions on the PDF, upload a PDF Template. And done. Add this as action, so you get generated PDF with the values which you can print.

Voroxpete commented 1 year ago

We're looking at a number of potential use cases for Budibase at my company and this is considered a make-or-break for many of them. Just throwing my hat in the ring for "This is a really important feature" I guess.

davidpfahler commented 1 year ago

I found this issue trying to build an invoice generator app. Seems like a basic feature lots of people need. What would be the best way to contribute to this feature?

fdecourt commented 1 year ago

Agreed with all the others, this is mandatory.....

khalid-al-walid commented 1 year ago

any updates about this pdf generator?

lburtwistle commented 1 year ago

Yes, I too am anxiously waiting any updates on prioritizing this one :)

mahxds commented 1 year ago

same would be so awesome to be able to easly geneare pdf

taholmes160 commented 1 year ago

why you need the component (use case) My company moves cars between sale sites -- being able to hand the drivers a list of cars to pick up is huge, as well -- passing data on about what has been moved to the operations team would be very helpful

how you expect it to work Select the information needed (filter or query) and dump it through a template to output as a .csv, .pdf etc

what you expect it to do Allow me to create reports

stale[bot] commented 1 year ago

This issue has been automatically marked as stale because it has not had recent activity.

acseven commented 1 year ago

https://github.com/Budibase/budibase/issues/1372#issuecomment-860061523

Nope - very relevant

Still very relevant!

Cloud-Kid commented 1 year ago

Hey, still a very interesting feature, it's indeed really needed.

The ability to generate PDF simply using form data or/and the ability to generate a PDF using one line of form at a time to complete PDF fields for instance.

What can be added later is notifications support during the PDF creation workflow.

Big thanks for your work !

rawtaz commented 1 year ago

Can we get the bot to not be an idiot and wanting to close this all the time? :-) This feature is a super important one.

aNobre-redhat commented 1 year ago

Moved from Q3 / 22 to Q3 / 23 roadmap? Such a shame. This feature is a must have.

AlejandroFNadal commented 1 year ago

We ended up making a Python api endpoint to generate the PDF's, and then downloading them as base64 over the api and regenerating them as pdf files using javascript in a dummy "Set state". We hope that we will be able to migrate this feature to the future budibase pdf feature.

gwlewis commented 10 months ago

This is a very important feature for our company as well.

Mcc83 commented 8 months ago

This is a must have. My company prefers to have a paper record of everything. Budibase needs some more exporting/pdf/print screen tools for sure. Would love to see this go further, hopefully in 2024.

Bewo commented 8 months ago

I recently started using Budibase and I have to say it's a really great project! I'm looking forward to working with it! But when I realised in the middle of my first project that there is no way to export PDFs natively, I was shocked! I can only agree with the previous speakers: In my opinion too, this is an absolute MUST-HAVE for such a great project!

Just a thought: If it's too much effort to integrate Carbone, then perhaps a "simple interface" like mpdf would suffice. This way every user has the possibility to define his content using custom CSS and Html/JS...

leonlazic commented 7 months ago

Please add the PDF generation function to the Q1 of 2024.

leonlazic commented 7 months ago

👀 The new global bindings demo also shows a little of the upcoming PDF generator component ...

Global Bindings Demo video

tariktokic commented 7 months ago

Super important, must have feature! Actually a deal breaker for us in the company. We need to have a PDF generated after submitting a form, so it can be printed and signed by the customer.

dthompsonusa commented 1 month ago

I'm evaluating Budibase. The application being built requires the ability for the user to press a button that then runs code to generate a set of reports from a combination of related tables that output directly to PDF files. From this thread it appears that Budibase is not capable of doing this. Please confirm if it is or not and if not when that functionality will be available. Thank you.

mjashanks commented 1 month ago

@dthompsonusa Budibase does not have an in-built PDF generator. However, it is capable of file handling in automations. This means that you can use a 3rd party report generator (e.g Carbone) to, Save, Email or return PDFs to the end-user in-app.

There's a great guide here: https://budibase.com/blog/updates/2024/files-in-automation/

dthompsonusa commented 4 weeks ago

Thank you Michael for the info. I'm trying to follow the guide but am getting stuck on where to put the json { "data":{{Binding.data}}, "convertTo": "pdf", "currencySource" : "GBP", "currencyTarget" : "GBP" }

Also, when creating the Render ID query, what value goes in the "Default" field next to the Binding Name of renderId?

The interface in the guide seems to be different than the current version of budibase. Any help is greatly appreciated.