Перейти к содержимому
Odoo Меню
  • Войти
  • Попробовать бесплатно
  • Модули
    Финансы
    • Бухгалтерия
    • Выставление счетов
    • Расходы
    • Таблицы
    • Документооборот
    • Подпись
    Продажи
    • CRM
    • Продажи
    • POS Магазин
    • POS Ресторан
    • Подписки
    • Аренда
    Вебсайты
    • Конструктор вебсайтов
    • eCommerce
    • Блог
    • Форум
    • Онлайн-чат
    • Электронное обучение
    Логистика
    • Склад
    • Производство
    • PLM
    • Закупки
    • Обслуживание
    • Качество
    Отдел кадров
    • Сотрудники
    • Подбор персонала
    • Отпуска
    • Оценка персонала
    • Реферальная программа
    • Автопарк
    Маркетинг
    • SMM
    • E-mail рассылки
    • СМС рассылки
    • Мероприятия
    • Автоматизация маркетинга
    • Опросы
    Услуги
    • Проекты
    • Табели
    • Выездной сервис
    • Поддержка
    • Планирование
    • Встречи
    Продуктивность
    • Обсуждения
    • Искусственный интеллект
    • IoT
    • VoIP-телефония
    • Knowledge
    • WhatsApp
    Сторонние приложения Модуль Студия Odoo Платформа Odoo Cloud
  • Индустрии
    Розничная торговля
    • Книжный магазин
    • Магазин одежды
    • Мебельный магазин
    • Продуктовый магазин
    • Строительный магазин
    • Магазин игрушек
    Гостинично-ресторанный бизнес
    • Бар и паб
    • Ресторан
    • Фастфуд
    • Гостевой дом
    • Дистрибьютор напитков
    • Отель
    Недвижимость
    • Агентство недвижимости
    • Архитектурное бюро
    • Строительство
    • Управление недвижимостью
    • Ландшафтный дизайн
    • Товарищество собственников жилья
    Консалтинг
    • Бухгалтерская фирма
    • Партнер Odoo
    • Маркетинговое агентство
    • Юридическая фирма
    • Подбор персонала
    • Аудиторское бюро
    Производство
    • Текстиль
    • Металл
    • Мебель
    • Продукты питания
    • Пивоварня
    • Корпоративные сувениры
    Здоровье и фитнес
    • Спортивный комплекс
    • Магазин оптики
    • Фитнес-клуб
    • Велнес-центр
    • Аптека
    • Салон красоты
    Услуги
    • Специалист по бытовым услугам
    • Продажа и обслуживание IT-оборудования
    • Солнечные энергосистемы
    • Производство обуви
    • Клининг
    • Системы ОВКВ
    Прочее
    • Некоммерческая организация
    • Консалтинг в сфере устойчивого развития
    • Аренда рекламных щитов
    • Бизнес по фотосъемке
    • Прокат велосипедов
    • Реселлер программного обеспечения
    Все индустрии
  • Community
    Обучение
    • Видео уроки
    • Документация
    • Сертификация
    • Тренинг
    • Блог
    • Подкаст
    Образование и развитие
    • Образовательная программа
    • Деловая игра Scale Up!
    • Экскурсия в офис Odoo
    ПО
    • Скачать
    • Сравнить версии
    • Релизы
    Сотрудничество
    • Github
    • Форум
    • Мероприятия
    • Перевод
    • Стать партнером
    • Услуги для партнеров
    • Зарегистрировать бухгалтерскую фирму
    Услуги
    • Найти партнера
    • Найти бухгалтера
    • Встреча с экспертом
    • Услуги по внедрению
    • Отзывы клиентов
    • Поддержка
    • Обновления
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Заказать демонстрацию
  • Цены
  • Поддержка
Чтобы взаимодействовать с сообществом, необходимо зарегистрироваться.
Все посты Люди Значки
Теги (Смотреть все)
odoo accounting v14 pos v15
Об этом форуме
Чтобы взаимодействовать с сообществом, необходимо зарегистрироваться.
Все посты Люди Значки
Теги (Смотреть все)
odoo accounting v14 pos v15
Об этом форуме
Помощь

how to manage this 2 modules

Подписаться

Получайте уведомления о появлении активности в этом посте

