Добавить столбец в печатную форму 1с

Добавить столбец в печатную форму 1с

обучающий курс по работе в программе 1С 7.7 Торговля и склад:как настроить программу, как работать с программой

Оказываю услуги

Напишите мне:

Страницы

Популярные сообщения

Добавляем колонку с закупочной ценой в печатную форму документа "Реализация"

Пока Докум.ПолучитьСтроку() = 1 Цикл

Если глВернутьЦену(Докум.Номенклатура, ТипЦеныЗакуп,Докум.ДатаДок, ЦенаЗ, Докум.Единица, Докум.Валюта) = 1 Тогда

Сохраняем нашу форму (Файл — Сохранить).
Теперь в режиме Предприятие нам нужно зарегистрировать нашу новую печатную форму.

Открываем программу в режиме Предприятия. Снова идем туда же, где смотрели внешние формы для документа "Реализация": "Сервис" — "Регистрация внешних печатных форм" и внизу нажимаем кнопку "Изменить" — и выбираем "Внести в список"

И смотрим видео:

42 коммент.:

Марино Вы просто гений. Большое спасибо! Все работает.

Андрей, я рада, что у Вас все получилось и что мой пост Вам в этом помог 🙂

Марина, добрый день! Подскажите, пожалуйста, как сделать, чтобы в накладной реализации ТОРГ 12 в колонке "Масса (брутто)" напротив каждой номенклатурной позиции стоял ее вес. (В карточке номенклатуры он указан.
Спасибо.

Добрый день, Яна! Действительно, если смотреть в печатной форме, то в этой колонке нет никаких формул — совершенно пусто.. Видимо, предполагается, что при необходимости вес заполняется вручную. Загляните после праздников — я подготовлю и опубликую пост о том, как добавить данные в эту колонку. Форма Торг12 — внешняя форма, а потому ее вполне можно скопировать и внести в нее изменения, не затрагивая при этом саму программу.

Спасибо, Марина! Буду ждать)))

А как добавить сумму внизу?

Что бы была закупочная сумма по накладной можно добавить колонку с закупочной суммой и внизу общую сумму, либо в модуле формы просчитать сумму и в печатной форме добавить только ее..
Вопрос был о дополнительной колонке с закупочными ценами в документе продаж. Обычно в таких документах закуп не отражают. Если Вас интересует конкретный документ — можем разобрать на его примере 🙂

Речь идет о добавлении итоговой суммы закупа рядом суммой розничной, чтобы при вычитании была видна торговая наценка по документу в целом. С программированием не знаком, но по вашему примеру на решил доработать печатную форму и появилась необходимость добавить итоговую сумму закупа.

Да, я поняла о чем идет речь, но думала, что если такое нужно в другом другом документе, например в поступлении, то можно было бы разобрать на примере этого документа. но могу и тут написать 🙂
Перед строкой "Пока Докум.ПолучитьСтроку() = 1 Цикл" ставим вот такое: "СуммаЗакуп=0;" после строк "Если глВернутьЦену(Докум.Номенклатура, ТипЦеныЗакуп,Докум.ДатаДок, ЦенаЗ, Докум.Единица, Докум.Валюта) = 1 Тогда
ЦенаЗакуп=ЦенаЗ;" ставим "СуммаЗакуп=СуммаЗакуп+ЦенаЗакуп;" а в таблице просто скопируйте поле под колонкой "Сумма" и рядом с "Итого:" и вместо "СуммаИтог" поставьте "СуммаЗакуп" . Будут вопросы — спрашивайте 🙂

Спасибо Марина все получилось!
Ради эксперимента сделал тоже самое с документом поступление. Только добавил туда в секцию ИтогоНДС, разницу
"ТоргНац=СуммаИтог-СуммаЗакуп;".
Все получилось так как надо. И вообще похоже вы открыли во мне будущего программиста 1С=). Буду изучать дальше.

Дмитрий, я рада, что у Вас все получилось 🙂 И хорошо, что Вам понравилось — программировать в 1С очень интересно! 🙂

