如果满足特定条件,用户不应更新标签中的Ordered Quantity Fields
,即(Pricing ,Shipping,Addresses,Returns,Service,Others
)。
如果有人试图更新 - 只需弹出错误消息
"此处不允许更新!!"
我认为我们可以使用Form Personalization来实现这一目标。
但我不确定(Trigger Event,Trigger Object,Condition
) - 如何禁用特定字段
请帮助。 如果您需要更多输入,请告诉我
答案 0 :(得分:1)
这取决于您的情况,是否取决于记录数据,是否可以在用户更改数据时更改等。
如果条件在表单会话期间保持不变,请使用WHEN-NEW-FORM-INSTANCE
这样的触发器
if _condition_ then
set_item_property('your_block.item1', UPDATE_ALLOWED, PROPERTY_FALSE);
set_item_property('your_block.item2', UPDATE_ALLOWED, PROPERTY_FALSE);
...
end if;
如果您的情况取决于记录数据,请以类似方式使用POST-QUERY
触发器
if _condition_ then
set_item_instance_property('your_block.item1', :SYSTEM.TRIGGER_RECORD, UPDATE_ALLOWED, PROPERTY_FALSE);
set_item_instance_property('your_block.item2', :SYSTEM.TRIGGER_RECORD, UPDATE_ALLOWED, PROPERTY_FALSE);
...
else
set_item_instance_property('your_block.item1', :SYSTEM.TRIGGER_RECORD, UPDATE_ALLOWED, PROPERTY_TRUE);
set_item_instance_property('your_block.item2', :SYSTEM.TRIGGER_RECORD, UPDATE_ALLOWED, PROPERTY_TRUE);
...
end if;
如果您的条件取决于记录数据,用户可以使用与WHEN-VALIDATE-RECORD
POST-QUERY-TRIGGER
触发器