清除异常仓位库存

基本逻辑是:

先找出负库存的信息:工厂、物料、批次、仓库号,然后在根据这些信息查询所有不为0的仓位信息。根据选择的两个仓位信息,为创建TO准备目标和源的信息,调用函数L_TO_CREATE_SINGL创建TO,同时完成确认。欢迎大家修改成为一个后台自动清除负库存的程序。

*&---------------------------------------------------------------------*
*& Report ZWMR_010
*&---------------------------------------------------------------------*
*&清除异常库存,每次选择一对进行处理
*&这种错误的原因之一是允许存在负库存
*&多数发生在质量检验后,质量状态的物料没有成功移动
*&导致902的Q状态的为正,922的Q状态库存为负

*&Author: Andy Tang

*&Date:20250506
*&---------------------------------------------------------------------*
REPORT zwmr_010.


TABLES:ltak,ltap,lqua,ltak_vb,ltap_vb.

* 输入参数定义
SELECTION-SCREEN BEGIN OF BLOCK bk01 WITH FRAME TITLE TEXT-001.
  SELECT-OPTIONS: s_lgnum FOR lqua-lgnum,    "库存号
                  s_werks FOR lqua-werks,    "工厂
                  s_lgort FOR lqua-lgort,    "库存地点
                  s_matnr FOR lqua-matnr,    "物料
                  s_charg FOR lqua-charg.     "批次
SELECTION-SCREEN END OF BLOCK bk01.

* 最终输出数据结构(只包含需要显示的字段)
TYPES: BEGIN OF ty_output,
         ld_i_lgnum       TYPE lqua-lgnum,  "库存号
         ld_i_werks       TYPE lqua-werks, "工厂
         ld_i_lgort       TYPE lqua-lgort, "库存地点
         ld_i_matnr       TYPE lqua-matnr, "物料号码
         ld_i_charg       TYPE lqua-charg, "批次号
         ld_i_anfme       TYPE lqua-gesme, "数量
         ld_i_altme       TYPE lqua-meins, "单位
         ld_i_bestq       TYPE lqua-bestq, "物料在库存的状态:q为质检状态
         ld_i_vltyp       TYPE lqua-lgtyp, "源仓储类型
         ld_i_vlber       TYPE ltap-vlber, "默认为001
         ld_i_vlpla       TYPE lqua-lgpla, "源仓位bin
         ld_i_nltyp       TYPE lqua-lgtyp,  "目标仓储类型
         ld_i_nlber       TYPE ltap-vlber,  "001
         ld_i_nlpla       TYPE lqua-lgpla,  "目标仓位bin
         ld_i_bname       TYPE ltak-bname, "用户名
         ld_i_bwlvs       TYPE ltak-bwlvs, "移动类型999
         ld_i_squit       TYPE rl03a-squit, "自动确认 x
         ld_i_kompl       TYPE rl03a-squit, "默认值为x
         ld_i_commit_work TYPE rl03b-comit, "提交,默认为x
       END OF ty_output.



TYPES: BEGIN OF ty_s_to_input,
         lgnum        TYPE lqua-lgnum,
         bwlvs        TYPE ltak-bwlvs,
         matnr        TYPE lqua-matnr,
         werks        TYPE lqua-werks,
         lgort        TYPE lqua-lgort,
         charg        TYPE lqua-charg,
         best

