ТабличноеПоле.НачалоПеретаскивания

События · DragStart

Возникает при начале операции перетаскивания.

Синтаксис

НачалоПеретаскивания(<ПараметрыПеретаскивания>, <Выполнение>)
Полное описание, параметры и ограничения

ТабличноеПоле.НачалоПеретаскивания (TableBox.DragStart)

ТабличноеПоле (TableBox)

НачалоПеретаскивания (DragStart)

Доступен, начиная с версии 8.0.

Синтаксис:
НачалоПеретаскивания(<ПараметрыПеретаскивания>, <Выполнение>)
Параметры:

<ПараметрыПеретаскивания>
Тип: ПараметрыПеретаскивания.
Содержит перетаскиваемое значение, тип действия и возможные действия при перетаскивании.

<Выполнение>
Тип: Булево.
Управляет выполнением перетаскивания. Если в теле процедуры-обработчика установить данному параметру значение Ложь, перетаскивание не начнется.
Значение по умолчанию: Истина.
Описание:

Возникает при начале операции перетаскивания.

Доступность:

Толстый клиент.

Использование в версии:

Доступен, начиная с версии 8.0.

Методическая информация

Практические примеры

НачалоПеретаскивания: собственная обычная таблица

Источник начинает копирование своего строкового маркера. Перенос рабочей записи или файла не выполняется.

Где и как запускать

Модуль своей обычной формы, толстый клиент.

Подготовка

  1. Создайте внешнюю учебную обработку с обычной формой и запускайте в толстом клиенте.

  2. Реквизиты формы: Товары (ТаблицаЗначений), Статус (Строка 200), ИтогКоличество (Число 10.0), РазрешитьУдаление (Булево), ЗапретитьСворачивание (Булево). Выведите статус, итог и оба флажка.

  3. У таблицы Товары колонки Наименование (Строка 100), Количество (Число 10.0), Фиксирована (Булево). Имя элемента таблицы — Товары, данные / путь — Товары; разрешите интерактивное редактирование строк.

  4. Основной обработчик назначьте указанному событию элемента Товары, не событию формы. Первый параметр Элемент уже включён в процедуру; платформа передаёт его автоматически.

  5. Каждый урок проверяйте в отдельном варианте своей формы. Не объединяйте повторяющиеся процедуры подготовки и обработчики с одинаковыми именами.

  6. Добавьте реквизит ТоварыИсточник типа ТаблицаЗначений с теми же колонками и второй элемент Источник с данными / путём ТоварыИсточник. У Источник включите РазрешитьНачалоПеретаскивания, у Товары — РазрешитьПеретаскивание.

  7. НачалоПеретаскивания назначается ИсточникНачалоПеретаскивания у Источник; приём и проверка относятся к Товары, окончание — к Источник. Не перетаскивайте файлы из проводника.

Процедура ИсточникНачалоПеретаскивания(Элемент, ПараметрыПеретаскивания, Выполнение)
    ПараметрыПеретаскивания.Значение = "КНИГА";
    ПараметрыПеретаскивания.ДопустимыеДействия = ДопустимыеДействияПеретаскивания.Копирование;
    ПараметрыПеретаскивания.Действие = ДействиеПеретаскивания.Копирование;
    Выполнение = Истина;
    Сообщить("Передаётся собственный маркер КНИГА");
КонецПроцедуры
Та же обычная форма: назначить событию ПриОткрытии
Процедура ПриОткрытии()
    Товары = Новый ТаблицаЗначений;
    Товары.Колонки.Добавить("Наименование", Новый ОписаниеТипов("Строка"));
    Товары.Колонки.Добавить("Количество", Новый ОписаниеТипов("Число"));
    Товары.Колонки.Добавить("Фиксирована", Новый ОписаниеТипов("Булево"));
    СтрокаТовара = Товары.Добавить();
    СтрокаТовара.Наименование = "Книга";
    СтрокаТовара.Количество = 2;
    СтрокаТовара.Фиксирована = Ложь;
    СтрокаТовара = Товары.Добавить();
    СтрокаТовара.Наименование = "Ручка";
    СтрокаТовара.Количество = 3;
    СтрокаТовара.Фиксирована = Истина;
    РазрешитьУдаление = Ложь;
    ЗапретитьСворачивание = Истина;
    ИтогКоличество = 5;
    Статус = "Готово";
    ЭлементыФормы.Товары.СоздатьКолонки();
    ТоварыИсточник = Товары.Скопировать();
    ЭлементыФормы.Источник.СоздатьКолонки();
КонецПроцедуры

Разбор по шагам

  1. Подготавливаем настоящую собственную таблицу / список и назначаем точное событие.

  2. Параметры после Элемент соответствуют установленной справке конкретного типа.

  3. Источник начинает копирование своего строкового маркера. Перенос рабочей записи или файла не выполняется.

Как проверить результат

  1. Начните перетаскивание из Источник: передаётся КНИГА и разрешено копирование.

  2. Строки источника этим обработчиком не удаляются.

Ожидаемый результат

Событие работает с собственными данными и реально заданным источником действия.

На что обратить внимание

  1. Не вызывайте обработчики событий вручную: проверяйте указанное пользовательское действие.

  2. События активизации, наведения, раскрытия и смены родителя не должны вызывать серверные методы формы.

  3. Обычная и управляемая формы имеют разные API; не переносите между ними элементы и процедуры без адаптации.

  4. Таблица значений хранит данные формы, не записывает их в регистр автоматически.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.