diff --git a/symmetric-assemble/src/asciidoc/manage/incoming-batches.ad b/symmetric-assemble/src/asciidoc/manage/incoming-batches.ad index a7c0198d3f..9181be4b83 100644 --- a/symmetric-assemble/src/asciidoc/manage/incoming-batches.ad +++ b/symmetric-assemble/src/asciidoc/manage/incoming-batches.ad @@ -101,3 +101,10 @@ batches are processed. The first column, `resolve_data` if filled in will be us The second column, `resolve_ignore` if set will cause this particular data item to be ignored and batch processing to continue. This is the same two columns used when a manual conflict resolution strategy is chosen, as discussed in <>. +ifdef::pro[] + +When editing the values for each field in the row on the resolve data tab, if the field is completely empty, then the value that will be saved for this field will be an empty string. If the field is populated with $(null), then a null value will be saved. + +When the editing screen comes up with the values, any fields that currently have a null value in it will populate with $(null) automatically. + +endif::pro[] \ No newline at end of file diff --git a/symmetric-core/src/main/java/org/jumpmind/symmetric/common/Constants.java b/symmetric-core/src/main/java/org/jumpmind/symmetric/common/Constants.java index 5e2ba49d74..d7ce63e7f9 100644 --- a/symmetric-core/src/main/java/org/jumpmind/symmetric/common/Constants.java +++ b/symmetric-core/src/main/java/org/jumpmind/symmetric/common/Constants.java @@ -35,6 +35,7 @@ private Constants() { public static final long VIRTUAL_BATCH_FOR_REGISTRATION = IoConstants.IGNORE_TABLES_BATCH; public static final long BATCH_ID_MISSING = -1; public static final String NONE_TOKEN = "$(none)"; + public static final String NULL_TOKEN = "$(null)"; public static final String DATA_CONTEXT_ENGINE = "engine"; public static final String DATA_CONTEXT_TARGET_NODE = "targetNode"; public static final String DATA_CONTEXT_TARGET_NODE_ID = "targetNodeId";