From d9c388550d0b4f0bb13c828e2fe147e48ba98e19 Mon Sep 17 00:00:00 2001 From: Ryan Jacobs Date: Tue, 11 Sep 2012 23:51:44 -0500 Subject: [PATCH] Issue #1780874 by rjacobs: Avoid nillifying all empty fields. --- salesforce_api/salesforce_api.module | 8 ++++++-- 1 files changed, 6 insertions(+), 2 deletions(-) diff --git a/salesforce_api/salesforce_api.module b/salesforce_api/salesforce_api.module index 7ff49f6..c582080 100644 --- a/salesforce_api/salesforce_api.module +++ b/salesforce_api/salesforce_api.module @@ -1129,11 +1129,15 @@ function salesforce_api_fieldmap_export_create($name, $drupal_data = NULL) { $value = $drupal_data->$drupal_fieldname; } - // Ignore null values for non-nillable fields + // Ignore null values for non-nillable fields. We also explicitly set all + // empty strings to NULL so they too can be subject to these checks. + if ($value === "") { + $value = NULL; + } if (is_null($value) && !$nillable) { continue; } - elseif (!$value && $nillable && !empty($map->fields[$sf_fieldname])) { + elseif (is_null($value) && $nillable && !empty($map->fields[$sf_fieldname])) { $fieldsToNull[] = $sf_fieldname; continue; } -- 1.7.5.3