Advertisement
Guest User

Untitled

a guest
Jun 29th, 2017
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Rails 2.24 KB | None | 0 0
  1. def relevecontact_all_comptes
  2.         date = Date.today
  3.         tab_liste_comptes = Compte.find :all   
  4.                     workbook = Spreadsheet::Excel.new("#{RAILS_ROOT}/public/excel/releve_tout_les_comptes/#{date.year}-#{date.month}-#{date.day}_excel.xls")
  5.                     worksheet = workbook.add_worksheet("Ensemble des comptes")
  6.                     worksheet.write(0, 0, "comptes")
  7.                     worksheet.write(0, 1, "Rubriques")
  8.                     worksheet.write(0, 2, "Sous-contacts")
  9.                     worksheet.write(0, 3, "Adresse e-mails" )
  10.                     worksheet.write(0, 4, "date d'enregistrements")
  11.  
  12.                     i_nb_lignes_rubriques_compte = 1
  13.                     tab_liste_comptes.each{ |liste_comptes|
  14.                         worksheet.write(i_nb_lignes_rubriques_compte, 0, "#{liste_comptes.name_apparition} (#{liste_comptes.mail})")
  15.                             i_nb_lignes_rubriques = i_nb_lignes_rubriques_compte
  16.                             tab_liste_rubriques_comptes(liste_comptes.id).each{ |liste_rubriques_comptes|
  17.                                 worksheet.write(i_nb_lignes_rubriques, 1, liste_rubriques_comptes.rubrique)
  18.    
  19.                                 i_nb_lignes_sous_contacts = i_nb_lignes_rubriques
  20.                                 tab_liste_rubriques_souscontacts(liste_rubriques_comptes.id).each{ |liste_rubriques_souscontacts|
  21.                                     worksheet.write(i_nb_lignes_sous_contacts, 2, liste_rubriques_souscontacts.souscontact.name_sous_contact)
  22.  
  23.                                     i_nb_lignes_mails = i_nb_lignes_sous_contacts
  24.                                     tab_liste_mails_souscontacts(liste_rubriques_souscontacts.souscontact_id).each{ |liste_mails_souscontacts|
  25.                                         worksheet.write(i_nb_lignes_mails, 3, liste_mails_souscontacts.mail.addr_mail) 
  26.                                         worksheet.write(i_nb_lignes_mails, 4, liste_mails_souscontacts.mail.date)
  27.                                         i_nb_lignes_mails = i_nb_lignes_mails + 1
  28.                                     }      
  29.                                     i_nb_lignes_sous_contacts = i_nb_lignes_mails
  30.                                     i_nb_lignes_sous_contacts = i_nb_lignes_sous_contacts + 1
  31.                                 }
  32.                                
  33.                                 i_nb_lignes_rubriques = i_nb_lignes_sous_contacts
  34.                                 i_nb_lignes_rubriques = i_nb_lignes_rubriques + 1
  35.                             }
  36.                         i_nb_lignes_rubriques_compte = i_nb_lignes_rubriques   
  37.                         i_nb_lignes_rubriques_compte = i_nb_lignes_rubriques_compte + 1
  38.                     }
  39.                     workbook.close 
  40.         file = File.open("#{RAILS_ROOT}/public/excel/releve_tout_les_comptes/#{date.year}-#{date.month}-#{date.day}_excel.xls", "rb")
  41.         send_data file.read, :type=>"xls", :disposition=>"inline"
  42.     end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement