示例#1
0
                (indicator_def['type'], indicator_def['description'],
                    value, numerator, denominator))
            print (indicator_def['type'], indicator_def['name'],
                   value, numerator, denominator)

    filename = "%(name)s_mvp_indicator_%(start)s_to_%(end)s.csv" % {
        'name': name,
        'start': period.start.strftime('%Y-%m-%d'),
        'end': period.end.strftime('%Y-%m-%d')}
    filename = os.path.join(REPORTS_DIR, filename)
    with open(filename, 'wb') as f:
        csv_writer = csv.writer(
            f, delimiter=',', quotechar='"', quoting=csv.QUOTE_MINIMAL)
        csv_writer.writerows(RESULTS)
    print "\nSuccessfully generated %s." % filename

if __name__ == '__main__':
    arguments = sys.argv[1:]
    if len(arguments) < 3:
        print (u"Expected site_name YEAR MONTH\n"
               u"Eg.\n\t python report.py ruhiira 2013 03")
    else:
        name = arguments[0]
        year = int(arguments[1])
        month = int(arguments[2])
        period = Period.month_period(year, month)
        indicator_name = None
        if arguments.__len__() > 3:
            indicator_name = arguments[3]
        _generate_indicator_export(name, period, indicator_name)
示例#2
0
"""

query_str = """
{"{{dataset_id_field}}": "{{dataset.dataset_id}}",
"{{form_meta_timeend}}": {
              "$gte": "{{period.start}}", 
              "$lte": "{{period.end}}"
            }
}
"""
aggregate_str = """
{"$group": {"_id": 0, "total": {"$sum": "$value.{{num_using_fp}}"}}}
"""
dataset_id = "5791793ac29b4d77b20cf1a04d8e7161"
dataset = Dataset.find_one(dataset_id)
period = Period.month_period(2013, 3)

if dataset:
    fields = Observation.encoding(dataset)
    fields["dataset"] = dataset
    fields['dataset_id_field'] = fields[DATASET_ID]
    fields['period'] = Period.month_period(2013, 3)
    mapper = Code(Template(mapper_str).render(fields))
    reducer = Code(Template(reducer_str).render(fields))
    query = json.loads(Template(query_str).render(fields))
    query['%(form_meta_timeend)s' % fields]['$gte'] = period.start
    query['%(form_meta_timeend)s' % fields]['$lte'] = period.end
    aggregate = json.loads(Template(aggregate_str).render(fields))
    results = db.observations.map_reduce(mapper,
                                         reducer,
                                         'myresults_fp',
示例#3
0
"""

query_str = """
{"{{dataset_id_field}}": "{{dataset.dataset_id}}",
"{{form_meta_timeend}}": {
              "$gte": "{{period.start}}", 
              "$lte": "{{period.end}}"
            }
}
"""
aggregate_str = """
{"$group": {"_id": 0, "total": {"$sum": "$value.{{num_using_fp}}"}}}
"""
dataset_id = "5791793ac29b4d77b20cf1a04d8e7161"
dataset = Dataset.find_one(dataset_id)
period = Period.month_period(2013, 3)

if dataset:
    fields = Observation.encoding(dataset)
    fields["dataset"] = dataset
    fields['dataset_id_field'] = fields[DATASET_ID]
    fields['period'] = Period.month_period(2013, 3)
    mapper = Code(Template(mapper_str).render(fields))
    reducer = Code(Template(reducer_str).render(fields))
    query = json.loads(Template(query_str).render(fields))
    query['%(form_meta_timeend)s' % fields]['$gte'] = period.start
    query['%(form_meta_timeend)s' % fields]['$lte'] = period.end
    aggregate = json.loads(Template(aggregate_str).render(fields))
    results = db.observations.map_reduce(mapper, reducer, 'myresults_fp', query=query)
    if results.count():
        value = results.aggregate(aggregate)