И снова про 1С

    image
    Последнее время на Хабре стали все чаще появляться статьи, посвященные 1С как среде разработки приложений. Статьи по смыслу более концептуальные, чем прикладные; авторы делают обзор платформы «1C:Предприятие 8» в целом, пытаются понять, хороша или плоха технология создания бизнес-приложений, предлагаемая 1С.

    Не буду обсуждать, прав ли каждый из авторов или нет; у платформы 1С, как у любой технологии, есть свои преимущества и недостатки. А есть и свои интересные особенности, свои наработки и механизмы. Вот о них и хочется поговорить. А еще — хочется написать статью про 1С для людей, с 1С незнакомых, статью, которая показывает, какое место 1С занимает в ряду аналогичных программных продуктов. Мне лично такой ознакомительной обзорной статьи очень не хватало, когда я еще не был знаком с 1С, но был знаком с рядом других ERP продуктов.

    Итак, начнем!

    Что производит фирма 1С?


    Думаю, широкая публика на этот вопрос ответит: «1С:Бухгалтерию». Кто-то вспомнит обучающие программы или знаменитую серию игр «ИЛ-2 Штурмовик».

    Участники Хабра, конечно, в курсе, что 1С – это не только «1С:Бухгалтерия», что есть целая система программ «1С:Предприятие», включающая средства разработки бизнес-приложений и бизнес-приложения, созданные с помощью этих средств. А уж с помощью средств разработки 1С написаны и бухгалтерия, и CRM, и ERP (с внедрениями на тысячи и десятки тысяч пользователей), и многое другое.

    ERP-системы — наиболее интересные и насыщенные по функционалу бизнес-приложения; посмотрим на их примере, какое место технологии «1С:Предприятия» занимают в ряду аналогов.

    Какие бывают ERP


    Какое самое ценное свойство ERP систем (да и любых бизнес-приложений)? На мой взгляд – это гибкость, возможность приспосабливаться к бизнес-процессам конечного пользователя как можно меньшей ценой.

    Понятно, что, программируя ERP систему, все варианты бизнес-процессов предусмотреть невозможно. На помощь приходит параметризация; вводя в систему параметры, которые может изменить в настройках системы пользователь (консультант, администратор), мы повышаем гибкость системы сравнительно небольшой ценой. Первые ERP системы были parameter-driven, т.е. настраиваемые с помощью параметров.

    Не все бизнес-кейсы можно предусмотреть и в параметризуемых системах. Когда одной настройкой параметров не обойтись – надо менять исходный код. Тут перед производителем ERP встает вопрос – менять код самому под нужды потребителей и выпускать обновления или поставлять систему в исходных кодах, чтобы пользователи могли сами переписать систему под свои нужды (что, кстати, не освобождает производителя от выпуска обновлений — система должна развиваться, поддерживать новый функционал, чтобы быть конкурентоспособной).

    Отдельный вопрос – выбор языка программирования для написания ERP системы. Бо́льшая часть ERP системы – это бизнес-логика, для которой обычные языки программирования типа С++ не всегда подходят наилучшим образом. В идеале бизнес-логику хорошо бы программировать на высокоуровневом языке, способном обеспечить бизнес-программисту максимальный комфорт при написании бизнес-логики, абстрагировать его от низкоуровневых деталей (особенностей работы с базами данных, подсистемой файлового ввода-вывода и печати, оконной подсистемой пользовательского интерфейса и т.п.). Конечно, в этом случае надо еще создать и компилятор/интерпретатор для этого языка и среду разработки.

    Имеем матрицу возможных сочетаний:
    • открытый или закрытый код приложения (тут я имею в виду не open source в обычном его понимании, а возможность поставки исходного кода приложения, в том числе и за отдельную плату).
    • язык программирования бизнес логики – «обычный» (С/Java/Perl/…) или специально разработанный, проприетарный.

    image

    Бизнес-приложения, созданные с помощью технологий «1C: Предприятия» — это системы с открытым прикладным исходным кодом, написанным на проприетарном языке, у которого нет короткого названия; официально его называют «Встроенный язык программирования 1С: Предприятие», неофициально и коротко – «язык 1С».

    Большинство лидеров современного ERP рынка – это системы с открытым кодом. Возможность изменять исходный код «на местах» дает огромную гибкость и конкурентное преимущество. Продукты с закрытым кодом вынуждены использовать другие приемы; самый распространенный ход – аналог CallBacks, возможность повесить кастомный код на предопределенные события, как визуальные (открытие-закрытие формы, выбор из списка значений, …), так и бизнес-событие (обработка заказа, ввод счета на продажу, …). В некоторых системах есть возможность написать свои обработчики на C# (или других распространенных языках), в других для этого есть Visual Basic for Applications, лицензированный у Microsoft и т.п.

    Как устроены ERP


    ERP системы с открытым кодом приложения состоят из собственно исходного кода, реализующего бизнес-логику, и среды исполнения этого бизнес-кода (т.н. платформы).

    Платформа, как правило, написана на низкоуровневом языке (C, C++), часто исходные коды платформы закрыты для конечных пользователей. Задача платформы – позволить программисту абстрагироваться от низкоуровневых деталей (особенности ОС и СУБД и т.п.) и сосредоточиться на написании собственно бизнес-логики. К платформе также часто относят средства разработки бизнес-приложений и средства администрирования системы (и я согласен с этим подходом). Не обходятся, кстати, без платформы и системы, где бизнес-логика написана на «обычных» языках программирования. Интерпретировать код приложения там не надо, но потребность в платформенном функционале остается (например, «обертках» вокруг БД или унифицированном доступе к списку пользователей и их прав).

    Платформу как среду исполнения бизнес-приложений можно охарактеризовать как виртуальную машину. Как правило, платформа должна эмулировать для ERP три основные вещи:
    • Среда исполнения бизнес-логики.
    • База данных.
    • Графическая подсистема для отображения клиентского приложения. Клиентское приложение может быть графическим, отрисованным штатными средствами ОС (в том числе и мобильной ОС), а может быть веб-приложением. В случае веб-приложения платформа или реализует свой веб-сервер, или обеспечивает поддержку стандартных веб-серверов (IIS, Apache и т.д.)

    В принципе, модифицируя платформу, можно заставить ERP, написанную на проприетарном языке, запускаться под любой ОС и хранить данные практически в любой СУБД. Обычно производители ERP ограничиваются одной-двумя ОС и одной-двумя СУБД. Поддержка дополнительных ОС и СУБД – это увеличение затрат на разработку и тестирование; нередко производители ERP в новых версиях продуктов объявляют о прекращении поддержки какой-либо СУБД.

    Платформа 1С в плане поддержки ОС и СУБД предлагает следующее:
    • Среда исполнения бизнес-логики: отказоустойчивый кластер серверов приложений с балансировкой нагрузки; ОС — Windows или Linux
    • База данных: собственная файловая СУБД (рекомендуемая для разработки и небольших инсталляций), MS SQL, Oracle, IBM DB2, PostgreSQL
    • Клиент:
      • тонкий клиент (только отображение и ввод информации на клиенте) – Windows и Linux. Может работать с сервером приложений через локальную сеть или через веб-сервисы (в этом случае на серверной стороне должен быть развернут Microsoft IIS или Apache)
      • Веб-клиент – на серверной стороне Microsoft IIS или Apache, на клиентской – любой из четырех браузеров — Internet Explorer, Chrome, Firefox, Safari
      • толстый клиент (с возможностью исполнять на клиенте часть бизнес-логики) – Windows и Linux. Обладает рядом ограничений (например, может работать только в пределах одной локальной сети с сервером приложений). Считается устаревшим, далее его развивать фирма «1С» не планирует.
      • Мобильный офлайн-клиент (с возможностью периодической синхронизации) – iOS и Android.

    Если мы используем при написании программы 1С технологию управляемого приложения (доступна с 2008 года) – то из одного прикладного кода мы получаем и тонкого клиента для Windows/Linux, и веб-клиента.

    Язык приложений ERP


    Отдельная тема – язык, на котором пишется бизнес-логика. Для эффективной работы бизнес-программиста этот язык должен быть как можно ближе к предметной области бизнеса (в идеале – DSL, Domain Specific Language) и подальше от технических деталей ОС и СУБД.

    Возьмем типичную для бизнеса задачу: нам надо добавить в системе возможность введения и обработки нового типа документов (например, наряд-заказа). В системе, написанной на «обычном» языке программирования, для этого требуется:
    1. Создать таблицы в БД, где будет храниться информация о документе.
    2. Написать класс (или классы), реализующие бизнес-логику работы с документом. Помимо бизнес-логики классы должны также реализовывать взаимодействие с БД — чтение и запись данных документа.
    3. Создать пользовательский интерфейс для редактирования нового типа документа. Часто нужно бывает еще создать форму, отображающую список документов с возможностью поиска по разным полям и т.п.

    Если мы работаем на C# в Visual Studio – все шаги можно сделать внутри одной среды разработки (включая дизайн БД).
    В ряде ERP систем, использующих проприетарные языки, также надо пройти все три описанных выше шага, как правило, внутри одной среды разработки.

    Эти 3 шага обеспечат необходимый минимум; а ведь еще надо создать пользовательский интерфейс для работы с документом, сделать его доступным в отчетах, уметь регистрировать изменения, сделанные пользователями в документах нового типа, в журнале (логе) системы и т.п.

    В 1С надо описать в графическом дизайнере поля нового типа документа и написать код, реализующий специфичную для документа бизнес-логику (например, на какие счета записать суммы денег, проходящие в документе). Все остальное, необходимое для полноценной работы с документом в системе, сделает платформа:
    • Создаст структуры в СУБД для хранения данных.
    • Создаст формы для редактирования документа, показа списка документов этого типа и т.д. Если автоматически созданные формы нас чем-то не устроят – можно сделать свои, расширив и/или изменив стандартные.
    • Документ станет доступен в отчетах.
    • Документ и его поля станут доступны для раздачи прав на чтение/запись в системе безопасности приложения.
    • Поля документа станут доступны для полнотекстового поиска по всей системе (с учетом синонимов, поддержкой транслитерации, нечеткого поиска и т.д.).
    • Все изменения в документах нового типа будут регистрироваться в журнале регистрации приложения.
    • Будут автоматически созданы методы для сохранения и чтения документа в/из XML и JSON.
    • Документ станет доступен по интерфейсу REST (через протокол OData).
    • И многое другое


    Особенностью разработки в 1С является то, что в системе существуют порядка 20 встроенных типов объектов, и все новые объекты, которые разработчик создает, должны принадлежать к одному из этих типов. Большая часть этих типов описывают объекты из сферы учетной деятельности предприятия – справочники, документы, планы счетов и т.д. Другая часть типов объектов – технологические, например, Web- и HTTP-сервисы; они позволяют программам 1С общаться с внешним миром.

    image
    Конфигуратор 1С – в нем создаются прикладные решения. Слева — дерево встроенных типов 1С; под каждой веткой — прикладные объекты данного типа.

    Разработка прикладных решений делается в Конфигураторе (Designer в англоязычной версии). Недавно была выпущена ознакомительная версия инструмента «1C:Enterprise Development Tools», позволяющая вести разработку решений 1С в популярной среде Eclipse. Промышленную разработку в «1C:Enterprise Development Tools» вести пока нельзя, но понять, куда в технологическом плане движется компания, по этой версии вполне можно. В частности, поддерживается коллективная разработка с использованием популярных систем управления версиями (Git, SVN и любых других, для которых есть плагины к Eclipse); есть также возможность написать к IDE Eclipse собственные плагины, расширяющие возможности среды разработки по работе с 1С.

    image
    Enterprise Development Tools — разработка приложения 1С в IDE Eclipse

    Собственно язык программирования 1С по синтаксису напоминает больше всего JavaScript. Язык, строго говоря, не является объектно-ориентированным. В нем нет наследования; но, поскольку все объекты программ 1С принадлежат к одному из встроенных типов объектов – это можно назвать упрощенным наследованием: встроенные типы объектов реализуют предопределенный функционал, который прикладной программист может в своих объектах-наследниках переопределить. Такое наследование – одноуровневое, наследовать от прикладных объектов уже нельзя; похожий подход к наследованию принят в концепции прототипного программирования (prototype-based programming); одним из популярных представителей этой концепции как раз является JavaScript.

    Такой подход осознанно ограничивает свободу разработчика прикладных решений, заставляя его для реализации своих задач выбирать нужный тип объекта из разумно ограниченной палитры встроенных типов. Взамен разработчик получает богатый функционал, реализованный платформой, и действительно быструю разработку. Плюсы такого подхода очевидны – учетные системы на 1С создавать легко и быстро. Есть и минусы – если нужно реализовать что-то, для чего в платформе нет встроенных типов (например, работу с SFTP), то нужно либо ждать новой версии платформы, в которой будет реализован этот функционал, либо писать свою реализацию на «обычном» языке и вызывать её из 1С через технологию внешних компонент.

    Несколько фактов о встроенном языке программирования 1С:
    • Поддерживается английский (if… then) и русский (если… тогда) синтаксис.
    • Язык обладает полнотой по Тьюрингу.
    • Это язык с динамической типизацией. Переменная связывается с типом в момент присваивания значения, а не в момент объявления переменной. Объявляя переменную, нельзя указать ее тип.
      Можно так:
      var а; а = 1;
      

      Нельзя так:
      var a as Int; a = 1;
      
    • Для чтения данных из СУБД у 1С есть свой язык запросов, похожий на SQL. Собственно, в SQL он и транслируется при выполнении программ 1С.

    Как все это работает


    Как решения 1С поставляются конечным пользователям? И как они работают у этих самых конечных пользователей?

    Чтобы полнее ответить на этот вопрос, надо вспомнить об одной характерной особенности 1С.
    Проект в 1С называется конфигурацией. Конфигурация – это законченная самодостаточная программа, например, бухгалтерия или ERP; она включает в себя все объекты и код, нужные для полноценного функционирования бизнес-приложения. Особенность 1С в том, что конфигурация хранится в базе данных, в той же самой, в которой лежат данные самого приложения (проводки, данные справочников и документов и т.п.), т.е. программа хранится вместе с данными. База данных с конфигурацией (и данными приложения) в терминологии 1С называется информационной базой (сокращенно – инфобазой).

    Конфигурация может выгружаться в файл; в виде файла она обычно от разработчика поступает конечным пользователям, на клиентской системе этот файл импортируется в инфобазу. После этого решение готово к работе.

    image
    Архитектура решений 1С

    Где какой софт установлен:
    • Сервер СУБД – одна или несколько СУБД, поддерживаемых 1С (MS SQL, Oracle, IBM DB2, PostgreSQL). Если на сервере 1С установлено несколько приложений 1С — приложения могут использовать разные СУБД; например, бухгалтерия – MS SQL, а ERP – Oracle.
    • Сервер – один или несколько серверов отказоустойчивого масштабируемого кластера. Тут должен быть установлен программный продукт «Сервер 1С» (набор библиотек и исполняемых файлов). Отказоустойчивость и масштабируемость кластера, а также балансировка нагрузки между серверами кластера обеспечиваются средствами ПО «1С». В составе одного кластера могут быть сервера под Windows и Linux, в системе может быть предусмотрен резервный кластер.
    • Клиент: ОС Windows или Linux, должен быть установлен тонкий клиент (1cv8c.exe/1cv8) или толстый клиент 1С (1Cv8.exe для Windows, 1cv8 – для Linux).
      • Тонкий клиент умеет исполнять ограниченный набор функциональности встроенного языка 1С. Оперирует ограниченным набором типов встроенного языка, предназначенным лишь для отображения и изменения данных в памяти. Вся работа с базой данных, объектными данными, исполнение запросов выполняется на стороне сервера. Тонкий клиент только получает готовые данные, подготовленные для отображения.
      • Толстый клиент может исполнять практически всю функциональность, предоставляемую встроенным языком 1C сам, прибегая к помощи сервера только когда надо записать или считать данные из базы. Ограничения: требует значительного количества аппаратных ресурсов и может «общаться» с кластером серверов 1С только по локальной сети. Считается устаревшим, поддерживается для обратной совместимости.
    • Веб-сервер – IIS или Apache. От 1С – ставится набор расширений для веб-серверов.
    • Веб-клиент – любой из четырех поддерживаемых браузеров: Internet Explorer, Chrome, Firefox, Safari.
    • Мобильный клиент: iOS или Android и любое мобильное приложение 1С. Способ общения мобильного приложения 1С с сервером зависит от конкретного приложения; чаще всего используются Web- или HTTP-сервисы.


    Между собой компоненты 1С — сервер, тонкий и толстый клиенты и веб-расширения — общаются или по собственному протоколу (реализованному поверх TCP), или по http.

    Что особенного в 1С


    Что выгодно отличает технологию «1С: Предприятие»? Благодаря инновационному подходу к организации разработки (о нем ниже) в «1С: Предприятии» легко делать две вещи: создавать бизнес-решения с нуля и кастомизировать существующие решения под потребности конечных пользователей.

    Разработка


    Легко создавать решения с нуля — благодаря встроенным объектам, реализующим базовый функционал учетных систем. Именно продуманная система встроенных объектов (а не язык, который в общем-то обычный скриптовый) делает «1С:Предприятие» мощным инструментом создания бизнес-приложений. Разработчику не нужно писать слой доступа к данным, базовый UI и т.п. – можно сразу сосредоточиться на решении бизнес-задачи. Для решения бизнес-задач также многое уже реализовано во встроенных объектах (читай – базовых библиотеках) – например, поддержка иерархических справочников, учетные машины для реализации бухгалтерского и товарного учета, механизмы для сложных периодических расчетов (например, расчета зарплаты) и многое другое.

    «Из коробки» разработчик получает встроенные объекты (справочники, документы, регистры и т.д.), реализованные платформой; это паттерны из мира учетных систем. В прикладном решении (конфигурации) разработчик реализует эти паттерны, наполняя их конкретной бизнес-логикой.

    Прикладное решение в «1С:Предприятии» не пишется в прямом смысле на языке программирования. Два краеугольных камня идеологии разработки – разработка от метаданных (Metadata-driven development) и построение приложения на основе модели (Model-driven development).

    В основе бизнес-приложения лежат метаданные, представляющие собой декларативное описание самого приложения. Прикладное решение описывается не в терминах реляционных таблиц, классов объектного языка программирования и т.д., как в большинстве систем. Решение в «1С: Предприятии» описывается метаданными в виде совокупности прикладных объектов, выбираемых из определенного набора прототипов-паттернов (справочников, документов, планов счетов, …).

    Метаданные образуют иерархию объектов, из которых формируются все составные части прикладной системы и которые определяют все аспекты ее поведения. При работе бизнес-приложения платформа интерпретирует метаданные, обеспечивая всю необходимую функциональность.

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

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

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

    Наличие единой модели положительно сказывается на простоте освоения системы. Вся разработка ведется в рамках одной сквозной системы понятий, в едином пространстве типов данных. Описание в метаданных тех или иных объектов (сущностей) сразу определяет и соответствующие типы встроенного языка программирования, и необходимые для их хранения структуры БД. Все последующие манипуляции этими объектами как в памяти, так и в БД выполняются единообразно, не требуя преодоления барьеров между различными нотациями, принятыми при работе с СУБД и универсальными языками программирования.

    Готовое приложение (конфигурация), поставляемое в открытых исходных кодах (например, бухгалтерия или ERP), для программиста на стороне клиента – это уже практически DSL (Domain Specific Language, предметно-специфичный язык). Программист может использовать готовые объекты конфигурации (справочник контрагентов, план счетов, расчет зарплаты) для модификации поведения системы под нужды заказчика.

    Кастомизация и поддержка


    Коротко о бизнес-логике прикладного решения можно сказать следующее: её меняют. Её меняют сотрудники IT-отделов клиента, адаптируя решение под бизнес-процессы предприятия. И её меняет поставщик решения, добавляя новый функционал, поддерживая изменения законодательства и периодически выпуская обновления.

    Процедура установки обновления там, где бизнес-логика была изменена «на местах» под нужды клиента, часто бывает нетривиальной операцией, иногда чреватой ошибками. По большому счету, это слияние исходных кодов нового приложения от поставщика с измененным (по сравнению с предыдущей версией от поставщика) приложением клиента. С одной стороны, надо получить новый функционал, пришедший с обновлением; с другой стороны – не потерять свои наработки.

    Эта задача хорошо знакома всем, кому приходилось работать в команде над одним приложением и объединять (merge) свои изменения исходного кода с изменениями других участников команды. Даже если все разработчики из одной команды и придерживаются одного набора правил разработки и оформления кода, задача слияния исходников бывает подчас непростым делом. Ну а в случае ERP систем она осложняется тем, что разработчики поставщика и клиента работают в разных организациях и у них далеко не всегда есть возможность пообщаться в случае затруднений с пониманием кода.

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

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

    Для решения данной задачи фирма 1С разработала механизм поддержки (входит в состав платформы «1С: Предприятие»), позволяющий поставщику решения определять, какие объекты конфигурации (справочники, документы и т.п.) клиент может менять, а какие – нет, т.к. их изменение нарушит работоспособность системы или сделает невозможной ее дальнейшую централизованную поддержку поставщиком.

    В свою очередь, и клиент с помощью этого механизма может определять правила поддержки объектов своей конфигурации — например, он может отказаться от поддержки поставщиком конкретного объекта, если возьмет на себя ответственность за дальнейшую модификацию этого объекта или если данный объект ему в его работе не нужен. А можно, наоборот, запретить редактирование объекта «своей» конфигурации (даже если поставщик разрешает это делать) с тем, чтобы застраховаться от случайного изменения.

    В идеале хотелось бы, чтобы пользовательские изменения существовали как бы «в стороне» от стандартной конфигурации поставщика и включались в работу только в момент непосредственного выполнения кода. В этом случае процесс установки обновлений от поставщика станет автоматическим процессом, не требующим вмешательства человека. 1С предлагает два подхода, покрывающих значительный процент сценариев кастомизации.

    Первый подход — использование внешних обработок и внешних отчетов. Эти механизмы позволяют надстраивать дополнительную функциональность «сверху» системы, не изменяя исходного кода конфигурации. По сути это скрипты с графическим интерфейсом, предназначенные для запуска на конкретном прикладном решении. Эти механизмы породили свой аналог «App Store», онлайновый магазин, где независимые программисты выкладывают, а конечные пользователи приобретают нужные дополнения для разных программ.

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

    Что еще?



    Что еще есть интересного/важного в технологической линейке 1С? В списке – наиболее значимые механизмы, о каждом из которых можно написать отдельную статью (или несколько):
    • Облачное решение 1cFresh — «облако из коробки», горизонтально масштабируемая среда для работы с прикладными решениями 1С (и фирм-партнеров) в модели сервиса (SaaS). Продукт содержит в себе все нужные для работы SaaS функции – регистрация и управление пользователями, возможность быстрой публикации новых прикладных решений, создание резервных копий пользовательских данных и т.п. Фирма 1С сама использует продукт 1cFresh для предоставления своих продуктов в аренду (http://1cfresh.com), а также продает решение 1cFresh как коробочный продукт, позволяя партнерам и клиентам разворачивать собственные облака для прикладных решений на основе технологий «1С: Предприятие».
    • Мобильная платформа 1С (упомянутая выше), позволяющая создавать приложения для мобильных ОС (iOS, Android) из одного исходного кода, используя ту же методику и среду разработки (Конфигуратор), что и для «обычных» приложений 1С.
    • Мощная и гибкая система отчетности. Отчеты – крайне важный механизм в любой бизнес-системе; многие ERP используют внешние генераторы отчетов от других производителей, т.к. создание хорошего генератора отчетов – непростая задача с особой спецификой. В 1С отчеты разрабатываются в той же среде (Конфигураторе), что и само приложение; в основе механизма отчетов лежит система компоновки данных (СКД) – механизм декларативного описания отчетов. Одна из важных особенностей отчетов в 1С – это то, что конечный пользователь, может изменить созданный разработчиком отчет «под себя», используя те же возможности по дизайну отчетов, что и разработчик.
    • Механизм обмена данными, позволяющий создавать территориально распределенные информационные системы, обменивающиеся данными в офлайн режиме, без постоянного соединения. Обмен данными возможен как между приложениями «1С: Предприятия», так и между приложениями «1С: Предприятия» и сторонними системами.
    • И еще много интересного


    image
    «1С:Предприятие» — технологии и инструменты

    Вместо заключения


    Надеюсь, у не знакомых с 1С читателей сложилась более-менее ясная картинка – что такое 1С, как она работает и какие возможности она предоставляет разработчикам. За рамками обзора осталось много интересных тем; о них — в следующий раз.

    Платформенно-ориентированный подход к архитектуре приложений был выбран фирмой 1С еще в середине 1990-х. Это своеобразное сочетание мощной платформы и разумно-ограниченного прикладного языка хорошо себя показало – на технологиях 1С создано более 1000 официально сертифицированных фирмой 1С решений для самых разных областей бизнеса, от автоматизации малого бизнеса до систем управления предприятиями с тысячами одновременно работающих пользователей.

    Понятно, что при таком подходе особые требования предъявляются к платформе. При разнообразии поддерживаемых технологий платформа должна обеспечивать быструю и надежную работу прикладных решений. Фирма «1С» уже много сделала в этом направлении, и эта работа продолжается.

    Comments are welcome:)


    Петр Грибанов
    56,00
    Делаем средства разработки бизнес-приложений
    Поделиться публикацией

    Похожие публикации

    Комментарии 160

      –13
      Минусуйте меня как можете, но свое мнение я выскажу. Я ненавижу две компании, это — мейл.ру и 1С.
        +11
        >Я ненавижу две компании, это — мейл.ру и 1С.

        "-А мейл.ру-то за что?
        — Я так и знал, что 1С вопросов не вызовет"
        (ц) почти из анекдота

        Ну что сказать. Говорят, что ненависть все же лучше равнодушия :)
          +3
          очень смело. Но кстати 1С вроде бы ничего плохого никому не делает
            –15
            Нет. Не делает, это действительно так. Но продукты компании 1С сырые, т.е. производительности никакой. ПО никак не оптимизировано. Все программы написаны на тяп-ляп.
            Любой продукт 1С спокойно можно заменить связкой PHP (python, ruby, node.js — неважно) и PostgreSQL. Это даже проще. И работать это будет в разы быстрее, при этом используя намного меньше ресурсов.
              +9
              Для Казахстана сделайте сборочку, пожалуйста, с учетом всех чудачеств наших налоговиков и тп.
                +7
                Ну дерзайте. 1С-мир помнит десятки провалившихся попыток сделать что-то хотя бы близко юзабельное в российских реалиях.
                  +1
                  А ничего что платформа с версии 8.1 поддерживает PostgreSQL? Да и платформа оптимизирована вопрос только с конфигурациями. Но тут уже вопрос к документации и к рукам разработчиков.
                    +5
                    Кажется ранее в других постах вы писали что-то типа «Опять же, быстрее писать сервер на ассемблере, чем на PHP, но жизни не хватит :).».

                    Все, что можно написать на 1с можно написать и на python, ruby, node.js но жизни не хватит. :) В этом и есть основной смысл систем с более высоким уровнем абстракций.
                      +2
                      Любой продукт 1С спокойно можно заменить связкой PHP (python, ruby, node.js — неважно) и PostgreSQL. Это даже проще. И работать это будет в разы быстрее, при этом используя намного меньше ресурсов.


                      Не слышал я про систему, в которой можно сформировать декларацию по НДС, написанную на PHP )
                      Поделитесь ссылкой.

                      Я даже не стану спорить, что это будет работать быстрее. Конечно будет. Как только такое напишут.
                        0
                        Уже написали и вовсю эксплуатируют. У Бухсофта такое есть — в точности по заданным требованиям. :) Только там не среда разработки, как 1С, а именно приложение.
                          0
                          Ок. Как говорится, пусть расцветают сто цветов.
                      0
                      Лично знаю случай когда лично 1С скопировала продукт своего партнера.

                      Так же лично знаю случай когда 1С выкупила у инвестора партнера продукты фирмы и кинув партнера начала продавать под своей маркой эти продукты используя базу клиентов партнера практически уничтожив фирму.

                      1С Предприятие не предоставляет открытого кода, если хотите увидеть пример, смотрите на Unreal Engine 4, там не только в проектах исходники, но и самого движка.

                      Статья изначально заказная и необъективная, автор: «Peter Gribanov
                      Technology evangelist in 1C».

                        0
                        А еще вспомнил, когда 1С выпустил альфа-версию 1С Предприятия 8.0 (даже не бету), они распространили дистрибутивы среди партнеров с тайно вшитыми номерами. Те «добрые души», которые поделились с коллегами дистрибутивом, жестоко поплатились. Им звонли из отдела «К» фирмы 1С, обещали завести уголовные дела, партнеров лишали контрактов, были случаи, что человек тяжело заболел после такого звонка от любимой фирмы.
                          +4
                          А вот вопрос — если они знали, что дистрибутив закрытый и делиться нельзя, даже договор какой-то наверняка подписали — зачем же тогда делились с коллегами в нарушение всех договоренностей?
                            –2
                            о думал вы не заметите моих комментов, вы как еврей отвечаете вопросом на вопрос ))
                            • НЛО прилетело и опубликовало эту надпись здесь
                                –1
                                Собственно вопрос был «1С вроде бы ничего плохого никому не делает», я предоставил факты, дальше сами разбирайтесь в справедливости. Возможно с тех пор 1С изменилась, лично мне все равно.
                                • НЛО прилетело и опубликовало эту надпись здесь
                                    +4
                                    я предоставил факты

                                    Факты на уровне «если кто-то кое-где у нас порой»?
                                    Что за партнер, что за решение?

                                    Так же лично знаю случай когда 1С выкупила у инвестора партнера продукты фирмы и кинув партнера начала продавать под своей маркой эти продукты

                                    Если выкупила — в чем тогда заключается «кидок»?

                                    случаи, что человек тяжело заболел после такого звонка от любимой фирмы

                                    image

                                      –1
                                      видимо у евангелистов 1С свой юмор
                                        0
                                        видимо у евангелистов 1С свой юмор

                                        У меня фраза «были случаи, что человек тяжело заболел после такого звонка» однозначно проассоциировалась с ужастиком "Звонок", афишу которого я и запостил.
                                        Ну, чувство юмора — вещь субъективная.

                                        Ответа на мои вопросы я не получу, как я понял.
                                          –3
                                          Цель обсуждения был ваш пост о 1С Предприятии и компании 1С, не думаю что мой личный опыт будет интересен кому-то на этом ресурсе. Что касается добросовестности ведения бизнеса со своими партнерами отдавшими время, так же решает для себя руководство данной компании. Возможно это обусловлено традициями российского бизнеса или чем-то другим, остается только догадываться.
                                          Удачи.
                                            +4
                                            Выходит, обвинения ваши голословны. Давайте мы тогда добросовестность бизнеса будем обсуждать с теми, кто сам ведет себя этично. Этот пост про технологии, если вы можете что-то сказать по существу, а не только переходить на личности и троллить по профилю в линкедине — говорите, не можете — тролльте где-нибудь в другом месте.
                                  +1
                                  Вы таки антисемит? )
                                    –1
                                    считайте что я против компаний кидающих своих партнеров
                                      +1
                                      Ситуация: Я даю Вам, как хорошему знакомому (но не другу) некую штуку, над которой долго работал и которая должна принести мне денег. Допустим, программу, почему нет. Говорю: «Вася, зацени, какая вещь! Только не давай никому это секрет!». Вася соглашается, а потом тут же сливает этот секрет Пете. Я обижаюсь и подаю на Васю в суд. Вася пишет в интернете, что «Я его кидаю», хотя кинул (обманул) как раз он. Где логика?
                                        –1
                                        Насчет распространения согласен с вами что это не хорошо, просто мне не понравились «чикистские» методы компании. Интереснее то что я описал перед случаем про альфа версию.
                                          +1
                                          Чекистские, это если бы приехали люди в погонах.
                                          А исходя из того что вы описали, компания повела себя вполне достойно.
                                            –2
                                            «компания повела себя вполне достойно» — в будущем нет места таким достойным компаниям.
                                            • НЛО прилетело и опубликовало эту надпись здесь
                                                0
                                                Нокия тоже цвела и пахла… поживем увидим
                                                • НЛО прилетело и опубликовало эту надпись здесь
                                                    0
                                                    ой ли? 50% в среднем бизнесе у SAP вроде как? про малый ничего не могу сказать
                                                    • НЛО прилетело и опубликовало эту надпись здесь
                                                        0
                                                        У вас прямо как на российских выборах. А пруфлинк можно на 99.99%?
                                                        0
                                                        Про крупный рынок сказать проще — там много исследований проводится.
                                                        По количеству внедрений (информация от TAdviser) на 2015 год картина такая:
                                                        image

                                                        Если мерять по деньгам — картина несколько другая, т.к. внедрение SAP стоит сильно дороже внедрения 1С. Сходу нашел только за 2013 год в РБК (повторюсь, это объем в деньгах! не в количествах внедрений или рабочих мест):
                                                        image

                                                        По малым внедрениям статистики быстро найти не смог.
                                                          +1
                                                          Тут следует заметить, что везде, где стоИт сап или аксапта — также стоИт и 1с :)
                                                            0
                                                            И перегружают их SAP в 1С, чтобы сдать отчетность, видели такое, ага.
                                                              0
                                                              Самое крутое, что я видел — перегрузка их DAX в 1С: УТ, там расчет себестоимости, а потом оттуда — в бухгалтерию для сдачи отчетности. Крупный интернет-магазин бытовой техники и электроники.
                                                                0
                                                                Скажите, а это ваша http://kb.mista.ru/article.php?id=632 статья?
                                                                  0
                                                                  Да. Была актуальна в 2008 году :)
                                                                  Сейчас нужно несколько меньше доп. движений.
                                                                    0
                                                                    Тогда я не пристаю?
                                                                    Просто вы не ответили в личку и я думал мож не увидели сообщение.
                                +2
                                1С Предприятие не предоставляет открытого кода, если хотите увидеть пример, смотрите на Unreal Engine 4, там не только в проектах исходники, но и самого движка.


                                Отнюдь. Типовые конфигурации от 1С идут с открытым кодом. Вы можете допиливать их по своему усмотрению. И в них как раз запрограммирована вся бизнес логика продукта. Что же касается самой платформы 1С: Предприятие, то это распространненая мировая практика — исходников от движков MS Axapta или SAP R3 вы тоже не найдете.
                                  0
                                  Ну евангелисты фирм SAP и Axapta же не заявляют что они Open-Source ))
                                    +1
                                    В статье, я вижу, все четко написано
                                    Бизнес-приложения, созданные с помощью технологий «1C: Предприятия» — это системы с открытым прикладным исходным кодом, написанным на проприетарном языке...

                                    А open-source он разный бывает (из-за ньюансов в лицензиях)
                                      0
                                      Ключевое слово прикладным. Про открытый системный код, он же код платформы — никто не говорил :)
                                  +1
                                  >Статья изначально заказная и необъективная, автор: «Peter Gribanov Technology evangelist in 1C».
                                  Что статья опубликована в блоге компании 1С — вас не смутило? ;)
                                    –5
                                    А вас не смутило что евангелист компании 1С вводит в заблуждение читателей Хабра?
                                      +3
                                      Где именно ввожу в заблуждение?
                                    +2
                                    Для общего развития не подскажите, что такого скопировала 1С у своего партнера (название у пострадавшего продукта есть)?
                                  +4
                                  А аргументация есть? Или просто беспричинная ненависть?
                                    0
                                    Про 1С увидел Ваш ответ.
                                    А mail.ru?
                                      –1
                                      А мейл.ру просто занимается некрасивыми вещами. Лично у меня это вызывает отвращение. Они делают PR не правильно. (тоже на тяп-ляп). Они не хотят сделать нормальную рекламу. И вместо этого распространяют вирусный (он действительно вирусный) софт. Навязывают свои услуги и лишают возможностью пользоваться услугами конкурентов (это называется монополия). Даже если просто взять игры. Хорошие игры, в которые разработчики вложили много времени и сил. Мейл.ру покупает эти игры под предлогом интернет-гиганта и выкачивают деньги из обычных людей. Мне не нравится такая компания. В любом случае, все вышесказанное мною — мое личное мнение и я никому его не навязываю.
                                        +1
                                        Ну вирусным (или около того) софтом грешит не только mail.ru… Как пример — Яндекс, при установке приложения Яндекс.Погода, засовывающий свою поисковую строку в шторку статус-бара…

                                        А что Вы имеете в виду под навязыванием своих услуг? Новый для меня аргумент в контексте «mail.ru»
                                          0
                                          Хотя справедливости ради, надо отметить, что теперь Яндекс спрашивает, включить или нет.
                                          Раньше просто включал.
                                            0
                                            Ну Яндекс в этом плане дети.
                                    +6
                                    Из статьи я с радостью узнал, что 1С таки выпустила IDE на базе Eclipse. Слышал я про неё ещё лет 5 назад, но наконец-то сделали. Только Eclipse на сегодняшний день активно теряет популярность, а не активно используется.

                                    Автор сравнивает JavaScript и язык 1C – это жуткое сравнение. Ещё с давних времён известно, что «1С – это бейсик переведенный промптом». Вы не знаете, что такое JavaScript. Не сравнивайте эти 2 языка, пожалуйста.

                                    Не используйте слово функционал. От него меня коробило. Хотя это почему-то свойственно в презентациях и статьях об 1С использовать «функционал» вместо «функциональности».

                                    P.S. А вообще к 1С: Предприятие у меня положительное отношение, так как эта система хорошо подходит для тех задач, для которых была сделана – ERP-системы и всякое.
                                      0
                                      >Из статьи я с радостью узнал, что 1С таки выпустила IDE на базе Eclipse. Слышал я про неё ещё лет 5 назад, но наконец-то сделали.
                                      Вроде в апреле писали, в блоге Инфостарта: habrahabr.ru/company/infostart/blog/255757

                                      >Автор сравнивает JavaScript и язык 1C – это жуткое сравнение. Ещё с давних времён известно, что «1С – это бейсик переведенный промптом».
                                      Это ваше мнение. У вас есть на него право.
                                      А у меня — на своё.
                                      Помнится как-то 2 лет… цать назад моих приятеля поспорили — на что похож только что вышедший .NET. Один утверждал — что на Java, другой — что на Delphi. Что было мне им сказать? «Вы оба правы» (ц). Особенно с учетом того, что архитектор Delphi как раз был сманен Microsoft-ом в проект .NET.

                                      >«переведенный промптом»
                                      Можно выбрать английский синтаксис и наслаждаться языком Шекспира в подлиннике.

                                      >Вы не знаете, что такое JavaScript. Не сравнивайте эти 2 языка, пожалуйста.
                                      У меня есть опыт коммерческой разработки на JavaScript, если что.
                                      А еще — на Delphi, С++, Java и много на чём еще.
                                      Это не хвастовства ради, поймите правильно.
                                      ru.linkedin.com/pub/peter-gribanov/3/885/791
                                        +3
                                        Прошу прощения, что я грубо написал. Это скорее не с вашим текстом связано, а с моим внутренним состоянием.

                                        Но сравнение с JavaScript всё-равно считаю диким. Ну а наследования в 1С можно считать, что нет, ну и не наследованием единым жив JavaScript, а скорее асинхронностью и функциональностью. Если асинхронность какая-то и есть в 1С, то пишется она там очень криво.
                                          +3
                                          Это ваше мнение. У вас есть на него право.
                                          А у меня — на своё.


                                          А все-таки, не могли бы вы раскрыть мысль про схожесть синтаксиса 1С и JavaScript? (я 1С-ник, если чо)

                                          сравним:

                                          for(i = 0;i<10;i++)
                                          {
                                             if(i % 2 == 0)
                                             {
                                                // do smth
                                             }
                                          }


                                          For i = 1 To 10 Loop 
                                             If i % 2 = 0 Then
                                             
                                                // do smth
                                             EndIf;
                                          EndLoop;


                                          Второй кусок написан на 1С. От бейсика не отличишь, а от JS — запросто. Вы какую именно похожесть языков имели в виду?
                                            –1
                                            Я не про синтаксис, а про концепцию.
                                            На мой взгляд, писать "{" или loop — вопрос непринципиальный. Как и всё, что решается более-менее интеллектуальным search-n-replace.
                                            Я про отсутствие наследование вообще в VB и присутствие его в ограниченном виде в 1С (как и в JavaScript, хоть и в несколько другом виде).
                                              0
                                              В VB есть наследование определений (интерфейсов). Наследования реализаций нет.
                                                +1
                                                по синтаксису напоминает больше всего JavaScript

                                                Вот прямая ваша цитата. Синтаксис — это как раз операторные скобки. А наследование и типизация — это уже особенности самого языка, а не его синтаксиса.
                                                  0
                                                  А ничего что на 1С конструкция другая?

                                                  For i = 1 To 10 Do 
                                                     If i % 2 = 0 Then
                                                     
                                                        // do smth
                                                     EndIf;
                                                  EndDo;
                                                  


                                                  Да и в первом блоке это С синтаксис.
                                                    0
                                                    Какой еще loop? правильно вообще-то Do
                                                      0
                                                      В данном случае не суть важно. Речь же не о том, чтобы этот кусок прошел синтаксический контроль, а в том, чтобы показать визуальное различие.
                                                  –2
                                                  просто ради интереса, почему у вас в Linkedin указан только англ. яз. и все на английском? в РФ бизнесе русский яз. считается позорным? интересно узнать вы занимаетесь английскими решениями 1С?
                                                    0
                                                    почему у вас в Linkedin указан только англ. яз. и все на английском?

                                                    Честно говоря — не успел еще перевести на русский.
                                                    Раньше работал в основном в западных компаниях, поэтому русский на ЛинкедИне был без надобности.
                                                    Да и русскоговорящих в ЛинкедИне пока мало (3% кажется).
                                                    Кстати спасибо за напоминание — добавил «русский» в список языков.

                                                    в РФ бизнесе русский яз. считается позорным?

                                                    Ну а мы с вами на каком языке сейчас общаемся? :)

                                                    интересно узнать вы занимаетесь английскими решениями 1С?

                                                    Нет, этим занимаются другие сотрудники.
                                                +2
                                                А ещё смешно читать пункт «Язык обладает полнотой по Тьюрингу.» Это вы шутите так или это такое качество, которые выводит язык 1С на какой-то определенный уровень?

                                                Английские названия ключевых слов в языке не используются, потому что полностью отсутствуют библиотеки для английского языка (БСП, например), а делать солянку из двух языков никто не будет. Поэтому де факто используются только русскоязычные варианты ключевых слов. И возможность писать на английском тут сомнительная.

                                                Встроенные типы данных в 1С бедные. Например, нет регулярных выражений, а писать внешние компоненты для 1С – это не уровень большинства программистов 1С (писать приходится dll, используя не самую приятную библиотеку на чистом C), что тоже сильно усложняет разработку.
                                                  0
                                                  >А ещё смешно читать пункт «Язык обладает полнотой по Тьюрингу.» Это вы шутите так или это такое качество, которые выводит язык 1С на какой-то определенный уровень?

                                                  Просто факт о языке.

                                                  >Английские названия ключевых слов в языке не используются, потому что полностью отсутствуют библиотеки для английского языка (БСП, например)
                                                  Вроде есть: 1c-dn.com/developer_tools/1c_subsystems_library

                                                  >Встроенные типы данных в 1С бедные. Например, нет регулярных выражений,
                                                  «Проблемы в проекте начинаются, когда программист говорит — о, я знаю, как это сделать на регулярных выражениях!» (ц)
                                                  Ну а если серьезно — да, регулярных выражений иногда не хватает. Но, на мой взгляд, это не слишком критичная проблема (возможно, я не прав).

                                                  А что касается «бедных встроенных типов данных» — чего конкретно не хватает для работы?
                                                    0
                                                    А ещё языке запросов 1С существует функция ЕСТЬNULL (да, именно так!), при использовании которой каждый раз приходится плакать горючими слезами от осознания абсурдности происходящего, переключать раскладку и писать допустимый языком полностью англоязычный аналог ISNULL, который всё равно потом автоматически превращается в ЕСТЬNULL конструктором запросов.
                                                      0
                                                      Поставьте уже раскладку для разработчика. Лично я пользуюсь раскладкой Павла Чистова: 1c.chistov.pro/2012/11/1.html, очень удобно.
                                                        0
                                                        А к клиенту вы тоже со своей раскладкой ходите? :)
                                                          +1
                                                          Я не программирую у клиента :) В крайнем случае — на своем ноутбуке. У клиента можно показать, как это работает, запустить скрипт, который .cfu накатит (хотя это должен сам клиент делать по клику из программы), пообсуждать задачи, порисовать скетчи интерфейсов.
                                                    0
                                                    Ну вот когда появятся нормальные гайды по доступному функционалу, СКД и УФ?! Книги авторства Радченко в топку! Когда будут объёмные конференция масштаба InfostartEvent? Когда разработчики пишущие на 1C получат нормальный подстрочник не только на русском? Когда можно будет обратиться к документации, а не искать примеры в типовых коробках? Когда?..
                                                      0
                                                      Для вашего ника комментарий скорее позитивный :)

                                                      >когда появятся нормальные гайды по доступному функционалу, СКД и УФ?!
                                                      а что в вашем понимании «нормальные гайды»? Чтобы понимать, с чем сравнивать.

                                                      >Когда будут объёмные конференция масштаба InfostartEvent?
                                                      Надеюсь, со временем появятся.
                                                      Кстати: «Приходите на „Открытое воскресенье“ 4 октября. Впервые не только для партнеров 1С»
                                                      Да и Инфостарт — компания 1С не совсем чужая.

                                                      >Когда разработчики пишущие на 1C получат нормальный подстрочник не только на русском?
                                                      А тут о чем, можно пример? Про подстрочник — я видимо не в теме.

                                                      >Когда можно будет обратиться к документации, а не искать примеры в типовых коробках?
                                                      Хороший вопрос, согласен, примеров в документации не хватает, работаем в этом направлении.

                                                        0
                                                        Это вы хорошо (на счет конференции), только почему онлайна нет? Или я плохо искал?
                                                        Если уж открытая, то таки делайте открытую, а не только для жителей Москвы и пригорода.
                                                          0
                                                          Онлайна нет, запись постараемся выложить.
                                                          0
                                                          > а что в вашем понимании «нормальные гайды»? Чтобы понимать, с чем сравнивать.
                                                          Для примера: Керниган / Ричи «Язык C», Бьерн Страуструп «Язык программирования С++» и т.п. книги описывающие особенности языка

                                                          > А тут о чем, можно пример? Про подстрочник — я видимо не в теме.
                                                          Автозавершение кода =) Да и по свёртке кода вам есть куда расти, к примеру свертка конструкции «If..Then-IfEls-Else-EndIf» — необходима свертка не по операторным скобкам «If-EndIf» а по блокам.

                                                          > Надеюсь, со временем появятся.
                                                          Только не забываете что есть люди как за МКАДом так и за пределами РФ: Казахстан, Беларусь Украина.
                                                            0
                                                            А что не хватает в текущей документации?
                                                            Не надо говорить про СКД и XDTO (про это и так понятно) :(
                                                            Речь про остальное. Оценивается свежая относительно версия документации, которая сейчас на ИТС.
                                                            0
                                                            Мобильной платформе больше года уже, а литературы до сих пор нет.
                                                              0
                                                              Есть две книги

                                                              v8.1c.ru/metod/books/book.jsp?id=450
                                                              v8.1c.ru/metod/books/book.jsp?id=460

                                                              С учетом того, что мобильная разработка использует те же понятия и инструменты, что и настольная, огромного количества литературы, кажется, не требуется.

                                                              Вы напишите. что было непонятно, возможно, где-то можно будет поправить или дополнить документацию.
                                                                0
                                                                Мне, если честно, не очень понятно, почему я должен платить за мануалы.
                                                                  +1
                                                                  Вы писали не про руководства, а про литературу. Вы же не удивляетесь, что Вам предлагаю купить, например, www.microsoftpressstore.com/store/adaptive-code-via-c-sharp-agile-coding-with-design-9780735683204, в дополнение к MSDN.

                                                                  На мой вопрос, чего Вам не хватает в официальной документации, Вы не ответили.

                                                                    0
                                                                    Встречный вопрос — можно ли освоить мобильную разработку, пользуясь только Синтакс-помощником и диском ИТС?

                                                                    По поводу Microsoft: совершенно не удивлён, но это не значит, что брать с них пример — хороший тон.
                                                                      0
                                                                      А почему нет? Предполагается, что можно. Если у Вас есть замечания, что конкретный вопрос не описан — пишите.
                                                                        0
                                                                        Уточню: так же как со спецификой СУБД, со спецификой мобильной ОС нужно разбираться самостоятельно. Но вся информация по Платформа 1С: Предприятие быть должна
                                                              +2
                                                              Профессиональная разработка в системе 1С: Предприятие 8" (+DVD-ROM). Издание 2
                                                              По моему отличный настольный справочник. Хотя в 90% случаем встроенной справки достаточно.
                                                                0
                                                                Он далеко не полный. Ньюансов построения сложных отчетов с графикой и т.д. там нет. Использование механизма «Универсальный отчет» там тоже нет. Геокарты туда же. Бизнес-процессы, мобильные приложения, технологический журнал, особенности использования отдельных СУБД и т.д.
                                                                  0
                                                                  Геокарты используются очень редко.
                                                                  По бизнес-процессам там есть. И не только там.
                                                                  Про мобильные приложения есть книжка. Но она устарела, платформа активно развивается.
                                                                  Про технологический журнал и особенности использования есть книжка «Настольная книга 1С: Эксперта».

                                                                  Главное — хотеть найти.
                                                                    0
                                                                    Ну так есть и Infostart, есть и Миста, есть и обучающие центры, в которых на вопросы, чуть глубже методички, красиво улыбаются.
                                                                    Вопрос в отношении разработчика к его сообществу.
                                                                      0
                                                                      Геокарты используются очень редко.


                                                                      Они именно потому редко и используются, что мануалов нет. Почему я должен тратить своё рабочее время на разработку методом научного тыка?

                                                                      Почему я должен выискивать информацию на сторонних сайтах, за достоверность которой не отвечают сотрудники фирмы 1С?
                                                                  0
                                                                  Подсказка. Нормальные гайды снижают доходы интеграторов и консультантов.
                                                                  • НЛО прилетело и опубликовало эту надпись здесь
                                                                      0
                                                                      Вы хотя бы примерно представляете себе объём выручки системных интеграторов за консультирование?
                                                                      • НЛО прилетело и опубликовало эту надпись здесь
                                                                          0
                                                                          То есть и зарплата тоже одна из самых низких? И как вы привлекаете специалистов, конкурируя с такими вендорами, как SAP, Oracle, Microsoft, IBM?
                                                                          • НЛО прилетело и опубликовало эту надпись здесь
                                                                              0
                                                                              В качестве комментария, не для бурного спора :)
                                                                              Лично знаю минимум двух людей, которые имеют вполне неплохие скиллы (на мой взгляд) и в 1С и в САПе :)
                                                                      +2
                                                                      Это достаточно распространенное заблуждение.
                                                                      Отсутствие нормальной документации существенно увеличивает затраты на поддержку. Кроме того, становится непонятно, откуда консультанты и интеграторы получат знания, на которых они будут зарабатывать деньги. Это ведь не тайные заклинания, которые передаются из уст в уста от отца сыну. Консультантов много, да и просто пользователей немало.
                                                                        0
                                                                        Это не заблуждение, так устроен корпоративный рынок. И ситуация тут значительно отличается от рынка B2C и даже МСБ. Доход от поддержки и внедрения ПО составляет значительную часть корпоративного рынка. Знания передаются именно так, почти что «из уст в уста». Полученный опыт на проектах конвертируется в кэш.
                                                                          0
                                                                          Хорошо. Давайте рассмотрим пример: выходит платформа 8.3.6 (всего там 153 изменения). Здесь и далее я говорю только о платформе, прикладные решения буду игнорировать, т.к. что-то знаю только о платформенной документации.
                                                                          Откуда вы узнаете, что нового в этой платформе?
                                                                          А подробности откуда узнаете? Т.е. вот все эти новости вы узнаете пытливо тыкаясь в разные места платформы и составляя персональный список отличий?
                                                                          А вот теперь консультант, он откуда узнал про новые возможности? Для определенности — консультант консультирует по особенностям применения платформы, его клиент — компания с инхаусной разработкой (уровень неважен).
                                                                          И еще — говоря о корпоративном рынке, мы говорим о чем? О внедрении [относительно] типового продукта (с подходящей и соответствующей функциональностью) или заказной разработке?
                                                                              +1
                                                                              Я знаю, что и где у нас лежит :)
                                                                              Но ведь эта ссылка противоречит утверждению о том, что мы стараемся не писать нормальных гайдов? Или речь о чем-то другом?
                                                                              0
                                                                              Описание «что нового в новой версии» не является гайдом (руководством) в моём понимании, это просто перечень новых функций. А как их использовать — уже руководство. Так вот, если написать подробные и качественные руководства, труд консультанта станет дешевле, т.к. с внедрением сможет справиться in-house команда. Так устроен, например, рынок SAP. Руководства покрывают примерно треть потребности, ещё примерно треть можно получить на очень недешёвых тренингах и в книгах. И остальная треть, за которую платят больше 1000 евро в день, добывается опытом и внутриконсалтерской передачей знаний.
                                                                                0
                                                                                Т.е. работу (например) с push-уведомлениями в мобильной платформе надо изучать полностью самостоятельно, по наитию? Описание планировщика (который новый объект для этой платформы) — оно тоже методом научного тыка осваивается?
                                                                                Я уже задавал вопрос, повторю еще раз — можете привести конкретные примеры плохой документации к платформе (кроме СКД и XDTO) и того, чего вам в ней не хватает?
                                                                                  0
                                                                                  А разве я говорил, что 1С плохо документирована? Скорее, наоборот.
                                                                                    0
                                                                                    depresnjak: Ну вот когда появятся нормальные гайды по доступному функционалу, СКД и УФ?!

                                                                                    khorpyakov: Подсказка. Нормальные гайды снижают доходы интеграторов и консультантов.

                                                                                    Это надо воспринимать именно как характеристику нормальной документированности?
                                                                                    Странно получается…
                                                                                      0
                                                                                      Гайды (от англ. guide — руководство) — это полезные статьи, где описан какой-то важный аспект или явление


                                                                                      А теперь в студию гайд по «Языку запросов» (пример: особенность работы с переменными примитивного типа «Текст»), объектам HTML/XML-документ, работой с «ТабличныйДокумент»/«ТектстовыйДокумент» с описанием всех событий/методов и их практическим применением, перебор/программное создание Excel/Word/OOo средствами платформы и т.д. и т.п.

                                                                                      Если под документацией понимать «Синтаксис помощник», то не льстите себе. Как быстрый лист тезисов, то да — можно использовать, и эволюция в сравнении с 7-кой чувствуется, но до такого же качества и доступности как у Ричи/Страуструпа/Кнута/Таненбаума вам далеко. И ИТС далеко не панацея.
                                                                                        +3
                                                                                        Начнем с конца :) Извините, получится много буков :)
                                                                                        Я, конечно, очень давно читал и Ричи и Страуструпа, но что-то не припомню, чтобы эти уважаемые господа описывали в своих книгах стандартную библиотеку языка Си. Описывался только язык и минимум «обвеса», чтобы показать, как язык функционирует. А вот описание используемой стандартной библиотеки (фреймворка) — это слегка отдельные мануалы.
                                                                                        Возвращаясь к платформе. Здесь есть достаточно четкое разделение документации на две части: это описание механизмов, их устройства, типовых применений и особенностей, и описание собственно фреймворка 1С: Предприятия. Первое — это то, что называется «Руководствами ...» и выходит отдельными книгами. Второе — это синтакс-помощник и живет «внутри» любого конфигуратора. При этом руководства не ставят своей целью исчерпывающе описать весь фреймворк, т.к. это не кажется нужным. Например не видно особого смысла описывать ТекстовыйДокумент в объеме, превышающем то, что есть в СП. Там нет каких-то «интимных» подробностей, которые нужны для понимания работы механизма. При этом очевидно, что программная работа с документами офисных пакетов не имеет вообще никакого отношения к собственно платформе «1С: Предприятие». Ведь вы же не считаете, что нам в документацию надо включить примеры работы с OpenXML (касаемо документов Ворда, например) в объеме, достаточном для понимания этого адского языка?
                                                                                        В тоже время, описания [относительно] сложных механизмов, начиная с каждого «класса» объектов и заканчивая такими монстрами, как разделение данных, приводится в документации именно в варианте, пригодном для изучения: для чего этот механизм, как он устроен, как его применять. Разные разделы имеют разную детальность, т.к. документация развивается примерно с версии платформы 8.0 (сейчас 8.3) и «старые» разделы могут существенно не модернизироваться (без существенной нужды). При этом при развитии тех или иных механизмов, документация к ним переписывается и развивается. Изменяется и сам подход к наполнению и формированию документации. Так, в прежних версиях платформы, документация была достаточно статичной, но «в помощь» к ней на ИТС публиковались различные методические статьи, которые, по сути, дополняли документацию. Начиная с 8.2 документация перестала быть статичной и стала развиваться вместе с платформой, изменяясь и совершенствуясь вместе с ней. Если к 8.2.19 руководство разработчика занимало примерно 1400 страниц (формат А5), в 8.3.5 это уже примерно 1800 страниц, а в 8.3.7 — это примерно 2100 страниц.
                                                                                        Все вышесказанное не означает, что объем, качество и стиль документации мы считаем абсолютно нормальным и не требующим доработки и совершенствования. Такая работа постоянно идет, причем она идет не только из-за того, что меняются механизмы платформы, но и потому, что партнеры, использующие платформу, сообщают о каких-то проблемах в документировании механизмов. К таким изменениями можно отнести и изменения файла со списком изменений (что можно считать третьей частью документации) и появление в документации новых разделов.
                                                                                        Теперь касаемо изначального вопроса про язык запросов. Пожалуйста: Глава 8. Работа с запросами (нужен логин/пароль на ИТС или можно открыть себе демо-доступ на 2 недели на самом сайте). Это именно гайд по запросам. С описанием языка, синтаксиса, примеров (не факт, что очень подробными, это да).
                                                                                        Подытожу в качестве резюме: документация — это не застывшая конструкция и она состоит из нескольких частей, дополняющих другу друга. Мы не считаем, что документация является идеальной и постоянно работаем над ее улучшением. Нам, безусловно, важно понимать, какие места в документации являются проблемными и понимать, как и куда их надо улучшать, однако, мы хотим (уж извините) видеть конкретные проблемы, а не общие слова «как все плохо».
                                                                                        Как-то так :)
                                                                                          0
                                                                                          А куда можно сообщать об ошибках в Синтакс-Помощнике? Речь идёт не об опечатках, а о грубых несоответствиях заявленного в документации с реальностью.
                                                                                            0
                                                                                            v8@1c.ru
                                                                                            Только вначале убедитесь, что версия платформы совпадает с версией документации.
                                                                      0
                                                                      В середине октября и будет масштабная конференция Инфостарт.
                                                                      ИМХО это намного полезнее и веселее, чем официальные семинары от 1С
                                                                        0
                                                                        ИМХО мероприятия для разных аудиторий и с несколько разными целями.
                                                                          +3
                                                                          PeterG надеюсь это вводная статья и будут продолжения — а наличие корпоративного блога на HabraHabr это на наш взгляд правильно, с другой стороны аудитория HabraHabr ждет чуть более технологичных статей, на мой взгляд.
                                                                            +1
                                                                            Алексей, продолжение будет, конечно. И более технологичное.
                                                                            Спасибо за позитивное мнение)
                                                                          0
                                                                          Веселее точно, проверено)) А уровень пользы каждый для себя сам определяет.
                                                                          +2
                                                                          PeterG к вопросу о будущих статьях — нам тут соседи (люди с соседних технологий) задают не совсем удобные вопросы, есть большая просьба сформировать какую-то позиции от компании в части некоторых особенностей

                                                                          Например — нам уже год ставят «в пику», что мы не используем apache 2.4, а адаптер все также существует только к 2.2. И никак не можем сделать адаптер под Apache 2.4.

                                                                          Ну и конечно про автоматизированная проверка качества платформы 1С — самой платформы 1С имеется ввиду, с конечными решениями проблем нет (точнее есть — но там у нас есть наработки).

                                                                          Причем обеспечение качества с учетом linux — очень много артефактов выявляется которые можно было закрыть автоматизированно до выхода релизов. Я думаю это было бы полезно ХабраСообществу — как правильно обеспечивать качество C++ решения в условиях кроссплатформенности и массовости использования.
                                                                            0
                                                                            А зачем вам 2.4? Позвольте спросить.
                                                                            На 2.2 все стоит отлично, и совсем ничего страшного, что сама апач прекратила выпускать готовые билды, а все программы которые идут с билдами апача — юзают 2.4.
                                                                            И даже 1С не компилирует сама билды и не выставляет их у себя на странице софта :)

                                                                            Так что народ качает откуда попало и что попало, потом данные утекают, базы работают через веб криво, а все потому что админ не нашел апач 2.2 в релизах и скачал бог знает какой билд и бог знает где :)

                                                                            Так что вернусь к вопросу — зачем вам апач 2.4? Юзайте IIS :)

                                                                            З.Ы. Если что, это был сарказм
                                                                            З.З.Ы. сам очень жду этого подвига, и боюсь не я один, особенно в свете описанных событий :)
                                                                              +1
                                                                              Да мне то как бы не очень нужно, если только в порядке борьбы за всеобщее счастье.

                                                                              С другой стороны у нас тут противоречие с инфраструктурщиками вышло.

                                                                              В той же ubuntu 14.04 LTS с тем самым longtime support стабильная версия по умолчанию 2.4 (2.4.7) packages.ubuntu.com/trusty/apache2

                                                                              А 2.2 был пакетом по умолчанию еще в 12.04

                                                                              Я уже не говорю про CentOS — в их попытке ускорить график релизов и успевать за RedHat там тоже в версии CentOS 7 (1503) apache также 2.4, на сегодня кстати 2.4.6 (не успевают кстати за Ubuntu)

                                                                              И в итоге у меня нет ответа администраторам — правда на их стороне: действительно ведь 2.4 теперь дистрибутив по умолчанию.

                                                                              Что касается IIS… даже не буду ничего говорить. Пусть кто-нибудь другой его использует.



                                                                              • НЛО прилетело и опубликовало эту надпись здесь
                                                                                  0
                                                                                  Конечно ;-) А что тут такого?
                                                                              0
                                                                              Алексей, постараемся.

                                                                              Традиционно 1С делится планами на партнерских семинарах.
                                                                              Уже писал, что в этот раз в рамках семинара будет "Открытое воскресенье", если у вас есть возможность — приходите.
                                                                                0
                                                                                Обязательно, лучше того, я буду и на «закрытой» субботе.
                                                                              0
                                                                              Почему у 1С нет аккаунта на Github?
                                                                                +1
                                                                                Вообще-то есть: github.com/1C-Company. Его вместе с CTP новой IDE создали.
                                                                                Но тут вопрос скорее в том, что вы ожидали там увидеть.
                                                                              0
                                                                              При чём тут тег «1с-битрикс»? Ни слова в статье не сказано.
                                                                              Зашёл в статью, ибо волею судеб приходится пилить кривожопый проект на этой cms.
                                                                                –4
                                                                                1с и битрикс, это как запорожец и ока причём второе ещё как то можно отрихтовать, а вот про первое не знаю…
                                                                                  0
                                                                                  не знаю, зато говорю, расклеиваю ярлыки и вообще всячески осуждаю.
                                                                                +2
                                                                                Поздравляю! Наконец-то! Молодцы! Так держать!
                                                                                  0
                                                                                  Спасибо!
                                                                                  0
                                                                                  Негодования по поводу 1С еще более живучие, чем шутки про php…
                                                                                    0
                                                                                    А скажите, плиз, в 8.3.6 отказоустойчевый сервер перестанет отказывать?
                                                                                    И почему вы выбрали именно такой путь с лицензирования? а именно, что нельзя использовать два сетевых пользовательских ключа одинакового типа?
                                                                                      0
                                                                                      А скажите, плиз, в 8.3.6 отказоустойчевый сервер перестанет отказывать?

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

                                                                                      И почему вы выбрали именно такой путь с лицензирования? а именно, что нельзя использовать два сетевых пользовательских ключа одинакового типа?

                                                                                      Тут, боюсь, не смогу вам ответить сразу, надо проконсультироваться с командой. Чтобы не было недопонимания — можете дать ссылку на описание схемы лицензирования, про которую вы пишете?
                                                                                      И сразу оговорюсь — не могу обещать, что исчерпывающе отвечу на ваш вопрос, в том числе и по соображениям возможной конфиденциальности.
                                                                                        0
                                                                                        Возможно не лучшая ссылка, но смысл вопроса и «боли» думаю будет понятен its.1c.ru/db/metod8dev/content/3596/hdoc
                                                                                        Сервер может иметь соединение только с одним сетевым ключом одной серии. При исчерпании лицензий в одном сетевом ключе поиск в сети других ключей той же самой серии не выполняется.

                                                                                        т.е., найдя сетевой ключ, например, на 100 пользователей и использовав его полностью, даже при наличии в сети еще одного ключа на 100, он его не будет использовать :( дальше ему подавай на 300 или 500 пользователей уже.

                                                                                        И теперь представьте, что лучше: если иметь 5 ключей по 100 и один из 5 вдруг сломается. Или 1 на 500, и он вдруг сломается?
                                                                                          +1
                                                                                          Понял, спасибо.
                                                                                          Смогу вам развернуто ответить в начале след. недели, когда у меня будет шанс поговорить с командой лицензирования.
                                                                                          Извините за задержку — сейчас и у меня и у них плотный график :(
                                                                                            0
                                                                                            нельзя использовать два сетевых пользовательских ключа одинакового типа

                                                                                            Коллеги подсказали — это поведение связано с техническими ограничениями драйвера ключа (производитель Aladdin, ныне — SafeNet). Обойти это ограничение, к сожалению, нельзя.
                                                                                        0
                                                                                        1с — это среда для разработки приложений. Автор абсолютно правильно позиционировал этот продукт. Исключение составляет пожалуй только 1с-Бухгалтерия.

                                                                                        Но ситуация в том, что сама же компания 1с свои некоторые платформы для разработки позиционирует как ПРОДУКТЫ. Фактически вводя клиентов в заблуждение. Люди покупают фактически платформу (это касается и УПП, да и 1сERP тоже), а потом они сталкиваются с реальностью.

                                                                                        К ним приходит франчайзи и говорит «Скажите, что вам надо и вам напишем». В результате клиент изобретает велосипед ГОДАМИ, причем в большинстве случаев безуспешно. Планирования производства нормального как не было, так и нет, но года потрачены, куча денег тоже.
                                                                                          0
                                                                                          Есть платформа для разработки прикладных решений и есть программные продукты, написанные на этой платформе. Второе не может существовать без первого, но это, все-таки разные продукты, которые развиваются по своим планам и законам.
                                                                                          Люди покупают не платформу для разработки, а продукт, который им нужен. Что они с ним будут делать — это отдельный вопрос. Они могут сами (или с чьей-то помощью) доработать продукт под себя. Могут пользоваться таким, как он есть, доработать себя под продукт.
                                                                                          При этом клиент может понимать, что он хочет, а может — не понимать. Результат зависит от квалификации как клиента, так и франчайзи. Иногда клиент сам виноват в том, что годами изобретается велосипед, иногда не виноват, а такое изобретательство ему предлагается франчайзи или собственным отделом разработки, которому надо доказать свою нужность (например).
                                                                                          Адекватность моделей, заложенных в прикладные решения, реальной жизни, как мне кажется, для данной статьи является полным оффтопиком, т.к. статья не об этом. Да, у пользователей и внедренцев всегда есть «обида» на прикладное решение, которое не имеет реализации какого-то отличного механизма или процесса. Но «статью про 1С для людей, с 1С незнакомых, статью, которая показывает, какое место 1С занимает в ряду аналогичных программных продуктов.»
                                                                                            0
                                                                                            Это стандартные слова про то, что клиент идиот и сам не понимает, чего хочет. Классическая отмазка.
                                                                                            «Могут пользоваться таким, как он есть». Им нельзя пользоваться, как есть. По той простой причине, что он попросту не способен удовлетворить даже малейшие требования. Поговорите с производственниками, поговорите с логистиками, поговорите с финансистами. Куда ни посмотри, все пользуются экселем. Но вроде 1с внедрена.
                                                                                              0
                                                                                              Это не стандартные слова, а фактическое состояние вещей. Более того, аналогичные слова можно сказать про любую систему автоматизации чего угодно. Особенно, если есть желание эту систему выставить в неприглядном для клиента виде.
                                                                                              Более того, я практически уверен, что вы можете привести развернутые и аргументированные тезисы в защиту своих слов, но это оффтопик (в данной теме) :)
                                                                                              Очевидно, что чудес не бывает и любой продукт любое прикладное решение на платформе «1С: Предприятие» не является идеальным, а также удовлетворяющим всем запросам всех пользователей. Что не мешает этим прикладным решениям развиваться, в том числе и по запросам пользователей этих продуктов.
                                                                                              Осталось только понять, как в этом виновата платформа :)
                                                                                                0
                                                                                                Платформа в этом, может быть, и не виновата. Просто не надо называть продуктом то, что является средством для разработки.
                                                                                                Так и делфи можно продуктом назвать.
                                                                                                Я просто постоянно работаю с теми, кто работал с 1с и все говорят одно и тоже.
                                                                                                Что элементарные вещи, касающиеся обычной работы предприятия (которая у всех абсолютно одинакова), надо изобретать заново. Я уж не говорю про инструменты для управления процессами.

                                                                                                  0
                                                                                                  Был такой продукт Borland Deplhi (Borland C++, семейство Builder, Microsoft Quick C и т.д) — средство разработки (как и много других аналогичных продуктов). Если смотреть на «1С: Предприятие», то инструменты разработки входят в состав продуктов (прикладных решений) «Управление торговли», «Бухгалтерия» и т.д. и могут приобретаться отдельно (технологическая поставка). Если вам не нравятся типовые программные продукты фирмы «1С» (или партнеров) — вы можете разработать собственный продукт и продавать его, вместе со своей уникальной и совершенной методикой. Также вы можете разрабатывать тиражные расширения существующих типовых решений — это тоже возможно.
                                                                                                  Это реальные факты. Вы можете воспринимать эту действительность как угодно, в том числе и так, как вы сейчас ее воспринимаете. Действительность от этого другой не станет.
                                                                                                  Но все-таки в первую очередь я хочу понять, какую ключевую мысль вы пытаетесь донести до читателей? Пока эта мысль ускользает.
                                                                                                    0
                                                                                                    Я понимаю, что дельфи — это тоже продукт. Но это продукт для другого рынка.
                                                                                                    А 1с представляет свои продукты, предназначенные, по сути, для разработчиков, продуктами, предназначенными для конечного пользователя. Коими они разумеется не являются. Сырая котлета — это тоже продукт. Только есть ее нельзя.
                                                                                                      0
                                                                                                      Мысль в том, что не надо вводить в заблуждение потенциальных клиентов и представлять 1с, как продукт для них. Это продукт для программистов. Эту мысль я выразил в первом же комменте.
                                                                                                        0
                                                                                                        Предлагаю развернуто аргументировать данное заявление. К сожалению сейчас это выглядит слегка… поверхностно. Только просьба сразу разделить объективные факты от ваших субъективных оценок. Заодно хочется услышать названия продуктов, к которым применяется ваша аргументация. И просьба воздержаться от заявлений вида «всем известно, что в любой конфигурации 1С».
                                                                                                          0
                                                                                                          А все предельно просто.
                                                                                                          Давайте я задам вам вопрос: какие методы планирования производства и логистики применяются в 1с? Что это за методы, как именно они работают в 1с и ссылочку на инструкции, пожалуйста, в студию.
                                                                                                          Думаю, что все станет ясно.
                                                                                                            0
                                                                                                            Вы в очередной раз решили озвучить любимую мантру всех 1С-офобов. На предложение аргументировать свою позицию слились и тут же попытались провести экзамен вашего оппонента по неизвестному предмету по правилам, которые вы сами тут же придумываете.
                                                                                                            Нет уважаемый, так не пойдет. Более того, на приведенные вами аргументы (коии вдруг будут приведены, во что я не верю) я вам аргументированно возразить вряд-ли смогу по причине того, что не являюсь специалистом по каким-то прикладным продуктам, я являюсь специалистом по платформе. Но понимание уровня оппонента всегда полезно и познавательно, т.к. аргументированная критика очень интересна и полезна.
                                                                                                              0
                                                                                                              Вот, например, ссылка на книгу

                                                                                                              v8.1c.ru/metod/books/book.jsp?id=81

                                                                                                              Вы действительно готовы обсуждать ее в формате комментариев на хабре?

                                                                                                              Если бы продукты 1С не были готовы к использованию «как есть», тогда бы продажи базовых версий, т.е. тех, которые невозможно кастомизировать, были нулевыми.

                                                                                                              Точно так же были бы невозможно SaaS сервисы типа 1cfresh.com
                                                                                                  • НЛО прилетело и опубликовало эту надпись здесь
                                                                                                      0
                                                                                                      у меня он ведется в ERP-системе. Не 1с разумеется. А вот у всех моих клиентов, использовавших 1с, именно так и было.
                                                                                                      • НЛО прилетело и опубликовало эту надпись здесь
                                                                                                          0
                                                                                                          Все эти компании пытались заставить работать 1с на протяжении целого ряда лет, с привлечением специалистов по 1с, разумеется.
                                                                                                          • НЛО прилетело и опубликовало эту надпись здесь
                                                                                                              0
                                                                                                              Да у нас такая же история — устали бороться с 1с.
                                                                                                              Поддержки нет, заточить под себя проблема.
                                                                                                              Ну и добило уже вопиющее: купили сервер, а перейти на него так и не смогли, не загружается .dt в PostgreSQL — «ошибка формата потока». Все рецепты из сети перепробованы, выхода не вижу. Зря только сервер покупали и лицензии.
                                                                                                                0
                                                                                                                А вы в поддержку обращались? На v8@1c.ru?
                                                                                                                  0
                                                                                                                  Меня это всегда злило, чисто по человечески.
                                                                                                                  Я имею ввиду формулировки?

                                                                                                                  * Что значит устали бороться с 1С? — 1С это компания ЗАО «1С», вы же с ней не боретесь?
                                                                                                                  * Что значит поддержки нет? Поддержка есть — начиная от публичных форумов типа forum1c или infostart и заканчивая уже указанным v8@1c.ru.
                                                                                                                  * И вообще что такое поддержка? Кто у вас хочет чтобы его поддержали? Насколько мне известно прием «поддержка» используется в фигурном катании, тогда причем тут 1С?
                                                                                                                  * И вообще вопиющее — купили сервер? рецепты из сети?
                                                                                                                  вы купили сервер, явно без установленной на него 1С. Потом установили на него 1С и PostgreSQL
                                                                                                                  Интересно вы PostgreSQL установили на Windows? И вообще какая версия PostgreSQL, 1С и операционных систем? По каким рецептам устанавливали.

                                                                                                                  Это в порядке эмоциональном реакции, теперь если серьезно:

                                                                                                                  Ошибка формата потока — ошибка часто указывающая на проблемы с со старыми версиями платформы или на проблемы коммуникации между клиентом и сервером, а также с проблемами самой базы.

                                                                                                                  У нас последние 3 года есть специальный сценарий проверки.

                                                                                                                  1. берется 0,3 террабайта база в сжатии MSSQL
                                                                                                                  1.1 запускаются проверки проведения документов и формирования отчетов
                                                                                                                  2. база выгружается в dt файл
                                                                                                                  3.1 dt файл загружается в базу Oracle с автовключением сжатия на таблицах
                                                                                                                  3.2 dt файл загружается в базу PostgreSQL с хитрыми настройками сервера
                                                                                                                  4.1 запускаются проверки скорости проведения документов и формирования отчётов в базах Oracle и PostgreSQL
                                                                                                                  4.2. замеряется время выгрузки — то есть время перехода на другой сервер СУБД

                                                                                                                  Это сценарий с момента создания (с платформы 8.2.19) ни разу не отказал, то есть не упал.
                                                                                                                  Нам это нужно для анализа изменений интегральной производительности по поддержке альтернативных СУБД.

                                                                                                                  Вот вам публичная цифра — если на платформе 8.2.19 миграция на Oracle (савокупное время простоя) составляло 34 часа.
                                                                                                                  То на платформе 8.3.7 мы уже получаем 19 часов.

                                                                                                                  Поэтому — вы явно делаете что-то не так. Попробуйте конкретизировать кейс вопроизведения ошибки — когда версия платформы <такая-то>, сервер СУБД <такой-то> и <вы нажимаете такие кнопки> то <получаете ошибку>

                                                                                                                  Ну и сделайте простые версии:

                                                                                                                  * перед выгрузкой в DT сделайте тестирование и исправление
                                                                                                                  * выгруженный и проверенный DT файл загрузите в новую MSSQL базу — пусть создастся база с нуля.
                                                                                                                  * снова выгрузите в DT файл
                                                                                                                  * загрузите на PostgreSQL

                                                                                                                  и обратите внимание — запускайте Конфигуратор как можно «ближе» по сети к серверу 1С, а то может у вас Конфигуратор запускается на Hetzner, а сервера в Красноярске.


                                                                                                                  P.S. Для тех кто не в курсе что такое сжатие базы данных скажу что база 0.3 террабайта в сжатие — это примерно 0,75 террабайта без сжатия
                                                                                                    0
                                                                                                    Планируется ли в будущем использование других IDE для разработки?
                                                                                                    Например, JetBrains IDEA?

                                                                                                  Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                                                                                  Самое читаемое