Oracle apex Oracle APEX-显示条件提示
我有一个带有验证的表单,用于检查输入的名称是否已经存在于数据库中,当单击“提交”按钮时,我希望继续插入。如果验证成功,如果验证失败,则显示用户提示,如果用户确认,则继续更新现有记录。我知道如何一次做一个,但不知道如何有条件地做Oracle apex Oracle APEX-显示条件提示,oracle-apex,oracle-apex-19.1,Oracle Apex,Oracle Apex 19.1,我有一个带有验证的表单,用于检查输入的名称是否已经存在于数据库中,当单击“提交”按钮时,我希望继续插入。如果验证成功,如果验证失败,则显示用户提示,如果用户确认,则继续更新现有记录。我知道如何一次做一个,但不知道如何有条件地做 如果我想显示提示,我可以在单击按钮时使用“重定向到URL”,并将提示设置为我想要的任何内容,但如何仅在验证失败时显示提示?您可以创建声明性验证。如果验证条件失败,您将看到定义的错误,而不是正常处理 在这种情况下,可以基于行的存在进行验证 如果所有验证都正常,那么页面处理将
如果我想显示提示,我可以在单击按钮时使用“重定向到URL”,并将提示设置为我想要的任何内容,但如何仅在验证失败时显示提示?您可以创建声明性验证。如果验证条件失败,您将看到定义的错误,而不是正常处理 在这种情况下,可以基于行的存在进行验证 如果所有验证都正常,那么页面处理将开始 所有的计算、验证和过程都可以是有条件的——要么是指定的按钮,要么是通常基于有效of:请求的条件
或者,当值已经存在时,表上的约束可能会失败,并使用APEX error函数处理该约束。当您可以依赖DB约束时,为什么要进行预检查?根据后续评论,我建议如下:
var nameExists = $v('P1_NAME_EXISTS') === 'Y';
if (!nameExists) {
apex.page.submit('SAVE');
} else {
apex.page.confirm('This name already exists. Would you like to update the existing entry?', 'SAVE');
}
如果需要区分差异,您可以更改提交值的值。我进行预检查,因为如果值已经存在,我需要将其传达给用户,并获取他们的输入,然后根据他们的输入进行预检查,我指的是插入前的PL/SQL。如果您在提交表单之前正在讨论即时UI响应,请考虑丹的响应。您想从用户那里得到什么样的反馈?在他们提供您要查找的反馈后,会发生什么情况?因此,如果指定的名称已存在(在插入时),我需要提示用户是否要更新现有记录,如果用户单击“确定”,则我可以继续更新现有记录。如果记录不存在,则只需进行插入