Before the InfoSphere DataStage XML Input Stage starts parsing the XML document it performs 2 tasks regarding schemas:
As result of this, if an XML file refers to a schema file that is not accessible by DataStage then the XML Input Stage will always issue a warning message independently of whether the XML Input Stage is validating the schema or not. To avoid getting this message you can try one of the following:
As the title. When I export data to a sequential file in ibm datastage, I get the warnings:
When validating export schema: At field 'ALLOCATERATE': 'null_field' length (4) must match field's fixed width (7)
where I set 'null_field_value' as 'null' in the 'Format' tab
where 'ALLOCATERATE' is a decimal field (there are other fields of data types such as datetimetimestamp that got this warning.
Although I set the 'pad char' option in 'type defaults' as help document says, but still get the warnings.
It seems that the job treat the 'decimaltimestamp' fields as fixed length char fields.
Could there be a way to eliminate those warnings? Thanks for any help.
Jason
Datastage File Stage When Validating Export Schema Nullable Field Without
JasonJason
1 Answer
Jason,
The null field value should be ' and not 'null' as it will output the word 'null' (which is 4 characters long, and where you're seeing your error), or even better, just don't set it.
Which in my understanding will overwrite the null with the contents of the specified value.As for the padding, from the same link above
Record length. Select Fixed where fixed length fields are being written.
This is an additional property that you need to configure (it's in your screenshot)
I hope this points you in the right direction.
Dan
Dan GriffithsDan Griffiths
Got a question that you can’t ask on public Stack Overflow? Learn more about sharing private information with Stack Overflow for Teams.
Not the answer you're looking for? Browse other questions tagged sequentialdatastage or ask your own question.
I have a series of CSV's I import into a database via Datastage. Hp officejet 5610 all-in-one driver. I am attempting to do this using RCP and schema files.
I generate the schema files from the CSVs using an accompanied master table list that comes with the CSVs.
I am down to one problem. When I find that a numeral is the last column in a particular table, it is the last entry in a schema file. My problem is null handling. The CSV is comma-delimited, double quoted for strings, and no data for null.
The master list identifies some of these number columns as number(), which is indicative of an oracle description of the output. To that end, I am trying this:
:nullable decimal[38,9] { default=0, text };in this example, the scale and precision are defaulted, to 38,9..unless specified elsewhere, such as decimal[10,2].
A null entry results in this error: When validating import/export function: APT_GFIX_Decimal::validateParameters: the decimal 'text' format is variable length, and no external length is specified;you should possibly specify an appropriate 'width' property; external format: {text, padchar=32, nofix_zero, precision=38, scale=9, round=trunc_zero, ascii}. [decimal/impexp.C:939]
so I tried::nullable decimal[38,9] { default=0, text, width=47 };in this example, the scale and precision are defaulted, to 38,9. Just cause 3 all mods unlocked. The width is the sum of the two values (38 + 9 = 47..unless specified elsewhere, such as decimal[10,2].
and I got:ODBC_Connector_3,0: Input buffer overrun at field ', at offset: ### [impexp/group_comp.C:6006]
Lastly, I tried exactly what it said, and did this::nullable decimal[38,9] { default=0, text, padchar=32, nofix_zero, precision=, scale=, round=trunc_zero, ascii, width=47 };in this example, the scale and precision are defaulted, to 38,9. The width is the sum of the two values (38 + 9 = 47..unless specified elsewhere, such as decimal[10,2].
For this third time, I received this error: Input buffer overrun at field ', at offset: ### [impexp/group_comp.C:6006]
Has anyone ran into this? this only happens if decimal is the last column in the table.
my record settings are: {intact, final_delim=none, record_delim='n', charset='UTF8', delim=','}
Thank you very much.
arcee123arcee123
76722 gold badges1717 silver badges4545 bronze badges
Is this question similar to what you get asked at work? Learn more about asking and sharing private information with your coworkers using Stack Overflow for Teams.
Browse other questions tagged databaseetldatastage or ask your own question.Comments are closed.
|
Details
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |