Javascript printing question?
I am trying to call a print function to print a string from a database using javascript.
Which is RC_DATA of Varchar2(2500).
This is a javascript is not being used. I have a thing that needs to be modified:
if(e.CommandName =="Print")
{
string parsedreceipt = null;
parsedreceipt = DecodeReceipt (e.Item.Cells[3].Text);
Session["parsedreceipt"] = parsedreceipt;
/// Response.Write("<script language=\"JavaScript\">window.OpenNewWin('print.a spx', null, 'height=200,width=400');");
Response.Write("<script language=\"JavaScript\">window.open('print.aspx', null, 'height=200,width=400');</script>");
}
I am confused on what to do? I just want to print the string.
<script language="javascript">
function OpenNewWin(Receipt)
{
winNew = window.open("print.aspx?","printwindow","toolbar=n o,scrollbar=no,height=200,width=300,resizable=no,t op=200,left=200");
var PrintHtml ="<Table cellpadding=5 cellspacing=5 broder=0>";
PrintHtml = PrintHtml + "<TR><TD>Receipt</TD><TD width=5>:</TD><TD>" + Receipt + "</TD></TR>";
PrintHtml = PrintHtml + " </TABLE>";
PrintHtml = PrintHtml + " <DIV id=butPanel align=center> <input Type=button value=' Print ' onclick=Javascript:document.getElementById('butPan el').style.display='none';window.print();document. getElementById('butPanel').style.display='';>";
PrintHtml = PrintHtml + " <input type=button value=cancel onclick=javascript:window.close();></Div>";
winNew.document.body.innerHTML=PrintHtml;
winNew.focus();
}
</script>
===================================
.aspx
<%@ Register TagPrefix="cc1" Namespace="ActiveUp.WebControls" Assembly="ActiveDateTime" %>
<%@ Page Language="c#" Codebehind="Receipts.aspx.cs" AutoEventWireup="false" Inherits="MSPOS.Receipt" %>
<%@ Register TagPrefix="uc1" TagName="logout" Src="Engine/Controls/logout.ascx" %>
<%@ Register TagPrefix="mspos" TagName="header" Src="Engine/Controls/header.ascx" %>
<%@ Register TagPrefix="mspos" TagName="footer" Src="~/Engine/Controls/footer.ascx" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<script language="javascript">
function OpenNewWin(Receipt)
{
winNew = window.open("print.aspx?","printwindow","toolbar=n o,scrollbar=no,height=200,width=300,resizable=no,t op=200,left=200");
var PrintHtml ="<Table cellpadding=5 cellspacing=5 broder=0>";
PrintHtml = PrintHtml + "<TR><TD>Receipt</TD><TD width=5>:</TD><TD>" + Receipt + "</TD></TR>";
PrintHtml = PrintHtml + " </TABLE>";
PrintHtml = PrintHtml + " <DIV id=butPanel align=center> <input Type=button value=' Print ' onclick=Javascript:document.getElementById('butPan el').style.display='none';window.print();document. getElementById('butPanel').style.display='';>";
PrintHtml = PrintHtml + " <input type=button value=cancel onclick=javascript:window.close();></Div>";
winNew.document.body.innerHTML=PrintHtml;
winNew.focus();
}
</script>
</HEAD>
<BODY leftMargin="0" background="images/bg.gif" topMargin="0">
<form id="Form1" action="database.aspx" method="post" runat="server">
<strong>
<P><mspos:header id="Header1" runat="server"></mspos:header><BR>
</P>
<P align="center">
<asp:ImageButton id="MainMenu" runat="server" ImageUrl="images/mainmenu.jpg"></asp:ImageButton></P>
<DIV align="center">
<TABLE id="Table2" height="118" cellSpacing="1" cellPadding="1" width="355" border="0">
<TR>
<TD vAlign="top" width="147" colSpan="1" rowSpan="4">
<P><asp:radiobuttonlist id="Group_RadioButtonList" runat="server" BorderWidth="0px" CellSpacing="1" CellPadding="1"
Height="111px" Font-Bold="True" Font-Size="12px" Font-Names="Verdana"
Width="35px" BackColor="#FEF9E9">
<asp:ListItem Value="PayNumber">1</asp:ListItem>
<asp:ListItem Value="Cashier">2</asp:ListItem>
<asp:ListItem Value="StartDate">3</asp:ListItem>
</asp:radiobuttonlist></P>
</TD>
<TD noWrap colSpan="1" rowSpan="1">Payment Number:</TD>
<TD vAlign="middle" noWrap width="200" colSpan="1" rowSpan="1"><asp:textbox id="txtPayment" runat="server" MaxLength="10"></asp:textbox></TD>
</TR>
<TR>
<TD width="240">Cashier Number:</TD>
<TD><asp:textbox id="txtCashier" runat="server" MaxLength="8"></asp:textbox></TD>
</TR>
<TR>
<TD width="240" height="10">Start Date:</TD>
<TD height="10"><cc1:activedatetime id="ActiveDateTime3" runat="server" AllowNull="False" MonthNamesDisabled="True"
Format="DAY;-;MONTH;-;YEAR"></cc1:activedatetime></TD>
</TR>
<TR>
<TD width="240">End Date:
</TD>
<TD><cc1:activedatetime id="ActiveDateTime4" runat="server" AllowNull="False" MonthNamesDisabled="True"
Format="DAY;-;MONTH;-;YEAR"></cc1:activedatetime></TD>
</TR>
<TR>
<TD width="240"></TD>
<TD><asp:button id="btnRunQuery" onclick="btnRunQuery_Click" runat="server" text="Run Query" type="submit"></asp:button></TD>
</TR>
</TABLE>
</DIV>
</strong>
<DIV>
<br>
<strong>Results of:<BR>
</strong>
</DIV>
<DIV align="center">
<asp:datagrid id="ReceiptsDataGrid" runat="server" BorderWidth="3" CellSpacing="1" CellPadding="1"
Height="144px" Width="500px" OnItemDataBound="ReceiptsDataGrid_ItemDataBound"
OnItemCommand="ReceiptsDataGrid_ItemCommand" HeaderStyle-Font-Bold="True"
maintainviewstate="false" GridLines="None" BorderStyle="Outset" font-size="XX-Small"
font-names="Verdana" BorderColor="#CCCC99" AutoGenerateColumns="False">
<AlternatingItemStyle Wrap="False" BackColor="PaleGoldenrod"></AlternatingItemStyle>
<ItemStyle Wrap="False" BackColor="Beige"></ItemStyle>
<HeaderStyle Font-Size="14px" Font-Bold="True" ForeColor="White" BackColor="#954896"></HeaderStyle>
<Columns>
<asp:BoundColumn DataField="RC_PAYMNB" HeaderText="Payment Number "></asp:BoundColumn>
<asp:BoundColumn DataField="RC_CASHNB" HeaderText="Cash Number"></asp:BoundColumn>
<asp:BoundColumn DataField="RC_DATE" HeaderText="Date"></asp:BoundColumn>
<asp:BoundColumn DataField="RC_DATA" Visible="False" HeaderText="Data"></asp:BoundColumn>
<asp:TemplateColumn>
<ItemTemplate>
<asp:Button CommandName="View" Text="View" Runat="server" ID="Button1"></asp:Button>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn>
<ItemTemplate>
<asp:Button CommandName="Print" Text="Print" Runat="server" ID="Button2"></asp:Button>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:datagrid>
<P align="center">
<uc1:logout id="Logout1" runat="server"></uc1:logout></P>
</form>
</DIV></FORM>
</BODY>
</HTML>
.cs
====================================
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Data.Odbc;
using System.Text;
using System.Drawing;
using System.Data.Common;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
namespace MSPOS
{
/// <summary>
/// Summary description for Receipts.
/// </summary>
public class Receipt : System.Web.UI.Page
{
protected System.Web.UI.WebControls.RadioButtonList Group_RadioButtonList;
protected System.Web.UI.WebControls.DataGrid ReceiptsDataGrid;
private DataSet ddlDataSet = new DataSet();
private OdbcConnection myConnection = new OdbcConnection("DSN=MSPOS;UID=system;PWD=system");
protected System.Web.UI.WebControls.Button btnRunQuery;
protected System.Web.UI.WebControls.Button Button2;
protected System.Web.UI.WebControls.TextBox txtPayment;
protected System.Web.UI.WebControls.TextBox txtCashier;
private DataSet ddlDataSet1 = new DataSet();
private DataSet ddlDataSet2 = new DataSet();
protected ActiveUp.WebControls.ActiveDateTime ActiveDateTime3;
protected ActiveUp.WebControls.ActiveDateTime ActiveDateTime4;
private DataSet ddlDataSet3 = new DataSet();
protected System.Web.UI.WebControls.ImageButton MainMenu;
protected System.Web.UI.WebControls.Button Button1;
protected string AccessLevel = null;
private void Page_Load(object sender, System.EventArgs e)
{
// Put user code to initialize the page here
if (!Page.IsPostBack)
{
ActiveDateTime3.Date = System.DateTime.Today.Date;
ActiveDateTime4.Date = System.DateTime.Today.Date;
}
}
private void MainMenu_Click(Object sender, ImageClickEventArgs e)
{
AccessLevel = Session["Authenticated"].ToString();
if (AccessLevel == "1")
Response.Redirect("AdminStart.aspx");
else if (AccessLevel == "2")
Response.Redirect("CCManStart.aspx");
else if (AccessLevel == "3")
Response.Redirect("CCashierStart.aspx");
else if (AccessLevel == "4")
Response.Redirect("CashierStart.aspx");
else Response.Redirect("Error.aspx");
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.MainMenu.Click += new System.Web.UI.ImageClickEventHandler(this.MainMenu _Click);
this.Group_RadioButtonList.SelectedIndexChanged += new System.EventHandler(this.Group_RadioButtonList_Sel ectedIndexChanged);
this.txtCashier.TextChanged += new System.EventHandler(this.txtCashier_TextChanged);
this.btnRunQuery.Click += new System.EventHandler(this.btnRunQuery_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
public string DecodeReceipt (string szBill)
{
string szNewBill="";
// Create an ASCII encoding.
Encoding ascii = Encoding.ASCII;
Byte[] encodedBytes = ascii.GetBytes(szBill);
foreach (Byte a in encodedBytes)
{
if (a ==10 || a ==15 ||a==18 ||a ==27)
{}
else if (a == 13)
szNewBill = szNewBill + "\\n";
else
szNewBill = szNewBill +(char) a;
}
return szNewBill;
}
private void txtPayment_TextChanged(object sender, System.EventArgs e)
{
}
private void txtCashier_TextChanged(object sender, System.EventArgs e)
{
}
//************************************************** *********************
// Get RC_PAYMND and populate dataset
public DataSet BindRC_PAYMND(string searchstring)
{
OdbcConnection myConnection = new OdbcConnection("DSN=MSPOS;UID=system;PWD=system");
// Populate the ddlDataSet1
myConnection.Open();
string strSQLDDL = @"SELECT RC_PAYMNB FROM TBRECEIPTS WHERE RC_PAYMNB='"+searchstring+"'";
OdbcDataAdapter myDataAdapter = new OdbcDataAdapter(strSQLDDL, myConnection);
ddlDataSet1.Clear();
myDataAdapter.Fill(ddlDataSet1, "ddlRC_PAYMNB");
myDataAdapter.Dispose();
myDataAdapter = null;
myConnection.Close();
strSQLDDL = null;
return ddlDataSet1;
}
//************************************************** *********************
//************************************************** *********************
// Get RC_CASHND and populate dataset
public DataSet BindRC_CASHND(string searchstring)
{
OdbcConnection myConnection = new OdbcConnection("DSN=MSPOS;UID=system;PWD=system");
// Populate the ddlDataSet2
myConnection.Open();
string strSQLDDL = @"SELECT RC_CASHNB FROM TBRECEIPTS WHERE RC_CASHNB='"+searchstring+"'";
OdbcDataAdapter myDataAdapter = new OdbcDataAdapter(strSQLDDL, myConnection);
ddlDataSet2.Clear();
myDataAdapter.Fill(ddlDataSet2, "ddlRC_CASHNB");
myDataAdapter.Dispose();
myDataAdapter = null;
myConnection.Close();
strSQLDDL = null;
return ddlDataSet2;
}
//************************************************** *********************
//************************************************** *********************
// Get RC_CASHND and populate dataset with RC_CASHND and RC_DATE
public DataSet BindRC_DATE()
{
OdbcConnection myConnection = new OdbcConnection("DSN=MSPOS;UID=system;PWD=system");
// Populate the ddlDataSet3
myConnection.Open();
string strSQLDDL = @"SELECT RC_DATE FROM TBRECEIPTS";
OdbcDataAdapter myDataAdapter = new OdbcDataAdapter(strSQLDDL, myConnection);
ddlDataSet3.Clear();
myDataAdapter.Fill(ddlDataSet3, "ddlRC_DATE");
myDataAdapter.Dispose();
myDataAdapter = null;
myConnection.Close();
strSQLDDL = null;
return ddlDataSet3;
}
//************************************************** *********************
public void ReceiptsDataGrid_ItemDataBound(object sender,System.Web.UI.WebControls.DataGridItemEvent Args e)
{
if(e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType==ListItemType.Item )
{
string parsedreceipt = null;
string strValue="Javascript:OpenNewWin('"+ DecodeReceipt(e.Item.Cells[3].Text) + "');";
Button btn = ( (Button) e.Item.FindControl("Button2") );
Session["parsedreceipt"] = parsedreceipt;
btn.Attributes.Add("Onclick",strValue);
}
}
//************************************************** *********************
public void ReceiptsDataGrid_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
ListItemType oType = ((ListItemType)e.Item.ItemType);
if(oType == ListItemType.Item || oType == ListItemType.AlternatingItem)
{
e.Item.Attributes.Add("onmouseover", "this.style.backgroundColor='lightblue'");
e.Item.Attributes.Add("onmouseout", "this.style.backgroundColor='Beige'");
}
if(e.CommandName =="View")
{
string parsedreceipt = null;
parsedreceipt = DecodeReceipt (e.Item.Cells[3].Text);
StringBuilder strAlert = new StringBuilder();
strAlert.Append("<script language=javascript> alert('");
strAlert.Append("Receipt: " + parsedreceipt + "\\n");
strAlert.Append("');</script>");
this.RegisterStartupScript("startup",strAlert.ToSt ring());
}
if(e.CommandName =="Print")
{
string parsedreceipt = null;
parsedreceipt = DecodeReceipt (e.Item.Cells[3].Text);
Session["parsedreceipt"] = parsedreceipt;
/// Response.Write("<script language=\"JavaScript\">window.OpenNewWin('print.a spx', null, 'height=200,width=400');");
Response.Write("<script language=\"JavaScript\">window.open('print.aspx', null, 'height=200,width=400');</script>");
}
}
private void Group_RadioButtonList_SelectedIndexChanged(object sender, System.EventArgs e)
{
}
public void btnRunQuery_Click(object sender, System.EventArgs e)
{
string select_statement = "SELECT RC_PAYMNB, RC_CASHNB, RC_DATE, RC_DATA FROM TBRECEIPTS";
string DateString1 = ActiveDateTime3.Date.Day.ToString() + "-" + ActiveDateTime3.Date.Month.ToString() + "-" + ActiveDateTime3.Date.Year.ToString();
string DateString2 = ActiveDateTime4.Date.Day.ToString() + "-" + ActiveDateTime4.Date.Month.ToString() + "-" + ActiveDateTime4.Date.Year.ToString();
switch (Group_RadioButtonList.SelectedIndex)
{
case 0:
select_statement += " Where RC_PAYMNB='" + txtPayment.Text + "'";
break;
case 1:
select_statement += " Where RC_CASHNB='" + txtCashier.Text + "'";
break;
case 2:
select_statement += " Where To_Date(RC_DATE, 'dd-mm-yyyy') <= '" + DateString2.ToString() + "' And To_Date(RC_DATE, 'dd-mm-yyyy') >= '" + DateString1.ToString() + "'";
break;
}
OdbcConnection myConnection = new
OdbcConnection("DSN=MSPOS;UID=system;PWD=system");
// Populate the ddlDataSet1
myConnection.Open();
string strSQLDDL = select_statement;
OdbcDataAdapter myDataAdapter = new OdbcDataAdapter(strSQLDDL,myConnection);
ddlDataSet1.Clear();
myDataAdapter.Fill(ddlDataSet1);
myDataAdapter.Dispose();
myDataAdapter = null;
myConnection.Close();
ReceiptsDataGrid.DataSource = ddlDataSet1.Tables[0];
ReceiptsDataGrid.DataBind();
}
private void ReceiptsDataGrid_SelectedIndexChanged(object sender, System.EventArgs e)
{
}
}
}
Knowledge is to be shared.
__________________
Knowledge is to be shared.
|