成品库存周转率报表(一)

news2024/9/17 9:04:26

文章目录

  • 成品库存周转率报表(一)
    • 每日库存结存到表单《历史库存信息》
    • 报表逻辑
    • 报表设计
      • 过滤框
      • 简单账表界面
      • 存储过程,根据传入条件获取并计算返回数据
      • 报表服务插件
      • 简单账表绑定数据源插件
      • 绑定权限,发布,授权即可访问

成品库存周转率报表(一)

每日库存结存到表单《历史库存信息》

生成历史库存
每日库存存储

报表逻辑

组织=供应链中心,仓库=成品仓,区间可选,可单独搜索某物料
(1)库存数取自《历史库存信息》
(2) 期初库存为起始日期的查询库存,期末库存为结束日期的查询库存
(3)平均库存数量=(期初库存数量+期末库存数量)/2
(4)生产入库数量为选定日期范围内生产入库单的数量(按审核日期)
(5)销售出库数量为选定日期范围内销售出库单数量(按审核日期)
(6)产品库存周转率=360/(结束日期-起始日期)*(销售出库数量/平均库存数量)
(7)产品库存周转天数=360/库存周转率

报表设计

过滤框

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

简单账表界面

在这里插入图片描述

存储过程,根据传入条件获取并计算返回数据

 
CREATE PROCEDURE  XXXX_PR_STK_ITORPT(
@STOCKID INT,
@BEGINTIME VARCHAR(20),
@ENDTIME VARCHAR(20),
@t VARCHAR(100)
)
AS
BEGIN
--传入开始时间6.2  ,结束时间7.23
--DECLARE @BEGINTIME VARCHAR(20)
--SET @BEGINTIME='2024-06-02 00:00:00'
--DECLARE @ENDTIME VARCHAR(20)
--SET @ENDTIME='2024-07-23 00:00:00'
--DECLARE @STOCKID INT
--SET @STOCKID=493513


--SELECT TOP 1000  * FROM XXXX_T_STK_HisInventory

DECLARE @ENDTIME1 VARCHAR(10);
SET @ENDTIME1=(
SELECT 
    CONVERT(VARCHAR(10),DATEADD(D,1,TRY_CAST(@ENDTIME as datetime)),23)
)
--SELECT CONVERT(varchar(10), GETDATE(), 23)
--期初结存库存数
SELECT t0.F_XXXX_MATERIALID FMATERIALID
,t1.FNUMBER FMATERIALNUMBER
, t0.F_XXXX_StockQty FQTY
INTO #tab1
FROM XXXX_T_STK_HisInventory t0 JOIN T_BD_MATERIAL t1 ON t1.FMATERIALID=t0.F_XXXX_MATERIALID
WHERE CONVERT(varchar(10), t0.F_XXXX_DATE, 23)=@BEGINTIME
AND t0.F_XXXX_StockId=@STOCKID
AND t0.F_XXXX_StockOrgId=100006 




--期末结存库存数
SELECT t0.F_XXXX_MATERIALID FMATERIALID
,t1.FNUMBER FMATERIALNUMBER
, t0.F_XXXX_StockQty FQTY
INTO #tab2
FROM XXXX_T_STK_HisInventory t0 LEFT  JOIN T_BD_MATERIAL t1 ON t1.FMATERIALID=t0.F_XXXX_MATERIALID
WHERE CONVERT(varchar(10), t0.F_XXXX_DATE, 23)=@ENDTIME
AND t0.F_XXXX_StockId=@STOCKID
AND t0.F_XXXX_StockOrgId=100006 

--期间销售出库数
SELECT  
  t2.FMATERIALID fmaterialid
--,t2.FSTOCKID
, SUM(t2.FBASEUNITQTY) fqty
INTO #tab3
FROM T_SAL_OUTSTOCK t0 
LEFT OUTER JOIN T_SAL_OUTSTOCKFIN t1 ON t0.FID = t1.FID 
LEFT OUTER JOIN T_SAL_OUTSTOCKENTRY t2 ON t0.FID = t2.FID 
--LEFT OUTER JOIN t_BD_Stock st28 ON t2.FSTOCKID = st28.FStockId 
LEFT OUTER JOIN t_BD_MaterialBase st238 ON t2.FMATERIALID = st238.FMATERIALID 
LEFT OUTER JOIN t_BD_MaterialBase st239 ON t2.FMATERIALID = st239.FMATERIALID 
WHERE (((((((t0.FAPPROVEDATE >= @BEGINTIME) AND (t0.FAPPROVEDATE < @ENDTIME1)) 
AND t0.FSTOCKORGID = 100006) AND ((t1.FISGENFORIOS = '0' AND (st238.FERPCLSID <> '6')) 
AND (st239.FSUITE <> '1'))) AND t0.FOBJECTTYPEID = 'SAL_OUTSTOCK') AND t0.FCANCELSTATUS = 'A') 
AND t2.FSTOCKID=@STOCKID
--AND ((st28.FNUMBER >= '02') AND (st28.FNUMBER <= '02'))
) GROUP BY t2.FMATERIALID


--期间产成品入库
SELECT   t1.FMATERIALID fmaterialid
--, t1.FSTOCKID fstockid
, SUM(t1.FBASEREALQTY) fqty
INTO #tab4
FROM T_PRD_INSTOCK t0 
LEFT OUTER JOIN T_PRD_INSTOCKENTRY t1 ON t0.FID = t1.FID 
LEFT JOIN T_PRD_MO t2 ON t2.fid=t1.FMoId
LEFT JOIN T_BAS_ASSISTANTDATAENTRY_L t3 ON t3.FENTRYID=t2.F_XXXX_WKTYPE
LEFT JOIN dbo.T_BAS_BILLTYPE_L t4 ON t4.FBILLTYPEID=t2.FBILLTYPE
--LEFT OUTER JOIN t_BD_Stock st17 ON t1.FSTOCKID = st17.FStockId 
WHERE (((((((t0.FAPPROVEDATE >= @BEGINTIME) AND (t0.FAPPROVEDATE < @ENDTIME1)) 
AND t0.FSTOCKORGID = 100006) AND t0.FENTRUSTINSTOCKID = 0) 
AND t0.FFORMID = 'PRD_INSTOCK') AND t0.FCANCELSTATUS = 'A')
AND t1.FSTOCKID =@STOCKID
AND t4.FNAME='汇报入库-普通生产'
AND t3.FDATAVALUE IN ('普通生产订单','研发试制订单','销售改机订单','PCBA加工订单')
--AND ((st17.FNUMBER >= '02') AND (st17.FNUMBER <= '02'))
)  GROUP BY t1.FMATERIALID

--sqlserver 声明小数
DECLARE @daterate NUMERIC(10,2)
SET @daterate=(SELECT ROUND(isnull(360.0/DATEDIFF(DAY,@BEGINTIME,@ENDTIME),0),2))

SELECT ROW_NUMBER() OVER ( ORDER BY m2.fmaterialid ) FID
,493513 FSTOCKID
,'02' AS FSTOCKNUMBER
,'成品仓' AS FSTOCKNAME
, m2.* 
,C

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1963618.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于域名的虚拟主机,基于ip的域名主机,综合项目eleme

查看nginx配置文件 不看空行&#xff0c;不看注释&#xff0c;查找 [rootstaticserver ~]# grep -Ev "#|^$" /usr/local/nginx/conf/nginx.conf 把原有的文件备份 [rootstaticserver ~]# cp /usr/local/nginx/conf/nginx.conf /usr/local/nginx/conf/nginx.conf.…

虚拟化数据恢复—XenServer VPS不可用如何恢复数据?

