有人可以帮助在膨胀下面的Apex代码.这里的目的是当用户从AccountTeamMember中删除时删除产品共享.<



此处的目的是在用户从AccountTeamMember中删除时删除产品共享。

List<AccountTeamMember> acctmListProd = [Select id,UserId, AccountId, TeamMemberRole FROM 
AccountTeamMember WHERE Id In:acctmList and 
TeamMemberRole IN:Roles]

Map<Id,Id> accToUserIdList = new Map<Id,Id>();
for(AccountTeamMember At: acctmListProd)
{
accToUserIdList.put(At.AccountId, At.UserId);

}
List<Product__Share> DelProdShareRecords = new List<Product__Share>();
Set<Id> productIds = new Set<Id>();

for(Id accId: accToUserIdList.keySet())
{
List<Product__c> prodList = [Select id,Account__c from Product__c where 
Account__c=accId];

for(Product__c prod: prodList)
{
productIds.add(prod.Id);
}
List<Product__Share> prodShareRecords = [Select id,ParentId,UserOrGroupId from 
Product__Share where ParentId IN:productIds AND 
UserOrGroupId=accToUserList.get(accId)
];
DelProdShareRecords.addAll(prodShareRecords);
}
if(!DelProdShareRecords.isEmpty())
{
Database.deleteResult[] result = Database.delete(DelProdShareRecords, false);
}

https://ideas.salesforce.com/s/idea/a0B8W00000GdgUVUAZ/allow-global-security-and-sharing-rules-settings-on-products

Product__Share不是一个东西。这段代码看起来好像从来没有在org中编译或测试过。

最新更新