26.09.2018, 12:54
|
#1
|
Новичок
Регистрация: 29.01.2013
Сообщений: 28
Сказал(а) спасибо: 2
Поблагодарили 2 раз(а) в 2 сообщениях
|
ПОТРІБНА зовнішня обробка табеля обліку робочого часу
Доброго дня. Для конфігурації бази 8.3. потрібна зовнішня обробка табеля обліку робочого часу для "Бухгалтерія для України" (базова), редакція 1.2 друкована форма.
В конфігурації є тільки бланк наскільки я розумію, і він автоматично не заповняється
Последний раз редактировалось McLoren; 26.09.2018 в 13:24.
|
|
|
Пользователь сказал cпасибо:
|
|
26.11.2018, 11:57
|
#2
|
Новичок
Регистрация: 22.05.2017
Сообщений: 2
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
|
Доброго дня! так і не знайшли обробку? Теж шукаю...
|
|
|
26.11.2018, 14:15
|
#3
|
Новичок
Регистрация: 01.03.2012
Сообщений: 29
Сказал(а) спасибо: 12
Поблагодарили 28 раз(а) в 12 сообщениях
|
Попробуйте. Подключается как внешняя печатная форма к документу Начисление зарплаты.
[Ссылки доступны только зарегистрированным пользователям
. Регистрируйся тут...]
|
|
|
5 пользователя(ей) сказали cпасибо:
|
|
26.11.2018, 14:46
|
#4
|
Новичок
Регистрация: 22.05.2017
Сообщений: 2
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
|
Спасибо огромное! Вы меня спасли! Все работает
|
|
|
01.12.2018, 08:06
|
#5
|
Новичок
Регистрация: 23.01.2017
Сообщений: 4
Сказал(а) спасибо: 12
Поблагодарили 0 раз(а) в 0 сообщениях
|
Спасибо огромное.
|
|
|
04.12.2018, 13:15
|
#6
|
Новичок
Регистрация: 06.11.2014
Сообщений: 15
Сказал(а) спасибо: 7
Поблагодарили 2 раз(а) в 2 сообщениях
|
Цитата:
Сообщение от barul4ik
Попробуйте. Подключается как внешняя печатная форма к документу Начисление зарплаты.
[Ссылки доступны только зарегистрированным пользователям
. Регистрируйся тут...]
|
продублируйте ссылку, плиз, уже не существует
|
|
|
04.12.2018, 16:54
|
#7
|
Пользователь
Регистрация: 19.12.2011
Сообщений: 49
Сказал(а) спасибо: 35
Поблагодарили 21 раз(а) в 13 сообщениях
|
[Ссылки доступны только зарегистрированным пользователям
. Регистрируйся тут...]
только если вы зарегистрированы
|
|
|
3 пользователя(ей) сказали cпасибо:
|
|
12.12.2018, 13:11
|
#8
|
Новичок
Регистрация: 02.02.2011
Сообщений: 11
Сказал(а) спасибо: 22
Поблагодарили 0 раз(а) в 0 сообщениях
|
Если не сложно, продублируйте файл? ссылка не действительна (хоть я и зарегистрировалась)
|
|
|
12.12.2018, 21:49
|
#9
|
Новичок
Регистрация: 26.08.2012
Сообщений: 13
Сказал(а) спасибо: 32
Поблагодарили 128 раз(а) в 7 сообщениях
|
Если не сложно, продублируйте файл? ссылка не действительна (и мне)
|
|
|
16.12.2018, 15:06
|
#10
|
Новичок
Регистрация: 23.11.2015
Сообщений: 1
Сказал(а) спасибо: 1
Поблагодарили 0 раз(а) в 0 сообщениях
|
Цитата:
Сообщение от Анна_1С
Спасибо огромное! Вы меня спасли! Все работает
|
Анна, вышлите, пожалуйста, эту обработку на audit68@ukr.net, т.к. ссылка не активна
Спасибо!
|
|
|
16.12.2018, 17:02
|
#11
|
Новичок
Регистрация: 26.08.2012
Сообщений: 13
Сказал(а) спасибо: 32
Поблагодарили 128 раз(а) в 7 сообщениях
|
Цитата:
Сообщение от Ант
Анна, вышлите, пожалуйста, эту обработку на audit68@ukr.net, т.к. ссылка не активна
Спасибо!
|
и мне apf2010@ukr.net
|
|
|
25.12.2018, 21:05
|
#12
|
Новичок
Регистрация: 02.02.2011
Сообщений: 11
Сказал(а) спасибо: 22
Поблагодарили 0 раз(а) в 0 сообщениях
|
Цитата:
Сообщение от fastiv
|
присоединяюсь: subos.tehno@gmail.com
|
|
|
04.01.2019, 10:08
|
#13
|
Новичок
Регистрация: 02.10.2012
Сообщений: 10
Сказал(а) спасибо: 5
Поблагодарили 32 раз(а) в 6 сообщениях
|
|
|
|
07.01.2019, 16:42
|
#14
|
Новичок
Регистрация: 07.12.2018
Сообщений: 4
Сказал(а) спасибо: 3
Поблагодарили 0 раз(а) в 0 сообщениях
|
Добрый день. Подскажите нуждаюсь в правке внешняя печатная форма счет для покупателя для 1С8.3 конфигурация бухгалтерия 2.0.
Есть такая обработка для конфигурации бухгалтерия 1.2. - не запускается на 2,0.
как поправить, чтобы заработало на 2.0
Код:
Перем мВалютаРегламентированногоУчета Экспорт;
Функция СведенияОВнешнейОбработке()
ПараметрыРегистрации = Новый Структура;
МассивНазначений = Новый Массив;
МассивНазначений.Добавить("Документ.СчетНаОплатуПокупателю"); //Указываем документ к которому делаем внешнюю печ. форму
ПараметрыРегистрации.Вставить("Вид", "ПечатнаяФорма"); //может быть - ПечатнаяФорма, ЗаполнениеОбъекта, ДополнительныйОтчет, СозданиеСвязанныхОбъектов...
ПараметрыРегистрации.Вставить("Назначение", МассивНазначений);
ПараметрыРегистрации.Вставить("Наименование", "Счет на оплату (шаблон)"); //имя под которым обработка будет зарегестрирована в справочнике внешних обработок
ПараметрыРегистрации.Вставить("БезопасныйРежим", ЛОЖЬ);
ПараметрыРегистрации.Вставить("Версия", "1.0");
ПараметрыРегистрации.Вставить("Информация", "Эту ВПФ мы сделали для того что бы посмотреть возможности БСП ");
ТаблицаКоманд = ПолучитьТаблицуКоманд();
ДобавитьКоманду(ТаблицаКоманд, "Счет на оплату (шаблон)", "СчетНаОпл", "ВызовСерверногоМетода", Истина, "ПечатьMXL");
ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);
Возврат ПараметрыРегистрации;
КонецФункции
Функция ПолучитьТаблицуКоманд()
Команды = Новый ТаблицаЗначений;
Команды.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка"));//как будет выглядеть описание печ.формы для пользователя
Команды.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка")); //имя макета печ.формы
Команды.Колонки.Добавить("Использование", Новый ОписаниеТипов("Строка")); //ВызовСерверногоМетода
Команды.Колонки.Добавить("ПоказыватьОповещение", Новый ОписаниеТипов("Булево"));
Команды.Колонки.Добавить("Модификатор", Новый ОписаниеТипов("Строка"));
Возврат Команды;
КонецФункции
Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = "")
НоваяКоманда = ТаблицаКоманд.Добавить();
НоваяКоманда.Представление = Представление;
НоваяКоманда.Идентификатор = Идентификатор;
НоваяКоманда.Использование = Использование;
НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение;
НоваяКоманда.Модификатор = Модификатор;
КонецПроцедуры
//Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
//
//УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "СчетНаОпл", "Счет на оплату (шаблон)", СформироватьПечатнуюФорму(МассивОбъектов[0], ОбъектыПечати));
//таблдос = СформироватьПечатнуюФорму(МассивОбъектов[0], ОбъектыПечати);
//КонецПроцедуры // Печать()
Функция Печать() Экспорт
// Получить экземпляр документа на печать
//Если ИмяМакета = "Счет" Тогда
Тип = "Счет";
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("ТекущийДокумент", СсылкаНаОбъект);
Запрос.Текст ="
|ВЫБРАТЬ
| Номер,
| Дата,
| ДоговорКонтрагента,
| ДоговорКонтрагента.Дата КАК ДоговорДата,
| ДоговорКонтрагента.Номер КАК ДоговорНомер,
| ДоговорКонтрагента.НаименованиеДляПечати КАК ДоговорНаименованиеДляПечати,
| ДоговорКонтрагента.ВидДоговора КАК ВидДоговораКонтрагента,
| Ответственный.ФизЛицо.Наименование КАК Отпустил,
| Организация,
| Контрагент КАК Покупатель,
| Организация КАК Поставщик,
| СуммаДокумента,
| ВалютаДокумента,
| УчитыватьНДС,
| СуммаВключаетНДС
|ИЗ
| Документ.СчетНаОплатуПокупателю КАК ЗаказПокупателя
|
|ГДЕ
| ЗаказПокупателя.Ссылка = &ТекущийДокумент";
Шапка = Запрос.Выполнить().Выбрать();
Шапка.Следующий();
ТабДокумент = Новый ТабличныйДокумент;
ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_ЗаказПокупателя_СчетЗаказ";
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("ТекущийДокумент", СсылкаНаОбъект);
ЧастьЗапросаДляВыбораСодержанияУслуг = ФормированиеПечатныхФорм.ПолучитьЧастьЗапросаДляВыбораСодержанияУслуг("ЗаказПокупателя");
Запрос.Текст = "ВЫБРАТЬ
| ВложенныйЗапрос.Номенклатура,
| ВЫРАЗИТЬ(ВложенныйЗапрос.Номенклатура.НаименованиеПолное КАК Строка(1000)) КАК Товар,
| ВложенныйЗапрос.Номенклатура.Артикул КАК Артикул,
| ВложенныйЗапрос.Номенклатура.Код КАК Код,
| ВложенныйЗапрос.Количество,
| ВложенныйЗапрос.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
| ВложенныйЗапрос.Цена,
| ВложенныйЗапрос.СуммаБезСкидки,
| ВложенныйЗапрос.СуммаСкидки,
| ВложенныйЗапрос.Сумма,
| ВложенныйЗапрос.СуммаНДС,
| ВложенныйЗапрос.НомерСтроки КАК НомерСтроки,
| 1 КАК ID
|ИЗ
| (ВЫБРАТЬ
| ЗаказПокупателя.Номенклатура КАК Номенклатура,
| ЗаказПокупателя.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
| ЗаказПокупателя.Цена КАК Цена,
| СУММА(ЗаказПокупателя.Количество) КАК Количество,
| СУММА(ЗаказПокупателя.СуммаБезСкидки) КАК СуммаБезСкидки,
| СУММА(ЗаказПокупателя.СуммаСкидки) КАК СуммаСкидки,
| СУММА(ЗаказПокупателя.Сумма) КАК Сумма,
| СУММА(ЗаказПокупателя.СуммаНДС) КАК СуммаНДС,
| МИНИМУМ(ЗаказПокупателя.НомерСтроки) КАК НомерСтроки
| ИЗ
| Документ.СчетНаОплатуПокупателю.Товары КАК ЗаказПокупателя
|
| ГДЕ
| ЗаказПокупателя.Ссылка = &ТекущийДокумент
|
| СГРУППИРОВАТЬ ПО
| ЗаказПокупателя.Номенклатура,
| ЗаказПокупателя.ЕдиницаИзмерения,
| ЗаказПокупателя.Цена,
| ЗаказПокупателя.СтавкаНДС) КАК ВложенныйЗапрос
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
| " + ЧастьЗапросаДляВыбораСодержанияУслуг + ",
| " + ЧастьЗапросаДляВыбораСодержанияУслуг + ",
| ЗаказПокупателя.Номенклатура.Артикул КАК Артикул,
| ЗаказПокупателя.Номенклатура.Код КАК Код,
| ЗаказПокупателя.Количество,
| ЗаказПокупателя.Номенклатура.БазоваяЕдиницаИзмерения.Наименование,
| ЗаказПокупателя.Цена,
| ЗаказПокупателя.СуммаБезСкидки,
| ЗаказПокупателя.СуммаСкидки,
| ЗаказПокупателя.Сумма,
| ЗаказПокупателя.СуммаНДС,
| ЗаказПокупателя.НомерСтроки,
| 2
|ИЗ
| Документ.СчетНаОплатуПокупателю.Услуги КАК ЗаказПокупателя
|
|ГДЕ
| ЗаказПокупателя.Ссылка = &ТекущийДокумент
|
|УПОРЯДОЧИТЬ ПО
| ID,
| НомерСтроки";
ЗапросТовары = Запрос.Выполнить().Выгрузить();
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("ТекущийДокумент", СсылкаНаОбъект);
Запрос.Текст = "ВЫБРАТЬ
| ВложенныйЗапрос.Номенклатура,
| ВЫРАЗИТЬ(ВложенныйЗапрос.Номенклатура.НаименованиеПолное КАК Строка(1000)) КАК Товар,
| ВложенныйЗапрос.Номенклатура.Артикул КАК Артикул,
| ВложенныйЗапрос.Номенклатура.Код КАК Код,
| ВложенныйЗапрос.Количество,
| ВложенныйЗапрос.ЕдиницаИзмерения,
| ВложенныйЗапрос.Цена,
| ВложенныйЗапрос.Сумма,
| ВложенныйЗапрос.НомерСтроки КАК НомерСтроки
|ИЗ
| (ВЫБРАТЬ
| ЗаказПокупателя.Номенклатура КАК Номенклатура,
| ЗаказПокупателя.Номенклатура.БазоваяЕдиницаИзмерения.Наименование КАК ЕдиницаИзмерения,
| ЗаказПокупателя.Цена КАК Цена,
| СУММА(ЗаказПокупателя.Количество) КАК Количество,
| СУММА(ЗаказПокупателя.Сумма) КАК Сумма,
| МИНИМУМ(ЗаказПокупателя.НомерСтроки) КАК НомерСтроки
| ИЗ
| Документ.СчетНаОплатуПокупателю.ВозвратнаяТара КАК ЗаказПокупателя
|
| ГДЕ
| ЗаказПокупателя.Ссылка = &ТекущийДокумент
|
| СГРУППИРОВАТЬ ПО
| ЗаказПокупателя.Номенклатура,
| ЗаказПокупателя.Цена) КАК ВложенныйЗапрос
|
|УПОРЯДОЧИТЬ ПО
| НомерСтроки";
ЗапросТара = Запрос.Выполнить().Выгрузить();
Макет = ПолучитьМакет("СчетНаОпл");
// печать производится на языке, указанном в настройках пользователя
КодЯзыкаПечать = Локализация.ПолучитьЯзыкФормированияПечатныхФорм(УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(глЗначениеПеременной("глТекущийПользователь"), "РежимФормированияПечатныхФорм"));
Макет.КодЯзыкаМакета = КодЯзыкаПечать;
// Выводим шапку накладной
СведенияОПокупателе = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Покупатель, Шапка.Дата,,,КодЯзыкаПечать);
СведенияОПоставщике = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Поставщик, Шапка.Дата,,,КодЯзыкаПечать);
// ОбластьМакета = Макет.ПолучитьОбласть("Логотип");
// ТабДокумент.Вывести(ОбластьМакета);
// Если Тип = "Счет" Тогда
// ОбластьМакета = Макет.ПолучитьОбласть("ЗаголовокСчета");
// ОбластьМакета.Параметры.НазваниеОрганизации = СведенияОПоставщике.ПолноеНаименование;
// ОбластьМакета.Параметры.ЕДРПОУОрганизации = УправлениеКонтактнойИнформацией.ПолучитьКодОрганизации(СведенияОПоставщике);
Если ТипЗнч(СсылкаНаОбъект.СтруктурнаяЕдиница) = Тип("СправочникСсылка.БанковскиеСчета") Тогда
Банк = СсылкаНаОбъект.СтруктурнаяЕдиница.Банк;
МФО = Банк.Код;
НомерСчета = СсылкаНаОбъект.СтруктурнаяЕдиница.НомерСчета;
Иначе
// покажем банковские реквизиты основного счета организации
Банк = СведенияОПоставщике.Банк;
МФО = СведенияОПоставщике.МФО;
НомерСчета = СведенияОПоставщике.НомерСчета;
КонецЕсли;
//
// ОбластьМакета.Параметры.БанкОрганизации = Банк;
// ОбластьМакета.Параметры.МФОБанкаОрганизации = МФО;
// ОбластьМакета.Параметры.НомерРасчетногоСчетаОрганизации = НомерСчета;
// Если НЕ Шапка.ВидДоговораКонтрагента = Перечисления.ВидыДоговоровКонтрагентов.СКомиссионером
// И НЕ Шапка.ВалютаДокумента <> мВалютаРегламентированногоУчета Тогда
// ТабДокумент.Вывести(ОбластьМакета);
// КонецЕсли;
// КонецЕсли;
ОбластьМакета = Макет.ПолучитьОбласть("Заголовок");
Если Шапка.ВидДоговораКонтрагента = Перечисления.ВидыДоговоровКонтрагентов.СКомиссионером Тогда
ОбластьМакета.Параметры.ТекстЗаголовка = ОбщегоНазначения.СформироватьЗаголовокДокумента(Шапка, НСтр("ru='Список товаров на комиссию';uk='Список товарів на комісію'",КодЯзыкаПечать),КодЯзыкаПечать);
Иначе
ОбластьМакета.Параметры.ТекстЗаголовка = ОбщегоНазначения.СформироватьЗаголовокДокумента(Шапка, НСтр("ru='Счет на оплату';uk='Рахунок на оплату'",КодЯзыкаПечать),КодЯзыкаПечать);
КонецЕсли;
ТабДокумент.Вывести(ОбластьМакета);
ОбластьМакета = Макет.ПолучитьОбласть("Поставщик");
ОбластьМакета.Параметры.Заполнить(Шапка);
ОбластьМакета.Параметры.ПредставлениеПоставщика = ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОПоставщике, "ПолноеНаименование,",,КодЯзыкаПечать);
//Если Тип = "Счет" Тогда
ОбластьМакета.Параметры.РеквизитыПоставщика = НСтр("ru='Т/с ';uk='П/р '",КодЯзыкаПечать) + НомерСчета + НСтр("ru=', Банк ';uk=', Банк '",КодЯзыкаПечать) + Банк + НСтр("ru=', МФО ';uk=', МФО '",КодЯзыкаПечать) + МФО + Символы.ПС +
ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОПоставщике, "ЮридическийАдрес,Телефоны,/,КодПоЕДРПОУ,КодПоДРФО,ИНН,НомерСвидетельства,/,ИнформацияОСтатусеПлательщикаНалогов,",,КодЯзыкаПечать);
ОбластьМакета.Параметры.ПлатитНалог = НСтр("ru='Является плательщиком налога на общих условиях';uk='Є платником податку на загальних умовах'",КодЯзыкаПечать);
//КонецЕсли;
ТабДокумент.Вывести(ОбластьМакета);
ОбластьМакета = Макет.ПолучитьОбласть("Покупатель");
ОбластьМакета.Параметры.Заполнить(Шапка);
ОбластьМакета.Параметры.ПредставлениеПокупателя = ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОПокупателе, "ПолноеНаименование,",,КодЯзыкаПечать);
ОбластьМакета.Параметры.РеквизитыПокупателя = ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОПокупателе,"Телефоны,",,КодЯзыкаПечать);
ТабДокумент.Вывести(ОбластьМакета);
// Выводим дополнительно информацию о договоре и сделке
СписокДополнительныхПараметров = "ДоговорНаименованиеДляПечати,";
МассивСтруктурСтрок = ФормированиеПечатныхФорм.ДополнительнаяИнформация(Шапка,СписокДополнительныхПараметров,КодЯзыкаПечать);
ОбластьМакета = Макет.ПолучитьОбласть("ДопИнформация");
Для каждого СтруктураСтроки Из МассивСтруктурСтрок Цикл
ОбластьМакета.Параметры.Заполнить(СтруктураСтроки);
ТабДокумент.Вывести(ОбластьМакета);
КонецЦикла;
// Вывести табличную часть
ОбластьИтого = "Итого";
ЕстьСкидки = (ЗапросТовары.Итог("СуммаСкидки") <> 0);
ДопКолонка = Константы.ДополнительнаяКолонкаПечатныхФормДокументов.Получить();
Если ДопКолонка = Перечисления.ДополнительнаяКолонкаПечатныхФормДокументов.Артикул Тогда
ВыводитьКоды = Истина;
Колонка = "Артикул";
ИначеЕсли ДопКолонка = Перечисления.ДополнительнаяКолонкаПечатныхФормДокументов.Код Тогда
ВыводитьКоды = Истина;
Колонка = "Код";
Иначе
ВыводитьКоды = Ложь;
КонецЕсли;
ОбластьНомера = Макет.ПолучитьОбласть("ШапкаТаблицы|НомерСтроки");
ОбластьКодов = Макет.ПолучитьОбласть("ШапкаТаблицы|КолонкаКодов");
ОбластьДанных = Макет.ПолучитьОбласть("ШапкаТаблицы|Данные");
ОбластьСкидка = Макет.ПолучитьОбласть("ШапкаТаблицы|Скидка");
ОбластьСуммы = Макет.ПолучитьОбласть("ШапкаТаблицы|Сумма");
ТабДокумент.Вывести(ОбластьНомера);
Если ВыводитьКоды Тогда
ОбластьКодов.Параметры.ИмяКолонкиКодов = Колонка;
ТабДокумент.Присоединить(ОбластьКодов);
КонецЕсли;
Суффикс = "";
Если Шапка.УчитыватьНДС Тогда
Если Шапка.СуммаВключаетНДС Тогда
Суффикс = Суффикс + НСтр("ru=' с ';uk=' з '",КодЯзыкаПечать);
Иначе
Суффикс = Суффикс + НСтр("ru=' без ';uk=' без '",КодЯзыкаПечать);
КонецЕсли;
Суффикс = Суффикс + НСтр("ru='НДС';uk='ПДВ'",КодЯзыкаПечать);
КонецЕсли;
ОбластьДанных.Параметры.Цена = НСтр("ru='Цена';uk='Ціна'",КодЯзыкаПечать) + Суффикс;
ТабДокумент.Присоединить(ОбластьДанных);
Если ЕстьСкидки Тогда
ТабДокумент.Присоединить(ОбластьСкидка);
КонецЕсли;
ОбластьСуммы.Параметры.СрокПоставки = НСтр("ru=' Срок поставки, нед. ';uk=' Термін постачання, тижн.'",КодЯзыкаПечать);
ОбластьСуммы.Параметры.Сумма = НСтр("ru='Сумма';uk='Сума'",КодЯзыкаПечать)+ Суффикс;
ТабДокумент.Присоединить(ОбластьСуммы);
//ТабДокумент.Вывести(ОбластьМакета);
ОбластьКолонкаТовар = Макет.Область("Товар");
Если Не ВыводитьКоды Тогда
ОбластьКолонкаТовар.ШиринаКолонки = ОбластьКолонкаТовар.ШиринаКолонки +
Макет.Область("КолонкаКодов").ШиринаКолонки;
КонецЕсли;
Если НЕ ЕстьСкидки Тогда
ОбластьКолонкаТовар.ШиринаКолонки = ОбластьКолонкаТовар.ШиринаКолонки +
Макет.Область("СуммаБезСкидки").ШиринаКолонки +
Макет.Область("СуммаСкидки").ШиринаКолонки;
КонецЕсли;
СуммаБезСкидки = 0;
СуммаСкидки = 0;
Сумма = 0;
СуммаНДС = 0;
ОбластьНомера = Макет.ПолучитьОбласть("Строка|НомерСтроки");
ОбластьКодов = Макет.ПолучитьОбласть("Строка|КолонкаКодов");
ОбластьДанных = Макет.ПолучитьОбласть("Строка|Данные");
ОбластьСкидки = Макет.ПолучитьОбласть("Строка|Скидка");
ОбластьСуммы = Макет.ПолучитьОбласть("Строка|Сумма");
Для каждого ВыборкаСтрокТовары Из ЗапросТовары Цикл
Если НЕ ЗначениеЗаполнено(ВыборкаСтрокТовары.Номенклатура) Тогда
Сообщить(НСтр("ru='В одной из строк не заполнено значение номенклатуры - строка при печати пропущена.';uk='В одному з рядків не заповнене значення номенклатури - рядок під час друку буде пропущений.'"), СтатусСообщения.Важное);
Продолжить;
КонецЕсли;
ОбластьНомера.Параметры.НомерСтроки = ЗапросТовары.Индекс(ВыборкаСтрокТовары) + 1;
ТабДокумент.Вывести(ОбластьНомера);
Если ВыводитьКоды Тогда
Если Колонка = "Артикул" Тогда
ОбластьКодов.Параметры.Артикул = ВыборкаСтрокТовары.Артикул;
Иначе
ОбластьКодов.Параметры.Артикул = ВыборкаСтрокТовары.Код;
КонецЕсли;
ТабДокумент.Присоединить(ОбластьКодов);
КонецЕсли;
ОбластьДанных.Параметры.Заполнить(ВыборкаСтрокТовары);
ОбластьДанных.Параметры.Товар = СокрЛП(ВыборкаСтрокТовары.Товар);
ТабДокумент.Присоединить(ОбластьДанных);
Если ЕстьСкидки Тогда
ОбластьСкидки.Параметры.Заполнить(ВыборкаСтрокТовары);
ТабДокумент.Присоединить(ОбластьСкидки);
КонецЕсли;
ОбластьСуммы.Параметры.Заполнить(ВыборкаСтрокТовары);
ТабДокумент.Присоединить(ОбластьСуммы);
СуммаБезСкидки = СуммаБезСкидки + ВыборкаСтрокТовары.СуммаБезСкидки;
СуммаСкидки = СуммаСкидки + ВыборкаСтрокТовары.СуммаСкидки;
Сумма = Сумма + ВыборкаСтрокТовары.Сумма;
СуммаНДС = СуммаНДС + ВыборкаСтрокТовары.СуммаНДС;
КонецЦикла;
// Вывести Итого
ОбластьНомера = Макет.ПолучитьОбласть("Итого|НомерСтроки");
ОбластьКодов = Макет.ПолучитьОбласть("Итого|КолонкаКодов");
ОбластьДанных = Макет.ПолучитьОбласть("Итого|Данные");
ОбластьСкидки = Макет.ПолучитьОбласть("Итого|Скидка");
ОбластьСуммы = Макет.ПолучитьОбласть("Итого|Сумма");
ТабДокумент.Вывести(ОбластьНомера);
Если ВыводитьКоды Тогда
ТабДокумент.Присоединить(ОбластьКодов);
КонецЕсли;
ТабДокумент.Присоединить(ОбластьДанных);
Если ЕстьСкидки Тогда
ОбластьСкидки.Параметры.ВсегоСуммаБезСкидки = ОбщегоНазначения.ФорматСумм(СуммаБезСкидки);
ОбластьСкидки.Параметры.ВсегоСуммаСкидки = ОбщегоНазначения.ФорматСумм(СуммаСкидки);
ТабДокумент.Присоединить(ОбластьСкидки);
КонецЕсли;
ОбластьСуммы.Параметры.Всего = ОбщегоНазначения.ФорматСумм(Сумма);
ТабДокумент.Присоединить(ОбластьСуммы);
// Вывести ИтогоНДС
Если Шапка.УчитыватьНДС Тогда
// НДС
ОбластьМакета = Макет.ПолучитьОбласть("ИтогоНДС");
ОбластьМакета.Параметры.ВсегоНДС = ОбщегоНазначения.ФорматСумм(СуммаНДС,,"""");
ОбластьМакета.Параметры.НДС = ?(Шапка.СуммаВключаетНДС, НСтр("ru='В том числе НДС:';uk='У тому числі ПДВ:'",КодЯзыкаПечать), НСтр("ru='Сумма НДС:';uk='Сума ПДВ:'",КодЯзыкаПечать));
ТабДокумент.Вывести(ОбластьМакета);
// всего с НДС (если сумма не включает НДС)
Если НЕ Шапка.СуммаВключаетНДС Тогда
ОбластьМакета = Макет.ПолучитьОбласть("ИтогоНДС");
ОбластьМакета.Параметры.ВсегоНДС = ОбщегоНазначения.ФорматСумм(Сумма + СуммаНДС);
ОбластьМакета.Параметры.НДС = НСтр("ru='Всего с НДС:';uk='Всього із ПДВ:'",КодЯзыкаПечать);
ТабДокумент.Вывести(ОбластьМакета);
КонецЕсли;
КонецЕсли;
// выведем таблицу с возвратной тарой
Если ЗапросТара.Количество() > 0 Тогда
// сделаем отступ от основной таблицы
ОбластьПробел = Макет.ПолучитьОбласть("Пробел");
ТабДокумент.Вывести(ОбластьПробел);
ОбластьНомера = Макет.ПолучитьОбласть("ШапкаТаблицыТара|НомерСтрокиТара");
ОбластьКодов = Макет.ПолучитьОбласть("ШапкаТаблицыТара|КолонкаКодовТара");
ОбластьДанных = Макет.ПолучитьОбласть("ШапкаТаблицыТара|ДанныеТара");
ТабДокумент.Вывести(ОбластьНомера);
Если ВыводитьКоды Тогда
ОбластьКодов.Параметры.ИмяКолонкиКодов = Колонка;
ТабДокумент.Присоединить(ОбластьКодов);
КонецЕсли;
ТабДокумент.Присоединить(ОбластьДанных);
ОбластьКолонкаТара = Макет.Область("Тара");
Если Не ВыводитьКоды Тогда
ОбластьКолонкаТара.ШиринаКолонки = ОбластьКолонкаТара.ШиринаКолонки +
Макет.Область("КолонкаКодовТара").ШиринаКолонки;
КонецЕсли;
ОбластьНомера = Макет.ПолучитьОбласть("СтрокаТара|НомерСтрокиТара");
ОбластьКодов = Макет.ПолучитьОбласть("СтрокаТара|КолонкаКодовТара");
ОбластьДанных = Макет.ПолучитьОбласть("СтрокаТара|ДанныеТара");
СуммаТара = 0;
Для каждого ВыборкаСтрокТара Из ЗапросТара Цикл
Если НЕ ЗначениеЗаполнено(ВыборкаСтрокТара.Номенклатура) Тогда
Сообщить(НСтр("ru='В одной из строк не заполнено значение тары - строка при печати пропущена.';uk='В одному з рядків не заповнене значення тари - рядок під час друку буде пропущений.'"), СтатусСообщения.Важное);
Продолжить;
КонецЕсли;
ОбластьНомера.Параметры.НомерСтроки = ЗапросТара.Индекс(ВыборкаСтрокТара) + 1;
ТабДокумент.Вывести(ОбластьНомера);
Если ВыводитьКоды Тогда
Если Колонка = "Артикул" Тогда
ОбластьКодов.Параметры.Артикул = ВыборкаСтрокТара.Артикул;
Иначе
ОбластьКодов.Параметры.Артикул = ВыборкаСтрокТара.Код;
КонецЕсли;
ТабДокумент.Присоединить(ОбластьКодов);
КонецЕсли;
ОбластьДанных.Параметры.Заполнить(ВыборкаСтрокТара);
ОбластьДанных.Параметры.Товар = СокрЛП(ВыборкаСтрокТара.Товар);
ТабДокумент.Присоединить(ОбластьДанных);
СуммаТара = СуммаТара + ВыборкаСтрокТара.Сумма;
КонецЦикла;
// Вывести Итого
ОбластьМакета = Макет.ПолучитьОбласть("ИтогоТара");
ОбластьМакета.Параметры.Всего = ОбщегоНазначения.ФорматСумм(СуммаТара);
ТабДокумент.Вывести(ОбластьМакета);
// сделаем отступ
ТабДокумент.Вывести(ОбластьПробел);
КонецЕсли;
// Вывести Сумму прописью
ОбластьМакета = Макет.ПолучитьОбласть("СуммаПрописью");
СуммаКПрописи = Сумма + ?(Шапка.СуммаВключаетНДС, 0, СуммаНДС);
ОбластьМакета.Параметры.ИтоговаяСтрока = НСтр("ru='Всего наименований ';uk='Всього найменувань '",КодЯзыкаПечать) + ЗапросТовары.Количество() + "," +
НСтр("ru=' на сумму ';uk=' на суму '",КодЯзыкаПечать) + ОбщегоНазначения.ФорматСумм(СуммаКПрописи, Шапка.ВалютаДокумента)
+ ?(ЗапросТара.Количество() = 0, "", НСтр("ru='; возвратная тара ';uk='; зворотна тара '",КодЯзыкаПечать) + ЗапросТара.Количество() + НСтр("ru=', на сумму ';uk=', на суму '",КодЯзыкаПечать) + ОбщегоНазначения.ФорматСумм(СуммаТара, Шапка.ВалютаДокумента)) + ".";
ОбластьМакета.Параметры.СуммаПрописью = ОбщегоНазначения.СформироватьСуммуПрописью(СуммаКПрописи, Шапка.ВалютаДокумента,КодЯзыкаПечать)
+ ?(НЕ Шапка.УчитыватьНДС, "", Символы.ПС + НСтр("ru='В т.ч. НДС: ';uk='У т.ч. ПДВ: '",КодЯзыкаПечать) + ОбщегоНазначения.СформироватьСуммуПрописью(СуммаНДС, Шапка.ВалютаДокумента, КодЯзыкаПечать));
ТабДокумент.Вывести(ОбластьМакета);
// Вывести подписи
ОбластьМакета = Макет.ПолучитьОбласть("Подписи");
ОбластьМакета.Параметры.Заполнить(Шапка);
ТабДокумент.Вывести(ОбластьМакета);
// ОбластьМакета = Макет.ПолучитьОбласть("Печать");
// ТабДокумент.Вывести(ОбластьМакета);
ОбластьМакета= Макет.ПолучитьОбласть("Подвал");
ОбластьМакета.Параметры.СрокДействияСчета = НСтр("ru='Счет действителен к оплате в течении трех банковских дней ';uk='Рахунок дійсний до сплати протягом трьох банківських днів '",КодЯзыкаПечать);
ТабДокумент.Вывести(ОбластьМакета);
Возврат ТабДокумент;
//КонецЕсли;
//УниверсальныеМеханизмы.НапечататьДокумент(ТабДокумент, КоличествоЭкземпляров, НаПринтер, ОбщегоНазначения.СформироватьЗаголовокДокумента(ЭтотОбъект, ""), НепосредственнаяПечать);
КонецФункции // Печать
Последний раз редактировалось dtai39; 07.01.2019 в 18:06.
|
|
|
17.01.2019, 11:36
|
#15
|
Новичок
Регистрация: 30.11.2013
Сообщений: 2
Сказал(а) спасибо: 52
Поблагодарили 0 раз(а) в 0 сообщениях
|
Добрый день. Пожалуйста, киньте внешний отчет на почту nicgor@i.ua. Заранее спасибо
|
|
|
Любые журналы Актион-МЦФЭР регулярно !!! Пишите https://www.nado.in/private.php?do=newpm&u=12191 или на электронный адрес pantera@nado.ws
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Текущее время: 23:54. Часовой пояс GMT +1.
| |