您的位置:首页 > Web前端 > JavaScript

.net .cs文件中执行javascript脚本

2014-06-26 16:46 225 查看
// ========= FrmPrint.aspx ================= //

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="FrmPrint.aspx.cs" Inherits="FrmPrint" %>

<%@ Register Assembly="CrystalDecisions.Web, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"

Namespace="CrystalDecisions.Web" TagPrefix="CR" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head runat="server">

<title>小票打印</title>

<script type="text/javascript">

// 打印完成

function Done()

{

window.returnValue = sRetValue;

close();

}

// 小票打印

function Print(accNum)

{

// 0:不打印 1:打印 2:询问

var nPrintStatus = GetPublicParameter("PrintStatus");

nPrintStatus = parseInt(nPrintStatus);

if ((1 === nPrintStatus) || (2 === nPrintStatus))

{

var IsNeedPrint = false;

if (1 === nPrintStatus)

{

IsNeedPrint = true;

}

else if (2 === nPrintStatus)

{

var returnVal = ShowMsg("请确认", "是否要打印小票?", 2);

if ((true === !returnVal) || (returnVal === "false"))

{

IsNeedPrint = false;

}

else

{

IsNeedPrint = true;

}

}

if (true === IsNeedPrint)

{

// 设置打印参数

FrmOpen.SetPrintParm("开户配卡", accNum.toString()).value;

// 打印

var sRetValue = OpenQuery("../CardholderManager/FrmPrint.aspx", "小票打印", 100, 300);

return sRetValue;

}

}

}

</script>

<style type="text/css">

html, body

{

width: 300px;

height: 100px;

font-size: 20px;

}

</style>

</head>

<body>

<form id="form1" runat="server">

<div style="text-align: center; line-height: 100px;">

<span>正在打印,请稍后 ....</span>

</div>

<div style="display: none;">

<%--<CR:CrystalReportViewer ID="CryView" runat="server" AutoDataBind="true" ReportSourceID="CryRptSource"

EnableDatabaseLogonPrompt="False" HasToggleGroupTreeButton="False" HasToggleParameterPanelButton="False"

Height="50px" PrintMode="ActiveX" ToolPanelView="None" Width="350px" />--%>

<CR:CrystalReportSource ID="CryRptSource" runat="server">

<Report FileName="rpt\CardHolderInforRpt.rpt">

</Report>

</CR:CrystalReportSource>

</div>

</form>

</body>

</html>

// ====================== FrmPrint.aspx.cs ============================= //

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;

// ------------------------------------------------------------- //

// 版权所有:CopyRight (C)

// 项目名称:

// 文件名称:FrmPrint.aspx.cs

// 创 建 者:

// 创建日期:2014-06-26

// 功能描述:小票打印;

// 调用依赖:

// -------------------------------------------------------------

// 修 改 者:

// 修改时间:

// 修改原因:

// 修改描述:

// ------------------------------------------------------------- //

using CrystalDecisions.CrystalReports.Engine;

using System.Collections;

using System.Data;

using System.Drawing.Printing;

public partial class FrmPrint : System.Web.UI.Page

{

/// <summary>

/// Remoting配置信息

/// </summary>

protected Config config = new Config();

/// <summary>

/// 页面加载

/// </summary>

/// <param name="sender"></param>

/// <param name="e"></param>

protected void Page_Load(object sender, EventArgs e)

{

string sRet = string.Empty;

DataSet dsParm = (DataSet)Session["rptDataSet"];

if (null == dsParm || 0 == dsParm.Tables.Count || 1 != dsParm.Tables[0].Rows.Count)

{

sRet = "无小票打印参数!";

}

else

{

DataRow dr = dsParm.Tables[0].Rows[0];

string sOptName = dr["OptName"].ToString();

string sAccNum = dr["AccNum"].ToString();

if ((false == string.IsNullOrEmpty(sOptName)) && (false == string.IsNullOrEmpty(sAccNum)))

{

sRet = this.Print(sOptName, sAccNum);//\\192.168.1.179\HP LaserJet 1020

}

else

{

sRet = "小票打印参数为空!";

}

}

ClientScriptManager ScriptManager = ((Page)System.Web.HttpContext.Current.Handler).ClientScript;

ScriptManager.RegisterStartupScript(typeof(string), "", "var sRetValue = '" + sRet + "';Done();", true); // FrmPrint.aspx中获取了sRetValue的值,并执行了Done();函数

//if ("1" != sRet)

//{

// ScriptManager.RegisterStartupScript(typeof(string), "", "alert('" + sRet + "');close();", true);

//}

//else

//{

// // 关闭页面

// ScriptManager.RegisterStartupScript(typeof(string), "", "close();", true);

//}

}

/// <summary>

/// 小票打印

/// </summary>

/// <param name="optName">操作名称(输入参数)</param>

/// <param name="accNum">账号(输入参数)</param>

/// <returns></returns>

public string Print(string optName, string accNum)

{

string sRet = string.Empty;

string sOptName = "", sTime = "", sStation = "", sAccNum = "", sCardCode = "", sOperate = "",

sMoney = "", sWallet = "", sUnit = "", sHelp = "", sWalletMoney = "N/A", sMoneyCharge = "N/A";

string path = "";

try

{

Hashtable PrintParm = new Hashtable();

PrintParm.Add("sOptName", optName);

PrintParm.Add("sAccNum", accNum);

PrintParm.Add("sCardCode", "0");

PrintParm.Add("sMoney", "0");

PrintParm.Add("sWallet", "0");

foreach (string sTmp in PrintParm.Keys)

{

switch (sTmp)

{

case "sOptName":

sOptName = PrintParm[sTmp].ToString().Trim();

break;

// case "sTime":

// sTime = hshtbl[sTmp].ToString().Trim();

// break;

// case "sStation":

// sStation = hshtbl[sTmp].ToString().Trim();

// break;

case "sAccNum":

if (PrintParm[sTmp].ToString().Trim().Length < 10)

{

sAccNum = "0000000000" + PrintParm[sTmp].ToString().Trim();

sAccNum = sAccNum.Substring(sAccNum.Length - 10);

}

else

{

sAccNum = PrintParm[sTmp].ToString().Trim();

}

break;

case "sCardCode":

sCardCode = "00000000" + PrintParm[sTmp].ToString().Trim();

sCardCode = sCardCode.Substring(sCardCode.Length - 8);

break;

// case "sOperate":

// sOperate = "000000" + hshtbl[sTmp].ToString().Trim();

// sOperate = sOperate.Substring(sOperate.Length - 6);

// break;

case "sMoney":

sMoney = Convert.ToDouble(PrintParm[sTmp].ToString()).ToString("0.00") + "元";

break;

case "sWallet":

sWallet = PrintParm[sTmp].ToString().Trim();

break;

// case "sUnit":

// sUnit = hshtbl[sTmp].ToString().Trim();

// break;

// case "sHelp":

// sHelp = hshtbl[sTmp].ToString().Trim();

// break;

case "dMoneWallet":

sWalletMoney = Convert.ToDouble(PrintParm[sTmp].ToString()).ToString("0.00") + "元";

break;

case "dMonCharge":

sMoneyCharge = Convert.ToDouble(PrintParm[sTmp].ToString()).ToString("0.00") + "元";

break;

}

}

//sTime =

//ICustomException _ICustomException = (ICustomException)RemotingHelper.GetObject(typeof(ICustomException));

config.iInterfaceByNo(typeof(Zytk.Client.Common.ICustomException));

sTime = this.config._ICustEx.ServerTime.ToString("yyyy-MM-dd HH:mm:ss");

sStation = PublicParameter.GetStaCode().ToString();

sOperate = "000000" + PublicParameter.GetOptCode().ToString();

sOperate = sOperate.Substring(sOperate.Length - 6);

//IAppParameter _IAppParameter = (IAppParameter)RemotingHelper.GetObject(typeof(IAppParameter));

sUnit = PublicParameter.OPUnitNum.ToString();//_IAppParameter.ClientSerialNo.Trim();

//sHelp = _IAppParameter.OfferName.Trim().Substring(0, 6);

//

//PosPrintRpt posprintRpt = new PosPrintRpt();

ReportDocument rpt = CryRptSource.ReportDocument;

path = Server.MapPath("rpt\\PosPrintRpt.rpt");

rpt.Load(path);

//标题

config.iInterfaceByNo(typeof(IOperatingUnit));

DataSet dsUnit;

sRet = this.config._IOperatingUnit.GetByUnitNum(PublicParameter.OPUnitNum, out dsUnit);

if (sRet != "1")

{

return "error:" + PublicFunctions.GetErrMsg(PublicParameter.GetStaCode(), PublicParameter.GetOptCode(), sRet);

}

TextObject txtTitle = (TextObject)rpt.ReportDefinition.ReportObjects["txtHeadText1"];

txtTitle.Text = dsUnit.Tables[0].Rows[0]["Remark"].ToString();//_IAppParameter.AgentName;

//操作类型

TextObject txtOptName = (TextObject)rpt.ReportDefinition.ReportObjects["txtOptName"];

txtOptName.Text = "操作类型:" + sOptName;

//操作时间

TextObject txtTime = (TextObject)rpt.ReportDefinition.ReportObjects["txtTime"];

txtTime.Text = "操作时间:" + sTime;

//站点编号

TextObject txtStation = (TextObject)rpt.ReportDefinition.ReportObjects["txtStation"];

txtStation.Text = "站点编号:" + sStation;

//使用单位

TextObject txtErpName = (TextObject)rpt.ReportDefinition.ReportObjects["txtErpName"];

txtErpName.Text = "使用单位:" + PublicParameter.ErpName;

//卡户帐号

TextObject txtAccNum = (TextObject)rpt.ReportDefinition.ReportObjects["txtAccNum"];

txtAccNum.Text = "卡户帐号:" + sAccNum;

////卡内编号

//TextObject txtCardCode = (TextObject)posprintRpt.ReportDefinition.ReportObjects["txtCardCode"];

//txtCardCode.Text = "卡内编号:"+sCardCode;

//操作员号

TextObject txtOperate = (TextObject)rpt.ReportDefinition.ReportObjects["txtOperate"];

txtOperate.Text = "操作员号:" + sOperate;

if (sWallet == "现金")

{

//交易金额

TextObject txtMoney = (TextObject)rpt.ReportDefinition.ReportObjects["txtMoney"];

txtMoney.Text = "手 续 费:" + sMoney;

//交易钱包

TextObject txtWallet = (TextObject)rpt.ReportDefinition.ReportObjects["txtWallet"];

txtWallet.Text = "";

}

else if (sWallet == "0")

{

//交易金额

TextObject txtMoney = (TextObject)rpt.ReportDefinition.ReportObjects["txtMoney"];

txtMoney.Text = "";

//交易钱包

TextObject txtWallet = (TextObject)rpt.ReportDefinition.ReportObjects["txtWallet"];

txtWallet.Text = "";

}

else

{

//交易金额

TextObject txtMoney = (TextObject)rpt.ReportDefinition.ReportObjects["txtMoney"];

txtMoney.Text = "交易金额:" + sMoney;

//交易钱包

TextObject txtWallet = (TextObject)rpt.ReportDefinition.ReportObjects["txtWallet"];

txtWallet.Text = "交易钱包:" + sWallet;

}

////单位编号

//TextObject txtUnit = (TextObject)posprintRpt.ReportDefinition.ReportObjects["txtUnit"];

//txtUnit.Text = "单位编号:"+sUnit;

////技术支持

//TextObject txtHelp = (TextObject)posprintRpt.ReportDefinition.ReportObjects["txtHelp"];

//txtHelp.Text = "技术支持:"+sHelp;

//钱包余额

TextObject txtWalletMoney = (TextObject)rpt.ReportDefinition.ReportObjects["txtWalletMoney"];

if (sWalletMoney != "N/A")

{

txtWalletMoney.Text = "钱包余额:" + sWalletMoney;

}

else

{

txtWalletMoney.Text = "";

}

//存款管理费

TextObject txtMoneyCharge = (TextObject)rpt.ReportDefinition.ReportObjects["txtMoneyCharge"];

if (sMoneyCharge != "N/A")

{

txtMoneyCharge.Text = "管 理 费:" + sMoneyCharge;

}

else

{

txtMoneyCharge.Text = "";

}

//直接打印

//rpt.PrintOptions.PrinterName = "打印机";

//rpt.PrintOptions.PrinterName = printerName;

rpt.PrintToPrinter(1, false, 0, 0);

return "1";

}

catch (Exception ex)

{

string sMsg = ex.Message;

sMsg = sMsg.Replace("\r", "");

sMsg = sMsg.Replace("\n", "");

sMsg = sMsg.Replace("\r\n", "");

return sMsg;

}

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: