ODK Collect v1.4 Release Candidate available for download

The release candidate for ODK Collect v1.4 is available from the developer
site:

https://code.google.com/p/opendatakit/downloads/list

From the release notes:

Please test this thoroughly before deploying. The user interface has
changed and there have been Forced Closed events in our earlier testing
that have varied across Android versions and devices. Please report any
issues onhttp://code.google.com/p/opendatakit/issues/list

*If no problems are reported, we will deploy this to Google Play in a week
or two.

··· * Some highlights:
  • new 'placement-map' appearance for geopoint widget. This presents a
    map display where you can drag the geolocation marker on the map, and
    save the new hand-placed geolocation back into the form
    (contributed by
    Guillaume Salmon). Available only on Android 2.2 and higher devices.
  • On 3.x and 4.x, render using the newer 3.x and 4.x user interface
    standard. Legacy 2.x devices should continue to work as before. Key changes
    are to the menu (the icons are no longer shown) and while filling out a
    form, the save and hierarchy menu items are reachable via the icons on the
    'action bar' at the top of the app.
  • update icons to conform to pixel dimensions of their respective dpi
    classes. This shrinks some icons for some displays, and enlarges others
    for other displays.
    Add xhdpi icons.
  • supply 'largeHeap' attribute to enable ODK Collect to run with a
    larger heap (including stack) on some devices (dependent upon hardware
    manufacturer). Can enable more complex regex() functions.
  • indexed-repeat(repeatedfield, repeatgroup, index): References a field
    or group that is inside a prior repeat group.* *The first parameter
    specifies the prior field or group in which you are interested; the second
    specifies the prior repeat group within which thefield or group of interest
    is located; and the third specifies the instance number, within the prior
    repeat group, to use. For example, the calculate expression
    "indexed-repeat(${name}, ${names}, 1)" will return the first name available
    when the "name" field is inside a prior repeat group named "names". From
    inside a later repeat group, the calculate expression
    "indexed-repeat(${name}, ${names}, position(..))" will pull the xth name
    from the prior repeat group, where x is the instance number of the current
    repeat group (e.g., if currently in the fourth instance of a repeat group,
    it will return the fourth name from the earlier repeat group). See the
    multiple-repeat sample form for a simple example. If you need to reference
    a field or group within multiple nested repeat groups, you can supply
    additional parameters to indicate the instance numbers to use for each
    level of nesting. For example, the calculate expression
    "indexed-repeat(${name}, ${families}, ${familynumber}, ${names},
    ${membernumber})" will pull a particular family member's name when family
    member names are inside a repeat group that is itself inside a repeat group
    of families. See the second multiple-repeat sample form for a much more
    complex example that includes three levels of nested repeat groups.
    (contributed by CTO Survey)
  • new functions to support date-time arithmetic (using a number of new
    functions, you can gain access to the time-of-day and perform calculations
    on it).
  • ensure that uuid(), now(), today() and random() compute new values at
    each use within a form (previously, if you had two calculate expressions of
    'uuid()', they would both return the same UUID (or instant of time, or
    random number).

Additional information at:

https://code.google.com/p/opendatakit/wiki/CollectReleaseNotes

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

Great work Mitch and the rest of the team!!!

Very pleased to see the indexed-repeat function appearing and the ability
to add jr:requiredMsg through XLSForms!

Have started to test out the system and noted a few things:

  1. XLSForm doesn't seem to recognise the indexed-repeat function yet, or
    am I making a mistake?
  2. The new date widgets are quite confusing- I am using a date widget
    with appearance=month-year and I see the year spinner, but then I get a
    compressed calendar showing todays month in which I can select a day, but
    can't seem to change the month. I was expecting to see a simple month and
    year spinner. Am I doing something wrong?

Cheers

Dan

Sorry if i am being blind.

Where can i find the multiple repeat sample forms?

These two may have happened in a prior release...or could have to do with
my new phone: Samsung Galaxy S4.

  1. Pinch-zoom does not appear to work any longer. I depend on it for users
    to be able to expand and see tables from which the input value is taken (my
    workaround for missing vlookup).
  2. The use of
    in the XLSForm combined with a CTRL-Enter used to
    provide a space between lines on a single screen, which I used to create a
    nicer looking report screen (there is an image I posted somewhere earlier),
    and that now just shows the html code itself.

The first is critical to my form in its present version.

HTH

Jerry

··· On Tuesday, July 16, 2013 10:57:56 PM UTC-4, Mitch Sundt wrote: > > > The release candidate for ODK Collect v1.4 is available from the developer > site: > > https://code.google.com/p/opendatakit/downloads/list > > From the release notes: > > Please test this thoroughly before deploying. The user interface has > changed and there have been Forced Closed events in our earlier testing > that have varied across Android versions and devices. Please report any > issues onhttp://code.google.com/p/opendatakit/issues/list > > *If no problems are reported, we will deploy this to Google Play in a > week or two. > * > Some highlights: > > - new 'placement-map' appearance for geopoint widget. This presents a > map display where *you can drag the geolocation marker on the map, and > save the new hand-placed geolocation back into the form* (contributed > by Guillaume Salmon). Available only on Android 2.2 and higher devices. > - On 3.x and 4.x, render using the newer 3.x and 4.x user interface > standard. Legacy 2.x devices should continue to work as before. Key changes > are to the menu (the icons are no longer shown) and while filling out a > form, the save and hierarchy menu items are reachable via the icons on the > 'action bar' at the top of the app. > - update icons to conform to pixel dimensions of their respective dpi > classes. *This shrinks some icons for some displays, and enlarges > others for other displays.* Add xhdpi icons. > - supply 'largeHeap' attribute to enable ODK Collect to run with a > larger heap (including stack) on some devices (dependent upon hardware > manufacturer). Can enable more complex regex() functions. > - indexed-repeat(repeatedfield, repeatgroup, index): References a > field or group that is inside a prior repeat group.* *The first > parameter specifies the prior field or group in which you are interested; > the second specifies the prior repeat group within which thefield or group > of interest is located; and the third specifies the instance number, within > the prior repeat group, to use. For example, the calculate expression > "indexed-repeat(${name}, ${names}, 1)" will return the first name available > when the "name" field is inside a prior repeat group named "names". From > inside a later repeat group, the calculate expression > "indexed-repeat(${name}, ${names}, position(..))" will pull the xth name > from the prior repeat group, where x is the instance number of the current > repeat group (e.g., if currently in the fourth instance of a repeat group, > it will return the fourth name from the earlier repeat group). See the > multiple-repeat sample form for a simple example. If you need to reference > a field or group within multiple nested repeat groups, you can supply > additional parameters to indicate the instance numbers to use for each > level of nesting. For example, the calculate expression > "indexed-repeat(${name}, ${families}, ${familynumber}, ${names}, > ${membernumber})" will pull a particular family member's name when family > member names are inside a repeat group that is itself inside a repeat group > of families. See the second multiple-repeat sample form for a much more > complex example that includes three levels of nested repeat groups. > (contributed by CTO Survey) > - new functions to support date-time arithmetic (using a number of new > functions, you can gain access to the time-of-day and perform calculations > on it). > - ensure that uuid(), now(), today() and random() compute new values > at each use within a form (previously, if you had two calculate expressions > of 'uuid()', they would both return the same UUID (or instant of time, or > random number). > > Additional information at: > > https://code.google.com/p/opendatakit/wiki/CollectReleaseNotes > > > > -- > Mitch Sundt > Software Engineer > University of Washington > mitche...@gmail.com >

Hi Mitch,
Great work you and the team are doing.
Kindly advice why a form would not display all the questions but only the first set of questions that fit into one page, the first and last pages.

We had the functionality in our previous forms using Samsung S4 phone until we upgraded to Android 4.4.2

Now it is difficult to jump questions and move forward and backwards while filling in data.

··· --

Ah, yes. the date widgets seem to have gone nuts on the newer UI.
I have opened this issue
http://code.google.com/p/opendatakit/issues/detail?id=873

Thank you for testing things out.

Yes, there are still changes to be made to XLSForm. Since we now run ODK
Validate on the generated XML, we need to update ODK Validate so that it
recognizes the new functions. We also need to modify XLSForm so that the
new csv-based select list feature (currently lacking documentation) can be
used. I was holding off updating ODK Validate until we had the other
modifications to XLSForm ready to go.

Mitch

··· On Thu, Jul 18, 2013 at 4:53 AM, dj_bridges wrote:

Great work Mitch and the rest of the team!!!

Very pleased to see the indexed-repeat function appearing and the ability
to add jr:requiredMsg through XLSForms!

Have started to test out the system and noted a few things:

  1. XLSForm doesn't seem to recognise the indexed-repeat function yet,
    or am I making a mistake?
  2. The new date widgets are quite confusing- I am using a date widget
    with appearance=month-year and I see the year spinner, but then I get a
    compressed calendar showing todays month in which I can select a day, but
    can't seem to change the month. I was expecting to see a simple month and
    year spinner. Am I doing something wrong?

Cheers

Dan

--

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/groups/opt_out.

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

Adam,

Very sorry about that: the blurb in the release notes originated from the
SurveyCTO help, where there was a hyperlink to one of the forms in the
library of sample forms. I would attach the example, but I fear that it
might reference other SurveyCTO-specific features, and thus may only cause
more confusion. Hopefully the new function is useable without the sample.
If you have a question about it, I'm happy to help.

Best,

Chris

··· On Mon, Jul 29, 2013 at 8:50 AM, Adam wrote:

Sorry if i am being blind.

Where can i find the multiple repeat sample forms?

--

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/groups/opt_out.

I suspect you may have had a special build of Collect.
Browser-based text fields were never part of the main code tree.

··· On Mon, Aug 12, 2013 at 9:15 AM, Jerry3904 wrote:

These two may have happened in a prior release...or could have to do with
my new phone: Samsung Galaxy S4.

  1. Pinch-zoom does not appear to work any longer. I depend on it for
    users to be able to expand and see tables from which the input value is
    taken (my workaround for missing vlookup).
  2. The use of
    in the XLSForm combined with a CTRL-Enter used to
    provide a space between lines on a single screen, which I used to create a
    nicer looking report screen (there is an image I posted somewhere earlier),
    and that now just shows the html code itself.

The first is critical to my form in its present version.

HTH

Jerry

On Tuesday, July 16, 2013 10:57:56 PM UTC-4, Mitch Sundt wrote:

The release candidate for ODK Collect v1.4 is available from the
developer site:

https://code.google.com/p/opendatakit/downloads/list

From the release notes:

Please test this thoroughly before deploying. The user interface has
changed and there have been Forced Closed events in our earlier testing
that have varied across Android versions and devices. Please report any
issues onhttp://code.google.com/p/opendatakit/issues/list

*If no problems are reported, we will deploy this to Google Play in a
week or two.
*
Some highlights:

  • new 'placement-map' appearance for geopoint widget. This presents a
    map display where you can drag the geolocation marker on the map,
    and save the new hand-placed geolocation back into the form
    (contributed by Guillaume Salmon). Available only on Android 2.2 and higher
    devices.
  • On 3.x and 4.x, render using the newer 3.x and 4.x user interface
    standard. Legacy 2.x devices should continue to work as before. Key changes
    are to the menu (the icons are no longer shown) and while filling out a
    form, the save and hierarchy menu items are reachable via the icons on the
    'action bar' at the top of the app.
  • update icons to conform to pixel dimensions of their respective dpi
    classes. This shrinks some icons for some displays, and enlarges
    others for other displays.
    Add xhdpi icons.
  • supply 'largeHeap' attribute to enable ODK Collect to run with a
    larger heap (including stack) on some devices (dependent upon hardware
    manufacturer). Can enable more complex regex() functions.
  • indexed-repeat(repeatedfield, repeatgroup, index): References a
    field or group that is inside a prior repeat group.* *The first
    parameter specifies the prior field or group in which you are interested;
    the second specifies the prior repeat group within which thefield or group
    of interest is located; and the third specifies the instance number, within
    the prior repeat group, to use. For example, the calculate expression
    "indexed-repeat(${name}, ${names}, 1)" will return the first name available
    when the "name" field is inside a prior repeat group named "names". From
    inside a later repeat group, the calculate expression
    "indexed-repeat(${name}, ${names}, position(..))" will pull the xth name
    from the prior repeat group, where x is the instance number of the current
    repeat group (e.g., if currently in the fourth instance of a repeat group,
    it will return the fourth name from the earlier repeat group). See the
    multiple-repeat sample form for a simple example. If you need to reference
    a field or group within multiple nested repeat groups, you can supply
    additional parameters to indicate the instance numbers to use for each
    level of nesting. For example, the calculate expression
    "indexed-repeat(${name}, ${families}, ${familynumber}, ${names},
    ${membernumber})" will pull a particular family member's name when family
    member names are inside a repeat group that is itself inside a repeat group
    of families. See the second multiple-repeat sample form for a much more
    complex example that includes three levels of nested repeat groups.
    (contributed by CTO Survey)
  • new functions to support date-time arithmetic (using a number of
    new functions, you can gain access to the time-of-day and perform
    calculations on it).
  • ensure that uuid(), now(), today() and random() compute new values
    at each use within a form (previously, if you had two calculate expressions
    of 'uuid()', they would both return the same UUID (or instant of time, or
    random number).

Additional information at:

https://code.google.com/p/opendatakit/wiki/CollectReleaseNotes

--
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/groups/opt_out.

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

Please don't email both lists.

It's unlikely that the upgrade is causing the problem, but instead bad
logic within your form. The easiest way for the community to help is
for you to fill out a bug report at
https://code.google.com/p/opendatakit/issues/list and attach your form
to that issue.

Yaw

··· -- Need ODK services? http://nafundi.com provides form design, server setup, professional support, and software development for ODK.

On Wed, Aug 6, 2014 at 11:08 AM, oyier@itc.jkuat.ac.ke wrote:

Hi Mitch,
Great work you and the team are doing.
Kindly advice why a form would not display all the questions but only the first set of questions that fit into one page, the first and last pages.

We had the functionality in our previous forms using Samsung S4 phone until we upgraded to Android 4.4.2

Now it is difficult to jump questions and move forward and backwards while filling in data.

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

I've updated the release candidate.

Date widgets should now support the spinner mode, and now have a
'no-calendar' appearance to disable the new-style calendar picker on 4.x
systems.

··· On Mon, Jul 29, 2013 at 6:41 AM, Christopher Robert wrote:

Adam,

Very sorry about that: the blurb in the release notes originated from the
SurveyCTO help, where there was a hyperlink to one of the forms in the
library of sample forms. I would attach the example, but I fear that it
might reference other SurveyCTO-specific features, and thus may only cause
more confusion. Hopefully the new function is useable without the sample.
If you have a question about it, I'm happy to help.

Best,

Chris

On Mon, Jul 29, 2013 at 8:50 AM, Adam adamjmccormick@gmail.com wrote:

Sorry if i am being blind.

Where can i find the multiple repeat sample forms?

--

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/groups/opt_out.

--
You received this message because you are subscribed to the Google Groups
"ODK Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit-developers+unsubscribe@googlegroups.com.

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

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