Updating form on Aggregate

Dear all,

I am using Aggregate version 1.4.2. I am having problems with modifying my
forms on Aggregate by using the "form_version" field. No matter what I try,
it is not working. I always get this message:
"Form Already Exists for this Namespace/Id attribute
org.opendatakit.aggregate.exception.ODKFormAlreadyExistsException: Form
definition file has changed but does not specify a form version. Update the
form version and resubmit."

I read the other posts on this subject, but it does not seem to work for my
case. I use a form_title + form_id + form_version field. The only thing I
am changing is the form_version (using e.g. a date: 20151028) and some
basic things in the form such as language, labels en required questions).
But even with a minor change in the form, I always get this error message
stated above.

Is it maybe caused by the older Aggregrate version that I am running? Or
what else can it be? Thanks!

Kind regards,

Eddy

Another thing: I am also using the same document name for the modified form
and also tried it by storing it in a different location. None had any
effect...

··· On Saturday, October 31, 2015 at 8:34:12 PM UTC+1, Eddy Rellum wrote: > > Dear all, > > I am using Aggregate version 1.4.2. I am having problems with modifying my > forms on Aggregate by using the "form_version" field. No matter what I try, > it is not working. I always get this message: > "Form Already Exists for this Namespace/Id attribute > org.opendatakit.aggregate.exception.ODKFormAlreadyExistsException: Form > definition file has changed but does not specify a form version. Update the > form version and resubmit." > > > I read the other posts on this subject, but it does not seem to work for > my case. I use a form_title + form_id + form_version field. The only thing > I am changing is the form_version (using e.g. a date: 20151028) and some > basic things in the form such as language, labels en required questions). > But even with a minor change in the form, I always get this error message > stated above. > > > Is it maybe caused by the older Aggregrate version that I am running? Or > what else can it be? Thanks! > > > Kind regards, > > > Eddy >

The versioning works great but now the user has 2 versions on his tablet.

My use case is as follows:
I would like to update the CSV file in the media folder often (daily).
The only way to write a new CSV file into Aggregate is to upload the same
form with a different CSV file.
So that means that I must increase the version number of the form each time
I want to update the CSV file for that form.
That's OK, but if someone downloads the new version form (specifically to
have the adjoining updated CSV) he now gets yet another version of the form.
After 20 days, he'll have 20 versions on his phone.
Is there a better way to get fresh CSV files into a form's folder?
If you haven't guessed, I'm trying to make the form act like it is
referencing a database (the csv) which is constantly evolving.
Any suggestions?
Curtis

Eddy,

What you describe should work, and there is nothing in

that suggests 1.4.2 is different from 1.4.7 in this way.

Break down the problem and do a few tests. What happens if you just
change the version and nothing else? Does that work?

Yaw

··· -- Need ODK consultants? https://nafundi.com provides form design, server setup, in-field training, and software development for ODK.

On Sun, Nov 1, 2015 at 5:02 PM, Eddy Rellum 4estsense@gmail.com wrote:

Another thing: I am also using the same document name for the modified form
and also tried it by storing it in a different location. None had any
effect...

On Saturday, October 31, 2015 at 8:34:12 PM UTC+1, Eddy Rellum wrote:

Dear all,

I am using Aggregate version 1.4.2. I am having problems with modifying my
forms on Aggregate by using the "form_version" field. No matter what I try,
it is not working. I always get this message:

"Form Already Exists for this Namespace/Id attribute
org.opendatakit.aggregate.exception.ODKFormAlreadyExistsException: Form
definition file has changed but does not specify a form version. Update the
form version and resubmit."

I read the other posts on this subject, but it does not seem to work for
my case. I use a form_title + form_id + form_version field. The only thing I
am changing is the form_version (using e.g. a date: 20151028) and some basic
things in the form such as language, labels en required questions). But
even with a minor change in the form, I always get this error message stated
above.

Is it maybe caused by the older Aggregrate version that I am running? Or
what else can it be? Thanks!

Kind regards,

Eddy

--

Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Do a diff (e.g., WinDiff) of the two XML form definitions. They should be
identical except for the version="...." attribute.

If they are different, then you are not simply updating the version. You
are changing the form in some way.

If only the version is changing, then you should end up with just one form,
the one with the most recent version, on the device.

··· On Thu, Apr 28, 2016 at 7:27 AM, Curtis Broderick <c.broderick@epiconcept.fr wrote:

