def _run_test(self, cr, module_name, filename): _, ext = os.path.splitext(filename) pathname = os.path.join(module_name, filename) open_file = tools.file_open(pathname) if ext == '.sql': queries = open_file.read().split(';') for query in queries: new_query = ' '.join(query.split()) if new_query: cr.execute(new_query) elif ext == '.csv': tools.convert_csv_import(cr, module_name, pathname, open_file.read(), idref=None, mode='update', noupdate=False) elif ext == '.yml': tools.convert_yaml_import(cr, module_name, open_file, idref=None, mode='update', noupdate=False) else: tools.convert_xml_import(cr, module_name, open_file, idref=None, mode='update', noupdate=False)
def load_demo_xml(cr, m, idref, mode): for xml in package.data.get('demo_xml', []): name, ext = os.path.splitext(xml) logger.notifyChannel('init', netsvc.LOG_INFO, 'module %s: loading %s' % (m, xml)) fp = tools.file_open(opj(m, xml)) try: if ext == '.csv': tools.convert_csv_import(cr, m, os.path.basename(xml), fp.read(), idref, mode=mode, noupdate=True) elif ext == '.yml': tools.convert_yaml_import(cr, m, fp, idref, mode=mode, noupdate=True, **kwargs) else: tools.convert_xml_import(cr, m, fp, idref, mode=mode, noupdate=True, **kwargs) finally: fp.close()
def load_init_update_xml(cr, m, idref, mode, kind): for filename in package.data.get('%s_xml' % kind, []): logger.notifyChannel('init', netsvc.LOG_INFO, 'module %s: loading %s' % (m, filename)) _, ext = os.path.splitext(filename) fp = tools.file_open(opj(m, filename)) try: if ext == '.csv': noupdate = (kind == 'init') tools.convert_csv_import(cr, m, os.path.basename(filename), fp.read(), idref, mode=mode, noupdate=noupdate) elif ext == '.sql': process_sql_file(cr, fp) elif ext == '.yml': tools.convert_yaml_import(cr, m, fp, idref, mode=mode, **kwargs) else: tools.convert_xml_import(cr, m, fp, idref, mode=mode, **kwargs) finally: fp.close()
def init_from_config_file(self, cr, uid, ids, context=None): object_obj = self.pool.get('import.data.run.object') for run in self.browse(cr, uid, ids, context): for obj in run.object_ids: object_obj.unlink(cr, uid, obj.id, context) yaml_file = run.config_path + run.config_yml_file_path tools.convert_yaml_import(cr, 'smile_import_data', file(yaml_file), mode='init', noupdate=True) return True
def load_demo_xml(cr, m, idref, mode): for xml in package.data.get('demo_xml', []): name, ext = os.path.splitext(xml) logger.notifyChannel('init', netsvc.LOG_INFO, 'module %s: loading %s' % (m, xml)) fp = tools.file_open(opj(m, xml)) if ext == '.csv': tools.convert_csv_import(cr, m, os.path.basename(xml), fp.read(), idref, mode=mode, noupdate=True) elif ext == '.yml': tools.convert_yaml_import(cr, m, fp, idref, mode=mode, noupdate=True, **kwargs) else: tools.convert_xml_import(cr, m, fp, idref, mode=mode, noupdate=True, **kwargs) fp.close()
def load_init_update_xml(cr, m, idref, mode, kind): for filename in package.data.get('%s_xml' % kind, []): logger.notifyChannel('init', netsvc.LOG_INFO, 'module %s: loading %s' % (m, filename)) _, ext = os.path.splitext(filename) fp = tools.file_open(opj(m, filename)) if ext == '.csv': noupdate = (kind == 'init') tools.convert_csv_import(cr, m, os.path.basename(filename), fp.read(), idref, mode=mode, noupdate=noupdate) elif ext == '.sql': process_sql_file(cr, fp) elif ext == '.yml': tools.convert_yaml_import(cr, m, fp, idref, mode=mode, **kwargs) else: tools.convert_xml_import(cr, m, fp, idref, mode=mode, **kwargs) fp.close()
def init(self, cr): """ Load data (product_data.xml) before self """ if hasattr(super(purchase_order, self), 'init'): super(purchase_order, self).init(cr) logging.getLogger('init').info('HOOK: module product: loading product_data.xml') pathname = path.join('product', 'product_data.xml') file = tools.file_open(pathname) tools.convert_xml_import(cr, 'product', file, {}, mode='init', noupdate=False) logging.getLogger('init').info('HOOK: module product_attributes: loading data/sale_data.yml') pathname = path.join('product_attributes', 'data', 'sale_data.yml') file = tools.file_open(pathname) tools.convert_yaml_import(cr, 'product_attributes', file, {}, mode='init', noupdate=False)
def _load_data(cr, module_name, id_map, mode, kind): noupdate = (kind == 'demo') for filename in package.data.get(kind, []): _, ext = os.path.splitext(filename) log.info("module %s: loading %s", module_name, filename) pathname = os.path.join(module_name, filename) file = tools.file_open(pathname) # TODO manage .csv file with noupdate == (kind == 'init') if ext == '.sql': process_sql_file(cr, file) elif ext == '.csv': noupdate = (kind == 'init') tools.convert_csv_import(cr, module_name, pathname, file.read(), id_map, mode, noupdate) elif ext == '.yml': tools.convert_yaml_import(cr, module_name, file, id_map, mode, noupdate) else: tools.convert_xml_import(cr, module_name, file, id_map, mode, noupdate) file.close()
import service.netrpc_server service.netrpc_server.init_servers() if tools.config['db_name']: for dbname in tools.config['db_name'].split(','): db, pool = pooler.get_db_and_pool(dbname, update_module=tools.config['init'] or tools.config['update'], pooljobs=False) cr = db.cursor() if tools.config["test_file"]: logger.info('loading test file %s', tools.config["test_file"]) tools.convert_yaml_import(cr, 'base', file(tools.config["test_file"]), {}, 'test', True) cr.rollback() pool.get('ir.cron')._poolJobs(db.dbname) cr.close() #---------------------------------------------------------- # translation stuff #---------------------------------------------------------- if tools.config["translate_out"]: import csv if tools.config["language"]: msg = "language %s" % (tools.config["language"], )
tools.config["translate_in"] or \ tools.config["translate_out"] ): service.http_server.init_servers() service.http_server.init_xmlrpc() import service.netrpc_server service.netrpc_server.init_servers() if tools.config['db_name']: for dbname in tools.config['db_name'].split(','): db,pool = pooler.get_db_and_pool(dbname, update_module=tools.config['init'] or tools.config['update'], pooljobs=False) if tools.config["test-file"]: logger.notifyChannel("init", netsvc.LOG_INFO, 'loading test file %s' % (tools.config["test-file"],)) cr = db.cursor() tools.convert_yaml_import(cr, 'base', file(tools.config["test-file"]), {}, 'test', True) cr.rollback() pool.get('ir.cron')._poolJobs(db.dbname) #---------------------------------------------------------- # translation stuff #---------------------------------------------------------- if tools.config["translate_out"]: import csv if tools.config["language"]: msg = "language %s" % (tools.config["language"],) else: msg = "new language" logger.notifyChannel("init", netsvc.LOG_INFO, 'writing translation file for %s to %s' % (msg,