Имя: Пароль:
1C
1С v8
1C:Предприятие. 8.2. Как настроить основание в ТН?
,
0 fokys
 
26.11.13
14:02
Есть маленькая проблема: хочу настроить в ТН (в печатной форме), чтобы в основании ставился счет на основании которого ее выписали, но при этом Договор: основной договор (чтобы удобнее было в оборотке) Возможно ли это без дополнительных обработок сделать?
1 НаборДанных
 
26.11.13
14:06
Заведи ему доп свойства и пиши туда руками основание, в печатной форме тоже руками напишите основание - без доп. обработок и печ. форм.
2 fokys
 
26.11.13
14:07
А где нужно завести эти доп.свойства?
3 НаборДанных
 
26.11.13
14:08
(2)Самое крутое можешь в комментах писать основание и потом в печ форме тоже руками написать основание.
4 fokys
 
26.11.13
14:09
Ну а если серьезно?
5 fokys
 
26.11.13
14:10
Я хочу понять можно ли это сделать самим или лучше поискать специалиста? На сколько это проблематично и трудоемко сделать?
6 НаборДанных
 
26.11.13
14:11
Серьезно, ну не ломайся, измени документ, сделай на закладке дополнительно поле основание и переделай печ. форму во внешнюю. В чем проблемы? трудозатрат 1 час с перекурами.
7 fokys
 
26.11.13
14:13
Проблема в том, что я не умею. В закладке дополнительно счет на оплату:  счет №... от ....
А печатная форма: основной договор, а мне надо счет №... от...
8 НаборДанных
 
26.11.13
14:14
Лучше вариант, без изменения конфы, сделай ВПФ с возможностью выбора документа заказа и там уже выводи всё что пожелает душа, минус в том, что не будет истории кому что основанием является в 1С, плюс - изменения конфы =0;
9 НаборДанных
 
26.11.13
14:16
(7)Начнем с малого, что за конфа, на закладке дополнительно уже есть поле выбора?
10 fokys
 
26.11.13
14:18
1С:Предприятие 8.2 (8.2.18.102) Вот такая штука и есть обработка (писали нам ее) для автоматического выставления документов (счет, акт, счет-фактура)
11 НаборДанных
 
26.11.13
14:18
(10)Там ниже шушуть написано "Конфигурация:....."
12 fokys
 
26.11.13
14:19
В закладке дополнительно есть граФА СЧЕТ НА оплату: там выскакивает счет на основании которого она выписана
13 fokys
 
26.11.13
14:19
Бухгалтерия предприятия, редакция 2.0 (2.0.46.7) (http://v8.1c.ru/buhv8/)
Copyright (С) ООО "1C", 2009 - 2013. Все права защищены
(http://www.1c.ru)
14 НаборДанных
 
26.11.13
14:20
Тогда выложи обработку  на сюда rghost.ru
15 fokys
 
26.11.13
14:21
))) а как?
16 НаборДанных
 
26.11.13
14:21
(14)В смысле печатную форму, которая надеюсь внешняя(Меню сервис-доплнительные отчеты и обработки-дополнительные внешние печатные формы) там ищи название своей печатной формы, есть что-нибудь?
17 fokys
 
26.11.13
14:21
ну есть же еще документы которые выписываю ручками
18 fokys
 
26.11.13
14:22
нету
19 НаборДанных
 
26.11.13
14:23
(17)В этих документах можно поставить счет ручками, если его нет, тогда вариант (8)
20 fokys
 
26.11.13
14:24
Ручками это когда уже вывела форму на печать?! А мне надо автоматом!
21 НаборДанных
 
26.11.13
14:24
Эх
Кароче, в конфигуратор заходить умеете?
22 fokys
 
26.11.13
14:24
да
23 НаборДанных
 
26.11.13
14:24
(22)Входите!
24 НаборДанных
 
26.11.13
14:24
=)
25 НаборДанных
 
26.11.13
14:25
Слева дерево открыто?
26 fokys
 
26.11.13
14:25
нет
27 НаборДанных
 
26.11.13
14:26
Меню конфигурация - открыть конфигурацию
28 fokys
 
26.11.13
14:27
открылось
29 НаборДанных
 
26.11.13
14:27
Документы развернуть, найти ТребованиеНакладная
30 fokys
 
26.11.13
14:28
нашла
31 НаборДанных
 
26.11.13
14:28
Правой кнопкой мыши, открыть модуль обжекта
32 fokys
 
26.11.13
14:29
открыла
33 НаборДанных
 
26.11.13
14:29
Начнем с первой, Найти Функция ПечатьМ11() скопировать все что  между Функция ПечатьМ11() и КонецФункции
34 НаборДанных
 
26.11.13
14:30
Вставить сюда
35 fokys
 
26.11.13
14:31
Функция ПечатьМ11()

    ТабДокумент = Новый ТабличныйДокумент;
    ТабДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;
    ТабДокумент.ИмяПараметровПечати = "ПараметрыПечати_ТребованиеНакладная_М11";

    Макет = ПолучитьОбщийМакет("М11");

    Область = Макет.ПолучитьОбласть("Шапка");
    Область.Параметры.Заголовок                = "ТРЕБОВАНИЕ-НАКЛАДНАЯ № " + Строка(Номер);
    Область.Параметры.КодОКПО                  = Организация.КодПоОКПО;
    СведенияОбОрганизации    = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Организация, Дата);
    ПредставлениеОрганизации = ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОбОрганизации, "НаименованиеДляПечатныхФорм,");
    Область.Параметры.ПредставлениеОрганизации = ПредставлениеОрганизации;
    Область.Параметры.ДатаСоставления          = Формат( Дата, "ДФ=dd.MM.yy");
    Область.Параметры.Склад                    = Склад;
    Область.Параметры.КоррСчет                 = СчетЗатрат.Код;
    Область.Параметры.ПредставлениеПодразделения = ПодразделениеЗатрат.Наименование;
    ТабДокумент.Вывести(Область);

    СтруктураПолей = Новый Структура;
    СтруктураПолей.Вставить("Счет",                         "Счет");
    СтруктураПолей.Вставить("Материал",                     "Номенклатура");
    СтруктураПолей.Вставить("МатериалНаименование",         "Номенклатура.НаименованиеПолное");
    
    Если Константы.ДополнительнаяКолонкаПечатныхФормДокументов.Получить() = Перечисления.ДополнительнаяКолонкаПечатныхФормДокументов.Артикул Тогда
        СтруктураПолей.Вставить("НоменклатурныйНомер",          "Номенклатура.Артикул");
    Иначе
        СтруктураПолей.Вставить("НоменклатурныйНомер",          "Номенклатура.Код");
    КонецЕсли;
    
    СтруктураПолей.Вставить("ЕдиницаИзмеренияНаименование", "Номенклатура.БазоваяЕдиницаИзмерения");
    СтруктураПолей.Вставить("ЕдиницаИзмеренияКод",          "Номенклатура.БазоваяЕдиницаИзмерения.Код");
    СтруктураПолей.Вставить("Количество",                   "Количество");
                                          
    Область = Макет.ПолучитьОбласть("Строка");
    
    ТаблицаМатериалов = ОбщегоНазначения.СформироватьЗапросПоТабличнойЧасти(ЭтотОбъект, "Материалы", СтруктураПолей).Выгрузить();
    ТаблицаМатериалов.Свернуть("Материал, МатериалНаименование, Счет, НоменклатурныйНомер,ЕдиницаИзмеренияКод,ЕдиницаИзмеренияНаименование", "Количество");

    // Поиск сумм списания активов для заполнения Цены и Суммы
    ТаблицаСуммСписания = БухгалтерскийУчет.ПолучитьСуммуСписанияАктивов(ЭтотОБъект);
    
    Для Каждого СтрокаТЧ Из ТаблицаМатериалов Цикл

        Область.Параметры.Заполнить(СтрокаТЧ);
        СтрокаСуммСписания =  ТаблицаСуммСписания.Найти(СтрокаТЧ.Материал, "Номенклатура");
        Если СтрокаСуммСписания = Неопределено Тогда
             Область.Параметры.Цена = 0;
             Область.Параметры.Сумма = 0;
         Иначе
             Цена = ?(СтрокаСуммСписания.Количество = 0, 0, СтрокаСуммСписания.Сумма / СтрокаСуммСписания.Количество);
             Область.Параметры.Цена  = Цена;
             Область.Параметры.Сумма = Цена * СтрокаТЧ.Количество;
         КонецЕсли;
        ТабДокумент.Вывести(Область);

    КонецЦикла;
    
    ТаблицаМатериалов = ОбщегоНазначения.СформироватьЗапросПоТабличнойЧасти(ЭтотОбъект, "МатериалыЗаказчика", СтруктураПолей).Выгрузить();

    Для Каждого СтрокаТЧ Из ТаблицаМатериалов Цикл

        Область.Параметры.Заполнить(СтрокаТЧ);
        СтрокаСуммСписания =  ТаблицаСуммСписания.Найти(СтрокаТЧ.Материал, "Номенклатура");
        Если СтрокаСуммСписания = Неопределено Тогда
             Область.Параметры.Цена = 0;
             Область.Параметры.Сумма = 0;
         Иначе
             Цена = ?(СтрокаСуммСписания.Количество = 0, 0, СтрокаСуммСписания.Сумма / СтрокаСуммСписания.Количество);
             Область.Параметры.Цена  = Цена;
             Область.Параметры.Сумма = Цена * СтрокаТЧ.Количество;
         КонецЕсли;
        ТабДокумент.Вывести(Область);

    КонецЦикла;

    Область = Макет.ПолучитьОбласть("Подвал");

    ТабДокумент.Вывести(Область);

    Возврат ТабДокумент;

КонецФункции // ПечатьМ11()
36 НаборДанных
 
26.11.13
14:35
Окей, следующую Функция ПечатьТребованиеНакладная()
Также сюда.
37 fokys
 
26.11.13
14:37
Функция ПечатьТребованиеНакладная()

    ДопКолонка = Константы.ДополнительнаяКолонкаПечатныхФормДокументов.Получить();
    Если ДопКолонка = Перечисления.ДополнительнаяКолонкаПечатныхФормДокументов.Артикул Тогда
        Колонка         = "Артикул";
        ТекстКодАртикул = "Артикул";
    Иначе
        Колонка         = "Код";
        ТекстКодАртикул = "Код";
    КонецЕсли;

    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("ТекущийДокумент", ЭтотОбъект.Ссылка);
    Запрос.Текст ="
    |ВЫБРАТЬ
    |    Номер,
    |    Дата,
    |    Организация,
    |    Склад
    |ИЗ
    |    Документ.ТребованиеНакладная КАК ТребованиеНакладная
    |
    |ГДЕ
    |    ТребованиеНакладная.Ссылка = &ТекущийДокумент";

    Шапка = Запрос.Выполнить().Выбрать();
    Шапка.Следующий();

    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("ТекущийДокумент", ЭтотОбъект.Ссылка);

    Запрос.Текст =
    "ВЫБРАТЬ
    |    ТребованиеНакладная.Номенклатура." + ТекстКодАртикул + " КАК Код,
    |    ТребованиеНакладная.Номенклатура.НаименованиеПолное КАК Имя,
    |    ТребованиеНакладная.Номенклатура.БазоваяЕдиницаИзмерения КАК ЕдИзм,
    |    ТребованиеНакладная.Количество КАК Количество,
    |    ТребованиеНакладная.ЕдиницаИзмерения КАК ЕдИзмМест,
    |    ТребованиеНакладная.КоличествоМест
    |ИЗ
    |    Документ.ТребованиеНакладная.Материалы КАК ТребованиеНакладная
    |ГДЕ
    |    ТребованиеНакладная.Ссылка = &ТекущийДокумент";

    ЗапросПоНоменклатуре = Запрос.Выполнить();

    ТабДокумент = Новый ТабличныйДокумент;
    ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_ТребованиеНакладная_ТН";
    
    // Вывод заголовка
    Макет = ПолучитьМакет("ТребованиеНакладная");
    Область = Макет.ПолучитьОбласть("Заголовок");
    
    Область.Параметры.ИмяКолонкиКодов = Колонка;
    
    Область.Параметры.ТекстЗаголовка = ОбщегоНазначения.СформироватьЗаголовокДокумента(Ссылка, "Требование-накладная");
    Область.Параметры.Заполнить(Шапка);
    СведенияОбОрганизации    = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Организация, Шапка.Дата);
    ПредставлениеОрганизации = ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОбОрганизации, "НаименованиеДляПечатныхФорм,");
    Область.Параметры.Организация = ПредставлениеОрганизации;
    ТабДокумент.Вывести(Область);

    ВыборкаПоСтрокам = ЗапросПоНоменклатуре.Выгрузить();
    ВыборкаПоСтрокам.Свернуть("Код, Имя, ЕдИзм, ЕдИзмМест", "Количество,КоличествоМест");
    
    НомерТекущий = 1;
    Для Каждого СтрокаТЧ Из ВыборкаПоСтрокам Цикл

        Область = Макет.ПолучитьОбласть("Строка");
        Область.Параметры.Заполнить(СтрокаТЧ);
        Область.Параметры.НомерТекущий = НомерТекущий;
        ТабДокумент.Вывести(Область);
        НомерТекущий = НомерТекущий + 1;
    КонецЦикла;
    
    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("ТекущийДокумент", ЭтотОбъект.Ссылка);

    Запрос.Текст =
    "ВЫБРАТЬ
    |    ТребованиеНакладная.Номенклатура." + ТекстКодАртикул + " КАК Код,
    |    ТребованиеНакладная.Номенклатура.НаименованиеПолное КАК Имя,
    |    ТребованиеНакладная.Номенклатура.БазоваяЕдиницаИзмерения КАК ЕдИзм,
    |    ТребованиеНакладная.Количество КАК Количество,
    |    ТребованиеНакладная.ЕдиницаИзмерения КАК ЕдИзмМест,
    |    ТребованиеНакладная.КоличествоМест
    |ИЗ
    |    Документ.ТребованиеНакладная.МатериалыЗаказчика КАК ТребованиеНакладная
    |ГДЕ
    |    ТребованиеНакладная.Ссылка = &ТекущийДокумент";

    ЗапросПоНоменклатуре = Запрос.Выполнить();
    
    ВыборкаПоСтрокам = ЗапросПоНоменклатуре.Выгрузить();
    ВыборкаПоСтрокам.Свернуть("Код, Имя, ЕдИзм, ЕдИзмМест", "Количество,КоличествоМест");
    
    Для Каждого СтрокаТЧ Из ВыборкаПоСтрокам Цикл

        Область = Макет.ПолучитьОбласть("Строка");
        Область.Параметры.Заполнить(СтрокаТЧ);
        Область.Параметры.НомерТекущий = НомерТекущий;
        ТабДокумент.Вывести(Область);
        НомерТекущий = НомерТекущий + 1;

    КонецЦикла;

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

    Возврат ТабДокумент;

