Определение длины строки в запросе 1С

Как извесно боль запросов 1С, в невозможности «штатно» определить длину строки в запросе. Вот один из обходных «велосипедов»:

1С: Выделение цветом ячеек в таблице значений на форме

Задача: раскрасить ячейки в ТЗ на форме в зависимости от условий.

Решение: будем использовать условное оформление, которое назначается перед выводом формы на экран. Например в процедуре «ПриСозданииНаСервере»

1С: Удаление записи из регистра накопления по регистратору и измерению (отбор)

Задача: удалить записи из регистра накопления по регистратору +  условию.  Т.е. есть несколько записей с одним регистратором, но разными измерениями. Необходимо удалить только нужные. Казалось бы тривиальная задача..но.. «штатными » средставами это сделать не удалось.

Решение: 

  1. Сделаем отбор  по регистратору
  2. Переберем выборку,  отберем те записи, которые необходимо удалить
  3. Удалим их

Код примерно такой:

UPDATE:

А можно и еще проще и быстрее:

 

1С: Не удалось зафиксировать таблицу для чтения «Users»

Данная ошибка возникает при работе с хранилищем. Чистка кэша, перезагрузка всего и вся — не помогает.

Решение 1 (некоторым помогает): удалить в окне 1С предприятие строчку соединения с базой и снова её создать. Переподключиться к хранилищу.

Решение 2 : перезапустить сервер 1с Предприятие, перезагрузить серер вообще..

1C: Правильное удаление элементов из таблицы значений

Некоторые пытаются сделать так:

Т.е. перебирают всю таблицу и по условию удаляют это строчку. И это совершенноне верно! При таком удалении, если строчки которые нужно удалить идут «вподряд», идет «перескок» и строка не удаляется. Правильно удалять с отборами:

Пусть более громоздко, но зато работает верно. Можно еще покопать в строну использования «И и ИЛИ» в отборах. Будет короче.  Не стал

1 17 18 19 20 21 45