public bool Search(string data,int way) { double count = 1; string field = ""; switch(way) { case 1: field = "art"; data = ConertCodeInput(data); break; case 2: field = "code0"; data = ConertCodeInput(data); break; case 3: field = "code1"; data = ConertCode(data); break; case 4: field = "code1"; data = ConertCode(ConertCodeInput(data)); break; default: field = "code1"; break; } string query = "" + " SELECT " + " item_data.id, " + " item_data.art, " + " item_data.code0, " + " item_data.code1, " + " item_data.title, " + " item_data.`type`, " + " item_type.title, " + " item_data.measure, " + " item_measure.title, " + " item_data.prize, " + " item_data.`group`, " + " item_groups.title, " + " item_data.section, " + " item_section.title, " + " item_data.nalog, " + " item_nalog.title, " + " item_data.kkm " + " FROM item_data " + " LEFT JOIN item_type ON item_type.id = item_data.type " + " LEFT JOIN item_measure ON item_measure.id = item_data.measure " + " LEFT JOIN item_groups ON item_groups.id = item_data.group " + " LEFT JOIN item_section ON item_section.id = item_data.section " + " LEFT JOIN item_nalog ON item_nalog.id = item_data.nalog " + " WHERE item_data." + field + " = '" + data + "'; "; //MessageBox.Show(query); My db = new My(); db.Connect(); db.Query(query); if (db.Read()) { int index = GetEmptyString(); // Заполняем массив данными из выборки MetaData[index, 0] = db.GetString(0); MetaData[index, 1] = db.GetString(1); MetaData[index, 2] = db.GetString(2); MetaData[index, 3] = db.GetString(3); MetaData[index, 4] = db.GetString(4); MetaData[index, 5] = db.GetString(5); MetaData[index, 6] = db.GetString(6); MetaData[index, 7] = db.GetString(7); MetaData[index, 8] = db.GetString(8); MetaData[index, 9] = db.GetString(9); MetaData[index, 10] = "0"; // Цена окончательная посчитаем потом MetaData[index, 11] = db.GetString(10); MetaData[index, 12] = db.GetString(11); MetaData[index, 13] = db.GetString(12); MetaData[index, 14] = db.GetString(13); MetaData[index, 15] = db.GetString(14); MetaData[index, 16] = db.GetString(15); MetaData[index, 17] = db.GetString(16); MetaData[index, 18] = "1"; // Статус MetaData[index, 19] = "1"; // Количество MetaData[index, 20] = "0"; MetaData[index, 21] = "0"; MetaData[index, 22] = "0"; MetaData[index, 23] = "0"; MetaData[index, 24] = ""; MetaData[index, 25] = ""; MetaData[index, 26] = settings.TicketIncrement+"-"+settings.SystemID; // Считаем количество // Если весовой до просим ввести вес if (db.GetString(5) == "1") { TicketCount TKc = new TicketCount(1, global); TKc.ShowDialog(); count = global.buffTicketMetaCount; } else { // Если количественный и в настройках всегда спрашивать спрашиваем количество if (settings.configTicketMetaCount == "1") { TicketCount TKc = new TicketCount(0, global); TKc.ShowDialog(); count = global.buffTicketMetaCount; } else { count = 1; } } // TЕсли количество ноль то не продалжаем if (count == 0) return false; // Округляем на всякий случай MetaData[index, 19] = Convert.ToString(Math.Round(count, 3)); // Считаем цену MetaData[index, 10] = Convert.ToString(Math.Round(Convert.ToDouble(MetaData[index, 9]) * count, 2)); // Уникальный номер пробитого товара SettingIncremet("meta"); MetaData[index, 25] = settings.TicketMetaIncrement + "-" + settings.SystemID; } else { ErrorMsg = "Товар в базе данных не найден"; ShowError(); return false; } CheckList(); Form_TableUpdate(); return true; }
//////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////// public void HandDiscont(string data) { if (data == "All") { TicketCount f = new TicketCount(0, global, "Велечина ручной скидки (На все позиции чека)"); f.ShowDialog(); } if (data == "Pos") { TicketCount f = new TicketCount(0, global, "Велечина ручной скидки (На выделенную позицию чека)"); f.ShowDialog(); } string value = Convert.ToString(global.buffTicketMetaCount); int Increm = 1; for (int i = 0; i < 1000; i++) { if (MetaData[i, 0] != "" && MetaData[i, 0] != null) { if (data == "All") { MetaData[i, 21] = value; } if (data == "Pos" ) { if(Convert.ToString(Increm) == dataGrid.SelectedRows[0].Cells["i"].Value.ToString()) MetaData[i, 21] = value; } Increm++; } } CheckList(); }