Здравствуйте! Как добавить в Торговля и скдлад 7.7 релиз 987(документ "Заявка покупателя" (Счет)) Колонку после "Товар" — в шапке СтатусСклад — Ниже с возможностью выбора "В наличие", "Под заказ". пожалуйста, помогите. igo13@rambler.ru

Добрый день! Вот честно пыталась понять, что же и куда нужно добавить, но увы.
Колонку хотите добавить табличную часть? После колонки "Номенклатура"? Название новой колонки "Статус/Склад"? И в этой колонке хотелось бы выбирать два статуса:"В наличии" или "Под заказ"?
Если все так — то хотелось бы понять для чего все это? Должно ли это отражаться в печатной форме? Может еще на что-то должен влиять этот выбор? Или я совсем все не так поняла?

Ни на что не влияет, просто чтоб была Колонка с названием и статусом выбора. информация для покупателя "В наличие", или "Под заказ"

Если все так — то хотелось бы понять для чего все это? Только для покупателя для информации. Должно ли это отражаться в печатной форме? Да Может еще на что-то должен влиять этот выбор? Нет

Игорь, смотрите ответ на Ваш вопрос тут http://1ctisprosto.blogspot.ru/2017/02/blog-post.html
Надеюсь, что все понятно написала 🙂

Читайте также:  Intel core i7 7500u 2700 mhz

спасибо,большое, попробую разобраться. А нельзя было во внешнем отчете zayavka.ert внести изменения, чтоб не "копать" базу, а просто выбрать с измененную "zayavka.ert"?

Игорь, я рада, что Вы знаете про внешние формы 🙂 Я знаю три вида: внешний отчет, внешняя обработка и внешняя печатная форма. Так вот — то, что Вы называете внешним отчетом zayavka.ert — это внешняя печатная форма.. Отвечаю на Ваш вопрос — нет. Возможно, можно добавить этот выбор в саму печатную форму, но это придется сохранять все печатные формы для всех заявок отдельными файлами и, если будут какие-то изменения в самом документе — вносить вручную изменения в печатную форму-файл или сохранять новую. Проще внести изменения в документ — документы запоминают введенную информацию и ее можно в любой момент распечатать.

Первоначально Вы писали, что эта колонка никуда больше не нужна. Ваш следующий комментарий я увидела уже позже. Вы будете удивлены, но кроме ведения этого блога у меня есть есть множество дел: ребенок, который требует внимания, не ходит в садик и в наличии нет ни бабушек ни дедушек ни кого бы то еще, кто мог бы с ним посидеть. а так же клиенты, которым я как раз сейчас нужна из-за новых требований к кассам, и еще одна подработка.

Поэтому я считаю неуместными Ваши 33 вопроса (которые я не буду публиковать) про то, что колонка не печатается, почему не печатается и как-это так, когда именно это и нужно и тд. Как вопрос задали — так и получили ответ. Сразу нужно писать подробно про желаемые изменения — я мысли читать не умею

Сегодня я напишу, как добавить эту колонку в печатную форму — следите за постами на блоге

Марина, здравствуйте! Всё сделал, огромное спасибо. Могу скинуть небольшое вознаграждение На Ваше Благое Дело, что помогаете "простым смертным". С уважением, Игорь igo13@rambler.ru жду номерочек какого-нибудь кошелька

Добрый день, Игорь! Рада, что у Вас все получилось 🙂 Спасибо за предложение 🙂 Заманчиво, но я рассматриваю здесь простые вопросы и "Спасибо" мне вполне достаточно :))

низкий вам поклон.

Марина, здравствуйте! Однажды Вы мне уже помогли с торг-12, чем вдохновили на самостоятельное изучение программирования в 1с 7.7 по учебнику, но знаний пока не хватает, а потребность в новом отчете, вернее изменении старого есть)) Надеюсь опять на Вашу помощь, может быть это вас заинтересует. Дело вот в чем: есть в 1с 7.7 комплексная «отчет по клиентам», хочется на его основе, сделать подобный, но с добавлением новых колонок из торг-12, а именно, отдельные колонки с артикулом товара, единицей измерения, кодом по ОКЕИ и весом брутто (по идее получается сводная накладная, сейчас я это делаю вручную в ексель, для того чтобы получился торг-12 по всем позициям за определенный период).
С уважением, Яна.

