I’m in the process of refining a document. I’ve added a couple of field scripts to several of the forms. The forms alrady have several hundred records. How do I get the form to run the script on all the existing records besides going through each one and clicking the recalculate formulas circled arrow?
Thanks Brendan. I’ve subscribed to TF Pro on my iPad, I’m just trying to decide which, if any, of the DB’s I haven’t migrated from TF5 are worth it. If TF5 were going to be operable, it’d be a non-issue. So, I’ll take some time with them and see what I want to put my effort into. As for my iMac, I’m just not ready to commit to the subscription only because I’m not sure I need those extra features.
Daniel, thank you as well. I have 2 iMacs. One is brand spanking new(a lovely gift from my hubs and kids for Mother’s Day) and a 2017 iMac. I could continue to run TF5 on that one. So here’s a question. Will TF5 continue to work on newer iPads once Rosetta 2 is discontinued? I tend to do the majority of my work from my iPad, but it is nice to be able to work from my iMac too.
-
This reply was modified 3 months, 2 weeks ago by
karen james.
Hi, Brendan,
Version 1.07 does not fix this problem.
I paid the subscription fee when Tap Forms Pro was first released, and I look forward to becoming a steady user, but until this bug is fixed, I will continue to use Tap Forms 5, which works correctly.
With Run Script in Tap Forms Pro you can implement all these and have them behave exactly as you’d like.
Cheers, Daniel
---
See https://lab.danielleu.com/tapformspro/ for scripts and tips&tricks
Hello everyone,
i do not understand, what I’m doing wrong.
I just want a simple Promt, that asks for one Value when you hit the bottom.
my script looks like this:
var varKurzbeschreibung;
var varStrasse;
var callbackFunction = function() {
console.log(varKurzbeschreibung);
console.log(varStrasse);
};
let prompter = Prompter.new();
prompter.cancelButtonTitle = 'No Thanks';
prompter.continueButtonTitle = 'Go For It!';
prompter.addParameter('Kurzbeschreibung', 'varKurzbschreibung','text')
.show('Neues Haus eingeben', callbackFunction);
When I Start the script, I get the box withe the labels but I can not enter anything. The box for entering is missing,
When I add
.addParameter('Strasse', 'varStrasse', 'popup')
the box is shown, but also a pickup Box, what I do not want,
What am I doing wrong?
Thanks
Steve
I just fixed the favourite scripts bug.
Ah right. Sorry about that. I didn’t realize you weren’t referring to the Mac version.
Ya, I haven’t built the script sorting function into the iOS version. Certainly something I should add.
I’ll look into the favourites issue.
Hello Brendan, thank you for your quick response. I forgot to say that I use the iPhone, I don’t have a Mac. I have already tried to press and drag the scripts without success. And on the iPhone I have not been able to modify the font of the List mode, as I can do in Tap Forms 5.
By the way, I’ve seen something else. I can’t run the scripts from the Favourites section, only from the Run a script section.
Hi Fernando,
You can just drag and drop your scripts to put them into the order that you want them to be in.
I don’t have a function for changing the font in Tap Forms for Mac for the single column list view.
Thanks,
Brendan
Thank you so much, Daniel! I’ll try that. Btw, I went looking but couldn’t find where to search for the answer. Can you tell me if there is a document that covers script differences between TF and TFP? Mmaybe I just missed it.
Thanks again,
Robin
Hello everyone, I’ve been using Tap Forms for a few years and I recently downloaded the new Pro. In general, I’m liking it, although I’ve found some small problems. Specifically, I can’t organise my scripts numerically as I do in Tap Forms 5, nor can I change the font in List mode, although I can in the others. I would appreciate your help. Thank you very much and best regards.
Looks like you’re using Tap Forms Pro. So getForms() is now called fetchForms() and getFields() is now fetchFields(). At a quick glance, I haven’t spotted any other API changes affecting the script.
Cheers, Daniel
---
See https://lab.danielleu.com/tapformspro/ for scripts and tips&tricks
Good day, Sam (or anyone else who might be able to jump in),
I was looking for a way to copy a record from one form to another and found Sam’s script. I am very much looking forward to getting it working.
I changed getID to getId, so that part should be fine. However, I am now getting the following error, and I am unable to determine the new method for obtaining a list of available forms. If you have time, may I please trouble you to offer possible suggestions?
7/11/25, 12:04:07 / Nails / Copy record to another Form
Copy record to another Form: TypeError: document.getForms is not a function. (In ‘document.getForms()’, ‘document.getForms’ is undefined), line:(null)
Thank you for any time and expertise you can spend answering my question.
Respectfully,
Robin McClish
(a very, very new scripter)
That has always been a challenge to show data that is coming from a linked form that is linked to another form. But thinking about this again, I found a solution :-)
First, you have to enable ‘show reverse relationship’ on all linked fields.
Then, in the house form, add a field script that returns the record id of the house record (house_id). Then in the tenant form, add another field script that returns the record id of the house record (house_id). To do this you have to traverse the linked fields back to the apartment and then to the house.
Now in the house form, change the tenant linked field type to ‘joined’ and use the two house_id fields to link the two form.
Now you can see all the tenants and can directly select them in the house form. When creating a new tenant or assigning one, you might have to click ‘refresh records’ to get the updated data!
Please have a look at the attachment that shows this functionality at work.
Another approach would be following:
In the apartment form, add a field script that returns the name of the tenant:
function tenant() {
const mieter_id = 'fld-3bad25ed396f42e49da9780dd86d1920';
const mieter__name_id = 'fld-a255f473fd744c398134add2a87a3cc9';
const mieter__vorname_id = 'fld-ba1a0292eb07418fae85a894f94d6670';
let mieter = record.getFieldValue(mieter_id);
if (!mieter || mieter.length == 0) return '';
// use first tenant
mieter = mieter[0];
// get names
const name = mieter.getFieldValue(mieter__name_id);
const vorname = mieter.getFieldValue(mieter__vorname_id);
// return name
return vorname + " " + name;
}
tenant();
Then add this field in the apartment listing of the house. This way, you see who’s in which apartment, but you don’t have the direct link in the tenant table.
Attachments:
You must be
logged in to view attached files.
Cheers, Daniel
---
See https://lab.danielleu.com/tapformspro/ for scripts and tips&tricks
I find ChatGPT very useful sometimes. But often it’s just plain wrong or I guess assumes that because it doesn’t know, then it’s not possible to do something.
Take a look in the Utils area of the JavaScript API documentation. There’s lots of good stuff in there that Tap Forms can do:
https://www.tapforms.com/help-mac/pro/en/topic/javascript-api