Что такое воу в 1с

Обновлено: 20.05.2024

Гражданские правоотношения сторон по договору возмездного оказания услуг. Отличие от агентского договора

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

В общем случае правоотношения сторон при возмездном оказании услуг регулируются положениями главы 39 ГК РФ [1]. К договору возмездного оказания услуг применяются общие положения о подряде и положения о бытовом подряде (включенные в главу 37 «Подряд» ГК РФ), если это не противоречит главе 39 ГК РФ, а также особенностям предмета договора возмездного оказания услуг. Выполнение научно-исследовательских, опытно-конструкторских и технологических работ, оказание услуг перевозки, транспортной экспедиции и прочих регулируются отдельными главами ГК РФ.

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

В отличие от договора возмездного оказания услуг, агентский договор предполагает наличие посреднических отношений — совершение агентом сделок с третьими лицами по поручению принципала. Предметом агентского договора является совершение агентом юридических и иных действий в целях исполнения поручения принципала (т. е. действий в чужих интересах) [1, ст. 1005]. В ходе исполнения агентского договора агент обязан представлять принципалу отчеты в порядке и в сроки, предусмотренные договором. При отсутствии в договоре соответствующих условий отчеты представляются агентом по мере исполнения им договора либо по окончании действия договора [1, ст. 1008].

Различия между договором возмездного оказания услуг и агентским договором для наглядности представлены в табличной форме (см. таблицу).

Различия между договором возмездного оказания услуг и агентским договором

Договор возмездного оказания услуг

Агентский договор

Регулируется главой 39 «Возмездное оказание услуг» ГК РФ

Регулируется главой 52 «Агентирование» ГК РФ

Существенные различия

Отсутствие отношений между заказчиком и третьими лицами

Наличие опосредованных отношений принципала с третьими лицами

Исполнитель действует в своих интересах

Агент действует в чужих интересах (в интересах принципала от своего имени или от имени принципала)

Исполнение договора за счет собственных средств

Исполнение договора агентом за счет средств принципала

Формальные различия (сами по себе не определяют вид договора)

Стороны договора — исполнитель и заказчик

Стороны договора — агент и принципал

Отчет обычно не требуется

Отчет агента принципалу обязателен

Различия, следующие из практики заключения договоров

(не являются разграничительными признаками, поскольку могут применяться к обоим видам договоров)

Цена договора — фиксированная сумма

Цена договора — процент от определенного показателя

Срок исполнения определяется сторонами договора

Срок исполнения может не ограничиваться

Стороны вправе заключить смешанный договор — договор, включающий в себя элементы различных договоров [2, п. 3 ст. 421]. К отношениям сторон по смешанному договору будут применяться в соответствующих частях правила о договорах, элементы которых содержатся в таком договоре, если иное не вытекает из соглашения сторон или существа смешанного договора. Например, смешанный договор может содержать в себе элементы как договора возмездного оказания услуг, так и договора поручения [1, глава 49], договора комиссии [1, глава 51], агентского договора [1, глава 52], которые относятся к посредническим.

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

Поскольку от условий заключенного договора в части порядка возмещения расходов зависит порядок документального оформления и налогообложения операций, нужно обеспечить включение в смешанный договор всех существенных условий в отношении составляющих его договоров. Так, в посреднической части в договор должны быть включены такие необходимые элементы, как предмет, порядок определения суммы посреднического вознаграждения, порядок представления отчета посредника. Предметом агентского договора являются любые взаимоотношения агента с третьими лицами в интересах принципала, в том числе выполнение функций комиссионера. Необходимо принимать во внимание, что сделки с третьими лицами во исполнение посреднического договора должны совершаться только после его заключения и только в интересах принципала (комитента). Согласно положениям п. 6 информационного письма Президиума ВАС РФ от 17.11.2004 № 85 сделка, совершенная до заключения договора комиссии, не может быть признана заключенной во исполнение поручения комитента.