一、控制要求 1、通过两条传送带进行包裹的输送,在两条传送带之间有一个临时仓库区 (最多存10个包裹)。传送带1将包裹运送至临时仓库区,传送带2将临时仓库 区中的包裹运送至装货场。 2、系统上电,HL2(系统停止指示灯)、HL3(仓库区空指示灯)亮。按下起 动按钮 1,HL1(系统运行指示灯)亮、HL2灭,传送带1起动,M1运行(通过 指示灯模拟)。传送带1靠近仓库区一端安装的行程开关SL1(或接近开关)确 定已有多少包裹运送至仓库区。当仓库中有包裹时,HL3灭,HL4(仓库区不空 指示灯)亮; 3、当仓库区存有包裹达到或超过库存 50%时,仓库门打开(电磁阀 YV1 用电),加到 SL3.打开到位、电磁阀 YV1 断电、传送带2起动,M2低速运行 当仓库区无包裹时M2自动停止。靠近仓库区一端安装的行程开关 SL2(或接近 开关)确定已有多少包裹从库区运送至装货场: 4、显示面板上指示灯显示库存状态:当包裹达到或超过库存 50%且小于 80% 时,指示灯HL5亮;当包裹达到或超过库存80%且小于100%时,指示灯 HL6 需闪烁,HL5灭,,M2高速运行,当包裹少于库存50时,M2转为低速运行; 当包裹达到或超过库存100%时,指示灯 HL7需闪烁,HL6灭,传送带1停止运 行;当HL5、HL6、HL7灭,传送带1自动起动。 5、按下停止按钮,传送带1、2均停止,HL2亮,HL1灭。电磁阀YV2通电, 仓库门关闭,碰到SL4,关闭到位,电磁阀YV2断电;HL3、HL4、 HL5、HL6、HL7 各指示灯根据库存量保持当前状态; 6、急停及故障处理 若按下急停按钮,急停指示灯闪烁,系统马上停止运行,HL2亮,HL1灭。检修 后急停按钮复位,按下系统复位按钮,急停指示灯熄灭,系统才允许重新起动; 若系统出现故障(如M过载,可加1个输入点模拟),系统马上停止运行, 故障指示灯闪烁,HL2亮,HL1 灭。检修后按下系统复位按钮,故障指示灯熄 灭,系统才允许重新起动。
07-02
采用PyQt5框架与Python编程语言构建图书信息管理平台 本项目基于Python编程环境,结合PyQt5图形界面开发库,设计实现了一套完整的图书信息管理解决方案。该系统主要面向图书馆、书店等机构的日常运营需求,通过模块化设计实现了图书信息的标准化管理流程。 系统架构采用典型的三层设计模式,包含数据存储层、业务逻辑层和用户界面层。数据持久化方案支持SQLite轻量级数据库与MySQL企业级数据库的双重配置选项,通过统一的数据库操作接口实现数据存取隔离。在数据建模方面,设计了包含图书基本信息、读者档案、借阅记录等核心数据实体,各实体间通过主外键约束建立关联关系。 核心功能模块包含六大子系统: 1. 图书编目管理:支持国际标准书号、中国图书馆分类法等专业元数据的规范化著录,提供批量导入与单条录入两种数据采集方式 2. 库存动态监控:实时追踪在架数量、借出状态、预约队列等流通指标,设置库存预警阈值自动提醒补货 3. 读者服务管理:建立完整的读者信用评价体系,记录借阅历史与违规行为,实施差异化借阅权限管理 4. 流通业务处理:涵盖借书登记、归还处理、续借申请、逾期计算等标准业务流程,支持射频识别技术设备集成 5. 统计报表生成:按日/月/年周期自动生成流通统计、热门图书排行、读者活跃度等多维度分析图表 6. 系统维护配置:提供用户权限分级管理、数据备份恢复、操作日志审计等管理功能 在技术实现层面,界面设计遵循Material Design设计规范,采用QSS样式表实现视觉定制化。通过信号槽机制实现前后端数据双向绑定,运用多线程处理技术保障界面响应流畅度。数据验证机制包含前端格式校验与后端业务规则双重保障,关键操作均设有二次确认流程。 该系统适用于中小型图书管理场景,通过可扩展的插件架构支持功能模块的灵活组合。开发过程中特别注重代码的可维护性,采用面向对象编程范式实现高内聚低耦合的组件设计,为后续功能迭代奠定技术基础。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值