1C заметки с 22.06.22 и далее
Онлайн-сервис раскраски кода 1С
Сервис раскраски кода 1С https://koder.by/raskraska_koda_1c.php (14.01.24)
Ранее был такой сервис:
https://www.color1c.lavelin.ru/index.php - после 14.01.24 не работает;
lavelin.ru на базе скрипта от Дмитрия Башинского(bashinsky)
Дает форматированный текст для вставки в текстовый редактор, дает HTML-код для вставки на сайт.
Другие сервисы по раскраске кода (не только 1с, либо вообще не 1с): tohtml.com | highlight.hohli.com | dumpz.org |develplatform.ru
Руководство администратора (ИТС), Приложение 4. Вспомогательные утилиты
Есть утилита тестирования chdbfl для файловых баз данных:
Пишут уже известное: сделать копию информационной базы до запуска утилиты; запустить без галочки "исправлять ошибки"; если ошибки не обнаружены, может запустить с галочкой, тогда утилита сделает переиндексацию.
Вопрос - а в конфигураторе команда "тестирование и исправление" как-то иначе проверяет базу?
Есть утилита преобразования файловой базы данных cnvdbfl
- формат версии 8.2.14
- формат версии 8.3.8
Платформы 8.3.8 и старше работают с базами любого формата, так что эта утилита уже мало кому нужная.
Утилита tools 1cd для работы с файловой базой.
В утилите виден размер таблиц базы данных, и показан процент от максимума.
Максимальный размер одной таблицы - 4 гигабайта. Файловая база необратимо ломается, если по любой из таблиц лимит количества записей будет превышен.
Автор утилиты умер. Утилита работает только со старыми версиями файловых баз.
Пример использования утилиты в 2019 году
"Восстановление файловой базы с помощью tools 1cd https://infostart.ru/1c/articles/1006823/ 19.02.19"
Файловый вариант работы 1С рекомендуется для баз размером до 10 гигабайт! При превышении размер лучше перевести базу на серверный вариант работы!
При работе в файловом варианте, за счет использования механизма транзакций, платформа «1С:Предприятия 8» минимизирует риск нарушения целостности данных при сбоях компьютеров и локальной сети. Однако, разумеется, использование клиент-серверного варианта обеспечивает большую надежность, так как в нем обеспечивается полная независимость записи данных на сервере от сбоев клиентских компьютеров и локальной сети. https://v8.1c.ru/platforma/faylovyy-variant-raboty/
Причины медленной работы файловой базы https://is1c.ru/about/pc/article/faylovaya-baza-1s-medlenno-rabotaet-razbiraemsya-s-prichinami/
Перевод файловой базы на сервер https://wiseadvice-it.ru/o-kompanii/blog/articles/perenos-failovoi-bazy-1s-v-sql-poshagovaya-instrukciya/
Вот про работу с отладчиком дают ссылку на видик
https://forum.infostart.ru/forum8/topic147672/
9. kot26rus 03.03.16 10:24
(8) MikeGorshkov, вам надо для начала разобраться с отладчиком. посмотрите видеоурок : https://www.youtube.com/watch?v=R6yq3Vj_oRc
Руководство разработчика, глава 10 СКД
Пишут:
СКД также используется:
- динамические списки (глава 7 формы)
- при подготовке данных для последующей обработки
РСА Как понять: при подготовке данных для последующей обработки. Результаты из СКД выгружаются в таблицу значений и обрабатываются языком 1С? А зачем нужна СКД, если все можно сделать в запросах встроенного языка?
Табличные документы 1С
Инфа на сайте 1С https://v8.1c.ru/platforma/tablichnyy-dokument/
В руководстве разработчика платформа 8.3.17:
глава 31, инструменты разработки, "редактор табличных документов"
Расписано все про табличные документы, в т.ч. табличный документ в режиме ввода данных
Иерархические списки / дерево значений
В дереве значений есть узлы (с плюсиками)
В иерархическом списке группы, включающие другие группы - они никак не выделяются вроде!
В учебной базе на управляемых формах есть настройка представления, где можно выбрать:
- иерархический список (группы просто чуть выделены);
- дерево - там узлы с плюсиками
Текстовый поиск по всем группам, необязательно раскрытым, в управляемых формах работает для любого представления - хоть иерархический список, хоть дерево.
Работа с "деревом значений" см тут
https://1c-programmer-blog.ru/programmirovanie/rabota-s-derevom-znachenij-v-1s.html
...
Визуальное представление дерева значений обеспечивает элемент «Табличное поле».
...
Преобразовать дерево значений в таблицу значений и наоборот достаточно просто, ведь дерево значений это та же таблица значений, но с дополнительной колонкой — «Родитель». У меня есть отдельная статья о том как преобразовать дерево значений в таблицу значений и обратно.
Быстрые кнопки в 1С
Для переноса товара в другую группу, чтобы раскрыть дерево групп в справочнике слева в справочнике "Номенклатура" или в форме выбора группы:
использовать клавиши CTRL + Shift + Num+ (раскрывает все ветви дерева)
затем Ctrl-F для поиска по названию группы
----
CTRL + Alt + Num+ (раскрывает все ветви выбранного элемента дерева).
https://www.online-ufa.ru/content/articles/hot-key-1c/
Вот есть такое
Ctrl + Num + (-) Свернуть (узел дерева, группу табличного документа, группировку модуля)
Ctrl + Num + (+) Развернуть (узел дерева, группу табличного документа, группировку модуля)
Ctrl + Alt + Num + (-) Свернуть (узел дерева, группу табличного документа, группировку модуля) и все подчиненные
Ctrl + Alt + Num + (+)
Развернуть (узел дерева, группу табличного документа, группировку модуля) и все подчиненные
Ctrl + Shift + Num + (-) Свернуть (все узлы дерева, группы табличного документа, группировки модуля)
Ctrl + Shift + Num + (+)
Вот еще горячие клавиши
https://balns.ru/info/articles/biznes-sovety/sochetaniya-klavish-dlya-bystrogo-dostupa-v-1s/#spisok
См сайт helpf.pro по 1С
Поиск "скд таблицу значений"
В 1С:Бухгалтерии вывести все доступные команды меню
В частности, запустить "Универсальный обмен данными"
https://helpme1s.ru/kak-v-1sbuxgalteriya-8-3-redakciya-3-0-otkryt-menyu-vse-funkcii
Меню "Сервис и настройки" (пиктограмма в правом верхнем углу экрана) / Настройки / Параметры
поставить галочку в поле "Режим технического специалиста".
После в этом же меню появиться пункт "Функции технического специалиста", где будут доступны все команды.
Загрузка в 1С:Бухгалтерию XML-файла в формате "Универсального обмена данными (УИД).
"Чаще всего в бухгалтерию переносят данные из торговли или зарплаты.
Выгруженные данные представляют из себя файл с расширением ".xml". Как загрузить его в программу?
Начинаем с создания резервной копии бухгалтерии, чтобы если загрузка испортит базу мы смогли вернуться в исходное состояние. О создании резервных копий написано здесь.
Теперь открываем меню "Функции для технического специалиста..." (об этом здесь).
Находим в открывшемся окне пункт "Обработки" и раскрываем его через плюсик.
Находим и открываем среди его пунктов обработку "Универсальный обмен данными в формате XML".
Переходим на закладку "Загрузка данных".
Указываем путь к файлу из которого будем загружать данные.
Нажимаем кнопку "Загрузить данные".
Если всё прошло успешно - отлично! Если есть ошибки, то причина вероятно в том, что для выгрузки из торговли или зарплаты использовались не подходящие (устаревшие) правила - требуется их обновление и повторная выгрузка.
С уважением, Владимир Милькин (преподаватель школы 1С программистов и разработчик обновлятора)."
Поиск подстроки в строке
Устаревшая функция, в СП пишут, что не рекомендуется использовать
Найти(Строка,ТекстДляПоиска) - возврат позиции, где начинается подстрока, либо 0, если не найдено
Новая удобная функция
Функция:
СтрНайти(<Строка>, <ПодстрокаПоиска>, <НаправлениеПоиска>, <НачальнаяПозиция>, <НомерВхождения>)
Позволяет искать подстроку, начиная с какой-то позиции, выбрать направление поиска и выбрать номер вхождения! Очень удобно!
Возвращаемое значение:
Тип: Число.
Позиция первого знака найденной подстроки. Нумерация символов в строке начинается с 1. Если строка не содержит указанной подстроки, то возвращается 0.
Сравнение выполняется с учетом регистра.
Вот пример https://www.about1c.ru/v83/language-reference/string-functions/function-str-find
Пример:
Если Найти(Назначение, "Комиссия ") >0 Тогда НачалоКомиссии=Найти(Назначение, "Комиссия ")+9; КонецКомиссии=СтрНайти(Назначение,".",НаправлениеПоиска.СНачала,НачалоКомиссии,2); КонецЕсли; Если НачалоКомиссии>0 И КонецКомиссии>0 Тогда // достаем сумму комиссии из назначения СтрокаКомиссии=Сред(Назначение,НачалоКомиссии,КонецКомиссии-НачалоКомиссии); // Строка, Начало, Длина выделяемой подстроки СтрокаКомиссии=СтрЗаменить(СтрокаКомиссии,",",""); // Пытаемся преобразовать строку комиссии в число Попытка СуммаКомиссии=Число(СтрокаКомиссии); Исключение Сообщить("Не получается преобразовать выделен комиссию в число"); // И ссылку на платежку дать умно СуммаКомиссии=0; КонецПопытки; КонецЕсли;