Esempio n. 1
0
    def get_display(self):
        filter_data = FilterData.get_from_cgi()
        values = filter_data.get_values("custom", "year")

        year = 0
        for value in values:
            if value:
                try:
                    year = int(value)
                except:
                    pass
        if not year:
            date = Date()
            year = int(date.get_year())

        sobject = self.get_current_sobject()
        id = sobject.get_id()

        column = self.get_option("column")
        month = int(self.get_option('month'))

        end_year = year
        end_month = month + 1
        if end_month > 12:
            end_month = 1
            end_year += 1

        search_type = 'MMS/personal_time_log'

        if year:

            search = Search(search_type)
            search.add_filter('login_id', id)
            search.add_filter('work_performed_date',
                              '%s-%0.2d-01' % (year, month), '>')
            search.add_filter('work_performed_date',
                              '%s-%0.2d-01' % (end_year, end_month), '<')

            sobjects = search.get_sobjects()
        else:
            sobjects = []

        if sobjects:
            parser = ExpressionParser()
            sum = parser.eval("@SUM(%s.%s)" % (search_type, column),
                              sobjects=sobjects)
        else:
            sum = 0

        div = DivWdg()
        div.add(sum)
        return div
Esempio n. 2
0
    def get_display(my):
        filter_data = FilterData.get_from_cgi()
        values = filter_data.get_values("custom", "year")

        year = 0
        for value in values:
            if value:
                try:
                    year = int(value)
                except:
                    pass
        if not year:
            date = Date()
            year = int(date.get_year())

        sobject = my.get_current_sobject()
        id = sobject.get_id()

        column = my.get_option("column")
        month = int( my.get_option('month') )

        end_year = year
        end_month = month + 1
        if end_month > 12:
            end_month = 1
            end_year += 1



        search_type = 'MMS/personal_time_log'

        if year:

            search = Search(search_type)
            search.add_filter('login_id', id)
            search.add_filter('work_performed_date', '%s-%0.2d-01' % (year,month), '>')
            search.add_filter('work_performed_date', '%s-%0.2d-01' % (end_year,end_month), '<')

            sobjects = search.get_sobjects()
        else:
            sobjects = []


        if sobjects:
            parser = ExpressionParser()
            sum = parser.eval("@SUM(%s.%s)" % (search_type,column),sobjects=sobjects)
        else:
            sum = 0

        div = DivWdg()
        div.add(sum)
        return div
Esempio n. 3
0
    def get_display(my):
        today = Date()
        cur_year = int(today.get_year())
       
        limit = my.get_option('limit')
        if limit:
            limit = int(limit)
        else:
            limit = 10
        years = [i for i in xrange(cur_year-limit + 1, cur_year + 1)]
        years.reverse()
        my.set_option('values', years)

        return super(YearSelectWdg, my).get_display()
Esempio n. 4
0
    def get_display(self):
        today = Date()
        cur_year = int(today.get_year())

        limit = self.get_option('limit')
        if limit:
            limit = int(limit)
        else:
            limit = 10
        years = [i for i in xrange(cur_year - limit + 1, cur_year + 1)]
        years.reverse()
        self.set_option('values', years)

        return super(YearSelectWdg, self).get_display()