Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Microsoft ASP .NET Professional Projects - Premier Press

.pdf
Скачиваний:
147
Добавлен:
24.05.2014
Размер:
4.63 Mб
Скачать

sql = "Execute p_trans @date = '" + vdate+ "' ,@ref= '" sql = sql + ref + "', @dr_amount ="

sql = sql + dr_amt + ",@cr_amount = "

sql = sql + cr_amt +" , @posted_to = " + posted_display + " ,"

sql = sql + "@id = 'RPT', @doc_no = " + doc_no + ", @narr= '" + narr+ "'" RunSql(sql)

rebind() End Sub

Sub add_click(Source As Object, E As EventArgs)

Dim sql As string

sql = "Execute p_trans @date = '" + adate.text + "' ," sql = sql + "@ref= '" + aref.text + "', @dr_amount = " sql = sql + adr_amount.text + ",@cr_amount = "

sql = sql + acr_amount.text +" , @posted_to = '"

sql = sql + aposted_display.SelectedItem.value + "' ,"

sql = sql + "@id = 'RPT', @doc_no = NULL" + ", @narr= '" sql = sql + anarr.text + "'"

RunSql(sql)

rebind()

hidePanel() End Sub

Sub add_show(Source As Object, E As EventArgs)

AddPanel.visible = true

End Sub

Sub Grid1_delete(sender As Object, e As DataGridCommandEventArgs) Dim doc_no As string = Grid1.DataKeys.Item(E.Item.ItemIndex).ToString Dim sql As string

sql = " Delete from transactions where doc_no = " + cstr(doc_no) sql = sql + " Delete from tr_header where doc_no = " + cstr(doc_no) RunSql(sql)

rebind() End Sub

</script>

<body style="font: 10pt verdana"> <asp:ValidationSummary runat=server headertext="There were errors on the page:" /> <form runat="server">

<h3><font face="Verdana"> Transactions for Account # <asp:Label id="title" runat="server"/>

</font></h3>

<asp:HyperLink runat="server" Text="Financial Account Selection " NavigateUrl="selection.aspx"></asp:HyperLink>&nbsp

<asp:HyperLink runat="server" Text="Masters" NavigateUrl="masters3.aspx"> </asp:HyperLink>&nbsp

<asp:HyperLink runat="server" Text="Trial Balance" NavigateUrl="TrialBalanc e.aspx"> </asp:HyperLink>&nbsp

<asp:HyperLink runat="server" Text="Home" NavigateUrl="default.aspx"> </asp:HyperLink>

<table width="95%"> <tr><td>

<asp:Button id="Addshow" visible = "false" text="New Transaction" onclick="add_show" runat="server" />

</td></tr>

<hr>

<tr>

<td valign="top">

<asp:DataGrid id="Grid1" runat="server" AutoGenerateColumns="false" BackColor="White"

BorderWidth="1px" BorderStyle="Solid" BorderColor="Tan"

CellPadding="2" CellSpacing="0"

Font-Name="Verdana" Font-Size="8pt"

OnEditCommand="Grid1_Edit"

OnCancelCommand="Grid1_Cancel"

OnUpdateCommand="Grid1_Update"

OnDeleteCommand = "Grid1_delete"

DataKeyField="doc_no">

<Columns>

<asp:EditCommandColumn

EditText="Edit"

CancelText="Cancel"

UpdateText="OK"

ItemStyle-Wrap="false"

HeaderText="Edit"

HeaderStyle-Wrap="false"/>

<asp:ButtonColumn Text="Delete" CommandName="Delete" HeaderText="Delete"/> <asp:BoundColumn HeaderText="Doc #" ReadOnly="true" DataField="doc_no"/> <asp:TemplateColumn HeaderText="Ref" >

<ItemTemplate>

<asp:Label Text='<%# Container.DataItem("ref") %>' runat="server"/> </ItemTemplate>

<EditItemTemplate>

<asp:TextBox id="edit_ref" Text='<%# Container.DataItem("ref") %>' runat="server"/>

</EditItemTemplate>

</asp:TemplateColumn> <asp:TemplateColumn HeaderText="Date" >

<ItemTemplate>

<asp:Label Text='<%# Container.DataItem("date") %>'runat="server" /> </ItemTemplate>

<EditItemTemplate >

<asp:TextBox id="edit_date" BorderStyle="None" Readonly="True" Text='<%# Container.DataItem("date") %>' runat="server" />

</EditItemTemplate>

</asp:TemplateColumn> <asp:TemplateColumn HeaderText="Payee" >

<ItemTemplate>

<asp:Label Text='<%# Container.DataItem("posted_display") %>' runat="server"/>

</ItemTemplate>

<EditItemTemplate>

<asp:TextBox id="edit_posted_display" Text='<%# Container.DataItem("posted_to") %>'

runat="server" ReadOnly="true" BorderStyle="None" /> </EditItemTemplate>

</asp:TemplateColumn>

<asp:TemplateColumn HeaderText="Narration" > <ItemTemplate>

<asp:Label Text='<%# Container.DataItem("narr") %>' runat="server"/> </ItemTemplate>

<EditItemTemplate>

<asp:TextBox id="edit_narr" Text='<%# Container.DataItem("narr") %>' runat="server"/>

</EditItemTemplate>

</asp:TemplateColumn> <asp:TemplateColumn HeaderText="Deposit" >

<ItemTemplate>

<asp:Label Text='<%# Container.DataItem("dr_amount") %>' runat="server"/>

</ItemTemplate>

<EditItemTemplate> <asp:TextBox id="edit_dr_amt"

Text='<%# Container.DataItem("dr_amount") %>' runat="server"/> </EditItemTemplate>

</asp:TemplateColumn>

<asp:TemplateColumn HeaderText="Payment" > <ItemTemplate>

<asp:Label Text='<%# Container.DataItem("cr_amount") %>' runat="server"/>

</ItemTemplate>

<EditItemTemplate> <asp:TextBox id="edit_cr_amt"

Text='<%# Container.DataItem("cr_amount") %>' runat="server"/> </EditItemTemplate>

</asp:TemplateColumn>

</Columns>

<HeaderStyle BackColor="DarkRed" ForeColor="White" Font -Bold="true"> </HeaderStyle>

<ItemStyle ForeColor="DarkSlateBlue"> </ItemStyle>

<AlternatingItemStyle BackColor="Beige"> </AlternatingItemStyle>

</asp:DataGrid>

</td>

<td valign="top">

 

<! ----insert row logic------------

>

<asp:Panel id="AddPanel" runat="server" Visible="false"> <table style="font: 8pt verdana">

<tr>

<td colspan="2" bgcolor="#aaaadd" style="font:10pt verdana"> Add a New Transaction:</td>

</tr>

<tr>

<td nowrap>Date (Required): </td>

<td><asp:TextBox id="adate" runat="server" value = "" /></td> <td> <asp:RequiredFieldValidator runat=server

controltovalidate=adate errormessage="Date is required.">* </asp:RequiredFieldValidator></td>

</tr>

<tr>

<td nowrap>Reference (Required/ must be unique): </td> <td><asp:TextBox id="aref" value = "" runat="server" /></td> <td> <asp:RequiredFieldValidator runat=server

controltovalidate=aref

errormessage="A unique reference # is required.">* </asp:RequiredFieldValidator></td>

</tr>

<tr>

<td nowrap>Account Posted To: </td> <td><asp:DropDownList DataTextField = "code_display"

DataValueField = "code_value" id="aposted_display" runat="server" /></td> </tr>

<tr>

<td nowrap>Narration: </td>

<td><asp:TextBox id="anarr" value = "" runat="server" /></td> </tr>

<tr>

<td nowrap>Deposit Amount: </td>

<td><asp:TextBox id="adr_amount" value = 0 runat="server" /></td> </tr>

<tr>

