When using Memento Database and other database (ERP, CRM, Project Management or any business management software) at the same time, there is a need to exchange data between systems as usual. One of the possible ways to exchange data with Memento Database libraries is to import and export using CSV files. Despite Memento Database is just brilliant in many aspects, the regular Memento functionality with CSV files is quite limited, so I use an automatic exports and imports via CSV using API.
I am wondering if there is a need for this in the Memento community.
When using Memento Database and other database (ERP, CRM, Project Management or any business management software) at the same time, there is a need to exchange data between systems as usual. One of the possible ways to exchange data with Memento Database libraries is to import and export using CSV files. Despite Memento Database is just brilliant in many aspects, the regular Memento functionality with CSV files is quite limited, so I use an automatic exports and imports via CSV using API.
I am wondering if there is a need for this in the Memento community.
--
You received this message because you are subscribed to the Google Groups "mementodatabase" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mementodataba...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mementodatabase/4e25a782-29a0-472f-a767-fc847594b297n%40googlegroups.com.
Hi Bill,
First of
all, I’m happy to see your response, as I’ve been reading the Memento group for
several years (although, I’ve never participated in discussions) and respect your
opinion and appreciate what you do for Wiki etc.
It’s not a JSON export/import but pure CSV file. I took a full compliance with the Memento Android export CSV file as a goal (with all its commas and dots), and my export files match fully, so if a third party software accepts Memento CSV, mine will suit without a fail. The same applies to imports. Honestly, the export is not a big deal, import is another thing, as long as it intends to deal with attached files, embedded objects etc as well.
Yes, it’s very general and works with all Memento field types, until it touches on some specific API features with two or three field types.
I will dare to list some features:
To view this discussion on the web visit https://groups.google.com/d/msgid/mementodatabase/d0dcd77a-c637-4b65-b4d5-58233c937c40n%40googlegroups.com.
To start with something, although this question does not sound from you — I do not plan to make any money from this for now especially here from people in the forum, in the same time I do not plan to share a source code. I developed and use this for several of my customers that use MDB for business purposes. It is hard for me to imagine now, if a demand has a potential to transform this to a web application with UI, subscription plans etc. Honestly, I’m not sure.
>> Does it have a name?
Not yet. I’m not an expert in naming, let’s call it SEM (from Scheduled Exchange for Memento; but this is beta, I wouldn't like to delay my answer to you because of a naming tortures), so far no one has come up here with a better name for it.
It’s a script that lives on a VPS and could be scheduled. A number of presets could be configured (for instance, for a customer, or a customer's project, or a somebody from the forum with Project1, Project2 etc), each include basic setup (database address, access token), library names intended to exchange and whether they are to be exported or/and imported. It uses FTP currently for export CSV files to and import from, so FTP-server access should be set up also (address, user and password). Plus, data exchange sessions schedule. If I haven't forgotten anything that is enough in general for a typical case – to export or import of all the fields of the libraries. Then, if there is a need in an import/export customization (to exclude some fields, attached fields directories etc.) it needs additional setup, but it is not too complicated.
SEM just exchanges data between CSV files and a Memento Database via API, it does not store any data from libraries. It deletes incoming import files from FTP server or could move them to archive directory if necessary. For a VPS I currently use a data centre in Germany, but nowadays it could be almost anywhere including the North America etc. There is no any limitation about FTP server – it could be a database owners’ or mine or a third party.Yes, some sensitive data has to be set up, but a Memento Database administrator (there is no need for SEM to know admin or user logins) can always delete an access token and close FTP access for the given username.
>> I've never used Memento Private Server. It's been "out there" for years, but is it a released product? What can depend on it? Can people who don't use Private Server use your product?
The developer sets the licensing rules and terms of use, I have nothing to do with it. I’ve got an experience of working with Memento Private Server as long as my customers acquired it legally. The Memento Cloud API and the Memento Private Server API are identical in terms of methods, responses etc. The Memento Cloud API has requests limits which could be found in the Memento documentation; the Private Server API does not have requests limits.
So, in general people who use Memento Cloud can use SEM.
>> The last time I looked (not long ago), the Memento Cloud API was still in beta testing status for a very long time (years). Is it released yet? Can we depend on it?
The Memento documentation says the Memento Cloud API is still beta and in my experience it has some limitations, but you can get along with them. The same applies to the Private Server.
>> What should people, especially those importing from other databases or other sources, know about the file format supported?
A field separator by default is comma (could be altered in SEM setup), Memento also uses a quotation marks “. People could just make an export to csv of any library and study the result file. Comma-separated values format has some specifications, please forgive me if I will not list them here.
>> regional/international settings & standards are important
Yes. Desired date format, decimal separator and currency delimiter are also customizable in SEM. Memento does not export a currency code in csv file, so SEM does not as well by default.
>> How will people learn about and understand how to use your product?
I've not composed neither readme nor Wiki yet, I’m just trying to understand if there is any demand on it.
>> Where would it live? As a JavaScript Library that can be added in the Memento script editor?
I tried to answer this question at the very beginning, from which I could assume it cannot live on the user's device — at least because it should be scheduled and not depend on the activity of the user's device itself.
I tried my best to respond you Bill, but there are two of us here for now.
пятница, 26 июля 2024 г. в 15:44:11 UTC+3, bill....@gmail.com:
That sounds excellent to me, as I know there are many people in the forum that depend heavily on CSV Import & export, though I'm not one of them. It's even more excellent that you are willing to share a product in this space that can help people. Some comments & questions...
To view this discussion on the web visit https://groups.google.com/d/msgid/mementodatabase/ba8a1eb5-495e-4a68-8f6b-2e3353d6ebcbn%40googlegroups.com.
Bill and other who may read this,
I’d like to clarify the point of altruism.
I definitely don't know what kind of demand I'm dealing with. For me not to become servicing dozens of setups (=time), tons of attached files (=server traffic) etc., I’d like to mean the completely free two libraries per project in basic exchange (all fields with no customization) with no fields of attached files file types two times a day. I would definitely handle this level, the rest will depend on the situation.
Лучшим проявлением альтруизма был бы частный сервер для новых версий Memento.За него можно благодарить не только словами.пятница, 26 июля 2024 г. в 20:15:31 UTC+3, kuo...@gmail.com:
>>> I will dare to list some features: