Cross Validation Rules

I accidentally defined a cross validation rule (CVR) wrongly. My intention was to ensure that cost centre values other than 999 couldn’t be combined with balance sheet accounts.
It appears to work initially, except that it prevents me from posting to any non-balance sheet accounts codes, because in the journal entry window the only cost centre segment value that I see is 999, and in the account code segment, the only values that I see are balance sheet account codes.
I need to see other cost centre values and account code values so as to post to P&L account codes, but they are not showing in the journal entry window. I have tried many times to disable the CVR but it hasn’t help. I tried to change the CVR and saved it but it hasn’t help either.
Can someone let me know how to remove this annoying cross validation rule altogether so that I will be back to where I started?

hi colin,
obviously it is not the CVR problem, coz CVRs will not effect the LOVs. check the security for the responsibility you are using.
thanks,

Similar Messages

  • Cross-Validation Rules: How to re-validate segments all ready enabled?

    Is it possible to call one of the APIs to re-validate the code combinations againts the Cross-Validation Rules? If the enabled flag is set to 'Y' then the CVR is ignored. I am aware of the Cross-Validation Rules Report which is helpful, but I need to go a step further. I'm looking to loop through the gl.gl_code_combinations tables, re-validate the combinations that are enabled, if CVR fails then determine if there are any amounts that need to be moved prior to disabling the combination.
    I have a routine that:
    1. creates temp table of all enabled combinations
    2. loops through gl_code_combinations
    3. deletes record from gl_code_combinations, do not commit
    4. calls API fnd_flex_keyval.validate_segs
    5. updates status of temp table
    6. rollback deleted record
    7. repeat 2 - 7 until done
    8. query gl_balances using temp table combintions that have failed.
    I'm a little nervous to run such a routine, because of the delete.
    Does anyone have any ideas or suggestions?
    Thanks,
    Jamie
    Edited by: jmdavis on Dec 15, 2008 6:17 PM
    Edited by: jmdavis on Dec 15, 2008 6:18 PM

    Use where clause for that UDA's in attribute that refer to other attributes data source. the where clause may required use Lookupcodes, these lookup codes may have to be configure in the source attribute values table column.
    Edited by: user11979254 on May 13, 2010 2:49 AM

  • Cross Validation Rules logic back to front.

    Hi All,
    We have a cross validation rule to: "Cost/Profit Centre must be 0000 for this Balance Sheet natural account."
    It is setup to Include: 0000.000000.0000.000.00.000.0000.00.0000 - ZZZZ.ZZZZZZ.ZZZZ.ZZZ.ZZ.ZZZ.ZZZZ.ZZ.ZZZZ
    and Exclude: 7281.302623.0001.000.00.000.0000.00.0000 - 7281.303419.ZZZZ.ZZZ.ZZ.ZZZ.ZZZZ.ZZ.ZZZZ.
    This rule allows us to control which accounts can post to cost centres and which cannot. So using these rules, any accounts in the range 302623 till 303419 cannot accept postings to a 0000 cost centre. So if we try to use 7281.303410.1234, we will get the message pop up and tell us we cannot use this combination, and that it must be 7281.303410.0000.
    Now, we want to change this rule so we can start to accept postings by cost centre to account 303410. So that in future, postings to 7281.303410.1234 will be accepted and will not throw up the warning message.
    Seeing our setup above though isn't 7281.303410.0000 already EXCLUDED from the rule?
    To actually exclude it from the rule we have had to create a new exclusion: -
    EXCLUDE: 7281.303623.0001 - 7281.303409.ZZZZ
    EXCLUDE: 7281.303411.0001 - 7281.303419.ZZZZ
    So now our combination 7281.303410.1234 exists between these two exclude ranges. Only this way it works. But it seems back to front logic.
    Can you please advise if our understanding is correct or not?

    Perfect! This is how you define cross validation rules. It's not back to front but from R11.0.3, Oracle standard is to use the cross validation rules like this.
    - Kiran

  • Filter data by cross validation rules

    Hi all,
    Is there any way to build report that filter out data by cross validation rules ?
    For e.g:
    Acc. Flex -> Company.CC.Natural.Future.
    The cross validation rules are excluding CC -> 01 and 05.
    So all the combination_id that contains CC 01 and 05 will be filter out.
    TIA,
    Fendy

    Perfect! This is how you define cross validation rules. It's not back to front but from R11.0.3, Oracle standard is to use the cross validation rules like this.
    - Kiran

  • Create GL cross-validation rules API?

    Hi,
      Could anyone please let me know if there is an API to create/update GL cross-validation rule?
    Thanks,
    Veer

    Please check this link, will assist you
    Re: WebADI API - Upload successful - Records not loaded in database
    thanks

  • CROSS VALIDATION RULE과 CCID생성간의 관계

    제품: FIN_GL
    작성날짜 : 2006-05-15
    CROSS VALIDATION RULE과 CCID생성간의 관계
    ==================================
    Explanation
    Note : 124611.1 의 내용을 참조하시면,
    Cross Validation Rule과 CCID생성간의 관계에 대해서
    쉽게 이해하실 수 있을 것입니다.
    고객님께서 문의주신 Case에 대해서는
    해당 Note의 "Scenario 2" 부분이 해당되겠습니다.
    Scenario 2:
    Dynamic Insert on
    GL-account already created
    Cross-Validation Rule created
    즉, GL Account는 이미 생성되어 있고, 그 후에 Cross Validation Rule이 생성되었을 경우,
    결과는 아래와 같습니다.
    When you create a Cross-Validation Rule after the GL Account
    Code Combination has already been created and enabled, then
    this Cross-Validation Rule will not work. A journal entry with
    this Account Code Combination, even if it is exluded in your
    Cross-Validation Rule, will still be accepted.
    다시 말씀드려, Cross Validation Rule은 이미 생성된 Code조합에 대해서는
    영향을 주지 않습니다. 또한, Cross Validation Rule에 exclude되었다 하더라도
    이미 생성된 Code조합에 대해서는 Journal이 정상적으로 생성된다는 내용입니다.
    Note : 124611.1에 다른 유형에 대해서도 설명이 나와 있습니다.

  • Extend Cross Validation Rule functionality

    Hi,
    Does anyone know if it is possible to leverage Cross Validation rule functionality to check combinations against external data sources?
    I am sure I have seen this before, but do not know how it was implemented techincally.
    When users entered an invalid combination of two segments, maintained outside the EBS, an error message was generated and they could not continue posting the journal. The reason from maintaining the data outside EBS was due to the nature and volume of the relationship being defined.
    Any help appreciated.
    Kind Regards
    Heath

    Cross-Validation rules only affect new account combinations that are created after you define or enable the rules. If you have existing combinations that violate your rules, your cross-validation rules will not be enforced. You will need to disable all existing combinations that violate your rules before your cross-validation rules can take effect.
    Check if the combination 101.399.1323.5240.000.0000.00000.000 was already created before you created your CV rules.
    Thanks,
    Anil

  • Cross Validation Rules & Security Rules

    Hi all,
    Is there any one who knows where I can function/package for cross vaildation rules & security rules in GL Modules?
    I need them for our customization form before all transaction move from custom table and API table. It means we need to validate all transactions correctly in our custom form before its generated into transaction table in particular module.
    I appreciate any info.
    Thanks

    Hi,
    Thanks for your reply.
    Actually we a have customization form and interface. Due the customization programs need to use CVR, I need to know if there's a package/function/script to call this CVR procedure that we can attach to our customization programs. Before we send the transactions to API (open interface table) we already make sure there's no problem in accounting (code combination) since we activated CVR for generating account combinations.

  • Cross Validation Rule - Should all segments be included in the rule?

    I have 6 segments in GL, While i want to restrict Accounts for a given cost center and Company combination, I wanted to know if i have to also put a 00 and 99 to the other segments like Project Future and intercompany. Ex: For CC and Company combination 01 and 2345 the account 654321 must be restricted. I dont have any condition for the other 3 segments, Project, Future or Intercompany. In this case my exclude should be
    Exclude:
    Segment Low High
    CC 01 01
    Company 2345 2345
    Account 654321 654321
    Project
    Future
    Intercompany
    I left Project, Future and Intercompany as blank. Should i enter value even for those? Should it be like this?
    Segment Low High
    CC 01 01
    Company 2345 2345
    Account 654321 654321
    Project 000000 999999
    Future 0000 9999
    Intercompany 0000 9999
    Please advice.

    When creating a business rule, under Actions there is "Must be maximum length of" and "must contain patern".
    See:
    http://technet.microsoft.com/en-us/library/ff487015.aspx

  • Cross validation & Security rules

    Hi,
    In a typical business scenarios which are the code combinations recommended for
    i)Cross Validation rule
    ii)Security rule
    to have better control?
    Thanks

    Hello.
    It depends on your needs. Suppose you have 2 (01, and 02)companies sharing the same Chart Of Accounts. In order to avoid entering journals from company 01 into company 02 you should create a security rule to reject all code combinations starting by 01 when a Responsibility from company 02 is being used.
    Cross validation rules are used to avoid the creation of code combinations that you may think as inappropriate within the company itself. For example, to use the Cost Center segment when the Account segment is not a cost or a revenue.
    Octavio

  • Cross validation on cost allocation flexfield

    We have setup a cost allocation ff with the option to cross-validate segments. We have correctly defined cross validation rules. Yet, when entering costing information for an element entry, the system allows us to enter a combination which violates our cross-validation rules. We have already checked that this combination was not existing before we created the rule so we do not understand why the rule is not working. Any ideas?

    did u try with the below error message
    ID HRD for the flexfield segment Profit Centre does not exist in the value set PROFIT_CENTRE.
    checking value set which is is referring

  • How to ImplementCross validation rules in OA Page

    I have created a custom page which has a Key flex field.How do i implement the cross validation rules?Please let me know.Thanks in advance

    For example,
    I shouldn't be able to enter Advertisement(say 022)
    for administration Balancing segment.
    It has to be restricted.So, is there any special logic that i have to implement.
    In GL we have a check box for validation rules.Please let me know if the same is possible through OA Page.
    Thanks

  • Dimension Member Cross Validations

    Hi,
    Can we setup a combination validation between multiple Dimensions ? So that when users selects a member from one Dimension it automatically decide particular values only in another Dimension.
    Example: Balance sheet Accounts members from Account Dimension should have combination with only one "0000" member of Cost centre Dimension, this is something like Cross Validation in Oracle Financials. So, user selects Balance sheet accounts from Account Dimension and then he finds only "0000" member in Cost centre Dimension list even though Cost Centre Dimension contains many children.
    Thanks,
    Ravi

    There are usually two aspects of this question.
    One is the "can I populate one drop-down based on a value selected in another dropdown". I saw this done at Cadbury in their IT planning application, but it involved a LOT of custom Java, and was very difficult to maintain. The cross-validation rules were maintained in separate custom text files and the planning app had to be recycled for any changes to take effect. They ended up walking away from this solution due to the maintenance issues.
    The other aspect of this quesiton usually relates to security. "Can I have access to one account if I select a specific member, but then NOT have access to that account if I select another member?" This is similar to Oracle's cross-validation rules. Hyperion Planning doesn't support this type of security. Security for each dimension is maintained independent of other dimensions. Essbase itself doesn't have this limitation, however Planning does. Hopefully this will get addressed soon - it's usually in the top two or three complaints my clients have regarding Hyperion Planning.
    Take Care,
    - Jake

  • IMAQ CROSS VALIDATION​- how to use?

    Hi All,
    I want to cross validate my train data set using IMAQ cross validate. 
    However I am unable to figure out how to use it? I searched up HELP and example. Couldnt find any example.
    I understand that I need to mention the number of k-folds needed for the cross validation. However how do I define the model and kernel parameters, in the first place, which will validate the model? 
    Can you point me to the right direction?
    Regards
    Aveo 

    Hi Sandeep,
    I agree that it is a rather strange requirement. Yet, it does not meet the criteria you pointed out. First, we cannot use the cross validation rules of the Accounting Flex because this personalization has a completely new entity, in a custom table. For each type of this new entity, the user will setup which accounts are shown. Meaning that after all core validation (Cross validation, flex field sec rules etc) the custom program, based on the new Entity type, must narrow the search even more. I cannot change the core Value sets or the validation, because this validation is to be used only with our extension; all other Account List of Values must behave the same as they do today.
    We have tried to convince the user with these arguments, that a change on the KFF Logic could have side effects and that we could validate it after the return from the list of values, so it would be an external treatment and would not tinker with the lov. We are still trying to do it but i just want to have an option in case the user "desperately needs" this feature.
    But thanks anyway, this gives me another argument to ask the user to reconsider.
    Regards!
    Thiago

  • Not able to run validation using validation.xml & validator-rules.xml

    Hello Friends,
    I am not able to run validation using validation.xml & validator-rules.xml.
    Entire code in running prefectly but no error messages are prompted.
    Following is my code:
    File Name : struts-config.xml
    <struts-config>
    <!-- Form Beans Configuration -->
    <form-beans>
    <form-bean name="searchForm"
    type="com.solversa.SearchForm"/>
    </form-beans>
    <!-- Global Forwards Configuration -->
    <global-forwards>
    <forward name="search" path="/search.jsp"/>
    </global-forwards>
    <!-- Action Mappings Configuration -->
    <action-mappings>
    <action path="/search"
    type="com.solversa.SearchAction"
    name="searchForm"
    scope="request"
    validate="true"
    input="/search.jsp">
    </action>
    </action-mappings>
    <!-- Message Resources Configuration -->
    <message-resources
    parameter="ApplicationResources"/>
    <!-- Validator Configuration -->
    <plug-in className="org.apache.struts.validator.ValidatorPlugIn">
    <set-property property="pathnames"
    value="/WEB-INF/validator-rules.xml,
    /WEB-INF/validation.xml"/>
    </plug-in>
    </struts-config>
    <br> File Name : <b> validation.xml </b>
    <form-validation>
    <formset>
    <form name="searchForm">
    <field property="name" depends="minlength">
    <arg key="label.search.name" position = "0"/>
    <arg1 name="minlength" key="${var:minlength}" resource="false"/>
    <var>
    <var-name>minlength</var-name>
    <var-value>5</var-value>
    </var>
    </field>
    <field property="ssNum" depends="mask">
    <arg0 key="label.search.ssNum"/>
    <var>
    <var-name>mask</var-name>
    <var-value>^\d{3}-\d{2}-\d{4}$</var-value>
    </var>
    </field>
    </form>
    </formset>
    </form-validation>
    <br> File Name : <b> SearchForm.java </b>
    package com.jamesholmes.minihr;
    import java.util.List;
    import org.apache.struts.validator.ValidatorForm;
    public class SearchForm extends ValidatorForm
    private String name = null;
    private String ssNum = null;
    private List results = null;
    public void setName(String name) {
    this.name = name;
    public String getName() {
    return name;
    public void setSsNum(String ssNum) {
    this.ssNum = ssNum;
    public String getSsNum() {
    return ssNum;
    public void setResults(List results) {
    this.results = results;
    public List getResults() {
    return results;
    <br> File Name : <b> SearchAction.java </b>
    package com.jamesholmes.minihr;
    import java.util.ArrayList;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import org.apache.struts.action.Action;
    import org.apache.struts.action.ActionForm;
    import org.apache.struts.action.ActionForward;
    import org.apache.struts.action.ActionMapping;
    public final class SearchAction extends Action
    public ActionForward execute(ActionMapping mapping,
    ActionForm form,
    HttpServletRequest request,
    HttpServletResponse response)
    throws Exception
    EmployeeSearchService service = new EmployeeSearchService();
    ArrayList results;
    SearchForm searchForm = (SearchForm) form;
    // Perform employee search based on what criteria was entered.
    String name = searchForm.getName();
    if (name != null && name.trim().length() > 0) {
    results = service.searchByName(name);
    } else {
    results = service.searchBySsNum(searchForm.getSsNum().trim());
    // Place search results in SearchForm for access by JSP.
    searchForm.setResults(results);
    // Forward control to this Action's input page.
    return mapping.getInputForward();
    <br> File Name : <b> EmployeeSearchService.java </b>
    package com.jamesholmes.minihr;
    import java.util.ArrayList;
    public class EmployeeSearchService
    /* Hard-coded sample data. Normally this would come from a real data
    source such as a database. */
    private static Employee[] employees =
    new Employee("Bob Davidson", "123-45-6789"),
    new Employee("Mary Williams", "987-65-4321"),
    new Employee("Jim Smith", "111-11-1111"),
    new Employee("Beverly Harris", "222-22-2222"),
    new Employee("Thomas Frank", "333-33-3333"),
    new Employee("Jim Davidson", "444-44-4444")
    // Search for employees by name.
    public ArrayList searchByName(String name) {
    ArrayList resultList = new ArrayList();
    for (int i = 0; i < employees.length; i++) {
    if (employees.getName().toUpperCase().indexOf(name.toUpperCase()) != -1) {
    resultList.add(employees[i]);
    return resultList;
    // Search for employee by social security number.
    public ArrayList searchBySsNum(String ssNum) {
    ArrayList resultList = new ArrayList();
    for (int i = 0; i < employees.length; i++) {
    if (employees[i].getSsNum().equals(ssNum)) {
    resultList.add(employees[i]);
    return resultList;
    <br> File Name : <b> Employee.java </b>
    package com.solversa;
    public class Employee
         private String name;
         private String ssNum;
         public Employee(String name, String ssNum) {
         this.name = name;
         this.ssNum = ssNum;
         public void setName(String name) {
         this.name = name;
         public String getName() {
         return name;
         public void setSsNum(String ssNum) {
         this.ssNum = ssNum;
         public String getSsNum() {
         return ssNum;
    Pls help me out.
    Not able to prompt errors.

    Hello Friends,
    I am not able to run validation using
    validation.xml & validator-rules.xml.
    Entire code in running prefectly but no error
    messages are prompted.
    Following is my code:
    File Name : struts-config.xml
    <struts-config>
    <!-- Form Beans Configuration -->
    <form-beans>
    <form-bean name="searchForm"
    type="com.solversa.SearchForm"/>
    ans>
    <!-- Global Forwards Configuration -->
    <global-forwards>
    <forward name="search" path="/search.jsp"/>
    global-forwards>
    <!-- Action Mappings Configuration -->
    <action-mappings>
    <action path="/search"
    type="com.solversa.SearchAction"
    name="searchForm"
    scope="request"
    validate="true"
    input="/search.jsp">
    tion>
    </action-mappings>
    <!-- Message Resources Configuration -->
    <message-resources
    parameter="ApplicationResources"/>
    <!-- Validator Configuration -->
    <plug-in
    className="org.apache.struts.validator.ValidatorPlugI
    ">
    <set-property property="pathnames"
    value="/WEB-INF/validator-rules.xml,
    /WEB-INF/validation.xml"/>
    >
    </struts-config>
    <br> File Name : <b> validation.xml </b>
    <form-validation>
    <formset>
    <form name="searchForm">
    <field property="name" depends="minlength">
    <arg key="label.search.name" position = "0"/>
    <arg1 name="minlength" key="${var:minlength}"
    resource="false"/>
    <var>
    <var-name>minlength</var-name>
    <var-value>5</var-value>
    </var>
    </field>
    <field property="ssNum" depends="mask">
    <arg0 key="label.search.ssNum"/>
    <var>
    <var-name>mask</var-name>
    <var-value>^\d{3}-\d{2}-\d{4}$</var-value>
    </var>
    </field>
    /form>
    </formset>
    form-validation>
    <br> File Name : <b> SearchForm.java </b>
    package com.jamesholmes.minihr;
    import java.util.List;
    import org.apache.struts.validator.ValidatorForm;
    public class SearchForm extends ValidatorForm
    private String name = null;
    private String ssNum = null;
    private List results = null;
    public void setName(String name) {
    this.name = name;
    public String getName() {
    return name;
    public void setSsNum(String ssNum) {
    this.ssNum = ssNum;
    public String getSsNum() {
    return ssNum;
    public void setResults(List results) {
    this.results = results;
    public List getResults() {
    return results;
    <br> File Name : <b> SearchAction.java </b>
    package com.jamesholmes.minihr;
    import java.util.ArrayList;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import org.apache.struts.action.Action;
    import org.apache.struts.action.ActionForm;
    import org.apache.struts.action.ActionForward;
    import org.apache.struts.action.ActionMapping;
    public final class SearchAction extends Action
    public ActionForward execute(ActionMapping
    mapping,
    ActionForm form,
    HttpServletRequest request,
    HttpServletResponse response)
    throws Exception
    EmployeeSearchService service = new
    EmployeeSearchService();
    ArrayList results;
    SearchForm searchForm = (SearchForm) form;
    // Perform employee search based on what criteria
    was entered.
    String name = searchForm.getName();
    if (name != null && name.trim().length() > 0) {
    results = service.searchByName(name);
    else {
    results =
    service.searchBySsNum(searchForm.getSsNum().trim());
    // Place search results in SearchForm for access
    by JSP.
    searchForm.setResults(results);
    // Forward control to this Action's input page.
    return mapping.getInputForward();
    <br> File Name : <b> EmployeeSearchService.java </b>
    package com.jamesholmes.minihr;
    import java.util.ArrayList;
    public class EmployeeSearchService
    /* Hard-coded sample data. Normally this would come
    from a real data
    source such as a database. */
    ivate static Employee[] employees =
    new Employee("Bob Davidson", "123-45-6789"),
    new Employee("Mary Williams", "987-65-4321"),
    new Employee("Jim Smith", "111-11-1111"),
    new Employee("Beverly Harris", "222-22-2222"),
    new Employee("Thomas Frank", "333-33-3333"),
    new Employee("Jim Davidson", "444-44-4444")
    // Search for employees by name.
    public ArrayList searchByName(String name) {
    ArrayList resultList = new ArrayList();
    for (int i = 0; i < employees.length; i++) {
    if
    (employees.getName().toUpperCase().indexOf(name.toU
    pperCase()) != -1) {
    resultList.add(employees[i]);
    return resultList;
    // Search for employee by social security number.
    public ArrayList searchBySsNum(String ssNum) {
    ArrayList resultList = new ArrayList();
    for (int i = 0; i < employees.length; i++) {
    if (employees[i].getSsNum().equals(ssNum)) {
    resultList.add(employees[i]);
    return resultList;
    <br> File Name : <b> Employee.java </b>
    package com.solversa;
    public class Employee
         private String name;
         private String ssNum;
         public Employee(String name, String ssNum) {
         this.name = name;
         this.ssNum = ssNum;
         public void setName(String name) {
         this.name = name;
         public String getName() {
         return name;
         public void setSsNum(String ssNum) {
         this.ssNum = ssNum;
         public String getSsNum() {
         return ssNum;
    Pls help me out.
    Not able to prompt errors.
    Hi,
    Your error message are not displaying because u does not made Message-Resoucrce property file (Resource Bundle) when you make it .
    give it entry in
    struts-config.xml
    <message-resources parameter="ApplicationResources" />
    and
    define key and corresponding error message to key in this ApplicationResources i.e
    #Error Resources
    label.search.ssNum=Plz Enter correct ssNum

Maybe you are looking for

  • Can't Install bluetooth driver on Windows 8 64 bit. MSI GE620DX

    I cant install the provided  Windows 8 64bit Bluetooth driver from the MSI download page. Tried many times, Reboot Uninstall current driver, install again, and ETC. I had sent a question to MSI already, it's been a month already since I sent a ticket

  • How do you sample a mux channel, save the data in a digital indicator on interface, then sample the next channel

    I'm using labview 6.1. I want to sample a channel, see if the voltage is within a designated range, post a flag of either good or bad to the interface, and post the voltage measured on the interface, before reading the next channel. I'm a VERY new us

  • Performance issue with MKPF table

    Hi All, My requirement is  to get the material documents based on process orders. For this   I used XBLNR(Reference Document Number ) in where condition  of  SELECT statement on  MKPF table. But this is taking more time for accessing the table. Then

  • PE 9 - Audiocompression in AVI?

    Hello, I´m using Adobe Premiere Elements 9 since two weeks now. It´s a great software, but I´ve got some problems with codecs. WMV is a bit slow, I don´t like MainConcept so far. So I decided to use AVI as the container for the video. Under "Video" I

  • Macbook Pro Charger Broke

    Well, i am under AppleCare and the lead coming from the little white box (from the charger) to the macbook pro has come out a bit so theres a bit of wire being exposed. Not very safe. Just thinking would it cost if I took it to the Apple Shop to repl