Новости для бухгалтера, бухучет, налогообложение, отчетность, ФСБУ, прослеживаемость и маркировка, 1С:Бухгалтерия

Вход или Регистрация

Показывать по 10 20 40 сообщений
Новая тема Ответить
Письмо в техподдержку 1С
[Прочее]

Скидка в Товарном Чеке. Торговля и Склад 7.

Alona
читатель
офлайн
Дата регистрации: 18.08.2007
Сообщений: 19
Пост №1
 
01.09.2007 00:23

Можно ли настройками при печати товарного чека выводить скидку?<br><br>Пробую через конфигуратор - нашла печатную форму для Товарного чека, в разделе Строка хочу добавить поле скидка, но какое поле подставлять? Какое бы не подставляла - все время ошибка (в свойствах тип "Выражение" выставляла).<br><br>И как в подвале указать итоговую сумму скидки?

Alona
читатель
офлайн
Дата регистрации: 18.08.2007
Сообщений: 19
Пост №2
 
01.09.2007 01:09

Есть, нашла методом подбора - СуммаСкидки.<br>Итого - <?(Итог("СуммаСкидки")>0, "+Скидка+": "+глФрм(Итог("СуммаСкидки"),глРубли), ")> - это в подвале, а вот вставить в строку как - не знаю

Alona
читатель
офлайн
Дата регистрации: 18.08.2007
Сообщений: 19
Пост №3
 
01.09.2007 01:22

Если задать СуммаСкидки, то печатает на двух листах, даже если одна позиция - это во первых,<br>а во вторых - если скидка нулевая - то лишний столбец, нужно как то извращаться.

Thorvardr
читатель
офлайн
Дата регистрации: 25.02.2005
Сообщений: 3082
Пост №4
 
01.09.2007 17:33

Быстрее сделать, чем написать как сделать. Пригласите человека, который вам поможет. Тут работы на 2 минуты.

Alona
читатель
офлайн
Дата регистрации: 18.08.2007
Сообщений: 19
Пост №5
 
02.09.2007 13:00

Колега, если не трудно - расскажите!<br><br>Просто кто к нам в Королев поедет? Больше денег за дорогу нужно будет заплатить...<br>Со временем я и сама разберусь - как никак - программисткое образование имеется.

Thorvardr
читатель
офлайн
Дата регистрации: 25.02.2005
Сообщений: 3082
Пост №6
 
02.09.2007 17:35

Адрес почты напишите

Alona
читатель
офлайн
Дата регистрации: 18.08.2007
Сообщений: 19
Пост №7
 
03.09.2007 13:03

Отправила через внутренюю почту - и в ответ тишина.<br>А почему бы тут не написать?<br><br>Или среди программистов 1с есть договоренность - какие то вещи не опубликовывать?

Thorvardr
читатель
офлайн
Дата регистрации: 25.02.2005
Сообщений: 3082
Пост №8
 
03.09.2007 17:52

нет, такой договоренности нет. Просто остальным не интересно читать "Hallow world".

Thorvardr
читатель
офлайн
Дата регистрации: 25.02.2005
Сообщений: 3082
Пост №9
 
03.09.2007 19:08

