Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
When working with Google Cloud BigQuery as the target endpoint, the NUMERIC data type in the source database (e.g., IBM DB2 for iSeries) is mapped to the NUMERIC data type in Google Cloud BigQuery by default. Specifically, it defaults to NUMERIC(38,9), where the precision is 38 and the scale is 9. This allows for the exact representation of decimal fractions, making it suitable for financial calculations.
However, there are scenarios where optimizing data type mapping can help save storage space. This article is useful if you want to modify the default precision and scale. For example, instead of mapping the source NUMERIC(18,2) to the default NUMERIC(38,9) in Google Cloud BigQuery, you might prefer to map it directly to NUMERIC(18,2).
Additionally, the CHAR and VARCHAR data types in the source database map to STRING in BigQuery. By default, it maps to STRING, which implicitly means STRING(65535). This can be adjusted as needed to further optimize storage. In this sample, it maps to STRING($LENGTH). For example the CHAR(20) in source database maps to STRING(20) in GBQ.
From the Qlik Replicate computer where you want to import the task, open the Qlik Replicate command line console by doing the following:
From the Start menu, expand Qlik Replicate and then select Qlik Replicate Command Line.
A command-line console is displayed with the correct prompt for Qlik Replicate.
Alternatively, open a Windows Command Prompt using As Adinistrator and change to "<product dir>\Attunity\Replicate\bin" (default location)
repctl.exe getprovidersyntax syntax_name=BigQuery >> BigQuery_2024_5_NumericStringLength.json
command getprovidersyntax response:
[getprovidersyntax command] Succeeded
"provider_syntax": { "name": "BigQuery", "query_syntax": {Modified:
"provider_syntax": {
"name": "BigQueryNumeric",
"repository.provider_syntax": {
"name": "BigQueryNumeric",
"query_syntax": {
"rep_type": "kAR_DATA_TYPE_NUMERIC",Modified:
"provider_data_type": "NUMERIC",
"has_precision_condition": true,
"from_precision": 1,
"to_precision": 38,
"rep_type": "kAR_DATA_TYPE_NUMERIC",Original:
"provider_data_type": "NUMERIC(${PRECISION},${SCALE})",
"has_precision_condition": true,
"from_precision": 1,
"to_precision": 38,
"rep_type": "kAR_DATA_TYPE_STR",Modified:
"provider_data_type": "STRING"
"rep_type": "kAR_DATA_TYPE_STR",
"provider_data_type": "STRING(${LENGTH})",
repctl putobject data=BigQuery_2024_5_NumericStringLength
Do not add the additional suffix ".json" in the end of the command as this will cause the command to fail.