Этот вопрос был отмечен
modulexml
5307 Представления
Аватар
jasper akira

hrdata.py

from openerp.osv import fields,osv from openerp import tools from dateutil.relativedelta import relativedelta from datetime import datetime """ Status Keluarga """ Status_Keluarga=[ ('tk','TK'), ('k0','K0'), ('k1','K1'), ('k2','K2'), ('k3','K3'),
] class hrdata_department(osv.osv): _name= "hrdata.department" _description="Daftar Departement" _columns = { 'name': fields.char('Departemen',size=64,required=True) } _sql_constraints = [ ('name', 'unique(name)', 'unique') ] _order = 'name asc' hrdata_department()

class hrdata_level(osv.osv): _name= "hrdata.level" _description="Daftar Level Jabatan" _columns = { 'name': fields.char('Level Jabatan',size=64,required=True) } _sql_constraints = [ ('name', 'unique(name)', 'unique') ] _order = 'name asc' hrdata_level()

class hrdata_bagian(osv.osv): _name= "hrdata.bagian" _description="Daftar Bagian Departemen" _columns = { 'name': fields.char('Bagian',size=64,required=True) } _sql_constraints = [ ('name', 'unique(name)', 'unique') ] _order = 'name asc' hrdata_bagian()

class hrdata_data(osv.osv): _name= "hrdata.data" _description="Data Karyawan"

def _compute_age(self, cr, uid, ids, field_name, arg, context={}):
    result = {}
    now = datetime.now()
    for r in self.browse(cr, uid, ids, context=context):
        if r.tgl_lahir:
            dob = datetime.strptime(r.tgl_lahir,'%Y-%m-%d')
            delta=relativedelta (now, dob)
            result[r.id] = str(delta.years) #if you only want date just give delta.years
        else:
            result[r.id] = 0
    return result

def _get_image(self, cr, uid, ids, name, args, context=None):
    result = dict.fromkeys(ids, False)
    for obj in self.browse(cr, uid, ids, context=context):
        result[obj.id] = tools.image_get_resized_images(obj.image)
    return result

def _set_image(self, cr, uid, ids, name, value, args, context=None):
    return self.write(cr, uid, [ids], {'image': tools.image_resize_image_big(value)}, context=context)

_columns = {
    'name': fields.char('NIK',size=15,required=True),
    'nama': fields.char('Nama',size=256,required=True),
    'jenis_kelamin':fields.selection([('male','Male'),('female','Female')],'Jenis Kelamin',required=True),
    'tgl_masuk': fields.date('Tanggal Masuk'),
    'tgl_keluar': fields.date('Tanggal Keluar'),
    'tgl_ktp': fields.date('Tanggal Berlaku KTP'),
    'kode':fields.many2one('hrjadwal','Jadwal',size=15),
    'department':fields.many2one('hrdata.department','Departemen',size=256),
    'bagian': fields.many2one('hrdata.bagian','Bagian',size=256),  
    'level': fields.many2one('hrdata.level','Level Jabatan',size=256),
    'lokasi':fields.selection([('tml','TML'),('kim','KIM')],'Lokasi',required=True),
    'kepesertaan_jamsostek':fields.date('Kepesertaan Jamsostek'),
    'status_karyawan': fields.selection([
        ('kontrak','Kontrak'),
        ('tetap','Tetap'),
        ('outsoucing','Outsourcing'),
        ],'Status Karyawan'),
    'ket':fields.text('Keterangan'),
    'agama': fields.selection([
        ('islam','Islam'),
        ('kristen','Kristen'),
        ('buddha','Buddha'),
        ('hindu','Hindu'),
        ],'Agama',readonly=False,select=True),
    'no_kpj':fields.char('No Jamsostek',size=15),
    'nama_kpj':fields.char('Nama Jamsostek',size=50),
    'status': fields.selection(Status_Keluarga,'Status',readonly=False,select=True),
    'alamat':fields.char('Alamat',size=50),                 
    'telepon':fields.char('Telepon',size=15),
    'no_ktp':fields.char('No KTP',size=20),
    'no_kk':fields.char('No Kartu Keluarga',size=50),
    'jumlah_anak':fields.char('Jumlah Anak',size=1),
    'tgl_lahir':fields.date('Tanggal Lahir'),   
    'usia' : fields.function(_compute_age, method=True, type='integer', size=32, string='Usia'),        
    'npwp':fields.char('NPWP'), 
    'no_sj':fields.char('No SJ'),   
    'grade':fields.char('Grade'),   
    # image: all image fields are base64 encoded and PIL-supported
    'image': fields.binary("Photo",
        help="This field holds the image used as photo for the employee, limited to 1024x1024px."),
    'image_medium': fields.function(_get_image, fnct_inv=_set_image,
        string="Medium-sized photo", type="binary", multi="_get_image",
        store = {
            'hrdata.data': (lambda self, cr, uid, ids, c={}: ids, ['image'], 10),
        },
        help="Medium-sized photo of the employee. It is automatically "\
             "resized as a 128x128px image, with aspect ratio preserved. "\
             "Use this field in form views or some kanban views."),
    'image_small': fields.function(_get_image, fnct_inv=_set_image,
        string="Smal-sized photo", type="binary", multi="_get_image",
        store = {
            'hrdata.data': (lambda self, cr, uid, ids, c={}: ids, ['image'], 10),
        },
        help="Small-sized photo of the employee. It is automatically "\
             "resized as a 64x64px image, with aspect ratio preserved. "\
             "Use this field anywhere a small image is required."),
    }

