1С:Предприятие 8
رفتن به کانال در Telegram
🔥 Разработка в 1С — просто и понятно! 🔥 ✅ Полезные фишки и лайфхаки для разработчиков ✅ Объяснение сложных тем простыми словами ✅ Готовые решения, сниппеты и примеры кода ✅ Разбор ошибок и способов их устранения ✅ Новости и тренды в мире 1С
نمایش بیشتر879
مشترکین
اطلاعاتی وجود ندارد24 ساعت
+17 روز
-230 روز
آرشیو پست ها
Конфигурация 1С с нуля за 5 часов. Барбершоп
На стриме разработаем с нуля конфигурацию 1С для учета записей в барбершопе или салоне красоты.
Скачать конфигурацию, разработанную на стриме.
источник
👉@DevLab1C
Обновление нетиповых конфигураций 1С
Урок 1. Немного теории
Урок 2. Подготовка
Урок 3. Начинаем обновлять
Урок 4. Расставляем флажки - i
Урок 5. Расставляем флажки - ii
Урок 6. Неразрешимые ссылки
Урок 7. Подготовка ко второму этапу
Урок 8. Восстановление доработок - i
Урок 9. Восстановление доработок - ii
Урок 10. Обновляем рабочую базу
источник
👉@DevLab1C
Уроки мобильной разработки на 1С
Знакомство
Подготовка окружения перед началом разработки на мобильной платформе 1С
Первые шаги разработчика мобильного приложения 1С
Запуск и отладка приложения прямо на смартфоне
Урок 4 Разработка уникального мобильного приложения (Часть 1)
Урок 4 Разработка уникального мобильногоприложения (Часть 2)
Урок 5 Приложение и смартфон (Часть 1)
Урок 5 Приложение и смартфон (Часть 2)
Урок 6. Веб-сервисы и фоновые задания
Урок 7 Сборка приложения для Google Play Market
Урок 8 Публикация приложения в Google Play Market
Урок 9 Монетизация приложений
Урок 9 Монетизация приложений. Подписка
Все видео на youtube
👉@DevLab1C
Проверки объекта на изменения
Функция ОбъектМодифицирован(Объект, ПроверятьТабличныеЧасти = Истина, ПроверятьСтандартные = Истина)
Ссылка = Объект.Ссылка;
Метаданное = Ссылка.Метаданные();
Для каждого Реквизит из Метаданное.Реквизиты Цикл
Если Объект[Реквизит.Имя] <> Ссылка[Реквизит.Имя] Тогда
Возврат Истина;
КонецЕсли;
КонецЦикла;
Если ПроверятьСтандартные Тогда
Для каждого Реквизит из Метаданное.СтандартныеРеквизиты Цикл
Если Объект[Реквизит.Имя] <> Ссылка[Реквизит.Имя] Тогда
Возврат Истина;
КонецЕсли;
КонецЦикла;
КонецЕсли;
Если ПроверятьТабличныеЧасти Тогда
Для каждого ТЧ из Метаданное.ТабличныеЧасти Цикл
Если Объект[ТЧ.Имя].Количество() <> Ссылка[ТЧ.Имя].Количество() Тогда
Возврат Истина;
КонецЕсли;
Для Индекс = 0 по Объект[ТЧ.Имя].Количество()-1 Цикл
ОбъектСтрокаТЧ = Объект[ТЧ.Имя][Индекс];
СсылкаСтрокаТЧ = Ссылка[ТЧ.Имя][Индекс];
Для каждого РеквизитТЧ из ТЧ.Реквизиты Цикл
Если ОбъектСтрокаТЧ[РеквизитТЧ.Имя] <> СсылкаСтрокаТЧ[РеквизитТЧ.Имя] Тогда
Возврат Истина;
КонецЕсли;
КонецЦикла;
КонецЦикла;
КонецЦикла;
КонецЕсли;
Возврат Ложь;
КонецФункции
👉@DevLab1CКак «поймать» медленные запросы
00:00 — Введение
00:57 — Обзор инструментов поиска медленных запросов
03:02 — Схема установки базы Монитор
05:33 — Создание отдельного кластера и базы для загрузки Монитора
06:45 — Подключение созданной базы и загрузка конфигурации Монитор
07:38 — Настройка мониторинга запросов
19:29 — Пример анализа запроса из медленного отчета
23:01 — Настройка отображения запросов в терминах метаданных
25:03 — Анализ параметров и просмотр плана запроса
26:00 — Пример запроса без контекста
26:45 — Подведение итогов первого занятия
👉@DevLab1C
Асинх/Ждать в 1С для показа вопросов, сообщений и диалогов | Асинхронные методы в платформе 1C
00:00 - Вступление
05:11 - Почему лучше не использовать модальные окна в 1С
11:35 - Как переписать модальные окна 1С на ОписаниеОповещения
22:06 - Почему ОписаниеОповещения усложняет код 1С
31:50 - Как загружать файлы без расширения по работе с файлами (НачатьПомещениеФайлаНаСервер)
44:05 - Асинх и ждать в 1С (Платформа 1С 8.3.18)
53:44 - Как вывести прогресс загрузки файла в 1С
59:15 - Когда типовые 1С конфигурации перейдут на Асинх?
01:00:45 - В чем отличие от ДлительныеОперацииКлиент.ОжидатьЗавершение?
01:02:00 - Почему надо знать все 3 метода взаимодействия с пользователем
01:04:00 - Пример рефакторинга кода
01:06:45 - Книги для программистов, кто был вынужден стать менеджером
01:08:44 - Какие дополнительные компетенции нужно развивать
01:09:50 - Как Матвей попал в 1С разработку
01:12:00 - Планы на будущее
01:14:08 - Зачем преподавать
01:15:40 - Про дефицит кадров в 1С
01:17:00 - Какие качества нужны начинающему 1С разработчику
01:19:10 - Зарплата 1С программистов в регионах, что нужно знать джуну
01:26:56 - Как студенту стать 1С программистом и надо ли
01:37:58 - Как грузчику в 40 лет стать 1С программистом
01:43:33 - Что такое когнитивная и цикломатическая сложность?
01:46:00 - Выбор первого работодателя в 1С сфере
01:49:25 - Предвзятое отношение к 1С программистам
01:52:45 - Про 1С франчайзи
01:56:45 - Про 1С фреш и SQL
01:59:00 - Про 1С запросы, всякое и заключение
источник
👉@DevLab1C
Основы использования таблиц значений
В ролике рассматриваются темы:
Создание ТЗ с помощью кода
Создание ТЗ запросом
ТЗ как параметр запроса. Что можно и что нельзя в запросе, где ТЗ является параметром.
ТЗ и построитель запросов
ТЗ и построитель отчетов
ТЗ и СКД - использование в отчетах и обработках, управляемых и обычных формах.
00:00 Вступление
00:33 Создание ТЗ с помощью кода.
01:52 Создание ТЗ запросом
04:21 ТЗ как параметр запроса. Что можно и что нельзя в запросе, где ТЗ является параметром.
05:32 ТЗ и построитель запросов
07:34 ТЗ и построитель отчетов
07:58 ТЗ и СКД
13:49 Заключение
источник
👉@DevLab1C
Работа с файлами
Изучив видео этого плейлиста ты научишься обрабатывать файлы: загружать данные из файла в 1С и выгружать данные из 1С в файл.
Диалог выбора файла в 1С и другие диалоги
1. Общая схема работы с файлами в 1С
2. Как правильно загружать данные в 1С из файла
3. Как прочитать текстовый файл (TXT) в 1С
4. Как прочитать файл CSV в 1С
5. Как прочитать файл EXCEL в 1С
Как прочитать файл DBF в 1С
Как прочитать XML в 1С. Способ № 1 (Линейное чтение)
Как прочитать XML в 1С. Способ № 2 (XDTO)
Чтение файла в 1С на сервере
Загрузка справочника "Контрагенты" в 1С из файла. Часть 1
Загрузка контрагентов в 1С. Часть 2: Работа над ошибками
Выгрузка данных из 1С в XML
Все видео доступны на youtube
👉@DevLab1C
1С. Как открыть форму ещё не записанного документа
Постановка задачи: в информационной системе имеется документ "Спецификация". На форме документа есть кнопка "Запрос цен". По нажатию этой кнопки должен создаться и заполниться документ "Запрос цен". Его заполненная форма должна открыться для редактирования пользователем, при этом документ не должен быть записан.
Итак, реализация задуманного:
&НаКлиенте
Процедура ЗапросЦен(Команда)
ФормаНовогоЗапросаЦен = ПолучитьФорму("Документ.ЗапросЦен.Форма.ФормаДокумента");
ДанныеФормы = ФормаНовогоЗапросаЦен.Объект;
ЗаполнитьЗапросЦенНаСервере(ДанныеФормы); // Процедура, в которой на сервере заполняется объект документа.
КопироватьДанныеФормы(ДанныеФормы, ФормаНовогоЗапросаЦен.Объект); // Здесь данные заполненного объекта документа копируются в форму.
ФормаНовогоЗапросаЦен.Открыть(); // Открываем заполненную форму.
КонецПроцедуры
Серверная процедура, в которой заполняется объект документа:
&НаСервере
Процедура ЗаполнитьЗапросЦен(ДанныеФормы)
// В этой серверной процедуре заполняем объект.
ДанныеФормы.Организация = Объект.Организация;
//... заполняем все необходимые реквизиты.
КонецПроцедуры
Для уменьшения объёма передаваемых данных между клиентом и сервером можно организовать серверную процедуру без передачи в неё контекста формы:
&НаСервереБезКонтекста
Процедура ЗаполнитьЗапросЦен(ДанныеФормы)
// Получаем объект документа из данных формы
НовыйЗапросЦен = ДанныеФормыВЗначение(ДанныеФормы, Тип("ДокументОбъект.ЗапросЦен"));
// Или создаём новый документ:
НовыйЗапросЦен = Документы.ЗапросЦен.СоздатьДокумент();
// Заполняем реквизиты объекта документа
НовыйЗапросЦен.Организация = Объект.Организация;
//... заполняем все необходимые реквизиты.
// Данные заполненного документа помещаем в объект формы
ЗначениеВДанныеФормы(НовыйЗапросЦен,ДанныеФормы);
КонецФункции
👉@DevLab1CСоздание регламентного задания из внешней обработки
Работа с CSV. Чтение файла CSV через ADO в ТЗ в 1С 8.3
&НаСервере
Функция ПрочитатьCSVвТЗ_ADO(ИмяФайла, Разделитель=";", ЗаголовкиИзПервойСтроки = Ложь)
ТЗ = Новый ТаблицаЗначений;
ФайлCSV = Новый Файл(ИмяФайла);
ADOConn =Новый COMОбъект("ADODB.Connection");
ADOConn.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+ФайлCSV.Путь+";Extended Properties=""text;HDR=No;IMEX=1;FMT=Delimited""");
// Так как FMT=Delimited(;) не работает создадим schema.ini
// https://docs.microsoft.com/en-us/sql/odbc/microsoft/schema-ini-file-text-file-driver?redirectedfrom=MSDN&view=sql-server-ver15
// https://docs.microsoft.com/en-us/sql/odbc/microsoft/text-file-format-text-file-driver?redirectedfrom=MSDN&view=sql-server-ver15
СхемаCSV= СтрШаблон("[%1]
|ColNameHeader=%2
|Format=Delimited(%3)", ФайлCSV.Имя, Формат(ЗаголовкиИзПервойСтроки, "БЛ=False; БИ=True"), Разделитель);
ФайлСхемы = Новый ТекстовыйДокумент;
ФайлСхемы.УстановитьТекст(СхемаCSV);
ФайлСхемы.Записать(ФайлCSV.Путь + "Schema.ini", "CESU-8"); // UTF-8 без BOM
ADORec=Новый COMОбъект("ADODB.Recordset");
ADORec.ActiveConnection = ADOConn;
ADORec.Open("select * from "+ФайлCSV.Имя, ADOConn);
// определим имена колонок
Для НомКолонки = 0 По ADORec.Fields.Count-1 Цикл
ТЗ.Колонки.Добавить(ADORec.Fields(НомКолонки).Name);
КонецЦикла;
Сч=0;
Пока НЕ ADORec.EOF() Цикл
Сч=Сч+1;
НоваяСтрока = ТЗ.Добавить();
Для а=0 По ADORec.Fields.Count-1 Цикл
НоваяСтрока[а] = ADORec.Fields(а).Value;
КонецЦикла;
ADORec.MoveNext();
КонецЦикла;
ADORec.Close();
ADOConn.Close();
Возврат ТЗ;
КонецФункции
👉@DevLab1CОсновы 1С 8.3 для начинающих (Управляемые формы). Основы программирования и конфигурирования.
#1. Платформа. Конфигурация. Установка учебной версии. Информационная база
#2. Файловые и клиент-серверные информационные базы
#3. Режимы запуска. Тонкий клиент. Толстый клиент. Веб-клиент.
#4. Конфигурация. Объекты метаданных и их свойства.
#5. Сохранение изменений в конфигурации.
#6. Справочники и их создание.
#7. Выгрузка/Загрузка информационной базы. Сохранение/Загрузка конфигурации.
#8. Пользовательский интерфейс. Подсистемы. Корпоративный стиль.
#9. Настройка справочников. Иерархия справочников. Владельцы справочников.
#10. Реквизиты справочников. Стандартные типы реквизитов. Табличные части.
источник
👉@DevLab1C
Работа с CSV. Чтение файла CSV через ADO (без схемы) в 1С 8.3
&НаСервере
Процедура ЧтениеФайлаCSV_ADO(); //Для работы с CSV файлами больших размеров (свыше 10Mb)
ФайлCSV="D:\import_11042025.csv";
ПутьСоединения = "Driver={Microsoft Text Driver (*.csv)};";
ПутьСоединения = ПутьСоединения + "Dbq=" + ФайлCSV + ";";
ПутьСоединения = ПутьСоединения + "Uid=" + "Extensions=csv" + ";";
ADOConn = Новый COMОбъект("ADODB.Connection");
ADOConn.ConnectionString = ПутьСоединения;
ADOConn.Open();
ADORec = Новый COMОбъект("ADODB.Recordset");
Попытка
ADORec.Open("S_elect * from file#txt", ADOConn);
Пока ADORec.EOF() = 0 Цикл
ADOСтрока="";
Для Счетчик = 0 По ADORec.Fields.Count-1 Цикл
ADOСтрока = ADOСтрока + ";" + ADORec.Fields(Счетчик).Value;
КонецЦикла;
//Сообщить("Прочитана строка: "+ADOСтрока);
ADORec.MoveNext();
КонецЦикла;
Исключение
ADORec.Close();
ADOConn.Close();
//Предупреждение("При чтении данных в CSV произошла ошибка:"+ОписаниеОшибки());
КонецПопытки;
КонецПроцедуры
👉@DevLab1CАсинхронные функции.
Обещание и Возвращающие Обещание в 1С 8.3
Процедура ВыполнениеПримераСАсих()
Попытка
ВыполнениеКода();
Исключение
// Исключение из ВыполнениеКода() не будет перехвачено здесь
КонецПопытки
КонецПроцедуры
Асинх Функция ВыполнениеКода() // Всегда возвращает Обещание
ВызватьИсключение "Выброшено в ВыполнениеКода()";
//При успешном завершении в Обещание будет завернуто значение, которое было аргументом оператора Возврат.
//Если при выполнении Асинх функции произошло исключение, то в Обещание будет завернуто это исключение.
КонецФункции
Обещание как аргумент оператора Ждать в 1С 8.3
Асинх Процедура ВыполнениеПримераСАсих()
Попытка
// Для того, чтобы узнать как завершилась Асинх функция – это использовать возвращенное ею Обещание как аргумент оператора Ждать.
Ждать ВыполнениеКода(Null);
Исключение
// Исключение из НеNull() будет перехвачено здесь
Сообщить("Передали Null");
КонецПопытки
КонецПроцедуры
Асинх Функция ВыполнениеКода(ПеремП) // Всегда возвращает Обещание
Если ПеремП = Null Тогда
ВызватьИсключение "Выброшено в ВыполнениеКода()";
Иначе
Возврат ПеремП;
КонецЕсли;
КонецФункции
// Асинх процедура не возвращает значения. А если при выполнении Асинх процедуры возникнет не перехваченное исключение,
// то это приведет к выдаче сообщения об ошибке.
👉@DevLab1C5 видео для подготовки к Аттестации 1С:Специалист-Консультант по производству и ремонтам в 1С:ERP 2.5
🔹Ключевые изменения в 1С:ERP 2.5.7 по производственному учету – за 15 минут
🔹За что получают двойки на Аттестации по производству и ремонтам в 1C:ERP 2.5?
🔹Как правильно реагировать на ошибки системы – на примере Аттестации Специалист-консультант по 1С:ERP
🔹Ремонт оборудования заказчика в 1С:ERP 2.5 – схема учета для Аттестации и проектов за 20 минут
🔹Объекты возникновения затрат (ОВЗ) в 1С:ERP 2.5.7 – разбираем новый функционал на практике
Все видео на youtube
👉@DevLab1C
Работа с CSV. Чтение файла CSV опционально (средствами 1С) в ТЗ в 1С 8.3
&НаСервере
Функция ПрочитатьCSVвТЗ(ИмяФайла, ИспользуемыйРазделитель=";", ЗаголовкиИзПервойСтроки = Ложь)
Текст = Новый ЧтениеТекста(ИмяФайла);
ТЗ = Новый ТаблицаЗначений;
// Создадим колонки
ТекСтрока = Текст.ПрочитатьСтроку();
Если ТекСтрока <> Неопределено Тогда
МассивCSV = СтрРазделить(ТекСтрока, ИспользуемыйРазделитель);
ИндексКолонки = 0;
Для Каждого ИмяКолонки Из МассивCSV Цикл
ИмяКолонки = ?(ЗаголовкиИзПервойСтроки, "Кол"+ИндексКолонки, ИмяКолонки);
ТЗ.Колонки.Добавить(ИмяКолонки);
ИндексКолонки = ИндексКолонки + 1;
КонецЦикла;
Если ЗаголовкиИзПервойСтроки Тогда
ТекСтрока = Текст.ПрочитатьСтроку();
КонецЕсли;
КонецЕсли;
Пока ТекСтрока <> Неопределено Цикл // строки читаются до символа перевода строки
НоваяСтрока = ТЗ.Добавить();
МассивCSV = СтрРазделить(ТекСтрока, ИспользуемыйРазделитель);
ИндексКолонки = 0;
Для Каждого СтрокаНом Из МассивCSV Цикл
НоваяСтрока[ИндексКолонки] = СтрокаНом;
ИндексКолонки = ИндексКолонки + 1;
КонецЦикла;
ТекСтрока = Текст.ПрочитатьСтроку();
КонецЦикла;
Возврат ТЗ;
КонецФункции
👉@DevLab1C
اکنون در دسترس! پژوهش تلگرام ۲۰۲۵ — مهمترین بینشهای سال 
