PDA开发数据由DB下载至PDA本地
public string DownFile = "\\下载.txt";//下载路径
public string LoadFile = "\\上传.txt";//上传路径
public List<string> _readtxt = new List<string>();
public MainForm()
{
InitializeComponent();
tbDelivery.Focus();
}
private void btnDownLoad_Click(object sender, EventArgs e)
{
try
{
if (tbDelivery.Text.Trim().Length == 0)
{
MES.PDA.Core.Service.MessageServices.ShowWarm("请先扫描供货号!");
tbDelivery.Focus();
return;
}
else
{
if (!CheckDelivery())
{
return;
}
if (System.IO.File.Exists(DownFile))
{
StreamReader objReader = new StreamReader(DownFile);
string sLine = "";
sLine = objReader.ReadLine();
if (sLine != string.Empty)
{
string[] ss = sLine.Split(',');
if (ss.Length > 0)
{
if (ss[0] != tbDelivery.Text.Trim())
{
MES.PDA.Core.Service.MessageServices.ShowWarm("本机已下载供货号:" + ss[0] + ",请扫描该供货号并上传后,再下载其他供货号!");
objReader.Close();
return;
}
else
{
MES.PDA.Core.Service.MessageServices.ShowWarm("该供货号已下载,请进行扫描并上传!");
objReader.Close();
return;
}
}
}
objReader.Close();
}
else
{
FileStream fs = System.IO.File.Create(DownFile);
StreamWriter sw = new StreamWriter(fs, System.Text.Encoding.GetEncoding("UTF-8"));
string sql = Sql.getDelivery(tbDelivery.Text.Trim());
Daisy.Common.McsClient.McsDataReader reader = (Daisy.Common.McsClient.McsDataReader)MES.PDA.Core.Service.DatabaseAccessService.execute(sql, MES.PDA.Core.Service.ReturnType.RESULTSET);
if (reader.rowNumber == 0)
{
MES.PDA.Core.Service.MessageServices.ShowWarm("获取供货号信息失败!");
sw.Close();
return; }
else
{
string sLine = string.Empty;
while (reader.Read())
{
//MES.PDA.Core.Service.MessageServices.ShowWarm(reader.getString(2));
sLine = reader.getString(0) + "," + reader.getString(1) + "," + reader.getString(2) + "," + reader.getString(3) + "," + reader.getString(4) + "," + reader.getString(5);
//sw.WriteLine(sLine);
sw.WriteLine(sLine);
}
sw.Flush();
sw.Close();
}
var sqlload = "{?=call apps.cux_pda_load_scan_utl.init_data_download('" + tbDelivery.Text.Trim() + "')}"; //MES.PDA.Core.Service.MessageServices.ShowWarm(sql);
//return;
string ret = (string)MES.PDA.Core.Service.DatabaseAccessService.execute(sqlload, ReturnType.STRING); if (!ret.StartsWith("0@"))
{
MES.PDA.Core.Service.MessageServices.ShowWarm(ret);
return;
}
else
{
MES.PDA.Core.Service.MessageServices.ShowWarm("下载成功!");
btnScan.Focus();
}
}
}
}
catch (Exception ex)
{
MES.PDA.Core.Service.MessageServices.ShowWarm(ex.ToString());
}
}
PDA开发数据由DB下载至PDA本地的更多相关文章
- PDA开发数据由本地上传至DB
private void btnUpLoad_Click(object sender, EventArgs e) { if (!System.IO.File.Exists(LoadFile)) { M ...
- vs2008,windows mobile 6 搭建PDA开发环境相关软件下载
1.Windows Mobile 6.5 Professional Developer Tool Kit (CHS).msi 下载地址:https://download.microsoft.com/d ...
- iOS开发——数据持久化&使用NSUserDefaults来进行本地数据存储
使用NSUserDefaults来进行本地数据存储 NSUserDefaults适合存储轻量级的本地客户端数据,比如记住密码功能,要保存一个系统的用户名.密码.使用NSUserDefaults是首 ...
- 微信小程序开发 -- 通过云函数下载任意文件
微信小程序开发 -- 通过云函数下载任意文件 1.云开发介绍 微信小程序开发者众所周知,小程序开发拥有许多限制,当我还是一个菜鸟入门的时候,第一关就卡在了没有备案域名的HTTP请求上面,那时候云开 ...
- 一文搞懂EMAS Serverless小程序开发|电子书免费下载
>> 快来免费下载|电子书<五天玩转 EMAS Serverless> << 点击免费下载 <五天玩转 EMAS Serverless> EMAS Se ...
- iOS开发技术分享(1)— iOS本地数据存储
iOS开发技术分享(1)— iOS本地数据存储 前言: 我本是一名asp.net程序员,后来加入了iOS游戏开发队伍,到现在也有一年多的时间了.这一年来,每天都干到2.3点钟才睡觉,不为别的,只为了学 ...
- 在ASP.NET Core中使用Apworks快速开发数据服务
不少关注我博客的朋友都知道我在2009年左右开发过一个名为Apworks的企业级应用程序开发框架,旨在为分布式企业系统软件开发提供面向领域驱动(DDD)的框架级别的解决方案,并对多种系统架构风格提供支 ...
- VopSdk一个高逼格微信公众号开发SDK(源码下载)
看之前回复很多说明大家很有热情&文章被误删掉了,不想让有的朋友错失这个高逼格的东西,现在重新发布,这次就直接放出源码,文章最末下载地址. 看之前回复很多说明大家很有热情&文章被误删掉了 ...
- 10款Mac上程序员装机必备的开发工具推荐和下载
10款Mac上程序员装机必备的开发工具推荐和下载 使用Mac的用户主要有两大类:设计师和程序员,为各位程序员童鞋推荐10个Mac上非常棒的开发工具和辅助工具,分享软件专题[10款Mac上程序员装机必备 ...
随机推荐
- RunLoop总结:RunLoop的应用场景(四)
今天要介绍的RunLoop使用场景很有意思,在做长期项目,需要跟踪解决用户问题非常有用. 使用RunLoop 监测主线程的卡顿,并将卡顿时的线程堆栈信息保存下来,下次上传到服务器. 参考资料 关于今天 ...
- RxJava(十一)defer操作符实现代码支持链式调用
欢迎转载,转载请标明出处: http://blog.csdn.net/johnny901114/article/details/52597643 本文出自:[余志强的博客] 一.前言 现在越来越多An ...
- Android Multimedia框架总结(二十二)MediaCodec中C++中创建到start过程及状态变换
上一章介绍MediaCodec中创建到start过程(到jni部分),从今天开始,将深入源码中看看其c++过程,看下Agenda如下: mediacodec.h CreateByType initMe ...
- lucene内存索引库、分词器
内存索引库 特点 在内存中开辟一块空间,专门为索引库存放.这样有以下几个特征: 1) 因为索引库在内存中,所以访问速度更快. 2) 在程序退出时,索引库中的文件也相应的消失了. 3) ...
- 全文检索概念,Lucene大致结构
1.1 常见的全文检索 1) 在window系统中,可以指定磁盘中的某一个位置来搜索你想要得到的东西. 2) 在myeclipse中,点击Help->Help Contents,可以利用搜索功能 ...
- Java Socket输入流如何检测到EOF
对于InputStream的 read(b, off, len) 方法 public int read(byte[] b, int off, int len) throws IOException,J ...
- oracle对大对象类型操作:blob,clob,nclob
1.基本介绍 Oracle和plsql都支持lob(large object) 类型,用来存储大数量数据,如图像文件,声音文件等.Oracle 9i realse2支持存储最大为4g的数据,or ...
- 套接字输入流——InputStream
输入缓冲装置里面必须要包含读取字符的通道,否则就谈不上缓冲了,这个通道就是InputStream,它属于jdk中java.io包的类,有了它我们就可以从源头读取字符,它的来源可以有多种多样,这里主要探 ...
- 【Unity Shaders】Transparency —— 使用渲染队列进行深度排序
本系列主要参考<Unity Shaders and Effects Cookbook>一书(感谢原书作者),同时会加上一点个人理解或拓展. 这里是本书所有的插图.这里是本书所需的代码和资源 ...
- 如何让 jQuery Mobile 不显示讨厌的 loading 界面
jQuery Mobile 的一个BUG: 当不采用 ajax 以及 他自己的 back 返回的时候,即: 点击浏览器后退按钮时,将会从缓存之中加载页面,此时,讨厌的 loading 动画出来了,而且 ...