首页 > 其他分享 >odoo 一个仓库有几种stock_location: stock/input/output/quality/packing? 这几个和出库入库以及库存的关系是啥?如何统计库存

odoo 一个仓库有几种stock_location: stock/input/output/quality/packing? 这几个和出库入库以及库存的关系是啥?如何统计库存

时间:2024-07-08 11:12:44浏览次数:9  
标签:库存 位置 quant 出库 output stock id quantity

在 Odoo 中,仓库管理包含多个 stock.location 类型,每种类型在仓库操作中扮演不同的角色。常见的仓库位置类型包括 stock, input, output, quality, 和 packing。以下是这些位置类型的详细说明以及它们与出库、入库和库存的关系。


常见的 stock.location 类型:


Stock:
描述: 主库存位置,用于存放产品。
用途: 存放已入库的产品,待处理或销售的库存。
Input:
描述: 采购入库位置。
用途: 新采购的产品首先进入此位置,等待检验或入库。
Output:
描述: 出库位置。
用途: 准备发货的产品从此位置出库,等待运输。
Quality:
描述: 质量检查位置。
用途: 用于质量检查的产品存放位置。
Packing:
描述: 包装位置。
用途: 准备发货的产品在此位置进行包装。
出库、入库与库存的关系


入库流程


Input: 采购订单创建后,供应商发货,货物进入 Input 位置。
Quality: 从 Input 移动到 Quality 位置进行质量检查(如果配置了质量检查)。
Stock: 质检合格后,货物从 Quality 移动到 Stock 位置,成为可用库存。


出库流程


Stock: 订单确认后,货物从 Stock 位置准备出库。
Packing: 从 Stock 移动到 Packing 位置进行包装。
Output: 打包完成后,货物移动到 Output 位置,等待装运。
出库: 最后,货物从 Output 位置装运,完成出库流程。

库存统计


库存统计可以通过查询 stock.quant 模型来实现。stock.quant 记录了每个产品在各个位置的数量。以下是一些常见的库存统计方式:


总库存量
计算所有位置的总库存量:

import xmlrpc.client

url = "http://your-odoo-url:8069"
db = "your-database"
username = "your-username"
password = "your-password"

common = xmlrpc.client.ServerProxy("{}/xmlrpc/2/common".format(url))
uid = common.authenticate(db, username, password, {})
models = xmlrpc.client.ServerProxy("{}/xmlrpc/2/object".format(url))

product_id = 1  # 替换为实际的产品 ID

# 获取所有位置的总库存量
quants = models.execute_kw(db, uid, password, 'stock.quant', 'search_read', [[
    ['product_id', '=', product_id]
]], {'fields': ['quantity']})

total_quantity = sum(quant['quantity'] for quant in quants)
print("Total Quantity for Product ID {}: {}".format(product_id, total_quantity))


可用库存量
计算可用库存量(总库存量减去预留库存量):

# 获取所有位置的可用库存量
quants = models.execute_kw(db, uid, password, 'stock.quant', 'search_read', [[
    ['product_id', '=', product_id]
]], {'fields': ['quantity', 'reserved_quantity']})

available_quantity = sum(quant['quantity'] - quant['reserved_quantity'] for quant in quants)
print("Available Quantity for Product ID {}: {}".format(product_id, available_quantity))



特定位置库存
计算特定位置的库存量:

location_id = 1  # 替换为实际的位置 ID

# 获取特定位置的总库存量
quants = models.execute_kw(db, uid, password, 'stock.quant', 'search_read', [[
    ['product_id', '=', product_id],
    ['location_id', '=', location_id]
]], {'fields': ['quantity']})

location_total_quantity = sum(quant['quantity'] for quant in quants)
print("Total Quantity for Product ID {} at Location ID {}: {}".format(product_id, location_id, location_total_quantity))



总结


Stock: 主库存位置,存放已入库的产品。
Input: 采购入库位置,等待检验或入库的产品。
Output: 出库位置,等待发货的产品。
Quality: 质量检查位置,用于质检的产品。
Packing: 包装位置,准备发货的产品。


