private void btnGo_Click(object sender, EventArgs e)
        {
            if (cMode == "D")
            {
                if (dgvData.CurrentRow == null)
                {
                    RFMMessage.MessageBoxAttention("Выберите партнера!");
                    dgvPartnersDetails.Select();
                    return;
                }
                DataRow dr = ((DataRowView)((DataGridViewRow)dgvData.CurrentRow).DataBoundItem).Row;
                if (dgvPartnersDetails.Rows.Count > 0)
                {
                    DataRow drd = ((DataRowView)((DataGridViewRow)dgvPartnersDetails.CurrentRow).DataBoundItem).Row;
                    if (drd["FactName"].ToString().Trim().Length == 0)
                    {
                        RFMMessage.MessageBoxAttention("В выбранных реквизитах для партнера\n" +
                                                       "\"" + ((string)dr["Name"]).Trim() + "\"\n" +
                                                       "не заполнено фактическое название...");
                        dgvPartnersDetails.Select();
                        return;
                    }
                    else
                    {
                        ucSelect.SaveData(dgvPartnersDetails, "FactName", false);
                    }
                }
                else
                {
                    RFMMessage.MessageBoxAttention("Не заполнены реквизиты для партнера\n" +
                                                   "\"" + ((string)dr["Name"]).Trim() + "\"...");
                    dgvData.Select();
                    return;
                }
            }
            else
            {
                if (dgvData.Rows.Count > 0)
                {
                    ucSelect.SaveData(dgvData, "Name", bUseCheck);
                }
            }

            btnGo.DialogResult = DialogResult.Yes;
            Close();
        }
        private void btnGo_Click(object sender, EventArgs e)
        {
            // возвращаем код выбранного товара/упаковки в родительскую форму, поле _SelectedPackingID

            string _SelectedPackingsIDList    = null;
            int?   _SelectedPackingID         = null;
            string _SelectedPackingsAliasText = "";

            if (grdData.Rows.Count > 0)
            {
                if (ucSelect != null)
                {
                    ucSelect.SaveData(grdData, "GoodAlias", useCheck);
                }
                else
                {
                    if (useCheck && grdData.IsCheckerShow)
                    {
                        // список ID
                        _SelectedPackingsIDList    = "";
                        _SelectedPackingsAliasText = "";

                        DataView dMarked = new DataView(oGoods.MainTable);
                        dMarked.RowFilter = "IsMarked = true";
                        dMarked.Sort      = grdData.GridSource.Sort;
                        int i = 0;
                        int nFirstCntRecords = 3;                         // количество первых записей дл¤ наборного текстового значени¤
                        foreach (DataRowView r in dMarked)
                        {
                            if (!Convert.IsDBNull(r["PackingID"]))
                            {
                                _SelectedPackingsIDList += r["PackingID"].ToString() + ",";

                                if (i < nFirstCntRecords)
                                {
                                    _SelectedPackingsAliasText += r["PackingAlias"].ToString().Trim() + ", ";
                                }
                                else
                                {
                                    if (i == nFirstCntRecords)
                                    {
                                        _SelectedPackingsAliasText += "...";
                                    }
                                }
                                i++;
                            }
                        }
                        if (_SelectedPackingsIDList.Length == 0)
                        {
                            // нет отметок - берем текущую запись
                            if (grdData.CurrentRow != null)
                            {
                                _SelectedPackingsIDList    = grdData.CurrentRow.Cells["grcPackingID"].Value.ToString() + ",";
                                _SelectedPackingsAliasText = grdData.CurrentRow.Cells["grcGoodAlias"].Value.ToString().Trim();
                            }
                        }

                        // приводим наборное текстовое поле к виду: (5) раз, два, три, ...
                        if (_SelectedPackingsIDList.Length == 0)
                        {
                            _SelectedPackingsIDList    = null;
                            _SelectedPackingsAliasText = "";
                        }
                        else
                        {
                            _SelectedPackingsAliasText = _SelectedPackingsAliasText.Trim();
                            if (_SelectedPackingsAliasText.Substring(_SelectedPackingsAliasText.Length - 1, 1) == ",")
                            {
                                _SelectedPackingsAliasText = _SelectedPackingsAliasText.Substring(0, _SelectedPackingsAliasText.Length - 1);
                            }
                            _SelectedPackingsAliasText = "(" + RFMUtilities.Occurs(_SelectedPackingsIDList, ",").ToString() + "): " +
                                                         _SelectedPackingsAliasText;
                        }

                        if (bFromParentForm && parentForm != null)
                        {
                            RFMUtilities.SetFormField(parentForm, "_SelectedPackingsIDList", _SelectedPackingsIDList);
                            RFMUtilities.SetFormField(parentForm, "_SelectedPackingsAliasText", _SelectedPackingsAliasText);
                        }
                    }
                    else
                    {
                        // ID текущей строки
                        if (grdData.CurrentRow != null)
                        {
                            _SelectedPackingID         = (int)grdData.CurrentRow.Cells["grcPackingID"].Value;
                            _SelectedPackingsAliasText = grdData.CurrentRow.Cells["grcGoodAlias"].Value.ToString().Trim();
                        }

                        if (bFromParentForm && parentForm != null)
                        {
                            RFMUtilities.SetFormField(parentForm, "_SelectedPackingID", _SelectedPackingID);
                            RFMUtilities.SetFormField(parentForm, "_SelectedPackingsAliasText", _SelectedPackingsAliasText);
                        }
                    }
                }
            }
            else
            {
                RFMMessage.MessageBoxInfo("Ќе выбрано ни одного товара...");
            }

            DialogResult = DialogResult.Yes;
            Dispose();
        }