Ladies and Gentlemen of this forum, I’ve been reading a lot, banging my head on the screen a lot more and I need help.
I’m trying to accomplish the output of a repeating group formatted as labels on a template page to print. I’ve been trying several methods and haven’t had any luck yet.
Did anyone accomplish this or is willing to discuss alternatives and make this happen?
I have tried using DocXtoPDF but I’m facing template difficulties.
With CraftMyPDF I’m having trouble figuring out how to pass on the JSON values on the API.
With PDF Conjurer I feel completely blind. Everybody on the Conjurer posts seem to make it work somehow but I can’t understand it’s working.
Thank you very much in advance.
2 Likes
Hello everyone.
Unfortunately there hasn’t been any response to my question, I believe mainly due to the distress the Forum has been having lately with the price changes.
This didn’t stop me from keep looking, so I’m posting my findings here in case someone deals with the same issue.
To summarize I am printing my labels using CraftMyPDF’s API plus JSON data. So here’s how I did it:
-
Create an account and get API credentials at CraftMyPDF.
-
Install the CraftMyPDF Bubble plugin
-
I’m using a repeating group so that users can view and select which labels will be printed. To hold the information I need in text form I have introduced an invisible input field on each cell.
-
Fill the invisible input field with the data that needs to be sent to CraftMyPDF, already in JSON format.
-
In order to hold the information of the selected Assets (the thing being displayed on the Repeating Group and that will have it’s labels printed) I have created a list state on the Repeating Group and a text list state.
- JSON Export List (list of text) : will hold the information as a list of text
- Selected List (list of Assets) : will hold the information on the selected cell
-
On my main group container, the one holding the repeating group, I created one state to hold the URL that will be outputted from CraftMyPDF’s API. This main group must be of type ‘text’ for it will be used later to
Attention here, the state to hold the JSON must be a list of text.
-
Additionally I have created a ‘select to print’ button. This button will add the current cell’s JSON holder (the input we created on steps 3 and 4) to the list of text that is the Print List.
-
In order to hold the information of the selected Assets (the thing being displayed on the Repeating Group and that will have it’s labels printed) I have also created a list state on the Repeating Group.
(don’t bother about the ‘JSON Export List’, that’s a leftover)
-
Now to the workflows. First I need to create workflows for the ‘Select to Print’ buttons, that will add the current cell’s Asset to the print list.
What this action is doing:
a. Sets the state JSON Export List (list of text) as the current list of the state PLUS (or MINUS) the current cell’s JSON (which is being hold on the hidden input box). *notice that on the screenshot there’s the MINUS, because I must have two actions here, one for adding to the list and one for removing from the list.
b. Set the state of the Selected List (list of assets) to hold the current cell, so we can use that information later to mark the button as checked/unchecked.
-
Next step on this same workflow (click the ‘Select to Print’ button) is to display the current list of texts as the content of the main group container (Step 6). Notice that when we select ‘format as text’ on the list, we must choose how to format the content. Use the ‘,’ delimiter that will be valid on the JSON.
-
Now it’s time to generate the labels that will be exported, I use the ‘Generate PDF’ action from the CraftMyPDF… Notice I’m using the JSON configuration requested by CraftMyPDF and inserting only the main container’s text that we created a few steps earlier.
The PDF URL for download is now generated. For the next steps I place it on a download button and it’s done. A nicely designed set of labels.
CraftMyPDF has an extensive documentation about their side and it’s pretty straightforward to use once you figure out the JSON part.
I hope this helps somebody.
Cheers!
Wow. This is awesome!
I eventually need to print labels in my Bubble app. This will definitely help.
I’m also surprised that there are no plugins for label printing. You’d think someone like Avery would be all over that!
1 Like
Good point.
Avery has what seems to a pretty neat API that integrates into a label creator. Seems very nice, but require you to sign some documents and the people in my company responsible to do that are too busy with other things, so I decided to go ahead with this one.