КонецФункции // ПечатьТребованиеНакладная()
38 НаборДанных
 
26.11.13
14:39
Окей обе типовые, в дополнительных печатных формах точно ничего нет? Печатную форму выведете на экран и сохраниет в эксель зайдите на rghost.ru и загрузите туда файл экселя, ссылку нам сюда.
39 fokys
 
26.11.13
14:40
Она стандартная. В формах ничего не меняли
40 НаборДанных
 
26.11.13
14:41
в стандартной форме нет основания и догоора.
41 fokys
 
26.11.13
14:42
42 НаборДанных
 
26.11.13
14:43
Аха, класс))) Это печатная форма реализации, а я втупил про ТН))))
43 fokys
 
26.11.13
14:43
ага, это я не правильно написала (
44 fokys
 
26.11.13
14:43
а че теперь делать?
45 fokys
 
26.11.13
14:47
Функция ПечатьДокумента()
    
    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("ТекущийДокумент", ЭтотОбъект.Ссылка);
    Запрос.Текст =
    "ВЫБРАТЬ
    |    Номер,
    |    Дата,
    |    ДоговорКонтрагента,
    |    Контрагент КАК Получатель,
    |    Организация,
    |    Организация КАК Поставщик,
    |    СуммаДокумента,
    |    ВалютаДокумента,
    |    УчитыватьНДС,
    |    СуммаВключаетНДС,
    |    ОтпускПроизвел
    |ИЗ
    |    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
    |
    |ГДЕ
    |    РеализацияТоваровУслуг.Ссылка = &ТекущийДокумент";
    Шапка = Запрос.Выполнить().Выбрать();
    Шапка.Следующий();

    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("ТекущийДокумент", ЭтотОбъект.Ссылка);
    
    ЧастьЗапросаДляВыбораСодержанияУслуг = ФормированиеПечатныхФорм.ПолучитьЧастьЗапросаДляВыбораСодержанияУслуг("РеализацияТоваровУслуг");
    
    Запрос.Текст =
    "ВЫБРАТЬ
    |    Номенклатура,
    |    ВЫРАЗИТЬ(Номенклатура.НаименованиеПолное КАК Строка(1000)) КАК Товар,
    |    Номенклатура.Код КАК Код,
    |    Номенклатура.Артикул КАК Артикул,
    |    Количество,
    |    КоличествоМест,
    |    ЕдиницаИзмерения КАК ЕдиницаИзмерения,
    |    Номенклатура.БазоваяЕдиницаИзмерения КАК ЕдиницаХранения,
    |    Цена,
    |    Сумма,
    |    СуммаНДС,
    |    СтранаПроисхождения КАК СтранаПроисхождения,
    |    НомерГТД КАК НомерГТД,
    |   НомерСтроки,
    |    1 КАК ID
    |ИЗ
    |    (ВЫБРАТЬ
    |        Номенклатура         КАК Номенклатура,
    |        ЕдиницаИзмерения     КАК ЕдиницаИзмерения,
    |        Цена                 КАК Цена,
    |        СтавкаНДС            КАК СтавкаНДС,
    |        СтранаПроисхождения  КАК СтранаПроисхождения,
    |        НомерГТД             КАК НомерГТД,
    |        СУММА(Количество)    КАК Количество,
    |        СУММА(КоличествоМест)КАК КоличествоМест,
    |        СУММА(Сумма)         КАК Сумма,
    |        СУММА(СуммаНДС)      КАК СуммаНДС,
    |        МИНИМУМ(НомерСтроки) КАК НомерСтроки
    |    ИЗ
    |        Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслуг
    |    ГДЕ
    |        РеализацияТоваровУслуг.Ссылка = &ТекущийДокумент
    |    СГРУППИРОВАТЬ ПО
    |        Номенклатура,
    |        ЕдиницаИзмерения,
    |        Цена,
    |        СтавкаНДС,
    |        СтранаПроисхождения,
    |        НомерГТД
    |    ) КАК ВложенныйЗапросПоТоварам
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ
    |    Номенклатура,
    |    ВЫРАЗИТЬ(Номенклатура.НаименованиеПолное КАК Строка(1000)),
    |    Номенклатура.Код КАК Код,
    |    Номенклатура.Артикул КАК Артикул,
    |    Количество,
    |    NULL,
    |    NULL,
    |    NULL,
    |    Цена,
    |    Сумма,
    |    0,
    |    NULL,
    |    NULL,
    |    НомерСтроки,
    |    2
    |    
    |ИЗ
    |    Документ.РеализацияТоваровУслуг.ВозвратнаяТара КАК РеализацияТоваровУслуг
    |
    |ГДЕ
    |    РеализацияТоваровУслуг.Ссылка = &ТекущийДокумент
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ
    |    " + ЧастьЗапросаДляВыбораСодержанияУслуг + ",
    |    " + ЧастьЗапросаДляВыбораСодержанияУслуг + ",
    |    Номенклатура.Код КАК Код,
    |    Номенклатура.Артикул КАК Артикул,
    |    Количество,
    |    NULL,
    |    NULL,
    |    Номенклатура.БазоваяЕдиницаИзмерения КАК ЕдиницаХранения,
    |    Цена,
    |    Сумма,
    |    СуммаНДС,
    |    NULL,
    |    NULL,
    |    НомерСтроки,
    |    3
    |    
    |ИЗ
    |    Документ.РеализацияТоваровУслуг.Услуги КАК РеализацияТоваровУслуг
    |
    |ГДЕ
    |    РеализацияТоваровУслуг.Ссылка = &ТекущийДокумент
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ
    |    " + ЧастьЗапросаДляВыбораСодержанияУслуг + ",
    |    " + ЧастьЗапросаДляВыбораСодержанияУслуг + ",
    |    Номенклатура.Код КАК Код,
    |    Номенклатура.Артикул КАК Артикул,
    |    Количество,
    |    NULL,
    |    NULL,
    |    Номенклатура.БазоваяЕдиницаИзмерения КАК ЕдиницаХранения,
    |    Цена,
    |    Сумма,
    |    СуммаНДС,
    |    NULL,
    |    NULL,
    |    НомерСтроки,
    |    4
    |    
    |ИЗ
    |    Документ.РеализацияТоваровУслуг.АгентскиеУслуги КАК РеализацияТоваровУслуг
    |
    |ГДЕ
    |    РеализацияТоваровУслуг.Ссылка = &ТекущийДокумент
    |
    |УПОРЯДОЧИТЬ ПО
    |    ID,
    |    НомерСтроки";
    ЗапросТовары = Запрос.Выполнить().Выгрузить();

    ТабДокумент = Новый ТабличныйДокумент;
    ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_РеализацияТоваровУслуг_Накладная";

    Макет = ПолучитьМакет("Накладная");

    // Выводим шапку накладной

    ОбластьМакета = Макет.ПолучитьОбласть("Заголовок");
    ОбластьМакета.Параметры.ТекстЗаголовка = ОбщегоНазначения.СформироватьЗаголовокДокумента(Шапка, "Расходная накладная");
    ТабДокумент.Вывести(ОбластьМакета);

    ОбластьМакета = Макет.ПолучитьОбласть("Поставщик");
    СведенияОбОрганизации   = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Организация, Шапка.Дата);
    ПредставлениеПоставщика = ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОбОрганизации, "НаименованиеДляПечатныхФорм,");
    ОбластьМакета.Параметры.ПредставлениеПоставщика = ПредставлениеПоставщика;
    ОбластьМакета.Параметры.Поставщик                 = Шапка.Поставщик;
    ТабДокумент.Вывести(ОбластьМакета);

    ОбластьМакета = Макет.ПолучитьОбласть("Покупатель");
    СведенияОКонтрагенте    = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Шапка.Получатель, Шапка.Дата);
    ПредставлениеПолучателя = ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОКонтрагенте, "НаименованиеДляПечатныхФорм,");
    ОбластьМакета.Параметры.ПредставлениеПолучателя = ПредставлениеПолучателя;
    ОбластьМакета.Параметры.Получатель = Шапка.Получатель;
    ТабДокумент.Вывести(ОбластьМакета);

    ЕстьСкидки = Ложь;

    ДопКолонка = Константы.ДополнительнаяКолонкаПечатныхФормДокументов.Получить();
    Если ДопКолонка = Перечисления.ДополнительнаяКолонкаПечатныхФормДокументов.Артикул Тогда
        ВыводитьКоды = Истина;
        Колонка = "Артикул";
    ИначеЕсли ДопКолонка = Перечисления.ДополнительнаяКолонкаПечатныхФормДокументов.Код Тогда
        ВыводитьКоды = Истина;
        Колонка = "Код";
    Иначе
        ВыводитьКоды = Ложь;
    КонецЕсли;

    ОбластьНомера = Макет.ПолучитьОбласть("ШапкаТаблицы|НомерСтроки");
    ОбластьКодов  = Макет.ПолучитьОбласть("ШапкаТаблицы|КолонкаКодов");
    ОбластьДанных = Макет.ПолучитьОбласть("ШапкаТаблицы|Данные");
    ОбластьСуммы  = Макет.ПолучитьОбласть("ШапкаТаблицы|Сумма");

    ТабДокумент.Вывести(ОбластьНомера);
    Если ВыводитьКоды Тогда
        ОбластьКодов.Параметры.ИмяКолонкиКодов = Колонка;
        ТабДокумент.Присоединить(ОбластьКодов);
    КонецЕсли;
    ТабДокумент.Присоединить(ОбластьДанных);
    ТабДокумент.Присоединить(ОбластьСуммы);

    ОбластьКолонкаТовар = Макет.Область("Товар");
    Если Не ВыводитьКоды Тогда
        ОбластьКолонкаТовар.ШиринаКолонки = ОбластьКолонкаТовар.ШиринаКолонки +
                                            Макет.Область("КолонкаКодов").ШиринаКолонки;
    КонецЕсли;
    Если НЕ ЕстьСкидки Тогда
        ОбластьКолонкаТовар.ШиринаКолонки = ОбластьКолонкаТовар.ШиринаКолонки +
                                            Макет.Область("СуммаБезСкидки").ШиринаКолонки +
                                            Макет.Область("СуммаСкидки").ШиринаКолонки;
    КонецЕсли;

    ОбластьНомера = Макет.ПолучитьОбласть("Строка|НомерСтроки");
    ОбластьКодов  = Макет.ПолучитьОбласть("Строка|КолонкаКодов");
    ОбластьДанных = Макет.ПолучитьОбласть("Строка|Данные");
    ОбластьСуммы  = Макет.ПолучитьОбласть("Строка|Сумма");

    Сумма    = 0;
    СуммаНДС = 0;
    ВсегоСкидок    = 0;
    ВсегоБезСкидок = 0;

    Для каждого ВыборкаСтрокТовары из ЗапросТовары Цикл

        ОбластьНомера.Параметры.НомерСтроки = ЗапросТовары.Индекс(ВыборкаСтрокТовары) + 1;
        ТабДокумент.Вывести(ОбластьНомера);
        
        Если ВыводитьКоды Тогда
            Если Колонка = "Артикул" Тогда
                ОбластьКодов.Параметры.Артикул = ВыборкаСтрокТовары.Артикул;
            Иначе
                ОбластьКодов.Параметры.Артикул = ВыборкаСтрокТовары.Код;
            КонецЕсли;
            ТабДокумент.Присоединить(ОбластьКодов);
        КонецЕсли;

        ОбластьДанных.Параметры.Заполнить(ВыборкаСтрокТовары);
        ОбластьДанных.Параметры.Товар = СокрЛП(ВыборкаСтрокТовары.Товар);
        ТабДокумент.Присоединить(ОбластьДанных);

        Скидка = 0;
        
        ОбластьСуммы.Параметры.Заполнить(ВыборкаСтрокТовары);
        ТабДокумент.Присоединить(ОбластьСуммы);
        Сумма          = Сумма       + ВыборкаСтрокТовары.Сумма;
        СуммаНДС       = СуммаНДС    + ВыборкаСтрокТовары.СуммаНДС;
        ВсегоСкидок    = ВсегоСкидок + Скидка;
        ВсегоБезСкидок = Сумма       + ВсегоСкидок;

    КонецЦикла;

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

    ТабДокумент.Вывести(ОбластьНомера);
    Если ВыводитьКоды Тогда
        ТабДокумент.Присоединить(ОбластьКодов);
    КонецЕсли;
    ТабДокумент.Присоединить(ОбластьДанных);
    ОбластьСуммы.Параметры.Всего = ОбщегоНазначения.ФорматСумм(Сумма);
    ТабДокумент.Присоединить(ОбластьСуммы);

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

        ТабДокумент.Вывести(ОбластьНомера);
        Если ВыводитьКоды Тогда
            ТабДокумент.Присоединить(ОбластьКодов);
        КонецЕсли;
        
        Если ЗапросТовары.Итог("СуммаНДС") <> 0 Тогда
            ОбластьСуммы.Параметры.ВсегоНДС = ОбщегоНазначения.ФорматСумм(ЗапросТовары.Итог("СуммаНДС"));
            ОбластьДанных.Параметры.НДС      = ?(Шапка.СуммаВключаетНДС, "В том числе НДС", " Сумма НДС");
        Иначе
            ОбластьСуммы.Параметры.ВсегоНДС = "-";
            ОбластьДанных.Параметры.НДС      = "Без налога (НДС)";
        КонецЕсли;
        
        ТабДокумент.Присоединить(ОбластьДанных);
        ТабДокумент.Присоединить(ОбластьСуммы);
    КонецЕсли;

    // Вывести Сумму прописью
    ОбластьМакета = Макет.ПолучитьОбласть("СуммаПрописью");
    СуммаКПрописи = Сумма + ?(Шапка.СуммаВключаетНДС, 0, СуммаНДС);
    ОбластьМакета.Параметры.ИтоговаяСтрока ="Всего наименований " + ЗапросТовары.Количество()
    + ", на сумму " + ОбщегоНазначения.ФорматСумм(СуммаКПрописи, Шапка.ВалютаДокумента);
    ОбластьМакета.Параметры.СуммаПрописью = ОбщегоНазначения.СформироватьСуммуПрописью(СуммаКПрописи, Шапка.ВалютаДокумента);
    ТабДокумент.Вывести(ОбластьМакета);

    // Вывести подписи
    ОбластьМакета = Макет.ПолучитьОбласть("Подписи");
    ОбластьМакета.Параметры.Заполнить(Шапка);
    
    Если ЗначениеЗаполнено(ОтпускПроизвел) Тогда
        ДанныеПодотчетногоЛица = ОбщегоНазначения.ДанныеФизЛица(Организация, ОтпускПроизвел, Дата);
        ФИОКладовщика = ОбщегоНазначения.ФамилияИнициалыФизЛица(ОтпускПроизвел);
        ОбластьМакета.Параметры.ОтветственныйПредставление = ФИОКладовщика;
    КонецЕсли;

    ТабДокумент.Вывести(ОбластьМакета);

    Возврат ТабДокумент;

