English

Bug: The allownulls="true | false" attribute introduced into CHECKBOX element with ArcPad 7.1 release is not working as expected

Description

The allownulls = "true | false" attribute introduced into CHECKBOX element with ArcPad 7.1 release is not working as expected.

The 3-state COMBOBOX was introduced because in the geodatabase the field can be set to ‘allow nulls’.

Bug
Whether ‘allow nulls’ is selected in the geodatabase or not, the 3-state COMBOBOX (in the resultant COMBOBOX defined in ArcPad Studio) is still returned. This should only happen if allow nulls = yes.

Cause

Possible causes:

1) Behavior is different between ArcPad 7.0x and 7.1 for combo boxes with shapefiles.

2) There is no Boolean data type in geodatabases.

3) Several applets written in previous versions of ArcPad on ArcScripts Web page were broken in ArcPad 7.1 because of this new default behavior.

4) The form designer in ArcPad Studio breaks the workaround of manually adding allownulls = "false" to a CHECKBOX element in APL, APA, or APX files.

Workaround

Manually add allownulls = "false" attribute, edit the form in ArcPad Studio form designer, and click OK. The allownulls = "false" attribute gets removed and ArcPad reverts back to the default of allownulls = "true".

Define a coded value domain in the geodatabase with two values, 0 and 1. Assign this field to a COMBOBOX control in custom ArcPad form (e.g., do not use the automatic control for this field, but drag the COMBOBOX control onto the form and assign the field to it).

This workaround is suitable with AXF file format. To confirm, in the modified AXF file, switch to XML view and confirm that the allownulls = ”false” attribute is not present. Manually add it, and subsequently open the form in ArcPad, to display a 2-state COMBOBOX.

Shapefiles with True/False controls on them now behave as 2-state check box controls as they did in the ArcPad 7.0x release.

The 3-state check box is disabled for the upcoming ArcPad 7.2 release, but may be reintroduced in the future for geodatabases with a recognizable "True/False" (or "Yes/No" or "1/0") state.

    Related Information