今天有同事在找扫描枪用来盘点资产,需求很简单,就是扫描设备上的条形码形成一个Excel表格。扫描枪已经很久不用,有些故障,同时如何把扫描到的数据生成Excel表格然后存到电脑上也还是个问题,一边看着同事捯饬扫描枪一边做了这么个简单的App。回忆了创建App的步骤,在此分享一下:
1. 在OneDrive里创建一个Excel文件,转成表格格式。文件里放了两列数据: 序号(保存扫描的条形码)和链接(这个是后来觉得好玩加上的,保存扫描到的二维码数据)。
2. PowerApp里创建一个空白的App
3. 添加各种控件,一共用到了"按钮"、"数据表"、"编辑"类型的窗体和 "条形码扫描程序"
4. 做完后的样子
5. 各个控件说明
5.1 App -- 设置了 OnStart = NewForm(Form3),用来在打开App后显示Form3。
5.2 DataTable9 -- App界面下方的一个列表,用来显示扫描到的数据。要做的是在添加数据表控件后,连接OneDrive里Excel文件的scannedData做数据源,然后添加好两列数据做字段就行。
5.3 Form3 -- App 界面上部用来接收扫描到的数据的一个窗体。这个和数据表一样,首先需要连接数据源,然后字段也是选了Excel里的两列的名字
5.4 设置 Form3 里的两个DataCard的Value,分别指向条形码扫描程序获取的值,如下图所示。
PS. 添加的条形码扫描程序是以按钮形式出现在App界面上的,如下面的“序号扫描”和“链接扫描”。
5.5 提交按钮 -- 用来将扫描到的数据提交写入到Excel文件中,然后清理数据和表单为下一次扫描做准备。
设置了 OnSelect = SubmitForm(Form3);Reset(BarcodeScannerSN);Reset(BarcodeScannerLink);ResetForm(Form3); NewForm(Form3);
5.6 App界面最下面的“刷新列表数据”按钮。
原本以为需要手动刷新DataTable数据才会显示,后来运行App扫描数据并提交后,发现DataTable里会自动刷新并显示出扫描到的数据。不过这里还是做了设置:
OnSelect = Refresh(scannedData)
----------------------------------------------
实测下来:
App可以扫描条形码,也能扫描二维码(上面的一个截屏里序号是扫描条形码获取的数据,链接就是扫描二维码获取的数据)。
App对序号和链接都没设“必需”,因此也可以单独扫序号或者单独扫二维码来提交(如上图最后两行数据所示)。
比起专业的扫描枪来说,这个App的效率是低了一点,不像专业扫描枪,哔哔哔的扫完,然后一次性的导出文件就行。这个App目前的这个设置需要在每次扫描完点“提交”按钮才能写入数据。
有兴趣的朋友可以在这里下载着玩玩。
后续可以试试看把这个“提交”按钮去掉,扫描到数据后直接把数据写入到Excel里。
--------------------------------------------------EOF----------------------------------------------------