<td nowrap>Payment Amount: </td>

<td><asp:TextBox id="acr_amount" value = 0 runat="server" /></td> </tr>

<tr>

<td style="padding-top:15">

<asp:Button id="SubmitDetailsBtn" text="Submit" onclick="add_Click" runat="server" />

</td>

</tr>

</table>

</asp:Panel>

<!--------Insert Logic ends ------> </td>

</tr>

</table>

<hr>

<asp:Label id="Message" runat="server"/> </form>

</body>

</html>

Transactions.vb is the Code Behind file. It has the following code:

Transactions.vb (Code Behind)

Option Strict Off

Imports System

Imports System.Collections

Imports System.Text

Imports System.Data

Imports System.Data.OleDb

Imports System.Web.UI

Imports System.Web.UI.WebControls

Public Class BaseClass

Inherits System.Web.UI.Page

Protected Grid1 as DataGrid

Protected Message as label, title as label

Protected aposted_display as dropdownlist, selection as dropdownlist Protected AddPanel as Panel

Protected adate as TextBox, aref as TextBox, adr_amount as TextBox Protected acr_amount as TextBox , anarr as TextBox

Protected addshow as button

Dim myConnection As OleDbConnection

Dim myCommand As OleDbDataAdapter

Dim ds As New DataSet

Dim ConnStr As String

Dim SQL As String

Sub Page_Load(Source As Object, E As EventArgs) ConnStr = "Provider=SQLOLEDB; Data Source=(local);

ConnStr = ConnStr + " Initial Catalog=ASPNET;User ID=sa;" " myConnection = New OleDbConnection(ConnStr)

if NOT (isPostBack)

Dim code as string, display as string code = Request.Form("Selection") title.text = code

if code = "" then response.redirect("selection.aspx")

end if UpdateSelection(code) rebind

end if End Sub

Sub ReBind()

SQL = " select m.code_value,m.code_display,t.*, h.* ,"

sql = sql + "(select code_display from masters where code_value = t.posted_to) " sql = sql + " as posted_display "

sql = sql + " from tr_header h,transactions t, masters m " sql = sql + " where t.doc_no = h.doc_no "

sql = sql + " and m.code_value = t.code_value"

sql = sql + " and m.code_value = (select selection from tblSelection)" myCommand = New OleDbDataAdapter(SQL, myConnection)

'use Fill method to populate dataset myCommand.Fill(ds, "transactions") 'Binding a Grid

Grid1.DataSource=ds.Tables("transactions").DefaultView

Grid1.DataBind()

'populate account selection drop down list ' which is visible in the add mode

SQL = "Select * from masters where code_value <> "

SQL = SQL + " (select selection from tblSelection)"

myCommand = New OleDbDataAdapter(SQL, myConnection) myCommand.Fill(ds, "masters") aposted_display.DataSource=ds.Tables("masters").DefaultView aposted_display.DataBind()

addshow.visible = true End Sub

Sub Grid1_Edit(Sender As Object, E As DataGridCommandEventArgs)

Grid1.EditItemIndex = E.Item.ItemIndex

ReBind()

End Sub

Sub Grid1_Cancel(Sender As Object, E As DataGridCommandEventArgs)

Grid1.EditItemIndex = -1

ReBind()

End Sub

Sub RunSql(vsql as string) try

'sql = "Execute p_test " + vkey

Dim mycommand2 As New OleDbCommand(vsql,myConnection) myConnection.Open()

myCommand2.ExecuteNonQuery()

myConnection.Close() 'turn off editing Grid1.EditItemIndex = -1

Catch ex As OleDbException ' SQL error

Dim errItem As OleDbError

Dim errString As String

For Each errItem In ex.Errors errString += ex.Message + "<br/>"

Next

Message.Style("color") = "red"

Response.write("DataBase Error :" + errString)

Catch myException as Exception Response.Write("Exception: " + myException.ToString())

Message.Style("color") = "red"

Finally

message.text = vsql