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:)


Петр Грибанов

Комментарии (140)


  1. Flumaster
    21.09.2015 15:53
    -13

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


    1. PeterG
      21.09.2015 16:03
      +11

      >Я ненавижу две компании, это — мейл.ру и 1С.

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

      Ну что сказать. Говорят, что ненависть все же лучше равнодушия :)


    1. kykint
      21.09.2015 16:10
      +3

      очень смело. Но кстати 1С вроде бы ничего плохого никому не делает


      1. Flumaster
        21.09.2015 16:18
        -15

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


        1. toxicdream
          21.09.2015 16:29
          +9

          Для Казахстана сделайте сборочку, пожалуйста, с учетом всех чудачеств наших налоговиков и тп.


        1. EvilBeaver
          21.09.2015 18:50
          +7

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


        1. depresnjak
          22.09.2015 10:48
          +1

          А ничего что платформа с версии 8.1 поддерживает PostgreSQL? Да и платформа оптимизирована вопрос только с конфигурациями. Но тут уже вопрос к документации и к рукам разработчиков.


        1. Provlax
          22.09.2015 11:31
          +5

          Кажется ранее в других постах вы писали что-то типа «Опять же, быстрее писать сервер на ассемблере, чем на PHP, но жизни не хватит :).».

          Все, что можно написать на 1с можно написать и на python, ruby, node.js но жизни не хватит. :) В этом и есть основной смысл систем с более высоким уровнем абстракций.


        1. Yag0andy2006
          22.09.2015 15:25
          +2

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


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

          Я даже не стану спорить, что это будет работать быстрее. Конечно будет. Как только такое напишут.


          1. lubezniy
            29.09.2015 19:28

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


            1. Yag0andy2006
              01.10.2015 09:13

              Ок. Как говорится, пусть расцветают сто цветов.


      1. iliabvf
        21.09.2015 19:32

        Лично знаю случай когда лично 1С скопировала продукт своего партнера.

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

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

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


        1. iliabvf
          21.09.2015 19:51

          А еще вспомнил, когда 1С выпустил альфа-версию 1С Предприятия 8.0 (даже не бету), они распространили дистрибутивы среди партнеров с тайно вшитыми номерами. Те «добрые души», которые поделились с коллегами дистрибутивом, жестоко поплатились. Им звонли из отдела «К» фирмы 1С, обещали завести уголовные дела, партнеров лишали контрактов, были случаи, что человек тяжело заболел после такого звонка от любимой фирмы.


          1. EvilBeaver
            22.09.2015 09:19
            +4

            А вот вопрос — если они знали, что дистрибутив закрытый и делиться нельзя, даже договор какой-то наверняка подписали — зачем же тогда делились с коллегами в нарушение всех договоренностей?


            1. iliabvf
              22.09.2015 09:38
              -2

              о думал вы не заметите моих комментов, вы как еврей отвечаете вопросом на вопрос ))


              1. Aclz
                22.09.2015 09:42
                +1

                И в чем был ваш вопрос?

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


                1. iliabvf
                  22.09.2015 09:52
                  -1

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


                  1. Aclz
                    22.09.2015 10:24
                    +3

                    Вот есть множество прецедентов, когда кто-то был осужден за пиратскую установку 1С (Microsoft, Adobe, Autodesk etc.). Это тоже аргумент в пользу того, что 1С (MS, Adobe, Autodesk etc) — корпорация зла?


                  1. PeterG
                    22.09.2015 17:24
                    +4

                    я предоставил факты

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

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

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

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

                    image


                    1. iliabvf
                      22.09.2015 20:25
                      -1

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


                      1. PeterG
                        22.09.2015 22:19

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

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

                        Ответа на мои вопросы я не получу, как я понял.


                        1. iliabvf
                          23.09.2015 00:59
                          -3

                          Цель обсуждения был ваш пост о 1С Предприятии и компании 1С, не думаю что мой личный опыт будет интересен кому-то на этом ресурсе. Что касается добросовестности ведения бизнеса со своими партнерами отдавшими время, так же решает для себя руководство данной компании. Возможно это обусловлено традициями российского бизнеса или чем-то другим, остается только догадываться.
                          Удачи.


                          1. PeterG
                            23.09.2015 10:19
                            +4

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


              1. EvilBeaver
                22.09.2015 16:28
                +1

                Вы таки антисемит? )


                1. iliabvf
                  22.09.2015 16:32
                  -1

                  считайте что я против компаний кидающих своих партнеров


                  1. EvilBeaver
                    22.09.2015 16:45
                    +1

                    Ситуация: Я даю Вам, как хорошему знакомому (но не другу) некую штуку, над которой долго работал и которая должна принести мне денег. Допустим, программу, почему нет. Говорю: «Вася, зацени, какая вещь! Только не давай никому это секрет!». Вася соглашается, а потом тут же сливает этот секрет Пете. Я обижаюсь и подаю на Васю в суд. Вася пишет в интернете, что «Я его кидаю», хотя кинул (обманул) как раз он. Где логика?


                    1. iliabvf
                      22.09.2015 17:05
                      -1

                      Насчет распространения согласен с вами что это не хорошо, просто мне не понравились «чикистские» методы компании. Интереснее то что я описал перед случаем про альфа версию.


                      1. wladimir90
                        22.09.2015 17:52
                        +1

                        Чекистские, это если бы приехали люди в погонах.
                        А исходя из того что вы описали, компания повела себя вполне достойно.


                        1. iliabvf
                          22.09.2015 19:51
                          -2

                          «компания повела себя вполне достойно» — в будущем нет места таким достойным компаниям.


                          1. Aclz
                            22.09.2015 20:32
                            +1

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


                            1. iliabvf
                              22.09.2015 20:34

                              Нокия тоже цвела и пахла… поживем увидим


                              1. Aclz
                                22.09.2015 20:51

                                У нокии ЕМНИП было максимум 30% рынка, у 1С в сегменте малосреднего бизнеса — 99%, что как бы делает эти ситуации несопоставимыми.


                                1. iliabvf
                                  22.09.2015 21:21

                                  ой ли? 50% в среднем бизнесе у SAP вроде как? про малый ничего не могу сказать


                                  1. Aclz
                                    22.09.2015 21:40

                                    Видел я эту статистику, кажется на РБК приводили. Это на т.н. «рынке ERP-систем», т.е. в подавляющем большинстве крупный бизнес и крупные решения «всё в одном» для вертикально интегрированных структур, типа 1С: УПП. В более банальном сегменте решений для автоматизации бухгалтерии и торговли, которые я подразумеваю, решения SAP находятся на уровне стат. погрешности.

                                    Если же брать общее количество внедрений (не по рублевому обороту, а именно считать внедрения/продажи поштучно), то у 1С по всем сегментах суммарно, наверное, доля может и за 99.99% уйти (если, конечно, всякие совсем уж наколенные Excel-based-бухгалтерии не считать).


                                    1. iliabvf
                                      23.09.2015 01:05

                                      У вас прямо как на российских выборах. А пруфлинк можно на 99.99%?


                                  1. PeterG
                                    23.09.2015 10:39

                                    Про крупный рынок сказать проще — там много исследований проводится.
                                    По количеству внедрений (информация от TAdviser) на 2015 год картина такая:
                                    image

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

                                    По малым внедрениям статистики быстро найти не смог.


                                    1. Fragster
                                      23.09.2015 11:14
                                      +1

                                      Тут следует заметить, что везде, где стоИт сап или аксапта — также стоИт и 1с :)


                                      1. EvilBeaver
                                        23.09.2015 11:33

                                        И перегружают их SAP в 1С, чтобы сдать отчетность, видели такое, ага.


                                        1. Fragster
                                          23.09.2015 11:52

                                          Самое крутое, что я видел — перегрузка их DAX в 1С: УТ, там расчет себестоимости, а потом оттуда — в бухгалтерию для сдачи отчетности. Крупный интернет-магазин бытовой техники и электроники.


                                          1. 121212121
                                            09.10.2015 14:05

                                            Скажите, а это ваша http://kb.mista.ru/article.php?id=632 статья?


                                            1. Fragster
                                              09.10.2015 14:16

                                              Да. Была актуальна в 2008 году :)
                                              Сейчас нужно несколько меньше доп. движений.


                                              1. 121212121
                                                09.10.2015 14:45

                                                Тогда я не пристаю?
                                                Просто вы не ответили в личку и я думал мож не увидели сообщение.


        1. tunegov
          22.09.2015 15:25
          +2

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


          Отнюдь. Типовые конфигурации от 1С идут с открытым кодом. Вы можете допиливать их по своему усмотрению. И в них как раз запрограммирована вся бизнес логика продукта. Что же касается самой платформы 1С: Предприятие, то это распространненая мировая практика — исходников от движков MS Axapta или SAP R3 вы тоже не найдете.


          1. iliabvf
            22.09.2015 16:09

            Ну евангелисты фирм SAP и Axapta же не заявляют что они Open-Source ))


            1. tunegov
              22.09.2015 16:51
              +1

              В статье, я вижу, все четко написано

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

              А open-source он разный бывает (из-за ньюансов в лицензиях)


        1. PeterG
          22.09.2015 16:44
          +1

          >Статья изначально заказная и необъективная, автор: «Peter Gribanov Technology evangelist in 1C».
          Что статья опубликована в блоге компании 1С — вас не смутило? ;)


          1. iliabvf
            22.09.2015 16:58
            -5

            А вас не смутило что евангелист компании 1С вводит в заблуждение читателей Хабра?


            1. PeterG
              22.09.2015 17:21
              +3

              Где именно ввожу в заблуждение?


        1. o4karek
          23.09.2015 09:45
          +2

          Для общего развития не подскажите, что такого скопировала 1С у своего партнера (название у пострадавшего продукта есть)?


    1. demist
      21.09.2015 16:19
      +4

      А аргументация есть? Или просто беспричинная ненависть?


      1. demist
        21.09.2015 16:28

        Про 1С увидел Ваш ответ.
        А mail.ru?


        1. Flumaster
          21.09.2015 16:36
          -1

          А мейл.ру просто занимается некрасивыми вещами. Лично у меня это вызывает отвращение. Они делают PR не правильно. (тоже на тяп-ляп). Они не хотят сделать нормальную рекламу. И вместо этого распространяют вирусный (он действительно вирусный) софт. Навязывают свои услуги и лишают возможностью пользоваться услугами конкурентов (это называется монополия). Даже если просто взять игры. Хорошие игры, в которые разработчики вложили много времени и сил. Мейл.ру покупает эти игры под предлогом интернет-гиганта и выкачивают деньги из обычных людей. Мне не нравится такая компания. В любом случае, все вышесказанное мною — мое личное мнение и я никому его не навязываю.


          1. demist
            21.09.2015 16:40
            +1

            Ну вирусным (или около того) софтом грешит не только mail.ru… Как пример — Яндекс, при установке приложения Яндекс.Погода, засовывающий свою поисковую строку в шторку статус-бара…

            А что Вы имеете в виду под навязыванием своих услуг? Новый для меня аргумент в контексте «mail.ru»


            1. demist
              21.09.2015 16:45

              Хотя справедливости ради, надо отметить, что теперь Яндекс спрашивает, включить или нет.
              Раньше просто включал.


            1. depresnjak
              22.09.2015 10:51

              Ну Яндекс в этом плане дети.


  1. SdotR
    21.09.2015 15:55
    +6

    Из статьи я с радостью узнал, что 1С таки выпустила IDE на базе Eclipse. Слышал я про неё ещё лет 5 назад, но наконец-то сделали. Только Eclipse на сегодняшний день активно теряет популярность, а не активно используется.

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

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

    P.S. А вообще к 1С: Предприятие у меня положительное отношение, так как эта система хорошо подходит для тех задач, для которых была сделана – ERP-системы и всякое.


    1. PeterG
      21.09.2015 16:20

      >Из статьи я с радостью узнал, что 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


      1. SdotR
        21.09.2015 16:37
        +3

        Прошу прощения, что я грубо написал. Это скорее не с вашим текстом связано, а с моим внутренним состоянием.

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


      1. EvilBeaver
        21.09.2015 18:58
        +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. PeterG
          21.09.2015 21:15
          -1

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


          1. asis
            21.09.2015 23:22

            В VB есть наследование определений (интерфейсов). Наследования реализаций нет.


          1. EvilBeaver
            22.09.2015 09:21
            +1

            по синтаксису напоминает больше всего JavaScript

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


          1. depresnjak
            22.09.2015 10:55

            А ничего что на 1С конструкция другая?

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


            Да и в первом блоке это С синтаксис.


          1. iliabvf
            22.09.2015 21:40

            Какой еще loop? правильно вообще-то Do


            1. EvilBeaver
              23.09.2015 11:35

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


      1. iliabvf
        22.09.2015 21:57
        -2

        просто ради интереса, почему у вас в Linkedin указан только англ. яз. и все на английском? в РФ бизнесе русский яз. считается позорным? интересно узнать вы занимаетесь английскими решениями 1С?


        1. PeterG
          22.09.2015 22:36

          почему у вас в Linkedin указан только англ. яз. и все на английском?

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

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

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

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

          Нет, этим занимаются другие сотрудники.


  1. SdotR
    21.09.2015 16:04
    +2

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

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

    Встроенные типы данных в 1С бедные. Например, нет регулярных выражений, а писать внешние компоненты для 1С – это не уровень большинства программистов 1С (писать приходится dll, используя не самую приятную библиотеку на чистом C), что тоже сильно усложняет разработку.


    1. PeterG
      21.09.2015 17:00

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

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

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

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

      А что касается «бедных встроенных типов данных» — чего конкретно не хватает для работы?


  1. depresnjak
    21.09.2015 16:11

    Ну вот когда появятся нормальные гайды по доступному функционалу, СКД и УФ?! Книги авторства Радченко в топку! Когда будут объёмные конференция масштаба InfostartEvent? Когда разработчики пишущие на 1C получат нормальный подстрочник не только на русском? Когда можно будет обратиться к документации, а не искать примеры в типовых коробках? Когда?..


    1. PeterG
      21.09.2015 16:53

      Для вашего ника комментарий скорее позитивный :)

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

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

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

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


      1. Melex
        22.09.2015 00:02

        Это вы хорошо (на счет конференции), только почему онлайна нет? Или я плохо искал?
        Если уж открытая, то таки делайте открытую, а не только для жителей Москвы и пригорода.


        1. PeterG
          22.09.2015 11:09

          Онлайна нет, запись постараемся выложить.


      1. depresnjak
        22.09.2015 11:20

        > а что в вашем понимании «нормальные гайды»? Чтобы понимать, с чем сравнивать.
        Для примера: Керниган / Ричи «Язык C», Бьерн Страуструп «Язык программирования С++» и т.п. книги описывающие особенности языка

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

        > Надеюсь, со временем появятся.
        Только не забываете что есть люди как за МКАДом так и за пределами РФ: Казахстан, Беларусь Украина.


        1. o4karek
          22.09.2015 11:48

          А что не хватает в текущей документации?
          Не надо говорить про СКД и XDTO (про это и так понятно) :(
          Речь про остальное. Оценивается свежая относительно версия документации, которая сейчас на ИТС.


    1. ZEEGIN
      21.09.2015 18:13
      +2

      Профессиональная разработка в системе 1С: Предприятие 8" (+DVD-ROM). Издание 2
      По моему отличный настольный справочник. Хотя в 90% случаем встроенной справки достаточно.


      1. depresnjak
        22.09.2015 11:23

        Он далеко не полный. Ньюансов построения сложных отчетов с графикой и т.д. там нет. Использование механизма «Универсальный отчет» там тоже нет. Геокарты туда же. Бизнес-процессы, мобильные приложения, технологический журнал, особенности использования отдельных СУБД и т.д.


        1. Yag0andy2006
          22.09.2015 15:19

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

          Главное — хотеть найти.


          1. depresnjak
            22.09.2015 18:35

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


    1. khorpyakov
      22.09.2015 02:09

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


      1. Aclz
        22.09.2015 08:06

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


        1. khorpyakov
          23.09.2015 00:41

          Вы хотя бы примерно представляете себе объём выручки системных интеграторов за консультирование?


          1. Aclz
            23.09.2015 07:45

            Да, сам был в этом бизнесе, и в случае с 1С она одна из самых низких в отрасли из-за высокой конкуренции.


            1. khorpyakov
              23.09.2015 11:16

              То есть и зарплата тоже одна из самых низких? И как вы привлекаете специалистов, конкурируя с такими вендорами, как SAP, Oracle, Microsoft, IBM?


              1. Aclz
                23.09.2015 11:59

                Специалисты SAP и 1С друг другу не конкуренты, т.к. 1Сник не умеет работать в SAP и наоборот.


                1. o4karek
                  23.09.2015 12:01

                  В качестве комментария, не для бурного спора :)
                  Лично знаю минимум двух людей, которые имеют вполне неплохие скиллы (на мой взгляд) и в 1С и в САПе :)


      1. o4karek
        22.09.2015 09:17
        +2

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


        1. khorpyakov
          23.09.2015 00:40

          Это не заблуждение, так устроен корпоративный рынок. И ситуация тут значительно отличается от рынка B2C и даже МСБ. Доход от поддержки и внедрения ПО составляет значительную часть корпоративного рынка. Знания передаются именно так, почти что «из уст в уста». Полученный опыт на проектах конвертируется в кэш.


          1. o4karek
            23.09.2015 09:15

            Хорошо. Давайте рассмотрим пример: выходит платформа 8.3.6 (всего там 153 изменения). Здесь и далее я говорю только о платформе, прикладные решения буду игнорировать, т.к. что-то знаю только о платформенной документации.
            Откуда вы узнаете, что нового в этой платформе?
            А подробности откуда узнаете? Т.е. вот все эти новости вы узнаете пытливо тыкаясь в разные места платформы и составляя персональный список отличий?
            А вот теперь консультант, он откуда узнал про новые возможности? Для определенности — консультант консультирует по особенностям применения платформы, его клиент — компания с инхаусной разработкой (уровень неважен).
            И еще — говоря о корпоративном рынке, мы говорим о чем? О внедрении [относительно] типового продукта (с подходящей и соответствующей функциональностью) или заказной разработке?


            1. Fragster
              23.09.2015 10:28

              1. o4karek
                23.09.2015 10:43
                +1

                Я знаю, что и где у нас лежит :)
                Но ведь эта ссылка противоречит утверждению о том, что мы стараемся не писать нормальных гайдов? Или речь о чем-то другом?


            1. khorpyakov
              23.09.2015 11:14

              Описание «что нового в новой версии» не является гайдом (руководством) в моём понимании, это просто перечень новых функций. А как их использовать — уже руководство. Так вот, если написать подробные и качественные руководства, труд консультанта станет дешевле, т.к. с внедрением сможет справиться in-house команда. Так устроен, например, рынок SAP. Руководства покрывают примерно треть потребности, ещё примерно треть можно получить на очень недешёвых тренингах и в книгах. И остальная треть, за которую платят больше 1000 евро в день, добывается опытом и внутриконсалтерской передачей знаний.


              1. o4karek
                23.09.2015 11:26

                Т.е. работу (например) с push-уведомлениями в мобильной платформе надо изучать полностью самостоятельно, по наитию? Описание планировщика (который новый объект для этой платформы) — оно тоже методом научного тыка осваивается?
                Я уже задавал вопрос, повторю еще раз — можете привести конкретные примеры плохой документации к платформе (кроме СКД и XDTO) и того, чего вам в ней не хватает?


                1. khorpyakov
                  23.09.2015 11:47

                  А разве я говорил, что 1С плохо документирована? Скорее, наоборот.


                  1. o4karek
                    23.09.2015 11:54

                    depresnjak: Ну вот когда появятся нормальные гайды по доступному функционалу, СКД и УФ?!

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

                    Это надо воспринимать именно как характеристику нормальной документированности?
                    Странно получается…


                    1. depresnjak
                      25.09.2015 00:33

                      Гайды (от англ. guide — руководство) — это полезные статьи, где описан какой-то важный аспект или явление


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

                      Если под документацией понимать «Синтаксис помощник», то не льстите себе. Как быстрый лист тезисов, то да — можно использовать, и эволюция в сравнении с 7-кой чувствуется, но до такого же качества и доступности как у Ричи/Страуструпа/Кнута/Таненбаума вам далеко. И ИТС далеко не панацея.


                      1. o4karek
                        25.09.2015 09:25
                        +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 недели на самом сайте). Это именно гайд по запросам. С описанием языка, синтаксиса, примеров (не факт, что очень подробными, это да).
                        Подытожу в качестве резюме: документация — это не застывшая конструкция и она состоит из нескольких частей, дополняющих другу друга. Мы не считаем, что документация является идеальной и постоянно работаем над ее улучшением. Нам, безусловно, важно понимать, какие места в документации являются проблемными и понимать, как и куда их надо улучшать, однако, мы хотим (уж извините) видеть конкретные проблемы, а не общие слова «как все плохо».
                        Как-то так :)


  1. artbear
    21.09.2015 16:51

    В середине октября и будет масштабная конференция Инфостарт.
    ИМХО это намного полезнее и веселее, чем официальные семинары от 1С


    1. PeterG
      21.09.2015 18:16

      ИМХО мероприятия для разных аудиторий и с несколько разными целями.


      1. alexey-lustin
        21.09.2015 19:03
        +3

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


        1. PeterG
          21.09.2015 21:17
          +1

          Алексей, продолжение будет, конечно. И более технологичное.
          Спасибо за позитивное мнение)


    1. EvilBeaver
      21.09.2015 19:00

      Веселее точно, проверено)) А уровень пользы каждый для себя сам определяет.


  1. alexey-lustin
    21.09.2015 22:24
    +2

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

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

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

    Причем обеспечение качества с учетом linux — очень много артефактов выявляется которые можно было закрыть автоматизированно до выхода релизов. Я думаю это было бы полезно ХабраСообществу — как правильно обеспечивать качество C++ решения в условиях кроссплатформенности и массовости использования.


    1. Melex
      22.09.2015 00:06

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

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

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

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


      1. alexey-lustin
        22.09.2015 01:07
        +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… даже не буду ничего говорить. Пусть кто-нибудь другой его использует.




        1. Aclz
          22.09.2015 08:08

          У вас сервер приложений тоже линуксовый?


          1. alexey-lustin
            25.09.2015 00:42

            Конечно ;-) А что тут такого?


    1. PeterG
      22.09.2015 23:53

      Алексей, постараемся.

      Традиционно 1С делится планами на партнерских семинарах.
      Уже писал, что в этот раз в рамках семинара будет "Открытое воскресенье", если у вас есть возможность — приходите.


      1. alexey-lustin
        23.09.2015 01:42

        Обязательно, лучше того, я буду и на «закрытой» субботе.


  1. khorpyakov
    22.09.2015 02:14

    Почему у 1С нет аккаунта на Github?


    1. Infactum
      22.09.2015 06:01
      +1

      Вообще-то есть: github.com/1C-Company. Его вместе с CTP новой IDE создали.
      Но тут вопрос скорее в том, что вы ожидали там увидеть.


      1. khorpyakov
        23.09.2015 00:42

        Ну хотя бы что-то типа github.com/SAP


  1. pewpew
    22.09.2015 08:37

    При чём тут тег «1с-битрикс»? Ни слова в статье не сказано.
    Зашёл в статью, ибо волею судеб приходится пилить кривожопый проект на этой cms.


    1. webportal
      22.09.2015 14:28
      -4

      1с и битрикс, это как запорожец и ока причём второе ещё как то можно отрихтовать, а вот про первое не знаю…


      1. EvilBeaver
        22.09.2015 16:30

        не знаю, зато говорю, расклеиваю ярлыки и вообще всячески осуждаю.


  1. infostart
    22.09.2015 13:38
    +2

    Поздравляю! Наконец-то! Молодцы! Так держать!


    1. PeterG
      22.09.2015 14:52

      Спасибо!


  1. mikechips
    22.09.2015 23:21

    Негодования по поводу 1С еще более живучие, чем шутки про php…


  1. vdovin_ds
    23.09.2015 15:03

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


    1. PeterG
      23.09.2015 18:43

      А скажите, плиз, в 8.3.6 отказоустойчевый сервер перестанет отказывать?

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

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

      Тут, боюсь, не смогу вам ответить сразу, надо проконсультироваться с командой. Чтобы не было недопонимания — можете дать ссылку на описание схемы лицензирования, про которую вы пишете?
      И сразу оговорюсь — не могу обещать, что исчерпывающе отвечу на ваш вопрос, в том числе и по соображениям возможной конфиденциальности.


      1. vdovin_ds
        23.09.2015 19:42

        Возможно не лучшая ссылка, но смысл вопроса и «боли» думаю будет понятен its.1c.ru/db/metod8dev/content/3596/hdoc

        Сервер может иметь соединение только с одним сетевым ключом одной серии. При исчерпании лицензий в одном сетевом ключе поиск в сети других ключей той же самой серии не выполняется.

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

        И теперь представьте, что лучше: если иметь 5 ключей по 100 и один из 5 вдруг сломается. Или 1 на 500, и он вдруг сломается?


        1. PeterG
          24.09.2015 12:09
          +1

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


        1. PeterG
          28.09.2015 11:54

          нельзя использовать два сетевых пользовательских ключа одинакового типа

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


  1. erp_shnik
    30.09.2015 13:32

    1с — это среда для разработки приложений. Автор абсолютно правильно позиционировал этот продукт. Исключение составляет пожалуй только 1с-Бухгалтерия.

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

    К ним приходит франчайзи и говорит «Скажите, что вам надо и вам напишем». В результате клиент изобретает велосипед ГОДАМИ, причем в большинстве случаев безуспешно. Планирования производства нормального как не было, так и нет, но года потрачены, куча денег тоже.


    1. o4karek
      30.09.2015 13:47

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


      1. erp_shnik
        30.09.2015 14:18

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


        1. o4karek
          30.09.2015 14:38

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


          1. erp_shnik
            30.09.2015 16:41

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


            1. o4karek
              30.09.2015 17:01

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


              1. erp_shnik
                30.09.2015 17:17

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


              1. erp_shnik
                30.09.2015 17:18

                Мысль в том, что не надо вводить в заблуждение потенциальных клиентов и представлять 1с, как продукт для них. Это продукт для программистов. Эту мысль я выразил в первом же комменте.


                1. o4karek
                  30.09.2015 17:26

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


                  1. erp_shnik
                    30.09.2015 20:08

                    А все предельно просто.
                    Давайте я задам вам вопрос: какие методы планирования производства и логистики применяются в 1с? Что это за методы, как именно они работают в 1с и ссылочку на инструкции, пожалуйста, в студию.
                    Думаю, что все станет ясно.


                    1. o4karek
                      30.09.2015 21:20

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


                    1. VasiliyKudryavtsev
                      30.09.2015 21:52

                      Вот, например, ссылка на книгу

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

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

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

                      Точно так же были бы невозможно SaaS сервисы типа 1cfresh.com


        1. Aclz
          30.09.2015 17:59

          Поговорите с производственниками, поговорите с логистиками, поговорите с финансистами. Куда ни посмотри, все пользуются экселем.

          У вас на предприятии учет производственных процессов и финансовых операций ведется в Экселе?


          1. erp_shnik
            30.09.2015 20:06

            у меня он ведется в ERP-системе. Не 1с разумеется. А вот у всех моих клиентов, использовавших 1с, именно так и было.


            1. Aclz
              30.09.2015 20:36

              Возможно, вы попали в ловушку нерепрезентативности собственной выборки: они ведь, наверное, и стали вашими клиентами из-за того, что 1С у них была не внедрена, а просто установлена.

              Касаемо того, что вы говорите:
              1. Невозможно создать систему, которая удовлетворит любой каприз из коробки.
              2. Невозможно создать систему, которая удовлетворит любой каприз с помощью параметрической настройки в пользовательском режиме
              3. Не существует такой ERP, с помощью которой полностью отпадает потребность в Экселе.


              1. erp_shnik
                01.10.2015 09:56

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


                1. Aclz
                  01.10.2015 11:00

                  Охотно верю. При этом у других 1Сников, думается, найдется не меньше примеров успешного перевода компаний на 1С с криво-косо работающих ERP, целый ряд лет внедрявшихся привлеченными специалистами.