def setUpClass(cls): cls.data_source_id = 'd36c7c934cb84725899cca9a0ef96e3a' cls.domain = 'userreport-dbaccessors' cls.report_configs = [ ReportConfiguration(domain=cls.domain, config_id=cls.data_source_id, title='A'), ReportConfiguration(domain=cls.domain, config_id=cls.data_source_id, title='B'), ReportConfiguration(domain=cls.domain, config_id='asabsdjf', title='C'), ReportConfiguration(domain='mallory', config_id=cls.data_source_id, title='X'), ] ReportConfiguration.get_db().bulk_save(cls.report_configs)
def setUpClass(cls): cls.data_source_id = 'd36c7c934cb84725899cca9a0ef96e3a' cls.domain_1 = Domain(name='userreport-dbaccessors') cls.domain_1.save() cls.domain_2 = Domain(name='mallory') cls.domain_2.save() cls.report_configs = [ ReportConfiguration(domain=cls.domain_1.name, config_id=cls.data_source_id, title='A'), ReportConfiguration(domain=cls.domain_1.name, config_id=cls.data_source_id, title='B'), ReportConfiguration(domain=cls.domain_1.name, config_id='asabsdjf', title='C'), ReportConfiguration(domain=cls.domain_2.name, config_id=cls.data_source_id, title='X'), ] ReportConfiguration.get_db().bulk_save(cls.report_configs)
def get_all_report_configs(): from corehq.apps.userreports.models import ReportConfiguration ids = [res['id'] for res in ReportConfiguration.view( 'userreports/report_configs_by_domain', reduce=False, include_docs=False, )] for result in iter_docs(ReportConfiguration.get_db(), ids): yield ReportConfiguration.wrap(result)
def get_all_report_configs(): from corehq.apps.userreports.models import ReportConfiguration ids = [ res['id'] for res in ReportConfiguration.view( 'userreports/report_configs_by_domain', reduce=False, include_docs=False, ) ] for result in iter_docs(ReportConfiguration.get_db(), ids): yield ReportConfiguration.wrap(result)
def get_report_config_or_not_found(domain, config_id): from corehq.apps.userreports.models import ReportConfiguration try: doc = ReportConfiguration.get_db().get(config_id) config = wrap_report_config_by_type(doc) except (ResourceNotFound, KeyError, ReportConfigurationNotFoundError): raise DocumentNotFound() if config.domain != domain: raise DocumentNotFound() return config
def handle(self, dry_run=False, *args, **options): self.dry_run = dry_run self.reports_using_transform = set() report_ids = get_doc_ids_by_class(ReportConfiguration) res = iter_update( db=ReportConfiguration.get_db(), fn=self.migrate_report, ids=with_progress_bar(report_ids), verbose=True, ) print "Found {} reports using the transform:".format(len(self.reports_using_transform)) print "\n".join(self.reports_using_transform) print "Updated the following reports:" print "\n".join(res.updated_ids)
def handle(self, dry_run=False, **options): self.dry_run = dry_run self.reports_using_transform = set() report_ids = get_doc_ids_by_class(ReportConfiguration) res = iter_update( db=ReportConfiguration.get_db(), fn=self.migrate_report, ids=with_progress_bar(report_ids), verbose=True, ) print("Found {} reports using the transform:".format( len(self.reports_using_transform))) print("\n".join(self.reports_using_transform)) print("Updated the following reports:") print("\n".join(res.updated_ids))
def handle(self, **options): config_ids = get_doc_ids_by_class(ReportConfiguration) builder_count, ucr_count = 0, 0 for doc in iter_docs(ReportConfiguration.get_db(), config_ids): if doc['report_meta']['created_by_builder']: builder_count += 1 else: ucr_count += 1 static_count = len(list(StaticReportConfiguration.all())) total_count = builder_count + ucr_count + static_count print(textwrap.dedent(""" As of {}, on {} there are {} total UCRs: {} Report Builder Reports {} UCR Report Configs {} Static Report Configs enabled for the environment """.format(datetime.utcnow().date(), settings.SERVER_ENVIRONMENT, total_count, builder_count, ucr_count, static_count)))
def handle(self, **options): config_ids = get_doc_ids_by_class(ReportConfiguration) builder_count, ucr_count = 0, 0 for doc in iter_docs(ReportConfiguration.get_db(), config_ids): if doc['report_meta']['created_by_builder']: builder_count += 1 else: ucr_count += 1 static_count = len(list(StaticReportConfiguration.all())) total_count = builder_count + ucr_count + static_count print( textwrap.dedent(""" As of {}, on {} there are {} total UCRs: {} Report Builder Reports {} UCR Report Configs {} Static Report Configs enabled for the environment """.format(datetime.utcnow().date(), settings.SERVER_ENVIRONMENT, total_count, builder_count, ucr_count, static_count)))
def tearDownClass(cls): ReportConfiguration.get_db().bulk_delete(cls.report_configs) cls.domain_1.delete() cls.domain_2.delete()
def delete_all_report_configs(): from corehq.apps.userreports.models import ReportConfiguration delete_all_docs_by_doc_type(ReportConfiguration.get_db(), ('ReportConfiguration', ))
def delete_all_report_configs(): from corehq.apps.userreports.models import ReportConfiguration delete_all_docs_by_doc_type(ReportConfiguration.get_db(), ('ReportConfiguration',))
def tearDownClass(cls): ReportConfiguration.get_db().bulk_delete(cls.report_configs) cls.domain_1.delete() cls.domain_2.delete() super(DBAccessorsTest, cls).tearDownClass()