При заключении договора в порядке, предусмотренном для посреднических договоров, все операции по договору будут рассматриваться контролирующими органами как посреднические. Такая позиция содержится в письмах Минфина России от 10.05.2012 № 03-11-11/149, 11.03.2012 № 03-11-06/2/39.

Ценообразование

Цена в договоре возмездного оказания услуг включает компенсацию издержек исполнителя и причитающееся ему вознаграждение [1, п. 2 ст. 709, ст. 783].

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

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

ГК РФ не содержит специальной главы, регулирующей порядок исполнения договоров оказания услуг поручительства / залога (далее — услуги поручительства).

Правоотношения поручительства / залога регулируются разделом III части первой ГК РФ. Так, по договору поручительства поручитель обязывается перед кредитором другого лица отвечать за исполнение последним его обязательства полностью или в части [2, п. 1 ст. 361]. Кредитор (залогодержатель) имеет преимущественное право получить удовлетворение из стоимости заложенного имущества (предмета залога) [2, п. 1 ст. 334]. В силу ст. 335 ГК РФ право передачи вещи в залог принадлежит собственнику вещи, а также в определенных законодательством случаях лицу, имеющему иное вещное право.

Заключая договор оказания услуг поручительства, исполнитель действует от своего имени и за свой счет, обязуется заключить договор с кредитором заказчика и совершать определенные действия, связанные с этим договором, также от своего имени и за свой счет. Как уже отмечалось, оказание услуг регулируется положениями главы 39 ГК РФ, за исключением некоторых видов услуг, регулируемых отдельными главами ГК РФ, к числу которых услуги поручительства не относятся, поэтому договор оказания услуг поручительства следует рассматривать как договор возмездного оказания услуг.

Косвенным подтверждением такого вывода может служить определение Судебной коллегии по гражданским делам Верховного Суда РФ от 17.05.2016 № 2-КГ16-2, в котором говорится: заключая договор поручительства, стороны действуют на свой страх и риск. Вследствие этого обязанность оценивать степень риска заключения такого договора лежит в равной мере и на поручителе.

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

Мнения, выраженные в письмах контролирующих органов, подтверждают данную позицию. Так, в письме УФНС России по г. Москве от 26.06.2006 № 20-12/56673@ речь идет о соглашении об оказании услуг третьего лица-залогодателя (исполнителя) о предоставлении залога, идентичном договору возмездного оказания услуг. При заключении договора оказания услуг поручительства исполнитель за определенную плату обязуется заключить договор поручительства / залога и совершать за свой счет комплекс необходимых действий, связанных с его заключением и исполнением. К таким действиям могут, в частности, относиться получение выписок из государственных реестров, уплата различных госпошлин, проведение оценки имущества, личное присутствие представителей исполнителя (поручителя) при осуществлении действий по договору поручительства (включая поездки вне места расположения исполнителя).

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

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

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

Доходами организации признается увеличение экономических выгод в результате поступления активов и (или) погашения обязательств, приводящее к увеличению капитала организации, за исключением вкладов участников (п. 2 ПБУ 9/99 «Доходы организации» (утв. приказом Минфина России от 06.05.1999 № 32н)). При этом не признаются доходами организации поступления, в частности, по договорам комиссии, агентским и иным аналогичным договорам в пользу комитента, принципала и т. п. (п. 3 ПБУ 9/99).

Учитывая требование осмотрительности (п. 6 ПБУ 1/2008 «Учетная политика организации» (утв. приказом Минфина России от 06.10.2008 № 106н)), при формировании информации в бухгалтерском учете следует проявлять большую готовность к признанию расходов и обязательств, чем возможных доходов и активов, не допуская создания скрытых резервов.

Мнение о том, что при возмещении затрат доход не возникает, было, в частности, выражено в постановлении Президиума ВАС РФ от 17.03.1998 № 4926/97: если затраты возмещаются одной стороной, то у получателя данного возмещения (другой стороны) выручки в этой части не возникает.