"Суть в том, что сумма предоставленной скидки нигде в явном виде в базе не хранится. То есть, нет такого реквизита, в котором его можно было бы взять готовым. При заполнении формы диалога документа, если выбрана какая то скидка, мы видим дополнительную колонку "Скидка" с указанной суммой в денежном выражении. Но на самом деле это не реквизит, а текстовое поле, в котором вписана формула, выполняющаяся для тех строк, которые видны на экране. Стало быть, итог по ней не выведен и нам придется его посчитать самостоятельно. Пример решения привожу для релиза 7.70.946, хотя, думаю, что и в более свежих все точно так же. Делаем так:<br>1. Открываем нужную нам базу даных в режиме конфигуратора.<br>2. Сохраняем базу на тот случай, если у нас все получится криво, хоть будет откуда рабочую конфигурацию поднять.<br>3. Меню: Конфигурация-Открыть конфигурацию. В дереве: ветка Документы-РеализацияРозница. Жмем двойным кликом на этот объект и в появившемся окне жмем кнопку "Форма". Внизу видим 3 закладки, сейчас нас интересует закладка "Модуль". Выбираем ее.<br>4. Меню: Действия-Процедуры и функции модуля. Выделяем в списке процедуру ПечатьЧека и жмем кнопку "Перейти".<br>5. Видим алгоритм заполнения макета печатной формы "Товарный чек". Немного изменим его.<br>После строки:<br>ИтогПечСумма = 0;<br>добавляем<br>ИтогСуммаСкидки=0;<br><br>внутри цикла после строки:<br>ИтогПечСумма = ИтогПечСумма + ПечСумма;<br>добавляем<br>ИтогСуммаСкидки = ИтогСуммаСкидки + Окр(Цена*Количество,2,1)-Сумма;<br><br>В итоге после прохода по циклу мы будем иметь в переменной ИтогСуммаСкидки размер предоставленной скидки, выраженной в денежном выражении.<br>6. Теперь жмем внизу экрана закладку "Чек". Под строкой, в которой написано [глСуммаПрописью(ИтогПечСумма, глРубли)] жмем правой кнопкой мышки (у меня это нажатие на ячейку с координатами колонка 2, строчка 12) и выбираем в контекстном меню пункт "Свойства". В появившемся окне указываем, что в ячейке будет размещен Тип=Выражение и пишем само выражение:<br>?(ИтогСуммаСкидки=0,"""","Сумма предоставленной Вам скидки составляет: "+глФРМ(ИтогСуммаСкидки)+" руб.")<br><br>Вот и все, собственно. Сохраняемся, смотрим. Если хочется выводить скидку еще и построчно для каждого товара, то еще немного изменим конфигурацию.<br>7. Выделим все колонки имеющегося макета. У меня их 33. Теперь меню: Таблица-Включить в Секцию. Назовем секцию Основная.<br>8. Справа таблицы добавляем шапку новой колонки, в которой напишем "Сумма скидки" и строку, в которой будет формула глФРМ(ПечСуммаСкидки). Собственно, у меня это проще сделать так: выделяем прямоугольную область : "колонка 29, строка 6 - колонка 33, строка 8", через буфер обмена просто копируем ее справа таблицы и изменяем заголовок колонки и глФРМ(ПечСумма) на глФРМ(ПечСуммаСкидки).<br>9. Выделим колонки макета, которые появились справа от таблицы, то есть с 34 по 38. Меню: Таблица-Включить в Секцию. Назовем секцию СекцияСкидки.<br>10. Идем снова в модуль в нашу процедуру формирования печатной формы, в которой мы уже немного что то меняли. Перед ПечТаблица = СоздатьОбъект("Таблица");<br>пишем строчку:<br>ЕстьСкидка=?(Скидка.Процент>0,1,0);<br>ниже по тексту строки:<br>ПечТаблица.ВывестиСекцию("Шапка");<br>...<br>ПечТаблица.ВывестиСекцию("Строка");<br>...<br>ПечТаблица.ВывестиСекцию("Подвал");<br><br>меняем на:<br>ПечТаблица.ВывестиСекцию("Шапка|Основная");<br>Если ЕстьСкидка=1 Тогда<br>ПечТаблица.ПрисоединитьСекцию("Шапка|СекцияСкидки");<br>КонецЕсли;<br>...<br>ПечТаблица.ВывестиСекцию("Строка|Основная");<br>Если ЕстьСкидка=1 Тогда<br>ПечСуммаСкидки=Окр(Цена*Количество,2,1)-Сумма;<br>ПечТаблица.ПрисоединитьСекцию("Строка|СекцияСкидки");<br>КонецЕсли;<br>...<br>ПечТаблица.ВывестиСекцию("Подвал|Основная");<br>Если ЕстьСкидка=1 Тогда<br>ПечТаблица.ПрисоединитьСекцию("Подвал|СекцияСкидки");<br>КонецЕсли;<br><br>Ну, наверное и все.<br>Все будет работать, только есть одна маленькая "некрасивость". Обратите внимание на то, что у нас одна и та же конструкция написана два раза:<br>ИтогСуммаСкидки = ИтогСуммаСкидки + Окр(Цена*Количество,2,1)-Сумма;<br>ПечСуммаСкидки=Окр(Цена*Количество,2,1)-Сумма;<br><br>То есть, напрашивается перестановка строк и решение в виде:<br>ПечСуммаСкидки=Окр(Цена*Количество,2,1)-Сумма;<br>ИтогСуммаСкидки = ИтогСуммаСкидки + ПечСуммаСкидки;<br><br>так будет лучше с точки зрения правильности программирования, ну и быстродействия тоже, хотя, наверное, скажется только при очень больших табличных частях.<br><br>P.S. "Отправила через внутреннюю почту - и в ответ тишина". Я там буду в среду, почта извне не видна, доступ к почтовому серверу только из внутренней сети предприятия."

Alona
читатель
офлайн
Дата регистрации: 18.08.2007
Сообщений: 19
Пост №10
 
04.09.2007 16:08

Спасибо БОЛЬШОЕ!<br><br>У меня 944 версия.<br><br>Все что Вы написали - очень позновательно.<br>Узнала как работать с Секциями на конкретном примере.<br><br>Но, не помогло.<br>1) ЧекККМ печатается через Документы-ЧекККМ, выбирается он, а не РеализацияРозница - зачем кстати эти задвоенные формы по сути это одно и тоже. Я читала про внешние отчеты и общие таблицы, когда заменой внешнего отчета можно обновляться, но зачем тут оно два раза? А может и три?<br><br>2) Зачем вычислять скидку - когда можно в ячейке задать - СуммаСкидки?<br>

Показывать по 10 20 40 сообщений

Читают тему:

Быстрый переход
Для технических специалистов
  • Книга жалоб и предложений по работе сайта
  • Для технических специалистов
  • Представление регламентированной отчетности
  • Говорильня
  • Бухгалтерский учет: обсуждаем проекты нормативных актов и рекомендаций по ведению учета от БМЦ
  • Новый порядок применения ККТ (онлайн кассы с передачей сведений в ФНС)
  • Интернет-конференция: Оформление командировок по новым правилам
  • МАРКИРОВКА
  • ЕГАИС
  • Учет, налогообложение, автоматизация