Synchronizing data

From Memento Database Wiki
Revision as of 18:27, 16 September 2016 by UnConnoisseur (talk | contribs)
Jump to navigation Jump to search
« Page as of 2016-09-16, editions Mobile 3.9.7, Desktop 1.0.3 »

This page is potentially incorrect, incomplete, and under development..

There are currently two facilities I'm Memento for synchronizing data. One is to the Memento Cloud. The other is to the Google Sheets application via files stored on Google Drive. They are generally quite separate services, used for mostly distinct purposes.

Synchronization with the Memento Cloud

The Memento Desktop Edition accesses libraries and resources stored in the Memento Cloud, and there is no local copy explicitly stored on the device.

The Memento Mobile Edition stores libraries and associated resources in local storage, whether internal to the device or on mounted external media. Each of these libraries, together with associated files, may be synced to the Memento Cloud, after which the local copy and that in the cloud well be synced thereafter.

The Memento Google Sheets synchronization service is used to enable supported mobile devices to:

  • Enable access to Memento libraries and associated resources across multiple devices and platforms as if they are local.
  • Share access to Memento libraries and associated resources with the public or with specific other Memento accounts.

Synchronization with Google Sheets

This service is used to:

  • externalize some or all fields of a library's entries to enable viewing or processing using Google Sheets.
  • sharing some or all fields of a library's entries with others who do not use Memento, but who may use Google Sheets.
  • provide a worst-case form of backup, augmenting the internal backup/restore capabilities built into Memento.

Synchronization is performed on a library by library basis.

To initiate Sheets synchronization for a library:

  1. Link the library to a new or existing Sheets file on Google Drive by opening the Library Entries List screen and then its Action menu. If the library is already set up to synchronize with a Sheets file, the option will be entitled "Sync with Google Sheets". If not, it will be entitled "Link To Google Sheets". Since we are initiating sync, select Link to Google Sheets.
  2. A card will appear with options Link to new document and Link to existing document. If you want to create a new Google spreadsheet with records from the Memento library, select Link to new document. In this case, a new Google Sheets file will be created on the Google Drive (access to that account required) in the root (My Drive) directory, and a sheet row will be created for every library entry. You can then use Google Sheets to view, edit, add, and delete rows/entries.
  3. Select Link to existing document if you already have a Google spreadsheet created previously, with data that you want to link to your Memento library.
    Please note: When linking the library to an existing Google spreadsheet, the data is transferred in just one direction - either from Memento to Google or from Google to Memento. OK, I give up. Which way?
  4. To synchronize changes made in Memento and Google Sheets, open the library's Action menu and select Sync with Google Sheets.

Synchronizing files (images, audio, etc) with Google Sheets

Synchronization of files attached to entries (images, audio recordings, etc) is turned on when connecting with a Google spreadsheet, or in the library settings.

  • All files attached to entries of a library are uploaded to Google Drive, in a folder called Name_library.files
  • Links to uploaded files are saved in a column of the Google spreadsheet with the name Name_field.http

Restoring the library from Google Sheets

You can restore libraries that have been synchronized with Google Sheets.

In the Libraries List screen, select Add library from the Action Menu. In the list of templates that opens, select Restore from Google. Then you will see all the libraries synchronized with the current Google account. After selecting a library, it will be created on your mobile device and will receive all the data from the linked Google spreadsheet.


New MEMENTO_ID column
In the Google Sheet, an additional column will be created, with a title of MEMENTO_ID to enable matching of rows to entries in Memento. Do not modify or delete this column.
Matching locale settings
The Locale setting on your device should match the locale setting in Google Sheets.
Editing the same rows/entries
If you edit the same entries in Memento and Google Sheets, you will be offered to choose which version is correct.
Adding a new field
Whenever you add a new field for synchronization, the sheet in Google Docs is created anew.
Keep data together
All entries in the Google Sheet should follow one after another. There should be no empty rows.
Field types for synchronization
Memento allows you to synchronize only fields of certain types: text, integer, real number, date, date/time, rating, currency, single-choice list, multiple-choice list, location, boolean, hyperlink, barcode.

Synchronization between two or more devices without the Memento Cloud, using Google Sheets

To sync a library between devices, synchronization with the Memento Cloud is the recommended solution. See Cloud storage and Teamwork. If use of the Memento Cloud is not possible or desired, you can use the following method.

  1. On all devices, select the same Google account. On the main device, synchronize the library with Google Sheets.
  2. On the other devices, download the library, as described in the previous section.

At this point in the library restructuring process, changes on one of the devices (for example adding new types of fields) are not transferred to the other devices. You need to repeat the procedure for linking libraries for all the other devices.