ORA-01438: value larger than specified precision allows for this column Description EVENTLOG ERROR: Unexpected Oracle error: ORA-01438: value larger than specified precision allows for this column.
Hi volks,following situatuon: by uploading the master data (0MATERIAL) from a generic data sourcefor some fields in the 0MATERIAL, we got this short dumps:Short textSQL error 1438 while accessing table '/BIC/B'.What happened?Database error text: 'ORA-01438: value larger than specified precision allowed for this column'Error analysisAn exception occurred that is explained in detail below.The exception, which is assigned to class 'CXSYOPENSQLDB', was not caught in procedure 'INSERTODS'(FORM)', nor was it propagated by a RAISING clause. Since the caller of the procedure could not have anticipated that theexception would occur, the current program is terminated.The reason for the exception is: Database error text: 'ORA-01438: value larger than specified precision allowed for this column'Ok, I could identify some fields, where the source field is defined with more length thenthe target field.
But I still have the problem to find out, which records iswrong. Actually we are updating over 1 Mio. Records, so it’s quite difficult tosort out the problem record.My question is: Does anybody have experience with such of error? Is there any generalsolution for this or do you have any hints / suggestions for me? Thank you inadvance!best regards,Van Anh. Van,Actually the information you are looking for will be there in the short dump itself.Go to ST22 and look at the long version of the dump and then start scrolling down. You will come to the section with the code showing where the code failed.
Scroll further down and you will find the environment variables.Sy-Tabix - this will usually be the record number on the data packageScroll down further and it will give you the contents of the memory / data package when this failed - here you should be able to find the records - there will be a lot of hexadecimal here but if you look closely - you will find the actual records also in this -With this information - you should be able to identify the records.Hope this helps. Hi Van,Actually while design time of the data flow we need to crate ecc/bw object with the same length.in that way users need to enter the values(length) as per the sap standards.Check the at transformations which field was mapped to material. Actually material length need to be 18(at ECC and BW side)So as of now too hard find which record have more length than ecc field.How many fields are part of your data source?if you have very less then you need to cross check ecc field and relevant bw info object lengths.ECC field - BW info object length can be the same or higher than ecc.if bw object length was shorter than ecc field length then you need to increase at bw object length.Actually for material we have standard master data source 0MATERIALATTR, why your using custom one?Thanks. Hi Van,Consider this point as last option if you didn't get work around:There is no other way around as i guess.
Delete data at bw side and increase the length and reload whole data. If your client accept this proposal you can go head. Better to perform this kind of activities at weekend.if we change the length at bw side without deletion of data then we may get inconsistency during the activation of object.Or you need to change the length of the coming values. Any way two of them are manual work. There no automation way to do.check for notes as stated by suman, if those solves then its good work around for you.Thanks. 0.
Hi,Go through this sap note then with the help of this note you can resolve your issue.Yous symptoms is ORA-01438: value larger than specified precision allows for this column. So in this Sap note you have solution for your problem. Check it ones.Your problem is - a column was defined with four places, but including two decimal places. Therefore it is not possible to use more than two whole number places. ORA-01438 therefore occurs with numbers greater than or equal to 100.However, if more than two decimal places were specified, Oracle rounds off automatically and no error wouldregards,SM.
Attention, Internet Explorer UserAnnouncement: Oracle Community has discontinued support for Internet Explorer 7 and below.In order to provide the best platform for continued innovation, Oracle Community no longer supports Internet Explorer 7.Oracle Community will not function with this version of Internet Explorer. Please consider upgrading to a more recent version of Internet Explorer, or trying another browser such as Firefox, Safari, or Google Chrome.(Please remember to honor your company's IT policies before installing new software!).