public CExcelInputHelper(CSmartArray array) { //Application pApp = new Application(); m_pApp = new Application(); Workbook pBook = m_pApp.Workbooks.Add(); m_pSheet = pBook.Sheets[1]; m_pSheet.Cells[1, 1] = "наименование"; m_pSheet.Cells[1, 2] = "количество"; //int count = array.GetCount(); int count = m_spisok.GetCount(); for (int i = 0; i < count; i++) { ProductTag tag = (ProductTag)(i + 1); m_pSheet.Cells[i + 2, 1] = m_spisok.GetName(tag); m_pSheet.Cells[i + 2, 2] = array.GetTagCount(tag); } Range pRange = m_pSheet.Range[m_pSheet.Cells[1, 1], m_pSheet.Cells[count + 1, 2]]; //Range pColumn = m_pSheet.Columns["A:FF"]; //pColumn.AutoFit(); for (int i = (int)XlBordersIndex.xlEdgeLeft; i <= (int)XlBordersIndex.xlInsideHorizontal; i++) { pRange.Borders[(XlBordersIndex)i].LineStyle = XlLineStyle.xlContinuous; } m_pApp.Visible = true; }
public bool IsEqual(CSmartArray array) { Dictionary <ProductTag, int> map = array.GetMap(); int count = m_TagMap.Count; if (count != map.Count) { return(false); } var en = m_TagMap.Keys.GetEnumerator(); en.MoveNext(); for (int i = 0; i < count; i++) { ProductTag pTag = en.Current; int TagCount = array.GetTagCount(pTag); if (TagCount == 0) { return(false); } if (TagCount != GetTagCount(pTag)) { return(false); } } return(true); }
virtual public void SetInput(CSmartArray Array) { int count = m_TagInputArray.Count; for (int i = 0; i < count; i++) { ProductTag tag = m_TagInputArray[i]; int ProductCount = Array.GetTagCount(tag); m_InputCount[i] = ProductCount; m_SmartInput.Add(tag, ProductCount); Array.ClearTag(tag); } }
public void ExcludeWhatHave(CSmartArray Arr) { var e = m_TagMap.Keys.GetEnumerator(); List <ProductTag> sameTag = new List <ProductTag>(); for (int i = 0; i < m_TagMap.Keys.Count; i++) { e.MoveNext(); ProductTag tag = e.Current; int count = Arr.GetTagCount(tag); if (count != 0) { sameTag.Add(tag); } } for (int i = 0; i < sameTag.Count; i++) { ProductTag tag = sameTag[i]; int count = Arr.GetTagCount(tag); int value = m_TagMap[tag]; if (value > count) { Add(tag, -count); Arr.ClearTag(tag); } else if (value < count) { ClearTag(tag); Arr.Add(tag, -value); } else //одинаковое значение { ClearTag(tag); Arr.ClearTag(tag); } } //e.MoveNext(); }
public int GetTagCount(ProductTag tag) { return(m_SmartInput.GetTagCount(tag)); }
public CAlreadyHaveForm(CSmartArray array) { m_AlreadyHaveArray = array; int count = m_Spisok.GetCount(); List <string> nameList = new List <string>(); for (int i = 0; i < count; i++) { nameList.Add(m_Spisok.GetName((ProductTag)i + 1)); } nameList.Sort(); int boxWidht = 100; int controlHeight = 21; int spaceBoxNumeric = 10; int numericWidht = 30; int newLineSpace = 10; int controlsInColumn = 12; int spaceColumn = 10; int columnFullWidth = boxWidht + spaceBoxNumeric + numericWidht; int columnFullHeight = controlHeight * controlsInColumn + newLineSpace * (controlsInColumn - 1); int startX = 10; int startY = 10; int X = startX; int Y = startY; int maxColumn = 1; for (int i = 0; i < count; i++) { TextBox box = new TextBox(); box.Enabled = false; box.Size = new System.Drawing.Size(boxWidht, controlHeight); box.Location = new System.Drawing.Point(X, Y); box.Text = nameList[i]; TextList.Add(box); Controls.Add(box); NumericUpDown numeric = new NumericUpDown(); numeric.Size = new System.Drawing.Size(numericWidht, controlHeight); numeric.Location = new System.Drawing.Point(X + boxWidht + spaceBoxNumeric, Y); numeric.Value = array.GetTagCount(nameList[i]); NumericList.Add(numeric); Controls.Add(numeric); Y += controlHeight + newLineSpace; if ((i + 1) % controlsInColumn == 0) { X += columnFullWidth + spaceColumn; Y = startY; maxColumn++; } } int FormHeight = columnFullHeight + 2 * startY; int FormWidht = columnFullWidth * maxColumn + spaceColumn * (maxColumn - 1) + 2 * startX; ClientSize = new System.Drawing.Size(FormWidht, FormHeight); }