Ввиду того, что несколько хороших сайтов, посвященных программированию на 1С прекратили своё существования, я решил написать серию статей на эту тему. Итак начну.
Встроенный язык программирования 1С:Предприятие — язык программирования, который используется в семействе программ «1С:Предприятие». В версии 7.x являлся интерпретируемым языком сверхвысокого уровня. Интерпретация текста программного модуля в байт-код выполнялась в момент обращения к этому модулю в процессе работы, таким образом обычно интерпретировалась только часть текстов программных модулей (в версиях 7.7 и старше). Начиная с версии 8.х модули компилируются.
Средой исполнения языка является программная платформа «1С:Предприятие». Визуальная среда разработки («Конфигуратор») является неотъемлемой частью пакета программ «1С:Предприятие».
Диалекты языка для платформ 1С седьмых версий (7.0, 7.5, 7.7) совместимы «снизу вверх» с незначительными исключениями. Языки для платформ 1С:7.х и 1С:8.х совместимы по основным операторам, но значительно отличаются в работе с прикладными объектами, вследствие чего перенос кода из 1С:7.х в 1С:8.х не имеет смысла.
Почему 1С — лучший язык программирования? #shorts
Проекты на встроенном языке 1С:Предприятия называются конфигурациями. Распространение (продажа) и внедрение таких конфигураций — это основная коммерческая деятельность фирм-партнёров 1С.
Основные характеристики языка 1С
*Интерпретатор с предварительной компиляцией — исходный код на встроенном языке компилируется во внутренний байт-код 1С, а потом исполняется виртуальной машиной стекового типа.
*Скомпилированные модули кешируются.
*Встроенный язык 1С является предметно-ориентированным языком. Обладает некоторыми возможностями объектно-ориентированных языков: обращение к свойствам и методам объектов. Но программно нельзя создавать новые классы, только визуально.
*Используется слабая типизация переменных, в выражениях можно смешивать переменные и литералы разных типов.
*Динамическая типизация переменных — тип переменной определяется в процессе выполнения программы. Одна переменная может принимать значения разных типов.
Комментарии
Комментарий используется для размещения в исходном тексте программного модуля всякого рода пояснений к работе модуля. Хорошим тоном программирования считается, когда исходный текст содержит исчерпывающий комментарий с описанием алгоритма. В режиме исполнения программы комментарии пропускаются.
В тексте программного модуля комментарий начинается парой символов «//» и заканчивается концом строки. Это значит, что комментарий можно начинать с начала строки или записывать его после оператора на той же строке. После начала комментария писать оператор на той же строке нельзя, необходимо закончить комментарий концом строки.
А = В; // Это — комментарий // Это тоже комментарий
Формат операторов
Операторы имеют вид стандартного обращения к процедуре, за исключением оператора присваивания (А = В;) и синтаксических конструкций встроенного языка (например, таких как Для, Пока, Если). Между собой операторы обязательно следует разделять символом «;» (точкой с запятой). Конец строки не является признаком конца оператора, т.е. операторы могут свободно переходить через строки и продолжаться на другой строке. Можно располагать произвольное число операторов в одной строке, разделяя их символом «;».
ЧТО НУЖНО ЗНАТЬ И УМЕТЬ СПЕЦИАЛИСТУ 1С
Операторы языка в программном модуле можно подразделить на две категории: операторы объявления переменных и исполняемые операторы.
Операторы объявления переменных создают имена переменных, которыми манипулируют исполняемые операторы.
Перем Переменная; //это оператор объявления переменной
Переменная = 1; // исполняемый оператор
МояПроцедурa(Переменная); // тоже исполняемый оператор
Имена переменных, процедур и функций
Именем переменной, объявленной процедуры или функции, может быть любая последовательность букв, цифр и знаков подчеркивания «_», начинающаяся с буквы или знака подчеркивания «_».
Вновь создаваемые имена не должны совпадать с зарезервированными словами языка или именами свойств, непосредственно доступных в текущем контексте. Распознавание имен переменных, процедур и функций ведется без учета регистра букв.
В основном в 1С используется стиль CamelCase. Это значит что если имя переменной состоит из нескольких слов, то они пишутся без пробелов, но каждое новое слово начинается с большой буквы. Как правило, первая буква имени переменной тоже большая.
//в 1С принято имена переменных начинать с большой буквы
ПеременнаяКэмелКейс = Неопределено;
//так тоже можно, но предпочтительней первый вариант
переменная_не_кэмел_кейс = Неопределено;
В 1С можно явно объявить переменную с использованием ключевого слова Перем. Если переменная объявлена через ключевое слово Перем, то ей нельзя сразу присвоить значение. Можно не объявлять отдельно, а сразу присвоить значение.
Перем ЯвнаяПеременная; //явное объявление переменной
ЯвнаяПеременная = 1; //
//неявное объявление переменной и присвоение ей значения
НеявнаяПеременная = 2;
Значение переменной можно изменять по ходу работы программы.
Переменная = 1;
Переменная = 2; //теперь Переменная стала равна двум
Переменная = 3 //теперь трем
Объявлять переменные через ключевое слово Перем можно только в начале модуля или процедуры. По середине или в конце модуля нельзя.
Функция Тестовая()
Перем Можно;
а = 0;
Перем Нельзя; //так нельзя, будет ошибка при компиляции модуля
КонецФункции
Зарезервированные слова
Приведенные далее ключевые слова являются зарезервированными и не могут использоваться в качестве создаваемых имен переменных, реквизитов объектов конфигурации и объявляемых процедур и функций. В данном варианте языка каждое из ключевых слов имеет два представления — русское и английское: Если (If), Тогда (Then), ИначеЕсли (ElsIf), Иначе (Else), КонецЕсли (EndIf), Для (For), Каждого (Each), Из (In), По (To), Пока (While), Цикл (Do), КонецЦикла (EndDo), Процедура (Procedure), Функция (Function), КонецПроцедуры (EndProcedure), КонецФункции (EndFunction), Перем (Var), Перейти (Goto), Возврат (Return), Продолжить (Continue), Прервать (Break), И (And), Или (Or), Не (Not), Попытка (Try), Исключение (Except), ВызватьИсключение (Raise), КонецПопытки (EndTry), Новый (New), Выполнить (Execute).
Специальные символы, используемые в исходном тексте
// — Двумя знаками «косая черта» начинается комментарий. Комментарием считается весь текст от знака «//» до конца текущей строки.
| — Вертикальная черта в начале строки используется только в строковых константах и означает, что данная строка является продолжением предыдущей (перенос строки).
~ — Знаком тильда начинается метка оператора.
: — Двоеточием заканчивается метка оператора.
; — Точка с запятой является символом разделения операторов.
( ) — В круглые скобки заключается список параметров методов, процедур, функций и конструкторов. Также они используются в выражениях встроенного языка.
[ ] — С помощью оператора «квадратные скобки» производится обращение к свойствам объекта по строковому представлению имени свойства. Также возможно обращение к элементам коллекций по индексу или другому параметру.
, — Запятая разделяет параметры в списке параметров методов, процедур, функций и конструкторов.
» » — В двойные кавычки заключаются строковые литералы.
‘ ‘ — В одинарные кавычки заключаются литералы даты.
. — Десятичная точка в числовых литералах. Разделитель, используемый для обращения к свойствам и методам объектов встроенного языка.
+ — Символ «плюс» обозначает операцию сложения и конкатенации.
— — Символ «минус» обозначает операцию вычитания.
* — Символ «звездочка» обозначает операцию умножения.
/ — Символ «косая черта» обозначает операцию деления.
% — Получение остатка от деления. Допускается использования дробных значений делимого и делителя.
> — Правая угловая скобка обозначает логическую операцию «больше».
>= — Логическая операция «больше или равно».
< — Левая угловая скобка обозначает логическую операцию «меньше».
= — Знак равенства обозначает присвоение или логическую операцию «равно».
<> — Две угловые скобки обозначают логическую операцию «не равно».
Язык написания программных модулей
Встроенный язык 1С:Предприятия является двуязычным. Почти все зарезервированные слова, имена типов значений, свойств, методов, событий имеют два имени: русское и английское.
Исключение составляю слова, не имеющие аналогов в русском языке. В тесте программных модулей эти имена можно свободно смешивать, используя то русские, то английские имена без каких-либо ограничений.
Перем Переменная;
Переменная = Undefined;
Регистры букв при написании программных модулей
Регистр букв (строчные или заглавные) при написании имен переменных, свойств, методов, процедур, функций, а также функций встроенного языка не имеет значения.
Источник: luckyea77.livejournal.com
Изменения НДФЛ в 1С:Зарплата и управление персоналом с 2023 года
Баландина Татьяна Посмотреть все статьи >> Ведущий специалист по внедрению 1С:Предприятие партнёрской сети «ИнфоСофт».
Время прочтения — 7 мин.
Получить бесплатную консультацию
С января 2023 года изменяются правила учета НДФЛ. Рассмотрим, как эти изменения отражены в 1С: ЗУП.
Пункт 2 статьи 223 НК РФ утрачивает силу (ФЗ от 14.07.2022 № 263-ФЗ).
До 2023 года действовал такой порядок: « При получении дохода в виде оплаты труда датой фактического получения налогоплательщиком такого дохода признается последний день месяца, за который ему был начислен доход за выполненные трудовые обязанности в соответствии с трудовым договором (контрактом).»
Это значит, что дата удержания НДФЛ с доходов в виде оплаты труда всегда фиксировалась последним днем месяца.
С 2023 года для заработной платы будет действовать порядок, который установлен пунктом 1 статьи 223 НК РФ. Теперь датой фактического получения дохода в виде оплаты труда признается дата получения дохода, т.е. дата ее выплаты. Как следствие, НДФЛ необходимо будет удерживать и при выплате аванса и любых межрасчетных выплат.
Меняется определение налоговой базы для НДФЛ (пункт 3 статьи 2 ФЗ от 23.11.2020 № 372-ФЗ).
С 1 января будут учитываться все налоговые базы в совокупности. Если доходы по всем налоговым базам сотрудника превысят 5 млн рублей, то налог с суммы 650000 рублей исчислят по ставке 13 %, а с превышающей 15%.
В 1С:ЗУП С 2023 года из учетной политики исчезает пункт «Выполнять расчет НДФЛ по прогрессивной шкале». Теперь это будет действовать всегда. Так же утрачивают свою силу и все настройки исчисления/удержания НДФЛ в учетной политике организации. НДФЛ будет всегда исчисляться и удерживаться.
Меняется срок перечисления исчисленного и удержанного НДФЛ (п.6 ст 226 НК РФ)
- За период с 23 числа предыдущего месяца по 22 число текущего месяца – оплата не позднее 28 числа текущего месяца
- За период с 23 по 31 декабря – не позднее последнего рабочего дня календарного года
- За период с 1 по 22 января – не позднее 28 января
Сроки подачи расчета 6-НДФЛ:
- за квартал, полугодие и девять месяцев — не позднее 25 числа месяца, следующего за соответствующим периодом;
- за год — не позднее 25 февраля.
Уведомление об исчисленных суммах налогов или деклараций необходимо предоставить не позднее 25го числа месяца, в котором установлен срок уплаты соответствующих налогов.
В 1С:ЗУП уведомление формируется в разделе «Зарплата» — «Отражение удержанного НДФЛ в бухучете»
В соответствие с уведомлениями все платежи налоговики будут списывать с единого налогового счета 28го числа, поэтому до этой даты компания должна внести необходимую сумму на счет. Например, сумму исчисленного и удержанного НДФЛ можно вносить на счет каждый раз при его удержании.
Расчет заработной платы за декабрь 2022 года
С декабря 2022 года в 1С:ЗУП в документе начисления заработной платы внизу появилось поле «Планируемая дата выплаты».
Автоматически устанавливается дата из настроек по организации. «Настройки» — «Организации» — Учетная политика — Бухучет и выплата зарплаты»
1. Пример расчета зарплаты за декабрь 2022 года:
Начислим аванс и выплатим его 20.12.2022 года, начислим зарплату и выплатим ее 30.12.2022 года, при этом не забудем исправить плановую дату выплаты на 30.12.2022.
Плановую дату выплаты необходимо поменять на нужную до расчета зарплаты. Если все-таки вы рассчитали зарплату с датой выплаты, например, 05.01.2023г, а потом решили поменять, то необходимо будет зайти на вкладку НДФЛ документа Начисление зарплаты и взносов и пересчитать его, чтобы дата получения дохода встала верная, так как автоматически при смене планируемой даты, дата получения дохода на этой вкладке не меняется.
При таком варианте, когда зарплата выплачена полностью в декабре, вся сумма полученного дохода декабря попадет в отчетность за 2022 год.
Для того чтобы посмотреть суммы налоговой базы, суммы вычетов, исчисленного и удержанного НДФЛ можно воспользоваться отчетом «Подробный анализ НДФЛ по сотрудникам» без разбивки по сотрудникам.
Теперь посмотрим 1 и 2 раздел 6-НДФЛ. Действительно, вся сумма дохода и налога за 2022 год попала в отчет.
2. Рассмотрим второй пример с выплатой заработной платы за декабрь в январе.
Аванс оставим тот же, поменяем только дату выплаты в документе Начисление зарплаты и взносов на 12.01.2023 года.
Как видно из подробного анализа НДФЛ, начисленная сумма дохода и НДФЛ ушли в январь 2023 года, а в отчетность за 2022 год декабрь не попал.
Посмотрим в 6-НДФЛ:
И справка 2-НДФЛ для сотрудника будет без декабря:
Расчет заработной платы за январь 2023 года
В 1С:ЗУП с 2023 года в ведомости на выплату пропадает возможность заполнения авансов фиксированной суммой или процентом от тарифа. Это связано с тем, что с таких авансов НДФЛ не исчисляется и не удерживается. Единственным способом расчета аванса останется только аванс по расчету за первую половину месяца.
Для того, чтобы перейти на аванс расчетом за первую половину месяца специально никаких настроек делать не нужно. Необходимо проверить все начисления («Настройки» — «Начисления») на наличие галочки «Начисляется за первую половину месяца».
Чтобы начислить аванс, нужно зайти в документ «Зарплата» — «Все начисления» — «Начисление зарплаты за первую половину месяца», установить плановую дату выплаты и рассчитать. Суммы из этого документа попадают только в налоговые регистры и специальные регистры для авансов. В расчетный листок и свод суммы попадают только после окончательного расчета зарплаты. Для выплаты аванса в ведомости указываем способ выплаты «Аванс».
С 2023 года не зависимо от того, что стоит в настройках учетной политики по НДФЛ, налог будет удержан при выплате аванса.
По отчету «Налоги и взносы» — «Отчеты по налогам и взносам» — «Анализ НДФЛ по датам получения доходов», посмотрим суммы исчисленного и удержанного налога за период с 01.01.2023 по 22.01.2023.
В уведомлении необходимо отразить сумму налога 54 730. «Зарплата» — «Отражение удержанного НДФЛ в бухучете».
До 30.01.2023 года (28.01 – выходной) нужно будет перечислить эту сумму на Единый налоговый счет (ЕНС) так же, как и сумму страховых взносов за декабрь 2022 года.
Начислим и выплатим заработную плату за январь 2023 года. Дата получения дохода будет 05.02.2023 г.
Из-за того, что по налоговому учету теперь заработная плата учитывается по дате получения дохода, то доход в налоговом регистре будет разбит на два месяца (аванс в январе и зарплата в феврале). Так это выглядит в отчете «Подробный анализ НДФЛ»
А по зарплатным регистрам вся сумма дохода попадет в январь.
Также можно заметить, что вычеты в январе как будто задвоились, но на самом деле это применились вычеты январские – с аванса и февральские с зарплаты. В феврале применятся вычеты мартовские и т.д.
Сверка данных по НДФЛ между зарплатными и налоговыми регистрами.
С нового года становится проблематичным сверить свод начисленной заработной платы с налоговыми регистрами, так как в расчетном листке за месяц одна цифра, а в регистрах налогового учета эта сумма может быть разбита на несколько месяцев.
Например, можно воспользоваться отчетами «Полный свод начислений, удержаний и выплат» и «Подробный анализ НДФЛ».
Для отчета Полный свод начислений, удержаний и выплат («Зарплата» — «Отчеты по зарплате») сделаем разбивку по кодам дохода НДФЛ, для этого немного изменим настройки, добавив в группировки отчета «код НДФЛ».
Данные налоговых регистров можно посмотреть, например, в отчете «Подробный анализ НДФЛ по сотруднику», который тоже немного донастроим, добавив отборы по месяцу расчета в документах-основаниях:
Сформируем отчеты и проверим суммы:
Во втором отчете видно, каким образом разбилась начисленная зарплата за январь в налоговом регистре. Так же пользуясь расшифровками по сотрудникам, можно проанализировать причину расхождений зарплатных и налоговых регистров за месяц, причину не удержанной зарплаты.
Используйте 1С:ЗУП на уровне эксперта!
Источник: is1c.ru
Чем отличается Бухгалтерия 1С КОРП?
Программный продукт «1С:Бухгалтерия 8 КОРП» – это самая старшая версия в линейке Бухгалтерий. Она самая дорогая и самая продвинутая. (За исключение Бухгалтерия КОРП МСФО – но мы ее относим больше к специфическим продуктам).
Далеко не все пользователи знают, чем отличается бухгалтерия КОРП от других версий и не понимают до конца, стоит ли останавливать свой выбор именно на этом продукте. В этой ситуации легко можно стать жертвой компании-партнера 1С, которая стремится продать наиболее дорогой продукт.
Давайте разберемся, чем отличается бухгалтерия КОРП от других версий Бухгалтерии и определим, нужна ли Бухгалтерия КОРП именно в вашем случае.
Конфигурация Бухгалтерия КОРП разработана на основе продукта «Бухгалтерия предприятия ПРОФ», работающей на платформе «1С:Предприятие 8». Она предназначена для автоматизации бухгалтерского и налогового учета, включая подготовку регламентированной отчетности, в том числе и по обособленным подразделениям.
Раньше разница между Бухгалтерией КОРП и ПРОФ определялась только как возможность вести обособленные подразделения. На официальном сайте 1С ещё до недавнего времени висело только это отличие.
На самом деле, отличий сейчас стало гораздо больше. Если пробежаться по ним, то это и интеграция с документооборотом КОРП, и учет контролируемых сделок, и специфическая работа с обособленными подразделениями, и раздельный учёт.
Особенности программы Бухгалтерия 1С: КОРП
Конфигурация Бухгалтерии КОРП обладает рядом некоторых принципиальных особенностей, однако, далеко не все они потребуются рядовому пользователю.
Так же хотим отметить что если вы случайно купили ПРОФ и его функционала оказалось мало, то при необходимости ее возможно проапгрейдить её до редакции КОРП. Как мы уже рассказывали в одной из статей, это очень легко сделать. Благодаря такому подходу вы составите собственное представление о разных конфигурациях и не потеряете лишние средства.
1С:Бухгалтерия 8 КОРП
Интерфейс 1С Бухгалтерия КОРП
Интерфейс программы в редакции КОРП мало отличается от интерфейса остальных продуктов серии. У пользователя просто появляется несколько дополнительных открытых возможностей для работы. Если в ПРОФ некоторые разделы будут для вас закрыты, то в КОРП они доступны.
- Учёт обособленных подразделений в КОРП
- Чем отличается 1с бухгалтерия от 1с предприятие
- Как мы уже отметили ранее, версия КОРП позволяет вести учет в обособленных подразделениях
Что это за обособленные подразделения?
Обособленное подразделение – это предприятие, которое территориально отделено от основной компании и оборудованное по месту своего расположения стационарными рабочими местами.
Вести учет по такому подразделению законодательство требует отдельно.
В Бухгалтерии ПРОФ вести обособленные подразделения не представляется, возможным – эту функцию как раз реализовали в бухгалтерии КОРП, при чем это касается как для подразделений выделенных так и не выделенных на отдельный баланс
Значит, из всего перечисленного можно сделать вывод, что если вам требуется вести учет по обособленным подразделениям, то вам подойдет только бухгалтерия КОРП.
Учёт государственных контрактов по 159 ФЗ
Помимо возможности вести учёт по обособленным подразделениям, конфигурация версии КОРП способна вести учёт по действующим государственным контрактам по гос оборон заказу (159 ФЗ). Для всех, кто так или иначе сталкивался с бухгалтерской работой в данном направлении, эта возможность будет настоящим подарком.
– По бесплатному телефону 8 (800) 600-32-31 или +7 (495) 139-09-60
– Оставьте заявку через наш сайт или через раздел контакты
Раздельная нумерация документов по обособленным подразделениям
Бухгалтерия версии КОРП позволяет не просто вести учёт по каждому обособленному подразделению раздельно, но и может вести раздельную нумерацию документов по каждому такому подразделению.
Документы АВИЗО в 1С Бухгалтерия КОРП
В бухгалтерии КОРП реализован такой документ как АВИЗО, который представляет собой уведомление о различных изменениях статуса финансовых потоков или имущества.
Что умеет учитывать в этом разделе 1С Бухгалтерия КОРП и какие разновидности можно сформировать:
- Авизо для передачи дебиторской или кредиторской задолженности между обособленными подразделениями
- Авизо на передачу МПЗ
- Авизо на передачу основных средств
- Авизо прочие варианты
- Интеграция с 1С:Документооборот КОРП
- Чем отличается 1с бухгалтерия от 1с предприятие
- В Бухгалтерии КОРП дополнительно реализован обмен с программой 1С Документооборот КОРП, что в Бухгалтерии ПРОФ сделать нельзя.
Дополнительные виды отчетности под специфическую деятельность
- Отчетность контролируемых иностранных компаний
- Отчетность некредитных финансовых организаций
- Подготовка уведомления о контролируемых сделках
Для кого подойдет Бухгалтерия 1С КОРП
Чаще всего наших клиентов интересуют отличия версии Бухгалтерии КОРП от Бухгалтерии ПРОФ. На основании этих отличий легко предположить, какая версия подойдет именно вам. Давайте сформулируем, чем КОРП отличается от бухгалтерии ПРОФ и какая из них подойдет именно вам.
Версия КОРП подойдет для всех пользователей, которым нужен учет по обособленным подразделениям. Мы уже упомянули, что это самое главное и самое первое различие ПРОФ и КОРП, о котором нужно вспомнить при выборе версии.
Версия КОРП нужна всем пользователям, которые работают с государственным секторам, а именно выполняют гособоронзаказы по 159 ФЗ.
Бухгалтерия КОРП потребуется и в тех случаях, если у вас некредитная финансовая организация, нужно построить взаимодействие между взаимозависимыми лицами и у вас есть контролируемые иностранные компании.
Если эти три отличия Бухгалтерии КОРП от Бухгалтерии ПРОФ для вас не значимы, а ваша компания пока не работает или не планирует работать в данных направлениях вообще, то лучше приобрести версию ПРОФ или даже Базовую.
Ну а базовую версию и ПРОФ мы сравнивали в предыдущих статьях.
1С Бухгалтерия: Описание и возможности В этой статье мы подготовили подробный обзор программного продукта Бухгалтерия 1С, который позволит ответить на множество…
Обмен между 1С Бухгалтерия и 1С Управление торговлей Настроим обмен данными между бухгалтерией предприятия и управлением торговлей и перенесем старые данные из справочников…
Источник: ev-group.ru