Е.БУДНИ программиста 1С | Роман Чумадин pinned Deleted message
Самые частые операции в консоли администрирования рядовым 1сником
‼️Важно: требуется заранее получить админские права на консоль администрирования.
◾️ 1. Включить блокировку пользователей и регламентных заданий.🙅
Данная блокировка может быть установлена средствами БСП, Администрирование - Обслуживание - Блокировка работы пользователей.
Но если конфигурация старая или нужно снять ошибочно и неправильно установленную, тогда открываем на сервере консоль администрирования
Далее подключаем сервер (если не подключен), нам достаточно знать только имя, порт как правило по умолчанию 1541.
Находим нужную нам базу и открываем свойства и работаем с блоком относительно блокировки сеансов. Блокировка на вход пользователей, блокировка регламентного задания, начало/конец блокировки, а если нам нужно в это время что-то делать с базой, то устанавливаем «Код разрешения» и в параметрах базы прописываем его после символов /UC/
◾️ 2. Зависшее регламентное задание.⏱
Мы установили блокировку из первого пункта, а регламентное задание все ещё выполняется и принудительное завершение не помогает.
Для исправления требуется в консоли администрирования выбрать локальный кластер сервера (или кластер где зависло фоновое) и изменить «Интервал перезапуска» на 2 секунды, применить, подождать 5-10 секунд и вернуть как было.
Готово. Регламентное задание завершит свою работу.
◾️ 3. Ну и самое частое, конечно же, выкинуть коллегу из конфигуратора)😎
Может быть он нам просто не нравится, а может он забыл закрыть конфигуратор и сам предложил такой вариант.
-----------------
А как вы чаще всего используете консоль администрирования?💬
Случайный пост > > >
Инструмент Табло
#ЕБ_Повседневность
‼️Важно: требуется заранее получить админские права на консоль администрирования.
◾️ 1. Включить блокировку пользователей и регламентных заданий.🙅
Данная блокировка может быть установлена средствами БСП, Администрирование - Обслуживание - Блокировка работы пользователей.
Но если конфигурация старая или нужно снять ошибочно и неправильно установленную, тогда открываем на сервере консоль администрирования
Далее подключаем сервер (если не подключен), нам достаточно знать только имя, порт как правило по умолчанию 1541.
Находим нужную нам базу и открываем свойства и работаем с блоком относительно блокировки сеансов. Блокировка на вход пользователей, блокировка регламентного задания, начало/конец блокировки, а если нам нужно в это время что-то делать с базой, то устанавливаем «Код разрешения» и в параметрах базы прописываем его после символов /UC/
◾️ 2. Зависшее регламентное задание.⏱
Мы установили блокировку из первого пункта, а регламентное задание все ещё выполняется и принудительное завершение не помогает.
Для исправления требуется в консоли администрирования выбрать локальный кластер сервера (или кластер где зависло фоновое) и изменить «Интервал перезапуска» на 2 секунды, применить, подождать 5-10 секунд и вернуть как было.
Готово. Регламентное задание завершит свою работу.
◾️ 3. Ну и самое частое, конечно же, выкинуть коллегу из конфигуратора)
Может быть он нам просто не нравится, а может он забыл закрыть конфигуратор и сам предложил такой вариант.
-----------------
А как вы чаще всего используете консоль администрирования?
Случайный пост > > >
Инструмент Табло
#ЕБ_Повседневность
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Как заглянуть за кулисы форм 😎
Иногда есть потребность быстро проверить значение какого-то реквизита того или иного объекта в 1С. Иногда реквизит просто не отображается на форме, а иногда отображается не сам реквизит, а подменный реквизит формы вместо значения реквизита объекта.
Для этого можно воспользоваться одним из следующих вариантов:
🔸 1. Воспользоваться групповой обработкой справочников и реквизитов.
Один из самых сложных способов, на мой взгляд, но именно им я пользовался в самом начале, так как не знал о других.
🔸 2. Открыть версию из истории изменений. Работает там, где история изменений включена и не работает для ТЧ, но крайне быстрый и удобный вариант.
🔸 3. Каким-нибудь универсальным редактором реквизитов.
Пример. Очень давно пользуюсь, прекрасный инструмент.
🔸 4. Конечно же, по хардкору – консолью запросов. Сложность в том, что нужна консоль запросов под рукой, нужно задавать и выбирать параметр в запросе и т.п.
🔸 5. Вариант рабочий, но ужасный) Сделать обработку с одним реквизитом – ссылкой на объект, а по кнопке сообщать значение того самого реквизита у объекта.
А какие вы знаете и используете варианты?💬
Мой профиль на GetMentor
#ЕБ_Повседневность
Иногда есть потребность быстро проверить значение какого-то реквизита того или иного объекта в 1С. Иногда реквизит просто не отображается на форме, а иногда отображается не сам реквизит, а подменный реквизит формы вместо значения реквизита объекта.
Для этого можно воспользоваться одним из следующих вариантов:
🔸 1. Воспользоваться групповой обработкой справочников и реквизитов.
Один из самых сложных способов, на мой взгляд, но именно им я пользовался в самом начале, так как не знал о других.
🔸 2. Открыть версию из истории изменений. Работает там, где история изменений включена и не работает для ТЧ, но крайне быстрый и удобный вариант.
🔸 3. Каким-нибудь универсальным редактором реквизитов.
Пример. Очень давно пользуюсь, прекрасный инструмент.
🔸 4. Конечно же, по хардкору – консолью запросов. Сложность в том, что нужна консоль запросов под рукой, нужно задавать и выбирать параметр в запросе и т.п.
🔸 5. Вариант рабочий, но ужасный) Сделать обработку с одним реквизитом – ссылкой на объект, а по кнопке сообщать значение того самого реквизита у объекта.
А какие вы знаете и используете варианты?
Мой профиль на GetMentor
#ЕБ_Повседневность
Please open Telegram to view this post
VIEW IN TELEGRAM
Е.БУДНИ программиста 1С | Роман Чумадин pinned Deleted message
Пропуск релизов обновления ⚠️
Если взглянуть на скриншот релизов обновления типовой БП 3.0, можно увидеть, что с релиза 137.39 можно обновиться на кучу следующих релизов, которые представлены в колонке «Обновление версии».
В моей практике не встречались компании, которые обновлялись регулярно, успевая попадать в обновление, находясь на предложенных версиях (с которых можно обновиться), на текущем примере это 140.40. За исключением 100% типовых конфигураций, но в таком случае обновление делал не я)
И когда встает вопрос, сколько делать релизов, заметил неоднозначность понятия «перескочить релиз», для кого-то обновиться на 140.40 это тоже перескочить релиз... Для меня, перескочить релиз, это обновиться сразу на 142.56.
Никогда не был приверженцем пропускать рекомендованные релизы, но иногда приходилось и такое делать. Это конечно же на свой страх и риск. Обычно обновляюсь на максимально возможный релиз, на который можно обновиться с текущей версии, и так в несколько этапов, каждый раз выполняя РЗ «Отложенное обновление ИБ»
Недавно узнал, что вроде как такая возможность пока ещё прокатывает в релизах БП, так как там не удаляются важные метаданные и т.п. Но это все опять же, на свой страх и риск.
Кто-нибудь про это что-то знает❓
И как вы относитесь к пропускам релиза?💬
--------------
Вместе случайного поста, рекомендую ознакомиться с прошлым дайджестом, перед выходом нового за 3 квартал.
#ЕБ_Повседневность
Если взглянуть на скриншот релизов обновления типовой БП 3.0, можно увидеть, что с релиза 137.39 можно обновиться на кучу следующих релизов, которые представлены в колонке «Обновление версии».
В моей практике не встречались компании, которые обновлялись регулярно, успевая попадать в обновление, находясь на предложенных версиях (с которых можно обновиться), на текущем примере это 140.40. За исключением 100% типовых конфигураций, но в таком случае обновление делал не я)
И когда встает вопрос, сколько делать релизов, заметил неоднозначность понятия «перескочить релиз», для кого-то обновиться на 140.40 это тоже перескочить релиз... Для меня, перескочить релиз, это обновиться сразу на 142.56.
Никогда не был приверженцем пропускать рекомендованные релизы, но иногда приходилось и такое делать. Это конечно же на свой страх и риск. Обычно обновляюсь на максимально возможный релиз, на который можно обновиться с текущей версии, и так в несколько этапов, каждый раз выполняя РЗ «Отложенное обновление ИБ»
Недавно узнал, что вроде как такая возможность пока ещё прокатывает в релизах БП, так как там не удаляются важные метаданные и т.п. Но это все опять же, на свой страх и риск.
Кто-нибудь про это что-то знает❓
И как вы относитесь к пропускам релиза?
--------------
Вместе случайного поста, рекомендую ознакомиться с прошлым дайджестом, перед выходом нового за 3 квартал.
#ЕБ_Повседневность
Please open Telegram to view this post
VIEW IN TELEGRAM
А вы пропускаете релизы при обновлении?
Anonymous Quiz
47%
Да, потом разберемся если что
40%
Нет, вы что!
14%
Вообще не обновляю
Третий дайджест за третий квартал
🔴 Посты с 01.07.23 по 30.09.23:
- Обмен 1С с 1С-Битрикс на кейсе веб-интегратора Extyl
- Про сертификат 1С:Специалист
- Выбираем меньшее из зол в вопросе оптимизации
- Пауза() по старинке
- Интересные доклады с 1C-RarusTechDay 2023
- Заметки с курса по подготовке к 1С:Специалист
- Подмена кнопки "Создать" в форме списка/выбора элементов
- Вспомогательные сервисы
- Где брать инфу начинающему разработчику 1С
- Заметки по использованию хранилища 1С
- Распространенные ошибки новичков в формировании движений документов
- Самые частые операции в консоли администрирования рядовым 1сником
- Как заглянуть за кулисы форм
- Пропуск релизов обновления конфигурации
Из общего:
🔹 На канале остается возможность «сделать пост самому». Подробнее тут
🔹 У канала есть свой стикерпак
🔹 Ссылка на мой профиль на площадке GetMentor, это один из вариантов связаться со мной и получить консультацию.
Спасибо всем, кто подписан, за лайки и комментарии!
- Обмен 1С с 1С-Битрикс на кейсе веб-интегратора Extyl
- Про сертификат 1С:Специалист
- Выбираем меньшее из зол в вопросе оптимизации
- Пауза() по старинке
- Интересные доклады с 1C-RarusTechDay 2023
- Заметки с курса по подготовке к 1С:Специалист
- Подмена кнопки "Создать" в форме списка/выбора элементов
- Вспомогательные сервисы
- Где брать инфу начинающему разработчику 1С
- Заметки по использованию хранилища 1С
- Распространенные ошибки новичков в формировании движений документов
- Самые частые операции в консоли администрирования рядовым 1сником
- Как заглянуть за кулисы форм
- Пропуск релизов обновления конфигурации
Из общего:
🔹 На канале остается возможность «сделать пост самому». Подробнее тут
🔹 У канала есть свой стикерпак
🔹 Ссылка на мой профиль на площадке GetMentor, это один из вариантов связаться со мной и получить консультацию.
Спасибо всем, кто подписан, за лайки и комментарии!
Please open Telegram to view this post
VIEW IN TELEGRAM
Е.БУДНИ программиста 1С | Роман Чумадин pinned «Третий дайджест за третий квартал 🔴 Посты с 01.07.23 по 30.09.23: - Обмен 1С с 1С-Битрикс на кейсе веб-интегратора Extyl - Про сертификат 1С:Специалист - Выбираем меньшее из зол в вопросе оптимизации - Пауза() по старинке - Интересные доклады с 1C-RarusTechDay…»
ХЕШ строка. Задача по уникальности/сравнению
На днях столкнулся со следующей задачей: разработать проверку уникальности элементов справочника по элементам табличной части этого же справочника.
Если более предметно, в справочнике Номера ГТД есть табличная часть Прослеживаемые комплектующие, в которой хранятся номера РНПТ для комплектующих с их количеством.
Если есть второй элемент с такими же номерами РНПТ и количеством независимо от порядка, то он считается не уникальным.
По опыту решения прошлых задач, пришел к решению с использованием ХЕШ строки, которую получаю следующим образом:
🔹 Получаю ТЗ из колонок ТЧ;
🔹 Сортирую ТЗ, чтобы всегда было одна последовательность;
🔹 Создаю массив со строками, куда записываю «РНПТ + Количество»;
🔹 Перевожу массив в строку с помощью функции «ЗначениеВСтрокуВнутр()»;
🔹 Создаю объект ХешированиеДанных с типом MD5;
🔹 И получая Хеш сумму, убираю пробелы;
🔹 Затем записываю полученные данные в реквизит объекта.
------------
ТаблицаДляХеширования = ПрослеживаемыеКомплектующие.Выгрузить(,"РНПТ, Количество");
ТаблицаДляХеширования.Сортировать("РНПТ, Количество");
МассивРНПТ = Новый Массив;
Для каждого СтрРНПТ из ТЗ_РНПТКоличество Цикл
МассивРНПТ.Добавить(СтрРНПТ.РНПТ.Код + " " + СтрРНПТ.Количество)
КонецЦикла;
СтрокаДляХеширования = ЗначениеВСтрокуВнутр(МассивРНПТКолво);
ХешированиеДанных = Новый ХешированиеДанных(ХешФункция.MD5);
ХешированиеДанных.Добавить(СтрокаДляХеширования );
РеквизитХЕШ_ТЧ = СтрЗаменить(ХешированиеДанных.ХешСумма," ","");
------------
В итоге остается сравнивать на уникальность не ТЧ, а только один реквизит.
А где вы применяете Хеширование?💬
Случайный пост > > >
Вспомогательные сервисы
#ЕБ_Повседневность
На днях столкнулся со следующей задачей: разработать проверку уникальности элементов справочника по элементам табличной части этого же справочника.
Если более предметно, в справочнике Номера ГТД есть табличная часть Прослеживаемые комплектующие, в которой хранятся номера РНПТ для комплектующих с их количеством.
Если есть второй элемент с такими же номерами РНПТ и количеством независимо от порядка, то он считается не уникальным.
По опыту решения прошлых задач, пришел к решению с использованием ХЕШ строки, которую получаю следующим образом:
🔹 Получаю ТЗ из колонок ТЧ;
🔹 Сортирую ТЗ, чтобы всегда было одна последовательность;
🔹 Создаю массив со строками, куда записываю «РНПТ + Количество»;
🔹 Перевожу массив в строку с помощью функции «ЗначениеВСтрокуВнутр()»;
🔹 Создаю объект ХешированиеДанных с типом MD5;
🔹 И получая Хеш сумму, убираю пробелы;
🔹 Затем записываю полученные данные в реквизит объекта.
------------
ТаблицаДляХеширования = ПрослеживаемыеКомплектующие.Выгрузить(,"РНПТ, Количество");
ТаблицаДляХеширования.Сортировать("РНПТ, Количество");
МассивРНПТ = Новый Массив;
Для каждого СтрРНПТ из ТЗ_РНПТКоличество Цикл
МассивРНПТ.Добавить(СтрРНПТ.РНПТ.Код + " " + СтрРНПТ.Количество)
КонецЦикла;
СтрокаДляХеширования = ЗначениеВСтрокуВнутр(МассивРНПТКолво);
ХешированиеДанных = Новый ХешированиеДанных(ХешФункция.MD5);
ХешированиеДанных.Добавить(СтрокаДляХеширования );
РеквизитХЕШ_ТЧ = СтрЗаменить(ХешированиеДанных.ХешСумма," ","");
------------
В итоге остается сравнивать на уникальность не ТЧ, а только один реквизит.
А где вы применяете Хеширование?
Случайный пост > > >
Вспомогательные сервисы
#ЕБ_Повседневность
Please open Telegram to view this post
VIEW IN TELEGRAM
1С головного мозга или запуск 1С в самых неожиданных местах
В ожидании конференции Инфостарта, бродя по Эрмитажу, пришлось запустить ноутбук для зарядки телефона.
Ну и как не запустить 1С)
А в каких самых неожиданных местах вы запускали 1С, когда надо было что-то срочно сделать или осенило?
Мое самое частое место работы вне рабочего места - это автомобиль, запуск чего-то регламентного или срочная проблема.
Случайный пост > > >
Заметки по работе с хранилищем
#ЕБ_Повседневность
В ожидании конференции Инфостарта, бродя по Эрмитажу, пришлось запустить ноутбук для зарядки телефона.
Ну и как не запустить 1С)
А в каких самых неожиданных местах вы запускали 1С, когда надо было что-то срочно сделать или осенило?
Мое самое частое место работы вне рабочего места - это автомобиль, запуск чего-то регламентного или срочная проблема.
Случайный пост > > >
Заметки по работе с хранилищем
#ЕБ_Повседневность
Мобильная разработка в 1С, тайминги
В рамках подготовки очередного урока для курса PRODUCTSTAR вспомнил свою презентацию из внутреннего митапа в компании.
По схожей тематике планировал и доклад для Инфостарта.
В сторону мобильных приложений тянуло давно, были попытки на Xamarin сделать, но однажды попробовал на 1С и это в разы легче)
Список этапов разработки мобильного приложения с нуля до публикации:
1. Установка платформы 1С– 10 минут;
2. Установка и настройка Apache – 10 минут;
3. Android Studio - 10 минут;
4. Первый запуск эмулятора - 30 минут;
5. Установка компоненты Java и настройки сборщика мобильных приложений 1С – 40 минут;
6. Выпуск приложения и заполнение информации о приложении – 70 минут;
7. Выпуск alpha-версии в Google Play только для узкого круга лиц– 90 минут;
8. Проверка от Google Play – 5 дней.
ИТОГО: 4 часа 20 минут + 5 дней ожидания
*сложность и технические моменты непосредственно приложения не учитываются.
Случайный пост > > >
Вариант паузы в коде
#ЕБ_Повседневность
В рамках подготовки очередного урока для курса PRODUCTSTAR вспомнил свою презентацию из внутреннего митапа в компании.
По схожей тематике планировал и доклад для Инфостарта.
В сторону мобильных приложений тянуло давно, были попытки на Xamarin сделать, но однажды попробовал на 1С и это в разы легче)
Список этапов разработки мобильного приложения с нуля до публикации:
1. Установка платформы 1С– 10 минут;
2. Установка и настройка Apache – 10 минут;
3. Android Studio - 10 минут;
4. Первый запуск эмулятора - 30 минут;
5. Установка компоненты Java и настройки сборщика мобильных приложений 1С – 40 минут;
6. Выпуск приложения и заполнение информации о приложении – 70 минут;
7. Выпуск alpha-версии в Google Play только для узкого круга лиц– 90 минут;
8. Проверка от Google Play – 5 дней.
ИТОГО: 4 часа 20 минут + 5 дней ожидания
*сложность и технические моменты непосредственно приложения не учитываются.
Случайный пост > > >
Вариант паузы в коде
#ЕБ_Повседневность
Нас 2000 ❗️
Всем привет!👋
Вот нас уже и перевалило на этом канале за 2000! 🎉
Я очень рад этому событию, и в первую очередь благодарю вас, моих подписчиков, за проявленный интерес.
Это подталкивает делать более интересные посты и добавлять новых фишек.
На 1000 подписчиков у канала появились свои стикеры, сейчас, на 2000 появилисьемодзи , так же в простом и лаконичном стиле.
Всем привет!
Вот нас уже и перевалило на этом канале за 2000! 🎉
Я очень рад этому событию, и в первую очередь благодарю вас, моих подписчиков, за проявленный интерес.
Это подталкивает делать более интересные посты и добавлять новых фишек.
На 1000 подписчиков у канала появились свои стикеры, сейчас, на 2000 появились
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
А пока я собираю идеи новых постов и заряжаюсь энергией на конференции Инфостарт, пятничное мем-видео)
Е.БУДНИ программиста 1С | Роман Чумадин pinned Deleted message
Думал просто Выборка, а оказалось нет)
На конференции Инфостарт был стенд, где можно было пройти демо-тестирование, выбрал тему «Запросы», и нашел для себя интересную функцию у выборки «НайтиСледующий()».
В работе чаще всего использовал «Следующий», поэтому решил изучить какие ещё есть методы у выборки и поделиться с вами.
Выбрать() * для результата запроса – метод предназначен для получения выборки из результата запроса.
Выбрать() ! для выборки – получает выборку из подчиненной выборки, если указан тип обхода результата запроса «ПоГруппировкам»
Владелец() – функция, возвращающая результат запроса из которого получена выборка. Обратное действие Выбрать() !
НайтиСледующий() – аналогичен методу Следующий(), но за тем исключением, что переход выполняется не на просто следующую запись, а на следующую запись соответствующую отбору. Отбор задается либо структурой, либо параметрами Значение и Колонка.
Группировка() – функция возвращает имя группировки текущей записи, если она есть
Есть ряд понятных функций выборки по их названию и контексту: Сбросить(), Количество(), Уровень(), ТипЗаписи().
- - - - - - - - -
Случайный пост > > >
Где брать инфу начинающему разработчику
#ЕБ_Повседневность
На конференции Инфостарт был стенд, где можно было пройти демо-тестирование, выбрал тему «Запросы», и нашел для себя интересную функцию у выборки «НайтиСледующий()».
В работе чаще всего использовал «Следующий», поэтому решил изучить какие ещё есть методы у выборки и поделиться с вами.
Выбрать() * для результата запроса – метод предназначен для получения выборки из результата запроса.
Выбрать() ! для выборки – получает выборку из подчиненной выборки, если указан тип обхода результата запроса «ПоГруппировкам»
Выборка = РезультатЗапроса.Выбрать*(ОбходРезультатаЗапроса.ПоГруппировкам);
Пока Выборка.Следующий() Цикл
ПодчВыборка = Выборка.Выбрать();
…
Следующий() – метод возвращающий тип булево. Истина если получена следующая запись результата запроса и Ложь если следующей записи нет.Владелец() – функция, возвращающая результат запроса из которого получена выборка. Обратное действие Выбрать() !
НайтиСледующий() – аналогичен методу Следующий(), но за тем исключением, что переход выполняется не на просто следующую запись, а на следующую запись соответствующую отбору. Отбор задается либо структурой, либо параметрами Значение и Колонка.
Пока Выборка.НайтиСледующий(Новый Структура("Колонка1, Колонка2", Значение1, Значение2)) Цикл
...
ИЛИ
Пока Выборка.НайтиСледующий(Значение, Колонка)) Цикл
...
СледующийПоЗначениюПоля() - аналогичен методу Следующий(), но значение выборки переходит к следующей строке со значением по указанному полю отличным от текущего положения.Выборка.СледующийПоЗначениюПоля("ИмяПоля");
Получить() – позволяет выбрать запись результата запроса по индексу, аналог квадратных скобок «[]»Группировка() – функция возвращает имя группировки текущей записи, если она есть
Есть ряд понятных функций выборки по их названию и контексту: Сбросить(), Количество(), Уровень(), ТипЗаписи().
- - - - - - - - -
Случайный пост > > >
Где брать инфу начинающему разработчику
#ЕБ_Повседневность