删除 arraykey 中所有行的最佳方法是什么?
What is best way to delete all rows within an arraykey?
我有一个实体 Contact,它有一个数组实体 Specialties。只是一个标准的一对多关系。一接触多专业。 (专业实体有几列,可能不相关)。我有一个屏幕可以将专业列表添加到 PCF 上的联系人。我想在“联系人”屏幕上添加一个自定义“全部删除”按钮,该按钮将针对特定联系人删除数组中的所有值。一个联系人可以有大量的专业(~10000)
删除数组中所有元素的最佳方法是什么?
目前,我在按钮的动作属性上有以下功能,它正在计时和超时。
for(spec in contact.Specialties)
{contact.removeFromSpecialties(spec) //OOTB remove from array method}
从数组实体中删除约 10000 条记录还有其他更好的方法吗?
根据您上面的问题,我假设您将在 PCF 屏幕中有一个“全部删除”按钮,其中的操作会删除与该特定联系人关联的所有专业记录,但您不会删除部分记录(如一条或几条记录)。
我还假设“Speciality”实体的实体类型是“Editable”或“Retireable”。
牢记以上假设,您可以创建一个新函数并从“全部删除”按钮操作调用该函数 属性。
下面给出的代码将从数据库 table 中硬删除整个记录,就像您对数据库 table、
执行删除查询一样
function removeAllSpecialitiesForContact(contactFromPCF : Contact){
var specialityQuery = Query.make(entity.Speciality).compare(Speciality#Contact, Equals, contactFromPCF.ID)
var deleteBuilder = new com.guidewire.pl.system.database.query.DeleteBuilder.DeleteBuilder(specialityQuery)
deleteBuilder.execute()
}
这种新方法可能不会像您已经遇到的那样在 PCF 操作后超时。
我有一个实体 Contact,它有一个数组实体 Specialties。只是一个标准的一对多关系。一接触多专业。 (专业实体有几列,可能不相关)。我有一个屏幕可以将专业列表添加到 PCF 上的联系人。我想在“联系人”屏幕上添加一个自定义“全部删除”按钮,该按钮将针对特定联系人删除数组中的所有值。一个联系人可以有大量的专业(~10000) 删除数组中所有元素的最佳方法是什么?
目前,我在按钮的动作属性上有以下功能,它正在计时和超时。
for(spec in contact.Specialties)
{contact.removeFromSpecialties(spec) //OOTB remove from array method}
从数组实体中删除约 10000 条记录还有其他更好的方法吗?
根据您上面的问题,我假设您将在 PCF 屏幕中有一个“全部删除”按钮,其中的操作会删除与该特定联系人关联的所有专业记录,但您不会删除部分记录(如一条或几条记录)。
我还假设“Speciality”实体的实体类型是“Editable”或“Retireable”。
牢记以上假设,您可以创建一个新函数并从“全部删除”按钮操作调用该函数 属性。
下面给出的代码将从数据库 table 中硬删除整个记录,就像您对数据库 table、
执行删除查询一样function removeAllSpecialitiesForContact(contactFromPCF : Contact){
var specialityQuery = Query.make(entity.Speciality).compare(Speciality#Contact, Equals, contactFromPCF.ID)
var deleteBuilder = new com.guidewire.pl.system.database.query.DeleteBuilder.DeleteBuilder(specialityQuery)
deleteBuilder.execute()
}
这种新方法可能不会像您已经遇到的那样在 PCF 操作后超时。