我们目前正在评估Salesforce的Python绑定 - 特别是Beatbox和simple-salesforce。在两个模块中,缺少创建新自定义表的功能,删除自定义表并删除自定义表的所有项(不使用单个删除)。
当然,我们可以通过Web在Salesforce中创建和建模我们自己的自定义表,但为了自动化和可测试性,我们更愿意创建我们的 表自动使用Python ...这个问题上的任何指针和质量删除问题?
答案 0 :(得分:2)
不幸的是,Beatbox和Simple-Salesforce不是为创建或删除自定义对象(表格)而设计的。
创建Beatbox(SOAP API)和Simple-Salesforce(REST API)以与Salesforce SOAP和REST API一起使用以访问Salesforce数据。这允许您创建,更新或删除现有对象的记录,并查询这些对象(表)的记录。
如果要以编程方式创建新的自定义对象,可通过元数据API(https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/)进行。但是,我还没有找到像Simple-Salesforce这样用户友好的工具来创建元数据部署。通常,元数据不太友好,因为您必须将整个元数据包作为zip文件推送。它比简单的查询或记录创建更麻烦。
我没有很好的解决方案来进行批量删除。单独执行这些操作的问题是否很慢或者在您的实例中使用了太多的API调用? 一种可能的解决方案是使用Apex类或执行所有删除的类。然后创建一个具有多个复选框的自定义对象。设置触发器以在更新该对象的记录并且填充复选框为true时调用Apex删除类。然后,您可以从Python调用对象更新,这将触发批量删除。这很黑,但它确实有效。