The versioning works great but now the user has 2 versions on his tablet.

My use case is as follows:
I would like to update the CSV file in the media folder often (daily).
The only way to write a new CSV file into Aggregate is to upload the same
form with a different CSV file.
So that means that I must increase the version number of the form each
time I want to update the CSV file for that form.
That's OK, but if someone downloads the new version form (specifically to
have the adjoining updated CSV) he now gets yet another version of the form.
After 20 days, he'll have 20 versions on his phone.
Is there a better way to get fresh CSV files into a form's folder?
If you haven't guessed, I'm trying to make the form act like it is
referencing a database (the csv) which is constantly evolving.
Any suggestions?
Curtis

--

Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
Mitch Sundt
Software Engineer
University of Washington
mitchellsundt@gmail.com

With some XLSForm generators, the XLS filename becomes the root element of
the submitted instance. Make sure that the instance name is unchanged.

Also, note that the form_version is an integer but is compared as if it
were a string value. So

"2" > "12"

We recommend using a string representation of a date "2015110100" but this
value cannot be longer than 10 digits. One of the XLSForm tools can emit 12
digit long version numbers (not sure if those are automated or if the user
has some control over them).

Mitch

··· On Sun, Nov 1, 2015 at 7:48 PM, Yaw Anokwa wrote:

Eddy,

What you describe should work, and there is nothing in
https://github.com/opendatakit/opendatakit/wiki/Aggregate-Release-Notes
that suggests 1.4.2 is different from 1.4.7 in this way.

Break down the problem and do a few tests. What happens if you just
change the version and nothing else? Does that work?

Yaw

Need ODK consultants? https://nafundi.com provides form design, server
setup, in-field training, and software development for ODK.

On Sun, Nov 1, 2015 at 5:02 PM, Eddy Rellum 4estsense@gmail.com wrote:

Another thing: I am also using the same document name for the modified
form
and also tried it by storing it in a different location. None had any
effect...

On Saturday, October 31, 2015 at 8:34:12 PM UTC+1, Eddy Rellum wrote:

Dear all,

I am using Aggregate version 1.4.2. I am having problems with modifying
my
forms on Aggregate by using the "form_version" field. No matter what I
try,
it is not working. I always get this message:

"Form Already Exists for this Namespace/Id attribute
org.opendatakit.aggregate.exception.ODKFormAlreadyExistsException: Form
definition file has changed but does not specify a form version. Update
the
form version and resubmit."

I read the other posts on this subject, but it does not seem to work for
my case. I use a form_title + form_id + form_version field. The only
thing I
am changing is the form_version (using e.g. a date: 20151028) and some
basic
things in the form such as language, labels en required questions). But
even with a minor change in the form, I always get this error message
stated
above.

Is it maybe caused by the older Aggregrate version that I am running? Or
what else can it be? Thanks!

Kind regards,

Eddy

--

Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--

Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
Mitch Sundt
Software Engineer
University of Washington
mitchellsundt@gmail.com

Great, thanks Mitch! Must be a stray difference somewhere.
Curtis

··· 2016-04-28 18:16 GMT+02:00 Mitch Sundt :

Do a diff (e.g., WinDiff) of the two XML form definitions. They should be
identical except for the version="...." attribute.

If they are different, then you are not simply updating the version. You
are changing the form in some way.

If only the version is changing, then you should end up with just one
form, the one with the most recent version, on the device.

On Thu, Apr 28, 2016 at 7:27 AM, Curtis Broderick < c.broderick@epiconcept.fr> wrote:

The versioning works great but now the user has 2 versions on his tablet.

My use case is as follows:
I would like to update the CSV file in the media folder often (daily).
The only way to write a new CSV file into Aggregate is to upload the same
form with a different CSV file.
So that means that I must increase the version number of the form each
time I want to update the CSV file for that form.
That's OK, but if someone downloads the new version form (specifically to
have the adjoining updated CSV) he now gets yet another version of the form.
After 20 days, he'll have 20 versions on his phone.
Is there a better way to get fresh CSV files into a form's folder?
If you haven't guessed, I'm trying to make the form act like it is
referencing a database (the csv) which is constantly evolving.
Any suggestions?
Curtis

--

Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
Mitch Sundt
Software Engineer
University of Washington
mitchellsundt@gmail.com

--

Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--

Curtis BRODERICK
Responsable Assurance Qualité

