1。
protected void btnUpLoad_Click(object sender, EventArgs e)
{
//执行命令
ArrayList cmdList = new ArrayList();
//设置参数
ArrayList param = new ArrayList();
try
{
//采购单号
string purchaseno = txtPurchaseOrderNo.Text;
param.Add(purchaseno);
//判断是否创建采购单
if (Convert.ToInt32(DbHelper.ExecuteScalar(this.pageId, SQL005, param)) > 0)
{
if (FileUpload1.HasFile == true)
{
byte[] fileData = null;
string fileType = "";
//得到提交的文件
Stream fileDataStream = FileUpload1.PostedFile.InputStream;
//得到文件大小
int fileLength = FileUpload1.PostedFile.ContentLength;
//创建数组
fileData = new byte[fileLength];
//把文件流填充到数组
fileDataStream.Read(fileData, 0, fileLength);
//得到文件名字
string fileFullName = FileUpload1.PostedFile.FileName;
//文件名称check
if (fileFullName.Contains("(") || fileFullName.Contains(")"))
{
//消息提示
//System.Web.UI.WebControls.Label lblMessage = (System.Web.UI.WebControls.Label)this.Page.Master.FindControl("lblErrorMessage");
//lblMessage.Text = "文件名称不能有中文的()!";
string msg = this.GetMessage("Messages", "AttachmentError");
f_GetDisplayInfo().f_SetDisplayMessage(msg, Page);
return;
}
string[] FullName = fileFullName.Split('\\');
string fileTitle = FullName[FullName.Length - 1];
//得到文件类型
fileType = FileUpload1.PostedFile.ContentType;
//获取附件列表最大ID
int AttID = -1;
DataTable dt = DbHelper.ExecuteDataTable(this.pageId, SQL009);
if (dt.Rows.Count > 0)
{
AttID = int.Parse(dt.Rows[0]["B31_ID"].ToString()) + 1;
}
//附件相关字段值
param.Clear();
//附件ID
param.Add(AttID);
//采购单号
param.Add(txtPurchaseOrderNo.Text);
//附件
param.Add(fileData);
//类型
param.Add(fileType);
//附件名称
param.Add(fileTitle);
//附件备注
param.Add(txtAtttachRemarks.Text);
//创建时间
param.Add(UtilDate.f_GetTimeSystem());
//创建者
param.Add(f_GetSystemData().LoginID);
//表B31_Attachment新增附件
cmdList.Add(DbHelper.GetDbCommand(this.pageId, SQL006, param));
//执行事物
DbHelper.ExecuteTransaction(cmdList);
//初始化备注
txtAtttachRemarks.Text = "";
//加载附件数据
LoadAttachmentData();
}
else
{
//消息提示
string msg = this.GetMessage("Messages", "AttachmentSel");
f_GetDisplayInfo().f_SetDisplayMessage(msg, Page);
}
}
else
{
//消息提示
//System.Web.UI.WebControls.Label lblMessage = (System.Web.UI.WebControls.Label)this.Page.Master.FindControl("lblErrorMessage");
//lblMessage.Text = "请先创建采购单!";
string msg = this.GetMessage("Messages", "AttachmentMessage");
f_GetDisplayInfo().f_SetDisplayMessage(msg, Page);
return;
}
}
catch (Exception ex)
{
ExceptionHandler(ex);
}
}
2。
private bool AddExcelOperateResume(string FilePath, string Remarks)
{
try
{
//GUID
string GUID = System.Guid.NewGuid().ToString();
//操作时间
string ServerTime = UtilDate.f_GetTimeSystem();
//文件名
string FileName = System.IO.Path.GetFileName(FilePath);
//操作者
string HoldUser = f_GetSystemData().LoginID;
//备注
string Remark = Remarks;
//文件-以文件流存储
FileStream fs = new FileStream(FilePath, FileMode.Open, FileAccess.Read);
BinaryReader br = new BinaryReader(fs);
byte[] bytes = br.ReadBytes((int)fs.Length);
br.Close();
fs.Close();
ArrayList paramList = new ArrayList();
paramList.Add(GUID);
paramList.Add(ServerTime);
paramList.Add(FileName);
paramList.Add(FilePath);
paramList.Add(HoldUser);
paramList.Add(Remark);
paramList.Add(bytes);
//Excel操作履历写入数据库
DbHelper.ExecuteNonQuery(this.pageId, "Sql006", paramList);
// 取出数据履历写入数据库后删除文件
// 删除已存在的文件
if (File.Exists(FilePath))
{
File.Delete(FilePath);
}
return true;
}
catch
{
return false;
}
}
下载
private void GetExcelOperateResume()
{
//检索条件设定
ArrayList paramList = new ArrayList();
paramList.Add("0fe67c4d-09c7-4840-85bb-70de25a92f96");
//检索该库位是否还在使用
DataTable dataTable = DbHelper.ExecuteCombine(this.pageId, "Sql007", paramList);
//检索结果存在时,将检索结果绑定到一览表中。
if (dataTable != null && dataTable.Rows.Count > 0)
{
Response.Buffer = true;
Response.Clear();
Response.ContentType = "application/x-msexcel";
Response.BinaryWrite((byte[])dataTable.Rows[0]["B27_Info"]);
}
}
protected void Page_Load(object sender, EventArgs e)
{
string ID = Request["ID"];
ArrayList param = new ArrayList();
DataTable dt = new DataTable();
param.Add(ID);
dt = DbHelper.ExecuteCombine(this.pageId, SQL001, param);
if (dt.Rows[0]["B31_ContractAttachType"].ToString() != "")
{
if (dt.Rows[0]["B31_ContractAttachType"].ToString().Equals("text/plain"))
{
Response.Clear();
string FileName = dt.Rows[0]["B31_AttachName"].ToString();
Response.ContentType = "text/plain";
//Response.Buffer = true;
Response.AddHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(FileName, Encoding.UTF8));
Response.AddHeader("Content-Type", ContentType);
Response.BinaryWrite((byte[])dt.Rows[0]["B31_ContractAttach"]);
Response.Flush();
Response.End();
}
else if (dt.Rows[0]["B31_ContractAttachType"].ToString().Equals("text/xml"))
{
Response.Clear();
Response.Buffer = true;
string FileName = dt.Rows[0]["B31_AttachName"].ToString();
Response.ClearHeaders();
Response.AddHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(FileName, Encoding.UTF8));
Response.AddHeader("Content-Type", "text/xml");
Response.BinaryWrite((byte[])dt.Rows[0]["B31_ContractAttach"]);
Response.Flush();
Response.End();
}
else
{
Response.Clear();
Response.ClearContent();
string FileName = dt.Rows[0]["B31_AttachName"].ToString();
Response.AddHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(FileName, Encoding.UTF8));
Response.AddHeader("Content-Type", dt.Rows[0]["B31_ContractAttachType"].ToString());
Response.BinaryWrite((byte[])dt.Rows[0]["B31_ContractAttach"]);
}
}
}