_sql_constraints = [
    ('name', 'unique(name)', 'unique'),
    ('nama','unique(nama)','unique'),
    ('no_sj','unique(no_sj)','unique'),
]

_order = 'name asc'

hrdata_data()

hrdata_view.xml

<openerp> <data>
<record id="view_hrjadwal" model="ir.ui.view"> <field name="name">hrjadwal.data.form</field> <field name="model">hrjadwal.data</field> <field name="arch" type="xml"> <form string="Data Jadwal Kehadiran" version="7.0"> <field name="name"/> <field name="masuk"/> <field name="pulang"/> <field name="msabtu"/> <field name="psabtu"/> </form> </field> </record>

<record id="hrjadwal_view_tree" model="ir.ui.view">
        <field name="name">Jadwal Kerja</field>
        <field name="model">hrjadwal.data</field>
        <field name="arch" type="xml">
            <tree string="Jadwal Kerja" editable="bottom">
                <field name="name"/>
                <field name="masuk"/>
                <field name="pulang"/>
                <field name="msabtu"/>
                <field name="psabtu"/>
            </tree>
        </field>
</record>


<record model="ir.actions.act_window" id="action_test">
    <field name="name">Jadwal Karyawan</field>
    <field name="res_model">hrjadwal.data</field>
    <field name="view_type">form</field>
    <field name="view_mode">tree,form</field>
</record>

<menuitem sequence="4" id="menu_jadwal" parent="hrdata.mnu_hrdata" name="Jadwal Kerja"/> <menuitem name="Jadwal" action="action_test" id="menu_jadwal" parent="hrdata.mnu_hrdata_config" sequence="2"/> </data>

</openerp>

hrjdwl.py

from openerp.osv import fields,osv

class hrjadwal_data(osv.osv): _name= "hrjadwal.data" _description="data" _columns = { 'name': fields.char('Jadwal',size=256,required=True), 'masuk':fields.char('Jam Masuk Hari Biasa', size=5,required=True), 'pulang':fields.char('Jam Pulang Hari Biasa', size=5,required=True), 'msabtu':fields.char('Jam Masuk Hari Sabtu', size=5,required=True), 'psabtu':fields.char('Jam Pulang Hari Sabtu', size=5,required=True), }

_sql_constraints = [
    ('name', 'unique(name)', 'unique'),
]
_order = 'name asc'

hrjadwal_data()

hrjdwl_view.xml

<openerp> <data>
<record id="view_hrjadwal" model="ir.ui.view"> <field name="name">hrjadwal.data.form</field> <field name="model">hrjadwal.data</field> <field name="arch" type="xml"> <form string="Data Jadwal Kehadiran" version="7.0"> <field name="name"/> <field name="masuk"/> <field name="pulang"/> <field name="msabtu"/> <field name="psabtu"/> </form> </field> </record>