---------------------------EpiConcept---------------------------
Systèmes d'Information en Santé
Health Information Systems
47, rue de Charenton - 75012 PARIS
Tel : +33 (0)1 53 02 40 60 Fax : +33 (0)1 53 02 40 62

Hi Mitch,

I can confirm seeing the same behaviour as reported by Curtis:
Changing only the version string (in xml) and the csv file results in 2
versions on the tablet/phone - i.e. ODK Collect does not automatically
delete/replace the previous version.
There is only one version present on Aggregate - the old version is
replaced as the FormID is the same.

I didn't consider it strange behaviour up 'til now, but it would be a big
help if ODK Collect handled this the same as Aggregate - replace the form
if it matches an existing formID on the device.
Although I think there are potential problems with this approach if there
are partially completed or non-finalised forms on the device - am I correct?

(Behaviour tested on ODK Collect v1.4.7)

Regards,
Andrew

··· On Thursday, 28 April 2016 18:16:02 UTC+2, Mitch Sundt wrote: > > Do a diff (e.g., WinDiff) of the two XML form definitions. They should be > identical except for the version="...." attribute. > > If they are different, then you are not simply updating the version. You > are changing the form in some way. > > If only the version is changing, then you should end up with just one > form, the one with the most recent version, on the device. > > > On Thu, Apr 28, 2016 at 7:27 AM, Curtis Broderick <c.bro...@epiconcept.fr > wrote: > >> The versioning works great but now the user has 2 versions on his tablet. >> >> My use case is as follows: >> I would like to update the CSV file in the media folder often (daily). >> The only way to write a new CSV file into Aggregate is to upload the same >> form with a different CSV file. >> So that means that I must increase the version number of the form each >> time I want to update the CSV file for that form. >> That's OK, but if someone downloads the new version form (specifically to >> have the adjoining updated CSV) he now gets yet another version of the form. >> After 20 days, he'll have 20 versions on his phone. >> Is there a better way to get fresh CSV files into a form's folder? >> If you haven't guessed, I'm trying to make the form act like it is >> referencing a database (the csv) which is constantly evolving. >> Any suggestions? >> Curtis >> >> >> -- >> -- >> Post: opend...@googlegroups.com >> Unsubscribe: opendatakit...@googlegroups.com >> Options: http://groups.google.com/group/opendatakit?hl=en >> >> --- >> You received this message because you are subscribed to the Google Groups >> "ODK Community" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to opendatakit...@googlegroups.com . >> For more options, visit https://groups.google.com/d/optout. >> > > > > -- > Mitch Sundt > Software Engineer > University of Washington > mitche...@gmail.com >

A question related to Curtis' use-case above:

Given that Aggregate has a newer form version uploaded where only the
version string and csv file have changed (Form ID remains the same):
Can a user with an older version of the form on his device still submit to
Aggregate?
Or will Aggregate reject the submission due to the older version string on
the forms he is submitting?

Thanks and regards,
Andrew

··· On Friday, 29 April 2016 09:41:52 UTC+2, Curtis Broderick wrote: > > Great, thanks Mitch! Must be a stray difference somewhere. > Curtis > > 2016-04-28 18:16 GMT+02:00 Mitch Sundt <mitche...@gmail.com > > : > >> Do a diff (e.g., WinDiff) of the two XML form definitions. They should be >> identical except for the version="...." attribute. >> >> If they are different, then you are not simply updating the version. You >> are changing the form in some way. >> >> If only the version is changing, then you should end up with just one >> form, the one with the most recent version, on the device. >> >> >> On Thu, Apr 28, 2016 at 7:27 AM, Curtis Broderick <c.bro...@epiconcept.fr > wrote: >> >>> The versioning works great but now the user has 2 versions on his tablet. >>> >>> My use case is as follows: >>> I would like to update the CSV file in the media folder often (daily). >>> The only way to write a new CSV file into Aggregate is to upload the >>> same form with a different CSV file. >>> So that means that I must increase the version number of the form each >>> time I want to update the CSV file for that form. >>> That's OK, but if someone downloads the new version form (specifically >>> to have the adjoining updated CSV) he now gets yet another version of the >>> form. >>> After 20 days, he'll have 20 versions on his phone. >>> Is there a better way to get fresh CSV files into a form's folder? >>> If you haven't guessed, I'm trying to make the form act like it is >>> referencing a database (the csv) which is constantly evolving. >>> Any suggestions? >>> Curtis >>> >>> >>> -- >>> -- >>> Post: opend...@googlegroups.com >>> Unsubscribe: opendatakit...@googlegroups.com >>> Options: http://groups.google.com/group/opendatakit?hl=en >>> >>> --- >>> You received this message because you are subscribed to the Google >>> Groups "ODK Community" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to opendatakit...@googlegroups.com . >>> For more options, visit https://groups.google.com/d/optout. >>> >> >> >> >> -- >> Mitch Sundt >> Software Engineer >> University of Washington >> mitche...@gmail.com >> >> -- >> -- >> Post: opend...@googlegroups.com >> Unsubscribe: opendatakit...@googlegroups.com >> Options: http://groups.google.com/group/opendatakit?hl=en >> >> --- >> You received this message because you are subscribed to the Google Groups >> "ODK Community" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to opendatakit...@googlegroups.com . >> For more options, visit https://groups.google.com/d/optout. >> > > > > -- > > *Curtis BRODERICK* > Responsable Assurance Qualité > > ---------------------------EpiConcept--------------------------- > Systèmes d'Information en Santé > Health Information Systems > 47, rue de Charenton - 75012 PARIS > Tel : +33 (0)1 53 02 40 60 Fax : +33 (0)1 53 02 40 62 > >

