医院收费票据打印(这是这个项目最后的一个问题了,请兄弟们帮忙,万分感谢!) 已经有固定格式,只是把打印信息精确打印到票据对应位置上
格式如:
**医院收据票据
病人姓名:***** 收费日期:********
收费员:****
收费类型 金额
西药 25.00元
挂号费 15.00 元 红色的就是我要打印出来的内容
当操作人员点击页面的“打印”或者"打印预览"按扭的时候,
要打印的信息就会从从数据库中输出到页面,打印3张即可,。(如果只能打印一份也可以,先做着)
解决方案 »
- C#如何调用系统输出到屏幕的数据流?
- 問個日期類型數據提交到數據庫時報錯 ,急。
- 如何将下面的C#代码转换成VB.NET代码?急
- 奇怪的问题,为什么在WF中,一个控件加上可托拽处理后,该控件的click事件就时有时无呢?请高手们!
- 在 VS.NET 2003 上用 VSS 还是 CVS 好?哪里有 VSS 和 CVS 的下载?
- wcf中MemoryStream 写法有什么好处?
- WebService调用IPCClientChannel的问题
- C# 获取 excel 单元格内行数
- 请问ArrayList在Sql中应用什么数据格式保存?谢谢
- 急急急!!!C#如何解析复杂的xml并将其中数据保存到相应的Sql Server表里?
- 急!!!DataGrid同一列绑定不同控件
- 如何對表的字段進行權限控制?
是套打,不过,我不知道是用GDI 绘出来,还是,用报表什么的来实现这个打印..
http://www.wfsoft.com/middleware_info.asp?id=11010
**医院收据票据
病人姓名:(A1,e1)cell1 收费日期:cell3
收费员:cell2
收费类型 金额
西药 (A1 F2) 25.00元
挂号费 15.00 元
2.aspx文件中:
<%@ Register Assembly="CrystalDecisions.Web, Version=10.2.3600.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" Namespace="CrystalDecisions.Web" TagPrefix="CR" %>
注册程序集。
3.aspx代码:
<CR:CrystalReportViewer ID="CrystalReportViewer1" runat="server" BackColor="white" HasToggleGroupTreeButton="False" HasRefreshButton="False" PrintMode="ActiveX" DisplayGroupTree="False" DisplayPage="true" HasDrillUpButton="False" HasGotoPageButton="False" HasSearchButton="False" HasCrystalLogo="False" HasViewList="False" />
4.aspx.cs代码:
using CrystalDecisions.Shared;引用命名空间
using CrystalDecisions.CrystalReports.Engine;//引用命名空间
public string strInvTitle//开票抬头
{get
{ object o = ViewState["strInvTitle"]; if (o == null) { return ""; }
return (string)ViewState["strInvTitle"]; }
set { ViewState["strInvTitle"] = value.ToString(); }
}
string conn = ConfigurationManager.ConnectionStrings["ConnectionString"].ToString();//建立所需连接//建立报表文档
ReportDocument rd = new ReportDocument();
rd.Load(Server.MapPath(@"invoice_interface.rpt"));
CrystalReportViewer1.ReportSource = rd;rd.ParameterFields["inv_title"].CurrentValues.AddValue(strInvTitle);
//类似地给在第一步中建立的CrystalReport中的参数字段赋值。
VS2003+C#+SqlServer2000?
是B/S结构的程序吗?
{ //制作步骤:
/* 1、用Excel作出与要打印的样式一样的电子表格存为模板;
* 技巧:最好把第一行与第一列作为空行,以利于调整边距(虽然Excel、打印机可调整页边距), 尽量的在需要调整的地方多空几行与几列,以利于调整套打对准
*
* 2、如同本程序一样,将Excel作为套打的模板,直接将要打印的数据写入;
*
* 3、打印,根据实际的效果调整Excel模板行高列宽及空出的行列, 直到能够准确的套上。将模板拷贝一份,清除模板上的文字也网格线,做成套打的模板。
*/ #region 套打、打印预览 //用Excel打印,步骤为:打开、写数据、打印预览、关闭
GoldPrinter.ExcelAccess excel = new GoldPrinter.ExcelAccess(); string strFileName = "PayBillCase.xls"; //套打模板文件名 string strExcelTemplateFile = System.IO.Path.GetFullPath(@"..\..\ExcelTemplate\" + strFileName);
excel.Open(strExcelTemplateFile); //用模板文件
excel.IsVisibledExcel = true;
excel.FormCaption = "山 东 省 非aaaafd 款 书";
//在模板中写入要打印的数据 //***发票抬头*** //年月日
excel.SetCellText(2,"C",this.txt_Year.Text);
excel.SetCellText(2,"D",this.txt_Month.Text);
excel.SetCellText(2,"E",this.txt_Day.Text);
//缴款人
excel.SetCellText(3,"C",this.cbx_Student.Text);
//执行单位名称
excel.SetCellText(2,"I",this.txt_Name.Text);
//执行单位编码
excel.SetCellText(3,"I",txt_Nubmer.Text);
//***项目编码、项目名称、单位、数量、收费标准、金额***
//A6--A11是项目编码 excel.SetCellText(6,"B",txt_Num1.Text);
excel.SetCellText(7,"B",txt_Num2.Text);
excel.SetCellText(8,"B",txt_Num3.Text);
excel.SetCellText(9,"B",txt_Num4.Text);
excel.SetCellText(10,"B",txt_Num5.Text);
excel.SetCellText(11,"B",txt_Num6.Text); //D6--D11是项目名称
if(this.txt_Num1.Text!="")
{
excel.SetCellText(6,"D",cbx_Project1.Text);
}
if(this.txt_Num2.Text!="")
{
excel.SetCellText(7,"D",cbx_Project2.Text);
}
if(this.txt_Num3.Text!="")
{
excel.SetCellText(8,"D",cbx_Project3.Text);
}
if(this.txt_Num4.Text!="")
{
excel.SetCellText(9,"D",cbx_Project4.Text);
}
if(this.txt_Num5.Text!="")
{
excel.SetCellText(10,"D",cbx_Project5.Text);
}
if(this.txt_Num6.Text!="")
{
excel.SetCellText(11,"D",cbx_Project6.Text);
} //I6--I11是单位
excel.SetCellText(6,"G",txt_UintName1.Text);
excel.SetCellText(7,"G",txt_UintName2.Text);
excel.SetCellText(8,"G",txt_UintName3.Text);
excel.SetCellText(9,"G",txt_UintName4.Text);
excel.SetCellText(10,"G",txt_UintName5.Text);
excel.SetCellText(11,"G",txt_UintName6.Text); //J6--J11是数量
excel.SetCellText(6,"H",txt_Count1.Text);
excel.SetCellText(7,"H",txt_Count2.Text);
excel.SetCellText(8,"H",txt_Count3.Text);
excel.SetCellText(9,"H",txt_Count4.Text);
excel.SetCellText(10,"H",txt_Count5.Text);
excel.SetCellText(11,"H",txt_Count6.Text); //K6--K11是收费标准
excel.SetCellText(6,"I",txt_StandardCharge1.Text);
excel.SetCellText(7,"I",txt_StandardCharge2.Text);
excel.SetCellText(8,"I",txt_StandardCharge3.Text);
excel.SetCellText(9,"I",txt_StandardCharge4.Text);
excel.SetCellText(10,"I",txt_StandardCharge5.Text);
excel.SetCellText(11,"I",txt_StandardCharge6.Text); //L6--L11是金额
excel.SetCellText(6,"K",txt_Money1.Text);
excel.SetCellText(7,"K",txt_Money2.Text);
excel.SetCellText(8,"K",txt_Money3.Text);
excel.SetCellText(9,"K",txt_Money4.Text);
excel.SetCellText(10,"K",txt_Money5.Text);
excel.SetCellText(11,"K",txt_Money6.Text);
//***总金额**
//合计金额(大写)
excel.SetCellText(12,"F",txtTotalUpper.Text);
//合计金额(小写)
excel.SetCellText(12,"K",txtTotalLower.Text);
//***缴款单尾***
//校验码
excel.SetCellText(14,"D",txt_Code.Text);
//制单:
excel.SetCellText(14,"J",txt_Writer.Text); excel.Print(); //打印 excel.Close(); //关闭并释放
#endregion
}
private void PrintAll(string aStudentID)
{
Table_MainBody aTable_MainBody=new Table_MainBody(aStudentID); #region 套打、打印预览 try
{
if(aTable_MainBody.ID!="0")
{
//用Excel打印,步骤为:打开、写数据、打印预览、关闭
GoldPrinter.ExcelAccess excel = new GoldPrinter.ExcelAccess();
string strFileName = "PayBillCase.xls"; //套打模板文件名 string strExcelTemplateFile = System.IO.Path.GetFullPath(@"..\..\ExcelTemplate\" + strFileName);
excel.Open(strExcelTemplateFile); //用模板文件
excel.IsVisibledExcel = true;
excel.FormCaption = "山 东 省 非 税 务 收 入 缴 款 书";
//在模板中写入要打印的数据 //***发票抬头*** //年月日
excel.SetCellText(2,"C",aTable_MainBody.MakeYear);
excel.SetCellText(2,"D",aTable_MainBody.MakeMonth);
excel.SetCellText(2,"E",aTable_MainBody.MakeDay);
//缴款人
excel.SetCellText(3,"C",aTable_MainBody.PayerName);
//执行单位名称
excel.SetCellText(2,"I",aTable_MainBody.CollageName);
//执行单位编码
excel.SetCellText(3,"I",aTable_MainBody.CollageNumber); int printItem=0;
for(int i=0;i<aTable_MainBody.Details.Count;i++)
{
Table_Details aDetail=(Table_Details)aTable_MainBody.Details[i];
printItem=i+6; excel.SetCellText(printItem,"B",aDetail.SubjectNumber);
excel.SetCellText(printItem,"D",aDetail.SubjectName);
excel.SetCellText(printItem,"G",aDetail.UintName);
excel.SetCellText(printItem,"H",Common.SystemOperater.ReSkipSpace(aDetail.Count));
//K6--K11是收费标准
excel.SetCellText(printItem,"I",Common.SystemOperater.ReSkipSpace(aDetail.StandardCharge));
//L6--L11是金额
excel.SetCellText(printItem,"K",Common.SystemOperater.ReSkipSpace(aDetail.Money));
} //***总金额**
//合计金额(大写)
excel.SetCellText(12,"F",aTable_MainBody.TotalCapi);
//合计金额(小写)
excel.SetCellText(12,"K",aTable_MainBody.TotalLower);
//***缴款单尾***
//校验码
excel.SetCellText(14,"D",aTable_MainBody.CheckNumber);
//制单:
excel.SetCellText(14,"J",aTable_MainBody.UserName); excel.Print(); //打印 excel.Close(); //关闭并释放
}
}
catch{}
#endregion
}