虚拟化数据恢复环境&#xff1a; 某品牌R720服务器&#xff0c;4块STAT硬盘通过H710P阵列卡组建了一组raid10磁盘阵列。服务器上部署XenServer虚拟化平台&#xff0c;虚拟机安装Windows Server系统&#xff0c;作为Web服务器使用&#xff0c;运行SQL Server数据库。共有2个虚拟…

智能巡航,守护蓝天绿水:无人机视频技术如何高效监督非法排污行为

随着工业化进程的加速和环境保护意识的日益增强&#xff0c;非法排污行为成为了威胁生态环境、影响公众健康的重大问题。传统的排污监测手段往往受限于人力成本、覆盖范围及效率等因素&#xff0c;难以实现对广袤区域和隐蔽排污点的有效监控。而无人机技术的飞速发展&#xff0…

【网络协议】HTTP协议详解

文章目录 一、概念 二、简史 三、特点 四、工作流程 五、使用Wireshark抓TCP、http包 六、头域 6.1、请求信息&#xff1a; 6.2、请求方法 6.3、响应消息 6.4、响应头域 6.5、HTTP常见的请求头 6.6、HTTP常见的响应头 七、解决HTTP无状态的问题 7.1、通过Cookies保存状态信息 7…

软件性能测试内容和方法揭秘,专业第三方软件测试公司推荐

在数字经济迅猛发展的背景下&#xff0c;软件的性能已经成为企业竞争力的重要一环。性能测试&#xff0c;作为软件测试的一个重要组成部分&#xff0c;主要用于评估应用程序在特定负载下的表现。这不仅包括响应时间、吞吐量、资源使用率等指标&#xff0c;还涉及系统在不同条件…

Stable Diffusion教程|快速入门SD绘画原理与安装

什么是Stable Diffusion&#xff0c;什么是炼丹师&#xff1f;根据市场研究机构预测&#xff0c;到2025年全球AI绘画市场规模将达到100亿美元&#xff0c;其中Stable Diffusion&#xff08;简称SD&#xff09;作为一种先进的图像生成技术之一&#xff0c;市场份额也在不断增长&…

前端-05-VSCode自定义代码片段console.log(js/ts配置)、代码段快捷提示放在首位

目录 配置VSCode自定义代码片段console.log()log代码段快捷提示放在首位 配置VSCode自定义代码片段console.log() 点击VSCode左下角设置图标&#xff0c;点击用户代码片段 点击用户代码片段后&#xff0c;VSCode上方出现弹窗如下图&#xff08;没有显示这两个文件的话搜索一下…

探索国际TikTok矩阵:快速涨粉与变现的全新玩法

在当前的TikTok&#xff08;国际版抖音&#xff09;生态中&#xff0c;矩阵玩法正在成为越来越多内容创作者和电商卖家的热门选择。要有效利用TikTok矩阵&#xff0c;首先得清晰地确定每个账号的内容定位&#xff0c;选择你想要深入的领域。 一、热门TikTok账号类型解析 1. 流量…

milvus - VectorDBBench benchmaker 性能测试工具使用经验

IVF_FLAT (Inverted File with Flat Indexing) 优点: 在数据量适中且维度不是非常高的情况下&#xff0c;IVF_FLAT能提供精确的最近邻搜索结果。 相对简单&#xff0c;易于理解和实现。 缺点: 当数据集非常大时&#xff0c;IVF_FLAT需要大量的内存来存储整个数据集&#xff0c;…

基于欧氏距离的点云聚类(python)

1、背景介绍 欧式聚类是一种基于欧氏距离度量的聚类算法。它是点云处理中的一个重要步骤&#xff0c;它可以帮助我们从无序的点云数据中提取有意义的信息。一般来说&#xff0c;对点云进行欧式聚类处理&#xff0c;可以帮助后续数据处理&#xff0c;如物体检测与识别、三维重建…

链式栈,队列与树形结构

链式栈 链式存储的栈 实现方式&#xff1a;可以使用单向链表完成 对单向链表进行头插&#xff08;入栈&#xff09;、头删&#xff08;出栈&#xff09;&#xff0c;此时链表的头部就是链栈的栈顶&#xff0c;链表的尾部&#xff0c;就是链栈的栈底 队列 概念 队列&#…

二叉树算法题(1)

单值二叉树 思路&#xff1a; 若根结点为NULL&#xff0c;则直接返回true若根结点的左右结点存在&#xff0c;且与根结点的值不相等&#xff0c;则返回false递归根结点的左右子树 typedef struct TreeNode TreeNode; bool isUnivalTree(struct TreeNode* root) {if(root NU…

程序员修炼之路:深入广泛的必修课程

成为一名优秀的程序员&#xff0c;需要广泛而深入地学习多个领域的知识。这些课程不仅帮助建立扎实的编程基础&#xff0c;还培养了问题解决、算法设计、系统思维等多方面的能力。以下是一些核心的必修课&#xff1a; 计算机基础 计算机组成原理&#xff1a;理解计算机的硬件组…

一步步揭秘:浏览器输入URL后的那些事儿

Hello大家好,我是小米,一个热爱分享技术的IT达人。今天我们一起来聊聊一个大家每天都会用到但可能不太了解的过程:浏览器输入URL之后发生了什么。这是一个从用户输入到浏览器显示页面的完整过程,涉及到很多底层的网络基础知识。今天我们就一起来探究这个神秘的过程! DNS解…

Java 中的File类

路径分为绝对路径和相对路径。 相对路径肯定是相对谁来说的&#xff0c;一般是一个文件相对于另外一个文件而言的路径。 下面是一个例子&#xff0c;比如index.htm如何找到photo.jpg呢&#xff1f; c:/website/web/index.htmc:/website/img/photo.jpg 所以在index.htm中使用…

Python:类的属性(实例属性、类属性)和方法(实例方法、类方法、静态方法)

相关阅读 Pythonhttps://blog.csdn.net/weixin_45791458/category_12403403.html?spm1001.2014.3001.5482 Python是一门面向对象的编程语言&#xff0c;其核心概念之一是类。类是对象的蓝图或模板&#xff0c;定义了对象的属性和方法。理解类的属性和方法对于掌握Python编程至…

【Docker】常见概念|技术架构演进之路|八大架构|单机架构|应用数据分离架构|应用服务集群架构

目录 一、常见概念 应用&#xff08;Application&#xff09; / 系统&#xff08;System&#xff09; 模块&#xff08;Module&#xff09; / 组件&#xff08;Component&#xff09; 分布式&#xff08;Distributed&#xff09; 集群&#xff08;Cluster&#xff09; 主…

python调用MATLAB函数的一个诡异的问题,数据类型问题

记一次python调用MATLAB函数的诡异问题 说明&#xff08;废话&#xff09;解决方案总结 说明&#xff08;废话&#xff09; 这个问题的起因是python调用MATLAB函数的问题&#xff0c;归根结底&#xff0c;主要还是因为不同语言对于不同的数据表达的方式不同造成的问题。 pytho…

在Postman中引用JS库

前言 在做接口测试时&#xff0c;出于安全因素&#xff0c;请求参数需要做加密或者加上签名才能正常请求&#xff0c;例如&#xff1a;根据填写的请求参数进行hash计算进行签名。postman作为主流的接口调试工具也是支持请求预处理的&#xff0c;即在请求前使用JavaScript脚本对…

界面组件DevExtreme v24.2将发布一系列新组件、支持.NET 9

DevExtreme拥有高性能的HTML5 / JavaScript小部件集合&#xff0c;使您可以利用现代Web开发堆栈&#xff08;包括React&#xff0c;Angular&#xff0c;ASP.NET Core&#xff0c;jQuery&#xff0c;Knockout等&#xff09;构建交互式的Web应用程序。从Angular和Reac&#xff0c…