通过查询 stock.quant 模型,可以统计所有位置的总库存量、可用库存量以及特定位置的库存量。希望这些信息能帮助你更好地理解 Odoo 中的仓库管理和库存统计。如果有更多问题,请随时提问。

标签:库存,位置,quant,出库,output,stock,id,quantity
From: https://www.cnblogs.com/zhanchenjin/p/18289501

相关文章

  • odoo 可用库存量和stock/input/output/quality/packing啥关系?
    在Odoo中,理解可用库存量与不同仓库位置(如stock,input,output,quality,和packing)之间的关系对于有效的库存管理非常重要。下面是具体的解释:可用库存量的定义可用库存量(AvailableQuantity)是指在某个时间点,某个产品在仓库中实际可用于销售或生产的数量。它的计算公式通常......
  • 商城项目库存管理系统采购需求查询------商城项目
    packagecom.alatus.mall.ware.service.impl;importorg.apache.commons.lang.StringUtils;importorg.springframework.stereotype.Service;importjava.util.Map;importcom.baomidou.mybatisplus.core.conditions.query.QueryWrapper;importcom.baomidou.mybatisplu......
  • 基于javaweb jsp ssm库存管理软件设计与实现+vue录像(源码+lw+部署文档+讲解等)
    前言......
  • 基于SpringBoot+Vue+uniapp的库存管理系统的详细设计和实现(源码+lw+部署文档+讲解等)
    文章目录前言详细视频演示具体实现截图技术栈后端框架SpringBoot前端框架Vue持久层框架MyBaitsPlus系统测试系统测试目的系统功能测试系统测试结论为什么选择我代码参考数据库参考源码获取前言......
  • 淘宝APP商品详情API接口(标题|主图|SKU|价格|优惠价|视频|销量|到手价|库存)
    在网页抓取方面,可以使用Python、Java等编程语言编写程序,通过模拟HTTP请求,获取淘宝网站上的商品详情页面数据。在数据提取方面,可以使用正则表达式、XPath等方式从HTML代码中提取出有用的信息。值得注意的是,淘宝天猫网站的页面结构会不断更新,因此需要定期更新程序,以保证数......
  • python+flask计算机毕业设计的建材店库存管理系统(程序+开题+论文)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着经济的迅速发展和建筑行业的蓬勃兴起,建材市场的竞争日益激烈。建材店作为建筑行业的重要供应链环节,其库存管理水平直接影响着店铺的运......
  • BUUCTF---rsa_output
    题目点击查看代码{21058339337354287847534107544613605305015441090508924094198816691219103399526800112802416383088995253908857460266726925615826895303377801614829364034624475195859997943146305588315939130777450485196290766249612340054354622516207681542973756......
  • java的输出流File OutputStream
    一、字节输出流FileOutputStream 1、定义使用OutputStream类的FileOutputStream子类向文本文件写入的数据。2.常用构造方法3.创建文件输出流对象的常用方式 二、输出流FileOutputStream类的应用示例1.示例  2、实现步骤  今天的总结就到此结束啦,拜拜! ......
  • 机器学习项目--库存需求预测2--Arima模型
     系列文章机器学习项目--库存需求预测1_xgboost2.0.3对应sklearn版本-CSDN博客机器学习项目--库存需求预测2--Arima模型-CSDN博客机器学习项目--库存需求预测3--LSTM模型-CSDN博客一、导入库和数据集代码环境:主要的包版本如下python==3.10scikit-learn==1.0.2statsmo......
  • python调用智能合约代码,BadFunctionCallOutput 怎么解决
    目录桌面应用使用QT5开发的,可以看看我的QT5文章BadFunctionCallOutput 怎么解决我的原因是智能合约地址填写错误python智能合约基础应用如何使用remix编写solidity智能合约并部署上链在哪进行合约部署,合约部署步骤Remix怎么复制abi和address​编辑这个ABI对应最简......