Конвертация ставок НДС: из Перечисления в Справочник (правила обмена в конвертации 2.0)

09.11.19

Интеграция - Перенос данных 1C

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

В Конвертации 2.0 создаем правило обмена Ставок НДС.

Тип значения в конфигурации-источнике: Перечисление.СтавкиНДС
Тип значения в конфигурации-источнике: Справочник.СтавкиНДС

Создаем ПКО и в нем 4 ПКС для каждого реквизита справочника "Ставки НДС":

 


    Для каждого реквизита прописываем получение значения из перечисления в обработчике "перед выгрузкой":

    Вид ставки:

 

Если Источник = Перечисления.СтавкиНДС.НДС20 ИЛИ Источник = Перечисления.СтавкиНДС.НДС18 Тогда
	Значение = "Общая";
ИначеЕсли Источник = Перечисления.СтавкиНДС.НДС20_120 ИЛИ Источник = Перечисления.СтавкиНДС.НДС18_118 Тогда
	Значение = "ОбщаяРасчетная";
ИначеЕсли Источник = Перечисления.СтавкиНДС.НДС10  Тогда
	Значение = "Пониженная";
ИначеЕсли Источник = Перечисления.СтавкиНДС.НДС10_110  Тогда
	Значение = "ПониженнаяРасчетная";
ИначеЕсли Источник = Перечисления.СтавкиНДС.НДС0  Тогда
	Значение = "Нулевая";
ИначеЕсли Источник = Перечисления.СтавкиНДС.БезНДС  Тогда
	Значение = "БезНДС";
КонецЕсли;

 

Не облагается:

 

Если Источник = Перечисления.СтавкиНДС.БезНДС  Тогда
	Значение = Истина;
Иначе
	Значение = Ложь;
КонецЕсли;

 

Расчетная:

 

Если Источник = Перечисления.СтавкиНДС.НДС20_120 
	ИЛИ Источник = Перечисления.СтавкиНДС.НДС18_118 
	ИЛИ Источник = Перечисления.СтавкиНДС.НДС10_110 Тогда
	Значение = Истина;
Иначе  
	Значение = Ложь;
КонецЕсли;

 

Ставка:

 

Если Источник = Перечисления.СтавкиНДС.НДС20 ИЛИ Источник = Перечисления.СтавкиНДС.НДС20_120  Тогда
	Значение = 20;
ИначеЕсли Источник = Перечисления.СтавкиНДС.НДС18 ИЛИ Источник = Перечисления.СтавкиНДС.НДС18_118 Тогда
	Значение = 18;
ИначеЕсли Источник = Перечисления.СтавкиНДС.НДС10 или Источник = Перечисления.СтавкиНДС.НДС10_110 Тогда
	Значение = 10;
ИначеЕсли Источник = Перечисления.СтавкиНДС.НДС0 или Источник = Перечисления.СтавкиНДС.БезНДС  Тогда
	Значение = 0;
КонецЕсли;

 

    Готово. Теперь можно указывать это ПКО, например, для реквизита табличной части документа:

Вступайте в нашу телеграмм-группу Инфостарт

конвертация правила обмена ставкиНДС ставки НДС перечисление справочник

Вы можете заказать платную адаптацию этой статьи под ваши задачи на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

См. также

Перенос данных 1C Программист 1С:Предприятие 8 1С:Управление производственным предприятием 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Перенос документов, начальных остатков и справочной информации из УПП 1.3 в ERP 2 | из УПП 1.3 в УТ 11 | из УПП в КА 2 | Правила конвертации (КД 2) | Более 360 предприятий выполнили переход с использованием этого продукта! | Сэкономьте время - используйте готовое решение для перехода! | Позволяет перенести из УПП 1.3 в ERP / УТ 11 / КА 2 всю возможную информацию | В переносе есть фильтр по организации и множество других опциональных параметров выгрузки | Есть несколько алгоритмов выгрузки остатков на выбор

58000 руб.

04.08.2015    191617    461    308    

462

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист 1С:Предприятие 8 1С:Комплексная автоматизация 1.х 1С:Управление производственным предприятием 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:Бухгалтерия предприятия 3.0 с помощью правил обмена | Можно выполнить переход с УПП на БП 3 или запускать выгрузку данных за выбранный период времени | Переносятся документы, начальные остатки и вся справочная информация | Есть фильтр по организации и множество других параметров выгрузки | Поддерживается несколько сценариев работы: как первичный полный перенос, так и перенос только новых документов | Перенос данных возможен в "1С: Бухгалтерия 3.0" версии ПРОФ, КОРП или базовую | Переход с "1С: УПП1.3" / "1С:КА 1.1" на "1С:БП3.0" с помощью правил конвертации будет максимально комфортным! | Можно бесплатно проверить перенос на вашем сервере!

50050 руб.

25.02.2015    190456    370    294    

427

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Программист 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Перенос данных из ERP в БП 3 | из КА 2 в БП 3 | из УТ 11 в БП 3 | из ЕРП в БП 3 | Сэкономьте время - используйте готовое решение для перехода! | Перенос разработан в формате КД 2 (правила конвертации данных) | Переносятся все возможные виды документов, начальных остатков и нормативно-справочная информация| Можно опционально выгружать каждую пару "номенклатура+характеристика" как отдельную номенклатуру | Есть выгрузка настроек счетов учета и зарплатных данных из ERP / КА 2 | Можно проверить на вашем сервере перед покупкой

58000 руб.

15.04.2019    85869    231    181    

168

SALE! 20%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист 1С:Предприятие 8 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Россия Платные (руб)

Правила в универсальном формате обмена для ERP 2.5, КА 2.5, УТ 11.5, БП 3.0, Розница, УНФ, для последних версий конфигураций. Ссылки на другие конфигурации в описании публикации. Правила совместимы со всеми другими версиями конфигураций новыми и старыми, поддерживающими обмен и синхронизацию в формате EnterpriseData. Не требуется синхронного обновления правил после обновления другой конфигурации, участвующей в обмене. Типовой обмен через планы обмена кнопкой Синхронизация вручную или автоматически по расписанию, или вручную обработкой.

27633 руб.

12.06.2017    162898    989    329    

486

Перенос данных 1C Взаиморасчеты Оптовая торговля Логистика, склад и ТМЦ Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист 1С:Предприятие 8 1С:Управление торговлей 10 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Управленческий учет Платные (руб)

Можно проверить до покупки, оставьте заявку! Воспользовались более 268 компаний! Перенос данных из УТ 10.3 в УТ 11 | из УТ 10.3 в КА 2 | из УТ 10.3 в ERP. Решение для перехода с УТ 10.3. Можно перенести начальные остатки, нормативно-справочную информацию и все возможные документы. При выгрузке можно установить отбор по периоду, организациям и складам.

50200 руб.

24.04.2015    209179    178    253    

297

Перенос данных 1C Программист 1С:Предприятие 8 1С:Комплексная автоматизация 1.х 1С:Управление торговлей 10 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Перенос данных из УПП 1.3 в УНФ | из КА 1.1 в УНФ | из УТ 10.3 в УНФ | Перенос разработан в формате КД 2 (правила конвертации объектов) | Выгружаются все возможные виды документов, начальных остатков и вся нормативно-справочная информация | Есть фильтр по организациям при выгрузке данных | Есть несколько алгоритмов выгрузки начальных остатков товаров на выбор | Можно проверить перед покупкой на своем сервере!

58000 руб.

17.10.2019    45421    60    118    

62

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Программист 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Управленческий учет Платные (руб)

Перенос данных из ERP в ЗУП 3 | из КА 2 в ЗУП | Готовые правила конвертации данных (КД 2) для переноса остатков, документов с движениями и справочной информации 3 | Есть перенос начальной задолженности по зарплате и начальной штатной расстановки на выбранную дату | Обороты за прошлые годы (данные для расчета среднего) переносятся свернуто в документ "Перенос данных" | Есть фильтр по организациям | Документы за текущий период переносятся сразу с движениями, поэтому не потребуется делать перерасчеты | Перенос можно проверить перед покупкой, обращайтесь!

55200 руб.

03.12.2020    46223    132    83    

120

Файловый обмен (TXT, XML, DBF), FTP Перенос данных 1C Системный администратор Программист Бухгалтер 1С:Предприятие 8 1С:Бухгалтерия 3.0 Россия Платные (руб)

Обработка не только формирует начальные остатки по всем счетам на нужную дату (экономя время на свёртке базы БП 3), но и полностью переносит справочные данные и документы за заданный период. Гибкая настройка включает фильтр по организациям и множество параметров выгрузки. Работайте в удобном формате: выполните однократный полный переход или настройте регулярную догрузку только новых документов из БП 3 в БП 3.0. Интеграция правил конвертации в план обмена гарантирует точную выгрузку исключительно зарегистрированных объектов.

70760 руб.

10.04.2026    898    3    8    

2
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. PLAstic 296 11.11.19 08:57 Сейчас в теме
А почему бы в обработчике перед выгрузкой не сделать один раз соответствие структур и просто по исходному значению не выбирать из него нужную структуру, которую передавать как Источник? Ещё можно поставить галку "Использовать быстрый поиск".
Типа того:
СоответствиеОбъектов = Новый Соответствие();
СоответствиеОбъектов.Вставить(ПредопределенноеЗначение(Перечисление.СтавкиНДС.БезНДС), Новый Структура("Всякие, Значения, Справочника", Всякие, Значения, Справочника));
...
...
Соответственно, перед выгрузкой надо будет вставить похожее:
Источник = СоответствиеОбъектов[Источник];

*Весь код написан по памяти и может содержать ошибки.
**И проверь ещё, что в целевом справочнике нет предопределённых элементов.
user1534961; +1 Ответить
2. TariK 22.03.21 20:33 Сейчас в теме
Тип значения в конфигурации-источнике: Перечисление.СтавкиНДС
Тип значения в конфигурации-ПРИЕМНИКЕ: Справочник.СтавкиНДС
Нет ошибки?
3. TariK 23.03.21 10:49 Сейчас в теме
Можете помочь разобраться? My Webpage
4. TariK 23.03.21 11:20 Сейчас в теме
Сделал "Не облагается, Расчетная, Ставка", если подключаю эти ПКС, все время загружается везде 10%, хотя смотрю XML с выгрузкой, там все правильно
5. assa 61 20.04.21 15:24 Сейчас в теме
Спасибо. Очень помогло. Я провозился дня три, уже хотел бросить.
dbetsik; shvedov-pavel; +2 Ответить
6. LCLNN 15.11.21 21:57 Сейчас в теме
Спасибо!
Применила для ситуации источник - Перечисление.ВидыСтавокНДС, приемник - Справочник.СтавкиНДС.
7. user609243_1C 24.01.22 15:30 Сейчас в теме
Спасибо! Очень помогло. Все понятно описано.
8. shvedov-pavel 04.10.22 14:24 Сейчас в теме
9. Mavr09 29.12.22 05:46 Сейчас в теме
Создаете два ПКО:
1. СтавкиНДС
Тип значения в конфигурации-источнике: ПеречислениеСсылка.СтавкиНДС
Тип значения в конфигурации-источнике: ПеречислениеСсылка.СтавкиНДС


2. СтавкиНДСВСправочник
Тип значения в конфигурации-источнике: ПеречислениеСсылка.СтавкиНДС
Тип значения в конфигурации-источнике: СправочникСсылка.СтавкиНДС

Добавляете свойство:
Приемник - ПеречислениеСтавкаНДС
Правило конвертации - СтавкиНДС
Поиск по полю

Далее при конвертации реквизита объекта указываете Правило конвертации "СтавкиНДСВСправочник". Таким образом при загрузке ставки НДС будет осуществляться поиск в справочнике по перечислению.
Прикрепленные файлы:
mrZozho; osa31; cleaner_it; nekit_rdx; +4 Ответить
10. varius82 29.12.22 17:49 Сейчас в теме
(9)Что у вас в обработчик источника написано во втором ПКО?
osa31; Goggy; Izumov; +3 Ответить
11. Goggy 6 20.06.24 16:28 Сейчас в теме
(10)
Если ТипЗнч(Источник) = Тип("Строка") Тогда
	Значение = Перечисления.СтавкиНДС[СокрЛП(Источник)];
Иначе
	Значение = Источник;
КонецЕсли;
pizhenkov; osa31; +2 Ответить
12. robix 17.07.25 18:17 Сейчас в теме
Только вот использовать нужно функцию УчетНДСЛокализация.СтавкаНДСПоПеречислению()
Я интуитивно понял, что ведь должны были 1С-совцы написать такую функцию. Так оно и есть.

Она кэшируемая. Представьте , у вас несколько тысяч товаров, и для каждого делать запрос это дичь :)
adhocprog; +1 Ответить
13. adhocprog 1185 21.01.26 19:23 Сейчас в теме
Для отправки сообщения требуется регистрация/авторизация