Персональный блог Игоря Антонова aka "spider_net"

Программирование

Подписаться на эту рубрику по RSS

Нестандартный back-end для веб-приложений. Практическое применение HTTP-сервисов в "1С:Предприятие 8"


Рубрика: 1С:Предприятие -> Программирование -> Статьи
Метки: | | |
Просмотров: 10046
Нестандартный back-end для веб-приложений. Практическое применение HTTP-сервисов в "1С:Предприятие 8"

Слово “backend” у современных разработчиков невольно ассоциируется с мейнстримовыми технологиями вроде Java, ASP .NET, PHP, Node.js и т.д. Популярный стек технологий для веб-приложений прочно укрепился в умах разработчиков и кажется, новичкам на этом поприще нет места. Отнюдь! Новые инструменты приходят с неожиданных сторон и занимают уверенные позиции в новых нишах.

Взять, к примеру, известную всем платформу “1С:Предприятие 8” - современная среда разработки бизнес-приложений различного масштабы. Платформа развивается не первый год, и за это время с ее помощью было создано большое количество конфигураций, успешно решающих различные задачи бизнеса.

Платформа относительно недорога в лицензировании, обладает богатым инструментарием для разработки, и хорошо подходит как для небольших проектов, так и для огромных, ориентированных на автоматизацию крупнейших корпораций. Если раньше “1С:Предприятие” больше ассоциировалось со словом “Бухгалтерия”, то сегодня это в первую очередь платформа - конструктор для разработки самых разнообразных приложений, нацеленных на работу в гибридной среде.

Читать дальше

Анонс! Новая статья. Тотальная автоматизация для 1С-разработчика

Анонс! Новая статья. Тотальная автоматизация для 1С-разработчика

На днях вышел майский номер журнала "Системный администратор". По традиции в него вошла моя очередная статья: Тотальная автоматизация для 1C-разработчика. В ней я расскажу как автоматизировать типовые задачи с помощью OneScript – инструмента, который стоит взять на заметку всем, чья работа связана с разработкой и сопровождением решений на базе платформы 1С:Предприятие.

Читать дальше

Анонс! Новая статья. Правильная доработка типовых решений от 1С

Анонс! Новая статья. Правильная доработка типовых решений от 1С

Вышел мартовский номер классного журнала "Системный Администратор". Как обычно, в номере большое количество интересных тем, а также моя новая статья: "Правильная доработка типовых решений от 1С. Разбираем кейсы легкой поддержки". Не секрет, что функционал типовых решений чаще всего приходится адаптировать под потребности заказчика. Чтобы доработки не превратились в головную боль, изменения нужно вносить с умом, применяя хорошо зарекомендовавшие подходы. Компания 1С предоставляет несколько технологий и паттернов для решения этой проблемы. О них и пойдет речь в этой статье. Приобрести электронную версию журнала вы можете в официальном магазине.

Fuse. Библиотека для реализации неточного поиска на ванильном JavaScript


Рубрика: Программирование -> JavaScript
Метки: | |
Просмотров: 4343
Fuse. Библиотека для реализации неточного поиска на ванильном JavaScript

В одном из проектов мне требовалось реализовать поиск неточный поиск по коллекции объектов (JavaScript). Под неточным поиском я подразумеваю: поиск по первым буквам слова, без учета регистра, поиск сразу в нескольких свойствах объекта (в зависимости от условий), возможность установить совпадения с определенными ключами и рядом других условий. В прошлый раз эту задачу решил частично. Не все удалось, но реализация была пригодна для использования в рабочем проекте.

Читать дальше

clipboard.js. Как скопировать текст в буфер обмена без помощи Flash


Рубрика: Программирование -> JavaScript
Метки: | | |
Просмотров: 5694
clipboard.js. Как скопировать текст в буфер обмена без помощи Flash

Иногда возникает необходимость реализовать в web-приложении возможность копирования определенного текста в буфер обмена. Например, вы делаете какой-нибудь форматтер текста (вроде jsonformatter) и хотели бы чуточку облегчить вашему пользователю жизнь, позволив путем нажатия одной кнопки, поместить результат преобразования в буфер обмена. Согласитесь, отличный кейс?! Подобные задачи периодически возникают, но не всегда их удается быстро решить. Для ускоренного внедрения возможности работы с буфером обмена, Zeno Rocha создал замечательный модуль clipboard.js.

Читать дальше

Не удаляются помеченные на удаление объекты. Ошибка «DeleteObjects(RemovedList, True, FindedItems)».

Не удаляются помеченные на удаление объекты. Ошибка «DeleteObjects(RemovedList, True, FindedItems)».

Продолжаем на работе внедрять новую типовую конфигурацию и столкнулись со странной проблемой. Пометили несколько десятков документов на удаление и решили их полностью удалить. Открываем стандартную обработку (встроенную в платформу) «Удаление помеченных объектов» («Все функции» -> «Стандартные» -> «Удаление помеченных объектов»), выбираем полное удаление и вместо сообщения об успешном удалении получаем ошибку «DeleteObjects(RemovedList, True, FindedItems); по причине «Нарушение прав доступа!».

Типовая конфигурация состоит из нескольких подсистем, разрабатываемыми независимыми компаниями, поэтому первым делом я подумал, что причина в отсутствии прав на удаление определенных объектов. Проверил учетную запись «Администратор» - все роли были назначены, следовательно, проблема не в этом.

Читать дальше

Борьба с медленными запросами в 1С. Типичные проблемы

Борьба с медленными запросами в 1С. Типичные проблемы

На работе часто приходится проводить ревью кода и разбираться с проблемами в стиле «почему же тормозит запрос». Проблемы подобных тормозов чаще всего вызваны не оптимальными запросами к базе. Так уж получилось, что код нашей конфигурации разрабатывается почти 9 лет и за этот внушительный промежуток времени накопились запросы, которые нужно переписать. Они превосходно решают задачи, но при нынешнем объеме базы данных работают не так быстро, как хотелось бы.

Причин появления медленных запросов много. Где-то сами недоглядели, а где-то просто нельзя было сделать по-другому. Язык запросов 1С за это время совершенствовался, а наш код был написан в то время, когда, например, в нем отсутствовала возможность применять временные таблицы (как пример). Вот и получилось, что в свое время написали так, а сегодня этот код требует доработок. Для таких долгоиграющих проектов это нормально. Код стареет, появляются новые требования и без рефакторинга не обойтись.

В этой заметке я решил собрать список типичных проблем, которые заставляют запросы выполняться медленно. Возможно, узнаете для себя что-то новенькое и сможете во время принять должные меры по устранению будущих проблем.

Читать дальше