Programacion Interactiva

Descubre una Nueva y Poderosa Herramienta.

FrameWork de Nueva Generacion

Acceso a tu Informacion desde cualquier Dispositivo con Navegador.

Enfoque en el Backend

Frontend de forma facil con Odoo y XML.

Creacion de Verticales

Creacion de nuevas Verticales Conquistando nuevos Mercados.

Tu marca aqui mismo

Llega a miles de personas.

Publicidad

Mostrando las entradas con la etiqueta trucos odoo. Mostrar todas las entradas
Mostrando las entradas con la etiqueta trucos odoo. Mostrar todas las entradas

martes, 20 de octubre de 2020

Creacion de usuarios Linux

Crear usuario con privilegios de root



Existen varios mƩtodos para crear un nuevo usuario con privilegios de root en Linux.


MƩtodo rƔpido

Se trata de crearlo de golpe aƱadiƩndolo al grupo desde el propio comando useradd.


AƱadir el usuario:

sudo useradd -u 0 -o -g 0 nombreusuario

Establecer la nueva contraseƱa:

sudo passwd nombreusuario


MƩtodo tƭpico

AƱadir el usuario:

sudo adduser nombreusuario

sudo /usr/sbin/visudo

En este fichero, aƱadimos despuĆ©s de la lĆ­nea donde pone ‘root’, el nombre de nuestro usuario, con las lĆ­neas de ALL iguales.

# User privilege specification

root            ALL=(ALL:ALL) ALL 

nombreusuario	ALL=(ALL:ALL) ALL


Ante cualquier error podemos eliminar el usuario:

sudo userdel nombreusuario

O tambiƩn cambiar la contraseƱa:

sudo passwd nombreusuario

miƩrcoles, 29 de enero de 2020

Funcion copy_from para Importar Tablas desde Archivos Excel (CSV)

Importar Archivos CSV desde Funciones Python en Odoo



Lo primero es conocer la función llamada copy_from la cual forma parte del cursor que podemos instanciar por medio de la linea:

self.env.cr.copy_from


Parametros Necesarios para la Función

  1. CSV: Archivo de Excel en formato csv con la información de la tabla.
  2. Tabla: Nombre de la tabla a la cual sera volcada la información del archivo.
  3. Separador: Simbolo separador de la inforamción del CSV ( , por ejemplo)
  4. Columnas: Columnas separadas por el simbolo del Archivo.


Ejecución del Metodo

Lo primero es instanciar el cursor, el cual se encuentra dentro del entorno o contexto general de la API de Odoo.

  1. Para instanciar el cursor utilizamos "self.env.cr" y para crear una tabla "self.env.cr.execute"
  2. AƱadir la Ruta del CSV
  3. Crear la estructura en un arreglo tipo lista con las columnas del CSV.
  4. Volcar el CSV utilizando la función  "self.env.cr.copy_from"
  5. Cerrar el Archivo CSV.

self.env.cr.execute(""" CREATE TABLE IF NOT EXISTS odooacademy(
fecha_nacimiento date, edad integer,
nombre_curso text,
nombre_completo text)""")
self.env.cr.commit()
csv_file= open(filepath,"r")
columns=['fecha_nacimiento','edad','nombre_curso','nombre_completo']
self.env.cr.copy_from(csv_file, 'odooacademy', sep=',', columns=columns)
self.env.cr.commit()
csv_file.close()
Gracias por visitar mi Blog. ;-)

jueves, 16 de julio de 2015

Mostrar Columnas Ocultas en Clases Odoo

Agregar Columnas Ocultas en Vistas Odoo


    En Odoo, por defecto cada vez que se crea una nueva Clase, esta se convierte a una tabla de nuestra Base de Datos, este proceso es administrado por el ORM del Framework, durante esta conversión el sistema creara 5 columnas de forma automĆ”tica:


  1. id: Este Campo es la llave principal de todas las Tablas.
  2. create_uid: Usuario que creo un registro.
  3. create_date: Fecha en la que se creó el registro.
  4. write_uid: Usuario que modifico un registró.
  5. write_date: Fecha en la que se modifico el registró.
    Las columnas anteriores, sirven de alguna manera para auditar la información, en ocasiones es necesario alguna de estas Columnas en nuestras vistas, pero como son manejadas internamente por el Framework, por defecto no podemos agregarlas directamente.

Para AƱadirlas a una vista, se debe hacer lo siguiente:

1. Heredar la Clase y aƱadir las columnas como campos, teniendo cuidado de definir el tipo exacto como esta en la Tabla:


class mi_clase(osv.osv):
_name='mi.clase'
_columns={
    'create_uid': fields.many2one('res.users', 'Creado Por', readonly=True),
}

mi_clase()

2. Lo ultimo es añadirlo a nuestra Vista ó Vistas:

<record model='ir.ui.view' id='mi_clase_form'>
    <field name='priority'>3</field>
    <field name='type'>form</field>
    <field name='model'>mi.clase</field>
    <field name='arch' type='xml'>
    <form string="Clase Ejemplo">
        <field name="create_uid"/></field>
    </form>
</record>