Добрый день, Яна! С удовольствием помогу разобраться и добавить колонки в отчет, но подскажите пожалуйста, Вы написали 1С 7.7 комплексная — это какая 1С? Отчет по клиентам есть и в 1С "Торговля и склад", но если у Вас 1С другая, то отчеты могут немного отличаться по коду и то, что я напишу для отчета в 1С ТиС может не подойти для такого же отчета, но в другой 1С

Марина, спасибо за ответ! Посмотрела в меню о программе написано: Конфигурация комплексная: "Бухгалтерия+Торговля+Склад+Зарплата+Кадры", ред. 4.5 (7.70.454). Я скопировала код отчета, могу прислать, если нужно.

Яна, я посмотрела, что отчеты в этих программах практически одинаковые :)) Отчет немного сложный, т.ч. я изучу его и посмотрю, как проще сделать то, что Вам нужно :)) Думаю, через день-два я напишу, что можно с этим отчетом сделать :))

Спасибо, Мариночка. Буду ждать.

Яна, специально для Вас 🙂 http://1ctisprosto.blogspot.ru/2017/03/blog-post.html

Марина добрый вечер! В самом начале этой страницы Вы объясняли мне как вставить в документ столбец с закупочной (последней) ценой. Все работает. Но время идет и мой шеф хочет видеть не последнюю закупочную цену товара, а среднюю закупку.
Подскажите пожалуйста как изменить. Поменять переменную или я ошибаюсь?
Переменная закупки (ЦенаЗакуп), а какая у средней?
Спасибо.

Читайте также:  Средство для чистки автомата

Здравствуйте, Андрей!
Все немного не так 🙂 ЦенаЗакуп — это мы сами обозвали так переменную и она никак не закреплена за самой ценой..
Со средней ценой все сложнее, но попробовать можно.. Что бы выяснить среднюю цену нужно обращаться к регистрам , получить сумму закупа и кол-во и рассчитать. В этом случае может получится так, что программа будет дольше думать над этой накладной 🙂 За какой период нужна эта средняя цена?

Марина доброе утро!:)
Средняя цена за последние 2 недели. Я думаю так. Или на то что есть на складе.
Я вот сам не не знаю как лучше. Он сказал средняя.

Доброе утро, Андрей!
Вам нужно сходить к шефу и спросить, что именно он подразумевает под средней ценой.
Представьте, что Вы пришли в ресторан и заказываете на десерт мороженое — Вы говорите официанту, что не знаете какое и сколько, но определенно хотите мороженое.. Официант не примет у Вас такой заказ..Так и тут: нельзя давать расплывчатое задание программисту, которое еще сами не до конца представляете как должно работать..

Добрый вечер! Средняя цена товара, который на тот момент лежит на складе.

Здравствуйте, Андрей! Вот тут я постаралась ответить на Ваш вопрос 🙂 http://1ctisprosto.blogspot.ru/2017/05/2.html

Марина большое спасибо большое! Буду пробовать. 🙂

Марина еще раз огромное спасибо! Все работает! Все супер! :))

А у меня не получилось.

А что именно не получилось? Какую ошибку выдает?

В том-то и дело, что никаких ошибок не выдает, но колонки пустые. Похоже "не цепляет" закупочные цены.

В данном примере закупочная цена берется из справочника цен. В справочник цен цены записываются из прихода — записывает сам пользователь по кнопочке "Действия". Можно дописать программу так, что бы при проведении поступления цены сами записывались в справочник цен — это в том случае, если программа дописывается под себя.
Если у вас цены в справочник не записываются, то программе их и "видит". В этом случае можно искать цены в регистрах, но это гораздо сложнее.

Здравствуйте, Марина. Не дождался ответа на электронку, буду спрашивать сюда.

Фиксированная стоимость и сроки. Оперативно. Оплата полезных фактических трудозатрат.

