Marked as 'AdvertsingProfitControl No Print' by its folder name. Updated the 'Mordify Record' form. I believe the 'No Print' was related to creating a PDF version of the Advertising Profit Control sheet. The next version after this was most likely to have the code for that.

This commit is contained in:
2021-01-28 19:58:37 -06:00
parent 665f4784e4
commit 75061c9d51
19 changed files with 904 additions and 2171 deletions
+41 -213
View File
@@ -8,34 +8,6 @@ namespace AdvertsingProfitControl
{
internal class DatabaseReader
{
public string GetDatabaseVersion(string connectionString)
{
var versionNumber = "0.0.0.0";
var oleDbCommand = new OleDbCommand()
{
CommandText = "SELECT VersionNumber FROM Version"
};
var connection = new OleDbConnection(connectionString);
oleDbCommand.Connection = connection;
using (connection)
{
using (oleDbCommand)
{
connection.Open();
using (var reader = oleDbCommand.ExecuteReader())
{
while (reader != null && reader.Read())
{
versionNumber = reader[0].ToString();
}
}
}
}
return versionNumber;
}
#region Date Functions
/// <summary>
/// Retrieves the most recent date's ID from the database.
@@ -250,69 +222,12 @@ namespace AdvertsingProfitControl
#region Ad Item Functions
public Dictionary<int, string> GetAdItemsSuggestionDictionary(string connectionString)
{
var adItemDictionary = new Dictionary<int, string>();
var oleDbCommand = new OleDbCommand()
{
CommandText = "SELECT AdItem.ID, AdItem.AdItem FROM AdItem ORDER BY AdItem.AdItem ASC"
};
var connection = new OleDbConnection(connectionString);
oleDbCommand.Connection = connection;
using (connection)
{
using (oleDbCommand)
{
connection.Open();
using (var reader = oleDbCommand.ExecuteReader())
{
while (reader != null && reader.Read())
{
adItemDictionary.Add(int.Parse(reader["ID"].ToString()), reader["AdItem"].ToString());
}
}
}
}
return adItemDictionary;
}
public int GetLargestKeyValueForAdItems(string connectionString)
{
var id = -1;
var oleDbCommand = new OleDbCommand()
{
CommandText = "SELECT MAX(AdItem.ID) FROM AdItem"
};
var connection = new OleDbConnection(connectionString);
oleDbCommand.Connection = connection;
using (connection)
{
using (oleDbCommand)
{
connection.Open();
using (var reader = oleDbCommand.ExecuteReader())
{
while (reader != null && reader.Read())
{
int.TryParse(reader[0].ToString(), out id);
}
}
}
}
return id;
}
public string RetrieveAdItemId(string adItemName, string connectionString)
{
var id = "0";
var oleDbCommand = new OleDbCommand()
{
CommandText = "SELECT AdItem.ID FROM AdItem WHERE UCASE(AdItem.AdItem) = UCASE(?)" //JUST MAKE A CUSTOM PARSING ENGINE
CommandText = "SELECT AdItem.ID FROM AdItem WHERE UCASE(AdItem.AdItem) = UCASE(?)"
};
oleDbCommand.Parameters.AddWithValue("AdItemName", adItemName);
var connection = new OleDbConnection(connectionString);
@@ -338,9 +253,9 @@ namespace AdvertsingProfitControl
public List<string> RetrieveUsedAdItemListByDateId(string dateId, string connectionString)
{
var adItemList = new List<string>();
var oleDbCommand = new OleDbCommand
var oleDbCommand = new OleDbCommand()
{
CommandText = "SELECT AdItem.AdItem, ActualSales.RowAttribute, ActualSales.FK_AdSpecialGroupName FROM (ActualSales INNER JOIN AdItem ON ActualSales.FK_AdItemID = AdItem.ID) WHERE FK_DateID = ? ORDER BY RowPosition ASC"
CommandText = "SELECT AdItem.AdItem, APC.RowAttribute, APC.FK_GroupID FROM (APC INNER JOIN AdItem ON APC.FK_AdItemID = AdItem.ID) WHERE FK_DateID = ? ORDER BY RowPosition ASC"
};
oleDbCommand.Parameters.AddWithValue("DateID", dateId);
var connection = new OleDbConnection(connectionString);
@@ -354,7 +269,7 @@ namespace AdvertsingProfitControl
{
while (reader != null && reader.Read())
{
if (reader["FK_AdSpecialGroupName"].ToString() != "" && int.Parse(reader["FK_AdSpecialGroupName"].ToString()) >= 3)
if (reader["FK_GroupID"].ToString() != "" && (int) reader["FK_GroupID"] >= 3)
{
adItemList.Add(reader[0] + ":2");
}
@@ -369,42 +284,7 @@ namespace AdvertsingProfitControl
}
return adItemList;
}
public List<string> RetrieveAdItemListByLetter(string connectionString, string letterFilter = "All")
{
var adItemsList = new List<string>();
var oleDbCommand = new OleDbCommand();
if(letterFilter == "All")
{
oleDbCommand.CommandText = "SELECT AdItem FROM AdItem ORDER BY AdItem ASC";
}
else
{
oleDbCommand.CommandText = "SELECT AdItem FROM AdItem WHERE LEFT(AdItem, 1) = ? ORDER BY AdItem ASC";
oleDbCommand.Parameters.AddWithValue("Filter", letterFilter);
}
var connection = new OleDbConnection(connectionString);
oleDbCommand.Connection = connection;
using (connection)
{
using (oleDbCommand)
{
connection.Open();
using (var reader = oleDbCommand.ExecuteReader())
{
while (reader != null && reader.Read())
{
adItemsList.Add((reader[0].ToString()));
}
}
}
}
return adItemsList;
}
#endregion
#region Comment Functions
@@ -440,16 +320,16 @@ namespace AdvertsingProfitControl
#endregion
#region Ad Special Functions
#region Group ID Functions
public string RetrieveGroupIdByString(string groupName, string connectionString)
{
var groupId = "0";
var oleDbCommand = new OleDbCommand()
{
CommandText = "SELECT AdSpecialName.ID FROM AdSpecialName WHERE AdSpecialName.AdSpecialName = ?"
CommandText = "SELECT GroupCategory.ID FROM GroupCategory WHERE GroupCategory.GroupDescription = ?"
};
oleDbCommand.Parameters.AddWithValue("AdSpecialName", groupName);
oleDbCommand.Parameters.AddWithValue("GroupName", groupName);
var connection = new OleDbConnection(connectionString);
oleDbCommand.Connection = connection;
@@ -471,40 +351,12 @@ namespace AdvertsingProfitControl
return groupId;
}
public string ReturnAdSpecialDescriptionByAdSpecialName(string adSpecialString, string connectionString)
{
var descriptionString = "";
var oleDbCommand = new OleDbCommand()
{
CommandText = "SELECT AdSpecialName.AdSpecialDescription FROM AdSpecialName WHERE AdSpecialName.AdSpecialDescription = ?"
};
oleDbCommand.Parameters.AddWithValue("AdspecialName", adSpecialString);
var connection = new OleDbConnection(connectionString);
oleDbCommand.Connection = connection;
using (connection)
{
using (oleDbCommand)
{
connection.Open();
using (var reader = oleDbCommand.ExecuteReader())
{
while (reader != null && reader.Read())
{
descriptionString = reader[0].ToString();
}
}
}
}
return descriptionString;
}
public List<string> ReturnGroupNameList(string connectionString)
{
var groupNames = new List<string>();
var oleDbCommand = new OleDbCommand()
{
CommandText = "SELECT AdSpecialName.AdSpecialName FROM AdSpecialName"
CommandText = "SELECT GroupCategory.GroupDescription FROM GroupCategory WHERE NOT GroupDescription = 'HeaderRow' AND NOT GroupDescription = 'MemberRow'"
};
var connection = new OleDbConnection(connectionString);
oleDbCommand.Connection = connection;
@@ -527,14 +379,40 @@ namespace AdvertsingProfitControl
return groupNames;
}
public DataTable ReturnGroupIdTable(string dateId, string connectionString)
{
var dataTable = new DataTable();
var oleDbCommand = new OleDbCommand()
{
CommandText = "SELECT APC.FK_GroupID FROM APC WHERE FK_DateID = ?"
};
oleDbCommand.Parameters.AddWithValue("DateID", dateId);
var connection = new OleDbConnection(connectionString);
oleDbCommand.Connection = connection;
using (connection)
{
using (oleDbCommand)
{
connection.Open();
using (var dataAdapter = new OleDbDataAdapter(oleDbCommand))
{
dataAdapter.Fill(dataTable);
}
}
}
return dataTable;
}
public string ReturnGroupNameFromGroupId(string id, string connectionString)
{
var name = "";
var oleDbCommand = new OleDbCommand()
{
CommandText = "SELECT AdSpecialName FROM AdSpecialName WHERE ID = ?"
CommandText = "SELECT GroupDescription FROM GroupCategory WHERE ID = ?"
};
oleDbCommand.Parameters.AddWithValue("AdspecialName", id);
oleDbCommand.Parameters.AddWithValue("GroupID", id);
var connection = new OleDbConnection(connectionString);
oleDbCommand.Connection = connection;
@@ -561,7 +439,7 @@ namespace AdvertsingProfitControl
var adSpecialList = new AutoCompleteStringCollection();
var oleDbCommand = new OleDbCommand()
{
CommandText = "Select AdSpecialName FROM AdSpecialName"
CommandText = "Select GroupDescription FROM GroupCategory WHERE NOT GroupDescription = 'HeaderRow' AND NOT GroupDescription = 'MemberRow'"
};
var connection = new OleDbConnection(connectionString);
oleDbCommand.Connection = connection;
@@ -646,38 +524,12 @@ namespace AdvertsingProfitControl
#region Table Return Functions
public DataTable ReturnApcTableForReport(string dateId, string connectionString)
{
var dataTable = new DataTable();
var oleDbCommand = new OleDbCommand()
{
CommandText = "SELECT AdItem.AdItem, APC.ProjectionSold, APC.ProjectionSalePrice, APC.ProjectionTotalSales, APC.ProjectionCost, APC.ProjectionProfitReturn, APC.ProjectionTotalProfitReturn, APC.BeginingInventory, APC.Received, APC.TotalInventory, APC.EndingInventory, APC.ActualSold, APC.ActualSalePrice, APC.ActualTotalSales, APC.ActualCost, APC.ActualProfitReturn, APC.ActualTotalProfitReturn, APC.GroupNumber, APC.FK_AdSpecialName FROM (AdItem INNER JOIN APC ON AdItem.ID = APC.FK_AdItemID) WHERE FK_DateID = ? ORDER BY RowPosition ASC"
};
oleDbCommand.Parameters.AddWithValue("DateID", dateId);
var connection = new OleDbConnection(connectionString);
oleDbCommand.Connection = connection;
using (connection)
{
using (oleDbCommand)
{
connection.Open();
using (var dataAdapter = new OleDbDataAdapter(oleDbCommand))
{
dataAdapter.Fill(dataTable);
}
}
}
return dataTable;
}
public DataTable ReturnProjectionsTable(string dateId, string connectionString)
{
var dataTable = new DataTable();
var oleDbCommand = new OleDbCommand()
{
CommandText = "SELECT AdItem.AdItem, Projections.Sold, Projections.SalePrice, Projections.TotalSales, Projections.Cost, Projections.ProfitReturn, Projections.TotalProfitReturn, Projections.RowAttribute, Projections.FK_AdSpecialGroupName FROM (AdItem INNER JOIN Projections ON AdItem.ID = Projections.FK_AdItemID) WHERE FK_DateID = ? ORDER BY RowPosition ASC"
CommandText = "SELECT AdItem.AdItem, APC.ProjectionSold, APC.ProjectionSalePrice, APC.ProjectionTotalSales, APC.ProjectionCost, APC.ProjectionProfitReturn, APC.ProjectionTotalProfitReturn, RowAttribute, FK_GroupID FROM (AdItem INNER JOIN APC ON AdItem.ID = APC.FK_AdItemID) WHERE FK_DateID = ? ORDER BY RowPosition ASC"
};
oleDbCommand.Parameters.AddWithValue("DateID", dateId);
var connection = new OleDbConnection(connectionString);
@@ -702,7 +554,7 @@ namespace AdvertsingProfitControl
var dataTable = new DataTable();
var oleDbCommand = new OleDbCommand()
{
CommandText = "SELECT AdItem.AdItem, ActualSales.Sold, ActualSales.SalePrice, ActualSales.TotalSales, ActualSales.Cost, ActualSales.ProfitReturn, ActualSales.TotalProfitReturn, ActualSales.RowAttribute, ActualSales.FK_AdSpecialGroupName FROM (AdItem INNER JOIN ActualSales ON AdItem.ID = ActualSales.FK_AdItemID) WHERE FK_DateID = ? ORDER BY RowPosition ASC"
CommandText = "SELECT AdItem.AdItem, APC.ActualSold, APC.ActualSalePrice, APC.ActualTotalSales, APC.ActualCost, APC.ActualProfitReturn, APC.ActualTotalProfitReturn, RowAttribute, FK_GroupID FROM (AdItem INNER JOIN APC ON AdItem.ID = APC.FK_AdItemID) WHERE FK_DateID = ? ORDER BY RowPosition ASC"
};
oleDbCommand.Parameters.AddWithValue("DateID", dateId);
var connection = new OleDbConnection(connectionString);
@@ -727,7 +579,7 @@ namespace AdvertsingProfitControl
var dataTable = new DataTable();
var oleDbCommand = new OleDbCommand()
{
CommandText = "SELECT AdItem.AdItem, Inventory.BeginningInventory, Inventory.Received, Inventory.TotalInventory, Inventory.EndingInventory, Inventory.RowAttribute, Inventory.FK_AdSpecialGroupName FROM (AdItem INNER JOIN Inventory ON AdItem.ID = Inventory.FK_AdItemID) WHERE FK_DateID = ? ORDER BY RowPosition ASC"
CommandText = "SELECT AdItem.AdItem, APC.BeginingInventory, APC.Received, APC.TotalInventory, APC.EndingInventory, RowAttribute, FK_GroupID FROM (AdItem INNER JOIN APC ON AdItem.ID = APC.FK_AdItemID) WHERE FK_DateID = ? ORDER BY RowPosition ASC"
};
oleDbCommand.Parameters.AddWithValue("DateID", dateId);
var connection = new OleDbConnection(connectionString);
@@ -753,7 +605,7 @@ namespace AdvertsingProfitControl
var dataTable = new DataTable();
var oleDbCommand = new OleDbCommand()
{
CommandText = "SELECT Supplier.SupplierName, Invoice.InvoiceNumber, Invoice.InvoiceDate, Invoice.InvoiceNetAmountAtCost, Invoice.InvoiceNetAmount, Invoice.InvoiceNote FROM (Supplier INNER JOIN Invoice ON Supplier.ID = Invoice.FK_Supplier) WHERE FK_DateID = ?"
CommandText = "SELECT Supplier.SupplierName, InvoiceNumber, Invoice.InvoiceDate, Invoice.InvoiceNetAmountAtCost, Invoice.InvoiceNetAmount, Invoice.InvoiceNote FROM (Supplier INNER JOIN Invoice ON Supplier.ID = Invoice.FK_Supplier) WHERE FK_DateID = ?"
};
oleDbCommand.Parameters.AddWithValue("DateID", dateId);
var connection = new OleDbConnection(connectionString);
@@ -798,30 +650,6 @@ namespace AdvertsingProfitControl
return dataTable;
}
public DataTable ReturnTaxableFromDateId(string dateId, string connectionString)
{
var dataTable = new DataTable();
var oleDbCommand = new OleDbCommand()
{
CommandText = "SELECT Taxable.Sunday, Taxable.Monday, Taxable.Tuesday, Taxable.Wednesday, Taxable.Thursday, Taxable.Friday, Taxable.Saturday, Taxable.Total FROM Taxable WHERE FK_DateID = ?"
};
oleDbCommand.Parameters.AddWithValue("DateID", dateId);
var connection = new OleDbConnection(connectionString);
oleDbCommand.Connection = connection;
using (connection)
{
using (oleDbCommand)
{
connection.Open();
using (var dataAdapter = new OleDbDataAdapter(oleDbCommand))
{
dataAdapter.Fill(dataTable);
}
}
}
return dataTable;
}
public DataTable ReturnWeekEndingTable(string connectionString)
{