Sharing a single record of a form?

Tagged: 

Viewing 15 reply threads
  • Author
    Posts
  • August 20, 2021 at 8:45 PM #45019

    Jessica Dail
    Participant

    Hi,
    I’m interested in ham radio, and am currently in the process of studying for my technician license.
    I’m using Tap forms to track the names and call signs of friends, and people I meet, so that once I pass my exam, and am ready to get on the air, I’ll have a list of people to communicate with.

    I also have a friend who is interested in getting his license.

    My question is “If I’m with my friend, and he wants a single record from the form I made, can I share it with him?”
    If so, how?

    If its not currently possible, how difficult would it be to add it?

    I’ll also say that I have another form for equipment.
    I love tap forms, and honestly can’t see myself using anything else anytime soon.
    This is a great app, by a great, responsive developer, who truly cares about accessibility, because tap forms is 100% accessible with voiceOver! :)

    August 20, 2021 at 10:34 PM #45020

    Sam Moffatt
    Participant

    On iOS there is a “Beam Record” function to be able to send a record to a nearby iOS device also running Tap Forms. I tried to find some better docs for it but only found some resources on the forum answering questions. I think that’s roughly what you’re after?

    August 26, 2021 at 2:50 PM #45097

    Brendan
    Keymaster

    Another option is to use the Share function on the record details screen. When used from there, Tap Forms will generate a .tfarc file that has only the current record in it. You can then use AirDrop or other sharing methods to send it to another device.

    Beam Records uses an older technology which I will be retiring at some point.

    December 1, 2021 at 10:25 PM #45889

    biggreyform
    Participant

    I am trying to figure out how to share a single record. I do not the Share function on the record detail screen.

    December 1, 2021 at 10:30 PM #45891

    biggreyform
    Participant

    To clarify, I am trying to do this in MacOS, not iOS.

    December 1, 2021 at 10:33 PM #45893

    Brendan
    Keymaster

    On macOS you would need to make a Saved Search to filter your records so that just the one record you want to share is in the list. Then use the Export Tap Forms Archive command to generate the .tfarc file.

    I need to add single record sharing like the iOS version has to the Mac version.

    December 1, 2021 at 10:35 PM #45894

    biggreyform
    Participant

    Thanks. This comes up a lot and would be great if you could add it. I have a receptionist taking notes for a new client and wants to send that info or single record to the person keep track of that info. They do not need to share the same database though and sync.

    December 1, 2021 at 10:48 PM #45895

    Sam Moffatt
    Participant

    Why not just “print” the record to PDF and send them the PDF?

    December 1, 2021 at 11:04 PM #45896

    biggreyform
    Participant

    They could, but the staff member would have to re-enter that data off of the PDF [which is fairly significant] into their own tapform database. The person that keeps track of it ends up adding a large amount of additional information over time after that initial entry is captured.

    December 2, 2021 at 2:07 AM #45902

    Sam Moffatt
    Participant

    Ok, three form scripts: Copy_Record_To_Clipboard, Update_Record_From_Clipboard and Import_Record_From_Clipboard.

    Limitations: this will likely only work for plain text note fields (no rich text) and it won’t support attachments.

    Copy record to clipboard takes a record and puts it on your clipboard. Simple stuff:

    function Copy_Record_To_Clipboard() {
    	Utils.copyTextToClipboard(JSON.stringify(record.values));
    }
    
    Copy_Record_To_Clipboard();
    

    Update record from clipboard attempts to parse the clipboard and set the field values from the clipboard. It won’t reset fields that aren’t set in the source record so you’ll merge those fields into the current record values:

    function Update_Record_From_Clipboard() {
    	record.setFieldValues(JSON.parse(Utils.copyTextFromClipboard()));
    	document.saveAllChanges();
    }
    
    Update_Record_From_Clipboard();
    

    Final form script creates a new record and sets its data to be that of the clipboard:

    function Import_Record_From_Clipboard() {
    	var newRecord = form.addNewRecord();
    	newRecord.setFieldValues(JSON.parse(Utils.copyTextFromClipboard()));
    	document.saveAllChanges();
    }
    
    Import_Record_From_Clipboard();
    

    Very simple stuff, it’ll copy the JSON fields into your clipboard which you can then paste to someone else and they just run the form script to import or update on the other side. Again, caveats being plain text notes supported only and no attachment/photo stuff/signature. Just plain text.

    Give that a spin and see if it sort of works for you.

    December 2, 2021 at 8:30 PM #45917

    biggreyform
    Participant

    Thank you for the script examples

    To clarify:

    User A creates a new record that they want to share with user B via email. User A runs the first script [copy record to clipboard] and then pastes the result in an email to User B. User B then copies the output sent in the email and runs the third script [import record from clipboard]. Is this correct? Not quite sure I understand what the second script [update record from clipboard] is used for [and if user A or B is executing it].

    Thanks

    December 2, 2021 at 8:45 PM #45920

    Sam Moffatt
    Participant

    That’s it in a nutshell, the receiver does need to be careful to not copy any other junk characters otherwise an error will happen during the decode but that’s more or less the process.

    The update record thing was a curio of mine where you could take the JSON payload and just merge it to the record. Anyone could use it, I figured I’d just put it out there as an interesting way of updating an existing record rather than creating an entirely new one. Maybe not useful in your use case but perhaps useful if you want to share updates to the same record later.

    I think that should get you most of what you need assuming the rich text/attachment limitations are ok.

    December 3, 2021 at 7:51 AM #45933

    Prashant M
    Participant

    Just to confirm , it’s not possible to share/send/beam a single record as CSV from iOS version . Correct?

    December 3, 2021 at 8:08 AM #45934

    biggreyform
    Participant

    From iOS yes. From MacOS no I believe. You can copy and paste it with scripts as discussed above.

    December 3, 2021 at 8:50 AM #45936

    Prashant M
    Participant

    how from iOS ?

    December 3, 2021 at 12:40 PM #45940

    biggreyform
    Participant

    find the record you want, push the button in the most upper right [three dots with three lines] and then select if you want to email, share, etc.

Viewing 15 reply threads

You must be logged in to reply to this topic.