输入订单后被暂停的帐户(消息错误EBS Oracle)

时间:2019-04-02 14:37:02

标签: sql oracle plsql oracle11g oracle-ebs

我不知道EBS Oracle如何验证此信息,我不知道哪个函数或过程引发此错误消息:

  

'ONTOE_PC_CREATE_VIOLATION抬头订单原因请联系   信用额度”

这里的问题是客户帐户为他们设置了订单(输入订单)后,该帐户被关闭了。

涉及的软件包是以下软件包: OE_PC_CONSTRAINTS_ADMIN_PUB ,其中包含以下过程:

PROCEDURE Set_Message
( p_operation           IN VARCHAR2
, p_group_number         IN VARCHAR2
, p_attribute_name       IN VARCHAR2
, p_object_name          IN VARCHAR2
)
IS
   l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
BEGIN

    IF p_operation = OE_PC_GLOBALS.UPDATE_OP THEN
        IF p_attribute_name IS NOT NULL THEN
       IF nvl(p_group_number,-1) = -1 THEN
         FND_MESSAGE.SET_NAME('ONT','OE_PC_UPDATE_FIELD_NO_CONDN');
       ELSE
         FND_MESSAGE.SET_NAME('ONT','OE_PC_UPDATE_FIELD_VIOLATION');
       END IF;
        FND_MESSAGE.SET_TOKEN('ATTRIBUTE',p_attribute_name);
    ELSE
       IF nvl(p_group_number,-1) = -1 THEN
         FND_MESSAGE.SET_NAME('ONT','OE_PC_UPDATE_NO_CONDN');
       ELSE
         FND_MESSAGE.SET_NAME('ONT','OE_PC_UPDATE_VIOLATION');
       END IF;
       FND_MESSAGE.SET_TOKEN('OBJECT',p_object_name);
        END IF;
    ELSIF p_operation = OE_PC_GLOBALS.CREATE_OP THEN
       IF nvl(p_group_number,-1) = -1 THEN
         FND_MESSAGE.SET_NAME('ONT','OE_PC_CREATE_NO_CONDN');
       ELSE
         FND_MESSAGE.SET_NAME('ONT','OE_PC_CREATE_VIOLATION');
       END IF;
       FND_MESSAGE.SET_TOKEN('OBJECT',p_object_name);
    ELSIF p_operation = OE_PC_GLOBALS.DELETE_OP THEN
       IF nvl(p_group_number,-1) = -1 THEN
         FND_MESSAGE.SET_NAME('ONT','OE_PC_DELETE_NO_CONDN');
       ELSE
         FND_MESSAGE.SET_NAME('ONT','OE_PC_DELETE_VIOLATION');
       END IF;
       FND_MESSAGE.SET_TOKEN('OBJECT',p_object_name);
    ELSIF p_operation = OE_PC_GLOBALS.CANCEL_OP THEN
       IF nvl(p_group_number,-1) = -1 THEN
         FND_MESSAGE.SET_NAME('ONT','OE_PC_CANCEL_NO_CONDN');
       ELSE
         FND_MESSAGE.SET_NAME('ONT','OE_PC_CANCEL_VIOLATION');
       END IF;
       FND_MESSAGE.SET_TOKEN('OBJECT',p_object_name);
    ELSIF p_operation = OE_PC_GLOBALS.SPLIT_OP THEN
       IF nvl(p_group_number,-1) = -1 THEN
         FND_MESSAGE.SET_NAME('ONT','OE_PC_SPLIT_NO_CONDN');
       ELSE
         FND_MESSAGE.SET_NAME('ONT','OE_PC_SPLIT_VIOLATION');
       END IF;
       FND_MESSAGE.SET_TOKEN('OBJECT',p_object_name);
    END IF;

END Set_Message;

看看这张图片(我还不能上传图片):

Image

能否请您解释一下该函数的调用方式?在什么阶段?我的意思是,请记住已设置订单,然后他们暂停了帐号。

此外,我也找不到消息的另一部分:“抬头订单原因,请联系信贷部门”。为什么?它存储在哪里?我认为这是一条串联的消息

1 个答案:

答案 0 :(得分:0)

这不是编程问题,因为它与Oracle E-Business Suite的功能有关。我希望我不会通过回答违反某些SO规则。

您的错误来自“处理约束”。您可以在“订单管理超级用户”职责的菜单设置->规则->安全性->处理约束下找到这些定义。您还将在约束条件定义中找到在该消息中看到的消息。

该屏幕中定义的约束由Oracle EBS编译成名为'OE_%PC%'的PL / SQL包。从订单管理流程订单API 调用它们-基本上每当在应用程序中创建,更新,删除或取消销售订单或RMA时。