Salesforce x Appsheet duplications

Hi Takuya,

Thanks for sharing all of your tests here! I am similarly trying to create records from appsheet. I’m not the most technically literate - so records like yours are very useful. I would greatly appreciate your insight on our specific use case.

Our team works in humanitarian zones. When offline, they log data into APPSHEET. This data is then uploaded to Salesforce for nonprofits once they reach an internet connection. We regularly see user profiles duplicated. We would like to prevent duplicates. However, rather than merging two user profiles into one (potentially erasing unique data created at an earlier date), we would like all user data to be included in a ‘log’.

To further explain this, please use this example of ideal usage:
Humanitarian Workers are in Haiti. They meet with a user, Jane. They log Jane’s name, height and weight into appsheet. Once the humanitarian worker reaches an internet connection, this data is manually pulled through a .csv into salesforce.

The next month, the humanitarian workers return to Haiti. They log Jane’s name, height, and weight into appsheet. Jane has gained significant weight. Once the humanitarian worker reaches an internet connection, this data is manually pulled through a new .csv into salesforce. The salesforce database recognises that the new update on Jane should be connected to the previous upload on Jane. It shows the two logs together, noting the weight change.

Do you know how to handle multiple uploads from appsheet like this?

@Takuya_Miyai do you have any particular insights?

1 Like


I’ll try it out in a real environment in a bit, but before I do, let me ask you a question.

First question.

Are Jane’s records managed by Contact? Or are you managing them in a custom object?

Second question.

I understand that your can record in AppSheet offline. Are you then exporting from the AppSheet to a CSV file and importing that into Salesforce?

What I’m currently thinking

After logging the weight in AppSheet offline, the saved log data will be automatically uploaded when connected to an internet connection, so I felt that using CSV is unnecessary.
Also, I think that the problem of deleting the previous record due to duplicate log data can be avoided by using the Activity object.

If there are any other points I have misunderstood, please point them out to me.
I am looking forward to your answer.:hugs:

1 Like

One more thing to check.

If you want to use Salesforce from AppSheet, you need Enterprise Standard or higher plan.

AppSheet has powerful features for offline environments, which I believe will be useful in this case, but will it work with your AppSheet license?
If you haven’t thought about licensing yet, please contact AppSheet sales for more information.

1 Like

Hi @JoCahill

It is a good idea to prepare a log table to store the weight history under Contact. I have created a simple demo, so please check if the image is correct.

You can create a custom object for weight management in Salesforce and record it there from AppSheet.
This way, you can log your weight in AppSheet even in an offline environment. Once you are online, the added log will be reflected in Salesforce.
If a different person records a weight log for the same user (Jane, etc.), it will not be overwritten because it is a different record.

Initially, I recommended building it with an Activity object, but since it is very difficult to use an Activity object in AppSheet, I suggest you create it with a custom object.

Other information

Information that is not used in the above integration, but may be useful for your use case.

This is an addon to import data recorded in a spreadsheet into Salesforce.
My demo connects directly to Salesforce, but integration through a spreadsheet may also fit your use case.

The Salesforce Mobile app also has offline functionality. However, only up to 30 records of the last reference can be cached on the device.

1 Like

Hi @Takuya_Miyai

This is extraordinarily helpful. Thank you for your thoughtful and comprehensive approach to support.

I’ll relay these solutions to my team, and get back to you if we have any questions. Would you be open to a short call to discuss the implementation of these solutions with our team if we have follow-up questions? I’d love to book some time into your calendar if so.

All the best,



Can you start by telling me my question, your environment, and your latest problem?
You can either comment here or direct message me.

If you select my icon, you will see the UI for sending direct messages.

1 Like