Вместе с тем, по общему правилу, доход исполнителя по договору возмездного оказания услуг равен цене оказанных им услуг, а, исходя из норм статей 709, 783 ГК РФ, цена включает компенсацию издержек и причитающееся вознаграждение. Положения о равенстве дохода цене договора содержатся также в нормах, регулирующих порядок бухгалтерского учета. Согласно п. 6.1 ПБУ 9/99 величина поступления и (или) дебиторской задолженности определяется исходя из цены, установленной договором.

Таким образом, для целей бухгалтерского учета могут быть применимы оба подхода к признанию доходов в части компенсации издержек (возмещения расходов) исполнителя, учитывая экономическое содержание операции и условия хозяйствования организации и исходя из требования приоритета содержания над формой (п. 6 ПБУ 1/2008). Что касается налогообложения, то порядок определения доходов и расходов регулируется нормами НК РФ.

Литература

Гражданский кодекс Российской Федерации. Часть вторая от 26 янв. 1996 г. № 14-ФЗ (с изм. и доп.).

Гражданский кодекс Российской Федерации. Часть первая от 30 нояб. 1994 г. № 51-ФЗ (с изм. и доп.).

Изменения от 09.10.2018г - добавил доп.соглашение на "абонентку". Количество предоплаченных часов вы можете указать любое по договоренности с Заказчиком - и чаще всего в зависимости от специфики вашего сопровождения.

Начало

Для чего нужен договор? Если по закону можно работать без него?

Более точно вопрос формулируется так: для чего составлять письменный договор, если по Гражданскому Кодексу можно работать по устным договоренностям?

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

1) договор - как доказательство для налоговой, что занимаешься законной экономической деятельностью и работаешь без НДС.

2) договор - как элемент репутации, подтверждает твою благонадежность перед службой безопасности банка, когда нужно открыть расчетный счет или получить кредит.

3) договор - для контрагента - через год никто не вспомнит, на каких условиях договаривались работать, зато всегда можно обратиться к подписанному договору и пересмотреть условия.

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

Договора за годы работы изменялись, дорабатывались, прирастали смыслами.

Договор оказания услуг

Разберем Договор возмездного оказания услуг (консультационных, информационных, программистских).

1. Первым пунктом всегда указываю какую программу сопровождаю. Почему так: возникают ситуации, когда несколько фирм сопровождают клиента - кто типовой ЗУП, кто доработанную БП и т.п. Таким образом подчеркивается, что вопросами другой программы я не занимаюсь.

2. Вторым пунктом всегда указываю обязанность клиента делать архивные копии рабочей базы.

