В табличной части документа можно указывать единицу измерения, отличную от базовой.
Бракованный товар определяется реквизитом таб. части “Качество”, которые выбирается из соответствующего справочника, формируемого пользователем.
Документы поступления и реализации могут вводится на основании справочника контрагенты.
В модуле объекта документа поступления реализована процедура обработки заполнения:
Для реализации реализована такая же процедура, но алиасом выступает не поступление, а реализация.
Запрос формирует выборку соответствующих документов(из их набличных частей) в обратном порядке по моменту времени и выбирает первый документ.
Для документа реализации создан макет в соответствии с заданием.
В форму добавлена комана(кнопка) для печати и в модуле формы документа определены две процедуры:
Процедура печати определена в модуле менеджера. В нее в качестве параметра передается ссылка на конкретный документ. В процедуре происходит заполнение
параметров шапки, строк табличной части и параметров подвала. Процедура возвращает сформированный табличный документ, который выводится потом выводится на
Номер = 1;
СуммаИтог = 0;
Для Каждого Стр Из Ссылка.Товары Цикл
ОблСтрокаТаблицы.Параметры.Заполнить(Стр);
ОблСтрокаТаблицы.Параметры.Номер = Номер;
ТабДокумент.Вывести(ОблСтрокаТаблицы);
Номер = Номер + 1;
СуммаИтог = СуммаИтог + Стр.Сумма
КонецЦикла;
Все материалы этого сайта являются составной частью Базового / Продвинутого курсов по программированию - и являются объектами авторского и имущественного права.
Любое их распространение без письменного согласования с авторами запрещено.
могу ошибаться но в первом запросе вернется первая строка ТЧ а не первй документ.
Здравствуйте.
В конфигурацию из предыдущего д/з добавил:
А) Справочники:
1) “Качество”
Реквизиты шапки:
Нет
Реквизиты таб. части:
Нет
Б) Документы:
1) “ПоступлениеТоваров”
Реквизиты шапки:
Контрагент(Тип – СправочникСсылка.Контрагент).
Реквизиты таб. части:
Номенклатура(Тип – СправочникСсылка.Номенклатура).
Качество(Тип – СправочникСсылка.Качество)
Количество(Тип – число)
ЕдиницаИзмерения(Тип – СправочникСсылка.ЕдиницыИзмерения)
2) “РеализацияТоваров”
Реквизиты шапки:
Контрагент(Тип – СправочникСсылка.Контрагент).
КонтактноеЛицо(Тип – СправочникСсылка.КонтактноеЛицо)
Реквизиты таб. части:
Номенклатура(Тип – СправочникСсылка.Номенклатура).
Качество(Тип – СправочникСсылка.Качество)
Количество(Тип – число)
ЕдиницаИзмерения(Тип – СправочникСсылка.ЕдиницыИзмерения)
Скидка(Тип – Число)
Цена(Тип – Число)
Сумма(Тип – Число)
3) “Контакт”
Реквизиты шапки:
Контрагент(Тип – СправочникСсылка.Контрагент).
Заголовок(Тип – Строка(80))
Тема(Тип – Строка(Неограниченная))
ВидКонтакта(Тип – ПеречислениеСсылка.ВидКонтакта)
Реквизиты таб. части:
Нет
В) Перечисления:
1) “ЮрФизЛицо” ({“ЮрЛицо”, “ФизЛицо”})
2) “ВидКонтакта”({“ЛичнаяВстреча”, “ТелефонныйЗвонок”, “Письмо”})
В табличной части документа можно указывать единицу измерения, отличную от базовой.
Бракованный товар определяется реквизитом таб. части “Качество”, которые выбирается из соответствующего справочника, формируемого пользователем.
Документы поступления и реализации могут вводится на основании справочника контрагенты.
В модуле объекта документа поступления реализована процедура обработки заполнения:
Если ДанныеЗаполнения <> Неопределено Тогда
ЭтотОбъект.Контрагент = ДанныеЗаполнения;
Запрос = Новый Запрос("ВЫБРАТЬ ПЕРВЫЕ 1
| ПоступлениеТоваровТовары.Номенклатура,
| ПоступлениеТоваровТовары.Качество,
| ПоступлениеТоваровТовары.Количество,
| ПоступлениеТоваровТовары.ЕдиницаИзмерения
|ИЗ
| Документ.ПоступлениеТоваров.Товары КАК ПоступлениеТоваровТовары
|ГДЕ
| ПоступлениеТоваровТовары.Ссылка.Контрагент = &Контрагент
|
|УПОРЯДОЧИТЬ ПО
| ПоступлениеТоваровТовары.Ссылка.МоментВремени УБЫВ");
Запрос.УстановитьПараметр("Контрагент", ДанныеЗаполнения);
ЭтотОбъект.Товары.Загрузить(Запрос.Выполнить().Выгрузить());
КонецЕсли;
КонецПроцедуры
Для реализации реализована такая же процедура, но алиасом выступает не поступление, а реализация.
Запрос формирует выборку соответствующих документов(из их набличных частей) в обратном порядке по моменту времени и выбирает первый документ.
Для документа реализации создан макет в соответствии с заданием.
В форму добавлена комана(кнопка) для печати и в модуле формы документа определены две процедуры:
&НаКлиенте
Процедура Печать(Команда)
ТабДок = ПечатьНаСервере();
ТабДок.Показать(“Показать”);
КонецПроцедуры
&НаСервере
Функция ПечатьНаСервере()
Возврат Документы.РеализацияТоваров.Печать(Объект.Ссылка);
КонецФункции
Процедура печати определена в модуле менеджера. В нее в качестве параметра передается ссылка на конкретный документ. В процедуре происходит заполнение
параметров шапки, строк табличной части и параметров подвала. Процедура возвращает сформированный табличный документ, который выводится потом выводится на
экран.
ТабДокумент = Новый ТабличныйДокумент;
Макет = ПолучитьМакет("Макет");
//
ОблШапка = Макет.ПолучитьОбласть("ОблШапка");
ОблСтрокаТаблицы = Макет.ПолучитьОбласть("ОблСтрокаТаблицы");
ОблПодвал = Макет.ПолучитьОбласть("ОблПодвал");
//
ОблШапка.Параметры.Наименование = ?(Ссылка.Контрагент.ЮрФизЛицо = Перечисления.ЮрФизЛицо.ЮрЛицо, "ТОРГ-12", "Товарный чек");
ОблШапка.Параметры.Номер = "Номер " + Ссылка.Номер;
ОблШапка.Параметры.Дата = "Дата " + Ссылка.Дата;
ОблШапка.Параметры.Контрагент = "Контрагент " + Ссылка.Контрагент.Наименование;
ТабДокумент.Вывести(ОблШапка);
Номер = 1;
СуммаИтог = 0;
Для Каждого Стр Из Ссылка.Товары Цикл
ОблСтрокаТаблицы.Параметры.Заполнить(Стр);
ОблСтрокаТаблицы.Параметры.Номер = Номер;
ТабДокумент.Вывести(ОблСтрокаТаблицы);
Номер = Номер + 1;
СуммаИтог = СуммаИтог + Стр.Сумма
КонецЦикла;
ОблПодвал.Параметры.Поставщик = ПользователиИнформационнойБазы.ТекущийПользователь().Имя;
ОблПодвал.Параметры.Покупатель = Ссылка.КонтактноеЛицо;
ОблПодвал.Параметры.СтрокаСумма = ЧислоПрописью(СуммаИтог, "Л = ru_RU; ДП = Ложь", "рубль, рубля, рублей, м, копейка, копейки, копеек, ж, 2");
ТабДокумент.Вывести(ОблПодвал);
Возврат ТабДокумент;
КонецФункции
Здравствуйте. Григорий, отчет принят.