Example Application: Solas Property Rental |
|
Introduction |
Solas Property Rental is a fictitious company that manages various types of real estate properties and rents them to customers. The types of properties include apartments, townhouses, and single families. In this application, we simulate various customer-oriented transactions, including registering the potential tenants, assigning the properties to them, and collecting payments. This application was created to illustrate the various techniques of performing operations on XML elements: creating the elements, locating the values, and displaying them. |
Practical Learning: Introducing the Application |
(Name) | Text | TextAlign | Width |
colAccountNumber | Account # | 65 | |
colFullName | Full Name | 120 | |
colMaritalStatus | Marital Status | 85 | |
colPhoneNumber | Phone # | Center | 85 |
|
#pragma once using namespace System; using namespace System::ComponentModel; using namespace System::Collections; using namespace System::Windows::Forms; using namespace System::Data; using namespace System::Drawing; using namespace System::IO; using namespace System::Xml; |
void ShowTenants() { String ^ Filename = L"C:\\Solas Property Rental\\tenants.xml"; XmlDocument ^ DOMDocument = gcnew XmlDocument; if( File::Exists(Filename) ) { lvwTenants->Items->Clear(); DOMDocument->Load(Filename); XmlElement ^ ElementTenant = DOMDocument->DocumentElement; XmlNodeList ^ ListOfTenants = ElementTenant->ChildNodes; for each(XmlNode ^ Node in ListOfTenants) { ListViewItem ^ lviTenant = gcnew ListViewItem(Node->FirstChild->InnerText); // Account Number lviTenant->SubItems->Add(Node->FirstChild->NextSibling->InnerText); // Full Name lviTenant->SubItems->Add(Node->FirstChild->NextSibling->NextSibling->InnerText); // Phone Number lviTenant->SubItems->Add(Node->FirstChild->NextSibling->NextSibling->NextSibling->InnerText); // Marital Status lvwTenants->Items->Add(lviTenant); } } }
Void Tenants_Load(System::Object^ sender, System::EventArgs^ e) { ShowTenants(); } |
|
(Name) | Text | TextAlign | Width |
colPropertyCode | Prop Code | 65 | |
colPropertyType | Property Type | 85 | |
colBedrooms | Bedrooms | Right | 65 |
colBathrooms | Bathrooms | Right | 65 |
colMonthlyRent | Monthly Rent | Right | 75 |
colStatus | Status | 65 |
|
#pragma once using namespace System; using namespace System::ComponentModel; using namespace System::Collections; using namespace System::Windows::Forms; using namespace System::Data; using namespace System::Drawing; using namespace System::IO; using namespace System::Xml;
void ShowProperties() { XmlDocument ^ docProperties = gcnew XmlDocument; String ^ Filename = L"C:\\Solas Property Rental\\properties.xml"; if( File::Exists(Filename) ) { lvwProperties->Items->Clear(); docProperties->Load(Filename); XmlElement ^ ElementProperty = docProperties->DocumentElement; XmlNodeList ^ ListOfProperties = ElementProperty->ChildNodes; for each(XmlNode ^ Node in ListOfProperties) { ListViewItem ^ lviProperty = gcnew ListViewItem(Node->FirstChild->InnerText); // Property Code lviProperty->SubItems->Add(Node->FirstChild->NextSibling->InnerText); // Property Type lviProperty->SubItems->Add(Node->FirstChild->NextSibling->NextSibling->InnerText); // Bedrooms lviProperty->SubItems->Add(Node->FirstChild->NextSibling->NextSibling->NextSibling->InnerText); // Bathrooms lviProperty->SubItems->Add(Node->FirstChild->NextSibling->NextSibling->NextSibling->NextSibling->InnerText); // Monthly Rent lviProperty->SubItems->Add(Node->FirstChild->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->InnerText); // Status lvwProperties->Items->Add(lviProperty); } } }
Void RentalProperties_Load(System::Object^ sender, System::EventArgs^ e) { ShowProperties(); } |
|
|
#pragma once using namespace System; using namespace System::ComponentModel; using namespace System::Collections; using namespace System::Windows::Forms; using namespace System::Data; using namespace System::Drawing; using namespace System::IO; using namespace System::Xml; |
Void txtTenantAcntNbr_Leave(System::Object^ sender, System::EventArgs^ e) { String ^ Filename = L"C:\\Solas Property Rental\\tenants.xml"; XmlDocument ^ DOMDocument = gcnew XmlDocument; if( File::Exists(Filename) ) { DOMDocument->Load(Filename); XmlElement ^ ElementTenant = DOMDocument->DocumentElement; XmlNodeList ^ ListOfTenants = ElementTenant->ChildNodes; bool TenantFound = false; for (int i = 0; i < ListOfTenants->Count; i++) { XmlNode ^ Node = ListOfTenants[i]; if (Node->FirstChild->InnerText == txtTenantAcntNber->Text) { TenantFound = true; txtTenantName->Text = Node->FirstChild->NextSibling->InnerText; txtMaritalStatus->Text = Node->FirstChild->NextSibling->NextSibling->InnerText; } } if( TenantFound == false ) { MessageBox::Show(L"There is no tenant with that account number"); txtTenantAcntNber->Text = L""; } } else MessageBox::Show(L"There is no list of tenants to check."); }
Void txtPropertyCode_Leave(System::Object^ sender, System::EventArgs^ e) { String ^ Filename = L"C:\\Solas Property Rental\\properties.xml"; XmlDocument ^ docProperties = gcnew XmlDocument; if( File::Exists(Filename) ) { docProperties->Load(Filename); XmlElement ^ ElementProperty = docProperties->DocumentElement; XmlNodeList ^ ListOfProperties = ElementProperty->ChildNodes; bool PropertyFound = false; for (int i = 0; i < ListOfProperties->Count; i++) { XmlNode ^ Node = ListOfProperties[i]; if( Node->FirstChild->InnerText == txtPropertyCode->Text ) { PropertyFound = true; txtPropertyType->Text = Node->FirstChild->NextSibling->InnerText; txtMonthlyRent->Text = Node->FirstChild->NextSibling->NextSibling->NextSibling->NextSibling->InnerText; } } if (PropertyFound == false) { MessageBox::Show(L"There is no Property with that code"); txtPropertyType->Text = L""; } } else MessageBox::Show(L"There is no list of properties to check."); }
(Name) | Text | TextAlign | Width |
colAllocationCode | Alloc Code | 65 | |
colDateAllocated | Date Allocated | Center | 85 |
colTenantAccount | Tenant # | Center | 65 |
colTenantName | Tenant Name | 100 | |
colPropertyCode | Prop Code | Center | 65 |
colPropertyType | Prop Type | 75 | |
colContractLength | Contract Length | 88 | |
colRentStartDate | Rent Start Date | Center | 88 |
colMonthlyRent | Monthly Rent | Right | 76 |
#pragma once using namespace System; using namespace System::ComponentModel; using namespace System::Collections; using namespace System::Windows::Forms; using namespace System::Data; using namespace System::Drawing; using namespace System::IO; using namespace System::Xml; |
void ShowRentalAllocations() { String ^ Filename = L"C:\\Solas Property Rental\\contracts.xml"; XmlDocument ^ DOMAllocations = gcnew XmlDocument; if( File::Exists(Filename) ) { lvwAllocations->Items->Clear(); DOMAllocations->Load(Filename); XmlElement ^ ElementAllocation = DOMAllocations->DocumentElement; XmlNodeList ^ ListOfAllocations = ElementAllocation->ChildNodes; for each(XmlNode ^ Node in ListOfAllocations) { ListViewItem ^ lviAllocation = gcnew ListViewItem(Node->FirstChild->InnerText); // Allocation Code lviAllocation->SubItems->Add(Node->FirstChild->NextSibling->InnerText); // Date Allocated lviAllocation->SubItems->Add(Node->FirstChild->NextSibling->NextSibling->InnerText); // Tenant Account Number lviAllocation->SubItems->Add(Node->FirstChild->NextSibling->NextSibling->NextSibling->InnerText); // Tenant Name lviAllocation->SubItems->Add(Node->FirstChild->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->InnerText); // Property Code lviAllocation->SubItems->Add(Node->FirstChild->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->InnerText); // Property Type lviAllocation->SubItems->Add(Node->FirstChild->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->InnerText); // Contract Length lviAllocation->SubItems->Add(Node->FirstChild->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->InnerText); // Rent Start Date lviAllocation->SubItems->Add(Node->FirstChild->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->InnerText); // Monthly Rent lvwAllocations->Items->Add(lviAllocation); } } }
Void RentalAllocations_Load(System::Object^ sender, System::EventArgs^ e) { ShowRentalAllocations(); } |
|
#pragma once using namespace System; using namespace System::ComponentModel; using namespace System::Collections; using namespace System::Windows::Forms; using namespace System::Data; using namespace System::Drawing; using namespace System::IO; using namespace System::Xml; |
Void txtAllocationCode_Leave(System::Object^ sender, System::EventArgs^ e) { String ^ Filename = L"C:\\Solas Property Rental\\contracts.xml"; XmlDocument ^ DOMAllocations = gcnew XmlDocument; if( File::Exists(Filename) ) { DOMAllocations->Load(Filename); XmlElement ^ ElementAllocation = DOMAllocations->DocumentElement; XmlNodeList ^ ListOfAllocations = ElementAllocation->ChildNodes; bool ContractFound = false; for (int i = 0; i < ListOfAllocations->Count; i++) { XmlNode ^ Node = ListOfAllocations[i]; if (Node->FirstChild->InnerText == txtAllocationCode->Text) { ContractFound = true; txtTenantAcntNber->Text = Node->FirstChild->NextSibling->NextSibling->InnerText; txtTenantName->Text = Node->FirstChild->NextSibling->NextSibling->NextSibling->InnerText; txtPropertyCode->Text = Node->FirstChild->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->InnerText; txtPropertyType->Text = Node->FirstChild->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->InnerText; txtAmountReceived->Text = Node->FirstChild->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->InnerText; } } if (ContractFound == false) { MessageBox::Show(L"There is no rental contral with that number"); txtTenantAcntNber->Text = L""; } } else MessageBox::Show(L"There is no list of rental contracts to check."); }
(Name) | Text | TextAlign | Width |
colReceiptNumber | Receipt # | Right | |
colDateReceived | Date Received | Center | 85 |
colAllocationCode | Alloc Code | Center | 65 |
colTenantAccount | Tenant # | Center | 65 |
colTenantName | Tenant Name | 100 | |
colPropertyCode | Prop Code | Center | 65 |
colPropertyType | Prop Type | 75 | |
colPaymentFor | Payment For | 88 | |
colAmountReceived | Amount | Right | 50 |
|
#pragma once using namespace System; using namespace System::ComponentModel; using namespace System::Collections; using namespace System::Windows::Forms; using namespace System::Data; using namespace System::Drawing; using namespace System::IO; using namespace System::Xml; |
void ShowRentPayments() { String ^ Filename = L"C:\\Solas Property Rental\\payments.xml"; XmlDocument ^ DocumentPayments = gcnew XmlDocument(); if( File::Exists(Filename) ) { lvwRentPayments->Items->Clear(); DocumentPayments->Load(Filename); XmlElement ^ ElementAllocation = DocumentPayments->DocumentElement; XmlNodeList ^ ListOfAllocations = ElementAllocation->ChildNodes; for each(XmlNode ^ Node in ListOfAllocations) { ListViewItem ^ lviPayment = gcnew ListViewItem(Node->FirstChild->InnerText); // Receipt Number lviPayment->SubItems->Add(Node->FirstChild->NextSibling->InnerText); // Date Received lviPayment->SubItems->Add(Node->FirstChild->NextSibling->NextSibling->InnerText); // Allocation Code lviPayment->SubItems->Add(Node->FirstChild->NextSibling->NextSibling->NextSibling->InnerText); // Tenant Account Number lviPayment->SubItems->Add(Node->FirstChild->NextSibling->NextSibling->NextSibling->NextSibling->InnerText); // Tenant Name lviPayment->SubItems->Add(Node->FirstChild->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->InnerText); // Property Code lviPayment->SubItems->Add(Node->FirstChild->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->InnerText); // Property Type lviPayment->SubItems->Add(Node->FirstChild->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->InnerText); // Payment For lviPayment->SubItems->Add(Node->FirstChild->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->NextSibling->InnerText); // Amount lvwRentPayments->Items->Add(lviPayment); } } }
Void RentPayments_Load(System::Object^ sender, System::EventArgs^ e) { ShowRentPayments(); } |
|
#pragma once #include "RentPayments.h" #include "RentalAllocations.h" #include "Tenants.h" #include "RentalProperties.h" namespace SolasPropertyRental1 { |
Void btnRentPayments_Click(System::Object^ sender, System::EventArgs^ e) { RentPayments ^ frmPayment = gcnew RentPayments; frmPayment->Show(); } |
Void btnRentalAllocations_Click(System::Object^ sender, System::EventArgs^ e) { RentalAllocations ^ frmAllocations = gcnew RentalAllocations; frmAllocations->ShowDialog(); } |
Void btnTenants_Click(System::Object^ sender, System::EventArgs^ e) { Tenants ^ frmTenants = gcnew Tenants; frmTenants->ShowDialog(); } |
Void btnRentalProperties_Click(System::Object^ sender, System::EventArgs^ e) { RentalProperties ^ frmProperties = gcnew RentalProperties; frmProperties->ShowDialog(); } |
Void btnClose_Click(System::Object^ sender, System::EventArgs^ e) { Close(); } |
|
Practical Learning: Assigning a Property |
#pragma once #include "RentalAllocation.h" using namespace System; using namespace System::ComponentModel; using namespace System::Collections; using namespace System::Windows::Forms; using namespace System::Data; using namespace System::Drawing; using namespace System::IO; using namespace System::Xml; |
Void btnNewAllocation_Click(System::Object^ sender, System::EventArgs^ e) { String ^ AllocationCode, ^TenantAccountNumber, ^ TenantName, ^ MaritalStatus, ^ PropertyCode, ^ PropertyType, ^ ContractLength; DateTime DateAllocated, RentStartDate; double MonthlyRent; RentalAllocation ^ Editor = gcnew RentalAllocation; Directory::CreateDirectory(L"C:\\Solas Property Rental"); String ^ Filename = L"C:\\Solas Property Rental\\contracts.xml"; if( Editor->ShowDialog() == System::Windows::Forms::DialogResult::OK ) { XmlDocument ^ DOMAllocation = gcnew XmlDocument; if( !File::Exists(Filename) ) { DOMAllocation->LoadXml(L"<?xml version=\"1.0\" encoding=\"utf-8\"?>" + L"<Allocations></Allocations>"); DOMAllocation->Save(Filename); } DOMAllocation->Load(Filename); XmlElement ^ RootNode = DOMAllocation->DocumentElement; AllocationCode = Editor->txtAllocationCode->Text; DateAllocated = Editor->dtpDateAllocated->Value; TenantAccountNumber = Editor->txtTenantAcntNber->Text; TenantName = Editor->txtTenantName->Text; MaritalStatus = Editor->txtMaritalStatus->Text; PropertyCode = Editor->txtPropertyCode->Text; PropertyType = Editor->txtPropertyType->Text; MonthlyRent = double::Parse(Editor->txtMonthlyRent->Text); ContractLength = Editor->cbxContractLengths->Text; RentStartDate = Editor->dtpRentStartDate->Value; XmlElement ^ RootElement = DOMAllocation->DocumentElement; XmlElement ^ ElementAllocation = DOMAllocation->CreateElement(L"RentalAllocation"); RootElement->AppendChild(ElementAllocation); RootElement = DOMAllocation->DocumentElement; ElementAllocation = DOMAllocation->CreateElement(L"AllocationCode"); XmlText ^ TextAllocation = DOMAllocation->CreateTextNode(AllocationCode); RootElement->LastChild->AppendChild(ElementAllocation); RootElement->LastChild->LastChild->AppendChild(TextAllocation); ElementAllocation = DOMAllocation->CreateElement(L"DateAllocated"); TextAllocation = DOMAllocation->CreateTextNode(DateAllocated.ToString(L"d")); RootElement->LastChild->AppendChild(ElementAllocation); RootElement->LastChild->LastChild->AppendChild(TextAllocation); ElementAllocation = DOMAllocation->CreateElement(L"TenantAccountNumber"); TextAllocation = DOMAllocation->CreateTextNode(TenantAccountNumber); RootElement->LastChild->AppendChild(ElementAllocation); RootElement->LastChild->LastChild->AppendChild(TextAllocation); ElementAllocation = DOMAllocation->CreateElement(L"TenantName"); TextAllocation = DOMAllocation->CreateTextNode(TenantName); RootElement->LastChild->AppendChild(ElementAllocation); RootElement->LastChild->LastChild->AppendChild(TextAllocation); ElementAllocation = DOMAllocation->CreateElement(L"MaritalStatus"); TextAllocation = DOMAllocation->CreateTextNode(MaritalStatus); RootElement->LastChild->AppendChild(ElementAllocation); RootElement->LastChild->LastChild->AppendChild(TextAllocation); ElementAllocation = DOMAllocation->CreateElement(L"PropertyCode"); TextAllocation = DOMAllocation->CreateTextNode(PropertyCode); RootElement->LastChild->AppendChild(ElementAllocation); RootElement->LastChild->LastChild->AppendChild(TextAllocation); ElementAllocation = DOMAllocation->CreateElement(L"PropertyType"); TextAllocation = DOMAllocation->CreateTextNode(PropertyType); RootElement->LastChild->AppendChild(ElementAllocation); RootElement->LastChild->LastChild->AppendChild(TextAllocation); ElementAllocation = DOMAllocation->CreateElement(L"ContractLength"); TextAllocation = DOMAllocation->CreateTextNode(ContractLength); RootElement->LastChild->AppendChild(ElementAllocation); RootElement->LastChild->LastChild->AppendChild(TextAllocation); ElementAllocation = DOMAllocation->CreateElement(L"RentStartDate"); TextAllocation = DOMAllocation->CreateTextNode(RentStartDate.ToString(L"d")); RootElement->LastChild->AppendChild(ElementAllocation); RootElement->LastChild->LastChild->AppendChild(TextAllocation); ElementAllocation = DOMAllocation->CreateElement(L"MonthlyRent"); TextAllocation = DOMAllocation->CreateTextNode(MonthlyRent.ToString(L"F")); RootElement->LastChild->AppendChild(ElementAllocation); RootElement->LastChild->LastChild->AppendChild(TextAllocation); DOMAllocation->Save(Filename); ShowRentalAllocations(); } }
Void btnClose_Click(System::Object^ sender, System::EventArgs^ e) { Close(); } |
#pragma once #include "RentPayment.h" using namespace System; using namespace System::ComponentModel; using namespace System::Collections; using namespace System::Windows::Forms; using namespace System::Data; using namespace System::Drawing; using namespace System::IO; using namespace System::Xml; |
Void btnNewPayment_Click(System::Object^ sender, System::EventArgs^ e) { int ReceiptNumber; String ^ AllocationCode; String ^ TenantAccountNumber; String ^ TenantName; String ^ PaymentFor; String ^ PropertyCode; String ^ PropertyType; DateTime DateReceived; double AmountReceived; RentPayment ^ Editor = gcnew RentPayment; XmlDocument ^ DOMPayments = gcnew XmlDocument; Directory::CreateDirectory(L"C:\\Solas Property Rental"); String ^ Filename = L"C:\\Solas Property Rental\\payments.xml"; // If some payments were previously made if( File::Exists(Filename) ) { // Open the payments.xml file DOMPayments->Load(Filename); // Locate the root element XmlElement ^ ElementAllocation = DOMPayments->DocumentElement; // Get a list of the child nodes XmlNodeList ^ ListOfAllocations = ElementAllocation->ChildNodes; // Get the last receipt number ReceiptNumber = int::Parse(ListOfAllocations[ListOfAllocations->Count - 1]->FirstChild->InnerText) + 1; Editor->txtReceiptNumber->Text = ReceiptNumber.ToString(); } else { // If no payment has ever been made, // create a new XML file for the payments DOMPayments->LoadXml(L"<?xml version=\"1.0\" encoding=\"utf-8\"?>" + L"<RentPayments></RentPayments>"); // We will start the receipt numbers at 101 ReceiptNumber = 101; Editor->txtReceiptNumber->Text = ReceiptNumber.ToString(); } // Display the Rent Payment dialog box if( Editor->ShowDialog() == System::Windows::Forms::DialogResult::OK ) { // If the user had clicked OK, // Prepare the elements of the XML file ReceiptNumber = int::Parse(Editor->txtReceiptNumber->Text); DateReceived = Editor->dtpDateReceived->Value; AllocationCode = Editor->txtAllocationCode->Text; TenantAccountNumber = Editor->txtTenantAcntNber->Text; TenantName = Editor->txtTenantName->Text; PropertyCode = Editor->txtPropertyCode->Text; PropertyType = Editor->txtPropertyType->Text; PaymentFor = Editor->cbxMonths->Text + L" " + Editor->txtYear->Text; AmountReceived = double::Parse(Editor->txtAmountReceived->Text); // Get a reference to the root element XmlElement ^ RootElement = DOMPayments->DocumentElement; // Create an element named Payment XmlElement ^ ElementPayment = DOMPayments->CreateElement(L"Payment"); // Add the new element as the last node of the root element RootElement->AppendChild(ElementPayment); // Get a reference to the root element RootElement = DOMPayments->DocumentElement; // Create an element ElementPayment = DOMPayments->CreateElement(L"ReceiptNumber"); // Create the value of the new element XmlText ^ TextPayment = DOMPayments->CreateTextNode(ReceiptNumber.ToString()); // Add the new element as a child of the Payment element RootElement->LastChild->AppendChild(ElementPayment); // Specify the value of the new element RootElement->LastChild->LastChild->AppendChild(TextPayment); // Follow the same logic for the other elements ElementPayment = DOMPayments->CreateElement(L"DateReceived"); TextPayment = DOMPayments->CreateTextNode(DateReceived.ToString(L"d")); RootElement->LastChild->AppendChild(ElementPayment); RootElement->LastChild->LastChild->AppendChild(TextPayment); ElementPayment = DOMPayments->CreateElement(L"AllocationCode"); XmlText ^ txtAllocation = DOMPayments->CreateTextNode(AllocationCode); RootElement->LastChild->AppendChild(ElementPayment); RootElement->LastChild->LastChild->AppendChild(txtAllocation); ElementPayment = DOMPayments->CreateElement(L"TenantAccountNumber"); txtAllocation = DOMPayments->CreateTextNode(TenantAccountNumber); RootElement->LastChild->AppendChild(ElementPayment); RootElement->LastChild->LastChild->AppendChild(txtAllocation); ElementPayment = DOMPayments->CreateElement(L"TenantName"); txtAllocation = DOMPayments->CreateTextNode(TenantName); RootElement->LastChild->AppendChild(ElementPayment); RootElement->LastChild->LastChild->AppendChild(txtAllocation); ElementPayment = DOMPayments->CreateElement(L"PropertyCode"); txtAllocation = DOMPayments->CreateTextNode(PropertyCode); RootElement->LastChild->AppendChild(ElementPayment); RootElement->LastChild->LastChild->AppendChild(txtAllocation); ElementPayment = DOMPayments->CreateElement(L"PropertyType"); txtAllocation = DOMPayments->CreateTextNode(PropertyType); RootElement->LastChild->AppendChild(ElementPayment); RootElement->LastChild->LastChild->AppendChild(txtAllocation); ElementPayment = DOMPayments->CreateElement(L"PaymentFor"); txtAllocation = DOMPayments->CreateTextNode(PaymentFor); RootElement->LastChild->AppendChild(ElementPayment); RootElement->LastChild->LastChild->AppendChild(txtAllocation); ElementPayment = DOMPayments->CreateElement(L"AmountReceived"); txtAllocation = DOMPayments->CreateTextNode(AmountReceived.ToString(L"F")); RootElement->LastChild->AppendChild(ElementPayment); RootElement->LastChild->LastChild->AppendChild(txtAllocation); DOMPayments->Save(Filename); ShowRentPayments(); } }
Void btnClose_Click(System::Object^ sender, System::EventArgs^ e) { Close(); } |
Allocation 1 | Allocation 2 | Allocation 3 | Allocation 4 | |
Allocation Code | 4205-8274 | 5920-9417 | 2792-4075 | 7957-7294 |
Date Allocated | 8/12/2002 | 2/18/2004 | 3/24/2004 | 10/26/2007 |
Account # | 24-68-84 | 57-97-15 | 19-38-84 | 20-48-46 |
Prop Code | 726-454 | 625-936 | 371-801 | 727-768 |
Contract Length | 12 Months | 3 Months | 12 Months | 6 Months |
Start Date | 10/1/2002 | 4/1/2004 | 6/1/2004 | 2/1/2008 |
Date Received | Allocation Code | Payment For | Amount | ||
Month | Year | ||||
Payment 1 | 10/25/2002 | 4205-8274 | October | 2002 | 1150.50 |
Payment 2 | 11/28/2002 | 4205-8274 | November | 2002 | 1150.50 |
Payment 3 | 4/28/2004 | 5920-9417 | April | 2004 | 1750.00 |
Payment 4 | 7/5/2004 | 2792-4075 | June | 2004 | 1250.25 |
Payment 5 | 6/3/2004 | 5920-9417 | May | 2004 | 1750.00 |
Payment 6 | 7/30/2004 | 2792-4075 | July | 2004 | 1250.25 |
Payment 7 | 7/5/2004 | 5920-9417 | June | 2004 | 1750.00 |
Payment 8 | 12/30/2002 | 4205-8274 | December | 2002 | 1150.50 |
|
|
||
Home | Copyright © 2008-2016, FunctionX, Inc. | |
|