Имя: Пароль:
1C
1С v8
Печать Долг клиента в печатной форме Реализация товаров и услуг
0 seregapplk
 
21.08.21
08:58
Нашел форму печатную, в обработке ПечатьОбщихФорм
документ РеализацияТоваровУселуг
В Печатной форме добавил (В области "покупатель") ячейку с параметром <ДолгПолучателя>
КАК правильно ыставить запрос или не запрос в
Функцию ЗаполнитьТабличныйДокументРасходнаяНакладная
1 seregapplk
 
21.08.21
09:03
УТ11, забыл написать
2 seregapplk
 
21.08.21
09:04
как правильно туда запихнуть долг клиента
3 hhhh
 
21.08.21
09:09
как правильно вставить? И как правильно запихнуть? Ну и вопросы. Вы не Ливингстар случаем?
4 seregapplk
 
21.08.21
09:16
)))
Помогите правильно составить
5 seregapplk
 
21.08.21
09:21
без запроса получиться
к примеру
= РегистрыНакопления.РасчетыСКлиентами.Остатки
6 hhhh
 
21.08.21
09:36
(5) делай отдельную функцию.

долгклиента = ПолучитьДолгКлиента()

чтобы проще было потом обновлять.
7 DrShad
 
21.08.21
09:39
на форме документа у тебя уже есть расчет долга - вот его и смотри
а вообще за такие задачи нужно в колено выстрелить
8 seregapplk
 
21.08.21
09:59
(7) нет на форме долг по накладной, а нужен общий по догогвору
9 seregapplk
 
21.08.21
10:00
ОбластьМакета                                   = Макет.ПолучитьОбласть("Покупатель");
        ПредставлениеПолучателя                         = ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОПокупателе, "ПолноеНаименование",,КодЯзыкаПечать);
        РеквизитыПокупателя                             = ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОПокупателе, "ФактическийАдрес,Телефоны,",,КодЯзыкаПечать);
        ДолгИнфа                                        = ????
  как сюда прикрутить результат запроса

Запрос2 = Новый Запрос(

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

        Если ВыборкаДетальныеЗаписи2.Следующий() Тогда
            КонечныйДолг = ВыборкаДетальныеЗаписи2.СуммаКонечныйОстаток;
            Если КонечныйДолг < 0 Тогда
                ОбластьМакета.Параметры.ДолгИнфа = "Предоплата контрагента с учетом этой накладной составляет  " + (-1)*КонечныйДолг + " руб.";
            Иначе
                ОбластьМакета.Параметры.ДолгИнфа = "Задолженность контрагента с учетом этой накладной составляет  " + КонечныйДолг + " руб.";
            КонецЕсли;    
        Иначе
            ОбластьМакета.Параметры.ДолгИнфа = "";
        КонецЕсли;
10 seregapplk
 
21.08.21
10:23
пусто, я чтото сделал не так
11 seregapplk
 
21.08.21
10:28
пусто, я чтото сделал не так
// Выводим шапку накладной
        ОбластьМакета = Макет.ПолучитьОбласть("Заголовок");
        ШтрихкодированиеПечатныхФорм.ВывестиШтрихкодВТабличныйДокумент(ТабличныйДокумент, Макет, ОбластьМакета, ДанныеПечати.Ссылка);
        
        ТекстЗаголовка = ОбщегоНазначенияУТКлиентСервер.СформироватьЗаголовокДокумента(ДанныеПечати, НСтр("ru='Расходная накладная';uk='Видаткова накладна'",КодЯзыкаПечать), КодЯзыкаПечать);
        
        СтруктураДанныхШапки = Новый Структура;
        СтруктураДанныхШапки.Вставить("ТекстЗаголовка", ТекстЗаголовка);
        ОбластьМакета.Параметры.Заполнить(СтруктураДанныхШапки);
        ТабличныйДокумент.Вывести(ОбластьМакета);
        
        СведенияОПоставщике    = ФормированиеПечатныхФорм.СведенияОЮрФизЛице(ДанныеПечати.Организация, ДанныеПечати.Дата,,ДанныеПечати.БанковскийСчетОрганизации);    
        СведенияОПокупателе = ФормированиеПечатныхФорм.СведенияОЮрФизЛице(ДанныеПечати.Получатель,  ДанныеПечати.Дата,,ДанныеПечати.БанковскийСчетКонтрагента);

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

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

        Если ВыборкаДетальныеЗаписи2.Следующий() Тогда
            КонечныйДолг = ВыборкаДетальныеЗаписи2.СуммаКонечныйОстаток;
            Если КонечныйДолг < 0 Тогда
                ОбластьМакета.Параметры.ДолгИнфа = "Предоплата контрагента с учетом этой накладной составляет  " + (-1)*КонечныйДолг + " руб.";
            Иначе
                ОбластьМакета.Параметры.ДолгИнфа = "Задолженность контрагента с учетом этой накладной составляет  " + КонечныйДолг + " руб.";
            КонецЕсли;    
        Иначе
            ОбластьМакета.Параметры.ДолгИнфа = "";
        КонецЕсли;
        // Выводим дополнительно информацию о договоре и заказе
12 seregapplk
 
21.08.21
10:53
разобрался, спасибо
13 Ненавижу 1С
 
гуру
21.08.21
14:26
а клиент будет рад тому, что его его кладовщик, например, получив накладную на руки, узнает ситуацию с задолженностью?
14 kubik_live
 
21.08.21
15:48
(11)
А это совсем плохо:
Запрос2.УстановитьПараметр("Регистратор", ДанныеПечати.Дата);

Может оказаться что долг на ДанныеПечати.Дата будет рассчитан неверно.

Используй Граница(...)
15 Biker
 
21.08.21
16:04
(14) а остальное хорошо ? вместо впф, шашкой помахал, зато быстро.
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn