主题:【第十三届原创】实验室LIMS系统的开发---耗材管理实例

浏览 |回复13 电梯直达
原天
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
维权声明:本文为jianquan69原创作品,本作者与仪器信息网是该作品合法使用者,该作品暂不对外授权转载。其他任何网站、组织、单位或个人等将该作品在本站以外的任何媒体任何形式出现均属侵权违法行为,我们将追究法律责任。
9月三等奖
上个月发了一篇关于实验室LIMS开发的贴子,今天给大家来讲一个简单点的实例。

试剂及耗材的使用是怎样的设计。

1.画出你心中的那个框


对试剂的使用过程,我认为主要涉及到采购、验收入库、领取/归还这几个过程,所以工作流还是非常清晰简单的。

所以我们对于表的设计,我们可以建立一个台帐清单表、一个采购入库表(涉及分级权限较多时和安全性时可以分为采购、入库两个表),一个领取表,一个验收记录表。简简单单的三、四个表。

对于表的关系是怎样相关连的。采购入库----台帐 、出库----台帐,采购入库----验收记录 、这关系也很简单。每个物料建立唯一性ID,台帐ID=入库ID,台帐ID=出库ID,台入库单号=验收单号,这样的关系就创建好了。

然后就是字段的问题。打开自己实验室的物料台帐表,对于建立就好了。比如:

台帐清单表:台帐_物料名称、台帐_物料编号(可作为唯一识别ID)、台帐_物料级别、台帐_物料库存-------------------

采购入库表:采购_物料名称、采购_规格、采购_数量、采购_单价、采购_总价、采购_批准状态、采购_验收方式、采购_验收结果

领取表:领取_日期、领取_数量、领取_领取人、领取_确认人

对于字段的内容定义,就只需要一些简单的算术或都函数,比如:采购_总价=采购_单价*采购_数量、领取_总数=sum(领取_数量).在这里都是非常简单有效的。

但注意的是计算性的字段还是设计少点为好,比较吃CPU,可以把大量复杂的计算写成脚本,需要运行的时候提取就好。


意:不同的表,有相同的名称,但他们不是同一个东西。所以表_名称,这样很好的分清。;在这表字段不只用在本表中,还能用在其他的表中。这会极大的方便设计。

这样我们就很容易的完成了,画框的内容:建表,建字段;建关系。





2.在框里画出所有的面

面,指的是布局,布局界面设计的好,能让使用系统的难度大大降低,指指点点,就能完成。

我们有四个表,像使用、验收记录表,如果要打印,就可以各建一个布局,如果不打印,其实是可以不用建立的。我们可以把领取的入口建在台帐里。

布局的设计其实就是“看菜吃饭”,针对使用端来设计,像笔记本和PC的屏幕较大,装的内容就比较多,但像手机、平板这些移动端的,我们就需要2、3个的布局来显示内容。




上面那个图显示的内容就是表_台帐的。也把使用记录的清单入口放进去。如果是PC端,一个布局就能把内容显示完。

布局的设计就是与实际和平台相结合,尽量简便、操作方便、内容丰富,但又不杂乱。如果艺术感好的,懂UI设计的,就更能做得很炫的布局。




3.在面上点缀点小装饰

这小装饰其实就是功能,方便使用功能,为了懒而写出来的脚本。

上面的图:耗材太多了,找起来麻烦----查找功能、条形码数字太长了,易输错----扫码添加耗材、拿了还要写记录----扫码自动登记领取数量、耗材显示太多----添加分类标签




上面图的功能:审批功能、电子图表、安全库存提示

大家关心的是怎么样写出这样功能的脚本。

脚本,其实大家都有写过。还记得你大学取得的那张VB证书吗。

在简代码时代,软件把很多功能已经包装为函数,只要直接引用,填入参数就好。

1.import turtle

2.t=turtle.pen( )

3.for x in range(360)

4.      t.forward(x)

5      t.left(59)




这是画图软件中turtle函数的功能,5行代码画个图。

在VB时,大家用到过比较多是WHEN  THAN 。WHEN "A" THAN "B"

所以把开EXCEL表看看里面的函数,打开软件帮助,看看里面封装好的函数。

你其实是会写简单的脚本。

除去特定功能函数,用得比较多的函数我们都熟识,来来去去就那几个

IF----ELES----END IF、CASE()、WHILE、LOOP---END LOOP.逻辑函数

COUNT 、SUM、MAX、MIN、VALUECOUNT----数值函数

MONTH 、YEAR、WEEK----日期函数

RIGHT、LEFE、MIDDLE、POSITION----文本函数

还有SQL函数

以上的函数是不是很熟识,你其实是会做简单的脚本

比如电子图表年度十大物料的提取:

Let (
[
year = 导航::当年年份;
SQL = ExecuteSQL(
                    "SELECT \"料号和物品名称\", sum(\"入库数量\") as InvoiceTotal FROM  \"试剂与耗材\"
where \"年份\" = ?
group BY  \"料号和物品名称\" ORDER BY InvoiceTotal DESC FETCH FIRST 10 ROWS ONLY";

                    "|";?;
                    year )
                    ];
SQL
)


就像我上篇说过的,逻辑思维好加上熟识基本的函数,简单点的数据库还是能写出来的。

现在的广告都打着3岁学编程,其实使用的是无代码平台,通用拉动来实验功能,大神都把工具准备好了。

个人感觉在小的LIMS这么多的模块中,最难是报告模块和多级权限审核功能模块,其他的基本和耗材使用差不多。需要写的脚本不多。


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~



附件我上传了上面图片的实验室物料管理苹果移动版的DB(测试找BUG版),安卓的还在转写中,没那么快上传,有兴趣的朋友可以去下载。

经过压缩上传,如果产生错误,可以给我以信息。
附件:
为您推荐
原天
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
最近在写一个通用版的测试报告DB。可以让用户自己填入100种测试项目,还有 我内设的几个组合ROHS10项,PAHS16项,EN71-3.不知道预留的100项够不够使用?
也希望坛友们提供一些,像环境、农残、食品等等行业的常用测试项目。

谢谢

LIMS系统的DEMO也做好,可以免费下载了,帮忙找BUG。有点大,传不上论坛。要M我吧
赞贴
1
收藏
0
拍砖
0
2021/2/9 11:21:49 Last edit by jianquan69
机洗麻洗
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
楼主厉害,想问下你之前提到的低代码开放软件是哪款,我也想试试这个思路,之前一直没找到合适的软件
原天
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
原文由 机洗麻洗(Ins_05c33234) 发表:
楼主厉害,想问下你之前提到的低代码开放软件是哪款,我也想试试这个思路,之前一直没找到合适的软件


如果你熟识EXCEL,VBA,微软的Access挺适合练手做小型数据库,因为EXCEL支持录制代码,可以操作后,参考代码来编写,如果强悍点,用SQL server;

如果你的苹果用户,可以用Claris,相对Access困难点,功能强大点,唯一问题就是收费有点贵,自己用可以,但商用就比较花钱。

国内可以试下iVX,在展会上看过,功能挺可以,个人免费使用,用于企业,收费也比较便宜,可以直接生成多种平台使用(听说是低收费)

My Sql 因为是开源,比较适合商用,技术难度高了点。阿里云云数据库有支持My Sql,后期上线容易。
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
原天
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
原文由 蟹(m3106937) 发表:
太强了,支持一下!!!!!!
最近分享了整个LIMS电脑版软件,有兴趣的可以私信我要吧或关注“妍妍的小软件”,就不在论坛发了。
赞贴
0
收藏
0
拍砖
0
2021/2/9 11:13:47 Last edit by jianquan69
水宝宝
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
回风
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
自己玩可以,要商用还有很多路要走。有真的实验室愿意用你就很难很难
原天
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
原文由 回风(Insm_3139229b) 发表:
自己玩可以,要商用还有很多路要走。有真的实验室愿意用你就很难很难


如果商用,有一两家客户,回答各种各样的问题,就基本可以从年头忙到年尾,一个人还赚不了什么钱。我自己写的,基本就适合自己的实验室。为了适合各种各样的检测项目,我还特意写了个标准版的测试清单,有兴趣,可以WX上找找  妍妍小软件,有文章介绍。

开始为了给小孩写学习软件,才学这。
610376828
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
有没有仪器设备管理?希望能够提供一份。
原天
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
原文由 610376828(610376828) 发表:
有没有仪器设备管理?希望能够提供一份。
有,只有比较简单的记录,分类和验收,校准提醒