Как стать автором
Обновить

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

Не забывайте что любая операция Документ.Записать() это на SQL сервере это как минимум поиск существующего документа

Поясните пожалуйста, а почему так? Если мы записываем уже существующий документ используя Документ.Записать(), если ссылка на документ уже есть, зачем его искать?
В случае записи нового Документа, возникает такой же вопрос, документа еще нет, зачем его искать?

В 1С документ это обьект который состоит из шапки и может содержать несколько табличных частей. Эти сущности соответствуют разным таблицам sql. Внутри все ключи на guid. Вам чтобы работать с документом по человеческому номеру нужно сначала найти документ. Потом сделать .ПолучитьОбьект() это чтение. При .Записать() Когда я делал трассировку через sql profiler было видно что 1с не отслеживает изменения , а просто delete старые записи и insert новые. Без update. А предварительно делает select как понимаю для блокировки или какихто других целей. 1с это генератор запросов по структуре метаданных поэтому там упрощенные dml. Возможно в новых версиях чтото оптимизировали но суть таже.

Будет время я повторю трассировку на свежей вериии и напишу тут

Где кончается язык 1с и начинается платформа? По сути язык 1с это набор обьектов типа РегистрБухгалтерскогоУчета с предопределенными методами и свойствами. Можно создавать копии обьекта добавляя свои реквизиты и измерения . Чтото похожее на наследование. А уже отражение в субд , генерацию dml, запросов и отрисовку форм берет на себя платформа. Ни наследования ни полиморфизма ни Dependency ingection т д там врядли будет. Оно и не нужно. Напр для быстрой записи в регистр бухгалтерии 1с под капотом достаточно поменять работу с итогами, отбор по набору записей и оптимизировать генерацию dml

Ценность этого RAD в удобных метаданных просто их нужно допилить под капотом для горизонтального маштабирования.

1C не для создания комплетующих велосипедов, а для создания велосипедов из готовых комплектующих

набор обьектов типа РегистрБухгалтерскогоУчета с предопределенными методами и свойствами

Это часть фреймворка платформы, которая по сути рантайм + этот самый фреймворк.
Ценность этого RAD в удобных метаданных просто их нужно допилить под капотом для горизонтального маштабирования.

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

А потом хочется назад в 1с потому что задалбываешься два часа текстом создавать новые сущности там, где 1с позволяет это сделать за 5 минут мышкой.

Вот ни разу за 4 года такого желания не появлялось. Тем более если говорить об ORM — то оно раскидывается так же быстро. Мучаться с невозможностью нормально выстроить абстракции, с ущербным IDE и прочим только потому что формы мышкой накидываются — нафиг не надо.

Ни секунды не мучился ни с абстракциями ни с IDE, ничего ущербного в ИДЕ 1С нет, не понимаю откуда такая оценка.

Да даже edt до ide от jetbrains недотягивает лет на 10. А уж конфигуратор по возможностям где то в начале нулевых застрял. Ну а если вам не нужно выстраивать абстракции — это скорее о вас говорит.
Можно ли все это исправить расширяя язык программирования? Конечно можно, просто цепочка изменений внутри платформы и кластера будет достаточно большой. Еще нужно внедрить соответствующий стиль программирования в массы, ведь не все читают статьи подобные этой. Пока 1С предпочитает наращивать возможности функционала типа СистемаВзаимодействия без пересмотра базовой архитектуры.

Немного циничных рассужений от старого инженера:

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

Однако бизнес задачи 1С в чем?

1) Компании-клиенты не должны уйти на другое ПО,

2) 1С-программисты не должны уйти в другие языки программирования,

