Ejemplo n.º 1
0
 def test_interval_list_between_dates(self):
     from_date = DateTime('2008/10/23')
     to_date = DateTime('2008/11/03')
     aggregation_level = 'day'
     interval_list_dict = getIntervalListBetweenDates(
         from_date=from_date,
         to_date=to_date,
         keys={aggregation_level: True})
     date_list = interval_list_dict.get(aggregation_level)
     self.assertEqual(len(date_list), 12)
     for index, date in enumerate(date_list):
         if index == 0:
             self.assertEqual(date, '2008-10-23')
         elif index == 1:
             self.assertEqual(date, '2008-10-24')
         elif index == 2:
             self.assertEqual(date, '2008-10-25')
         elif index == 3:
             self.assertEqual(date, '2008-10-26')
         elif index == 4:
             self.assertEqual(date, '2008-10-27')
         elif index == 5:
             self.assertEqual(date, '2008-10-28')
         elif index == 6:
             self.assertEqual(date, '2008-10-29')
         elif index == 7:
             self.assertEqual(date, '2008-10-30')
         elif index == 8:
             self.assertEqual(date, '2008-10-31')
         elif index == 9:
             self.assertEqual(date, '2008-11-01')
         elif index == 10:
             self.assertEqual(date, '2008-11-02')
         elif index == 11:
             self.assertEqual(date, '2008-11-03')
Ejemplo n.º 2
0
  q = NegatedQuery(Query(**kw))
  from_date = DateTime()
  result_list = context.portal_catalog(
                                     select_dict={'start_date': 'delivery.start_date'},
                                     simulation_state=simulation_state,
                                     portal_type=doc_portal_type,
                                     query=q,
                                     limit=1)
  if result_list:
    from_date = DateTime(result_list[0].start_date)

 
# get period list between given date
interval_list_dict = getIntervalListBetweenDates(from_date=from_date, to_date=to_date,
                                            keys={'year':aggregation_level=="year",
                                                  'month':aggregation_level=="month",
                                                  'week' : aggregation_level=="week",
                                                  'day':aggregation_level=="day"})
interval_list = interval_list_dict[aggregation_level]

# FIXME: translate column names
# list columns of the listbox
interval_column_list = []
if group_by == "client":
  interval_column_list.extend([("Amount %s" %x,"Amount %s" %x) for x in interval_list])
  selection_columns = [('client', "Client")]
  total_column_list = [('total amount', 'Total Amount'),]
  stat_columns = [('client', "client")]
  total_stat_list = [('total amount', 'total amount'),]
else:
  if group_by == "product":