Перейти к содержимому
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 is the world's easiest all-in-one management software.
It includes hundreds of business apps:

  • CRM
  • e-Commerce
  • Бухгалтерия
  • Склад
  • PoS
  • Проекты
  • MRP
All apps
Чтобы взаимодействовать с сообществом, необходимо зарегистрироваться.
Все посты Люди Значки
Теги (Смотреть все)
odoo accounting v14 pos v15
Об этом форуме
Чтобы взаимодействовать с сообществом, необходимо зарегистрироваться.
Все посты Люди Значки
Теги (Смотреть все)
odoo accounting v14 pos v15
Об этом форуме
Помощь

Passing Values from one Function as Domain (manufacturing and BOMS)

Подписаться

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

Этот вопрос был отмечен
manufacturingdomainbombom_lines
2 Ответы
6154 Представления
Аватар
Cody Kinzett

I am trying to limit the BOMs that appear in a list based on products in a certain location, i have one function that executes sql to pull values from  the Bom and Bom_line tables to create a dictionary of related values. Then I compare this list with products in a location called WIP. and from that get a list of BOMs that should be available since their parts are available in the production environment. 

I have all of the code written my last step is to limit the BOM's that appear using a domain search for approved BOMS. my char value appears correctly. 

Code is below where enabled_boms appears as the char field correctly displaying [('id', '=', 9)]  in my app , which is correct, but appears as none.none when i print it in python. and then gives me Traceback:
Error: Expected attribute name, got (constant)


enabled_boms = fields.Char(compute='_compute_BOM_components')

print(enabled_boms)
BOM_production = fields.Many2one("mrp.bom", domain=enabled_boms)


I'm not sure how to get the returned value for enabled_boms to populate the domains section. 

my code runs if I hard code the

BOM_production = fields.Many2one('mrp.bom', domain = [('id', '=', 9)]) 


happy to share all of the code with whoever wants to take a look, just dont see value in posting it all here. 

0
Аватар
Отменить
Niyas Raphy (Walnut Software Solutions)

seems you need to return based on some field values selected ? see: https://www.youtube.com/watch?v=dq5Vtj_pwuI&t=819s

Cody Kinzett
Автор

Thanks @niyas, i followed the video and got it working with a hard coded domain however my dynamic domain causes this error.

Error:

Traceback:

TypeError: CreateListFromArrayLike called on non-object

at http://localhost:8069/web/content/556-d02db81/web.assets_backend.js:360:20

at Function._.each._.forEach (http://localhost:8069/web/content/555-da63a9d/web.assets_common.js:108:558)

at _.<computed> [as each] (http://localhost:8069/web/content/555-da63a9d/web.assets_common.js:165:526)

at eval_domains (http://localhost:8069/web/content/556-d02db81/web.assets_backend.js:357:265)

at Object.pyeval [as eval] (http://localhost:8069/web/content/556-d02db81/web.assets_backend.js:382:24)

at OdooClass.stringToArray (http://localhost:8069/web/content/556-d02db81/web.assets_backend.js:324:845)

at Class._getDomain (http://localhost:8069/web/content/556-d02db81/web.assets_backend.js:1504:167)

at Class._search (http://localhost:8069/web/content/556-d02db81/web.assets_backend.js:1097:607)

at http://localhost:8069/web/content/556-d02db81/web.assets_backend.js:1089:260

at Function._.each._.forEach (http://localhost:8069/web/content/555-da63a9d/web.assets_common.js:108:558)

I assume this is a formatting related issue or the value is not being passed to it as it says non-object.. Not sure what to do i have spent hours on this problem.

Yasmine Chenafa

Did you find an answer for that ,because i have the same issue

Аватар
Alejandro Garcia
Лучший ответ

in v16 this fix works for me.


replacing this:

result_domain.push.apply(result_domain, domain_array_to_combine);


for this:

try {
result_domain.push.apply(result_domain, domain_array_to_combine);
} catch (err) {
if (err.message.indexOf("CreateListFromArrayLike") !== -1) {
if (typeof (domain_array_to_combine) === "string") {
domain_array_to_combine = JSON.parse(domain_array_to_combine)
result_domain.push.apply(result_domain, domain_array_to_combine);
} else {
throw err;
}
} else {
throw err;
}
}
          

in file  .../addons/web/static/src/legacy/js/core/py_utils.js

0
Аватар
Отменить
Аватар
Parikshit Vaghasiya
Лучший ответ

To resolve this issue, need to change in py_utils.js file.

function eval_domains(domains, evaluation_context) {
line no 164
From
result_domain.push.apply(result_domain, domain_array_to_combine);

to

result_domain.push.apply([result_domain, domain_array_to_combine]);   (apply args in array)


need to override eval_domains method and change code.



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

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

Регистрация
Похожие посты Ответы Просмотры Активность
Bom and loss rate
manufacturing product bom bom_lines
Аватар
0
февр. 20
4659
[11.0]Specific Routes for BoM line products
manufacturing bom bom_lines 11
Аватар
0
окт. 18
3346
Creating a bill of materials with variable % or weight
manufacturing bom
Аватар
Аватар
1
окт. 25
964
Multi layered BOMs Решено
manufacturing bom
Аватар
Аватар
Аватар
2
авг. 25
1589
Manufacturing Validation Error - Quantity or Reserved Quantity should be set Решено
manufacturing bom
Аватар
Аватар
Аватар
2
авг. 24
5254
Сообщество
  • Видео уроки
  • Документация
  • Форум
Открытый исходный код
  • Скачать
  • 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 ภาษาไทย 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