Не печатает чек с СН ЕНВД Розница 2.2
И что мы тут видим? Определение СН идет по выборке из регистра РегистрСведений.СистемыНалогообложенияОрганизаций. Четко видим что ЕНВД присутствует. Идём в форму заполнения этого регистра и видим:
Жизнь замечательных грибов
Разработки на платформе 1С
И что мы тут видим? Определение СН идет по выборке из регистра РегистрСведений.СистемыНалогообложенияОрганизаций. Четко видим что ЕНВД присутствует. Идём в форму заполнения этого регистра и видим:
Можно сделать примерно так:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
таб1=новый ТабличныйДокумент(); СКД=Отчеты.ОценкаВаловойПрибыли.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных"); Настройки=СКД.НастройкиПоУмолчанию; ПераметрыСКД=Настройки.ПараметрыДанных.Элементы; прскд=ПераметрыСКД.Найти("Период"); пер=Новый СтандартныйПериод; пер.ДатаНачала=НачалоМесяца(ТекущаяДата()); пер.ДатаОкончания=КонецДня(ТекущаяДата()); прскд=пер; ЭлементОтбора=Настройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбора.ВидСравнения=ВидСравненияКомпоновкиДанных.Равно; ЭлементОтбора.ЛевоеЗначение=Новый ПолеКомпоновкиДанных("Магазин");//поле отбора ЭлементОтбора.ПравоеЗначение=Справочники.Магазины.НайтиПоНаименованию("Вологда Торговля"); ЭлементОтбора.Использование=Истина; ЭлементОтбора.ИдентификаторПользовательскойНастройки=Новый УникальныйИдентификатор();//добавляет отбор в состав пользовательских настроек Расшифровка = Новый ДанныеРасшифровкиКомпоновкиДанных; КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; //Передаем в макет компоновки схему, настройки и данные расшифровки МакетКомпоновки = КомпоновщикМакета.Выполнить(СКД, Настройки, Расшифровка); ВнешниеПараметры = Новый Структура; //Выполним компоновку с помощью процессора компоновки ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки, ВнешниеПараметры, Расшифровка); //Выводим результат в табличный документ ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ПроцессорВывода.УстановитьДокумент(таб1); ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных, Истина); таб1.Записать("c:\temp\выловая_прибыль.xls",ТипФайлаТабличногоДокумента.XLS); |
Ситуация: при подборе товаров в документе реализации не заполняется автоматически текущим продавцом соответствующий столбец в таблице с товаром.
Это не баг и не ошибка, по гуглу, «так и должно». Но руками выставлять нужного продавца — велика вероятность ошибки. А не заполнять — часть отчетов строится без «продавца». Например «Валовая прибыль».
Решение:
Добавляем подписку на событие для документа «Реализация», с событием «Перед записью». В принципе достаточно добавить что-то вроде:
|
1 2 3 4 5 6 7 |
Функция ПроверкаЗаполненияПродавца(Источник, Отказ) Экспорт //проверяем заполнена ли табличная часть реализации продаванами или нет для каждого стр из источник.Товары цикл стр.продавец=источник.продавец; конеццикла; /// КонецФункции |
Решение не мое, подсмотрено. Но! Расскажу как реализовано, может кому пригодится.
Итак: в 1С Бухгалтерия приходят платежки из банка, с суммой, и выделенной в поле «назначение платежа» комиссией. Например:
|
1 2 |
Зачисление средств по операциям с МБК (на основании реестров платежей). Мерчант №121512049. Дата реестра 07.01.2018.СУММА 1215,53 В Т.Ч.Комиссия 24.31 Возврат покупки 0.00/0.00. НДС не облагается. |
Нужно чтоб движения документа выглядели так:
Если документ проведен, то денежки идут на регистры «Расчеты с контрагентами» и «Продажи по платежным картам», вне зависимости от того, прошла оплата по карточке или нет. Т.е. например типичная ситуация:
Создали документ «Эквайринговая операция», провели его, попробовали оплатить с карты — не прошло. Клиенту «ну тогда платите наличкой». Документ закрыли, но 1С по регистрам будет считать, что деньги то поступили не в кассу! Хотя по факту вообще они могут никуда не поступить.
И в отчете «Продажи по платежным картам» мы тоже ничего не увидим!! Дурдом.
Единственный вариант — писать свой отчет по продажам, в котором проверять на true поле «Оплата прошла».