 							operation.nodeId = nodeProxy.id;
 							operation.fieldIndex = index;
 							operation.remarks = field.remarks;
-							operation.value = field.value != null ? field.value.toString(): null;
 							operation.symbol = symbol;
-							
+							if (ArrayUtil.contains(REASON_BLANK_SYMBOLS, symbol) ) {
+								operation.value = null;
+							} else {
+								operation.value = field.value != null ? field.value.toString(): null;
+							}
 							updateRequest.addOperation(operation);
 						}
 					}
 				} else {
 					field = attr.fields[fieldIdx];
-					if(field.value == null && field.symbol == null) {
+					if ( applyToNonEmptyNodes || (field.value == null && field.symbol == null)) {
 						operation = new UpdateRequestOperation();
 						operation.method = UpdateRequestOperation$Method.UPDATE;
 						operation.parentEntityId = nodeProxy.parentId;

						node = nodes.getItemAt(0) as NodeProxy;
					}
				}
				prepareApproveMissingRequests(updRequest, node, event.fieldIdx);
			} else {
				var operation:UpdateRequestOperation = new UpdateRequestOperation();
				operation.method = UpdateRequestOperation$Method.APPROVE_MISSING;

				if(isNaN(fieldIdx) || fieldIdx < 0){
					for(var index:int = 0; index < attr.fields.length; index ++) {
						field = attr.fields[index];
						if(applyToNonEmptyNodes || (field.value == null && (field.symbol == null || field.hasReasonBlankSpecified()))) {
							operation = new UpdateRequestOperation();
							operation.method = UpdateRequestOperation$Method.APPROVE_MISSING;
							operation.parentEntityId = nodeProxy.parentId;
