I changed the Data Source from my SMO from a Sharepoint list to a SQL database, as a result I have significantly less Smart Object Properties and also changed the names of some. But when I go into a View that uses that Smart Object, it still shows me all the old properties (the methods are correctly update). As you can see my SMO here only has 3 properties but still shows all the old properties on the view.
I tried to remove it as data source and connect it again but it didnt help. Is there anything I can do to make the SMO show the correctly updated properties?
Can you try to refresh SQL Service Instance to pick up on the changes and then regenerate the SmartObjects to be to load the changes added to the Service Instance?
The SmO is based on an underlying SQL object. You must have the SQL instance refreshed so that the fields match correctly, you've already done this. This is a reminder for someone who's just updated an existing SQL object.
Once the SQL instance is up to date, edit the SmO, add or remove properties as necessary, then click the Methods tab. Double click each method, select ServiceObject Methods, select the method(s) your updating and if the property names match the SQL names, click Auto Map. The warning "Are you sure you want auto map to overwrite the current mappings?" is not quite valid as it only seems to update missing properties. Click OK as necessary to save.
SmartObject tester allows you to recreate the SmO with the GUID but this is a harsh way to update the object and if you have any custom methods, you'll lose those too. This is a little time consuming but you get the right result.
I did not fully understand your solution so I try to explain my problem more thoroughly to see if what you describe applies here.
I have 2 Smart Objects, A and B. A is the one I originally used that was made from a SharePoint List and that is implemented on all Views and B is the one that has been created via the SQL Service Instance. In order to not make a huge mess with using new Smart Objects everywhere, I keep using A but mapped its properties (the ones I need on the SQL database at least) to B so my Smart Object is now linked to my database and not Sharepoint anymore.
So when I refresh the Service instance it only refreshes the properties of Smart Object B, but what I was looking for was a solution to change the Properties of A since A still has lots of unused properties that were automatically created when you create a Smart Object out of a Sharepoint List
I was wondering if there was an automatic way to update the properties of the SMOs, since manually removing all redundant properties will take a bit given the amount of SMOs I'm using. The process of mapping a SMO to a new Service Object has already been done
You could remove ALL properties of the SMO, then edit one of the methods and at the mapping step tell it to "create all". That will give you a fresh set of properies that match the underlying service.