? sf_webform.patch
Index: sf_webform.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/sf_webform/sf_webform.module,v
retrieving revision 1.5
diff -u -p -r1.5 sf_webform.module
--- sf_webform.module	11 Sep 2009 16:45:55 -0000	1.5
+++ sf_webform.module	27 Sep 2010 15:45:41 -0000
@@ -153,7 +153,7 @@ function sf_webform_form_alter(&$form, $
  */
 function sf_webform_salesforce_form($form_state, $node, $exported = FALSE)  {
   // access webform submission funcitons webform_submissions.inc.
-  module_load_include('inc', 'webform', 'webform_submissions');
+  module_load_include('inc', 'webform', 'includes/webform.submissions');
 
   // list all submissions with SFID (use table setup)
   $webform_submissions = webform_get_submissions($node->nid);
@@ -350,7 +350,7 @@ function _sf_webform_get_access($salesfo
  * Redirect form map id when submitted
  */
 function sf_webform_fieldmap_add_form_submit($form, &$form_state) {
-  if (preg_match('/^node_webform_(\d+)$/', $form_state['values']['drupal_object'], $matches)) {
+  if (preg_match('/^node_webform_(\d+)$/', $form_state['values']['drupal'], $matches)) {
     // get the fieldmap id from the redirect url
     $redirect = split("/", $form_state['redirect']);
     if (!isset($redirect[4]) || !is_numeric($redirect[4])) {
@@ -524,7 +524,7 @@ function sf_webform_export($node = NULL,
   if (!is_null($sid)) {
     // if manually exporting or via cron
     // access webform submission functions webform_submissions.inc. to load submission
-    module_load_include('inc', 'webform', 'webform_submissions');
+    module_load_include('inc', 'webform', 'includes/webform.submissions');
     // map elements to correct object fields
 
     $submission = webform_get_submission($node->nid, $sid);
@@ -845,15 +845,17 @@ function sf_webform_cron() {
   if (variable_get('sf_webform_export_settings', SALESFORCE_WEBFORM_EXPORT_SUBMISSION_CRON) != SALESFORCE_WEBFORM_EXPORT_CRON) return;
 
   // find all webform submissions node currently exported to salesforce
-  $sql = db_query("SELECT drupal_id FROM {salesforce_ids} WHERE drupal_type = '%s' AND sfid = ''", 'webform');
+  $sql = db_query("SELECT oid FROM {salesforce_object_map} WHERE drupal_type = '%s' AND sfid = ''", 'webform');
   $count = 0;
 
   while ($row = db_fetch_array($sql)) {
     // get node id for this submission
-    $nid = db_result(db_query("SELECT nid FROM {webform_submissions} WHERE `sid` = %d", $row['drupal_id']));
+    $nid = db_result(db_query("SELECT nid FROM {webform_submissions} WHERE `sid` = %d", $row['oid']));
     $node = node_load($nid);
-    $result = sf_webform_export($node, $form_state = NULL, $sfid = NULL, $row['drupal_id']);
-    if ($result) $count++;
+	if($nid != '0'){
+    	$result = sf_webform_export($node, $form_state = NULL, $sfid = NULL, $row['oid']);
+    	if ($result) $count++;
+    }
   }
 
   drupal_set_message($count .' webform submissions exported to salesforce', 'status');
