Help

Save the date! Join us on October 16 for our Product Ops launch event. Register here.

Re: How to print linkable URLs?

2667 1
cancel
Showing results for 
Search instead for 
Did you mean: 
Kamil_Lelonek
5 - Automation Enthusiast
5 - Automation Enthusiast

When I print a view that contains links, they are not clickable in the PDF result. How to achieve that?

11 Replies 11
M_k
11 - Venus
11 - Venus

Hi @Kamil_Lelonek

I managed to find a thread of posts that might help.

Hope this might help.

Mary Kay

If this does help, can you type SOLVED in the subject line?

Kamil_Lelonek
5 - Automation Enthusiast
5 - Automation Enthusiast

Oh, the problem is I’m using the LOOKUP type to display such links, and they are not clickable then :confused:

In the article that @M_k linked, it was mentioned that formula-generated URLs would also create clickable links in PDFs, so I thought it might work to pull the URL from the lookup field via formula. However, something has changed since then, and this is no longer the case. I ran several tests, and could only get a live link using an actual URL field.

Hi @Justin_Barrett

Thank you.

I sent you a PM last week. Did you get it?

Mary

@M_k No, I don’t see any PMs from you since our last conversation wrapped in December.

Hi @Justin_Barrett

I just sent you a PM. Hopefully you got it.

Mary

It’s a shame that Airtable doesn’t support fields that also have formulas as an attribute. :slightly_smiling_face:

Yeah, this is a problem. Two basic approaches -

  1. Create an external API process that either builds your PDF from scratch (Google Apps Script can do this), or pre-populates (and sustains this population) of link fields that are not actual formula fields.
  2. Create a script block that copies the formula links into a real field.
Kamil_Lelonek
5 - Automation Enthusiast
5 - Automation Enthusiast

What I did was:

let table = base.getTable('Plany');
let view = table.getView('Grid view');
let result = await view.selectRecordsAsync();

for (let record of result.records) {
    let link = record.getCellValue('Link')[0];
    await table.updateRecordAsync(record, {
        'URL': link,
    });
}

Let me know whether that’s correct.