Hi Andrew,

Yup, there are potential problems with the auto-update on Collect if
there are partially completed or non-finalised forms on the device.

That said, it's not impossible to solve. I'd specced out a design for
this a few years back but never found the funding to get it built. I'm
glad to share the design if someone wants to build it.

Yaw

··· -- Need ODK consultants? Nafundi provides form design, server setup, in-field training, and software development for ODK. Go to https://nafundi.com to get started.

On Sat, May 28, 2016 at 12:23 PM, Andrew acawood777@gmail.com wrote:

Hi Mitch,

I can confirm seeing the same behaviour as reported by Curtis:
Changing only the version string (in xml) and the csv file results in 2
versions on the tablet/phone - i.e. ODK Collect does not automatically
delete/replace the previous version.
There is only one version present on Aggregate - the old version is replaced
as the FormID is the same.

I didn't consider it strange behaviour up 'til now, but it would be a big
help if ODK Collect handled this the same as Aggregate - replace the form if
it matches an existing formID on the device.
Although I think there are potential problems with this approach if there
are partially completed or non-finalised forms on the device - am I correct?

(Behaviour tested on ODK Collect v1.4.7)

Regards,
Andrew

On Thursday, 28 April 2016 18:16:02 UTC+2, Mitch Sundt wrote:

Do a diff (e.g., WinDiff) of the two XML form definitions. They should be
identical except for the version="...." attribute.

If they are different, then you are not simply updating the version. You
are changing the form in some way.

If only the version is changing, then you should end up with just one
form, the one with the most recent version, on the device.

On Thu, Apr 28, 2016 at 7:27 AM, Curtis Broderick c.bro...@epiconcept.fr wrote:

The versioning works great but now the user has 2 versions on his tablet.

My use case is as follows:
I would like to update the CSV file in the media folder often (daily).
The only way to write a new CSV file into Aggregate is to upload the same
form with a different CSV file.
So that means that I must increase the version number of the form each
time I want to update the CSV file for that form.
That's OK, but if someone downloads the new version form (specifically to
have the adjoining updated CSV) he now gets yet another version of the form.
After 20 days, he'll have 20 versions on his phone.
Is there a better way to get fresh CSV files into a form's folder?
If you haven't guessed, I'm trying to make the form act like it is
referencing a database (the csv) which is constantly evolving.
Any suggestions?
Curtis

--

Post: opend...@googlegroups.com
Unsubscribe: opendatakit...@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
Mitch Sundt
Software Engineer
University of Washington
mitche...@gmail.com

--

Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Yes, they can.

This is exactly the use case that this was intended to handle.

i.e., a "rolling update" of your devices to the new form version, with some
devices out in the field returning to wifi/cellular coverage weeks later
with submissions from an earlier form version (perhaps much earlier). The
out-of-touch devices can submit their completed submissions even as devices
with newer form versions can submit theirs.

The caveat is that all these form versions cannot change the names or data
types of the existing form fields or add new fields. They should only alter
presentation, associated files (e.g., csv files for external datasets),
calculations and relevant and constraint logic. Changing field names, data
types, or adding fields requires a change in the form id.

When analyzing the data, the form version of each submission is available
to tease out the impacts of any or all of these changes.

