前言

  快2个月没写过博客了,就算是记流水账似的文章都没时间写,主要是太忙了;太多的bug要修复、太多由于bug引起的异常问题要解决、还有新的项目要开发,不忙怎么行呢?最近利用业余时间在鼓捣一个PDA的程序,主要是想用来通过wifi连接服务器,快速的扫描物料,进行备料、续料、卸料之类的操作,相信只要是在工厂接触过SMT机器的朋友一定知道这一块的流程。这个小程序也是费了很大的精力才慢慢有点儿起色,感谢帮助过我的朋友。

实现逻辑

  主要业务在API里面实现,API里面将结果返回来,客户端通过API里面的返回信息进行操作,需要执行哪一些步骤也都是在API里面进行控制,如下代码:

  public AppendMaterial()
{
baseExcuteActionDelegate Step1 = new baseExcuteActionDelegate(init);
baseExcuteActionDelegateList.Add(Step1, null); baseExcuteActionDelegate Step2 = new baseExcuteActionDelegate(CheckProduct);
baseExcuteActionDelegateList.Add(Step2, null); baseExcuteActionDelegate Step3 = new baseExcuteActionDelegate(CheckSlot);
baseExcuteActionDelegateList.Add(Step3, null); baseExcuteActionDelegate Step4 = new baseExcuteActionDelegate(CheckPartNumber_Old);
baseExcuteActionDelegateList.Add(Step4, null); baseExcuteActionDelegate Step5 = new baseExcuteActionDelegate(CheckPartNumber_New);
baseExcuteActionDelegateList.Add(Step5, null);
}

在所有的操作之前,需要先导入物料上料表,我这里用来测试,所以物料非常简单,其实这是不完整的,还应该包含机器、当前生产工单和飞达等信息,如下图:

在系统中会设定哪一些工位是需要记录物料信息的,在操作过程中,我会根据用户的设定来记录一些物料信息,比如说某一个条码在XXX工序用到了XXXX物料等等,如下图所示,可以对工序进行设定:

开发环境

  开发工具:Visual Studio 2008

   数据库  : SQL Server 2008 R2

   模拟器  : WinCE 模拟器(网上下载的)

   API      :  发布在本机IIS中的一个站点。

运行效果

   以下为程序运行效果,以截图为主,因为通过图片可以更直观的看到实际效果。

数据库中会记录着每一步的操作记录,包含事物名称、涉及的物料料号等等详细信息。

一个简单的物料防错DEMO的更多相关文章

  1. 一个简单的MariaDB认证插件demo

    代码地址如下:http://www.demodashi.com/demo/13076.html 一.前言 众所周知(其实可能很多人不知道)MariaDB支持插件认证.在MariaDB中新建用户,常见的 ...

  2. 如何使用AEditor制作一个简单的H5交互页demo

    转载自:http://www.alloyteam.com/2015/06/h5-jiao-hu-ye-bian-ji-qi-aeditor-jie-shao/ 本教程演示如何使用AEditor制作一个 ...

  3. 一个简单的IM系统(Demo附源码)-- ESFramework 4.0 快速上手(08)

    前面的文章已经介绍完了基于ESFramework/ESPlus进行二次开发的所有要点,现在,我们可以开始小试牛刀了. 本文将介绍使用ESFramework的Rapid引擎开发的两个最简单的Demo,E ...

  4. 搭建CAS服务器,并实现一个简单的单点登录的demo

    官网:http://jasig.github.io/cas/Cas Server下载:http://developer.jasig.org/cas/Cas Client下载:http://develo ...

  5. 聊聊UDP、TCP和实现一个简单的JAVA UDP小Demo

    最近真的比较忙,很久就想写了,可是一直苦于写点什么,今天脑袋灵光一闪,觉得自己再UDP方面还有些不了解的地方,所以要给自己扫盲. 好了,咱们进入今天的主题,先列一下提纲: 1. UDP是什么,UDP适 ...

  6. 【Spring Boot】创建一个简单的Spring Boot的 Demo

    走进Spring Boot 文章目录 走进Spring Boot 环境搭建 新建Spring Boot项目 开始创建项目 配置JDK版本 和 Initializr Service URL 配置Proj ...

  7. 也谈SSO,一个简单实用的单点登录Demo

    关于SSO(单点登录),百度百科解释如下 : “SSO英文全称Single Sign On,单点登录.SSO是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统.它包括可以将这次主要 ...

  8. 进阶篇:4.3)DFA设计指南:防错设计( 防呆设计)

    本章目的:每一个装配步骤都有设计防错. 1.前言 关于防错设计,作者有想说的话: 1)防错设计是DFA重要的一条.因为太过重要,作者单独开一分章写! 2)只有理解了设计防错的重要,才会去设计防错特征. ...

  9. 一个简单的Webservice的demo,简单模拟服务

    前段时间一直在学习WCF,匆匆忙忙的把<WCF全面解析>和<WCF服务编程>看了一遍,好多东西都不是很懂,又听了一下WCF分布式开发的网络教程,算是马马虎虎的明白点了.回顾了一 ...

随机推荐

  1. SQLServer针对排名函数ROWNUMBER()、RANK()、DENSE_RANK()、NTILE的研究!~

    相信大家在软件工程中经常会遇到对某些数据进行排名的问题,尤其是对于电子商务的HR来说“大手笔”是非常具有潜在价值的!~至于都有哪些价值这个超出本文的范畴不予进行说明,但是不得不说的是每一个精明的HR以 ...

  2. 使用Maven构建Java Web项目时,关于jsp中引入js、css文件路径问题。

    今天有点闲,自己动手搭建一个Java Web项目,遇到jsp中引入js.css文件时路径不正确的问题,于是在网上查阅了很多资料,最终都无法解决问题,于是,上stackoverflow找到了解决方法,这 ...

  3. 将abc的全排列输出

    #include "iostream" using namespace std; void swap(char a[],int i,int j){ char temp; temp= ...

  4. java的基本数据类型有八种:

    1)四种整数类型(byte.short.int.long):    byte:8 位,用于表示最小数据单位,如文件中数据,-128~127    short:16 位,很少用,-32768 ~ 327 ...

  5. 挂FORM时找不到对应的功能(function)

    表单 功能都已经定义,但是在菜单中增加时候没有这个可选的项. 解决办法:由于是功能太多,LOV显示限制为30000,因此将功能名前加CUX,提升其排序即可.也可以修改LOV显示限制数量.

  6. asp.net5 操作Cookie

    写入Cookie var CookieOption = new CookieOptions(); CookieOption.Path = "/"; //on localhost, ...

  7. Zend框架设置数据库连接编码为utf8三种方法

    第一种:$conn['host'] = '127.0.0.1';$conn['username'] = '56_' . $tenant['tenant'];$conn['password'] = $t ...

  8. iOS tableView 滚动后回到顶部

    - (void)scrollViewDidScroll:(UIScrollView *)scrollView { CGPoint contentOffsetPoint = self.tableView ...

  9. jQuery属性操作

    jQuery 的属性操作的核心部分其实就是对底层 getAttribute().setAttributes()等方法的一系列兼容性处理 ...if ( notxml ) { name = name.t ...

  10. php常用string函数

    http://www.w3school.com.cn/php/php_ref_string.asp1.addcslashes() 返回在指定的字符前添加反斜杠的字符串2.addslashes() 返回 ...