private void cmdItemZoom_Click(object sender, EventArgs e) { Cursor = System.Windows.Forms.Cursors.WaitCursor; using (Finder.Inventory frmInventory = new Solsage_Process_Management_System.Finder.Inventory()) { if (frmInventory.ShowDialog() == DialogResult.OK) { if (frmInventory.sResult != "") { //txtItemCode01.Text = frmInventory.sResult; } } } Cursor = System.Windows.Forms.Cursors.Default; }
private void btnItemSearch_Click(object sender, EventArgs e) { Cursor = System.Windows.Forms.Cursors.WaitCursor; using (Solsage_Process_Management_System.Finder.Inventory frmItemZoom = new Solsage_Process_Management_System.Finder.Inventory()) { if (frmItemZoom.ShowDialog("", "AssetLocationReport","") == DialogResult.OK) { if (frmItemZoom.sResult != "") { txtItemCode.Text = frmItemZoom.sResult; } } } Cursor = System.Windows.Forms.Cursors.Default; }
private void cmdSearchNumber_Click(object sender, EventArgs e) { Cursor = System.Windows.Forms.Cursors.WaitCursor; using (Finder.Inventory frmInventory = new Solsage_Process_Management_System.Finder.Inventory()) { //Sending "None" to inventory ShowDialog to identify that no workshop action should be taken if (frmInventory.ShowDialog("", "","") == DialogResult.OK) { if (frmInventory.sResult != "") { txtItemCode.Text = frmInventory.sResult.Trim(); } } } Cursor = System.Windows.Forms.Cursors.Default; }
private void cmdAddItem_Click(object sender, EventArgs e) { Cursor = System.Windows.Forms.Cursors.WaitCursor; using (Finder.Inventory frmInventory = new Solsage_Process_Management_System.Finder.Inventory()) { if (frmInventory.ShowDialog("", "","") == DialogResult.OK) { if (frmInventory.sResult != "") { int n = dgReciveOldStock.Rows.Add(); dgReciveOldStock.Rows[n].Cells[0].Value = frmInventory.sResult.Trim(); dgReciveOldStock.Rows[n].Cells[1].Value = frmInventory.sDescription.Trim(); dgReciveOldStock.Rows[n].Cells[2].Value = "1"; } } } Cursor = System.Windows.Forms.Cursors.Default; }
private void cmdAddFinishedItem_Click(object sender, EventArgs e) { Cursor = System.Windows.Forms.Cursors.WaitCursor; using (Finder.Inventory frmInventory = new Solsage_Process_Management_System.Finder.Inventory()) { if (frmInventory.ShowDialog("", "","") == DialogResult.OK) { if (frmInventory.sResult != "") { int n = dgRawBatchFinishedItems.Rows.Add(); dgRawBatchFinishedItems.Rows[n].Cells[0].Value = frmInventory.sResult.Trim(); dgRawBatchFinishedItems.Rows[n].Cells[1].Value = frmInventory.sDescription.Trim(); dgRawBatchFinishedItems.Rows[n].Cells[2].Value = "1"; dgRawBatchFinishedItems.Rows[n].Cells[3].Value = "1"; } } } Cursor = System.Windows.Forms.Cursors.Default; this.ActiveControl = txtRawBatchBarcode; }
private void cmdCodeSearch_Click(object sender, EventArgs e) { Cursor = System.Windows.Forms.Cursors.WaitCursor; using (Finder.Inventory frmInventory = new Solsage_Process_Management_System.Finder.Inventory()) { //Sending "None" to inventory ShowDialog to identify that no workshop action should be taken if (frmInventory.ShowDialog(txtStore.Text,"","") == DialogResult.OK) { if (frmInventory.sResult != "") { //check if this item has been selected... if (((Documents.SupplierDocuments)(Parent.Parent)).CheckDuplicateSupplDocLines(frmInventory.sResult.Trim() + txtBatchNum.Text.Trim())) { MessageBox.Show("No duplicate items are allowed in a supplier document. Please select another inventory item.", "Duplicates", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { txtCode.Text = frmInventory.sResult.Trim(); SupplDocLine slDocLine = this; SupplDocLine slLastControl = this; if (frmInventory.bLinkItem && MessageBox.Show("This item is part of a KIT. Do you want to load all the items linked to this item? ", "Kit Item", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) //Kit Item { bNextLine = true; bool bContinue = Populate_Inventory_Fields(ref slDocLine,false); txtCode.Focus(); txtCode.SelectionStart = 0; txtCode.SelectionLength = txtCode.Text.Length; if (bContinue) { PsqlConnection oConn = new PsqlConnection(Solsage_Process_Management_System.Classes.Connect.sPastelConnStr); oConn.Open(); string sSql = "select RMStore, ItemCode, RMQty, Remarks from LinkLines "; sSql += " where ItemCode <> '" + frmInventory.sResult + "' and LnkCode = '" + frmInventory.sResult + "'"; PsqlDataReader rdReader = Solsage_Process_Management_System.Classes.Connect.getDataCommand(sSql, oConn).ExecuteReader(); while (rdReader.Read()) { SupplDocLine slKitLine = new SupplDocLine(); slKitLine.txtStore.Text = rdReader["RMStore"].ToString().Trim(); slKitLine.txtCode.Text = rdReader["ItemCode"].ToString().Trim(); if (slKitLine.txtCode.Text == "'") { slKitLine.txtDescription.Text = rdReader["Remarks"].ToString().Trim(); } slKitLine.bDoCalculation = false; slKitLine.bNextLine = true; slKitLine.txtQuantity.Text = rdReader["RMQty"].ToString().Trim(); ((Documents.SupplierDocuments)(Parent.Parent.Parent.Parent)).InsertSalesLine(slLastControl.iLineIndex, slKitLine); slLastControl = slKitLine; slKitLine.bDoCalculation = true; Populate_Inventory_Fields(ref slKitLine, false); } SupplDocLine slLastLine = (SupplDocLine)((Documents.SupplierDocuments)(Parent.Parent.Parent.Parent)).aSupplDoclines[((Documents.SupplierDocuments)(Parent.Parent.Parent.Parent)).aSupplDoclines.Length - 1]; if (slLastLine.txtCode.Text != "") { SupplDocLine slNewline = new SupplDocLine();//add empty line at the end ((Documents.SupplierDocuments)(Parent.Parent.Parent.Parent)).AddSupplDocLine(slNewline); } rdReader.Close(); oConn.Dispose(); ((Documents.SupplierDocuments)(Parent.Parent)).addTotals(); } } else { bool bValid = Populate_Inventory_Fields(ref slDocLine,true); ((Documents.SupplierDocuments)(Parent.Parent)).addTotals(); txtCode.Focus(); txtCode.SelectionStart = 0; txtCode.SelectionLength = txtCode.Text.Length; } } } } } Cursor = System.Windows.Forms.Cursors.Default; }
private void cmdRawItemAdd_Click(object sender, EventArgs e) { Cursor = System.Windows.Forms.Cursors.WaitCursor; using (Finder.Inventory frmInventory = new Solsage_Process_Management_System.Finder.Inventory()) { if (frmInventory.ShowDialog("", "","") == DialogResult.OK) { if (frmInventory.sResult != "") { int n = dgRawBatchItemList.Rows.Add(); dgRawBatchItemList.Rows[n].Cells[0].Value = frmInventory.sResult.Trim(); dgRawBatchItemList.Rows[n].Cells[1].Value = frmInventory.sDescription.Trim(); dgRawBatchItemList.Rows[n].Cells[2].Value = "1"; } } } Cursor = System.Windows.Forms.Cursors.Default; using (PsqlConnection oConn = new PsqlConnection(Solsage_Process_Management_System.Classes.Connect.sConnStr)) { oConn.Open(); string sSql1 = "delete from SOLMRBI where FkRawBatchID = " + txtBatchID.Text; int ireturn = Solsage_Process_Management_System.Classes.Connect.getDataCommand(sSql1, oConn).ExecuteNonQuery(); foreach (DataGridViewRow dgRow in dgRawBatchItemList.Rows) { if (dgRow.Cells[0].Value != null && dgRow.Cells[0].Value.ToString() != "") { string sSql = "Insert into SOLMRBI (FkRawBatchID,FkItemCode,ItemDescription,Quantity) VALUES "; sSql += "("; sSql += "'" + txtBatchID.Text + "'"; sSql += ",'" + dgRow.Cells[0].Value.ToString() + "'"; sSql += ",'" + dgRow.Cells[1].Value.ToString() + "'"; sSql += ",'" + dgRow.Cells[2].Value.ToString() + "'"; sSql += ")"; int iRet = Solsage_Process_Management_System.Classes.Connect.getDataCommand(sSql, oConn).ExecuteNonQuery(); } } oConn.Dispose(); } }
private void cmdCodeSearch_Click(object sender, EventArgs e) { bool bDelNotes = false; Cursor = System.Windows.Forms.Cursors.WaitCursor; string sDelNotes = "("; //create del note string list foreach (DataGridViewRow dgRow in ((Forms.Project.PickingSlip)(Parent.Parent.Parent.Parent)).dgDeliveryNotes.Rows) { sDelNotes += ",'" + dgRow.Cells[0].Value.ToString() + "'"; bDelNotes = true; } try { sDelNotes = sDelNotes.Remove(1, 1); sDelNotes = sDelNotes + ")"; } catch { } if (!bDelNotes) { using (Finder.Inventory frmInventory = new Solsage_Process_Management_System.Finder.Inventory()) { //Sending "None" to inventory ShowDialog to identify that no workshop action should be taken if (frmInventory.ShowDialog("", "", sDelNotes) == DialogResult.OK) { if (frmInventory.sResult != "") { //check if this item has been selected... if (((Forms.Project.PickingSlip)(Parent.Parent.Parent.Parent)).CheckDuplicateSalesLine(frmInventory.sResult)) { MessageBox.Show("No duplicate items are allowed in a sales order. Please select another inventory item.", "Duplicates", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { txtCode.Text = frmInventory.sResult.Trim(); PickingSlipLine pdlDeliveryNote = this; bool bValid = Populate_Inventory_Fields(ref pdlDeliveryNote, true, sDelNotes); txtCode.Focus(); txtCode.SelectionStart = 0; txtCode.SelectionLength = txtCode.Text.Length; } } } } } else { using (Finder.PickingSlipItemZoom frmPickSlipItemZoom = new Finder.PickingSlipItemZoom()) { if (frmPickSlipItemZoom.ShowDialog(sDelNotes) == DialogResult.OK) { if (frmPickSlipItemZoom.ItemList.Count != 0) { ItemList = frmPickSlipItemZoom.ItemList; if (ItemList.Count == 1) { foreach (string sItem in ItemList) { string[] aItemDetails = sItem.Split("|".ToCharArray()); txtCode.Text = aItemDetails[0].ToString(); txtDescription.Text = aItemDetails[1].ToString(); txtUnit.Text = aItemDetails[3].ToString(); //get on hand qty of itemcode using (PsqlConnection oConn2 = new PsqlConnection(Solsage_Process_Management_System.Classes.Connect.sConnStr)) { //get del note qty decimal dDelNoteQty = 0; oConn2.Open(); //sDelNotes = sDelNotes.Remove(0, 2); //sDelNotes = sDelNotes.Remove(1, 1) + ")"; string sSql2 = "select Itemcode,SUM(Qty) as Qty from SOLPDL where DocNumber in " + sDelNotes; sSql2 += " AND ItemCode = '" + txtCode.Text + "' group by ItemCode"; PsqlDataReader rdReader2 = Solsage_Process_Management_System.Classes.Connect.getDataCommand(sSql2, oConn2).ExecuteReader(); while (rdReader2.Read()) { dDelNoteQty = Convert.ToDecimal(rdReader2["Qty"].ToString()); } rdReader2.Close(); //get ret note qty decimal dRetNoteQty = 0; string sSql3 = "select SOLPRL.ItemCode, SUM(SOLPRL.Qty) as Qty from SOLPRH "; sSql3 += "inner join SOLPRL on SOLPRL.DocNumber = SOLPRH.DocNumber "; sSql3 += "where LinkedDeliveryNote in " + sDelNotes + " And ItemCode = '" + txtCode.Text.Trim() + "' group by ItemCode"; PsqlDataReader rdReader3 = Solsage_Process_Management_System.Classes.Connect.getDataCommand(sSql3, oConn2).ExecuteReader(); while (rdReader3.Read()) { dRetNoteQty = Convert.ToDecimal(rdReader3["Qty"].ToString()); } rdReader3.Close(); decimal dOnHandQty = dDelNoteQty - dRetNoteQty; if (dOnHandQty < 0) txtQtyOnHand.Text = "0"; else txtQtyOnHand.Text = dOnHandQty.ToString("N2"); oConn2.Dispose(); } } PickingSlipLine pdlDeliveryNote = this; PickingSlipLine pdlLastControl = this; bool bValid = Populate_Inventory_Fields(ref pdlDeliveryNote, true,sDelNotes); } else { foreach (string sItem in ItemList) { string[] aItemDetails = sItem.Split("|".ToCharArray()); //txtCode.Text = aItemDetails[0].ToString(); //txtDescription.Text = aItemDetails[1].ToString(); //txtQuoteQty.Text = aItemDetails[2].ToString(); //txtUnit.Text = aItemDetails[3].ToString(); //ProjectDeliveryNote pdlDeliveryNote = this; PickingSlipLine pdlDelNote = new PickingSlipLine(); pdlDelNote.txtCode.Text = aItemDetails[0].ToString(); pdlDelNote.txtDescription.Text = aItemDetails[1].ToString(); pdlDelNote.txtUnit.Text = aItemDetails[3].ToString(); using (PsqlConnection oConn = new PsqlConnection(Solsage_Process_Management_System.Classes.Connect.sPastelConnStr)) { oConn.Open(); string sSql = "SELECT MultiStoreTrn.SellExcl01 from Inventory left join MultiStoreTrn on Inventory.ItemCode = MultiStoreTrn.ItemCode"; sSql += " where Inventory.ItemCode = '" + pdlDelNote.txtCode.Text.Trim() + "'"; sSql += " AND MultiStoreTrn.StoreCode <> ''"; PsqlDataReader rdReader = Solsage_Process_Management_System.Classes.Connect.getDataCommand(sSql, oConn).ExecuteReader(); while (rdReader.Read()) { pdlDelNote.txtExcPrice.Text = Convert.ToDecimal(rdReader["SellExcl01"].ToString()).ToString("N2"); } rdReader.Close(); oConn.Dispose(); } //bool bValid = Populate_Inventory_Fields(ref pdlDelNote, false, sDelNotes); //get on hand qty of itemcode using (PsqlConnection oConn2 = new PsqlConnection(Solsage_Process_Management_System.Classes.Connect.sConnStr)) { //get del note qty decimal dDelNoteQty = 0; oConn2.Open(); this.removeLine(null, null); string sSql2 = "select Itemcode,SUM(Qty) as Qty from SOLPDL where DocNumber in " + sDelNotes; sSql2 += " AND ItemCode = '" + pdlDelNote.txtCode.Text + "' group by ItemCode"; PsqlDataReader rdReader2 = Solsage_Process_Management_System.Classes.Connect.getDataCommand(sSql2, oConn2).ExecuteReader(); while (rdReader2.Read()) { dDelNoteQty = Convert.ToDecimal(rdReader2["Qty"].ToString()); } rdReader2.Close(); //get ret note qty decimal dRetNoteQty = 0; string sSql3 = "select SOLPRL.ItemCode, SUM(SOLPRL.Qty) as Qty from SOLPRH "; sSql3 += "inner join SOLPRL on SOLPRL.DocNumber = SOLPRH.DocNumber "; sSql3 += "where LinkedDeliveryNote in " + sDelNotes + " And ItemCode = '" + pdlDelNote.txtCode.Text.Trim() + "' group by ItemCode"; PsqlDataReader rdReader3 = Solsage_Process_Management_System.Classes.Connect.getDataCommand(sSql3, oConn2).ExecuteReader(); while (rdReader3.Read()) { dRetNoteQty = Convert.ToDecimal(rdReader3["Qty"].ToString()); } rdReader3.Close(); decimal dOnHandQty = dDelNoteQty - dRetNoteQty; if (dOnHandQty < 0) pdlDelNote.txtQtyOnHand.Text = "0"; else pdlDelNote.txtQtyOnHand.Text = dOnHandQty.ToString("N2"); oConn2.Dispose(); } //ProjectDeliveryNote pdlLastControl = this; //bool bValid = Populate_Inventory_Fields(ref pdlDeliveryNote, false, iLineIndex); ((Forms.Project.PickingSlip)(Parent.Parent.Parent.Parent)).AddSalesLine(pdlDelNote,true); } PickingSlipLine pdlDelNoteNew = new PickingSlipLine(); ((Forms.Project.PickingSlip)(Parent.Parent.Parent.Parent)).AddSalesLine(pdlDelNoteNew,true); ((Forms.Project.PickingSlip)(Parent.Parent.Parent.Parent)).deleteSalesLine(this, true); } } } } } //((Forms.Project.PickingSlip)(Parent.Parent.Parent.Parent)).addTotals(); Cursor = System.Windows.Forms.Cursors.Default; }
private void cmdCodeSearch_Click(object sender, EventArgs e) { Cursor = System.Windows.Forms.Cursors.WaitCursor; using (Finder.Inventory frmInventory = new Solsage_Process_Management_System.Finder.Inventory()) { //Sending "None" to inventory ShowDialog to identify that no workshop action should be taken if (frmInventory.ShowDialog("","","") == DialogResult.OK) { if (frmInventory.sResult != "") { //check if this item has been selected... //if (((Forms.Qoutes.Qoute)(Parent.Parent.Parent.Parent)).CheckDuplicateSalesLine(frmInventory.sResult)) //{ // MessageBox.Show("No duplicate items are allowed in a sales order. Please select another inventory item.", "Duplicates", MessageBoxButtons.OK, MessageBoxIcon.Warning); //} //else //{ txtCode.Text = frmInventory.sResult.Trim(); QouteLine qlQoute = this; QouteLine qlLastControl = this; bool bValid = Populate_Inventory_Fields(ref qlQoute,true); txtCode.Focus(); txtCode.SelectionStart = 0; txtCode.SelectionLength = txtCode.Text.Length; ((Forms.Qoutes.Qoute)(Parent.Parent.Parent.Parent)).addTotals(); //} } } } Cursor = System.Windows.Forms.Cursors.Default; }
private void cmdTargetInventory_Click(object sender, EventArgs e) { Cursor = System.Windows.Forms.Cursors.WaitCursor; using (Finder.Inventory frmInventoryZoom = new Solsage_Process_Management_System.Finder.Inventory()) { if (frmInventoryZoom.ShowDialog() == DialogResult.OK) { if (frmInventoryZoom.sResult != "") { txtTargetInvetory.Text = frmInventoryZoom.sResult; txtTargetInventoryDesc.Text = frmInventoryZoom.sDescription; } } Cursor = System.Windows.Forms.Cursors.Default; } }
private void cmdCodeSearch_Click(object sender, EventArgs e) { bool bKit = false; Cursor = System.Windows.Forms.Cursors.WaitCursor ; using (Finder.Inventory frmInventory = new Solsage_Process_Management_System.Finder.Inventory()) { //Sending "None" to inventory ShowDialog to identify that no workshop action should be taken if (frmInventory.ShowDialog(txtStore.Text,"","") == DialogResult.OK) { if (frmInventory.sResult != "") { //check if this item has been selected... //if (((Documents.SalesOrder)(Parent.Parent.Parent.Parent)).CheckDuplicateSalesLine(frmInventory.sResult)) //allow duplicate items wdb 01/09/2012 //{ // MessageBox.Show("No duplicate items are allowed in a sales order. Please select another inventory item.", "Duplicates", MessageBoxButtons.OK, MessageBoxIcon.Warning); //} //else //{ //check if item is part of kit? using (PsqlConnection oConnLiq = new PsqlConnection(Solsage_Process_Management_System.Classes.Connect.sConnStr)) { int iLinkNum = 0; SalesLine slLastControl = this; string sSqlLiq = "Select ItemCode, Qty, Description From SOLKITDET where FkMainItemCode = '" + frmInventory.sResult.Trim() + "' order by LinkNum ASC"; PsqlDataReader rdReaderLiq = Solsage_Process_Management_System.Classes.Connect.getDataCommand(sSqlLiq, oConnLiq).ExecuteReader(); while (rdReaderLiq.Read()) { if (iLinkNum == 0) { txtCode.Text = frmInventory.sResult.Trim(); SalesLine slSales = this; bool bValid = Populate_Inventory_Fields(ref slSales, true); if (!bValid) { bKit = true; break; } txtCode.Focus(); txtCode.SelectionStart = 0; txtCode.SelectionLength = txtCode.Text.Length; ((Documents.SalesOrder)(Parent.Parent.Parent.Parent)).addTotals(); SalesLine slKitLine = new SalesLine(); //slKitLine.txtStore.Text = rdReaderLiq["RMStore"].ToString().Trim(); slKitLine.txtCode.Text = rdReaderLiq["ItemCode"].ToString().Trim(); slKitLine.txtDescription.Text = rdReaderLiq["Description"].ToString().Trim(); slKitLine.bDoCalculation = false; slKitLine.bNextLine = true; slKitLine.txtQuantity.Text = rdReaderLiq["Qty"].ToString().Trim(); ((Documents.SalesOrder)(Parent.Parent.Parent.Parent)).InsertSalesLine(slLastControl.iLineIndex, slKitLine); //remove first line //SalesLine slNewDeletedLine = (SalesLine)this; //((Documents.SalesOrder)(Parent.Parent.Parent.Parent)).deleteSalesLine(slNewDeletedLine, true); slLastControl = slKitLine; slKitLine.bDoCalculation = true; Populate_Kit_Inventory_Fields(ref slKitLine, slKitLine.txtQuantity.Text, slKitLine.txtDescription.Text, slKitLine.txtCode.Text); bKit = true; iLinkNum++; } else { SalesLine slKitLine = new SalesLine(); //slKitLine.txtStore.Text = rdReaderLiq["RMStore"].ToString().Trim(); slKitLine.txtCode.Text = rdReaderLiq["ItemCode"].ToString().Trim(); slKitLine.txtDescription.Text = rdReaderLiq["Description"].ToString().Trim(); slKitLine.bDoCalculation = false; slKitLine.bNextLine = true; slKitLine.txtQuantity.Text = rdReaderLiq["Qty"].ToString().Trim(); ((Documents.SalesOrder)(Parent.Parent.Parent.Parent)).InsertSalesLine(slLastControl.iLineIndex, slKitLine); //remove first line //SalesLine slNewDeletedLine = (SalesLine)this; //((Documents.SalesOrder)(Parent.Parent.Parent.Parent)).deleteSalesLine(slNewDeletedLine, true); Populate_Kit_Inventory_Fields(ref slKitLine, slKitLine.txtQuantity.Text, slKitLine.txtDescription.Text, slKitLine.txtCode.Text); slLastControl = slKitLine; slKitLine.bDoCalculation = true; bKit = true; } } } //} if (!bKit) { txtCode.Text = frmInventory.sResult.Trim(); SalesLine slSales = this; SalesLine slLastControl = this; if (frmInventory.bLinkItem && MessageBox.Show("This item is part of a KIT. Do you want to load all the items linked to this item? ", "Kit Item", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) //Kit Item { bNextLine = true; bool bContinue = Populate_Inventory_Fields(ref slSales, false); txtCode.Focus(); txtCode.SelectionStart = 0; txtCode.SelectionLength = txtCode.Text.Length; if (bContinue) { PsqlConnection oConn = new PsqlConnection(Solsage_Process_Management_System.Classes.Connect.sPastelConnStr); oConn.Open(); string sSql = "select RMStore, ItemCode, RMQty, Remarks from LinkLines "; sSql += " where ItemCode <> '" + frmInventory.sResult + "' and LnkCode = '" + frmInventory.sResult + "'"; PsqlDataReader rdReader = Solsage_Process_Management_System.Classes.Connect.getDataCommand(sSql, oConn).ExecuteReader(); while (rdReader.Read()) { SalesLine slKitLine = new SalesLine(); slKitLine.txtStore.Text = rdReader["RMStore"].ToString().Trim(); slKitLine.txtCode.Text = rdReader["ItemCode"].ToString().Trim(); if (slKitLine.txtCode.Text == "'") { slKitLine.txtDescription.Text = rdReader["Remarks"].ToString().Trim(); } slKitLine.bDoCalculation = false; slKitLine.bNextLine = true; slKitLine.txtQuantity.Text = rdReader["RMQty"].ToString().Trim(); ((Documents.SalesOrder)(Parent.Parent.Parent.Parent)).InsertSalesLine(slLastControl.iLineIndex, slKitLine); slLastControl = slKitLine; slKitLine.bDoCalculation = true; Populate_Inventory_Fields(ref slKitLine, false); } SalesLine slLastLine = (SalesLine)((Documents.SalesOrder)(Parent.Parent.Parent.Parent)).aSaleslines[((Documents.SalesOrder)(Parent.Parent.Parent.Parent)).aSaleslines.Length - 1]; if (slLastLine.txtCode.Text != "") { SalesLine slNewline = new SalesLine();//add empty line at the end ((Documents.SalesOrder)(Parent.Parent.Parent.Parent)).AddSalesLine(slNewline); } rdReader.Close(); oConn.Dispose(); ((Documents.SalesOrder)(Parent.Parent.Parent.Parent)).addTotals(); } } else { bool bValid = Populate_Inventory_Fields(ref slSales, true); txtCode.Focus(); txtCode.SelectionStart = 0; txtCode.SelectionLength = txtCode.Text.Length; ((Documents.SalesOrder)(Parent.Parent.Parent.Parent)).addTotals(); if (Global.bUseQuantityMeasure) { using (PsqlConnection pConn = new PsqlConnection(Connect.sPastelConnStr)) { pConn.Open(); string sSql = "select Category,NettMass from Inventory where ItemCode = '" + txtCode.Text.Trim() + "'"; sCategory = ""; using (PsqlDataReader rdReader = Connect.getDataCommand(sSql, pConn).ExecuteReader()) { while (rdReader.Read()) { sCategory = rdReader["Category"].ToString(); dNetMassPerUnit = Convert.ToDecimal(rdReader["NettMass"]); } rdReader.Close(); } if (sCategory.Trim() != "") { int iMeasureCount = 0; using (PsqlConnection lConn = new PsqlConnection(Connect.sConnStr)) { lConn.Open(); sSql = "select count(*) from SOLMS where fkInventoryCategory = '" + sCategory + "'"; iMeasureCount = Convert.ToInt32(Connect.getDataCommand(sSql, lConn).ExecuteScalar()); lConn.Close(); } if (iMeasureCount > 0) { bUseScale = true; CalcScale(); } else { bUseScale = false; } } pConn.Close(); } } } } } } } Cursor = System.Windows.Forms.Cursors.Default; }
private void dgKitMain_CellContentClick(object sender, DataGridViewCellEventArgs e) { if (dgKitMain.Columns[e.ColumnIndex] == clAddMain) { Cursor = System.Windows.Forms.Cursors.WaitCursor; using (Finder.Inventory frmInventory = new Solsage_Process_Management_System.Finder.Inventory()) { if (frmInventory.ShowDialog("", "", "") == DialogResult.OK) { if (frmInventory.sResult != "") { dgKitMain.Rows[e.RowIndex].Cells["clMainItemCode"].Value = frmInventory.sResult; dgKitMain.Rows.Add(); } } } Cursor = System.Windows.Forms.Cursors.Default; } if (dgKitMain.Columns[e.ColumnIndex] == clDeleteMain) { if (dgKitMain.Rows[e.RowIndex].Cells[0].Value != null) { dgKitMain.Rows.Remove(dgKitMain.Rows[e.RowIndex]); } } }
private void dgKitDetails_CellContentClick(object sender, DataGridViewCellEventArgs e) { if (dgKitDetails.Columns[e.ColumnIndex] == clAdd) { Cursor = System.Windows.Forms.Cursors.WaitCursor; using (Finder.Inventory frmInventory = new Solsage_Process_Management_System.Finder.Inventory()) { if (frmInventory.ShowDialog("", "", "C") == DialogResult.OK) { frmInventory.cmdAddComment.Visible = true; if (frmInventory.sResult != "") { dgKitDetails.Rows[e.RowIndex].Cells["clItemCode"].Value = frmInventory.sResult; dgKitDetails.Rows[e.RowIndex].Cells["clDescription"].Value = frmInventory.sDescription; dgKitDetails.Rows[e.RowIndex].Cells["clQty"].Value = "1.00"; dgKitDetails.Rows.Add(); } } } Cursor = System.Windows.Forms.Cursors.Default; } if (dgKitDetails.Columns[e.ColumnIndex] == clDelete) { if (dgKitDetails.Rows[e.RowIndex].Cells[0].Value != null) { dgKitDetails.Rows.Remove(dgKitDetails.Rows[e.RowIndex]); } } }
private void cmdCodeSearch_Click(object sender, EventArgs e) { Cursor = System.Windows.Forms.Cursors.WaitCursor; string sProject = ((Forms.Project.DeliveryNote)(Parent.Parent.Parent.Parent)).txtProject.Text; if (sProject == "") { using (Finder.Inventory frmInventory = new Solsage_Process_Management_System.Finder.Inventory()) { sQuoteNumber = ""; //Sending "None" to inventory ShowDialog to identify that no workshop action should be taken if (frmInventory.ShowDialog("", "", sProject) == DialogResult.OK) { if (frmInventory.sResult != "") { //check if this item has been selected... if (((Forms.Project.DeliveryNote)(Parent.Parent.Parent.Parent)).CheckDuplicateSalesLine(frmInventory.sResult)) { MessageBox.Show("No duplicate items are allowed in a sales order. Please select another inventory item.", "Duplicates", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { txtCode.Text = frmInventory.sResult.Trim(); txtDescription.Text = frmInventory.sDescription.Trim(); sQuoteNumber = frmInventory.sQuoteNumber.Trim(); ProjectDeliveryNote pdlDeliveryNote = this; ProjectDeliveryNote pdlLastControl = this; bool bValid = Populate_Inventory_Fields(ref pdlDeliveryNote, true); txtCode.Focus(); txtCode.SelectionStart = 0; txtCode.SelectionLength = txtCode.Text.Length; } } } } } else { using (Finder.DeliverynoteItemZoom frmDelNoteItemZoom = new Finder.DeliverynoteItemZoom()) { sQuoteNumber = ""; //Sending "None" to inventory ShowDialog to identify that no workshop action should be taken if (frmDelNoteItemZoom.ShowDialog(sProject) == DialogResult.OK) { if (frmDelNoteItemZoom.ItemList.Count != 0) { ItemList = frmDelNoteItemZoom.ItemList; if (ItemList.Count == 1) { foreach (string sItem in ItemList) { string[] aItemDetails = sItem.Split("|".ToCharArray()); txtCode.Text = aItemDetails[0].ToString(); txtDescription.Text = aItemDetails[1].ToString(); //txtAvlQty.Text = aItemDetails[2].ToString(); //calculate available qty if (sProject != "") { decimal dQuoteQty = 0; using (PsqlConnection oConn3 = new PsqlConnection(Solsage_Process_Management_System.Classes.Connect.sConnStr)) { oConn3.Open(); string sSql2 = "select SUM(SOLQHL.Qty) as Qty from SOLQHH"; sSql2 += " inner join SOLQHL on SOLQHH.Docnumber = SOLQHL.Docnumber"; sSql2 += " where Project = '" + sProject.Trim() + "' and ItemCode = '" + txtCode.Text.Trim() + "'"; PsqlDataReader rdReader2 = Solsage_Process_Management_System.Classes.Connect.getDataCommand(sSql2, oConn3).ExecuteReader(); while (rdReader2.Read()) { dQuoteQty = Convert.ToDecimal(rdReader2["Qty"].ToString()); } rdReader2.Close(); oConn3.Dispose(); } decimal dDelNoteQty = 0; decimal dRetNoteQty = 0; decimal dTotalAvailableQty = 0; //get del note Qty using (PsqlConnection oConn2 = new PsqlConnection(Connect.sConnStr)) { string sSql2 = "select SOLPDL.ItemCode,SUM(SOLPDL.Qty) AS Qty from SOLPDH"; sSql2 += " left join SOLPDL on SOLPDL.Docnumber = SOLPDH.Docnumber"; sSql2 += " where Project = '" + sProject.Trim().Replace("'", "''") + "' AND ItemCode = '" + txtCode.Text.Trim() + "'"; sSql2 += "group by itemcode"; PsqlDataReader rdReader2 = Solsage_Process_Management_System.Classes.Connect.getDataCommand(sSql2, oConn2).ExecuteReader(); while (rdReader2.Read()) { dDelNoteQty = Convert.ToDecimal(rdReader2["Qty"].ToString()); } rdReader2.Close(); //get ret note qty string sSqlRN = "select SOLPRL.ItemCode,SUM(SOLPRL.Qty) AS Qty from SOLPRH"; sSqlRN += " left join SOLPRL on SOLPRL.Docnumber = SOLPRH.Docnumber"; sSqlRN += " where Project = '" + sProject.Trim().Replace("'", "''") + "' AND ItemCode = '" + txtCode.Text.Trim() + "'"; sSqlRN += "group by itemcode"; PsqlDataReader rdReader3 = Solsage_Process_Management_System.Classes.Connect.getDataCommand(sSqlRN, oConn2).ExecuteReader(); while (rdReader3.Read()) { dRetNoteQty = Convert.ToDecimal(rdReader3["Qty"].ToString()); } rdReader2.Close(); oConn2.Dispose(); dTotalAvailableQty = (Convert.ToDecimal(dQuoteQty - dDelNoteQty) + dRetNoteQty); txtAvlQty.Text = dTotalAvailableQty.ToString("N2"); txtQuantity.Text = dTotalAvailableQty.ToString("N2"); } } txtUnit.Text = aItemDetails[3].ToString(); ProjectDeliveryNote pdlDeliveryNote = this; ProjectDeliveryNote pdlLastControl = this; bool bValid = Populate_Inventory_Fields(ref pdlDeliveryNote, true); } } else { foreach (string sItem in ItemList) { string[] aItemDetails = sItem.Split("|".ToCharArray()); this.removeLine(null, null); //txtCode.Text = aItemDetails[0].ToString(); //txtDescription.Text = aItemDetails[1].ToString(); //txtQuoteQty.Text = aItemDetails[2].ToString(); //txtUnit.Text = aItemDetails[3].ToString(); //ProjectDeliveryNote pdlDeliveryNote = this; ProjectDeliveryNote pdlDelNote = new ProjectDeliveryNote(); pdlDelNote.txtCode.Text = aItemDetails[0].ToString(); pdlDelNote.txtDescription.Text = aItemDetails[1].ToString(); //pdlDelNote.txtAvlQty.Text = aItemDetails[2].ToString(); //calculate available qty if (sProject != "") { decimal dQuoteQty = 0; using (PsqlConnection oConn3 = new PsqlConnection(Solsage_Process_Management_System.Classes.Connect.sConnStr)) { oConn3.Open(); string sSql2 = "select SUM(SOLQHL.Qty) as Qty from SOLQHH"; sSql2 += " inner join SOLQHL on SOLQHH.Docnumber = SOLQHL.Docnumber"; sSql2 += " where Project = '" + sProject.Trim() + "' and ItemCode = '" + pdlDelNote.txtCode.Text.Trim() + "'"; PsqlDataReader rdReader2 = Solsage_Process_Management_System.Classes.Connect.getDataCommand(sSql2, oConn3).ExecuteReader(); while (rdReader2.Read()) { dQuoteQty = Convert.ToDecimal(rdReader2["Qty"].ToString()); } rdReader2.Close(); oConn3.Dispose(); } decimal dDelNoteQty = 0; decimal dRetNoteQty = 0; decimal dTotalAvailableQty = 0; //get del note Qty using (PsqlConnection oConn2 = new PsqlConnection(Connect.sConnStr)) { string sSql2 = "select SOLPDL.ItemCode,SUM(SOLPDL.Qty) AS Qty from SOLPDH"; sSql2 += " left join SOLPDL on SOLPDL.Docnumber = SOLPDH.Docnumber"; sSql2 += " where Project = '" + sProject.Trim().Replace("'", "''") + "' AND ItemCode = '" + pdlDelNote.txtCode.Text.Trim() + "'"; sSql2 += "group by itemcode"; PsqlDataReader rdReader2 = Solsage_Process_Management_System.Classes.Connect.getDataCommand(sSql2, oConn2).ExecuteReader(); while (rdReader2.Read()) { dDelNoteQty = Convert.ToDecimal(rdReader2["Qty"].ToString()); } rdReader2.Close(); //get ret note qty string sSqlRN = "select SOLPRL.ItemCode,SUM(SOLPRL.Qty) AS Qty from SOLPRH"; sSqlRN += " left join SOLPRL on SOLPRL.Docnumber = SOLPRH.Docnumber"; sSqlRN += " where Project = '" + sProject.Trim().Replace("'", "''") + "' AND ItemCode = '" + pdlDelNote.txtCode.Text.Trim() + "'"; sSqlRN += "group by itemcode"; PsqlDataReader rdReader3 = Solsage_Process_Management_System.Classes.Connect.getDataCommand(sSqlRN, oConn2).ExecuteReader(); while (rdReader3.Read()) { dRetNoteQty = Convert.ToDecimal(rdReader3["Qty"].ToString()); } rdReader2.Close(); oConn2.Dispose(); dTotalAvailableQty = (Convert.ToDecimal(dQuoteQty - dDelNoteQty) + dRetNoteQty); pdlDelNote.txtAvlQty.Text = dTotalAvailableQty.ToString("N2"); pdlDelNote.txtQuantity.Text = dTotalAvailableQty.ToString("N2"); } } pdlDelNote.txtUnit.Text = aItemDetails[3].ToString(); //ProjectDeliveryNote pdlLastControl = this; //bool bValid = Populate_Inventory_Fields(ref pdlDeliveryNote, false, iLineIndex); ((Forms.Project.DeliveryNote)(Parent.Parent.Parent.Parent)).AddDeliveryLine(pdlDelNote,true); } ProjectDeliveryNote pdlDelNoteNew = new ProjectDeliveryNote(); ((Forms.Project.DeliveryNote)(Parent.Parent.Parent.Parent)).AddDeliveryLine(pdlDelNoteNew,true); ((Forms.Project.DeliveryNote)(Parent.Parent.Parent.Parent)).deleteSalesLine(this, true); } //txtCode.Text = frmDelNoteItemZoom.sItemCode.Trim(); //txtDescription.Text = frmDelNoteItemZoom.sDescription.Trim(); //sQuoteNumber = frmDelNoteItemZoom.sQuoteNumber.Trim(); //ProjectDeliveryNote pdlDeliveryNote = this; //ProjectDeliveryNote pdlLastControl = this; //bool bValid = Populate_Inventory_Fields(ref pdlDeliveryNote, true); //txtCode.Focus(); //txtCode.SelectionStart = 0; //txtCode.SelectionLength = txtCode.Text.Length; } } } } Cursor = System.Windows.Forms.Cursors.Default; }