··· On Fri, May 27, 2016 at 12:57 AM, Andrew wrote:

A question related to Curtis' use-case above:

Given that Aggregate has a newer form version uploaded where only the
version string and csv file have changed (Form ID remains the same):
Can a user with an older version of the form on his device still submit to
Aggregate?
Or will Aggregate reject the submission due to the older version string on
the forms he is submitting?

Thanks and regards,
Andrew

On Friday, 29 April 2016 09:41:52 UTC+2, Curtis Broderick wrote:

Great, thanks Mitch! Must be a stray difference somewhere.
Curtis

2016-04-28 18:16 GMT+02:00 Mitch Sundt mitche...@gmail.com:

Do a diff (e.g., WinDiff) of the two XML form definitions. They should
be identical except for the version="...." attribute.

If they are different, then you are not simply updating the version. You
are changing the form in some way.

If only the version is changing, then you should end up with just one
form, the one with the most recent version, on the device.

On Thu, Apr 28, 2016 at 7:27 AM, Curtis Broderick < c.bro...@epiconcept.fr> wrote:

The versioning works great but now the user has 2 versions on his
tablet.

My use case is as follows:
I would like to update the CSV file in the media folder often (daily).
The only way to write a new CSV file into Aggregate is to upload the
same form with a different CSV file.
So that means that I must increase the version number of the form each
time I want to update the CSV file for that form.
That's OK, but if someone downloads the new version form (specifically
to have the adjoining updated CSV) he now gets yet another version of the
form.
After 20 days, he'll have 20 versions on his phone.
Is there a better way to get fresh CSV files into a form's folder?
If you haven't guessed, I'm trying to make the form act like it is
referencing a database (the csv) which is constantly evolving.
Any suggestions?
Curtis

--

Post: opend...@googlegroups.com
Unsubscribe: opendatakit...@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google
Groups "ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to opendatakit...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
Mitch Sundt
Software Engineer
University of Washington
mitche...@gmail.com

--

Post: opend...@googlegroups.com
Unsubscribe: opendatakit...@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google
Groups "ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to opendatakit...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--

Curtis BRODERICK
Responsable Assurance Qualité

---------------------------EpiConcept---------------------------
Systèmes d'Information en Santé
Health Information Systems
47, rue de Charenton - 75012 PARIS
Tel : +33 (0)1 53 02 40 60 Fax : +33 (0)1 53 02 40 62

--
--
Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
Mitch Sundt
Software Engineer
University of Washington
mitchellsundt@gmail.com

Hi Yaw,

Good to know. Not a critical item for us at this point - will chat with you
for the specs if that changes at some point.

Regards,
Andrew

··· On 1 June 2016 at 14:20, Yaw Anokwa wrote:

Hi Andrew,

Yup, there are potential problems with the auto-update on Collect if
there are partially completed or non-finalised forms on the device.

That said, it's not impossible to solve. I'd specced out a design for
this a few years back but never found the funding to get it built. I'm
glad to share the design if someone wants to build it.

Yaw

Need ODK consultants? Nafundi provides form design, server setup,
in-field training, and software development for ODK. Go to
https://nafundi.com to get started.

On Sat, May 28, 2016 at 12:23 PM, Andrew acawood777@gmail.com wrote:

Hi Mitch,

I can confirm seeing the same behaviour as reported by Curtis:
Changing only the version string (in xml) and the csv file results in 2
versions on the tablet/phone - i.e. ODK Collect does not automatically
delete/replace the previous version.
There is only one version present on Aggregate - the old version is
replaced
as the FormID is the same.

I didn't consider it strange behaviour up 'til now, but it would be a big
help if ODK Collect handled this the same as Aggregate - replace the
form if
it matches an existing formID on the device.
Although I think there are potential problems with this approach if there
are partially completed or non-finalised forms on the device - am I
correct?

(Behaviour tested on ODK Collect v1.4.7)

Regards,
Andrew

On Thursday, 28 April 2016 18:16:02 UTC+2, Mitch Sundt wrote:

Do a diff (e.g., WinDiff) of the two XML form definitions. They should
be
identical except for the version="...." attribute.

If they are different, then you are not simply updating the version. You
are changing the form in some way.

If only the version is changing, then you should end up with just one
form, the one with the most recent version, on the device.

On Thu, Apr 28, 2016 at 7:27 AM, Curtis Broderick < c.bro...@epiconcept.fr> wrote:

