function getchcount(query: TADOQuery): Integer;
var
i:integer;
begin
i:=0;
with Query do begin
Query.First;
while not Eof do begin
if Query.FieldByName('S_FLAG').AsBoolean then
i:=i+1;
next;
end;
end;
Result:=i; //返回行数,integer
end;

procedure TXJBoxForm.Button1Click(Sender: TObject);
var
cntr:string; //用于存放每一行的信息
i,j,s,checkcount:Integer;
list:TStringList; //用于存放整个箱号信息
begin
checkcount:=getchcount(MADOQuery); //选中总行数赋值
cntr:='';
j:=0; //循环个数,用户满16个换行
s:=0; //用于统计总循环行数
list:=TStringList.Create;
with MADOQuery do begin
MADOQuery.First;
while not Eof do begin
if MADOQuery.FieldByName('S_FLAG').AsBoolean then begin
if cntr='' then begin
cntr:=MADOQuery.FieldByName('BOX_NO').AsString;
j:=j+1;
s:=s+1;
end else begin
cntr:=cntr+','+MADOQuery.FieldByName('BOX_NO').AsString;
j:=j+1;
s:=s+1;
end;
if s=checkcount then begin //用于防止不是整行时剩余部门不会导出的情况
list.add(cntr); //添加到list中
cntr:=''; //清空,开始统计下一行
j:=0; //满16个换行,重置为0重新循环
end;
if (checkcount<17) and (j=checkcount) then begin
list.add(cntr);
cntr:='';
j:=0;
end else begin
if j=16 then begin
list.add(cntr);
j:=0;
cntr:='';
end;
end;
end;
Next;
end;
MADOQuery.First; //为保证在第一行数据开始循环
end;
//导出到txt功能
if SaveDialog1.Execute then //SaveDialog1 是一个TSaveDialog 组件
list.SaveToFile(SaveDialog1.FileName+'.txt');
showmessage('导出成功! 数量:'+inttostr(checkcount));

end;

获取选中行中的数据提取并且保存到txt的更多相关文章

  1. 将mat文件中的数据按要求保存到txt文档中(批处理)

    之前有个老朋友,让帮忙将一个mat中的数据重新保存到txt中,由于数据比较多需要用到批处理,之前弄过很多次,但每次一到要用的时候总是忘记怎么写了,现在记录一下,免得后面老是需要上网搜.这里先说一个比较 ...

  2. Java读取接口中的数据,并保存到txt文件中!

    //创建读取接口中数据的方法 public static String read() { URL url = null; BufferedReader reader = null; HttpURLCo ...

  3. 2019-03-19 用SSIS把SQLServer中的数据导出来保存到Excel中

    Control FLow 点击空白处,右键打开Variable,配置存储过程 Excel路径 在SQL Server 中新建一个存储过程,用于从数据表提取特定的数据 create proc Prici ...

  4. EasyUI DataGrid Checkbox 多选 获取选中行中的内容

    <table id='grid' class='easyui-datagrid' style='width:950px;height:405px' url='Ajax-index.php?mod ...

  5. 2019-03-20 用SSIS把Excel中的数据导出来保存到SQLServer中

    Control Flow 1.配置 好 图形 2.去变量那 配置好 文件路径 和 存储过程 3.在SQL Server创建对应的存储过程,该存储过程的功能是每次导入是清空原有的数据 4.如果不懂的参考 ...

  6. DOS命令将黑框中查询到的信息保存到TXT等文件里

  7. C#-获取datagriview选中行中某一列的值

    获取选中行中某一列的值: int index = dg_Product.CurrentRow.Index; //取得选中行的索引 txt_ProductId.Text = dg_Product.Row ...

  8. jQuery DataTables 获取选中行数据

    如题 想获取操作 DataTables 获取选中行数据 案1.主要是利用 js  getElementsByTagName 函数 然后对获取到的tr 进行操作  如下 function getChec ...

  9. gridview获取选中行索引及当前行数据

    gridview获取选中行索引及当前行数据 一.非直接绑定数据: <!--前台传值--> <asp:TemplateField HeaderText="操作"&g ...

随机推荐

  1. 16 JavaScript计时事件&显示时钟

    计时事件:JavaScript设定一定的时间间隔之后来执行代码 window.setInterval("JavaScript function",millisecons):间隔指定 ...

  2. 【转】python中的闭包详细解析

    一.什么是闭包? 如果一个内嵌函数访问外部嵌套函数作用域的变量,并返回这个函数,则这个函数就是闭包 闭包必须满足三个条件: 1. 必须有一个内嵌函数    2. 内嵌函数必须引用外部嵌套函数中的变量  ...

  3. C++ STL之动态数组vector(⽮量)的使⽤

    写再最前面:摘录于柳神的笔记:   之前C语⾔⾥⾯⽤ int arr[] 定义数组,它的缺点是数组的⻓度不能随⼼所欲的改变,⽽C++⾥⾯有⼀个能完全替代数组的动态数组 vector (有的书⾥⾯把它翻 ...

  4. Python环境搭建-2 编译器和解释器

    编译器与解释器 编译器/解释器:高级语言与机器之间的翻译官 都是将代码翻译成机器可以执行的二进制机器码,只不过在运行原理和翻译过程有不同而已. 那么两者有什么区别呢? 编译器:先整体编译再执行 解释器 ...

  5. git rebase 与git merge 小结

    git merge是用来合并两个分支的. $ git merge b   将b分支合并到当前分支 同样  $ git rebase b ,也是把 b分支合并到当前分支 ---------------- ...

  6. 如何申请自己的Flag Counter?

    申请自己的Flag Counter是一件简单的事. 首先,进入Flag Counter主页. 之后,选择好样式,点击"GET YOUR FLAG COUNTER".会弹出一个对话窗 ...

  7. 安装mysql过程中的异常解决

      [root@cdh1 ruanjian]# rpm -ivh mysql-community-common-5.7.10-1.el6.x86_64.rpm  warning: mysql-comm ...

  8. LNMP一键安装包 PHP自动升级脚本

    LNMP一键安装包 PHP自动升级脚本 2011年03月15日 上午 | 作者:VPS侦探 前一段时间完成了lnmp一键安装包的PHP自动升级脚本,今天发布出来,如果想升级PHP版本的lnmp用户可以 ...

  9. 跨服务器的SQL语句如何书写

    select  *  into  本地库名..表名  from  OPENDATASOURCE(                  'SQLOLEDB',                  'Data ...

  10. 「NOWCODER」CSP-S模拟赛第3场

    「NOWCODER」CSP模拟赛第3场 T1 货物收集 题目 考场思路即正解 T2 货物分组 题目 考场思路 题解 60pts 算法:一维 DP 100pts 算法:一维 DP ?线段树 + 单调栈 ...