Actions
Defect #8368
closedBad decimal separator in time entry CSV
Start date:
2011-05-13
Due date:
% Done:
100%
Estimated time:
Resolution:
Fixed
Affected version:
Description
In file app/helpers/timelog_helper.rb
I've patched two methods do not correctly display the decimal format, because they aren't reading general_csv_decimal_separator. Here are the new methods I've patched:
def report_to_csv_with_td_csv(criterias, periods, hours) decimal_separator = l(:general_csv_decimal_separator) export = FCSV.generate(:col_sep => l(:general_csv_separator)) do |csv| # Column headers headers = criterias.collect {|criteria| l(@available_criterias[criteria][:label]) } headers += periods headers << l(:label_total) csv << headers.collect {|c| to_utf8(c) } # Content report_criteria_to_csv(csv, criterias, periods, hours) # Total row row = [ l(:label_total) ] + [''] * (criterias.size - 1) total = 0 periods.each do |period| sum = sum_hours(select_hours(hours, @columns, period.to_s)) total += sum row << (sum > 0 ? ("%.2f" % sum).gsub('.',decimal_separator) : '') end row << ("%.2f" %total).gsub('.',decimal_separator) csv << row end export end def report_criteria_to_csv_with_td_csv(csv, criterias, periods, hours, level=0) decimal_separator = l(:general_csv_decimal_separator) hours.collect {|h| h[criterias[level]].to_s}.uniq.each do |value| hours_for_value = select_hours(hours, criterias[level], value) next if hours_for_value.empty? row = [''] * level row << to_utf8(format_criteria_value(criterias[level], value)) row += [''] * (criterias.length - level - 1) total = 0 periods.each do |period| sum = sum_hours(select_hours(hours_for_value, @columns, period.to_s)) total += sum row << (sum > 0 ? ("%.2f" % sum).gsub('.',decimal_separator) : '') end row << ("%.2f" %total).gsub('.',decimal_separator) csv << row if criterias.length > level + 1 report_criteria_to_csv(csv, criterias, periods, hours_for_value, level + 1) end end end
Files
Related issues
Updated by Etienne Massip over 13 years ago
- Target version set to Candidate for next minor release
Seems you found inspiration in IssueHelper#issues_to_csv
, looks fine to me.
Could you post a .patch
/.diff
file instead of the whole changed methods, please ?
Updated by Etienne Massip over 13 years ago
- Target version changed from Candidate for next minor release to Candidate for next major release
Updated by Francisco José Martínez over 13 years ago
- File timelog_helper.patch timelog_helper.patch added
Sorry, this is my first patch.
Affirmative, the inspiration came from IssueHelper#issues_to_csv
Updated by Toshi MARUYAMA over 13 years ago
- Assignee set to Toshi MARUYAMA
- Target version changed from Candidate for next major release to 1.3.0
Updated by Toshi MARUYAMA almost 13 years ago
- Tracker changed from Patch to Defect
- Target version changed from 1.3.0 to 1.2.3
Updated by Toshi MARUYAMA almost 13 years ago
- Subject changed from Fixing bad format in CSV exports to Bad decimal separator in time entry CSV
Updated by Toshi MARUYAMA almost 13 years ago
- Status changed from New to Confirmed
Updated by Toshi MARUYAMA almost 13 years ago
- Target version changed from 1.2.3 to 1.3.0
Updated by Toshi MARUYAMA almost 13 years ago
- Status changed from Confirmed to Closed
- Resolution set to Fixed
Committed in r7951.
Actions