<record id="hrjadwal_view_tree" model="ir.ui.view">
        <field name="name">Jadwal Kerja</field>
        <field name="model">hrjadwal.data</field>
        <field name="arch" type="xml">
            <tree string="Jadwal Kerja" editable="bottom">
                <field name="name"/>
                <field name="masuk"/>
                <field name="pulang"/>
                <field name="msabtu"/>
                <field name="psabtu"/>
            </tree>
        </field>
</record>


<record model="ir.actions.act_window" id="action_test">
    <field name="name">Jadwal Karyawan</field>
    <field name="res_model">hrjadwal.data</field>
    <field name="view_type">form</field>
    <field name="view_mode">tree,form</field>
</record>

<menuitem sequence="4" id="menu_jadwal" parent="hrdata.mnu_hrdata" name="Jadwal Kerja"/> <menuitem name="Jadwal" action="action_test" id="menu_jadwal" parent="hrdata.mnu_hrdata_config" sequence="2"/> </data>

</openerp>

for the openerp.py

hrdata :

{ 'name': 'HR Data', 'version': '0.6', 'category': 'HRData', 'description': """This module is just for Data Karyawan.""", 'author': 'Jasper', 'depends': ['base','hrjdwl'], 'data': [ 'security/ir_rule.xml', 'security/ir.model.access.csv', 'hrdata_view.xml', 'hrdata_view_department.xml', 'hrdata_view_level.xml', 'hrdata_view_bagian.xml', ], 'installable': True,

}

hrjdwl.py

{ 'name': 'HR Jadwal', 'version': '0.5', 'category': 'HRData', 'description': """This module is just for Jadwal Data Karyawan.""", 'author': 'Jasper', 'depends': ['hrdata'], 'data': [ 'hrjadwal_view.xml', ], 'installable': True,

}

my problem is i want to take data from hrjadwal to a field name 'kode' in hrdata_data , but when i use many2one it's always failed to upgrade

thanks for your helps :)

0
Аватар
Отменить
Не оставайтесь в стороне – присоединяйтесь к обсуждению!

Создайте аккаунт сегодня, чтобы получить доступ к эксклюзивным функциям и стать частью нашего замечательного сообщества!

Регистрация
Похожие посты Ответы Просмотры Активность
error while parsing inherit view
module xml custom
Аватар
Аватар
1
июн. 23
5624
How to change the Your Company record with XML Решено
module xml initialization
Аватар
Аватар
2
апр. 23
19657
How to overwrite object in a module using data and xml (ir.rule)?
module xml ir.rule
Аватар
Аватар
2
нояб. 18
12629
How to change settings on module installation? Решено
settings module xml
Аватар
Аватар
Аватар
2
окт. 17
13988
module not show in open erp
python module xml
Аватар
Аватар
Аватар
2
мар. 15
5754
Сообщество
  • Видео уроки
  • Документация
  • Форум
Открытый исходный код
  • Скачать
  • Github
  • Runbot
  • Перевод
Услуги
  • Хостинг Odoo.sh
  • Поддержка
  • Обновление
  • Индивидуальные решения по доработке
  • Образование
  • Найти бухгалтера
  • Найти партнера
  • Стать партнером
О нас
  • Наша компания
  • Активы бренда
  • Cвяжитесь с нами
  • Вакансии
  • Мероприятия
  • Подкаст
  • Блог
  • Клиенты
  • Правовые документы • Конфиденциальность
  • Безопасность
الْعَرَبيّة Català 简体中文 繁體中文 (台灣) Čeština Dansk Nederlands English Suomi Français Deutsch हिंदी Bahasa Indonesia Italiano 日本語 한국어 (KR) Lietuvių kalba Język polski Português (BR) română русский язык Slovenský jazyk Slovenščina Español (América Latina) Español Svenska ภาษาไทย Türkçe українська Tiếng Việt

Odoo – это набор бизнес-модулей с открытым исходным кодом, который закроет все потребности вашей компании: CRM, E-commerce, Бухгалтерия, Склад, POS, управление проектами и др.

Odoo сочетает в себе простоту использования и полную интеграцию всех бизнес-процессов в одной системе.

Website made with

Odoo Experience on YouTube

1. Use the live chat to ask your questions.
2. The operator answers within a few minutes.

Live support on Youtube
Watch now