Execl导出系统
前台代码:
<button class="btn btn-warning" type="button" onclick="location.href = '/DownExpress/DownExpress2'">
导出报表
</button>
后台代码:
public void DownExpress2()
{
DataTable dt = new DataTable();
dt.Columns.Add(new DataColumn("序号", typeof(string)));
dt.Columns.Add(new DataColumn("计划单号", typeof(string)));
dt.Columns.Add(new DataColumn("出库日期", typeof(string)));
dt.Columns.Add(new DataColumn("客户名称", typeof(string)));
dt.Columns.Add(new DataColumn("状态", typeof(string))); #region 补填表结构+数据
List<SaleOutboundOrderChild> saleoutboundorderchild = new List<SaleOutboundOrderChild>();
if (Session["SaleOutboundOrderChild"] != null)
saleoutboundorderchild = (List<SaleOutboundOrderChild>)Session["SaleOutboundOrderChild"];
if (saleoutboundorderchild.Count() == 0)
Response.Write("<script type='text/javascript'>alert('没有查询到数据!')</script>");
int num = 1;
foreach (var item in saleoutboundorderchild)
{
string TPrice = item.TPrice.ToString();
if (item.SaleOutboundOrder.BackID != null)
TPrice = "-" + TPrice;
string TypeClassRollName = "";
if (item.TypeClassRoll != null)
TypeClassRollName = item.TypeClassRoll.Name;
double? Zprice = 0;
var m = db.StockInfo.FirstOrDefault(n => n.Code == item.MaterialCoding);
if (m != null)
Zprice = m.UnitPrice * item.TQuantity;
if (item.SaleOutboundOrder.BackHouse == 1)
Zprice = -Zprice; string TypeName = "";
if (item.MaterielTwo != null)
{
TypeName = item.MaterielTwo.TypeName.Replace("\t", ""); }
dt.Rows.Add(num++, item.MarketingPlanChild.MarketingPlan.OrderNo, Common.Date(item.SaleOutboundOrder.SaleDate), item.MarketingPlanChild.MarketingPlan.Client.AbbreviationName, item.MarketingPlanChild.PStatus );//补填数据
}
string shtnl = "";
for (int a = 0; a < dt.Columns.Count; a++)
{
shtnl = shtnl + dt.Columns[a] + '\t';
}
shtnl = shtnl + "\n";
for (int i = 0; i < dt.Rows.Count; i++)
{ for (int j = 0; j < dt.Columns.Count; j++)
{
shtnl = shtnl + dt.Rows[i][j] + '\t';
}
shtnl = shtnl + "\n"; }
DateTime dtime = DateTime.Now;
#endregion
ComNo.ExportToExcel("application/x-excel", "销售出库单数据.xls", shtnl);
}
ExportToExcel
/// <summary>
/// 导出表格信息
/// </summary>
/// <param name="FieldType"></param>
/// <param name="FileName"></param>
/// <param name="dt"></param>
public static void ExportToExcel(string FieldType, string FileName, string dt)
{
System.Web.HttpContext.Current.Response.Charset = "utf-8";
System.Web.HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(FileName, System.Text.Encoding.UTF8).ToString());
System.Web.HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
System.Web.HttpContext.Current.Response.ContentType = FieldType;
StringWriter tw = new StringWriter();
System.Web.HttpContext.Current.Response.Output.Write(dt);
System.Web.HttpContext.Current.Response.Flush();
System.Web.HttpContext.Current.Response.End();
}
Execl导出系统的更多相关文章
- mvc简单execl导出
直接上代码: public static byte[] GetExecl(DataTable dt, List<string> list) { var sbHtml = new Strin ...
- Dynamics CRM 导出系统中实体的属性字段到EXCEL
我们在CRM中看元数据信息,可以通过SDK中的metadata browser的解决方案包,但该解决方案包只是在可视化上方便了,但如果我们需要在excel中整理系统的数据字典时这个解决方案包就派不上用 ...
- execl 导出
/** * 导出 是把数表中的数据添加到execl表中 */ public function export(){ $xlsData = Db('user')->select(); Vendo ...
- java中poi进行execl导出
首先贴出最终导出的execl截图吧: 前台界面如下: 点击导出时,为其按钮的onclick事件添加exportDate()函数: function exportDate(){ var begin_Da ...
- 将表格table作为execl导出
有时候的需求是从后台获取数据,然后将数据变成execl,进行导出,下载成execl 解决的方法是 一,比较方便的是 这有个插件 可以直接用 https://www.npmjs.com/package/ ...
- VirtualBox虚拟机--导入导出系统&主机启用硬件虚拟化
问题概述:在往新电脑中导入其他电脑中导出的虚拟机后,启动该虚拟机系统时报错说主机不支持硬件虚拟化. 将电脑1中VirtualBox的一个虚拟机系统win7导出成.ova格式的文件, 在电脑2中安装Vi ...
- 在一个form里边同时执行搜索和 execl导出功能
一个form 分搜索 和 导出<form name="searchform" id="searchform" > <input type=&q ...
- 微信公众号用户OpenID同步导出系统
一.简介 同步公众账号用户信息,包括OpenID.昵称.头像.地区等. 二.主要功能 同步公众账号用户 OpenID,以及昵称.头像.性别.地区.关注时间等,支持认证订阅号.认证服务号. 支持超过1万 ...
- C#多样式EXECl导出
sing NPOI.HPSF; using NPOI.HSSF.UserModel; using NPOI.HSSF.Util; using System; using System.Collecti ...
随机推荐
- ext4文件系统启动自检的必要性
最近我们发现多个用户设备掉电后重启,系统不工作. 研究这些返修设备,发现这些设备的表象是网络连接失败,DNS resolve不了.进一步发现/etc/resolv.conf为空,所以应用程序没法进行D ...
- HTML表单概念、语法及创建表单,案例
form 标签 Input标签的type属性值 单行文本域 <input type="text" /> 图像域(图像提交按钮) 下拉菜单和列表标签 select 标签属 ...
- 吴裕雄--天生自然HADOOP操作实验学习笔记:hbase学生选课案例
实验目的 复习hbase的shell操作和javaAPI操作 了解javaWeb项目的MVC设计 学会dao(数据库访问对象)和service层的代码编写规范 学会设计hbase表格 实验原理 前面我 ...
- Don't assign one object to another one
correct way, when changing object, firstly you should create this object and then assign its propert ...
- MyBatis的延迟加载和缓存机制
延迟加载: 什么是延迟加载: MyBatis中的延迟加载,也称为懒加载,是指在进行关联查询时,按照设置延迟规则推迟对关联对象的select查询.延迟加载可以有效的减少数据库压力. MyBatis根据对 ...
- linux查看硬件、系统信息
查看机器型号等 dmidecode 是一个读取电脑 DMI(桌面管理接口(Desktop Management Interface))表内容并且以人类可读的格式显示系统硬件信息的工具.这个表包含系统硬 ...
- Spark kafka flume
Flume Flume 是一个分布式.可靠.和高可用的海量日志聚合的系统,支持在系统中定制各类数据发送方,通过监控整个文件目录或者某一个特定文件,用于收集数据:同时Flume也 提供数据写到各种数据接 ...
- awk数组学习1
看到有网上一篇博客写的 https://blog.csdn.net/hu721659947/article/details/80352003 输出数组中大于5的数,需要注意if [ $a –ge$b ...
- pandas学习笔记之删除指定列
删除指定 def df["列名"] del df4["韩国地震影响"] 直接删除,df4中不在含有"韩国地震影响"这一列了 drop 不改变 ...
- 【巨杉数据库SequoiaDB】24 Hours , 数据库研发实录
出场人物: 08:10 小H,是巨杉数据库引擎研发的一名工程师.7:20 天还蒙蒙亮,小H就起床了,点亮了心爱的光剑,开始了新的一天. 在08:10时候,他已经洗漱完,锻炼好身体,倒好 ...