The versioning works great but now the user has 2 versions on his
tablet.

My use case is as follows:
I would like to update the CSV file in the media folder often (daily).
The only way to write a new CSV file into Aggregate is to upload the
same
form with a different CSV file.
So that means that I must increase the version number of the form each
time I want to update the CSV file for that form.
That's OK, but if someone downloads the new version form (specifically
to
have the adjoining updated CSV) he now gets yet another version of the
form.
After 20 days, he'll have 20 versions on his phone.
Is there a better way to get fresh CSV files into a form's folder?
If you haven't guessed, I'm trying to make the form act like it is
referencing a database (the csv) which is constantly evolving.
Any suggestions?
Curtis

--

Post: opend...@googlegroups.com
Unsubscribe: opendatakit...@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google
Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send
an
email to opendatakit...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
Mitch Sundt
Software Engineer
University of Washington
mitche...@gmail.com

--

Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--

Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to a topic in the
Google Groups "ODK Community" group.
To unsubscribe from this topic, visit
https://groups.google.com/d/topic/opendatakit/5nMRB3_PG94/unsubscribe.
To unsubscribe from this group and all its topics, send an email to
opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Great, thanks Mitch for confirming that.

Regards,
Andrew

··· ---------------------

On 27 May 2016 at 21:13, Mitch Sundt mitchellsundt@gmail.com wrote:

Yes, they can.

This is exactly the use case that this was intended to handle.

i.e., a "rolling update" of your devices to the new form version, with
some devices out in the field returning to wifi/cellular coverage weeks
later with submissions from an earlier form version (perhaps much
earlier). The out-of-touch devices can submit their completed submissions
even as devices with newer form versions can submit theirs.

The caveat is that all these form versions cannot change the names or data
types of the existing form fields or add new fields. They should only alter
presentation, associated files (e.g., csv files for external datasets),
calculations and relevant and constraint logic. Changing field names, data
types, or adding fields requires a change in the form id.

When analyzing the data, the form version of each submission is available
to tease out the impacts of any or all of these changes.

On Fri, May 27, 2016 at 12:57 AM, Andrew acawood777@gmail.com wrote:

A question related to Curtis' use-case above:

Given that Aggregate has a newer form version uploaded where only the
version string and csv file have changed (Form ID remains the same):
Can a user with an older version of the form on his device still submit
to Aggregate?
Or will Aggregate reject the submission due to the older version string
on the forms he is submitting?

Thanks and regards,
Andrew

On Friday, 29 April 2016 09:41:52 UTC+2, Curtis Broderick wrote:

Great, thanks Mitch! Must be a stray difference somewhere.
Curtis

2016-04-28 18:16 GMT+02:00 Mitch Sundt mitche...@gmail.com:

Do a diff (e.g., WinDiff) of the two XML form definitions. They should
be identical except for the version="...." attribute.

If they are different, then you are not simply updating the version.
You are changing the form in some way.

If only the version is changing, then you should end up with just one
form, the one with the most recent version, on the device.

On Thu, Apr 28, 2016 at 7:27 AM, Curtis Broderick < c.bro...@epiconcept.fr> wrote:

The versioning works great but now the user has 2 versions on his
tablet.

My use case is as follows:
I would like to update the CSV file in the media folder often (daily).
The only way to write a new CSV file into Aggregate is to upload the
same form with a different CSV file.
So that means that I must increase the version number of the form each
time I want to update the CSV file for that form.
That's OK, but if someone downloads the new version form (specifically
to have the adjoining updated CSV) he now gets yet another version of the
form.
After 20 days, he'll have 20 versions on his phone.
Is there a better way to get fresh CSV files into a form's folder?
If you haven't guessed, I'm trying to make the form act like it is
referencing a database (the csv) which is constantly evolving.
Any suggestions?
Curtis

--

Post: opend...@googlegroups.com
Unsubscribe: opendatakit...@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google
Groups "ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to opendatakit...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
Mitch Sundt
Software Engineer
University of Washington
mitche...@gmail.com

--

Post: opend...@googlegroups.com
Unsubscribe: opendatakit...@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google
Groups "ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to opendatakit...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--

Curtis BRODERICK
Responsable Assurance Qualité

---------------------------EpiConcept---------------------------
Systèmes d'Information en Santé
Health Information Systems
47, rue de Charenton - 75012 PARIS
Tel : +33 (0)1 53 02 40 60 Fax : +33 (0)1 53 02 40 62

