Question

Why I can create some key fields with special characters and some not.

  • 14 February 2023
  • 2 replies
  • 143 views


I have question about how exactly the parameter "Define the characters which should not appear in Key Fields" works. How to understand the description: " The key fields where the relevant business logic is implemented will not accept these characters and will return an error message". 

And the most important: Why can I register a person, supplier or agreement using these characters, but not e.g. invoices? For all this data, the identifier is a unique key so relevant business logic is implemented for that fields.  So why are there differences between them?
Why can I register a person, supplier or agreement using these characters, but not e.g. invoices? For all this data, the identifier is a unique key/object id.
So why does the parameter work selectively?

2 replies

Userlevel 1
Badge +3

Hi @Pawel Kubera 

Although this parameter('Define the characters which should not appear in Key Fields') has been made available by the framework, the actual validation has not been implemented at framework level due to possible conflicts with existing data. For example during data migration scenarios.

Therefore a function has been made available "Error_SYS.Check_Valid_Key_String" which each product area can make use of in order to enforce this.

So according to the description " The key fields where the relevant business logic is implemented will not accept these characters and will return an error message” :

  • in the places(e.g. inventory part etc.) where this function (Error_SYS.Check_Valid_Key_String) is used, it will validate the key fields based on the values included in the system parameter
  • and not for the others(e.g. person/supplier) where this functionality is not included due to several reasons(i.e. to maintain consistency within the specific product, to avoid possible conflicts with existing data etc.).

Note: The reason for the behavior that we cannot create an invoice with special characters is not related to this system parameter and it is happening due to a bug fix which has been introduced to prevent users entering characters & or ; or ' in an invoice number to prevent the occurrence of ORA-00916 error.

 

Hope this information would be useful.

@Nishadi  Thank you for your answer.

Reply