def csv_download
get_search_form
csv_data, filename = Order.csv(@search_list)
- headers['Content-Type'] = "application/octet-stream; name=#{filename}"
- headers['Content-Disposition'] = "attachment; filename=#{filename}"
- render :text => Iconv.conv('cp932', 'UTF-8', csv_data)
+ send_data(csv_data, :type => "application/octet-stream; name=#{filename}; charset=shift_jis; header=present",:disposition => 'attachment', :filename => filename)
end
private
@search_list = []
get_search_form
csv_data, filename = Product.csv(@search_list)
- headers['Content-Type'] = "application/octet-stream; name=#{filename}"
- headers['Content-Disposition'] = "attachment; filename=#{filename}"
- render :text => NKF.nkf('-s', csv_data)
+ send_data(csv_data, :type => "application/octet-stream; name=#{filename}; charset=shift_jis; header=present",:disposition => 'attachment', :filename => filename)
end
def csv_upload
@search_list = []
get_search_form
csv_data, filename = Product.actual_count_list_csv(@search_list)
- headers['Content-Type'] = "application/octet-stream; name=#{filename}"
- headers['Content-Disposition'] = "attachment; filename=#{filename}"
- render :text => Iconv.conv('cp932', 'UTF-8', csv_data)
+ send_data(csv_data, :type => "application/octet-stream; name=#{filename}; charset=shift_jis; header=present",:disposition => 'attachment', :filename => filename)
end
protected
filename = '%s.csv' % name
title = %w(商品ID 商品コード 商品名 規格名称 商品型番 返品数 返品日時)
- f = CSVUtil.make_csv_string(rows, title)
- send_data(f, :type => 'text/csv; charset=shift_jis; header=present',:disposition => 'attachment', :filename => filename)
+ csv_data = CSVUtil.make_csv_string(rows, title)
+ send_data(csv_data, :type => "application/octet-stream; name=#{filename}; charset=shift_jis; header=present",:disposition => 'attachment', :filename => filename)
end
name = params[:id]
filename = '%s.csv' % name
title = %w(商品コード 商品名 仕入先名 実在庫数 不良在庫数)
- f = CSVUtil.make_csv_string(rows, title)
- send_data(f, :type => 'text/csv; charset=shift_jis; header=present',:disposition => 'attachment', :filename => filename)
+ csv_data = CSVUtil.make_csv_string(rows, title)
+ send_data(csv_data, :type => "application/octet-stream; name=#{filename}; charset=shift_jis; header=present",:disposition => 'attachment', :filename => filename)
end
private
def csv
totalizer = Object.const_get("#{params[:page]}_totalizer".classify)
csv_data, filename = totalizer.csv(params)
- headers['Content-Type'] = "application/octet-stream; name=#{filename}"
- headers['Content-Disposition'] = "attachment; filename=#{filename}"
- render :text => Iconv.conv('cp932', 'UTF-8', csv_data)
+ send_data(csv_data, :type => "application/octet-stream; name=#{filename}; charset=shift_jis; header=present",:disposition => 'attachment', :filename => filename)
end
-
end
syms.each do |sym|\r
col_names << field_names[sym]\r
end\r
- f = StringIO.new('', 'w')\r
- CSV::Writer.generate(f) do | writer |\r
+ str = CSV.generate("") do | writer |\r
writer << col_names\r
customers.each do |c|\r
arr = []\r
writer << arr\r
end\r
end\r
- f.string\r
end\r
\r
#誕生日から年齢を割り出すメソッド\r
:conditions => flatten_conditions(search_list),
:include => OrderDelivery::DEFAULT_INCLUDE,
:order => "order_deliveries.id desc")
- f = StringIO.new('', 'w')
- CSV::Writer.generate(f) do | writer |
+ str = CSV.generate("") do | writer |
writer<< columns.map{|name| OrderDelivery.set_field_names[name]}
order_deliveries and order_deliveries.each do | od |
writer << columns.map do | column |
end
end
filename = "order_#{Time.now.strftime('%Y%m%d%H%M%S')}.csv"
- [f.string, filename]
+ [str.tosjis, filename]
end
private
:conditions => flatten_conditions(search_list),
:include => DEFAULT_INCLUDE,
:order => "products.id")
- f = StringIO.new('', 'w')
- CSV::Writer.generate(f) do | writer |
+ str = CSV.generate("") do | writer |
writer<< columns.map{|name| set_field_names[name]}
products and products.each do | product |
writer << columns.map do | column |
end
end
filename = "product_#{Time.now.strftime('%Y%m%d%H%M%S')}.csv"
- [f.string, filename]
+ [str.tosjis, filename]
end
def self.actual_count_list_csv(search_list)
:conditions => flatten_conditions(search_list),
:joins => "LEFT JOIN products ON products.id = product_styles.product_id ",
:order => "id")
- f = StringIO.new('', 'w')
title = ["商品名", "商品コード", "登録更新日", "実在個数"]
- CSV::Writer.generate(f) do | writer |
+ str = CSV.generate("") do | writer |
writer<< title
products and products.each do | product |
columns = []
end
end
filename = "actual_count_list_#{Time.now.strftime('%Y%m%d%H%M%S')}.csv"
- [f.string, filename]
+ [str.tosjis, filename]
end
def master_shop?
def self.csv(id, count)
questionnaire = self.find(id)
header = get_csv_header(count)
- #f = StringIO.new('', 'w')
- #CSV::Writer.generate(f) do |writer|
- f = CSV.generate("") do |writer|
+ str = CSV.generate("") do |writer|
writer << header
questionnaire.questionnaire_answers.each do | questionnaire_answer |
row = questionnaire_answer.export_row
def csv(params)
list_for_csv(params)
columns, titles = get_csv_settings((@model.nil? ? nil : @model.csv_columns_name))
- f = StringIO.new('', 'w')
- CSV::Writer.generate(f) do | writer |
+ str = CSV.generate("") do | writer |
writer << titles
@records and @records.each do | record |
writer << columns.map do | column |
end
end
filename = "#{csv_output_setting_name}#{Time.now.strftime('%Y%m%d%H%M%S')}.csv"
- [f.string, filename]
+ [str.tosjis, filename]
end
private
def make_csv_string(rows, title)
# date = DateTime.now
# CSV に吐く
- # f = StringIO.new('', 'w')
- # CSV::Writer.generate(f) do | writer |
- f = CSV.generate("") do |writer|
+ str = CSV.generate("") do |writer|
writer << title
rows.each do |row|
writer << row
end
end
- return f.tosjis
+ return str.tosjis
end
end