Fixed a bug on the modify record form where updating an existing row's ad item wouldn't mark the other APC tables as dirty.
This commit is contained in:
Binary file not shown.
+11
-1
@@ -85,6 +85,7 @@
|
||||
this.taxableDataGridView = new System.Windows.Forms.DataGridView();
|
||||
this.debugTabPage = new System.Windows.Forms.TabPage();
|
||||
this.monthCalendar = new System.Windows.Forms.MonthCalendar();
|
||||
this.newModifyRecordToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.mainTableLayoutPanel.SuspendLayout();
|
||||
this.mainMenu.SuspendLayout();
|
||||
this.commentMainTableLayoutPanel.SuspendLayout();
|
||||
@@ -164,7 +165,8 @@
|
||||
this.addRecordsToolStripMenuItem,
|
||||
this.modifyRecordMainMenu,
|
||||
this.deleteRecordsMainMenu,
|
||||
this.newFormTestToolStripMenuItem});
|
||||
this.newFormTestToolStripMenuItem,
|
||||
this.newModifyRecordToolStripMenuItem});
|
||||
this.recordsToolStripMenuItem.Name = "recordsToolStripMenuItem";
|
||||
this.recordsToolStripMenuItem.Size = new System.Drawing.Size(98, 35);
|
||||
this.recordsToolStripMenuItem.Text = "&Records";
|
||||
@@ -760,6 +762,13 @@
|
||||
this.monthCalendar.TabIndex = 0;
|
||||
this.monthCalendar.TabStop = false;
|
||||
//
|
||||
// newModifyRecordToolStripMenuItem
|
||||
//
|
||||
this.newModifyRecordToolStripMenuItem.Name = "newModifyRecordToolStripMenuItem";
|
||||
this.newModifyRecordToolStripMenuItem.Size = new System.Drawing.Size(323, 34);
|
||||
this.newModifyRecordToolStripMenuItem.Text = "New Modify Record";
|
||||
this.newModifyRecordToolStripMenuItem.Click += new System.EventHandler(this.newModifyRecordToolStripMenuItem_Click);
|
||||
//
|
||||
// FrmMain
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(168F, 168F);
|
||||
@@ -865,6 +874,7 @@
|
||||
private System.Windows.Forms.DataGridView taxableDataGridView;
|
||||
private System.Windows.Forms.TabPage debugTabPage;
|
||||
private System.Windows.Forms.MonthCalendar monthCalendar;
|
||||
private System.Windows.Forms.ToolStripMenuItem newModifyRecordToolStripMenuItem;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -647,14 +647,11 @@ namespace AdvertsingProfitControl
|
||||
|
||||
private void modifyRecordMainMenu_Click(object sender, EventArgs e)
|
||||
{
|
||||
//var modifyForm = new FrmModifyRecord();
|
||||
//modifyForm.ShowDialog();
|
||||
var modifyForm = new FrmModifyRecord();
|
||||
modifyForm.ShowDialog();
|
||||
//BuildAndFillDataGridTables();
|
||||
//CalculateProfitAnalysis();
|
||||
//CalculateGrossProfit();
|
||||
var date = DateTime.Parse(monthComboBox.SelectedItem + @"/" + dayComboBox.SelectedItem + @"/" + yearComboBox.SelectedItem);
|
||||
var form = new NewModifyRecord(date);
|
||||
form.ShowDialog();
|
||||
}
|
||||
|
||||
private void manageItemsToolsMainMenu_Click(object sender, EventArgs e)
|
||||
@@ -761,6 +758,13 @@ namespace AdvertsingProfitControl
|
||||
form.ShowDialog();
|
||||
|
||||
}
|
||||
|
||||
private void newModifyRecordToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
var date = DateTime.Parse(monthComboBox.SelectedItem + @"/" + dayComboBox.SelectedItem + @"/" + yearComboBox.SelectedItem);
|
||||
var form = new NewModifyRecord(date);
|
||||
form.ShowDialog();
|
||||
}
|
||||
}
|
||||
|
||||
//http://stackoverflow.com/questions/487661/how-do-i-suspend-painting-for-a-control-and-its-children
|
||||
|
||||
@@ -404,7 +404,7 @@ namespace AdvertsingProfitControl
|
||||
invoicesDataGridView.Rows.Add(row.ItemArray);
|
||||
}
|
||||
inventoryDataGridView.Columns.Remove("RowAttribute");
|
||||
inventoryDataGridView.Columns.Remove("FK_GroupID");
|
||||
//inventoryDataGridView.Columns.Remove("FK_GroupID");
|
||||
|
||||
var weeklySalesTable = databaseReader.ReturnWeeklySalesFromDateId(dateId,
|
||||
databaseTracker.DatabaseConnectionString);
|
||||
@@ -563,7 +563,7 @@ namespace AdvertsingProfitControl
|
||||
}
|
||||
}
|
||||
dataGridView.Columns.Remove("RowAttribute");
|
||||
dataGridView.Columns.Remove("Fk_GroupID");
|
||||
//dataGridView.Columns.Remove("FK_AdSpecialName");
|
||||
}
|
||||
|
||||
private void BuildDataGridViewInventoryTable(DataTable dataTable, DataGridView dataGridView)
|
||||
|
||||
@@ -1027,7 +1027,11 @@ namespace AdvertsingProfitControl
|
||||
{
|
||||
var adItemText = projectionsDataGridView.Rows[e.RowIndex].Cells[adItemIndex].EditedFormattedValue.ToString();
|
||||
actualSalesDataGridView.Rows[e.RowIndex].Cells[adItemIndex].Value = adItemText;
|
||||
actualSalesDataGridView.Rows[e.RowIndex].Cells[(int) SalesTableColumns.IsDirty].Value = true;
|
||||
actualSalesDataGridView.Rows[e.RowIndex].HeaderCell.Style.BackColor = ApplicationColors.PendingEdit;
|
||||
inventoryDataGridView.Rows[e.RowIndex].Cells[adItemIndex].Value = adItemText;
|
||||
inventoryDataGridView.Rows[e.RowIndex].Cells[(int) InventoryTableColumns.IsDirty].Value = true;
|
||||
inventoryDataGridView.Rows[e.RowIndex].HeaderCell.Style.BackColor = ApplicationColors.PendingEdit;
|
||||
projectionsDataGridView.RefreshEdit();
|
||||
//Remove the last ad item from the UsedAdItem array, the new one will be added in the OnRowLeave event handler.
|
||||
if (_adSpecialIndex == -1 || e.RowIndex < _adSpecialIndex)
|
||||
@@ -1385,7 +1389,11 @@ namespace AdvertsingProfitControl
|
||||
{
|
||||
var adItemText = inventoryDataGridView.Rows[e.RowIndex].Cells[adItemIndex].EditedFormattedValue.ToString();
|
||||
projectionsDataGridView.Rows[e.RowIndex].Cells[adItemIndex].Value = adItemText;
|
||||
projectionsDataGridView.Rows[e.RowIndex].Cells[(int) SalesTableColumns.IsDirty].Value = true;
|
||||
projectionsDataGridView.Rows[e.RowIndex].HeaderCell.Style.BackColor = ApplicationColors.PendingEdit;
|
||||
actualSalesDataGridView.Rows[e.RowIndex].Cells[adItemIndex].Value = adItemText;
|
||||
actualSalesDataGridView.Rows[e.RowIndex].Cells[(int) SalesTableColumns.IsDirty].Value = true;
|
||||
actualSalesDataGridView.Rows[e.RowIndex].HeaderCell.Style.BackColor = ApplicationColors.PendingEdit;
|
||||
//inventoryDataGridView.RefreshEdit();
|
||||
//Remove the last ad item from the UsedAdItem array, the new one will be added in the OnRowLeave event handler.
|
||||
if (_adSpecialIndex == -1 || e.RowIndex < _adSpecialIndex)
|
||||
@@ -1542,7 +1550,11 @@ namespace AdvertsingProfitControl
|
||||
{
|
||||
var adItemText = actualSalesDataGridView.Rows[e.RowIndex].Cells[adItemIndex].EditedFormattedValue.ToString();
|
||||
projectionsDataGridView.Rows[e.RowIndex].Cells[adItemIndex].Value = adItemText;
|
||||
projectionsDataGridView.Rows[e.RowIndex].Cells[(int) SalesTableColumns.IsDirty].Value = true;
|
||||
projectionsDataGridView.Rows[e.RowIndex].HeaderCell.Style.BackColor = ApplicationColors.PendingEdit;
|
||||
inventoryDataGridView.Rows[e.RowIndex].Cells[adItemIndex].Value = adItemText;
|
||||
inventoryDataGridView.Rows[e.RowIndex].Cells[(int) InventoryTableColumns.IsDirty].Value = true;
|
||||
inventoryDataGridView.Rows[e.RowIndex].HeaderCell.Style.BackColor = ApplicationColors.PendingEdit;
|
||||
//projectionsDataGridView.RefreshEdit();
|
||||
//Remove the last ad item from the UsedAdItem array, the new one will be added in the OnRowLeave event handler.
|
||||
if (_adSpecialIndex == -1 || e.RowIndex < _adSpecialIndex)
|
||||
@@ -2127,15 +2139,27 @@ namespace AdvertsingProfitControl
|
||||
var projections = databaseReader.ReturnProjectionsTable(dateId, databaseTracker.DatabaseConnectionString);
|
||||
var inventory = databaseReader.ReturnInventoryTable(dateId, databaseTracker.DatabaseConnectionString);
|
||||
var actualSales = databaseReader.ReturnActualSales(dateId, databaseTracker.DatabaseConnectionString);
|
||||
LoadApcTables(projections, inventory, actualSales);
|
||||
LoadProjectionsTable(projections);
|
||||
LoadInventory(inventory);
|
||||
LoadActualSales(actualSales);
|
||||
var invoices = databaseReader.ReturnInvoiceTable(dateId, databaseTracker.DatabaseConnectionString);
|
||||
|
||||
//Re-enable the events
|
||||
projectionsDataGridView.CellEnter += StoreBeginningCellValue;
|
||||
projectionsDataGridView.RowLeave += UpdateUsedAdItemCollectionOnRowLeave;
|
||||
projectionsDataGridView.CellValidating += ValidateSalesDataGridViewCellContents;
|
||||
projectionsDataGridView.RowValidating += ValidateProjectedRow;
|
||||
inventoryDataGridView.CellEnter += StoreBeginningCellValue;
|
||||
inventoryDataGridView.RowLeave += UpdateUsedAdItemCollectionOnRowLeave;
|
||||
inventoryDataGridView.CellValidating += ValidateInventoryCellContents;
|
||||
inventoryDataGridView.RowValidating += ValidateInventoryRow;
|
||||
actualSalesDataGridView.CellEnter += StoreBeginningCellValue;
|
||||
actualSalesDataGridView.RowLeave += UpdateUsedAdItemCollectionOnRowLeave;
|
||||
actualSalesDataGridView.CellValidating += ValidateSalesDataGridViewCellContents;
|
||||
actualSalesDataGridView.RowValidating += ValidateActualSalesRow;
|
||||
}
|
||||
|
||||
private void LoadApcTables(DataTable projections, DataTable inventory, DataTable actualSales)
|
||||
private void LoadProjectionsTable(DataTable projections)
|
||||
{
|
||||
//Assuming all the tables are correctly aligned.
|
||||
//Disable the relevant events in the DataGridViews
|
||||
@@ -2144,17 +2168,17 @@ namespace AdvertsingProfitControl
|
||||
projectionsDataGridView.CellValidating -= ValidateSalesDataGridViewCellContents;
|
||||
projectionsDataGridView.RowValidating -= ValidateProjectedRow;
|
||||
|
||||
for(var i = 0; i < projections.Rows.Count; i++)
|
||||
for(var rowIndex = 0; rowIndex < projections.Rows.Count; rowIndex++)
|
||||
{
|
||||
var newRow = new DataGridViewRow();
|
||||
for (var cellIndex = 0; cellIndex < projections.Rows[i].ItemArray.Length; cellIndex++)
|
||||
for (var cellIndex = 0; cellIndex < projections.Rows[rowIndex].ItemArray.Length; cellIndex++)
|
||||
{
|
||||
//ID and Ad Item.
|
||||
if (cellIndex <= 1)
|
||||
{
|
||||
var cell = new DataGridViewTextBoxCell
|
||||
{
|
||||
Value = projections.Rows[i].ItemArray[cellIndex].ToString()
|
||||
Value = projections.Rows[rowIndex].ItemArray[cellIndex].ToString()
|
||||
};
|
||||
newRow.Cells.Add(cell);
|
||||
continue;
|
||||
@@ -2162,14 +2186,14 @@ namespace AdvertsingProfitControl
|
||||
//Everything in between the ad item cell and the row attribute cells.
|
||||
if (cellIndex > 1 && cellIndex <= 7)
|
||||
{
|
||||
if (projections.Rows[i].ItemArray[cellIndex].ToString() == "0")
|
||||
if (projections.Rows[rowIndex].ItemArray[cellIndex].ToString() == "0")
|
||||
{
|
||||
var cell = new DataGridViewTextBoxCell {Value = ""};
|
||||
newRow.Cells.Add(cell);
|
||||
}
|
||||
else
|
||||
{
|
||||
var cell = new DataGridViewTextBoxCell { Value = projections.Rows[i].ItemArray[cellIndex].ToString() };
|
||||
var cell = new DataGridViewTextBoxCell { Value = projections.Rows[rowIndex].ItemArray[cellIndex].ToString() };
|
||||
newRow.Cells.Add(cell);
|
||||
}
|
||||
continue;
|
||||
@@ -2179,7 +2203,7 @@ namespace AdvertsingProfitControl
|
||||
{
|
||||
var isHeaderCell = new DataGridViewCheckBoxCell(false);
|
||||
var isMemberCell = new DataGridViewCheckBoxCell(false);
|
||||
var rowAttribute = int.Parse(projections.Rows[i].ItemArray[cellIndex].ToString());
|
||||
var rowAttribute = int.Parse(projections.Rows[rowIndex].ItemArray[cellIndex].ToString());
|
||||
switch (rowAttribute)
|
||||
{
|
||||
case 1:
|
||||
@@ -2200,25 +2224,198 @@ namespace AdvertsingProfitControl
|
||||
//Check the group it is part of if any.
|
||||
if (cellIndex == 9)
|
||||
{
|
||||
if (projections.Rows[i].ItemArray[cellIndex].ToString() != "0" && _adSpecialIndex == -1)
|
||||
if (projections.Rows[rowIndex].ItemArray[cellIndex].ToString() != "0" && _adSpecialIndex == -1)
|
||||
{
|
||||
var databaseTracker = new DatabaseTracker();
|
||||
var databaseReader = new DatabaseReader();
|
||||
var groupName =
|
||||
databaseReader.ReturnGroupNameFromGroupId(
|
||||
projections.Rows[i].ItemArray[cellIndex].ToString(),
|
||||
projections.Rows[rowIndex].ItemArray[cellIndex].ToString(),
|
||||
databaseTracker.DatabaseConnectionString);
|
||||
var adSpecialRow = new DataGridViewRow();
|
||||
projectionsDataGridView.Rows.Add(adSpecialRow);
|
||||
projectionsDataGridView.Rows[i].Cells[1].Value = groupName;
|
||||
projectionsDataGridView.Rows[i].DefaultCellStyle.BackColor = ApplicationColors.AdSpecial;
|
||||
_adSpecialIndex = i;
|
||||
projectionsDataGridView.Rows[rowIndex].Cells[1].Value = groupName;
|
||||
projectionsDataGridView.Rows[rowIndex].DefaultCellStyle.BackColor = ApplicationColors.AdSpecial;
|
||||
_adSpecialIndex = rowIndex;
|
||||
}
|
||||
}
|
||||
}
|
||||
projectionsDataGridView.Rows.Add(newRow);
|
||||
}
|
||||
//Re-enable the events
|
||||
}
|
||||
|
||||
private void LoadInventory(DataTable inventoryTable)
|
||||
{
|
||||
//Assuming all the tables are correctly aligned.
|
||||
//Disable the relevant events in the DataGridViews
|
||||
inventoryDataGridView.CellEnter -= StoreBeginningCellValue;
|
||||
inventoryDataGridView.RowLeave -= UpdateUsedAdItemCollectionOnRowLeave;
|
||||
inventoryDataGridView.CellValidating -= ValidateInventoryCellContents;
|
||||
inventoryDataGridView.RowValidating -= ValidateInventoryRow;
|
||||
//Create a local ad special index since Projections should have filled the ad special index in for the class.
|
||||
var adSpecialIndex = -1;
|
||||
|
||||
for (var rowIndex = 0; rowIndex < inventoryTable.Rows.Count; rowIndex++)
|
||||
{
|
||||
var newRow = new DataGridViewRow();
|
||||
for (var cellIndex = 0; cellIndex < inventoryTable.Rows[rowIndex].ItemArray.Length; cellIndex++)
|
||||
{
|
||||
//ID and Ad Item.
|
||||
if (cellIndex <= 1)
|
||||
{
|
||||
var cell = new DataGridViewTextBoxCell
|
||||
{
|
||||
Value = inventoryTable.Rows[rowIndex].ItemArray[cellIndex].ToString()
|
||||
};
|
||||
newRow.Cells.Add(cell);
|
||||
continue;
|
||||
}
|
||||
//Everything in between the ad item cell and the row attribute cells.
|
||||
if (cellIndex > 1 && cellIndex <= 5)
|
||||
{
|
||||
if (inventoryTable.Rows[rowIndex].ItemArray[cellIndex].ToString() == "0")
|
||||
{
|
||||
var cell = new DataGridViewTextBoxCell { Value = "" };
|
||||
newRow.Cells.Add(cell);
|
||||
}
|
||||
else
|
||||
{
|
||||
var cell = new DataGridViewTextBoxCell { Value = inventoryTable.Rows[rowIndex].ItemArray[cellIndex].ToString() };
|
||||
newRow.Cells.Add(cell);
|
||||
}
|
||||
continue;
|
||||
}
|
||||
//Check the attribute cell.
|
||||
if (cellIndex == 6)
|
||||
{
|
||||
var isHeaderCell = new DataGridViewCheckBoxCell(false);
|
||||
var isMemberCell = new DataGridViewCheckBoxCell(false);
|
||||
var rowAttribute = int.Parse(inventoryTable.Rows[rowIndex].ItemArray[cellIndex].ToString());
|
||||
switch (rowAttribute)
|
||||
{
|
||||
case 1:
|
||||
//Header row
|
||||
isHeaderCell.Value = true;
|
||||
newRow.DefaultCellStyle.BackColor = ApplicationColors.HeaderRow;
|
||||
break;
|
||||
case 2:
|
||||
//Member Row
|
||||
isMemberCell.Value = true;
|
||||
newRow.DefaultCellStyle.BackColor = ApplicationColors.MemberRow;
|
||||
break;
|
||||
}
|
||||
newRow.Cells.Add(isHeaderCell);
|
||||
newRow.Cells.Add(isMemberCell);
|
||||
continue;
|
||||
}
|
||||
//Check the group it is part of if any.
|
||||
if (cellIndex == 7)
|
||||
{
|
||||
if (inventoryTable.Rows[rowIndex].ItemArray[cellIndex].ToString() != "0" && adSpecialIndex == -1)
|
||||
{
|
||||
var databaseTracker = new DatabaseTracker();
|
||||
var databaseReader = new DatabaseReader();
|
||||
var groupName =
|
||||
databaseReader.ReturnGroupNameFromGroupId(
|
||||
inventoryTable.Rows[rowIndex].ItemArray[cellIndex].ToString(),
|
||||
databaseTracker.DatabaseConnectionString);
|
||||
var adSpecialRow = new DataGridViewRow();
|
||||
inventoryDataGridView.Rows.Add(adSpecialRow);
|
||||
inventoryDataGridView.Rows[rowIndex].Cells[1].Value = groupName;
|
||||
inventoryDataGridView.Rows[rowIndex].DefaultCellStyle.BackColor = ApplicationColors.AdSpecial;
|
||||
adSpecialIndex = rowIndex;
|
||||
}
|
||||
}
|
||||
}
|
||||
inventoryDataGridView.Rows.Add(newRow);
|
||||
}
|
||||
}
|
||||
|
||||
public void LoadActualSales(DataTable actualSales)
|
||||
{
|
||||
//Assuming all the tables are correctly aligned.
|
||||
//Disable the relevant events in the DataGridViews
|
||||
actualSalesDataGridView.CellEnter -= StoreBeginningCellValue;
|
||||
actualSalesDataGridView.RowLeave -= UpdateUsedAdItemCollectionOnRowLeave;
|
||||
actualSalesDataGridView.CellValidating -= ValidateSalesDataGridViewCellContents;
|
||||
actualSalesDataGridView.RowValidating -= ValidateActualSalesRow;
|
||||
//Create a local ad special index since Projections should have filled the ad special index in for the class.
|
||||
var adSpecialIndex = -1;
|
||||
|
||||
for (var rowIndex = 0; rowIndex < actualSales.Rows.Count; rowIndex++)
|
||||
{
|
||||
var newRow = new DataGridViewRow();
|
||||
for (var cellIndex = 0; cellIndex < actualSales.Rows[rowIndex].ItemArray.Length; cellIndex++)
|
||||
{
|
||||
//ID and Ad Item.
|
||||
if (cellIndex <= 1)
|
||||
{
|
||||
var cell = new DataGridViewTextBoxCell
|
||||
{
|
||||
Value = actualSales.Rows[rowIndex].ItemArray[cellIndex].ToString()
|
||||
};
|
||||
newRow.Cells.Add(cell);
|
||||
continue;
|
||||
}
|
||||
//Everything in between the ad item cell and the row attribute cells.
|
||||
if (cellIndex > 1 && cellIndex <= 7)
|
||||
{
|
||||
if (actualSales.Rows[rowIndex].ItemArray[cellIndex].ToString() == "0")
|
||||
{
|
||||
var cell = new DataGridViewTextBoxCell { Value = "" };
|
||||
newRow.Cells.Add(cell);
|
||||
}
|
||||
else
|
||||
{
|
||||
var cell = new DataGridViewTextBoxCell { Value = actualSales.Rows[rowIndex].ItemArray[cellIndex].ToString() };
|
||||
newRow.Cells.Add(cell);
|
||||
}
|
||||
continue;
|
||||
}
|
||||
//Check the attribute cell.
|
||||
if (cellIndex == 8)
|
||||
{
|
||||
var isHeaderCell = new DataGridViewCheckBoxCell(false);
|
||||
var isMemberCell = new DataGridViewCheckBoxCell(false);
|
||||
var rowAttribute = int.Parse(actualSales.Rows[rowIndex].ItemArray[cellIndex].ToString());
|
||||
switch (rowAttribute)
|
||||
{
|
||||
case 1:
|
||||
//Header row
|
||||
isHeaderCell.Value = true;
|
||||
newRow.DefaultCellStyle.BackColor = ApplicationColors.HeaderRow;
|
||||
break;
|
||||
case 2:
|
||||
//Member Row
|
||||
isMemberCell.Value = true;
|
||||
newRow.DefaultCellStyle.BackColor = ApplicationColors.MemberRow;
|
||||
break;
|
||||
}
|
||||
newRow.Cells.Add(isHeaderCell);
|
||||
newRow.Cells.Add(isMemberCell);
|
||||
continue;
|
||||
}
|
||||
//Check the group it is part of if any.
|
||||
if (cellIndex == 9)
|
||||
{
|
||||
if (actualSales.Rows[rowIndex].ItemArray[cellIndex].ToString() != "0" && adSpecialIndex == -1)
|
||||
{
|
||||
var databaseTracker = new DatabaseTracker();
|
||||
var databaseReader = new DatabaseReader();
|
||||
var groupName =
|
||||
databaseReader.ReturnGroupNameFromGroupId(
|
||||
actualSales.Rows[rowIndex].ItemArray[cellIndex].ToString(),
|
||||
databaseTracker.DatabaseConnectionString);
|
||||
var adSpecialRow = new DataGridViewRow();
|
||||
actualSalesDataGridView.Rows.Add(adSpecialRow);
|
||||
actualSalesDataGridView.Rows[rowIndex].Cells[1].Value = groupName;
|
||||
actualSalesDataGridView.Rows[rowIndex].DefaultCellStyle.BackColor = ApplicationColors.AdSpecial;
|
||||
adSpecialIndex = rowIndex;
|
||||
}
|
||||
}
|
||||
}
|
||||
actualSalesDataGridView.Rows.Add(newRow);
|
||||
}
|
||||
}
|
||||
|
||||
private void NormalizeApcTables(DataTable projetions, DataTable inventory, DataTable actualSales, string dateId)
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
<dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
|
||||
</dsig:Transforms>
|
||||
<dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" />
|
||||
<dsig:DigestValue>BL2VwteFPdU1C5eFgLcNJB6t71bYUCKbAJpayKyfE2c=</dsig:DigestValue>
|
||||
<dsig:DigestValue>hjoJ6F3S2mx0T7+16nfA9mg2vO2CJ4FO+GQ/EyPYf58=</dsig:DigestValue>
|
||||
</hash>
|
||||
</dependentAssembly>
|
||||
</dependency>
|
||||
|
||||
@@ -43,14 +43,14 @@
|
||||
</dependentAssembly>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="AdvertsingProfitControl.exe" size="3592192">
|
||||
<dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="AdvertsingProfitControl.exe" size="3594752">
|
||||
<assemblyIdentity name="AdvertsingProfitControl" version="0.9.5.2" language="neutral" processorArchitecture="amd64" />
|
||||
<hash>
|
||||
<dsig:Transforms>
|
||||
<dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
|
||||
</dsig:Transforms>
|
||||
<dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" />
|
||||
<dsig:DigestValue>E5XDgx2BUQtUy2BTSxYDHOSv9/kMPusOEpgSdyhYHzk=</dsig:DigestValue>
|
||||
<dsig:DigestValue>vZ/15zn6UnQyxvEn4XYMV+E1MUxIXiQdJmnSal6RNFc=</dsig:DigestValue>
|
||||
</hash>
|
||||
</dependentAssembly>
|
||||
</dependency>
|
||||
@@ -93,7 +93,7 @@
|
||||
<dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
|
||||
</dsig:Transforms>
|
||||
<dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha256" />
|
||||
<dsig:DigestValue>UQFU3HlwUiJQK2YXuAkDK9mSdSFJnVT3pbRsOpcjnAg=</dsig:DigestValue>
|
||||
<dsig:DigestValue>ZGKhdhvn6U66O06l/eGiap8UW45ciijpPInT3o/xuMc=</dsig:DigestValue>
|
||||
</hash>
|
||||
</file>
|
||||
<file name="Stretched Logo Collection.ico" size="370070">
|
||||
|
||||
Reference in New Issue
Block a user