BUG 10458 Error creating report table with currency text field SOLVED

- not taken into account the types of mask and separators in fields currency and percentage
- was add validation.
- In fields currency and percentage was changed FLOAT -> DOUBLE.
This commit is contained in:
Marco Antonio Nina
2013-01-28 11:05:30 -04:00
parent c29a299ddf
commit 188680b385

View File

@@ -708,14 +708,14 @@ class AdditionalTables extends BaseAdditionalTables
$criteriaField->add(FieldsPeer::ADD_TAB_UID, $row['ADD_TAB_UID']); $criteriaField->add(FieldsPeer::ADD_TAB_UID, $row['ADD_TAB_UID']);
$datasetField = FieldsPeer::doSelectRS($criteriaField); $datasetField = FieldsPeer::doSelectRS($criteriaField);
$datasetField->setFetchmode(ResultSet::FETCHMODE_ASSOC); $datasetField->setFetchmode(ResultSet::FETCHMODE_ASSOC);
$fieldType = array(); $fieldTypes = array();
while ($datasetField->next()) { while ($datasetField->next()) {
$rowfield = $datasetField->getRow(); $rowfield = $datasetField->getRow();
switch ($rowfield['FLD_TYPE']) { switch ($rowfield['FLD_TYPE']) {
case 'FLOAT': case 'FLOAT':
case 'DOUBLE': case 'DOUBLE':
case 'INTEGER': case 'INTEGER':
$fieldType[] = array($rowfield['FLD_NAME']=>$rowfield['FLD_TYPE']); $fieldTypes[] = array($rowfield['FLD_NAME']=>$rowfield['FLD_TYPE']);
break; break;
default: default:
break; break;
@@ -724,11 +724,11 @@ class AdditionalTables extends BaseAdditionalTables
// parsing empty values to null // parsing empty values to null
foreach ($caseData as $i => $v) { foreach ($caseData as $i => $v) {
foreach ($fieldType as $key => $value) { foreach ($fieldTypes as $key => $fieldType) {
foreach ($value as $keys => $values) { foreach ($fieldType as $name => $type) {
if ( strtoupper ( $i) == $keys) { if ( strtoupper ( $i) == $name) {
$v = validateType ($v, $values); $v = validateType ($v, $type);
unset($key); unset($name);
} }
} }
} }