private void PartnersGoodsCopy() { if (grdData.CurrentRow == null) { return; } if (!oPartnerCur.ID.HasValue) { return; } if (!grdData.IsCheckerShow || grdData.MarkedCount == 0) { RFMMessage.MessageBoxError("Нет отмеченных партнеров..."); return; } int nPartnerID = (int)oPartnerCur.ID; if (!oPartnerCur.FillTablePartnersGoods(nPartnerID) || oPartnerCur.TablePartnersGoods == null || oPartnerCur.TablePartnersGoods.Rows.Count == 0) { RFMMessage.MessageBoxError("Для текущего партнера нет спец.данных о товарах..."); return; } Partner oPartnerForCopy = new Partner(); PartnerPrepareIDList(oPartnerForCopy, true); if (oPartnerForCopy.IDList != null && oPartnerForCopy.IDList.Length > 0) { string sText = "," + oPartnerForCopy.IDList + ","; if (sText.Contains("," + nPartnerID.ToString().Trim() + ",")) { sText = sText.Replace("," + nPartnerID.ToString().Trim() + ",", ","); oPartnerForCopy.IDList = RFMUtilities.NormalizeList(sText); } if (!oPartnerForCopy.FillData() || oPartnerForCopy.MainTable == null || oPartnerForCopy.MainTable.Rows.Count == 0) { RFMMessage.MessageBoxError("Нет данных об отмеченных партнерах..."); return; } if (RFMMessage.MessageBoxYesNo("Выполнить копирование спец.данных о товарах текущего партнера\n" + "\"" + oPartnerCur.Name + "\"\n" + "для всех отмеченных партнеров (" + oPartnerForCopy.MainTable.Rows.Count.ToString().Trim() + ")?\n\n" + "ВНИМАНИЕ!\n" + "Существующие спец.данные о товарах для отмеченных партнеров, если таковые имеются, будут удалены и полностью заменены на спец.данные о товарах текущего партнера!") == DialogResult.Yes) { if (oPartnerForCopy.CopyTablePartnersGoods(nPartnerID, oPartnerForCopy.IDList)) { grdData_Restore(); } } } else { RFMMessage.MessageBoxError("Нет данных об отмеченных партнерах..."); return; } }