КонецФункции // ПечатьДокумента()
46 НаборДанных
 
26.11.13
14:48
Это лишнее, секунду подождите.
47 НаборДанных
 
26.11.13
14:59
Вроде ни где не наипался, http://rghost.ru/50458104 держите, добавить во внешние печатные формы, которые в сервисе.
48 fokys
 
26.11.13
15:01
не в конфигурации???
49 НаборДанных
 
26.11.13
15:02
нет, в режиме предприятия.
50 fokys
 
26.11.13
15:03
добавила. а что дальше?
51 fokys
 
26.11.13
15:05
ничего не произошло (
52 НаборДанных
 
26.11.13
15:06
=)
http://rghost.ru/50458258
Скачайте еще раз.
53 НаборДанных
 
26.11.13
15:08
http://screencast.com/t/umpaa2qW5p7O
Просмотреть.
54 fokys
 
26.11.13
15:11
ОГО!!!! Классно! Получилось!!! Спасибо!!!
55 fokys
 
26.11.13
15:11
А можно еще вопросик?
56 НаборДанных
 
26.11.13
15:12
Ну хоть плюс в карму сегодня заработал, а не геморой как обычно))
57 НаборДанных
 
26.11.13
15:12
Давайте.
58 fokys
 
26.11.13
15:13
Ну мне бы хотелось еще обработку сделать, чтобы выставлять счета на оплату (авансом)
59 fokys
 