Бюрократия является одним из повседневных явлений, и без распечатанного и подписанного документа мало где обходятся производственные процессы. Создание печатных форм для документов – одна из частых задач разработчика 1С. Данную возможность можно реализовать как внутри базы, так и внешним файлом, если конфигурация типовая и поддерживает БСП. Эти процессы в 1С не затруднят вас, если понять основные принципы построения печатных форм, изложенные ниже.

Создание макета внешней печатной формы

Лучшее решение для добавления возможности распечатывать данные того или иного документа в типовую конфигурацию от 1С, а если она не изменялась – вообще единственная. Суть задачи в том, чтобы создать в конфигураторе файл обработки и описать в нем внешний вид и используемые данные. После чего останется только подключить данный файл к конфигурации 1С с помощью механизмов библиотеки стандартных подсистем.

Создание печатной формы документа начинается с открытия режима конфигуратора базы. Желательно открывать ту базу, в которую требуется внести изменения, чтобы платформа позволила нам открывать конструктор запроса. Создайте новую внешнюю обработку с помощью основного меню «Файл» — «Новый…» и заполните имя и синоним. В среде 1С принято указывать «говорящие» имена, чтобы другие программисты могли комфортно работать с чужим кодом.

Затем необходимо добавить макет – структуру распечатываемой формы с перечнем переменных, куда и будут вставляться данные из конкретного документа 1С. В открывшемся конструкторе не стоит ничего менять и после подтверждения готовности откроется окно, похожее на Excel. В нем необходимо будет нарисовать форму и разделить ее на области с отдельными именами. Разделять стоит в зависимости от момента вывода на экран и того, сколько раз эта область должна появиться на экране.

В качестве примера разберем печатную форму для документа продажи товаров. В нем перечислены номенклатура, организация, подразделение, менеджер и контрагент, кому продаются товары. Для информативной печатной формы необходимо выделить следующие области:

  1. Верхняя часть («Шапка»). Сюда войдет идентификация документа в системе 1С – номер и дата, основные данные об операции – организация, контрагент, менеджер, заголовок таблицы номенклатуры. Выводиться будет 1 раз;
  2. Информация по номенклатуре («ДанныеСтрок»). Данные о тех товарах, которые продаются – наименование, количество, цена и сумма. Выводиться по 1 разу на каждую строчку табличной части «Товары»;
  3. Итоговые данные («ИтогиСтрок»). В печатной форме фигурирует 1 раз и отражает итоговые суммы количества и суммы;
  4. Подписи («Подвал»). Область для согласования бумажной версии документа. Необходимо вывести на печать единожды.
Читайте также:  Распиновка audio разъема на материнской плате

В окне, похожем на Excel, выделяем 10 строк и выбираем в основном меню «Таблица» — «Имена» — «Назначить имя…». В открывшемся окне вводим название области и подтверждаем. Далее в этой области размещаем необходимые для вывода поля, используя возможности объединения и выбора шрифта и размера надписей.

Теперь надо настроить переменные, куда будут вставлены данные. Для этого на ячейке, где уже есть надпись, нажимаем правой кнопкой мыши и открываем свойства. Найдите пункт «Заполнение» и выберите там значение «Параметр», после чего убедитесь, что надпись в ячейке теперь заключена в угловые скобки. Если вы выберите «Шаблон», то это даст вам возможность указать переменные внутри строки в ячейке с помощью квадратных скобок.

Осталось только добавить другие области и разместить там параметры. Наш макет готов. Настройка печатной формы в части макета завершена, поэтому можно переходить к написанию кода, чтобы наши параметры заполнились данными. Писать все процедуры придется в модуле объекта созданной внешней обработки.

Обычно табличный документ формируется на основе макета как из строительных блоков. Макет представляет собой шаблон для формирования печатной формы. Построение макета производится в конфигураторе в специальном табличном редакторе. Разработчик может создавать области, изменять высоту строк и ширину колонок, задавать форматирование ячеек и всего табличного документа, включать в макет рисунки, диаграммы и сводные таблицы.

Области макета предназначены для однократного или многократного вывода, например, ниже представлен макет для печати расходной накладной:

Некоторые ячейки содержат только текст, который должен быть выведен. Другие ячейки содержат имена параметров (в угловых скобках). Значения этих параметров должны указываться в программном модуле. В отличие от версии 7.7, в ячейку нельзя вписать выражение. В версии 8.0 весь программный код сосредоточен в программных модулях и при выводе секций нет связи с текущим контекстом программного модуля. Назначение параметров табличного документа должно производиться явно из программного модуля через коллекцию "Параметры" объекта "ТабличныйДокумент".

Область может состоять из нескольких расположенных подряд строк или колонок, либо быть прямоугольной областью таблицы. К области можно обратиться по имени или по координатам. Можно также обращаться к пересечению областей, используя вертикальную черту (как в версии 7.7).

Общая схема

Общая схема формирования печатной формы на основе макета:

  1. Создание макета в табличном редакторе (определение областей, имен параметров, форматирования).
  2. Создание нового табличного документа (этот пункт не требуется, если отчет выводится в элемент управления ПолеТабличногоДокумента).
  3. Получение макета в переменную (метод ПолучитьМакет).
  4. Получение областей макета (метод ПолучитьОбласть).
  5. Заполнение параметров области (свойство Параметры).
  6. Вывод области в табличный документ (методы Вывести и Присоединить).
  7. Установка свойств отображения табличного документа (сетка, заголовки, только просмотр и т.д.).
  8. Отображение табличного документа на экране (а может быть отправка на принтер или сохранение).

Пример вывода табличного документа

Ниже приведен пример формирования печатной формы расходной накладной из модуля документа:

Процедура Печать(ТабДок) Экспорт

//создание нового табличного документа
ТабДок = Новый ТабличныйДокумент ;

//получение макета для печати расходной накладной
Макет = Документы.РасходнаяНакладная. ПолучитьМакет ("Основной");

//получим область "Заголовок" как новый табличный документ (!)
Область = Макет. ПолучитьОбласть ("Заголовок");

//укажем параметры области
Область. Параметры .НомерДокумента = Номер;
Область.Параметры.От = Дата;
Область.Параметры.Кому = Контрагент;

//выведем заполненную область "Заголовок" в табличный документ
ТабДок. Вывести (Область);

//выведем область "Шапка" в табличный документ
ТабДок.Вывести(Макет.ПолучитьОбласть("Шапка"));

//получение области "Строка"
//обратите внимание, что это можно сделать до цикла по строкам
Область = Макет.ПолучитьОбласть("Строка");

//вывод строк документа в печатную форму
Для Каждого СтрСостава Из Состав Цикл

//заполнение параметров области из строки табличной части
Область.Параметры. Заполнить (СтрСостава);

//вывод сформированной области в табличный документ
ТабДок.Вывести(Область);

//вывод области "Подвал"
Область = Макет.ПолучитьОбласть("Подвал");
Область.Параметры.ИтогоКоличество = Состав.Итог("Количество");
Область.Параметры.ИтогоСумма = Состав.Итог("Сумма");
ТабДок.Вывести(Область);

//установим параметры отображения табличного документа
ТабДок.ТолькоПросмотр = Истина;
ТабДок.ОтображатьЗаголовки = Истина;
ТабДок.ОтображатьСетку = Ложь;

//покажем табличный документ на экране
ТабДок. Показать ();

Основные методы

Основные методы формирования итогового табличного документа следующие:

Ссылка на основную публикацию
Действия с комплексными числами в показательной форме
Показательная форма записи комплексных чисел является наиболее удобной для умножения, деления, возведения в степень и извлечения корней из комплексных чисел....
Герои игры лига легенд
Лига легенд / League of Legends – это проект, в котором сочетаются особенности ролевой и стратегической игры. Экшен был выпущен...
Гибернация в windows 10 не включается ноутбук
Если вы не желаете завершать работу с компьютером полностью, можно перевести его в спящий режим, выход из которого производится достаточно...
Действующие бонус коды для world of tanks
04 августа 2019 Бонус коды Вышел свежий бонус-код для World of Tanks многоразового использования. 11 декабря 2018 Бонус коды Месяцы...
Adblock detector