跳至内容
菜单
此问题已终结
1 回复
1694 查看

Hello, i am using odoo 16 enterprise online.

Currently every POS must one by one register all the pricelists in the POS Settings.

Is there a faster way to register all pricelist  into POS ?

Server / automated actions ?

Import export ?

Thank You

Joie

形象
丢弃
最佳答案

Hi,

You can create a server action to execute the register_all_pricelists method on the pos.config model. To do this, go to Settings -> Technical -> Automation -> Server Actions and create a new action. In the "Action To Do" tab, set the "Model Name" to pos.config and the "Action Type" to Python Code. In the "Python Code" field, paste the code below. 

def register_all_pricelists(self):
# Get all pricelists
pricelists = self.env['product.pricelist'].search([])
 
# Get POS configurations
pos_configs = self.env['pos.config'].search([])
 
# Register all pricelists in POS configurations
for pos_config in pos_configs:
pricelist_ids = [(4, pricelist.id) for pricelist in pricelists]
pos_config.write({'pricelist_ids': pricelist_ids})
 
return True

Regards

形象
丢弃
编写者

Thank you this is very useful, what if there is already existing pricelist in the pos ? For example : POS#1 has pricelist id 1 and 2. And POS#2 has pricelist 1. Altogether there is pricelist id 1,2,3,4,5.

相关帖文 回复 查看 活动
1
2月 23
1826
0
11月 21
1565
3
8月 20
3222
1
11月 19
6140
0
2月 25
690