--
--
Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
Mitch Sundt
Software Engineer
University of Washington
mitchellsundt@gmail.com

--

Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to a topic in the
Google Groups "ODK Community" group.
To unsubscribe from this topic, visit
https://groups.google.com/d/topic/opendatakit/5nMRB3_PG94/unsubscribe.
To unsubscribe from this group and all its topics, send an email to
opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Yes, they can.

This is exactly the use case that this was intended to handle.

i.e., a "rolling update" of your devices to the new form version, with some devices out in the field returning to wifi/cellular coverage weeks later with submissions from an earlier form version (perhaps much earlier). The out-of-touch devices can submit their completed submissions even as devices with newer form versions can submit theirs.

The caveat is that all these form versions cannot change the names or data types of the existing form fields or add new fields. They should only alter presentation, associated files (e.g., csv files for external datasets), calculations and relevant and constraint logic. Changing field names, data types, or adding fields requires a change in the form id.

When analyzing the data, the form version of each submission is available to tease out the impacts of any or all of these changes.

A question related to Curtis' use-case above:

Given that Aggregate has a newer form version uploaded where only the version string and csv file have changed (Form ID remains the same):
Can a user with an older version of the form on his device still submit to Aggregate?
Or will Aggregate reject the submission due to the older version string on the forms he is submitting?

Thanks and regards,
Andrew

Great, thanks Mitch! Must be a stray difference somewhere.
Curtis

Do a diff (e.g., WinDiff) of the two XML form definitions. They should be identical except for the version="...." attribute.

If they are different, then you are not simply updating the version. You are changing the form in some way.

If only the version is changing, then you should end up with just one form, the one with the most recent version, on the device.

The versioning works great but now the user has 2 versions on his tablet.

My use case is as follows:
I would like to update the CSV file in the media folder often (daily).
The only way to write a new CSV file into Aggregate is to upload the same form with a different CSV file.
So that means that I must increase the version number of the form each time I want to update the CSV file for that form.
That's OK, but if someone downloads the new version form (specifically to have the adjoining updated CSV) he now gets yet another version of the form.
After 20 days, he'll have 20 versions on his phone.
Is there a better way to get fresh CSV files into a form's folder?
If you haven't guessed, I'm trying to make the form act like it is referencing a database (the csv) which is constantly evolving.
Any suggestions?
Curtis

--

--

Post: opend...@googlegroups.com

Unsubscribe: opendatakit...@googlegroups.com

Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups "ODK Community" group.

To unsubscribe from this group and stop receiving emails from it, send an email to opendatakit...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--

Mitch Sundt
Software Engineer
University of Washington
mitche...@gmail.com

--

--

Post: opend...@googlegroups.com

Unsubscribe: opendatakit...@googlegroups.com

Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups "ODK Community" group.

To unsubscribe from this group and stop receiving emails from it, send an email to opendatakit...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--

Curtis BRODERICK
Responsable Assurance Qualité

---------------------------EpiConcept---------------------------
Systèmes d'Information en Santé
Health Information Systems
47, rue de Charenton - 75012 PARIS
Tel : +33 (0)1 53 02 40 60 Fax : +33 (0)1 53 02 40 62

--

--

Post: opend...@googlegroups.com

Unsubscribe: opendatakit...@googlegroups.com

Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups "ODK Community" group.

To unsubscribe from this group and stop receiving emails from it, send an email to opendatakit...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--

Mitch Sundt
Software Engineer
University of Washington
mitche...@gmail.com

Hi Mitch,

I have a question along the lines of this discussion - if I updated a form but deleted the older form from Aggregate (and some data had already been submitted on the older version), is there a way to access that data or is it all lost? (I am hoping it is stored somewhere on cloud).

Thanks!

··· On Friday, May 27, 2016 at 10:13:16 PM UTC+3, Mitch Sundt wrote: > On Fri, May 27, 2016 at 12:57 AM, Andrew wrote: > On Friday, 29 April 2016 09:41:52 UTC+2, Curtis Broderick wrote: > 2016-04-28 18:16 GMT+02:00 Mitch Sundt : > On Thu, Apr 28, 2016 at 7:27 AM, Curtis Broderick wrote:

When you delete a form, the data for that form is deleted, and then the
form definition is deleted.

i.e., no, the data is not recoverable.

This is one use case for ODK Briefcase -- as a way of backing up data onto
your computer prior to deleting a form from the server.