Для обоих целей, развитие языка 1С до уровня других промышленных языков (Java, С#) скорее помешает, зачем давать возможность 1С программистам легко переучится на другие языки, а клиентам заменить ПО от 1С на что-то другое на Java (а так разных ПО для бизнеса придумано немало), например? Сейчас миграция ПО очень сложна потому что переложить бизнес логику с языка 1С на Java весьма сложно и требует команды сразу из программистов 1C и Java. Зачем компании 1С облегчать этот процесс?

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

Поэтому рассчитывать на то что если вы соберете дельные предложения — они будут реализованы — наивно.

"Для обоих целей, развитие языка 1С до уровня других промышленных языков (Java, С#) скорее помешает, зачем давать возможность 1С программистам легко переучится на другие языки,"

только не до уровня Java или C#

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

Для прикладного программирования кирпичики должны уже представлять best practice а не поле для творчества. У тех кто пишет на java не хватает времени на создание конфетки потому что им каждый раз не только нужно собрать велосипед из комплектующих но и сделать комплектующие для велосипеда. А если какието комплектующие на java гдето есть то за ними бегать по всем китайским фабрикам а не брать со склада

Программистам, которые долго сидели в прикладном программировании будет дико смотреть как клеить приложение на Java c DI и даже Spring медом не покажется, потому что эта гибкость для других целей. Даже генераторы кода не спасут его еще напильником надо

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

Неужели вы думаете идея сделать платформу аля 1С или SAP так уникальна, что ничего подобного нигде нет? На Java (и других универсальных языках) хватает и велосипедов и компонентов оптом и в розницу.
Например, я работал в NetCracker, который продавал систему для автоматизации бизнес процессов половины мирового телекома. Там сложность на порядки брльшая чем в 1С платформе. И таких платформ море.
У 1С главное преимущество — подержка актуальной бух.документации, которая подсадила большинство клиеюентов, а дальше если уж все равно куплена 1С и наняты 1С программисты почему бы не использовать для чего-то еще.

""У 1С главное преимущество — подержка актуальной бух.документации, которая подсадила большинство клиеюентов"

Заметьте это ГОТОВОЕ решение, которое можно кастомизировать. У sap нет кастомизируемых ГОТОВЫХ решений только кубики типа SPRO и addon либо копия украденная на другом проекте которое нужно кастомизировать. Любой модуль типа fi co нужно сначала готовить через spro и подобное

Назовите ГОТОВОЕ решение из фин бэк фронт учета которое можно кастомизировать программированием на java или c# . Я обязательно посмотрю

Назовите ГОТОВОЕ решение из фин бэк фронт учета которое можно кастомизировать программированием на java или c# .

То о чем вы говорите это целая отрасль, называется ERP системы. Только известных мировых игроков или крупных open-source проектов там сотни.

Например, open-source на Java: Adaxa Suite, Adempiere/Compiere, Apache OFBiz, HeliumV, iDempiere, metasfresh.

Из известных платных — Microsoft Dynamics, Oracle ERP Cloud и т.д.

image

P.S. Неужели вы думаете, что идея «давайте дадим бизнесу готовую платформу для финасового учета, построения бизнес процессов и т.п., которую можно допилить напильником до нужного им виде за отдельные деньги» так уникальная, что никто кроме 1С и SAP до нее не додумался и каждая крошечная компания за границей пилит все свое с нуля?

Вы не понимаете разницу между готовым решением которое можно кастомизировать , и конструкторами из которых делают решения с которыми могут работать клиенты . Гляньте просто price oracle там в модуле financial нет даже деления по регионам типа usa eu . Значит ее будут по каждого клиента пилить https://www.google.com/url?sa=t&source=web&rct=j&url=https://www.oracle.com/assets/applications-price-list-070574.pdf&ved=2ahUKEwipurSN-9X4AhXHxIsKHfdCCl8QFnoECBEQAQ&usg=AOvVaw13EYvsd3-XppQdId6udHwG

Гляньте просто price oracle там в модуле financial нет даже деления по регионам типа usa eu. Значит ее будут по каждого клиента пилить

Так на лицензии базы данных Oracle тоже нет деления, вы думаете базу данных тоже под каждого клиента будут пилить? Все проще, Oracl'у проще всем выкатить одинаковые офигенно большие цены, а те кто не смогут себе такое позволить просто пойдут лесом за более дешевыми решениями.

Значит ее будут по каждого клиента пилить

Боюсь оплатить труд инженеров Oracle по пиление под каждого клиента сможет оплатить совсем не каждый бизнес, а у них по разным оценках от 5 до 15% мирового рынка ERP систем.

Ну вот возьмем Microsoft Dynamics 365 . Что это по вашему?

Microsoft Dynamics 365 – это единая модульная платформа для бизнес-приложений, объединяющая разрозненные данные и возможности CRM и ERP со средствами коллективной работы Office, бизнес-аналитикой Power BI и облачными сервисами Azure.

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


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

Вы с чем на практике из перечисленого работали? Я напр sap внедрял знаю . 1с знаю . Попробуйте в demo microsoft dynamics зайти ;) . Вы же java не будете выбирать по рекламным материалам маркетологов