26.11.13
15:13
т.е. у нас много клиентов, документы выставляем последним числом месяца. а иногда нужно выставить только счета на оплату
60 НаборДанных
 
26.11.13
15:15
+)
61 fokys
 
26.11.13
15:16
а как это сделать? )
62 НаборДанных
 
26.11.13
15:17
Подробнее и с документами, ничего не понял, вы меня просите предугадать кому вы счет выставить хотите?
63 fokys
 
26.11.13
15:21
У меня есть обработка, сервисы-дополнительные внешние обработки. Она мне автоматом формирует список клиентов, кол-во обслуживаемых машин, стоимость. Я нажимаю кнопку выписать, она выписывает реализацию. Нажимаю напечатать - печатает: счет, акт, счет-фактуру. Мне надо тоже самое, только с возможностью выставить только счет (типа авансовый на будущий месяц) а потом, на основании этого счета выписать закрывающие документы. О!
64 НаборДанных
 
26.11.13
15:27
На rghost.ru
65 fokys
 
26.11.13
15:28
а что туда скинуть?
66 fokys
 
26.11.13
15:28
мне эту обработку вместе с конфигурацией сделали
67 НаборДанных
 
26.11.13
15:29
Там нажмите изменить на обработке и "провалившись" в нее))) увидите кнопку "дискета", кароче сохраните ее сначала, потом на rghost.ru закиньте, ссылку сюда, позже сделаю.
68 НаборДанных
 
