Products / cart items in salesforce

Project:Ubercart Contributions
Component:Code
Category:task
Priority:critical
Assigned:Unassigned
Status:active
Description
Project: 
uc_salesforce

motivation
A major lacking feature of Ubercart (and arguably Drupal) is reporting.
Specifically reporting for orders, and order products / cart items.
Further, since the data is denormalized in the database, there's no elegant way to custom build such a report.

circumstance
Thanks to uc_salesforce, and the salesforce_api suite of modules, we can use Salesforce's robust reporting tools to generate all kinds of interesting data.
However, uc_salesforce does not support drupal<->Salesforce integration for cart items and products.

task
In theory this could be accomplished by exposing a child salesforce object to drupal for mapping.
In other words, after the admin establishes the UC Order->Salesforce Parent Object relationship mapping, uc_salesforce would prompt the admin to establish a Product / Cart Item -> Salesforce Child Object mapping. In this way the synchronization could support an arbitrary number of cart items, all of which could be upserted and referenced to the parent.

thoughts?

rjacobs's picture
Offline
Joined: 01/05/2010
Juice: 10
Also curious about exporting individual product info

We are also curious about this.

We want to use uc_sf to export donation information on a set of nonprofit websites (facilitated with Ubercart) to salesforce. We are slowly getting a proof-of-concept in place that allows use to export the donor info, etc. during a transaction, but there is still no clear way to export specific product details when more than one product is part of a transaction (some of our Ubercart installs will be used to sell more than just donation products).

I believe this is in the same vein as what aaronbauman has noted above.

I just want to point out that an alternate version of uc_salesforce has been posted by bibeksahu in the following thread: http://www.ubercart.org/issue/12774/missing_fields_automatic_population .... this version APPEARS to introduce a new Druapl object (a product object) that can be mapped. We have not had any luck getting this version of the module to work, and it's not clear just how stable it is, etc... but it seems to make some efforts to address this issue.

I just wanted to put that out there to see if anyone else has tried this "alternate" version and has had any luck with it.

Best,
Ryan

bibeksahu's picture
Offline
Joined: 06/09/2009
Juice: 75
product-object support
Assigned to:rjacobs» bibeksahu

Hi,

We have new code, which is being used in production at www.booksforlife.org, which supports exporting product details (including details of multiple products per order).

We are in the process of cleaning up our code and aim to have another development release here soon. (And hopefully an official release somewhat soon, but I was waiting for an official release of salesforce_api. I'll consider that after the new dev release.)

I'll try to put a rush on it, since people are asking about it.

rjacobs's picture
Offline
Joined: 01/05/2010
Juice: 10
details of upcoming version
Assigned to:bibeksahu» rjacobs

Hi bibeksahu

Thanks so much for this info, and thanks for all your work with this great module!

As I understand it, there are currently 2 "version" floating around:

We just want to inquire if the upcoming "new" code you refereed to will be building directly upon uc_sf_dev+, or will be closer to uc_sf_dev, or will be something new entirely. The reason we ask is that there appear to be great differences between uc_sf_dev and uc_sf_dev+. Though we have not been able to get uc_sf_dev+ working in practice, a bit of poking around in the code seems to reveal the differences. Most notably it looks like uc_sf_dev+ introduces the idea of a ubercart-order-product object. It also looks like uc_sf_dev+ requires that each export of a ubercart-order object be accompanied by the export of one or more of these ubercart-order-product objects (one for each product in the order) AND a drupal-user object. This seems to mean that each order will actually mean the export of at least 3 objects to salesforce (order + user + 1 or more order-products).

Is this correct, and is this the logic that you plan to maintain as you go forward with any new code?

The reason we are so curious is that we have been tasked with adding salesforce accounts and Drupal integration (for donor/donation tracking and management) for a number of nonprofits by sometime late February 2010. Part of this effort is configuring the Salesforce side appropriately, and the way that the integration modules work will influence this greatly. For example, we may need special salesforce objects to match up with the ubercart-order-product objects, add appropriate rules/apex processing to keep donation specifics linked to the appropriate order/contact, etc... Of course, we would like to plan for this accordingly and hopefully use existing/upcoming module functionality out-of-the-box as much as possible.

Would you be willing to share any current code you are using (along with any notes about dependent patches that must be applied to the Drupal salesfoce api) even before you update the public dev release? Though we don't have any real php experts on our team, we would be very happy to provide any feedback and bug-reporting as our own projects roll forward.

Very best!
Ryan

rjacobs's picture
Offline
Joined: 01/05/2010
Juice: 10
interesting project

Btw, bibeksahu, your www.booksforlife.org project looks very interesting. As someone who works almost exclusively providing tech/communications support for civil society (and often internationally), I'm always really interested to see what other groups are doing (especially regarding web). Very cool.

Ryan

bibeksahu's picture
Offline
Joined: 06/09/2009
Juice: 75
Hi Ryan, I'd be happy to do
Assigned to:rjacobs» bibeksahu

Hi Ryan,

I'd be happy to do this. What's a good way to reach you? PM?

- Bibek

bibeksahu's picture
Offline
Joined: 06/09/2009
Juice: 75
#6
Project:Ubercart Salesforce Integration» Ubercart Contributions
Assigned to:bibeksahu» Guest

The new code contains these changes.

http://drupal.org/project/uc_salesforce

(Also see the comments to the Contribution: http://www.ubercart.org/contrib/11621 )

- Bibek