··· On Thu, Feb 23, 2017 at 2:51 AM, wrote:

On Friday, May 27, 2016 at 10:13:16 PM UTC+3, Mitch Sundt wrote:

Yes, they can.

This is exactly the use case that this was intended to handle.

i.e., a "rolling update" of your devices to the new form version, with
some devices out in the field returning to wifi/cellular coverage weeks
later with submissions from an earlier form version (perhaps much
earlier). The out-of-touch devices can submit their completed submissions
even as devices with newer form versions can submit theirs.

The caveat is that all these form versions cannot change the names or
data types of the existing form fields or add new fields. They should only
alter presentation, associated files (e.g., csv files for external
datasets), calculations and relevant and constraint logic. Changing field
names, data types, or adding fields requires a change in the form id.

When analyzing the data, the form version of each submission is
available to tease out the impacts of any or all of these changes.

On Fri, May 27, 2016 at 12:57 AM, Andrew acawo...@gmail.com wrote:

A question related to Curtis' use-case above:

Given that Aggregate has a newer form version uploaded where only the
version string and csv file have changed (Form ID remains the same):
Can a user with an older version of the form on his device still submit
to Aggregate?
Or will Aggregate reject the submission due to the older version string
on the forms he is submitting?

Thanks and regards,
Andrew

On Friday, 29 April 2016 09:41:52 UTC+2, Curtis Broderick wrote:

Great, thanks Mitch! Must be a stray difference somewhere.
Curtis

2016-04-28 18:16 GMT+02:00 Mitch Sundt mitche...@gmail.com:

Do a diff (e.g., WinDiff) of the two XML form definitions. They should
be identical except for the version="...." attribute.

If they are different, then you are not simply updating the version. You
are changing the form in some way.

If only the version is changing, then you should end up with just one
form, the one with the most recent version, on the device.

On Thu, Apr 28, 2016 at 7:27 AM, Curtis Broderick < c.bro...@epiconcept.fr> wrote:

The versioning works great but now the user has 2 versions on his tablet.

My use case is as follows:
I would like to update the CSV file in the media folder often (daily).
The only way to write a new CSV file into Aggregate is to upload the
same form with a different CSV file.
So that means that I must increase the version number of the form each
time I want to update the CSV file for that form.
That's OK, but if someone downloads the new version form (specifically
to have the adjoining updated CSV) he now gets yet another version of the
form.
After 20 days, he'll have 20 versions on his phone.
Is there a better way to get fresh CSV files into a form's folder?
If you haven't guessed, I'm trying to make the form act like it is
referencing a database (the csv) which is constantly evolving.
Any suggestions?
Curtis

--

--

Post: opend...@googlegroups.com

Unsubscribe: opendatakit...@googlegroups.com

Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google
Groups "ODK Community" group.

To unsubscribe from this group and stop receiving emails from it, send
an email to opendatakit...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--

Mitch Sundt
Software Engineer
University of Washington
mitche...@gmail.com

--

--

Post: opend...@googlegroups.com

Unsubscribe: opendatakit...@googlegroups.com

Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google
Groups "ODK Community" group.

To unsubscribe from this group and stop receiving emails from it, send
an email to opendatakit...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--

Curtis BRODERICK
Responsable Assurance Qualité

---------------------------EpiConcept---------------------------
Systèmes d'Information en Santé
Health Information Systems
47, rue de Charenton - 75012 PARIS
Tel : +33 (0)1 53 02 40 60 Fax : +33 (0)1 53 02 40 62

--

--

Post: opend...@googlegroups.com

Unsubscribe: opendatakit...@googlegroups.com

Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google
Groups "ODK Community" group.

To unsubscribe from this group and stop receiving emails from it, send
an email to opendatakit...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--

Mitch Sundt
Software Engineer
University of Washington
mitche...@gmail.com

Hi Mitch,

I have a question along the lines of this discussion - if I updated a form
but deleted the older form from Aggregate (and some data had already been
submitted on the older version), is there a way to access that data or is
it all lost? (I am hoping it is stored somewhere on cloud).

Thanks!

--

Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
Mitch Sundt
Software Engineer
University of Washington
mitchellsundt@gmail.com

HI Yaw, later on I tried it again. Again I had problems. But now I kept the filename identical before converting it with XLSforms. And then it worked. So, filename is important as you mention. Thanks for the help!

Regards, Eddy

2 Likes