Имя: Пароль:
1C
 
Drag and Drop
0 Merkuce
 
15.12.08
08:42
В 1С 8 релизована возможность перетащить, например, текстовый документ с рабочего стола в 1С - он там будет открыт платформой. Нужно реализовать механизм, чтобы при перетаскивании документа к какому-то элементу справочника документ прикреплялся к этому элементу.
Вопрос такой: реально ли такое реализовать, с использованием каких технологий это можно сделать и что можно почитать по этому поводу? Вообще, в какую сторону копать?

Заранее спасибо.
1 NcSteel
 
15.12.08
08:43
(15) Нельзя.
2 Merkuce
 
15.12.08
09:08
А с использованием других языков программирования?
3 NcSteel
 
15.12.08
09:11
(2) Несилен. Но чую, что реализовать, как в (0) нельзя.
4 Merkuce
 
15.12.08
13:03
вверх
5 IamAlexy
 
15.12.08
13:06
ну а если сделать это не между двумя формами списков а между двумя таблицами значений на одной форме.

на форме две ТЗ.
обработка перетаскивания вполне между ними работает.
почему бы не вызывать процедуру "прикрепления" при перетаскивании из одной таблицы в другую?
6 Stepa86
 
15.12.08
13:11
ТабличноеПоле (TableBox)
НачалоПеретаскивания (DragStart)
Синтаксис:
НачалоПеретаскивания(<Параметры перетаскивания>, <Стандартная обработка>)
Параметры:
<Параметры перетаскивания>
Тип: ПараметрыПеретаскивания. Содержит перетаскиваемое значение, тип действия и возможные действия при перетаскивании.
<Стандартная обработка>
Тип: Булево. В данный параметр передается признак выполнения стандартной (системной) обработки события. Если в теле процедуры-обработчика установить данному параметру значение Ложь, стандартная обработка события производиться не будет.
Значение по умолчанию: Истина
Описание:
Возникает при начале операции перетаскивания.

ТабличноеПоле (TableBox)
ПроверкаПеретаскивания (DragCheck)
Синтаксис:
ПроверкаПеретаскивания(<Параметры перетаскивания>, <Стандартная обработка>, <Строка>, <Колонка>)
Параметры:
<Параметры перетаскивания>
Тип: ПараметрыПеретаскивания. Содержит перетаскиваемое значение, тип действия и возможные действия при перетаскивании.
<Стандартная обработка>
Тип: Булево. В данный параметр передается признак выполнения стандартной (системной) обработки события. Если в теле процедуры-обработчика установить данному параметру значение Ложь, стандартная обработка события производиться не будет.
Значение по умолчанию: Истина
<Строка>
Тип: <Строка табличного поля>, Неопределено. Строка табличного поля, над которой находится курсор.
Тип значения строки табличного поля приведен в описаниях расширений табличного поля у соответствующих объектов.
Если строка не опредеделена (тип Неопределено), то это означает, что курсор не находится над ячейкой. Такой случай может быть обработан, например, как нестандартное добавление новой строки.
<Колонка>
Тип: КолонкаТабличногоПоля, Неопределено. Колонка, над которой находится курсор.
Если колонка не опредеделена (тип Неопределено), то это означает, что курсор не находится над ячейкой.
Описание:
Возникает при движении курсора в табличном поле - приемнике данных, а также при нажатии или отпускании клавиши Ctrl, когда перетаскивание начато и курсор находится в области приемника. В момент нажатия или отпускания клавиши Ctrl перемещать курсор не обязательно.

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

ТабличноеПоле (TableBox)
Перетаскивание (Drag)
Синтаксис:
Перетаскивание(<Параметры перетаскивания>, <Стандартная обработка>, <Строка>, <Колонка>)
Параметры:
<Параметры перетаскивания>
Тип: ПараметрыПеретаскивания. Содержит перетаскиваемое значение, тип действия и возможные действия при перетаскивании.
<Стандартная обработка>
Тип: Булево. В данный параметр передается признак выполнения стандартной (системной) обработки события. Если в теле процедуры-обработчика установить данному параметру значение Ложь, стандартная обработка события производиться не будет.
Значение по умолчанию: Истина
<Строка>
Строка, над которой находится объект.
<Колонка>
Тип: КолонкаТабличногоПоля. Колонка, над которой находится объект.
Описание:
Возникает при окончании перетаскивания в табличном поле - приемнике данных.
7 Stepa86
 
15.12.08
13:13
Пример: перетаскивание из експлорера файлов в форму списка:


Процедура СправочникСписокПроверкаПеретаскивания(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка, Строка, Колонка)
   
   СтандартнаяОбработка = Ложь;
   
   Если ТипЗнч(ПараметрыПеретаскивания.Значение) = Тип("Массив")
       ИЛИ ТипЗнч(ПараметрыПеретаскивания.Значение) = Тип("Файл") Тогда
       
       ПараметрыПеретаскивания.ДопустимыеДействия = ДопустимыеДействияПеретаскивания.Копирование;
       
   Иначе
       
       ПараметрыПеретаскивания.ДопустимыеДействия = ДопустимыеДействияПеретаскивания.НеОбрабатывать;
       
   КонецЕсли;

КонецПроцедуры

Процедура СправочникСписокПеретаскивание(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка, Строка, Колонка)
   
   СтандартнаяОбработка = Ложь;
   
   Если ТипЗнч(ПараметрыПеретаскивания.Значение) = Тип("Файл") Тогда
       
       ЗаполнитьПеретаскиваниеФайла(ПараметрыПеретаскивания.Значение, Строка);
       
   ИначеЕсли ТипЗнч(ПараметрыПеретаскивания.Значение) = Тип("Массив") Тогда
       
       ЗаполнитьПеретаскиваниеМассива(ПараметрыПеретаскивания.Значение, Строка);
       
   КонецЕсли;
   
КонецПроцедуры
8 Merkuce
 
15.12.08
14:03
Спасибо, попробую
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан