|
Метод "ВставитьОбласть" - отрабатывает по разному... | ☑ | ||
---|---|---|---|---|
0
1Садовник
20.04.18
✎
16:18
|
Из СП:
Описание: Вставляда возникает ошибка. ет копию исходной области табличного документа в область-приемник. Доступность: Сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер). Примечание: Если размеры исходной области не соответствуют результирующей области, то при выполнении мето Пример (управляемые формы, процедура в модуле формы внешней обработки): &НаСервере Процедура ТестНаСервере() Сообщение = Новый СообщениеПользователю; ТабДокИсходный = Новый ТабличныйДокумент; ТабДокНовый = Новый ТабличныйДокумент; ОбластьИсходная = ТабДокИсходный.Область(1,1,1,5); ОбластьПриемник = ТабДокИсходный.Область(1,1,1,3); Попытка ТабДокНовый.ВставитьОбласть(ОбластьИсходная, ОбластьПриемник); Сообщение.Текст = "Получилось вставить 5 колонок в 3"; Исключение Сообщение.Текст = "Ошибка разный размер областей"; КонецПопытки; Сообщение.Сообщить(); КонецПроцедуры И вот вопрос - почему при разных размерах областей (источник и приемник) ошибка НЕ возникает в тонком клиенте для файловой базы. И также НЕ возникает для тонкого и толстого клиента клиент-серверной базы. Тестировал на платформах 8.3.11.3034, 8.3.10.2466 (версия по всей видимости не влияет). Сообщение "Ошибка разный размер областей" можно увидеть только при запуске в толстом клиенте файловой базы. |
|||
1
1Садовник
20.04.18
✎
16:20
|
ОбластьПриемник = ТабДокИсходный.Область(1,1,1,3);
можно заменить на ОбластьПриемник = ТабДокНовый.Область(1,1,1,3); не влияет на результат |
|||
2
manuuu
20.04.18
✎
16:20
|
Возможно макет не тот устанавливается?
|
|||
3
1Садовник
20.04.18
✎
16:29
|
(2) Макет не причем, его нет в обработке.
|
|||
4
singlych
20.04.18
✎
16:34
|
Не ошибка не возникает, а сообщение не сообщается.
|
|||
5
1Садовник
20.04.18
✎
16:53
|
(4) Отрабатывает метод в тонком клиенте и возникает ошибка в толстом вот пример готовый:
&НаСервере Функция ТестНаСервере() Сообщение = Новый СообщениеПользователю; ТабДокИсходный = Новый ТабличныйДокумент; ТабДокНовый = Новый ТабличныйДокумент; ТабДокИсходный.Область(1,1).Текст = "ячейка1"; ТабДокИсходный.Область(1,3).Текст = "ячейка3"; ОбластьИсходная = ТабДокИсходный.Область(1,1,1,3); ОбластьПриемник = ТабДокНовый.Область(1,1,1,5); Попытка ТабДокНовый.ВставитьОбласть(ОбластьИсходная, ОбластьПриемник); Сообщение.Текст = "Получилось вставить 3 колоноки в 5"; Исключение Сообщение.Текст = "Ошибка"; КонецПопытки; Сообщение.Сообщить(); Возврат ТабДокНовый; КонецФункции &НаКлиенте Процедура Тест(Команда) ТД = ТестНаСервере(); ТД.Показать(); КонецПроцедуры |
|||
6
singlych
20.04.18
✎
16:58
|
Убери попытку и повтори.
|
|||
7
1Садовник
20.04.18
✎
17:02
|
(6) убрал. В тонком метод молча отработал. Вот результат:
http://ipic.su/img/img7/fs/1.1524232942.png |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |