WIKI Programming Store — библиотека разработчика 1С, Python, Dynamics AX, Java, ML/AI
Подписывайся на наши новости и читай статьи в первых рядах!
Создание веб-сервиса в Dynamics 365 Finance and Operations (Axapta)
A Rod-ov
Для создания веб-сервиса в Dynamics 365 Finance and Operations можно использовать методы контроллеров (SysOperation или DataEntity) или OData-сервисы. Вот пошаговая инструкция для создания RESTful веб-сервиса с помощью контроллера:
Метаданные расширения в стандартном интерфейсе OData
Aidar Gai
Метаданные расширения 1С в стандартном интерфейсе OData предоставляют доступ к основным видам объектов конфигураций на платформе «1С:Предприятие». Они включают бизнес-процессы, документы, журналы документов, задачи, константы, планы видов расчёта, планы видов характеристик, планы обмена, планы счетов, регистры бухгалтерии, регистры накопления, регистры расчёта, регистры сведений и справочники.
Стандартный интерфейс OData поддерживает операции чтения, создания, модификации и удаления данных, а также получение списков документов, справочников и записей регистров сведений с возможностью применения фильтров. Доступ к данным осуществляется через URL-адрес, содержащий идентификатор ресурса и параметры запроса, разделённые символами &.
Для аутентификации запроса используется HTTP-заголовок Authorization: Basic с указанием логина/пароля пользователя. HTTP-метод запроса выбирается в зависимости от выполняемой операции, такой как получение данных (GET), создание объекта (POST), обновление данных (PATCH или PUT) или удаление данных (DELETE).
В какой-то момент вам может потребоваться расширить метаданные с помощью расширения. В таком случае я могу показать на примере продукта компании Programming Store — «PROSTO:СКУД», как мы это сделали для конфигурации ЗУП 3.1.
Паттерн Singleton в Microsoft Dynamics 365 Finance & Operations
A Rod-ov
Я Антон, разработчик Axapta в Programming Store. В программировании 7 лет. Сейчас работаю с системой Microsoft Dynamics 365 Finance & Operations (MS D365 F&O). Решаю задачи от расширения стандартного функционала до разработки веб-сервисов для обмена данными.
Singleton понадобился мне со 2-го месяца работы с системой MS D365 F&O, так как принцип доработки стандартного кода в MS D365 F&O заключается в расширении стандартного кода с помощью Chain of Command или Event Handler. Это не позволяет нам дописать стандартный код в середине метода, мы можем только дописаться либо до метода, либо после. Бывает, что нам необходимо дописать код в середине метода или наоборот не выполнять часть кода, в этом может помочь Singleton. В статье приведен пример, когда Singleton впервые пригодился мне в разработке MS D365 F&O. Периодически встречаются и другие ситуации, когда он выручает. Надеюсь, что будет полезно.
Работа с отладчиком 1С: шпаргалка
Ar P
В статье собраны основные способы работы с отладкой в конфигураторе 1С 8.3. Это шпаргалка, которая не претендует на полноценный обзор работы с отладчиком.
Бывает, что к программисту поступает задача исправить ошибки. Есть даже отдельное направление «Сопровождение и поддержка». В большинстве случаев проблему пользователя удаётся решить силами консультанта при помощи настройки, а часть проблем бывает связана с программным кодом или с непредусмотренным вариантом использования программы, которое требует доработки кода.
В меню конфигуратора есть пункт "Отладка", где расположены почти все инструменты необходимые для работы с отладкой.
После запуска отладки или при подключении к уже запущенному сеансу в меню появляются команды трассировки. В некоторых случаях, когда отладка отваливается (при Клиент-Серверной работе) можно наблюдать картинку слева — помогает перезапуск отладки или подключение к уже работающему сеансу в меню пункт Отладка/Подключение.
Сочетания горячих клавиш упрощают жизнь и ускоряют работу с отладкой.
OData: варианты работы и возможности стандартного интерфейса
Nikita An
Рассмотрим в этой статье варианты работы и возможности стандартного интерфейса OData с получением и обработкой данных информационной базы.
Как установить ограничения доступа на дополнительные реквизиты 1С без RLS
Сергей Ж
Вот уже 20 лет в 1С я сталкиваюсь со странными ситуациями, каждый раз находится логическое объяснение. Магии не существует, но я впервые решил задачу по дополнительным реквизитам 1С и не понимаю, как это работает. Спойлер: недокументированные возможности платформы, не «магия».
Обход дерева без рекурсии
Сергей Ж
В очередной раз увидел, как обход дерева рекурсией приводит к бесконечной вложенности и завершению работы по ошибке. Поэтому предлагаю шпаргалку для отказа от рекурсии за счет циклов. Если дерево замкнуто, то и в моем алгоритме тоже может возникнуть бесконечный цикл. Как от него избавляться каждый решает самостоятельно: проверка уровня вложенности, проверка всех узлов на зацикленность или что-то еще.
Чтобы отказаться от рекурсии важно обходить дерево в ширину, плоско по уровням:
Например, у нас есть дерево, где одному руководителю назначается несколько сотрудников, а в результате мы хотим получить плоскую таблицу, в которой будут: Руководитель, его Сотрудник, Уровень руководителя и Уровень сотрудника. В этом случае код будет следующий:
В сети много подобных описаний, но хочется все иметь в оном месте, поэтому добавляю данную статью в нашу библиотеку разработчика.
Печать на стороне сервера при помощи Ghostscript
Max Yar
Рассмотрим вариант печати табличного документа на сервере при помощи Ghostscript.
Управляемые формы: не срабатывает оповещение о закрытии формы
Сергей Ж
После появления управляемых форм и отключения в них модального режима какие-то данные из формы разработчики стали получать через описание оповещения, а точнее через параметр "ОписаниеОповещенияОЗакрытии" при открытии формы. Для того чтобы процедура, прописанная в этом параметре, получила необходимые данные важно принудительно закрыть форму, передавая туда данные.
В коде это обычно выглядит:
Далее создаем функцию, в которую будет возвращаться информация из формы:
Добавляем код в самой форме:
Все это писали, всё это хорошо работает, но у вендора есть сюрприз. При принудительном закрытии формы из события "ПриОткрытии" оповещение о закрытии не срабатывает. И что же делать? Я знаю два пути обхода, один я нашел, второй придумал.
Работа с макетами офисных документов. Печать в DOCX методами БСП без COM объекта
Victor Fvy
Начнем с описания процедур. Описание скопировано из инструкции БСП чтобы было под рукой. Библиотека стандартных подсистем 3.1.9/Работа с макетами офисных документов
В некоторых процедурах присутствуют параметры с меткой "Удалить", они не используются в процедурах, но и не везде им задано значение по умолчанию, поэтому при вызове процедуры нужно их указывать, чтобы не поймать ошибку.
Зачем нужно свойство РежимКомпоновкиДанных у объекта СхемаЗапроса на примере динамического списка
Сергей Ж
В последнее время при изменении динамического списка, я использую объект "СхемаЗапроса". Это работает это так:
Расширение функционала общей формы «ФормаОтчета» для работы с новыми элементами формы
Сергей Ж
Задача: отобразить на форме отчета период отчета, как в типовых документах. В виде месяца с возможностью регулировать и выбирать конкретный месяц.
Пользуясь нашим сайтом, вы даёте согласие на использование cookies. Подробнее про политику конфиденциальности.
