1С: быстрая очистка большого регистра сведений
Самый простой способ — создать пустую запись без фильтров:
НаборЗаписей = РегистрыСведений.наш_регистр.СоздатьНаборЗаписей();
НаборЗаписей.Записать();
Жизнь замечательных грибов
Разработки на платформе 1С
Самый простой способ — создать пустую запись без фильтров:
НаборЗаписей = РегистрыСведений.наш_регистр.СоздатьНаборЗаписей();
НаборЗаписей.Записать();
Это происходит если в этой ячейке содержится значение а не текст, при попытке записи текста. Поэтому делаем так:
ТекОбласть = ТабличныйДокументВыписка.Область("R"+ Формат( НомерСтроки, "ЧГ=0") + "C" + 9);
Если ТекОбласть.СодержитЗначение Тогда
ТекОбласть.Значение=НомерФС;
иначе
ТекОбласть.Текст=НомерФС;
конецесли
Ошибка возникает из-за свойства 1С разделять разряды чисел. Соответственно часто чтобы нормально работать с числами больше 1000 в смеси со строками, приходится число предварительно форматировать. Например так:
ТекОбласть = ТабличныйДокументВыписка.Область("R"+ Формат( НомерСтроки, "ЧГ=0") + "C" + 11);
С определенного релиза платформы, это сообщение стало появляться при использовании некоторых внешних обработок, которые пользователи открывали через Файл-Открыть.
Решение: а решение остается только одно — оформлять обработку в «подключаемую», т.к. нет способа отключить безопасный режим при открытии внешней обработки через это меню.
Для оформления внешней обработки, достаточно в модуле обработки добавить что-то вроде:
Функция СведенияОВнешнейОбработке() Экспорт
ИмяОтчета = ЭтотОбъект.Метаданные().Имя;
Синоним = ЭтотОбъект.Метаданные().Синоним + " " + ЭтотОбъект.Метаданные().Комментарий;
Синоним = ?(ЗначениеЗаполнено(Синоним),Синоним, ИмяОтчета);
РегистрационныеДанные = Новый Структура();
РегистрационныеДанные.Вставить("Вид", "ДополнительнаяОбработка");
РегистрационныеДанные.Вставить("Наименование", Синоним);
РегистрационныеДанные.Вставить("Версия", "1.0");
РегистрационныеДанные.Вставить("БезопасныйРежим", ложь);
РегистрационныеДанные.Вставить("Информация", "Обработка "+Синоним);
ТЗ_Команды = Новый ТаблицаЗначений;
ТЗ_Команды.Колонки.Добавить("Идентификатор");
ТЗ_Команды.Колонки.Добавить("Использование");
ТЗ_Команды.Колонки.Добавить("Представление");
НоваяСтрока = ТЗ_Команды.Добавить();
НоваяСтрока.Идентификатор = "ОткрытьОбработку";
НоваяСтрока.Использование = "ОткрытиеФормы";
НоваяСтрока.Представление = "Обработка БВ";
РегистрационныеДанные.Вставить("Команды", ТЗ_Команды);
Возврат РегистрационныеДанные;
КонецФункции
Ну и подключить её через соответствующий пункт вашей конфигурации (например «Дополнительные внешние отчеты и обработки»).
Самый простой способ, перед вызовом Запрос.Выполнить(), поставить точку останова и по Shift-F9 вычислить чтото-вроде:
Запрос.МенеджерВременныхТаблиц.Таблицы[0].ПолучитьДанные().Выгрузить()