Skip to Content
Menú
This question has been flagged
1 Respondre
5602 Vistes

I am looking for a point in the right direction on how to extend on the current invoice system, specifically on how it calculates price based on quantity.


Our business is in the Floor/Tile industry and products are usually sold per square feet.

qty = 1 would be 1sqft

However most tile is sold per box and not per square feet so I need to be able to check how many boxes a customer needs and adjust quantity and total to that number.

For example: A customer wants to purchase 20sqft of Tile

Each piece of Tile is 1.5sqft

Each box of Tile has 10 pieces in it, so a box of Tile is 15sqft


When I type in 20 as the quantity, I want to have the function check if a box of tile has enough sqft. If it does not, it needs to suggest purchasing 2 boxes for 30sqft and change the quantity variable to 30 and adjust the price accordingly.


I can program the functions, but I am completely out of my depth in regards to tying it into an exisiting framework such as odoo.


Thanks, any help or suggestion will be appreciated. 

Avatar
Descartar
Best Answer

You don't need to program that, you can use Odoo's standard functionality concerning UoS, UoM, UoP and BoM. This could give you a hint: https://www.twanda.ch/slides/slide/wine-by-the-glass-selling-in-different-units-of-measure-9     

If you sell in sqft, you need to define a BoM which converts sqft to number of tiles and in a second step you can convert tiles to boxes. You have to define which unit is your stockkeeping unit (tiles or boxes). This should give you the directions.

Avatar
Descartar
Autor

The way our transactions are done, we can sell a lot of boxes, it would be impractical to premake all the variants unfortunately. Our current system works by checking how many boxes would satisfy the input quantity and then adjust the quantity to the exact amount in the necessary amount of boxes.

Related Posts Respostes Vistes Activitat
2
de set. 22
18876
0
de març 15
10350
0
de març 15
3879
1
de juny 23
242
1
de des. 22
3815