Symptoms
In a SharePoint list for all number fields with decimal place is set to 0, when generating (and regenerating) the SmartObject, those fields are defined as Decimal and not Number values in the SmartObject.
Diagnoses
Verified in SharePoint documentation that List Number field are defined as Decimal values within SharePoint.
Resolution
The reason is that a "Number" column is actually stored in SharePoint as a Decimal value. Setting the decimal places to 0 does not change the type to Numeric, it simply changes how the value is displayed in SharePoint.
You can still add "1.23" in a field with Decimal Places = 0 and that value will be saved to the list, but only "1" will be displayed.
Because SharePoint defines the column as a Decimal, the generated SmartObject will also show the column as Decimal.