找到你要的答案

Q:Data-collecting : populate a database offline

Q:数据收集:脱机填充数据库

I'm currently working with an NGO, and we need to conduct some surveys in the field in Senegal. We want to do it on mobile, but can't rely on 3G connection (high costs and not always reliable).

So, we're looking for a data-collecting/editing tool that :

  • is web based;
  • works both on mobile and desktop;
  • works offline;
  • stores it's data in a relational database (mysql, postgres...);
  • manages relations;
  • can manage geographical input (GPS, custom shapes);
  • can manage media input (photos);
  • is open source or free/cheap for NGOs.

I thought it would work this way :

  1. when online, the user chooses which tables he wants to be able to edit offline
  2. those tables are downloaded to the web app's local storage
  3. the user can add/edit/delete rows on the local storage, even if offline
  4. when back online (at the office), the user can sync back the changes to the server

Any editing of the schema (adding/deleting/changing columns or tables) would have to be done online.

This would work if each record has an UUID, so that two users adding data offline at the same time would not conflict. Of course there's a small chance of conflicts if both users edit the same data, but that wouldn't happen often since each user would work in different zones, and entering data is much more frequent than modifying/deleting data. There could even be a conflict alert by having a "modification uuid". Of course, if the database grows, the local data would also become quite big. Maybe there would also be the ability to filter which records to sync (eg the last 100 records, or based on geographical boundaries).

The UI would feature :

  • a "form" view, to enter or edit data, with widgets corresponding to the field types (ideally including 1 to N relations)
  • a "list" view, to have an overview of the data, and do some batch operation
  • enventually a "map" view, for tables with geographical data

I know it's quite a lot, but I though it's not possible we're the only organisation needing such a tool.

I found about KoboToolbox in my research of the perfect data-collecting tool. I'm almost satisfied, but there are a few things that are missing for our needs : - the ability to edit data in the field; - the ability to build 1-n relations between different forms; - the ability to populate a database directly (which could be accessed using other tools, like GIS or Access, for display, analysis, or batch modifications).

Does any of you know of such a tool ? Or are there reasons why they don't exist ?

Thanks a lot !

Olivier

我目前正在与一个非政府组织合作,我们需要在塞内加尔进行一些实地调查。我们要做的是在移动,但不能依靠3G连接(高成本和不可靠的)。

所以,我们正在寻找一个数据收集/编辑工具:

  • is web based;
  • works both on mobile and desktop;
  • works offline;
  • stores it's data in a relational database (mysql, postgres...);
  • manages relations;
  • can manage geographical input (GPS, custom shapes);
  • can manage media input (photos);
  • is open source or free/cheap for NGOs.

我想它会这样工作:

  1. when online, the user chooses which tables he wants to be able to edit offline
  2. those tables are downloaded to the web app's local storage
  3. the user can add/edit/delete rows on the local storage, even if offline
  4. when back online (at the office), the user can sync back the changes to the server

任何编辑的模式(添加/删除/更改列或表)将必须在网上完成。

This would work if each record has an UUID, so that two users adding data offline at the same time would not conflict. Of course there's a small chance of conflicts if both users edit the same data, but that wouldn't happen often since each user would work in different zones, and entering data is much more frequent than modifying/deleting data. There could even be a conflict alert by having a "modification uuid". Of course, if the database grows, the local data would also become quite big. Maybe there would also be the ability to filter which records to sync (eg the last 100 records, or based on geographical boundaries).

用户界面将功能:

  • a "form" view, to enter or edit data, with widgets corresponding to the field types (ideally including 1 to N relations)
  • a "list" view, to have an overview of the data, and do some batch operation
  • enventually a "map" view, for tables with geographical data

我知道这是相当多的,但我认为这是不可能的,我们是唯一的组织需要这样的工具。

I found about KoboToolbox in my research of the perfect data-collecting tool. I'm almost satisfied, but there are a few things that are missing for our needs : - the ability to edit data in the field; - the ability to build 1-n relations between different forms; - the ability to populate a database directly (which could be accessed using other tools, like GIS or Access, for display, analysis, or batch modifications).

Does any of you know of such a tool ? Or are there reasons why they don't exist ?

谢谢!

奥利维尔

answer1: 回答1:

Ok I came across wq.io which seem to correspond to almost all my specifications.

It's a framework based on top of django, so it still requires quite a lot of technical knowledge, I'm still interested for simpler solutions.

Bests

我遇到wq.io似乎符合我几乎所有的规格。

这是一个基于Django框架的顶部,所以它仍然需要大量的技术知识,我还是有兴趣的简单的解决方案。

最好成绩

database  mobile  web-applications  offline