Автор:Никита Зайцев wild@hare.ru Источник: http://blog.hare.ru/
1С:Предприятие 8.0 Вести с полей-1: Что это было?
Главное событие семинара: представление бета-версии V8. Рассказывали, показывали, отвечалина вопросы. Вот только с собой не давали, но это уж как водится. Сам я на семиране не был,но источники информации у меня вполне надёжные и заслуживающие доверия.
На следующий после семинара же день на Т1С появился сжатый отчёт, перечисляющий ключевые моменты докладов по V8. Насколько он близокк реальности? Максимально близок. Множество людей конспектировали доклады на своихноутбуках и палмах, и кто-то запостил выжимку из конспекта в Сеть. Если кто-то пропустилэту инфу – смотрите прицепленный файл внизу страницы.
Начнём с главного. Когда? Были объявлены вполне конкретные сроки: бета в марте (очевидно, чтов конце марта), первый релиз в середине лета. Но релиз будет не полный – как водится,что-то будут доделывать параллельно первым продажам. УРБД и Web-компонента выйдут в светтолько к осени. Если же выход V8 будет огранизован по образу и подобию 7.5/7.7, то в первом релизе может не оказаться и других компонент. Оперативный учёт будет точно, а вот всёостальное – как получится.
Первые типовые под V8 выйдут, само собой, одновременно с первым публичным релизом.
Это заявление можно описать одним-единственным словом: дождались. За те три-четыре месяца, которые остались до выхода релиза, никаких концептуальныхизменений в платформу внести уже не получится.
Но вместе с тем очевидцами была отмечена некоторая неуверенность разработчиков V8 и неопределённость по некоторым ключевым вопросам. "Мы сами ещё не знаем, как это лучше сделать и стоит ли это делать вообще". Заявления такого рода плохо совмещаются с объявленными сроками вывода продукта на рынок – а значит, какие-то концептуальныефункции платформы будут обкатываться на живых пользователях и первые релизы V8 (как и всех прошлых версий "1С:Предприятия") будут только называться релизами, оставаясьпо сути в статусе "бета" или, в лучшем случае, "релиз кандидат". Кто бы удивился..
Насколько версия V8, представленная на семинаре, отличается от "ознакомительной"? Отличается,и сильно.
Ключевые моменты докладов по V8 (взято с T1C) (2.5 Kbytes)
1С:Предприятие 8.0 Вести с полей-2: Архитектура.
Введено довольно-таки странное ограничение: один сервер приложенийможет обслуживать несколько баз данных, но одну базу данныхможет обслуживать только один сервер приложений. Понятно,что это сделано с целью упростить жизнь разработчикам V8, но не очень понятно, что же будет с масштабируемостью системы.
Представители "1С" заявили, что одного сервера приложенийдля одной БД вполне достаточно, и что на своих тестахони так и не смогли загрузить сервер приложений на 100%.
Графически архитектуру V8 можно изобразить вот так:
Красная зона – клиенты, жёлтая – сервер приложенийV8, зелёная – сервер баз данных MSSQL. СерверAppServer#1 обслуживает базу DB#1, и подключить к этой же базесервер AppServer#2 нельзя.
Но ведь тесты – тестами, а реальные задачи имеютобыкновение сильно отличаться от тестовых. И получается, что администраторБД V8 лишён возможности распределять нагрузку по нескольким серверам,а трёхзвенная архитектура лишается одного из основных своих преимуществ.Очередной раз мы видим, что концепции "powered by 1C" отличаются от общепринятых,и не всегда в лучшую сторону.. ;-(
Это была плохая новость, а теперь будет хорошая: проблема блокировок в моментодновременного проведения документов решена и забыта. Называется это "паралелльнаязапись в регистры", а физически происходит вот что: проводящийся документблокирует не таблицу целиком (как это сделано в V7), а только те записитаблицы, с которыми он работает.
Ещё одна хорошая новость: введена возможность принудительной блокировки читаемыхданных. V7 использует т.н. "грязное чтение" (в запросы попадают данные из техопераций, которые ещё не завершены, скажем, часть документа провелась, а частьещё не успела, и в отчёты эта первая часть попадёт, хотя проведение документа незакончилось). Запросы V8 по умолчанию работают так же, но есть возможностьзаставить их блокировать записи (не таблицы, а именно записи), которые участвуют в запросе.
Разработчики "1С" наконец-то освоили технологии грамотной работы с базами данных и этоне может не радовать. ;-)
А вот с компонентной моделью пока что полные непонятки. С одной стороны, состав компонентвроде бы предполагается стандартный: ОУ, БУ, Расчёт, УРБД и Web. А с другой стороны,V8 вроде бы не будет полным клоном V7, состав компонент и (особенно) их стыковка междусобой пока что "плавают". Разработчикам V8 хочется сделать так, чтобы и пользователямне пришлось привыкать к новой концепции, и чтобы механизм стыковки и обновления компоненти конфигураций был удобным и эффективным. Окончательного решения покамест не найдено ичто у девелоперов "1С" получится в итоге – мы узнаем только к релизу.
Что ещё можно сказать про архитектуру? Изменилась концепция выполнения программных модулейна стороне сервера приложений. У общих модулей убран признак "Выполнять на сервере" –по-видимому, теперь V8 сама будет решать, когда и где выполнять тот или иной модуль.В утешение программистам добавлен препроцессор, при помощи которого можно будет изменятьлогику модуля в зависимости от места выполнения: "если на сервере, то ... , а если на клиенте, то ...."
Других фундаментальных изменений в архитектуре, по моим сведениям, не произошло.
1С:Предприятие 8.0 Вести с полей-3: Модель данных.
Судите сами:
Неограниченное количество уровней справочника. Вместе с тем будет возможность организовать иерархический справочник совсем без групп(звучит хитро и сделано тоже хитро).Далее, введена возможность множественного подчинения справочников, нотолько на уровне объектов: справочник A в модели данных может бытьподчинён справочникам B и C, но вот у конкретного элементасправочника A может быть только один владелец: либо элемент B,либо элемент C.
ImHO было бы логичнее пойти дальше и совсем выбросить концепцию подчинения справочникови заменить её на механизм, аналогичный подчинению документов (позволяющий строитьсвязи вида "один ко многим" и "многие к одному"), естественно, с поправкойна специфику объекта "Справочник". Но уж что сделано, то сделано.
Осточертевшая всем на свете граница последовательности отправилась в страну вечнойохоты, куда ей и дорога. А вот вместо неё появился загадочный объект "Оперативная отметка времени" – что это, зачем нужно и как будет работать новая инкарнацияпоследовательностей, не знают толком даже сами разработчики.
В модель данных введён ещё один загадочный объект по имени "План видов характеристик".Что это за масло масляное – не очень понятно, известно только, что на егооснове организованы субконто в БУ. По-видимому, "План видов.." (кто толькопридумывает эти жуткие названия) явит собою нечто вроде "метаданных над метаданными",объект, который составляется из других объектов. Может быть, это будет даже удобно.
Что же до регистров ОУ и регистров сведений, то они никуда не денутся и останутся в прежнем виде.
Бухгалтерские объекты претерпели значительные изменения. Всего стало больше: неограниченнаяиерархия плана счетов, неограниченное количество субконто, аналитик и ресурсов. Конечно,"неограниченность" нужно поделить на мощность аппаратной части и возможную кривизну реализации,но всё-таки слово "неограниченный" глазу приятно.
Из БУ убраны два столпа (по сути, два довольно-таки гнилых столпа): больше нет "Операции"и больше нет "Бухгалтерских итогов". Операция ушла в /dev/null/ (что концептуально правильно:вовсе незачем делать отдельный объект там, где можно обойтись стандартным документом), ана место "бухитогов" поставлены специальные бухгалтерские регистры, аж двух разных видов.
Торжество здравого смысла: девелоперы "1С" из трёх разных концепций хранения данных выбралинаилучшую (регистры) и перенесли её на остальные две компоненты (у Расчёта появилисьсвои "регистры расчётов" вместо старых расчётных журналов). Конечно, не имея в руках рабочей копиипродукта судить трудно – возможно и такое, что изменились только названия,а по сути "бухрегистры" ничем принципиально не отличаются от "бухитогов" – нобудем таки надеяться на лучшее.
Что же касается компоненты Расчёт, то про неё сказать почти нечего. Есть регистрырасчётов, есть множество новых объектов ("Период действия", "Период регистрации", "Фактический период действия" и т.д.) но что они делают и зачем нужны – чёрт их знает. Да и неинтересна мне эта компонента, со всеми её журналами-перерасчётами, если честно.
Что ещё? Наверняка в бету будет внесено множество мелких изменений (по сравнениюс "ознакомительной"), но именно что мелких. Революций никаких не планируется.
продолжение: 1С:Предприятие 8.0 Вести с полей-4: Функционал. 1С:Предприятие 8.0 Вести с полей-5: Групповая разработка. 1С:Предприятие 8.0 Вести с полей-6: Порядок цен.