3. Третьим пунктом подчеркиваю, что работа с клиентом совместная и достижение цели представляет собой итерации взаимодействия - перед каждым этапом обсуждаются детали задачи, затем задача решается и сдается, после чего итерация повторяется на очередном этапе работ. Такую технологию используют многие, но выразить ее словами на понятном для клиента языке удалось Александру Белову (интервью здесь, Доп. соглашение к договору

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

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

4. Исполнитель не несет ответственности за устанавливаемые Заказчиком самостоятельно или с помощью третьих лиц программы и их обновления, не проверяет и не оценивает правомерность их использования, не модифицирует и не обходит защиту с помощью сторонних программ.

5. Заказчик обязан предоставить Исполнителю базы данных 1С и программы 1С (в том числе обновления) в необходимом объеме для выполнения консультационных и программистских работ Исполнителя.

Лицензионный договор

Лицензионный договор - договор передачи прав на программный продукт при продаже лицензионной программы. За основу взят наиболее понравившийся интернетовский шаблон и многостраничный договор фирмы 1С. Основные положения можно вместить на одну страницу.

В последнем пункте можно сделать отсылку на "Пользовательское соглашение" (такой желтый листок 1С или, по-другому, регистрационная анкета):

5.2. Объем и срок действия прав на использование в отношении конкретных ПРОДУКТОВ, переданных ЛИЦЕНЗИАТУ в период действия настоящего лицензионного договора, определяется «Пользовательским лицензионным соглашением», входящим в состав поставок ПРОДУКТОВ.

Данное пользовательское соглашение является обязательным дополнением к Лицензионному договору, имеет юридическую силу, передается в одном экземпляре только для клиента и не подписывается сторонами. Такие нюансы.

Договор-счет-акт

Вот некоторые положения, которые мне нравятся потому, что Владимир четко подобрал слова для расстановки границ (уменьшения рисков):

3. Платёж подтверждает качество и своевременность оказанных услуг.

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

7. Исполнитель вправе опубликовать информацию о клиенте на сайте [… → адрес сайта] для рекламы своих услуг.

8. Права требования по договору-счёту-акту уступке не подлежат.

11. Ответственность Заказчика и Исполнителя ограничена [… → верхняя планка денег] рублей.

Абонентский договор

Абонентский договор - это договор с ежемесячной ставкой. Представляет собой связку: Договор оказания услуг + Допсоглашение. Допсоглашение необходимо, чтобы описать детали и условия оплаты, возможно прописать список задач.

Добавил договор на ежемесячное сопровождение (абонентское обслуживание) по 14 часов по сниженной ставке на каждый месяц сопровождения. Назовем его Допсоглашение-3 .

Ранее был добавлен договор на абонентское сопровождение, когда клиент готов оплатить 1 час на год вперед. Назовем его Допсоглашение-2 . Важное принципиальное отличие заключается в том, что в Допсоглашении-2 мы включаем в гарантированную техподдержку 1 час на каждый месяц в течение года (то есть Всего=12 часов/год), в Допсоглашении-3 мы включаем 14 часов на ежемесячное сопровождение (то есть Всего=14 часов/месяц). Как следствие, изменяются остальные пункты.

Действующим Законодательством Российской Федерации предусмотрено множество типов гражданско-правовых соглашений.

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

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

Отметим, что договор о возмездном оказании услуг может заключаться как между физическими лицами – гражданами РФ, так и между юридическими лицами - организациями.

Договор возмездного оказания услуг и Гражданский кодекс РФ

Договор возмездного оказания услуг регламентирован ГК РФ (Гражданским кодексом). Нормы поведения сторон прописаны во главе 39 ст. 783 ГК. Гражданский кодекс РФ определяет договоры возмездного оказания услуг как соглашения, согласно которым одна сторона – исполнитель – принимает обязательства оказать определенную услугу для другой стороны – заказчика, которая гарантирует последующую оплату полученного результата.

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

Условия Договора возмездного оказания услуг

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

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

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

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

В каждом отдельно составленном соглашении могут присутствовать три вида условий:

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

Большое значение уделяется предмету, то есть точному описании работы, места и срока ее исполнения.

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

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

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

Обязанности исполнителя по договору возмездного оказания услуг

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

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

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

В-третьих, исполнитель, на основании статьи 780 ГК России, должен оказать свои услуги в рамках договора возмездного оказания услуг лично. При этом если с заказчиком достигнуто соглашение, то часть работы может быть доверена третьим лицам.

Права заказчика по договору возмездного оказания услуг

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

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

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

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

Когда договор возмездного оказания услуг считается исполненным

Факт выполнения условий договора возмездного оказания услуг признается в момент подписания акта приема-передачи.

Отказ заказчика от услуг исполнителя по договору возмездного оказания услуг

Согласно статье 782 ГК России, заказчик может без объяснения причин и в одностороннем порядке сообщить исполнителю о своем отказе от услуг. В договоре не может быть никаких ограничений на это право. Единственный случай, когда заказчик не может отказаться от заключенной сделки – это когда работа уже сделана или услуга оказана, и подписан соответствующий акт приемки выполненных работ или оказанных услуг.

Если заказчик воспользовался своим правом и отказался от услуг исполнителя, то заказчик должен:

во-первых, уведомить об этом исполнителя в письменном виде;

во-вторых, прекратить фактическое пользование услугами.

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

Остались еще вопросы по бухучету и налогам? Задайте их на бухгалтерском форуме.

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

image

Нативные приложения

  • STL (в частности, строки, контейнеры и алгоритмы)
  • множественное наследование, в т.ч. множественное наследование реализации
  • шаблоны
  • исключения
  • умные указатели (собственная реализация)

Компоненты

  • Разделение способствует лучшему проектированию, в частности лучшей изоляции кода
  • Из набора компонентов можно гибко собирать разные варианты поставки:
    • Например, инсталляция тонкого клиента будет содержать wbase, но не будет backend
    • а на сервере wbase, наоборот, не будет
    • оба варианта будут, конечно, содержать nuke и bsl
    • Предоставляет фабричные методы, позволяющие создать класс из другой компоненты зная только его название (без раскрытия реализации)
    • Предоставляет инфраструктуру умных указателей с подсчетом ссылок. За временем жизни SCOM-класса не нужно следить вручную
    • Позволяет узнать реализует ли объект конкретный интерфейс и автоматически привести указатель на объект к указателю на интерфейс
    • Создать объект-сервис, всегда доступный через метод get_service и т.д.

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

    Для поддержки сервисов SCOM предлагает дополнительную, достаточно сложную инфраструктуру. Центральным в ней является понятие SCOM-процесса, который служит контейнером для запущенных сервисов (т.е. выполняет роль Service Locator), а также содержит привязку к локализуемым ресурсами. SCOM процесс привязывается к потоку ОС. Благодаря этому внутри приложения можно вот так получать сервисы:

    Более, того переключая логические (SCOM) процессы привязанные к потоку, можно получить практически независимые с точки зрения информационного пространства приложения, выполняющиеся в рамках одного потока. Так устроен наш тонкий клиент, работающий с файловой базой — внутри одного процесса ОС находятся два SCOM-процесса, один связан с клиентом, а второй — с сервером. Такой подход позволяет унифицировать написания кода, который будет работать как на локальной файловой базе, так и в «настоящем» клиент-серверном варианте. Цена за такое единообразие — накладные расходы, но практика показывает, что они того стоят.

    На основе компонентной модели SCOM реализована и бизнес-логика и интерфейсная часть 1С: Предприятия.

    Пользовательский интерфейс

    Кстати, об интерфейсах. Мы не используем стандартные контролы Windows, наши элементы управления реализованы напрямую на Windows API. Для Linux-версии сделана прослойка, работающая через библиотеку wxWidgets.
    Библиотека элементов управления не зависит от других частей «1С:Предприятия» и используется нами еще в нескольких небольших внутренних утилитах.

    За годы развития 1С:Предприятие внешний вид контролов менялся, но серьезное изменение принципов произошло только один раз, в 2009 году, с выходом версии 8.2 и появлением «управляемых форм». Помимо изменения внешнего вида, фундаментально изменился принцип компоновки формы — произошел отказ от попиксельного позиционирования элементов в пользу flow-компоновки элементов. Кроме того, в новой модели элементы управления работают не напрямую с доменными объектами, а со специальными DTO (Data Transfer Objects).
    Эти изменения позволили создать веб-клиент «1С:Предприятия», повторяющий С++ логику контролов на JavaScript. Мы стараемся поддерживать функциональную эквивалентность между тонким и веб клиентами. В том случае, когда это невозможно, например, из-за ограничений доступных из JavaScript API (например, возможности работы с файлами очень ограничены), мы часто реализуем нужную функциональность при помощи расширений браузеров, написанных на C++. На данный момент мы поддерживаем Internet Explorer и Microsoft Edge (Windows), Google Chrome(Windows), Firefox (Windows и Linux) и Safari (MacOS).

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

    image


    Интерфейс 1С на ОС Linux

    image


    Интерфейс 1С на мобильном устройстве

    image


    Интерфейс 1С на ОС Windows

    image


    Интерфейс 1С — веб-клиент

    Open source

    Заключение

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

    Как реализована мобильная платформа 1С?
    Описание внутреннего устройства веб-клиента?
    Или, может быть, Вам интересен процесс выбора фич для новых релизов, разработки и тестирования?

    Читайте также: