Search Results for 'script'
-
Search Results
-
Topic: Creating a dictionary
Hello everybody,
I like to create a dictionary database for classical languages based on some scanned dictionaries (19th and 20th century) that are available in the form of PDF files. The PDF files are not searchable and due to the mixing of several alphabets and diacritical characters present in these files ocr is not reliable (creating searchable PDF files would be very time consuming).The database should work with user input based on the roots of the language.
Example for one PDF file. Let’s call the dictionary
DICand letABCbe a root.All entries in
DICpertaining to the RootABCare present on a certain page ofDIC.I have a list of all possible roots and the page number pertaining to each root, for example
ABC: 23
ACE: 51`
BBD: 134`
…I like to create a Tap Forms 5 document which has one of the following two options:
When the user searches for Root
ABC, either1. Tap Forms 5 tells the Preview or any other PDF-Application to open file to open the dictionary DIC and show page 23,
2. or a Form which contain all images of DIC opens record # 23.For performance reasons (the PDF files are quite large – several GB) I’am inclined to opt for the second option.
So I have to create a form with a field that is able to accommodate photos obtained from the pages of
DIC.
My question is:
1. How can I import thousands of photos into a Tap Form 5 form
2. and how can I search for roots?The answer to the second question is probably connected to the Prompter class of the JavaScript API. But how can I import all the photos inside a Tap Forms 5 document?
Cheers
I am using the prompter function and for a popup list is it possible for one to be the default?
On running the script, the default is “Unspecified”
For example in the following code for passport_type_list variable, I would like the first entry (‘United Kingdom of Great Britain and Northern Ireland passport’) to be automatically shown rather than ‘Unspecified’.
var heshe; var heshe_list = ['his', 'her']; var director_signee; var passport_type; var passport_type_list = ['United Kingdom of Great Britain and Northern Ireland passport', 'Irish passport', 'United States of America passport']; let prompter = Prompter.new(); prompter.cancelButtonTitle = 'Cancel'; prompter.continueButtonTitle = 'Continue'; prompter.addParameter('Passport type: ', 'passport_type', 'popup', passport_type_list) prompter.addParameter('He or she: ', 'heshe', 'popup', heshe_list) prompter.addParameter('Name of the director signing: ', 'director_signee') .show('Choose whether there is a he or she\n\n\nIf a company then put in name of director signing',output);Topic: Button to trigger script ?
Is there a way to create a button (or something looking like a button) in a layout and trigger a script through it?
I’m building a simple book keeping thing with Tap Forms for my wife and she’s a complete non-techie. Starting a script from the menu would work for me, but for her a button right at the right place in a layout would be much better.
Topic: Help with simple script
I have fields just two fields that need to operate in a form….
ShareSell$Amt (numeric, id:fld-89c6961ad2ec43e8853ff13e052fc807)
NextRung$Amt (calculation, id:fld-276de1515a7c4054b9df9410cbbefd29)I just want after a find of the fields involved, to run a script to
read in the first found record field NextRung$Amt,
move to the next record and insert that read amount into field ShareSell$Amt,
then continue thru the found set of records.The first record has the beginning ShareSell$Amt that is calculated in the record as NextRung$Amt.
The function I’m looking for — is that number from the field NextRung$Amt is picked up and put into the next record’s ShareSell$Amt, and that makes that record calculate a new NextRung$Amt, which is picked up and put into the next record, then on until records in the found set run out.
This script just stops on the first record, so it needs something.
function Calc_NextRung_LADDER4() { let balance = 000000; var nextrung_id = 'fld-276de1515a7c4054b9df9410cbbefd29'; var newsharesell_id = 'fld-89c6961ad2ec43e8853ff13e052fc807'; //var transaction_date_id = 'fld-2567fc59b0ce45f982f2fe2d20eb0d79'; //need a saved find 'Calc_Balances LADDER4' //Sam Moffatt, Tap Forms Forum, 10/21/2019 #37289 for(record of form.getSearchNamed('Calc_Balances LADDER4').getRecords()) { balance += record.getFieldValue(nextrung_id); record.setFieldValue(newsharesell_id, balance); } document.saveAllChanges(); } Calc_NextRung_LADDER4();In the screenshot, this set has 8 records or “rungs”. Theoretically the script would populate the 7 following rungs or records after the amount is first set to begin in the first record.
Thanks for those that make these things easy for those of us who infrequently dabble in scripts,
MikeTopic: Help with a script 3
Hi,
The Swedish farmer now has an excellent tool with Tap Forms 5 in organizing cows and calves. Two script are involved created by Brendan and Sam, thanks to both of them.
However there is a need for one more script.
The birth date of a calf in form “Kalvningar” is equal to the delivery date for the mother cow. In the form “Rekryteringsdjur” there is a list of all deliveries for a cow.
Now there is a need for a field in “Rekryteringsdjur” identifying the date of the cows latest delivery.
I hope someone can help me!!
Enclose the template.In a post I received a help from Sam Moffat and Brendan on how to create, from one form, a set of records in a linked form with a form script. (The post: https://www.tapforms.com/forums/topic/how-to-add-more-than-one-record-at-a-time-using-a-form-script/).
The script below work correctly (it creates the records in the link). However, only the first record created in the linked form is linked. The others are not linked, and it is necessary to go through them one by one to create the link.
The field linking the two forms is Link to Form, One to Many.
Is there a way to overcome this? Any help would be gratefully received.
The script:
`// Fields from Time Spent form
var order_of_records_id = ‘fld-d78467379e004205b7893109bca23db2’;
var date_of_activity_id = ‘fld-5b07fd9bb7b441848d31de782bcd8780’;
var time_spent_id = ‘fld-be5bcddb8b46426eb90dded15790ef89’;
var activity_id = ‘fld-160340262dbd416291dbeebd7119bd86’;
var description_of_activity_id = ‘fld-c4316e0ee4e7457b92b2f8cc6f699200’;// Date fields
// Add today’s date
var date_signed = new Date();// Formatted to 23/04/2022 for entry in a time entry
var date_signed_formatted = date_signed.toLocaleDateString(“en-GB”, { year: ‘numeric’, month: ‘long’, day: ‘numeric’ })console.log (date_signed + “\n” + date_signed_formatted);
var output = function printOut(continued) {
if (continued == true) {console.log(heshe + ‘\n\n\n’ + date_signed + date_signed_formatted);
let entries = [{
[order_of_records_id]: “1”,
[date_of_activity_id]: new Date(),
[time_spent_id]: “6”,
[activity_id]: “Calls & emails”,
[description_of_activity_id]: “”
},
{
[order_of_records_id]: “2”,
[date_of_activity_id]: new Date(),
[time_spent_id]: “6”,
[activity_id]: “See and identify client”,
[description_of_activity_id]: “See client at [ ] – identify client by ” + heshe + “United Kingdom of Great Britain and Northern Ireland passport and a second form of identification”
},
{
[order_of_records_id]: “3”,
[date_of_activity_id]: new Date(),
[time_spent_id]: “12”,
[activity_id]: “Discuss client’s document(s)/matter, see client sign document(s)”,
[description_of_activity_id]: “Client [ ]\n\nObtain confirmation that:\n\n(i) client has read the Power of attorney, \n\n(ii) the facts and information contained in the Power of attorney are correct,(iii) client is willing to be bound by the Power of attorney; and \n\n(iv) client is willing to grant the power of attorney in favour of the person(s) named in the power of attorney\n\nOn ” + date_signed_formatted + ” at [ ] and [name of client] signed the power of attorney in favour of person named as the attorney in my presence as a deed with myself acting as a witness”
},
{
[order_of_records_id]: “4”,
[date_of_activity_id]: new Date(),
[time_spent_id]: “12”,
[activity_id]: “Notarise document”,
[description_of_activity_id]: “Prepare covering certificate for 1 document (Power of attorney) and attach the covering certificate to the Power of attorney document – bind, seal and sign”
},
{
[order_of_records_id]: “5”,
[date_of_activity_id]: new Date(),
[time_spent_id]: “6”,
[activity_id]: “Arrange for legalisation/apostille”,
[description_of_activity_id]: “Arrange with legalisation agent to collect 1 document (Power of attorney) and then obtain apostille using normal service of the Foreign, Commonwealth and Development Office, and deliver the documents by courier”
},
{
[order_of_records_id]: “6”,
[date_of_activity_id]: new Date(),
[time_spent_id]: “”,
[activity_id]: “Write up notarial register”,
[description_of_activity_id]: “”
}];
for (let entry of entries) {
let newRecord = record.addNewRecordToField(‘fld-d6d2f3fd370a45c2b0d2b281fe012784’);
newRecord.setFieldValues(entry);
}
document.saveAllChanges();
} else {
console.log (“Cancel button pressed.”);}
}
var heshe;
var heshe_list = [‘his’, ‘her’];let prompter = Prompter.new();
prompter.cancelButtonTitle = ‘Cancel’;
prompter.continueButtonTitle = ‘Continue’;
prompter.addParameter(‘He or she: ‘, ‘heshe’, ‘popup’, heshe_list)
.show(‘Choose whether there is a he or she’,output);`