26.11.13
15:31
69 fokys
 
26.11.13
15:32
70 НаборДанных
 
26.11.13
15:36
Крутой код))) http://rghost.ru/50458786 Пробуйте
71 НаборДанных
 
26.11.13
15:37
Можете ее просто файл-открыть сделать и проверить.
72 НаборДанных
 
26.11.13
15:37
Потом заменить в доп.вн. обработках
73 fokys
 
26.11.13
15:43
не получилось. поставила галочку только счета и выписать... тишина
74 НаборДанных
 
26.11.13
16:07
Забыл закоммитить транзакцию, http://rghost.ru/50459390
75 НаборДанных
 
26.11.13
16:11
Ой, стойте, не там вкорячил код
76 НаборДанных
 
26.11.13
16:12
Точнее не довкорячил на печать еще
77 НаборДанных
 
26.11.13
16:12
Забирайте http://rghost.ru/50459503
78 fokys
 
26.11.13
18:07
Круто! Спасибо! Вы просто гений!!!
Счета выписались, только я теперь не пойму как на основании них сделать в конце месяца реализацию и можно ли их скопом напечатать?
79 НаборДанных
 
26.11.13
21:24
(78)Пользуйтесь, http://rghost.ru/50467316
80 fokys
 
26.11.13
22:32
И эта не делает. Появляется 2 страничка и ничего не выставляется. Может я че не так делаю?
81 НаборДанных
 
26.11.13
23:31
(80) Там галку видите "По счетам"? ее нажать, заполнить, выставить, напечатать.
82 НаборДанных
 
27.11.13
05:47
+Если что-то еще не понятно пишите hlinesupport1c
83 НаборДанных
 
27.11.13
05:47
(82)Это скайп)
84 Homer
 
27.11.13
06:14
(82) Пряма мушкетер))
85 zakidonoff
 
27.11.13
06:24
(84) Не перевелись ещё бессеребренники, добрые люди на Руси xD
86 anaed
 
27.11.13
06:29
(85) Предлагаю жаловаться в ВТО - демпинг правилами это организации запрещен. Помог девушке без денег и даже без фотки, сжечь его !!!! :)
87 zakidonoff
 
27.11.13
06:42
(86) Сжечь - это, конечно, хорошо... Но в ентих отсталых европах уже лет как 300 сожжение не практикуют -(
88 fokys
 
27.11.13
12:29
Вот единственный мужчина! Суперский и добрый! А вы вредничаете. И у самих фоток нет.