был на обучении/презентации ОЕБС. Есть модуль закупок, есть модуть продаж. Если один и тотже клиент и там, и там - общую задолженнотсь получить невозможно, или ручная выгрзка в эксель и сверка, либо очень дорогая доработка (походу, обычная хоз.операция вообще везде. система в это не умеет).

Был на обучении МС бух. Таже история. Есть поставщики, есть покупателя. Банальный вопрос - что на счет прочих расчетов, ну там всякие займы, банки, фин.помощь ну и вообще. Ответ: такого не существует в системе. Надо смотреть на каждый отдельный случай, определеять тип клиента индивидуально, а потом в каждом документ рукам править счета (да, в этой уникальной веб-системе в каждом документе указываются счета для формирования проводок - привет, оперативный учет)

Вы непного ошиблись с формулировками.

Есть отдельно "давайте дадим бизнесу готовую платформу для финасового учета, построения бизнес процессов и т.п. "

И есть отдельно "можно допилить напильником до нужного им виде за отдельные деньги"

Лидеры рынка, всякие МС, Оракл и САП - тупо двигают стандартну конфу, все проблемы решаются орагнизационно, в прямом смысле - людей увольняют в течении 2-3 лет по кругу до тех пор, пока они безропотно не будут работать в той системе, которую им просто поставили из коробки.

Там, где все таки хотят получить какой-то результат - там я видел один пример внедрения аксапты - все переписано на 70%. Видел внедрение САП - там с третьего раза переписано вообще всё. Лет за 10.

Собственно, в том то и фишка 1С - стандартную конфигурацию можно как-то использовать и можно её потихоньку использовать. И ещё она что-то (хоть и очень мало) знает про реальные процессы.

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

Аксапту пилят, но там пилят по живому: от стандартных процессов не остается ничего. Потому что они и были для газетного киоска с 10-ю бухгалтерами.

1Сптратила 20 лет на то. чтобы убрать бухгалтерский учет из оперативного учета. Т.е. на 90% в программе работает оперативный персонал, который ничего не знает об учете. А в системах "лидеров рынка" надо к каждому грузчику бухгалтера приставлять. Это если не заплатить пару млн долл за "адоптацию"

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

В 1С куча проблем, от технических до профнепригодности аналитиков, которые придумывают конфигурации. Но по сравнению с "лидерами рынка" - это всё цветочки

да, кстати, на счет "и каждая крошечная компания за границей пилит все свое с нуля? "

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

Т.е. есть, например, дебиторка, а кому и за что - это не вопрос бухгалтера. Вообще. У него даже данных таких нет. И никогда не было. Это всё - идите к менеджеру, пусть у себя по экселькам смотрит.

Так что вы просто не знаете грубину наших глубин и ихних

Зачасту компания заграницей вынуждена вести учет на аутсорсе в тот й системе , которой пользуется компаний-подрядчик. Потмоу что, в отличии от нас, у них нет универсальных бухгалтеров. И там где все у нас деалет одна девочка, там надо 3 человека минимум (общий учет, зарплата, НДС и прочие налоги). Это очень доргго. Проще плитить за аутсорс, вести оперативный учет в эксельках, кидать из порядчику, который итоговые цифры будет вносить в главную книгу.

Минусов в 1С столько, что многие уходят.

Про ограничение регламентных заданий, это просто круто. Например, у нас 50 лицензий, и иногда фоновые задания отжирают сразу 10 лицензий. (А SQL лицензии не по копеечке). Больше пяти лет, как появились какие-то настройки кластера, но лицензии проф тоже не дешёвые.

С производительностью 1С проблемы годами. Некоторые используют 7-ку, потому что она быстрее. Например, 1С-Документоооборот, лет 15 обещают сделать быстрым, и вот уже, почти...

Да и без производительности, та же техподдержка 1С, иногда отвечает пол года, и потом столько же исправляют свой баг. Основная задача, ведения учёта, в той же ERP страдает. Делать «big data» на 1С, выстрел себе в хвост. При каком-нибудь обновлении платформы/размере базы, всё полетит.

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

Жаль их , семерка никогда не потянет объем данных больше чем 1С 8.х с использованием типовых средств

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации