删除InfoBase层级目录商品时如何解决“未选择元素”错误?
问题解决:删除对象时“未选择元素!”错误修复
问题原因
删除操作触发PresentationGetProcessing事件时,Data.Ref可能已处于无效状态(元素标记删除或引用已释放),直接调用FullDescr()方法会触发“未选择元素!”错误。
修复后的代码
Procedure PresentationGetProcessing(Data, Presentation, StandardProcessing) StandardProcessing = False; // 先判断引用是否有效,避免删除场景报错 If Data.Ref.IsEmpty() Then Presentation = ""; Return; EndIf; fullDescr = Data.Ref.FullDescr(); Presentation = StrReplace(fullDescr, "/", ", "); EndProcedure
关键说明
- 增加
Data.Ref.IsEmpty()判断,确保只有当引用有效时才执行FullDescr()相关逻辑 - 若引用无效(比如删除操作场景),直接给
Presentation赋值为空字符串,跳过易报错的步骤
内容的提问来源于stack exchange,提问作者IT Student
相关产品推荐
相关产品推荐

