1С:Предприятие 8
782 subscribers
46 photos
160 videos
51 links
🔥 Разработка в 1С — просто и понятно! 🔥

Полезные фишки и лайфхаки для разработчиков
Объяснение сложных тем простыми словами
Готовые решения, сниппеты и примеры кода
Разбор ошибок и способов их устранения
Новости и тренды в мире 1С
Download Telegram
Создание записи в регистре сведений без привязки к документу в 1С 8.3


&НаСервере
Процедура СозданиеЗаписиБезПривязкиКДокументу()

// Создание записи в регистре сведений без привязки к документу можно только для регистров,
// в свойствах которых установлен режим записи "Независимый".

// Создание записи - для единичных записей лучше использовать "Менеджер Записей"
НоваяЗапись = РегистрыСведений.КурсВалют.СоздатьМенеджерЗаписи();
НоваяЗапись.Период = '20200401';
НоваяЗапись.Валюта = Справочники.Валюты.НайтиПоНаименованию("Евро");
НоваяЗапись.Курс = 2.8010;
НоваяЗапись.Записать(Истина); // Замещение - если уже есть запись с такими же измерениями и таким же периодом


// Поиск, изменение и удаление созданной запись на дату
Выборка = РегистрыСведений.КурсВалют.Выбрать('20200401', '20200401');
Если Выборка.Следующий() Тогда

Запись = Выборка.ПолучитьМенеджерЗаписи();
Запись.Прочитать();
Запись.Курс = 2.8020;// Изменение курса Евро
Запись.Записать(Истина);// Запись курса Евро
Запись.Удалить();// Удаление курса Евро

КонецЕсли;

// Для группового изменения записей лучше использовать "Набор Записей"
Евро = Справочники.Валюты.НайтиПоНаименованию("Евро");

НаборЗаписей = РегистрыСведений.КурсВалют.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Валюта.Установить(Евро);

Запись_1 = НаборЗаписей.Добавить();
Запись_1.Период = '20200401'; // 01 апреля 2020 г.
Запись_1.Валюта = Евро;
Запись_1.Курс = 2.8446;

Запись_2 = НаборЗаписей.Добавить();
Запись_2.Период = '20200402'; // 02 апреля 2020 г.
Запись_2.Валюта = Евро;
Запись_2.Курс = 2.8478;

Запись_3 = НаборЗаписей.Добавить();
Запись_3.Период = '20200403'; // 03 апреля 2020 г.
Запись_3.Валюта = Евро;
Запись_3.Курс = 2.8320;

Запись_4 = НаборЗаписей.Добавить();
Запись_4.Период = '20200404'; // 04 апреля 2020 г.
Запись_4.Валюта = Евро;
Запись_4.Курс = 2.7943;

Запись_5 = НаборЗаписей.Добавить();
Запись_5.Период = '20200405'; // 05 апреля 2020 г.
Запись_5.Валюта = Евро;
Запись_5.Курс = 2.7797;


// Запись сразу всего набора
НаборЗаписей.Записать(Истина); // Замещение - если уже есть запись с такими же измерениями и таким же периодом

КонецПроцедуры


👉@DevLab1C
👍2🔥1🤣1
Серверы и 1С

Ускоряем 1С с помощью режима Shared memory
Как ускорить 1С в 2 раза за 5 минут? Turbo Boost в действии!
Как замерить производительность 1С сервера? Тест Гилёва.
Как выбрать сервер для 1С? Разбираем основные параметры серверов под 1С

источник

👉@DevLab1C
👍2🔥2
Универсальные коллекции значений 1С
Ильяс Низамутдинов

Урок №1. Массивы
Урок №2. Структура
Урок №3. Соответствие
Урок №4. Список значений
Урок №5. Таблица значений
Урок №6. Дерево значений
Урок №7.Бинарный поиск по таблице значений 1С

Все видео на youtube

👉@DevLab1C
🔥5👍1
Объекты 1С

Урок №1. Вводный
Урок №2. Метаданные
Урок №3. Менеджер объекта
Урок №4. Объекты метаданных 1С. Справочник
Урок №5. Ссылка
Урок №6. Объекты метаданных 1С. Документ
Урок №7. Объекты метаданных 1С. Табличная часть
Урок №8. Объекты метаданных 1С. Константы
Урок №9. Объекты метаданных 1С. Перечисления
Урок №10. Предопределённые элементы справочников
Урок №11. Подчинённые справочники
Урок №12. Иерархические справочники
Урок №13. Обработки
Урок №14. Выборка
Урок №15. Удаление и установка пометки удаления
Урок №16. Журнал документов
Урок №17. План видов характеристик
Урок №18. Отчёты
Урок №19. Внешние отчеты и обработки
Урок №20. Регистры накопления

Все видео на youtube

👉@DevLab1C
🔥6👏21👍1
Проверки объекта на изменения


Функция ОбъектМодифицирован(Объект, ПроверятьТабличныеЧасти = Истина, ПроверятьСтандартные = Истина)

Ссылка = Объект.Ссылка;
Метаданное = Ссылка.Метаданные();

Для каждого Реквизит из Метаданное.Реквизиты Цикл
Если Объект[Реквизит.Имя] <> Ссылка[Реквизит.Имя] Тогда
Возврат Истина;
КонецЕсли;
КонецЦикла;

Если ПроверятьСтандартные Тогда
Для каждого Реквизит из Метаданное.СтандартныеРеквизиты Цикл
Если Объект[Реквизит.Имя] <> Ссылка[Реквизит.Имя] Тогда
Возврат Истина;
КонецЕсли;
КонецЦикла;
КонецЕсли;


Если ПроверятьТабличныеЧасти Тогда
Для каждого ТЧ из Метаданное.ТабличныеЧасти Цикл

Если Объект[ТЧ.Имя].Количество() <> Ссылка[ТЧ.Имя].Количество() Тогда
Возврат Истина;
КонецЕсли;

Для Индекс = 0 по Объект[ТЧ.Имя].Количество()-1 Цикл
ОбъектСтрокаТЧ = Объект[ТЧ.Имя][Индекс];
СсылкаСтрокаТЧ = Ссылка[ТЧ.Имя][Индекс];
Для каждого РеквизитТЧ из ТЧ.Реквизиты Цикл
Если ОбъектСтрокаТЧ[РеквизитТЧ.Имя] <> СсылкаСтрокаТЧ[РеквизитТЧ.Имя] Тогда
Возврат Истина;
КонецЕсли;
КонецЦикла;
КонецЦикла;

КонецЦикла;
КонецЕсли;

Возврат Ложь;

КонецФункции


👉@DevLab1C
🔥3👍2😱1
Курс программирования 1С 8.3: обучение с нуля

Учебная версия 1С Предприятие 8.3: где скачать бесплатно и как установить
Установка платформы 1С 8.3 - инструкция по шагам
Создание новой базы в 1С 8.3
"Hello, 1C!": пишем первую программу на языке программирования 1С
Создание формы в 1С и работа с обработчиками
Глобальные переменные и модуль формы в 1С 8.3
Локальные переменные в 1С
Оператор присваивания и типы переменных в 1С
Условные операторы в 1С и работа с обычной формой
Управляемые формы в 1С 8.3 - знакомимся и создаем первую форму

Все видео на youtube

👉@DevLab1C
8👍3🔥3