精华内容
下载资源
问答
  • 仓储管理实务 ppt

    2010-06-10 14:06:07
    第一节 仓储管理的基本概念 第二节 仓储发展历史及趋势 【学习目的】 了解仓储概念;掌握仓储的地位、作用,仓储在物流中的地位;了解仓储的功能;理解仓储管理的原则。 【重点难点 】 重点:仓储的作用、...
  • 关于配送中心仓储管理的研究,物流等专业毕业论文,内容完整,格式正确。
  • 本书注重理论与实践的紧密结合,突出作业流程及其功能的可操作性描述;注重引用最新国家以及有关行业标准,规范仓储操作...同时︌结合现代仓储业大力发展仓储增值服务的趋势,增加了商品包装、流通加工与分拣的内容等。
  • (一)、仓储管理的内容 6 (二)仓储管理的特点 7 (三)仓储服务的功能 8 三、仓储管理的任务* 8 (一)合理规划仓储设施网络 8 (二)合理选择仓储设施设备 9 (三)严格控制商品进出质量 9 (四)认真保管在库商品 9 (五)...
  • 物联网时代迅猛发展,使多元数字化思维与运用也得以丰盈发展,其中,处于信息时代导向性革新时期物联网,汲取了互联网涉范广、高效率等...基于此,本篇针对我国物联网下物流仓储管理进行适时探析,具体内容如下所述。
  • 仓库管理系统是一个企业不可缺少的部分,它的内容对于企业的决策者和管理者来说都至关重要,所以仓库管理系统应该能够为用户提供充足的信息和快捷的查询手段(基于条码技术的现代仓储管理系统设计 ’、。 曾宇容1,王 ...
  • 第九章 仓储管理系统

    2009-10-15 08:42:40
    本章主要内容仓储管理系统构成 仓储管理系统作用与功能 仓储管理系统安装、运行与操作
  • 随着零售、电商等行业不断发展,拆零拣货流程成为了影响物流作业效率关键之一,而RFID智能仓储管理系统出现,真正实现了拆零拣货高效运行。 RFID智能仓储管理系统(又称亮灯拣选系统),被广泛应用于拆零拣货...

    随着零售、电商等行业的不断发展,拆零拣货流程成为了影响物流作业效率的关键之一,而RFID智能仓储管理系统的出现,真正实现了拆零拣货的高效运行。

    RFID智能仓储管理系统(又称亮灯拣选系统),被广泛应用于拆零拣货流程中。每一个电子标签被安装在一个或者多个货位上,其主要功能是通过标签亮灯提示来指引拣货人员快速准确找到货位,并根据标签屏幕上的显示内容准确作业,是一种半自动化的人工辅助系统。这套系统应用在货物种类繁多、不规则、流程多样化的拆零拣货中尤其高效。


    对于一些拆零拣货过程较长且拣货频度较高的作业流程,往往需要四五个人甚至更多人在同一个巷道同时拣货。而电子拣货标签的指示灯并不能同时提示多人,因此无法满足此作业流程的需求。本篇文章将介绍如何使用RFID智能仓储管理系统有效提升多人拆零拣货作业。
    硬件基础:
    首先是硬件设施的安装,每个货位安装一个电子拣货标签,每个电子拣货标签匹配一个超高频RFID读写器,读写器通过每个电子拣货标签的I/O口接入整个系统(图2)。每个拣货人员带有一个智能手环,内置超高频RFID电子标签。每个巷道的起始端配有一个功能标签,这个标签的硬件与其他货位上的标签相同,但其主要作用不是亮灯提示,而是管理拣货任务。具体流程如下。

    RFID智能仓储管理系统具体流程:
    任务登记。
    首先作业人员接到总台任务后,前往指定巷道作业,来到巷道后,先将自己的智能手环在功能标签处登录,此时功能标签会亮灯,亮灯的颜色表示此作业人员的对应颜色。若亮红灯,表示此巷道亮红灯的货位才需要拣货,一共七种颜色,最多七个人可以同时作业。同时,电子拣货标签上的显示屏显示此巷道作业数量、拣货人员姓名、周转箱号、订单号等信息进行核对确认和准备。再次拍击标签提示灯后,开始巷道作业,货位依次亮灯。  
    拣货作业。作业人员根据自己的亮灯颜色寻找货位并拣货。电子拣货标签上将显示货品名称、货品图片、拣货人员姓名和拣货数量.

    其货品名称和图片为防止货位货物放错,拣货人员姓名防止找错货位。在拣货完成后,将智能手环靠近读卡器处,只有ID正确才会灭灯,即错误的人员拣货无法灭灯。灭灯后,显示屏会提示下一个需拣货的货位以及此巷道剩余的任务。若本次拣货完毕后,周转箱满载,需要换下一个周转箱,标签界面会提醒换箱.
    若同时有两人都需要在某一货位拣货,则第二位开始排队,并跳过此货位,下一个拣货货位亮灯。当前一个货位拣货完成后,在标签上会提示回到之前的货位拣货。(图8)当整个巷道作业完成时,最后一个任务标签会显示“此巷道任务完成,请到XX区域触发下一个任务”,作业员到下一个巷道功能标签处登录任务,继续作业。


    RFID智能仓储管理方案采用可以显示文字和图片的彩屏显示电子拣货标签,相比传统只能显示数字的标签更加适合于多人拣货等此类流程较为复杂的作业。通过多方面的提示可以很好地完成任务指示并二次确认,以保证在复杂流程中的准确度和效率。
    RFID智能仓储管理方案效果和优势:
    电子拣货标签与PDA相比,解放了双手,亮灯、中文、图片的清晰引导,降低了作业人员的门槛和作业人员培训的时间和成本。电子拣货标签与RFID的结合,解决了多人同时拣货抢货冲突,拣货效率大幅度提高。
    此方案很好地结合了RFID和电子拣货标签,将多种物联网技术在特定流程中结合产生1+1>2的效果。对于一些成本控制要求比较高的企业,还可以采用扫码+电子拣货标签的方式实现类似效果。此方案将智能手环作为作业人员ID,读卡器作为读取设备,若是采用扫码的方式,可以将条码作为ID,无线扫码枪作为读取设备,实现效果相似。
    高通拣货标签系统,在基本的亮灯提示功能上,不断发展,通过彩屏的信息互动和外设接入,实现各种多样化的作业流程,为行业提供了无限的可能性。在此基础上不断开发新的流程和技术,目前已经与红外传感器、RFID读写器、电子秤等设备结合,开发出智能播种墙、智能拣货车、智能物料称重货架等等,后续将集合百家先进物联网技术,开发更多先进物联网智能设备,造福行业。

    展开全文
  • 基于C#的仓储产品管理与销售系统设计,向洁,黄河,仓库管理及销售系统是一个企业不可缺少的部分,它的内容对于企业的决策者和管理者来说都至关重要, 所以仓库管理及销售系统应该能够
  • 条码应用对产品出入库管理、生产下线量管理、营销客户服务、产品质量追溯、产品外观形象等都有一定提升。经过几年应用总结下来,原来条码应用方面也暴露出一些缺陷与不足,具体体现如下。 原条码需要人工...
    • 概述
      • 项目背景

    A从2008年10月开始在产品包装上启用产品合格证的条码应用,涉及切片、短纤两大类产品。条码的应用对产品的出入库管理、生产下线量管理、营销客户服务、产品质量追溯、产品外观形象等都有一定的提升。经过几年的应用总结下来,原来的条码应用方面也暴露出一些缺陷与不足,具体体现如下。

    1. 原条码需要人工逐包扫描,一车装载几十上百包产品,扫描工作量大,漏扫的概率高。
    2. 原条码扫描方式采用DT-930采集器读取,需要正面贴近条码才能获取条码内容,识别距离非常短,对产品堆放方位有一定要求,完全符合条码扫描要求的堆放现场难以操作,对于堆放中遮挡掉的条码无法采集。
    3. 打印在合格证上的条码易被污染、损坏,导致无法读取。

    上述问题的存在,对A进一步提高产品生产、销售、质量的管理水平有了一定的影响,降低生产、销售、质量信息化管理追求的精细化、及时性、准确性、追溯性的要求及目标。本次产品合格证中的RFID应用项目就是在总结以往条码应用的经验基础上,针对暴露出的问题,采用RFID射频技术,在原条码系统基础上,以最小的成本,设计开发出来的应用系统,在此信息系统的支撑下对公司管理工作水平及现场工作效率都会有一定的提高。

      • 总体目标

    根据目前产品合格证条码的扫描经验和存在的问题,本次RFID项目实施采取“总体设计、分步实施、逐步推广、不断完善”的原则。四个工区统一设计,建立集中的数据库系统,各工区采集RFID信息的客户端独立运行,互不影响。各工区独立发货,发货完成后打印相关单据,各工区保管员只能按照各自的权限发货,当保管员变动工区后可以通过修改用户的配置实现新岗位的发货操作。

    项目先在一个工区试点,基本符合要求后再增加一个工区试点,二个工区试点完成后,在其它2个工区推广实施。项目实施后充分体现对产品管理功能的提升、业务流程的优化、操作方法的精简和工作效率的提高。

     

     

    • 系统架构
      • 设计原则

    产品合格证中的RFID应用系统涉及ERP系统集成开发、固定扫描机中间件开发、手持机中间件开发,这些软件设计数据交互,软件之间的集成,因此本系统的设计和实施将完全基于标准的三层体系结构,为了保证本系统的质量,我们在进行系统的设计、开发、部署和运行管理规划时将遵循如下原则:

    • 系统可靠性

    本系统在设计时将充分考虑项目对可靠性的要求,尤其是保证关键业务的连续不间断运作和对非正常情况的可靠处理。

    • 可扩展性

    系统平台应能方便扩展,以支持有价值的新兴应用。以保证实现大用户量并发处理和高效的访问速度。

    • 开放性

    支持XML、SOAP、Web Service、LDAP等当前受到普遍支持的开放标准,这就保证了本系统能够与其它平台的应用系统、数据库等相互交换数据并进行应用级的互操作和互连性。

      • 总体架构

    根据我们的项目背景、需求及总体目标,RFID应用项目要实现与ERP系统的无缝集成、与条码采集器数据集成、条码的透明打印,项目涉及系统众多,主要有:SAP系统、RFID在线采集系统、手持式RFID采集器系统、条码打印软件。我们主要采用.net Framework开发台式计算机RFID发货系统和手持式读写器的WinCE系统上的离线扫描系统,SAP ABAP技术开发RFID发货系统和SAP的数据交换,及时将已经出库的产品的条码信息返回到SAP系统中。其总体架构如下图:

     

     

     

      • 系统实现的体系架构优点

    采用基于.Net Framework3.5 技术平台的总体架构,进行增强开发,具有如下优点:不需要其它的外挂条码软件系统,减少了多个系统间的集成;降低了操作复杂性和重复工作,具有更好的性能、集成性和安全性。

    • 技术路线及难点
      • 技术路线

    产品RFID发货系统是独立运行的系统,系统是使用C#语言在VS2008集成开发工具上开发的C/S架构的应用系统。使用了四个关键技术,第一,通过NCO3.0控件调用SAP的RFC访问SAP系统,读取交货单等信息,将扫描到条码信息与配货信息加工后回写到SAP系统中。第二,英频杰的Impinj1.0控件访问Speedway读写器获取RFID条码信息。第三,使用Dev Express11.0控件展示数据。第四,BarTender10条码打印技术。BarTender软件是企业级条码条码标签及RFID生成打印软件,条码标签清晰,不变形,标签设计功能强大简单易用,BarTender根据文本文件中的数据,直接驱动打印及打印标签,条码打印与设备无关。

      • 技术难点
    1. RFID标签数据获取

    RFID读写器使用的是英频杰的Speedway读写器,读写器的资料较少,厂商只提供给合作伙伴。以前没有开发过类似的产品,需要从头学习RFID的知识和读写器的基本资料。针对我们的应用在Impinj1.0的动态连接库中已经提供了基本读写功能,简化的我们对串口的接口的开发,缩短了开发的进程。我们还需要解决两个问题:第一,从读写器收到的数据为16进制码,需要我们根据16进制串解析出正确的条码信息。第二,如何过滤出有效条码信息。读写器在不停的工作,会将工作区内的所有RFID标签信息全部接收,这导致会有大量的重复数据。例如:读写器20毫秒采样一次,第一个采样周期,会采集所有标签数据。第二个采样周期,还会采集所有的在工作区内的标签数据,两次采集的数据只有少量变化,需要过滤掉重复数据,保留有效数据,每秒有50个采集周期,每辆车通过扫描区需要20秒时间,有1000个采样周期,最高时16万条记录在半分钟的时内处理完成。我们成功的解决了这一问题。

    1. 无人值量守扫描

    正常情况是读写器是待机状态,车辆通过扫描区前,人员启动读写器进入扫描状态。完成扫描后,人工触发停止事件,程序处理标签数据,处理完成后存入数据库。现在,由于车辆扫描点和发货班较远,没有人员操作扫描程序,需要计算机自动识别出车辆和有效的数据,并且自动判断扫描完成后存数据库。我们通过随车RFID卡和车辆的合理间隔解决了这一问题。

    1. 条码的分配算法

    条码获取后要分配到相应的交货单上,这些条码数据才有意义。条码的扫描数据分配到交货单的最直观的方法是保管员手工分配,但是由于每车都有上百包的产品,手工分配不能满足现场的工作需求。所以只能通过计算机的自动分配,保管员确认的方法。条码分配的算法难在分支太多不利于验证。简单分一下就有四种情况:一单一批、一单多批、多单一批、多单多批这四个情况。这是正确装车和正确扫描的情况,如果产品装错了一种情况就翻一倍变成八种情况。如果再有批次不一致,判断情况以翻一倍变成16种情况。这是可以预见的常见情况,还有不常见的情况。如何分析归纳出这些算法的共同点,找出其中的规律,用有限的几种算法满足绝大多数情况,其余的部分用一个特殊的算法统一处理。我们目前用了两个算法解决了这一问题。解决方案的缺点是算法过于复杂,读懂程序需要大量的时间,不利于日后的维护。

    1. 手持机的开发

    手持机的软件开发也是一个应用开发的难点,手持机是嵌入式系统,不同于普通的台式计算机软件可以直接在计算机中进行测试,嵌入式系统需要在仿真终端上进行测试。结合本项目的应用的具体情况,我们使用了WinCE平台,与Windows平台有良好的兼容性,界面友好,支持VS2008集成开发工具,便于项目运行期的维护支持工作。

     

    • 主要功能

    A产品条码系统软件实现的主要功能有主数据维护、条码维护、产品入库、扫描出库、报表查询、手持机软件和无线条码功能.。根据业务流程和运行环境,可以分为五个相对独立的功能。

    第一,RFID标签打印:制作RFID合格证标签模板,使用RFID专用打印机,生成RFID芯片中存储条码信息的产品合格证。

    第二,SAP端接口:开发SAP与仪化RFID发货系统接口,具有下载SAP端相关主数据、下载SAP端未清提单、上载RFID发货端扫描明细等功能。

    第三,仪化RFID发货系统:作为整个应用的中心部分,具有扫描信息的管理功能,同时也是各个模块部分信息流转的中心节点。具体功能如下:

    操作用户管理:操作用户的增删改、系统信息配置、部门工作区域维护、SAP登录配置等。

    发货处理:未清提单的下载、配货、获取扫描数据等。

    提单处理:扫描结果的复核、扫描结果上载SAP、交货扫描异常处理等。

    查询功能:查询已完成扫描提单情况、查询可用随车卡、查询待扫描配货、打印交货明细。

    主数据维护:工厂、库存地、生产线类别、装运点、装载组、成品组等下载维护。

    系统管理员:用户管理、系统配置、权限配置、工区维护、SAP连接配置、固定读写器配置。

    固定读写器扫描中间件:无需人工操作,自动采集记录产品发货RFID标签中条码信息,                                                                                                                                                                                                                             提供给仪化RFID发货系统处理。

    第四,手持终端扫描模块,在手持机RFID读写器上开发满足仪化RFID发货需求的应用。

    用户管理:从RFID发货系统中下载同步操作用户信息。

    交货下载:从RFID发货系统中下载已完成配货,需要扫描发货的交货单信息。

    有单扫描:对已下载交货单,进行产品RFID标签扫描,获取条码信息。

    无单扫描:在某些情况下,产品装运时还未生成提单(交货单),可使用此功能输入随车卡号、批次号、物码、待发包数进行RFID扫描,并保存相关扫描条码信息,待RFID发货系统中生成交货单后, 传输到仪化RFID发货系统中,提供扫描明细。

    扫描数据上载:扫描获取的条码明细等信息,通过无线网络方式上载到RFID发货系统中。

    手持机接口:下载已配货交货单、上载扫描明细。

    第五,Web Service

    用户下载:从RFID发货系统中下载用户列表。

    下载订单:从RFID发货系统下载已经配过货的外向交货单信息。

    上传数据:将扫描信息上传到RFID发货系统中。

     

     

    • 实施范围

    产品条码系统的实施范围包括:短纤一部、短纤二部及物流中心。短纤一部、短纤二部条码打印,物流中心通过产品条码系统扫描发货,条码回传SAP,打印随车条码单等功能都已上线启用,具体上线时间及使用情况如下:

     

    条码打印

    出库扫描

    备注

    短纤一装置

    已上线

    --

    2014.5

    短纤二装置

    已上线

    --

    2013.10

    物流一工区

     

    已上线

    2014.5

    物流二工区

     

    已上线

    2013.10

     

    • 总结

    通过本项目的实施,成功地解决了前期条码试点项目问题和弊端,将条码扫描后上载到ERP系统中,实现了产品条码生命周期的全过程管理功能。本项目也是ERP深化应用的一个典型案例,目前中石化其它企业也有类似的需求,此项目具有在中石化其它企业推广价值。

    展开全文
  • A5下载站向大家推荐一款适用于制造企业内部仓库管理的软件——Free仓储管理系统。Free仓储管理系统基于网络部署,拥有出入库、库存管理、报表、基础数据等通用功能,能够实现多用户,多仓库管理,实现业务数据单据化...
  • 在实习单位实际生产生活中,条码应用对产品出入库管理、生产下线量管理、营销客户服务、产品质量追溯、产品外观形象等都有一定提升。然而原来条码应用方面也暴露出一些缺陷与不足,具体体现如下。 1.原...
    • 实习目的

    在实习单位的实际生产生活中,条码的应用对产品的出入库管理、生产下线量管理、营销客户服务、产品质量追溯、产品外观形象等都有一定的提升。然而原来的条码应用方面也暴露出一些缺陷与不足,具体体现如下。

    1.原条码需要人工逐包扫描,一车装载几十上百包产品,扫描工作量大,漏扫的概率高。

    2.原条码扫描方式采用DT-930采集器读取,需要正面贴近条码才能获取条码内容,识别距离非常短,对产品堆放方位有一定要求,完全符合条码扫描要求的堆放现场难以操作,对于堆放中遮挡掉的条码无法采集。

    3.打印在合格证上的条码易被污染、损坏,导致无法读取。

    上述问题的存在,对实习单位进一步提高产品生产、销售、质量的管理水平有了一定的影响,降低生产、销售、质量信息化管理追求的精细化、及时性、准确性、追溯性的要求及目标。本次产品合格证中的RFID应用项目就是在总结以往条码应用的经验基础上,针对暴露出的问题,采用RFID射频技术,在原条码系统基础上,以最小的成本,设计开发出来的应用系统,在此信息系统的支撑下对公司管理工作水平及现场工作效率都会有一定的提高。

    本次实习为提升实习单位生产生活中的产品管理水平,通过java技术结合RFID射频技术,实现产品发货流程的信息化管理。

    • 实习内容

    (一)项目介绍

    (1)项目概述

    本项目中,实现了一个基于RFID射频技术的发货系统,该系统分为三部分,分别为带有RFID读写模块的树莓派开发板,java客户端和Web客户端。客户可以通过Web客户端进行订单的管理,仓库操作管理员可以通过java端驱动RFID读写进行货物的管理以及订单批次的分配,系统管理员可以java客户端完成权限管理。

    (2)数据库介绍

    1. 用户表 user

    表名:user

    字段名

    字段类型

    备注

    user_id

    INT

    主键,自增

    user_name

    VARCHAR(40)

    用户名称

    user_email

    VARCHAR(40)

    用户邮箱

    user_password

    VARCHAR(40)

    用户密码

    user_permission

    VARCHAR(40)

    用户权限

    user_type

    INT

    用户类型

    备注:对于客户,使用邮箱作为账号进行登录,对于员工,可以使用id进行登录。用户权限为一串“0”或“1”组成的字符串,如果第k位上为1,代表这个用户具有第k个功能的权限。用户类型,0为系统管理员,1为操作管理员,2为用户。

     

    2. 订单表 order

    表名:od

    字段名

    字段类型

    备注

    od_id

    INT

    主键,自增

    od_date

    DATE

    订单最后修改时间

    od_status

    INT

    订单状态

    od_userId

    INT

    外键,订单所属用户的编号

    备注:订单状态为0或1,0代表未提货,1代表已提货。

     

    3. 商品表 goods

    表名:goods

    字段名

    字段类型

    备注

    goods_id

    INT

    主键,自增

    goods_name

    VARCHAR(40)

    商品名称

    goods_price

    DOUBLE

    商品价格

     

    4. 订单内容表ordered_goods

    表名:og

    字段名

    字段类型

    备注

    og_id

    INT

    主键,自增

    og_orderId

    INT

    外键,订单的编号

    og_goodsId

    INT

    外键,商品的编号

    og_number

    INT

    订货的数量

     

    5. 批次表 batch

    表名: batch

    字段名

    字段类型

    备注

    batch_id

    INT

    主键,自增

    batch_goodsId

    INT

    外键,生产的商品的编号

    batch_number

    INT

    本批次生产的商品数量

     

    6. 仓库表 warehouse

    表名:wh

    字段名

    字段类型

    备注

    wh_id

    INT

    仓库编号

    wh_name

    VARCHAR(40)

    仓库名称

    wh_location

    VARCHAR(40)

    仓库地点

     

    7. 提货单 pick up

    表名: pu

    字段名

    字段类型

    备注

    pu_id

    INT

    主键,自增

    pu_date

    DATE

    提货时间

    pu_van

    VARCHAR(40)

    提货的车牌号

     

    8. 货物表 product

    表名:product

    字段名

    字段类型

    备注

    product_id

    INT

    一批中的物号

    product_batchId

    INT

    外键,所属批次号

    product_whId

    INT

    外键,所属仓库的编号

    product_status

    INT

    货物状态

    product_puId

    INT

    外键,所属提货单的编号

     

    9. 订单-提货表 order - pick up

    表名:op

    字段名

    字段类型

    备注

    op_id

    INT

    主键,自增

    op_orderId

    INT

    外键,订单编号

    op_puId

    INT

    外键,提货单编号

     

    (3)数据流图

     

    (4)用例图分析

    1. 用户管理模块

     

     
       

    2. 订单管理模块

     

     
       

    3. 仓储管理模块

     

     
       

    4. 发货系统

     

     
       

    (二)生产过程认知

    在生产过程中,由于RFID技术的部分限制,有以下几个技术难点:

    (1)RFID标签数据获取

    第一,从读写器收到的数据为16进制码,需要根据16进制解析出正确的条码信息。第二,如何过滤出有效条码信息。读写器在不停的工作,会将工作区内所有的RFID标签信息全部接收,这导致会有大量的重复数据。例如:读写器20毫秒采样一次,第一个采样周期,会采集所有标签数据。第二个采样周期,还会采集所有的在工作区内的标签数据,两次采集的数据只有少量变化,需要过滤掉重复数据,保留有效数据,每秒有50个采集周期,每辆车通过扫描区需要20秒时间,有1000个采样周期,最高时16万条记录在半分钟的时内处理完成。

    (2)无人值量守扫描

    正常情况是读写器是待机状态,车辆通过扫描区前,人员启动读写器进入扫描状态。完成扫描后,人工触发停止事件,程序处理标签数据,处理完成后存入数据库。现在,由于车辆扫描点和发货班较远,没有人员操作扫描程序,需要计算机自动识别出车辆和有效的数据,并且自动判断扫描完成后存数据库。我们通过随车RFID卡和车辆的合理间隔解决了这一问题。

    (3)条码的分配算法

    条码获取后要分配到相应的交货单上,这些条码数据才有意义。条码的扫描数据分配到交货单的最直观的方法是保管员手工分配,但是由于每车都有上百包的产品,手工分配不能满足现场的工作需求。所以只能通过计算机的自动分配,保管员确认的方法。条码分配的算法难在分支太多不利于验证。简单分一下就有四种情况:一单一批、一单多批、多单一批、多单多批这四个情况。这是正确装车和正确扫描的情况,如果产品装错了一种情况就翻一倍变成八种情况。如果再有批次不一致,判断情况以翻一倍变成16种情况。这是可以预见的常见情况,还有不常见的情况。如何分析归纳出这些算法的共同点,找出其中的规律,用有限的几种算法满足绝大多数情况,其余的部分用一个特殊的算法统一处理。我们目前用了两个算法解决了这一问题。解决方案的缺点是算法过于复杂,读懂程序需要大量的时间,不利于日后的维护。

    (三)负责内容介绍

    本人负责java端的开发,在java客户端中,我开发了以下几个模块:用户管理模块、批次录入模块、货物查看模块、仓储管理模块、订单分派模块。以下是各模块的简单介绍:

    (1)用户管理模块

    系统管理员可以访问此模块,并查看所有用户基本信息,同时可以在点击某用户后,查看其各功能权限,点击“开始修改”按钮后,即可通过权限对应的开关来设置该用户的权限,点击“提交”后,修改将生效。

    (2)批次录入模块

    在本模块中,操作管理员对于新生成出来的一批货物,先选择该货物类型,完成选择后,输入该批货物的数量,随后将通过RFID读写器逐次写入RFID标签并将货物信息录入到数据库中,RFID标签需要贴在货物上。

    (3)货物查看模块

    在本模块中,操作管理员可以通过RFID读写器,读取货物上的RFID标签信息,此时程序将显示该货物的具体信息以及其二维码,该图片可以进行下载和打印。

    (4)仓储管理模块

    在该模块中,操作管理员可以在选择“入库”和“出库”之后,点击批量扫描,程序将驱动RFID读写器进行批量读取,在完成读取后,若是入库操作,需要选择某一个仓库进行批次录入,如果是出库操作可以直接点击“提交”完成出库。

    (5)订单分配模块

    在该模块中,操作管理员首先需要选择某一订单,随后通过刷取该订单客户的客户权限卡进行授权,授权完毕后可以看到订单的具体内容,并进行批次的分配,分配完批次后,可以通过点击“开始检验”按钮跳转至检验界面,在该界面中,通过扫描所有车上的RFID标签获取该车次所载的货物,并进行比对,如果比对有问题将弹出警告。

    (四)完成情况介绍

    (1)登录注册界面

     

    (2)用户权限管理界面

     

    (3)批次录入界面

     

    (4)货物查看界面

     

    (5)仓储管理界面

     

    (6)订单分配界面

     

    (7)实物展示

    三、个人总结

    在本次毕业实习中,最大的收获是了解了完整的项目过程,从需求分析到编码,到最后的测试。在项目进行过程中,也碰到了许多问题,例如RFID标签读写模块的代码编写,由于本专业不涉及硬件方面知识,对于RFID射频技术的应用,是从完全不了解到能够使用,能够将其应用,这个过程锻炼了我的自我学习能力。在java客户端的编码中,首次尝试了广泛应用于生产生活中的软件三层架构,体验了软件最佳实践对编码效率以及后期维护的提升,这种降低各模块之间耦合度的编程思想极大得降低了我后期测试时对代码的修改难度,因为各模块之间已约定了数据传输的各类格式,对小模块的修改不会影响其他模块,这让代码的健壮性更加强。

    展开全文
  • 小型宿舍文件仓储管理系统(Java语言),附带源代码与论文,具体内容详见我博客https://blog.csdn.net/qq_45681057/article/details/108829889
  • 一库仓储:第一便捷开源仓储软件,基于 HTML5 ,便捷企业仓储管理软件。 适合库存品类在 3000 以内中小企业。界面非常简单 出入库、库存、明细、设置,无需配置品类,直接使用。 要求 html5 浏览器支持,因为...
  • 管理的存储库提供材料以提供有关各种 Microsoft Azure 解决方案体系结构主题的会话,例如基础结构即服务功能、支持物联网场景的服务、大数据等等。 会议内容至少包含带有完整演讲者笔记的 PowerPoint 演示文稿。 ...
  • think仓储管理系统v1.2.0 Build 120414更新内容 1、增加用首页统计图表、用户安装向导、表前缀、备份下载、查询提示 2、优化业务流程、使用操作及界面、登录提示、权限验证 3、修复查询 4、修正120413登录bug
  • 吉特仓储管理系统git — the stupid content tracker git —愚蠢的内容跟踪器 Git has a lot to offer, sometimes is overwhelming, for that reason it’s good to have a practical approach and explanations ...

    吉特仓储管理系统

    git — the stupid content tracker

    git —愚蠢的内容跟踪器

    Git has a lot to offer, sometimes is overwhelming, for that reason it’s good to have a practical approach and explanations along the way to grasp the essentials of this magnificent tool.

    Git提供了很多功能,有时会让人不知所措,因此,在掌握这一强大工具的本质的过程中,最好有一个实用的方法和解释。

    This is the first part of a series of articles to introduce you to Git and then to level up your working development workflow using git.

    这是系列文章的第一部分,向您介绍Git,然后使用git升级您的工作开发流程。

    Content.

    内容。

    • Git history (brief).

      Git历史(简要)。
    • Git workflow.

      Git工作流程。
    • Hands-on Git.

      动手Git。

    git历史(简要) (Git history (brief))

    git — the stupid content tracker

    git —愚蠢的内容跟踪器

    man page

    手册页

    问题 (The problem)

    A software is a piece of code that grows, in every new feature added a tag is placed in it and you get new versions. Eventually, the owner needs to share that code and allow contributions from other people to make that software better (or worst…). How to achieve this? for the first part, the answer is: Version Control System (VCS) to track the changes. For the second part we have two possible answers:

    软件是一段不断增长的代码,在每一项新功能中,都会在其中添加标签,从而获得新版本。 最终,所有者需要共享该代码并允许其他人做出贡献,以使该软件更好(或更糟)。 如何实现呢? 对于第一部分,答案是:版本控制系统(VCS)来跟踪更改。 对于第二部分,我们有两个可能的答案:

    • having a centralized system that keeps track of all the changes in your code.

      有一个集中的系统来跟踪代码中的所有更改。
    • having a distributed system where all the code is shared among contributors that work merging changes.

      具有一个分布式系统,其中所有代码都在进行合并更改的贡献者之间共享。

    So, what Git is? is a Distributed Version Control System

    那么,什么是Git? 是一个分布式版本控制系统

    历史简介 (Brief History)

    In April 2005, Linus Torvalds was working on the 2.6.12 version of his Linux operating system, not pleased with the current VCS available in the market to help him manage his code (BitKeeper as the main one), he decided that he needed to create it’s own to keep track of changes of the Linux core. This system had to be:

    2005年4月,Linus Torvalds正在开发他的Linux操作系统的2.6.12版本,对市场上现有的VCS帮助他管理代码(BitKeeper是主要代码)感到不满意,他决定需要创建它自己来跟踪Linux内核的变化。 该系统必须是:

    • Distributed

      分散式
    • Fast

      快速
    • Reliable

      可靠

    And… he did it. Git was created. Since then it has been growing almost universally to manage version control and team contributions.

    而且……他做到了。 吉特 已创建。 从那以后,它几乎普遍地用于管理版本控制和团队贡献。

    For the sake of brevity, these are the main things to know.

    为了简洁起见,这些是要了解的主要内容。

    Git,工作流程 (Git, workflow)

    So, how does git works? There are key concepts surrounding Git.

    那么,git是如何工作的呢? 有关Git的关键概念。

    Our files live in three areas or states, those are:

    我们的文件位于以下三个区域或州:

    • Untracked or modified.

      未经跟踪或修改。
    • Staging area.

      暂存区。
    • Committed.

      致力于。

    Whenever we want to commit our changes on certain files we add those files to the staging area and then commit them. Once committed all your changes are saved in the Git history, so whatever you do you can come back to that point later if you need it.

    每当我们要对某些文件提交更改时,我们都会这些文件添加暂存区 ,然后提交 。 提交后,所有更改都将保存在Git历史记录中,因此无论您做什么,以后都可以返回到该点。

    场景: (Scenario:)

    1. You are starting working in a project and you want to keep track of changes in your code, so what you do is creating a local repository and add your code to that repository. (git init).

      您开始在项目中工作,并且想要跟踪代码中的更改,因此您要做的是创建本地存储库 并将代码添加到该存储库。 ( git init )。

    2. The second thing you want is to select the files that you want to keep track of and add them to the staging area for committing them later. (git add [file, ])

      您需要做的第二件事是选择要跟踪的文件,并将它们添加到暂存区中,以便以后提交。 ( git add [file,] )

    3. Finally, after adding all the file that you changed you need to commit your work to create a commit in your Git history. (git commit -m “Initial commit”).

      最后,在添加了所有更改的文件之后,您需要提交工作以在Git历史记录中创建提交 。 ( git commit -m“初始提交” )。

    Image for post
    https://sespinoza.me/files/images/git_areas.pnghttps://sespinoza.me/files/images/git_areas.png

    Up to this point, there is only one commit in Git history. This history is saved in the form of a tree, in this case, there is only one node. This node is the starting point of a mainline of development (branch) that is being tracked by default, that is called the “master branch”.

    到目前为止,Git历史记录中只有一次提交。 此历史记录以树的形式保存,在这种情况下,只有一个节点。 该节点是默认情况下要跟踪的开发主线( 分支 )的起点,称为“ 主分支 ”。

    动手Git (Hands-on Git)

    初始配置 (Initial configuration)

    Open a terminal.

    打开一个终端。

    Install git first.

    首先安装git。

    $ sudo apt install git-all

    Let us tell git who we are so our signature is in all our commits.

    让我们告诉git我们是谁,以便我们的签名包含在所有提交中。

    $ git config — global user.name “Your Name”$ git config — global user.email “youremail@yourdomain.com”

    Great! now the basics.

    大! 现在的基础知识。

    基本 (Basics)

    创建本地存储库 (Create a local repository)

    In a project create a Git repository using git init.

    在项目中,使用git init创建一个Git存储库。

    $ mkdir awesome-project && cd awesome-project$ git initInitialized empty Git repository in /home/user/awesome-project/.git/

    Congratulations! you have created your first repository. You can actually see it… in the .git folder. If by any reason you want to get rid of it you just have to delete that folder (rm -rf .git).

    恭喜你! 您已经创建了第一个存储库。 您实际上可以在.git文件夹中看到它。 如果出于某种原因想要删除它,则只需删除该文件夹( rm -rf .git )。

    $ ls -a. .. .git

    At this point there is nothing in your history, you can check it out with git status.

    此时,您的历史记录中没有任何内容,您可以使用git status进行检查。

    $ git statusOn branch masterNo commits yetnothing to commit (create/copy files and use “git add” to track)

    As you can see you are in the master branch. Let us create two files, put something on them and then make our first commit:

    如您所见,您在master分支中 。 让我们创建两个文件,在它们上放一些东西,然后进行第一次提交:

    $ echo "console.log('hello')" > hello.js$ echo "console.log('hello')" > world.js$ cat hello.jsconsole.log('hello')

    If we check the status again we will see that our files are not being tracked yet.

    如果我们再次检查状态,将会看到文件尚未被跟踪。

    $ git statusOn branch masterNo commits yetUntracked files:(use "git add <file>…" to include in what will be committed)hello.jsworld.jsnothing added to commit but untracked files present (use “git add” to track)

    暂存文件 (Staging your files)

    Git is telling us is not tracking those files. Let us add only one of them to the staging area and check the status once more.

    Git告诉我们没有跟踪这些文件。 让我们仅将其中一个添加到登台区域,然后再次检查状态。

    $ git add hello.js$ git statusOn branch masterNo commits yetChanges to be committed:(use "git rm — cached <file>…" to unstage)    new file: hello.jsUntracked files:(use "git add <file>…" to include in what will be committed)    world.js

    Perfect, not we are ready for committing index.js to the Git history.

    完美,不是我们准备将index.js提交到Git历史记录。

    承诺 (Commiting)

    As you can see now hello.js is in the staging area about to be committed and world.js is being untracked. Now, let us commit the hello.js file and add it to the git history.

    如您所见, hello.js处于即将提交的登台区域中 ,并且world.js未被跟踪。 现在,让我们提交 hello.js文件并将其添加到git历史记录中。

    $ git commit -m “Initial commit, add hello.js”[master (root-commit) 15008ea] Initial commit, add hello.js1 file changed, 1 insertion(+)create mode 100644 hello.js$ git statusOn branch masterUntracked files:(use "git add <file>…" to include in what will be committed)   world.jsnothing added to commit but untracked files present (use "git add" to track)

    Congratulations, your first commit! The -m option is short for --message=<msg> to add a message while committing.

    恭喜,您第一次提交! -m选项是--message=<msg>在提交时添加消息的缩写。

    As you can see the file hello.js is not seen anymore when running git status, this is because has already been committed. We can check the Git history using git log.

    如您所见,运行git status时不再显示文件hello.js ,这是因为已提交。 我们可以使用git log查看Git历史记录

    $ git logcommit 15008ea3f281f95a4b3649e7383eb0334565b415 (HEAD -> master)Author: sespinoza <espinoza.jimenez@gmail.com>Date: Tue Aug 4 21:22:07 2020 -0400Initial commit, add hello.js

    And there it is, our commit. Here you see plenty of information related to that commit: Hash, Author, Date of commit and the Git message. The hash is an identifier of a commit and with it, you can come back to that state of your code whenever you need to, using the HEAD pointer.

    这就是我们的承诺 。 在这里,您可以看到与该提交相关的大量信息:哈希,作者,提交日期和Git消息。 哈希是提交的标识符,有了它,您可以在任何需要的时候使用HEAD指针返回到该代码状态。

    HEAD指针 (HEAD pointer)

    To explain what (HEAD -> master) means you have to understand how git saves history. It uses a tree structure, where every commit is a node. Let us add another commit and check how our history would look like.

    要解释什么(HEAD-> master)意味着您必须了解git如何保存历史记录。 它使用树结构,其中每个提交都是一个节点。 让我们添加另一个提交,并检查我们的历史记录。

    $ echo "console.log('la la la')" >> hello.js$ cat hello.jsconsole.log('hello')console.log('la la la')$ git statusOn branch masterChanges not staged for commit:(use "git add <file>…" to update what will be committed)(use "git checkout — <file>…" to discard changes in working directory)modified: hello.jsUntracked files:(use "git add <file>…" to include in what will be committed)world.jsno changes added to commit (use “git add” and/or “git commit -a”)$ git add hello.js$ git commit -m "[Update] index.js add another console log"[master f99f2fe] [Update] index.js add another console log1 file changed, 1 insertion(+)$ git logcommit f99f2fe2a3a4c783c6658a591cf69903666bca17 (HEAD -> master)Author: sespinoza <espinoza.jimenez@gmail.com>Date: Tue Aug 4 22:02:37 2020 -0400[Update] index.js add another console logcommit 15008ea3f281f95a4b3649e7383eb0334565b415Author: sespinoza <espinoza.jimenez@gmail.com>Date: Tue Aug 4 21:22:07 2020 -0400Initial commit, add hello.js

    Here we have two commits already, and our tree looks like the following diagram.

    在这里,我们已经有两个提交,并且我们的树如下图所示。

    Image for post
    https://sespinoza.me/files/images/git_history_two_commits.pnghttps://sespinoza.me/files/images/git_history_two_commits.png

    Here

    这里

    HEAD is an alias for the tip of the current branch

    HEAD是当前分支尖端的别名

    And you can see where is pointing using git branch.

    您可以使用git branch查看指向的位置。

    $ git branch* master

    Here HEAD is pointing to the master branch. Also, you can see what HEAD actually looks like:

    HEAD在这里指向master分支。 此外,您可以看到HEAD的实际外观:

    $ cat .git/HEADref: refs/heads/master

    To show you a little how it works, we can go back in time in the Git history and see our first commit by passing the hash of the commit to the checkout option.

    为了向您展示它的工作原理,我们可以回顾Git历史,并通过将提交的哈希值传递给checkout选项来查看我们的第一次提交。

    (master)$ git checkout 15008ea3f281f95a4b3649e7383eb0334565b415Note: checking out ‘15008ea3f281f95a4b3649e7383eb0334565b415’.You are in ‘detached HEAD’ state. You can look around, make experimentalchanges and commit them, and you can discard any commits you make in thisstate without impacting any branches by performing another checkout.If you want to create a new branch to retain commits you to create, you maydo so (now or later) by using -b with the checkout command again. Example:git checkout -b <new-branch-name>HEAD is now at 15008ea Initial commit, add hello.js((HEAD detached at 15008ea))$ cat hello.jsconsole.log('hello')

    The checkout command helps us to navigate through commits. We now see that HEAD is pointing to the first commit, so now our file only has the first change that we did, that is console.log(‘hello’).

    checkout命令可帮助我们浏览提交。 现在我们看到HEAD指向第一个提交,所以现在我们的文件仅具有我们所做的第一个更改,即console.log('hello')

    Image for post
    https://sespinoza.me/files/images/git_history_two_commits_point_to_first_commit.pnghttps://sespinoza.me/files/images/git_history_two_commits_point_to_first_commit.png

    We can come back to the latest state by referring to the branch.

    通过引用分支,我们可以返回到最新状态。

    $ git checkout masterPrevious HEAD position was 15008ea Initial commit, add hello.jsSwitched to branch ‘master’

    To end this article we’ll see how to undo the last commit keeping the changes in our working directory and also the option of removing the commit and the changes from our working directory.

    在本文的结尾,我们将看到如何撤消上一次提交,以将更改保存在工作目录中,以及从工作目录中删除提交和更改的选项。

    撤消上一次提交—软 (Undo the last commit — soft)

    If you want to remove the last commit but keep those changes in your working directory use:

    如果要删除最后的提交但将这些更改保留在工作目录中,请使用:

    $ git reset — soft HEAD¹$ git statusOn branch masterChanges to be committed:(use “git reset HEAD <file>…” to unstage)modified: hello.jsUntracked files:(use “git add <file>…” to include in what will be committed)world.js

    As you can see your files of the last commit are now in your staging area, you can edit your file now and commit again later. Here HEAD^1 makes a reference to the immediate “parent” of the current commit. The current commit is the last commit, so here we are telling git “go and reset everything until the previous commit”.

    正如您所看到的,上一次提交的文件现在位于暂存区中,您可以立即编辑文件并稍后再次提交。 在这里, HEAD^1引用了当前提交的直接“父”。 当前的提交是最后的提交,因此在这里我们告诉git“去并重置所有内容,直到上一次提交”。

    撤消上一次提交-很难 (Undo the last commit — hard)

    If you want to get rid of the last commit and all the changes introduced in the last commit.

    如果要摆脱上一次提交以及上一次提交中引入的所有更改。

    $ git reset — hard HEAD^1HEAD is now at 15008ea Initial commit, add hello.js$ git statusOn branch masterUntracked files:(use “git add <file>…” to include in what will be committed)world.jsnothing added to commit but untracked files present (use “git add” to track)$ cat hello.jsconsole.log(‘hello’)

    Using--hard removes the las commit and it’s changes and place HEAD pointing to the first commit.

    使用--hard删除las提交并进行更改,并将HEAD指向第一个提交。

    That’s it for this Article, in the next one I’ll talk about how to make better Git commit messages, the workflow for a single developer and more. I hope this helped you understanding and using git better.

    这就是本文的内容,在下一篇文章中,我将讨论如何制作更好的Git提交消息,单个开发人员的工作流程等等。 我希望这可以帮助您更好地理解和使用git。

    关于我 (About me)

    I’m a Software Engineer, writer, tech enthusiast, pianist, origami lover, amateur photographer. In my spare time, I go trekking, play the piano and learn history.

    我是一名软件工程师,作家,技术爱好者,钢琴家,折纸爱好者,业余摄影师。 在业余时间,我会徒步旅行,弹钢琴和学习历史。

    My tech: JavaScript, Node.js, React, Ruby, Crystal, Bash, Docker.

    我的技术:JavaScript,Node.js,React,Ruby,Crystal,Bash,Docker。

    You can follow me on Twitter, LinkedIn or visit my page to contact me.

    您可以在TwitterLinkedIn上关注我,或访问我的页面与联系。

    Originally posted in: sespinoza.me

    最初发布于: sespinoza.me

    翻译自: https://medium.com/swlh/git-a-simple-introduction-29d74c40161

    吉特仓储管理系统

    展开全文
  • 仓储管理系统是一种十分典型的信息管理系统,其所涉及到的内容主要包括后台数据库的建立和维护以及前端应用程序的设计与实现这两个方面。对于前者要求建立起数据一致性和完整性强、数据完好性好的数据库,而对于后者...
  • 仓储管理广泛应用于各个行业,设计及建立整套的仓储管理流程,提高仓储周转率,减少运营资金占用,使冻结资产变成现金,减少由于仓储淘汰所造成成本,是为企业提高生产效率重要环节。 市场竞争日益激烈...
  • 企业想要完成正轨的运营并且做大做强更重要...随着优质放心的wms仓库管理系统的普遍应用和技术的深化,一系列大型化的企业也会选择该种系统来处理后勤的难题,而客户在选择WMS仓储管理系统时也需求看更多方面的内容...
  • 内容索引:C#源码,数据库应用,仓库管理 仓储物资管理系统毕业论文(含数据库),基于VS2008,内含毕业论文设计论文,本系统使用说明,技术文档等,不错系统。
  • java管理系统源码很棒分析 一个很棒分析平台、资源和其他很棒精选列表。 灵感来自 . 随时欢迎您反馈和贡献! 由 & 维护 一般分析 - 带有热图、会话记录、A/B 测试等自托管 Web 分析。 :copyright: Self-...
  • 仓储管理系统是一种十分典型的信息管理系统,其所涉及到的内容主要包括后台数据库的建立和维护以及前端应用程序的设计与实现这两个方面。对于前者要求建立起数据一致性和完整性强、数据完好性好的数据库,而对于后者...
  • 一、前言 Odoo是世界排名第一免费开源ERP类软件,Odoo在2002年发布了第一个版本,到今天,近20年里形成了一个庞大企业应用生态圈。...在Odoo里,仓库管理可以分成两块内容,一块是库存管理,也叫库存计划,还有.
  • 随书附赠的光盘:内容细化了企业仓储部门的各岗位以及每一工作事项,给出了具体的职责、制度、表格、流程和方案,是一本关于仓储部规范化管理的 实务工具书和规范化管理工作手册。  全书对物资验收管理、物资入库...
  • 作者:徐伟巍 LOG96 2007-10-25 内容导航:在制造业环境中如何应用仓储......然而,越来越多制造业管理者认识到:在整个制造过程中,将同样的仓储管理系统应用于原材料输入高效与精确管理(也即生
  • 依据项目课程教学理念,对仓储与配送管理课程教学内容体系进行了重构,给出了教学内容体系设计方案,遵循项目课程教学规律,设计了课程教学组织与实施方案。
  • 二、冷冻链管理的内容 100 (一)冷冻链设备的选择 100 (二)冷冻链温度的检验与跟踪 101 (三)冷冻链控制技术 101 三、食品冷冻链的环节 102 四、我国冷冻链的管理现状 102 (一)食品的冷冻加工 102 (二)冷冻冷藏运输 ...
  • 维尔科技推出小型仓储/仓库/进销存管理工具采用Excel数据库引擎技术,按照软件工程思路设计开发,运行稳定,简单实用。不需要其他额外文件,不用做任何系统上安装和设置。具有完整仓库管理功能,如入出库管理...

空空如也

空空如也

1 2 3 4 5 ... 9
收藏数 163
精华内容 65
关键字:

仓储管理的内容