1c 8 документ валюта не пересчитывает
Зачем нужна "Переоценка валюты"? Мне довольно часто задают этот вопрос начинающие бухгалтеры, потому что ещё не сталкивались на практике с валютными операциями и не понимают откуда берётся эта переоценка, как она рассчитывается и нужна ли. Давайте же разберёмся с этим раз и навсегда на примере 1С:Бухгалтерия 8.3, редакция 3.0.Во-первых, переоценка возникает "сама собою" при закрытии месяца.
Во-вторых, возникает она только для организаций, у которых были операции с валютой.
Согласно ПБУ 3/2006 об учете активов и обязательств, стоимость которых выражена в иностранной валюте имеем:
Стоимость активов и обязательств, выраженная в иностранной валюте, для отражения в бухгалтерском учете и бухгалтерской отчетности подлежит пересчету в рубли.
Пересчет стоимости производится на дату совершения операции в иностранной валюте, а также на отчетную дату.
среда, 12 марта 2014 г.
Заводим валютный счёт (USD)
Для этого заходим в раздел "Главное"->"Организации" и открываем там нашу организацию ( у вас другое меню? ):
В карточке организации в верхней панели выбираем пункт "Банковские счета":
В открывшемся списке счетов нажимаем кнопку "Создать" и заполняем карточку расчетного счета следующим образом (номер счета и БИК указаны в качестве примера; обязательно выбрать валюту счета USD):
Нажимаем "Записать и закрыть".
Делаем закрытие месяца за январь
Заходим в раздел "Операции" и выбираем там пункт "Закрытие месяца" ( у вас другое меню? ):
Выбираем период январь 2014 и нажимаем "Выполнить закрытие месяца".
Затем находим пункт "Переоценка валютных средств", нажимаем на нём и выбираем "Показать проводки":
Вот она наша курсовая разница на 2.58 рубля:
Вернёмся в закрытие месяца за январь 2014 и найдём там кнопку "Справки-расчеты". Нажмём её и выберем пункт "Переоценка валютных средств":
Программа сформирует отчет с расчетами по переоценке валютных средств:
Аналогичным образом сделайте закрытие месяца за февраль, чтобы убедиться, что наши предварительные расчеты совпадают с поведением программы.
Мы молодцы, на этом всё
Кстати, подписывайтесь на новые уроки.
Делаем загрузку курсов валют за 2014 год
Еще в этой же категории
Момент Времени и Граница, назначение, примеры использования 39
Момент времени: Фирма 1С описывает так: Предназначен для получения и хранения момента времени для объекта в базе данных. Содержит дату и время, а также ссылку на объект базы данных. Используется в качестве значений свойств и параметров методо Преобразование даты 1С в unixtime (Unix Time Stamp) 17
Как известно, unixtime содержит количество секунд, прошедших с 1 января 1970 года. Поэтому, для преобразования даты 1С в дату unixtime нам всего то нужно от нашей даты отнять дату 01.01.1970 и перевести получившееся значения в удобоваримый формат. Функция месяц прописью 11
// пример от glory01 А = Формат(20020820153309, " ДФ=ММММ" ) // А = " Август" А = Формат(ТекущаяДата(), " ДФ=ММММ" ) // А = " Март" Функция МесяцПрописью(НомерМесяца) Экспорт НомерМесяца=Число(НомерМесяца); Если НомерМесяца = 1 Тогда Воз Как вычислить разницу между двумя датами в месяцах 11
Функция РазницаДатВМесяцах(Дата1, Дата2) Экспорт ДатаНач = ?(Дата1 Дата2, Дата1, Дата2); ДатаКон = ?(Дата1 Дата2, Дата2, Дата1); Годы = Год( датаКон ) - Год( датаНач ); Месяцы = Месяц( датаКон ) - Месяц( датаНач ); Разность = месяцы + Как вычислить разницу между двумя датами в часах и минутах 10
Функция РазностьВремени(Время1, Время2); Разность = Время1 - Время2; Если Разность 0 Тогда Часов = Цел(Разность / 3600); Минут = Цел((Разность - Часов * 3600) / 60); Возврат Дата(1, 1, 1, Часов, Минут, 0); Иначе Возврат Дата(1,1,1,0,0,0); Посмотреть все в категории Работа с Датами (Временем)
Делаем поступление денежных средств от покупателя
Для этого заходим в раздел "Банк и касса" и выбираем там пункт "Банковские выписки" ( у вас другое меню? ):
Нажимаем кнопку "Поступление" и заполняем банковскую выписку следующим образом (поступление 01 доллара 01.01.2014; от любого контрагента по любому договору; счет учета - 52; банковский счет - тот, что мы только что создали):
Нажимаем "Провести и закрыть".
Смотрим проводки документа (кнопка ДтКт в журнале выписок):
Видим, что 1 доллар оприходовался на 52 счет по курсу на 01.01.2014 (о том как смотреть курсы валют на определённую дату в 1С:Бухгалтерия читайте здесь).
Разберём на примере
01.01.2014 покупатель перечислил нам на расчетный счет 1 доллар.
Проводка будет следующей:
Обратите внимание, что мы записали сумму проводки одновременно в валюте операции (1 доллар) и в рублях по курсу на дату совершения операции (1 января 2014 года курс доллара составлял как раз 32.6587 рубля).
Получается, что все валютные счета хранят свои денежные показатели сразу в двух измерениях: в валюте счета и в рублях (основной валюте регламентированного учёта для России).
Таким образом, на конец дня 01.01.2014 остаток по 52 счету будет составлять 1 USD и одновременно 32.6587 рубля.
Всё замечательно, но время идёт. Курс доллара меняется. И вот уже на конец месяца (31.01.2014) за один доллар дают 35.2448 рубля.
И, если мы посмотрим на наш остаток по 52 счету в конце месяца, то увидим, что несмотря на то, что курс изменился там по-прежнему лежит 1 USD и 32.6587 рубля. Но мы то знаем, что одному доллару уже соответствует не 32.6587 рубля, а 35.2448 рубля! Возникло несоответствие суммы остатка в долларах сумме остатка в рублях.
Так вот, этот самый пересчёт стоимости активов и обязательств в иностранной валюте на отчётную дату (то есть ежемесячно) как раз и придуман для того, чтобы каждый раз в конце месяца восстанавливать это соответствие между валютой и рублями.
В данном случае переоценка по 52 счёту на 31.01.2014 будет выглядеть так:
Таким образом, мы дооценили рублёвый остаток по 52 счёту на 2.5861 рубля за счёт прочего дохода. Получается курс за этот месяц вырос - отсюда и доход для организации. Если бы курс наоборот упал - был бы прочий расход.
Итак, после переоценки дебетовый остаток по 52 счету на конец дня 31.01.2014 будет составлять 1 USD и одновременно 35.2448 рубля.
Но время идёт. И вот на конец февраля за 1 доллар дают уже 36.0501 рублей. А значит, у нас опять возникло несоответствие долларов и рублей на 52 счете, а заодно возник прочий доход за счет повышения курса за февраль.
Новая переоценка даст следующие проводки:
И дебетовый остаток по 52 счету на конец дня 28.02.2014 составит всё тот же 1 USD и одновременно 36.0501 рублей.
И так мы будем переоценивать до бесконечности, пока у нас будет сохраняться ненулевой остаток по 52 счёту. Таким же образом переоцениваются и другие валютные счета.
Вот вкратце теория переоценки валютных средств в бухгалтерском учёте. А теперь давайте посмотрим как это всё реализовано в программе на примере 1С:Бухгалтерия 8.3 (редакция 3.0):
Разберём на примере
01.01.2014 покупатель перечислил нам на расчетный счет 1 доллар.
Проводка будет следующей:
Обратите внимание, что мы записали сумму проводки одновременно в валюте операции (1 доллар) и в рублях по курсу на дату совершения операции (1 января 2014 года курс доллара составлял как раз 32.6587 рубля).
Получается, что все валютные счета хранят свои денежные показатели сразу в двух измерениях: в валюте счета и в рублях (основной валюте регламентированного учёта для России).
Таким образом, на конец дня 01.01.2014 остаток по 52 счету будет составлять 1 USD и одновременно 32.6587 рубля.
Всё замечательно, но время идёт. Курс доллара меняется. И вот уже на конец месяца (31.01.2014) за один доллар дают 35.2448 рубля.
И, если мы посмотрим на наш остаток по 52 счету в конце месяца, то увидим, что несмотря на то, что курс изменился там по-прежнему лежит 1 USD и 32.6587 рубля. Но мы то знаем, что одному доллару уже соответствует не 32.6587 рубля, а 35.2448 рубля! Возникло несоответствие суммы остатка в долларах сумме остатка в рублях.
Так вот, этот самый пересчёт стоимости активов и обязательств в иностранной валюте на отчётную дату (то есть ежемесячно) как раз и придуман для того, чтобы каждый раз в конце месяца восстанавливать это соответствие между валютой и рублями.
В данном случае переоценка по 52 счёту на 31.01.2014 будет выглядеть так:
Таким образом, мы дооценили рублёвый остаток по 52 счёту на 2.5861 рубля за счёт прочего дохода. Получается курс за этот месяц вырос - отсюда и доход для организации. Если бы курс наоборот упал - был бы прочий расход.
Итак, после переоценки дебетовый остаток по 52 счету на конец дня 31.01.2014 будет составлять 1 USD и одновременно 35.2448 рубля.
Но время идёт. И вот на конец февраля за 1 доллар дают уже 36.0501 рублей. А значит, у нас опять возникло несоответствие долларов и рублей на 52 счете, а заодно возник прочий доход за счет повышения курса за февраль.
Новая переоценка даст следующие проводки:
И дебетовый остаток по 52 счету на конец дня 28.02.2014 составит всё тот же 1 USD и одновременно 36.0501 рублей.
И так мы будем переоценивать до бесконечности, пока у нас будет сохраняться ненулевой остаток по 52 счёту. Таким же образом переоцениваются и другие валютные счета.
Вот вкратце теория переоценки валютных средств в бухгалтерском учёте. А теперь давайте посмотрим как это всё реализовано в программе на примере 1С:Бухгалтерия 8.3 (редакция 3.0):
Типовая функция для пересчета из валюты в валюту
Для пересчета из валюты в валюту в типовых конфигурациях используется функция ПересчитатьИзВалютыВВалюту, расположенная в общем модуле - МодульВалютногоУчета.
Текст функции такой:
// Эта функция пересчитывает сумму из валюты ВалютаНач по курсу ПоКурсуНач
// в валюту ВалютаКон по курсу ПоКурсуКон
//
// Параметры:
// Сумма - сумма, которую следует пересчитать;
// ВалютаНач - ссылка на элемент справочника Валют;
// определяет валюты из которой надо пересчитвать;
// ВалютаКон - ссылка на элемент справочника Валют;
// определяет валюты в которую надо пересчитвать;
// ПоКурсуНач - курс из которого надо пересчитать;
// ПоКурсуКон - курс в который надо пересчитать;
// ПоКратностьНач - кратность из которого надо пересчитать (по умолчанию = 1);
// ПоКратностьКон - кратность в который надо пересчитать (по умолчанию = 1);
//
// Возвращаемое значение:
// Сумма, пересчитанная в другую валюту
//
Функция ПересчитатьИзВалютыВВалюту ( Сумма , ВалютаНач , ВалютаКон , ПоКурсуНач , ПоКурсуКон ,
ПоКратностьНач = 1 , ПоКратностьКон = 1 , Погрешность = 0 ,
СоответствиеПогрешностей = Неопределено, Ключ = Неопределено) Экспорт
Если ( ВалютаНач = ВалютаКон ) Тогда
// Считаем, что пересчет не нужен.
Возврат Сумма ;
КонецЕсли;
Если ( ПоКурсуНач = ПоКурсуКон )
и ( ПоКратностьНач = ПоКратностьКон ) Тогда
// пересчет суммы не требуется
Возврат Сумма ;
КонецЕсли;
Если ПоКурсуНач = 0
или ПоКурсуКон = 0
или ПоКратностьНач = 0
или ПоКратностьКон = 0 Тогда
ОбщегоНазначения . СообщитьОбОшибке ( "При пересчете из валюты '" + ВалютаНач + "' в валюту '" + ВалютаКон + "' обнаружен нулевой курс. Пересчет не произведен!" );
Возврат 0 ;
КонецЕсли;
НоваяСумма = ( Сумма * ПоКурсуНач * ПоКратностьКон ) / ( ПоКурсуКон * ПоКратностьНач );
Возврат ОбщегоНазначения . ОкруглитьСУчетомПогрешности ( НоваяСумма , 2 , Погрешность , СоответствиеПогрешностей , Ключ );
В УПП также существует функция ПересчитатьВСуммуРегл, которая предназначена для пересчета суммы управленческого учета в сумму регламентированного учета.
// Функция производит пересчет суммы в валюте упр. учета в валюту регл. учета.
//
Функция ПересчитатьВСуммуРегл ( СуммаУпр , ВалютаРегламентированногоУчета , ВалютаУправленческогоУчета , Дата ) Экспорт
ВалютаРегл = ВалютаРегламентированногоУчета ;
ВалютаУпр = ВалютаУправленческогоУчета ;
КурсВал = ПолучитьКурсВалюты ( ВалютаРегл , Дата );
КурсРегл = КурсВал . Курс ;
КратРегл = КурсВал . Кратность ;
КурсВал = ПолучитьКурсВалюты ( ВалютаУпр , Дата );
КурсУпр = КурсВал . Курс ;
КратУпр = КурсВал . Кратность ;
СуммаРегл = ПересчитатьИзВалютыВВалюту ( СуммаУпр , ВалютаУпр , ВалютаРегл , КурсУпр , КурсРегл , КратУпр , КратРегл );
Примеры вызова функций:
СуммаВзаиморасчетов = МодульВалютногоУчета . ПересчитатьИзВалютыВВалюту ( СуммаДокумента , ВалютаДокумента ,
СтруктураШапкиДокумента . ВалютаВзаиморасчетов , СтруктураШапкиДокумента . КурсДокумента , КурсВзаиморасчетов ,
СтруктураШапкиДокумента . КратностьДокумента , КратностьВзаиморасчетов );
СтрокаТабличнойЧасти . СтоимостьРегл = МодульВалютногоУчета . ПересчитатьВСуммуРегл ( СтрокаТабличнойЧасти . Стоимость , мВалютаРегламентированногоУчета , мВалютаУправленческогоУчета , Дата );
Здравствуйте!
В связи с изменением методики учета курсовых разниц в НУ с 1 января 2022 в 1С:БП, подскажите, пожалуйста, как теперь проверять правильность остатков? В чем может быть причина наличия остатков по счетам валютных расчетов в НУ при нулевых валютных остатках?
Прикрепляю карточку расчетов для примера. Расчеты в валюте завершены, однако остаток по счету в НУ остался. Когда он закроется?
Начнем с общих изменений по курсовым разницам, потом про Авансовый отчет.
Изменения по 67-ФЗ в НУ касаются в 2022 положительных курсовых разниц.
Они включаются во внереализационные доходы только на дату погашения задолженности.
Изменения касаются счетов 60, 62, 66, 67, 71, 76.
Переоценки по счету 52 — не касается.
Отрицательные разницы по такому же принципу будут учитываться с 2023.
И так до конца 2024.
В БУ изменений нет.
По отрицательным курсовым разницам в НУ изменений нет.
Важно учитывать, что отрицательные и положительные разницы связаны. По сути мы определяем единый доход или расход по курсовым разницам с даты отгрузки до даты окончательной оплаты. Поэтому оценку надо делать комплексную, если проверяйте в ручном режиме. В 1С Бухгалтерия 3.0 все корректно рассчитывается в автоматическом режиме.
Чтобы операции были корректно отражены в учете надо установить обновление не ниже 3.0.110.29 — принципиально. Оптимально актуальный на сегодня релиз установить.
Провести любой документ января 22.
Операции — Закрытие месяца — Отменить Закрытие месяца — Перепровести документы по синей ссылке слева — Выполнить Закрытие месяца.
Так по март включительно.
Апрель просто перепровести документы для восстановления хронологии.
Подробнее здесь в блоке
КЛЮЧЕВЫЕ МЕРЫ ПОДДЕРЖКИ 2022 — Признание курсовых разниц в момент погашения задолженности в 1с
Чтобы по теории тему для себя разобрать, можно в записи посмотреть этот вебинар
Санкции и контрмеры: как работать организации и ее бухгалтеру в новой реальности. Часть 2
Специально попросили Марину Аркадьевну сделать акцент на обновленных курсовых разницах с примером.
Ее пояснения полностью совпадают с тем алгоритмом, что наблюдаем в 1С на текущий момент.
Проверьте, пожалуйста, что у вас актуальный релиз, который на сегодня доступен.
И что выполнили процедуру перепроведения и перезакрытия 1 кв 22 т.к. обновление вышло в апреле, а учет по новым правилам ведем с 01.01.22.
Перейдите в саму операцию и проверьте указана ли там валюта. Если нет, то надо дозаполнить.
Если на втором скрине ОСВ, как раз так и сформирована, то «провалитесь» в карточку счета до документа, там где сумма 2 207,04.
И дозаполните валюту. Когда в карточку перейдете — то сделайте ее скрин и приложите для лучшего понимания вашей ситуации.
Здравствуйте, Мария! Я пыталась туда переходить. Везде, где договор — выбран договор в валюте. А где-то найти строку, где указать непосредственно валюту — это не могу найти. Подскажите, пожалуйста, где ее искать?
Прилагаю скрин, где внести правки.
В Операции надо проверять и заполнять все необходимые поля в ручном режиме.
Заполнить, сохранить и перезакрыть период.
—
Т.к. есть операции в валюте. Проверьте, пожалуйста, что этот момент учли в 1 кв 2022
Изменения по 67-ФЗ в НУ касаются в 2022 положительных курсовых разниц.
Они включаются во внереализационные доходы только на дату погашения задолженности.
Изменения касаются счетов 60, 62, 66, 67, 71, 76.
Переоценки по счету 52 — не касается.
Отрицательные разницы по такому же принципу будут учитываться с 2023.
И так до конца 2024.
Чтобы операции были корректно отражены в учете надо установить обновление не ниже 3.0.110.29 — принципиально.
Провести любой документ января 22.
Операции — Закрытие месяца — Отменить Закрытие месяца — Перепровести документы по синей ссылке слева — Выполнить Закрытие месяца.
Так по март включительно.
Апрель просто перепровести документы для восстановления хронологии.
Подробнее здесь в блоке
КЛЮЧЕВЫЕ МЕРЫ ПОДДЕРЖКИ 2022 — Признание курсовых разниц в момент погашения задолженности в 1с
Декларация по налогу на прибыль за 1 квартал 2022 в 1С
.
Боже мой, простите, я не догадалась понажимать по пустым местам)
Спасибо огромное за помощь! Всё провелось и то, что Вы указали про Кт 91.02 — тоже пропало.
Спасибо Вам большое за помощь, Мария!:)
Анна, отлично, что разобрались!
Да, эти поля не очень заметные в Операции.
По поводу Д 57.21 К 91.02 — пропало в каком смысле? Удалили проводку т.к. она лишняя или что-то иное.
Если Д 57.21, то К 91.01, не может быть по К 91.02 указан.
—
1 квартал 22 надо перезакрыть по схеме выше т.к. обновление по курсовым разницам вышло в апреле 22.
Вы можете задать еще вопросов
Доступ к форме "Задать вопрос" возможен только при оформлении полной подписки на БухЭксперт8
Нажимая кнопку "Задать вопрос", я соглашаюсь с
регламентом БухЭксперт8.ру >>
Сердечно поздравляю команду БухЭксперт8 и Профбух8 с восьмилетием.
СПАСИБО ВАМ за приобретенные знания во Вселенной 1С. У Вас работают настоящие профессионалы и просто хорошие и порядочные люди.
У вас пока еще скромненькая дата, но вы уже достигли много на своем творческом пути. Завоевали нашу к Вам огромную любовь, уважение и доверие.
Пусть Вам сопутствуют удача и успех, пусть не покидают Вас энтузиазм и силы. Желаю дальнейшего процветания, а каждому из вас — здоровья, счастья, любви, семейного благополучия
Вы можете задать еще вопросов
Доступ к форме "Задать вопрос" возможен только при оформлении полной подписки на БухЭксперт8
Нажимая кнопку "Задать вопрос", я соглашаюсь с
регламентом БухЭксперт8.ру >>
Как сделать Расшифровку в табличном документе 0
Вопрос: Подскажите пожалуйста, каким образом можно сделать следующее. У меня есть выводимый в табличный документ результат запроса, к ячейке есть расшифровка. Я хочу чтобы при двойном клике на ячейку выполнялась процедура которая к примеру зап Универсальная функция получения курса валюты 0
Функция ПересчетСуммыПоКурсу(ВалютнаяСумма, Валюта, Дата) Экспорт Запись = РегистрыСведений.КурсыВалют.ПолучитьПоследнее(Дата, Новый Структура(" Валюта" , Валюта)); Сумма = ВалютнаяСумма * Запись.Курс; Если Запись.Кратность 0 Тогда Сумма = С Функция пересчета валютной суммы по курсу на дату документа 0
Функция ПересчетСуммыПоКурсу(ВалютнаяСумма, Валюта, Дата) Экспорт Запись = РегистрыСведений.КурсыВалют.ПолучитьПоследнее(Дата, Новый Структура(" Валюта" , Валюта)); Сумма = ВалютнаяСумма * Запись.Курс / Запись.Кратность; Возврат Сумма; КонецФу Посмотреть все результаты поиска похожих
Решение проблем с переоценкой
Всем, кто работает с валютой (или оплатой в условных единицах) нужно знать о таком замечательном регистре сведений "Счета с особым порядком переоценки".
Если в этот регистр добавить какой-то из счетов (например, 52), то 1С перестанет делать по нему автоматический расчёт курсовых разниц.
По умолчанию этот регистр имеет следующий набор счетов:
Это означает, что валютные (или в условных единицах) остатки по всем этим счетам не переоцениваются программой автоматически.
Отсюда у пользователей возникают следующие проблемы.
Почему 1С не делает расчет курсовых разниц (переоценку валюты)
Для начала убедитесь, что у вас загружен курс валюты: ссылка.
Если и это не помогает, то очень вероятно, что счёт по которому вы ожидаете расчёт курсовой разницы занесён у вас в список счетов с особым порядком переоценки.
Если по нему всё же нужно делать переоценку, тогда зайдите в меню функции для технического специалиста. :
В открывшемся диалоге раскройте пункт "Регистры сведений" и найдите там "Счета с особым порядком переоценки":
Откройте этот регистр и если нужный вам счёт в этом списке - это и есть причина, по которой 1С не делает расчёт курсовых разниц по нему.
Удалите этот счёт из регистра и остаток по нему начнёт переоцениваться на конец месяца (закрытие) и на дату операции по нему.
Как заставить 1С не рассчитывать курсовую разницу по определенному счёту
В открывшемся диалоге раскройте пункт "Регистры сведений" и найдите там "Счета с особым порядком переоценки":
Откройте этот регистр и добавьте в него нужный вам счёт. Всё. 1С больше не будет делать переоценку остатка (расчёт курсовой разницы) на этом счёте.
С уважением, Владимир Милькин (преподаватель школы 1С программистов и разработчик обновлятора).
Как помочь сайту: расскажите (кнопки поделиться ниже) о нём своим друзьям и коллегам. Сделайте это один раз и вы внесете существенный вклад в развитие сайта. На сайте нет рекламы, но чем больше людей им пользуются, тем больше сил у меня для его поддержки.
Большинство хороших программистов делают свою работу не потому, что ожидают оплаты или признания, а потому что получают удовольствие от программирования (Linus Torvalds).
Читайте также: