7.7 Печать наклодной!

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем anton, 23 окт 2009.

  1. TopicStarter Overlay
    anton
    Offline

    anton Опытный в 1С

    Регистрация:
    3 авг 2009
    Сообщения:
    187
    Симпатии:
    0
    Баллы:
    26
    Доброе время суток!!! Может у меня голова уже опухла может я уже чето не догоняю, подскажите пожалуйста: есть наклодная торг12, там же печатается и удостоверение качества и второй экземпляр наклодной но во втором экземпляре ИТОГОвые суммы выходят как Сумма 1ой + 2ой я понимаю что ошибка гдето- то сдесь


    Код:
     //СтавкаНДС = глСтавкаНалога(Контекст, "НДС").Ставка;		
    Кол = ?(Количество = 0, 1, Количество);
    Если Цел(СтавкаНДС) = СтавкаНДС Тогда
    ЦенаНаПечать = (Всего - НП)/Кол;
    СуммаНаПечать = Всего - НП;
    Иначе               
    ЦенаНаПечать =  (Всего  - НДС - НП)/Кол;
    СуммаНаПечать = (Всего  - НДС - НП);
    КонецЕсли;                    
    Если ЦеныВДоговоре = 2 Тогда
    СуммаНаПечать = (СуммаНаПечать*Курс/Кратность);
    ЦенаНаПечать = (ЦенаНаПечать*Курс/Кратность);
    НДСНаПечать = НДС*Курс/Кратность;
    НПНаПечать = НП*Курс/Кратность;
    Иначе
    НДСНаПечать = НДС;
    НПНаПечать = НП;
    КонецЕсли;
    Таб.ВывестиСекцию("Строка|БезНГСМиНП");
    Если ФлагНП = 1 Тогда
    Таб.ПрисоединитьСекцию("Строка|НП");
    КонецЕсли;
    ИтогоКоличествоНаСтранице =  ИтогоКоличествоНаСтранице + Количество;    
    ИтогоСумма = ИтогоСумма + СуммаНаПечать; 
    ИтогоСуммаНаСтранице = ИтогоСуммаНаСтранице + СуммаНаПечать;
    ИтогоНДС = (ИтогоНДС + НДСНаПечать);
    ИтогоНП = ИтогоНП + НПНаПечать;
    ИтогоНДСНаСтранице = ИтогоНДСНаСтранице + НДСНаПечать;
    Если Цел(СтавкаНДС) = СтавкаНДС Тогда
    ИтогоСуммаСНДСНаСтранице = ИтогоСуммаСНДСНаСтранице + СуммаНаПечать;
    ИтогоСуммаСНДС = ИтогоСуммаСНДС + СуммаНаПечать ; 
    Иначе
    
    ИтогоСуммаСНДСНаСтранице = ИтогоСуммаСНДСНаСтранице + СуммаНаПечать + НДСНаПечать;
    ИтогоСуммаСНДС = ИтогоСуммаСНДС + СуммаНаПечать + НДСНаПечать;
    КонецЕсли;
    ИтогоНПНаСтранице = ИтогоНПНаСтранице + НПНаПечать;
    КонецЦикла;
    
    

    но не могу понять как эту формулу сопоставить Подскажите пожалуйста!!!!




    Код:
     Процедура Торг12() 
    
    ВариантОтправки=1;
    АкцизСумма=0;
    Таб = СоздатьОбъект("Таблица");
    ИмяТаблицы = "ТОРГ12";
    ИмяФайлаПечатнойФормы = КаталогИБ() + "ExtTab\ТОРГ-12УдостОКачестве.mxl";
    
    Если ФС.СуществуетФайл(ИмяФайлаПечатнойФормы) = 1 Тогда
    СФ_УдКач=1;
    Таб.ИсходнаяТаблица(ИмяФайлаПечатнойФормы);
    Иначе
    СФ_УдКач=0;
    Таб.ИсходнаяТаблица(ИмяТаблицы);
    КонецЕсли;
    
    НомерДокПечатнойФормы = глПреобразоватьНомерДок(НомерДок, 0, 0);
    
    //	//Для простоты настройки печатной формы примем следующие соглашения:
    //	//	-	высота строк в таблице печатной формы задана жестко,
    //	//		тогда известно, сколько строк помещается на странице;
    СтрокНаСтранице = 44;
    //	//	-	высота шапки и подвала задана жестко и кратна высоте строк таблицы,
    //	//		тогда можно указать, сколько строк занимают шапка и подвал
    //	//		в пересчете на строки таблицы;
    СтрокШапки = 10;
    СтрокПодвала = 8;
    //	//	-	для нормальной работы алгоритма необходимо, чтобы шапка и подвал
    //	//		могли поместиться на одной странице + хотя бы одна строка таблицы:
    //	//		СтрокНаСтранице >= СтрокШапки + СтрокПодвала + 1
    //	//	-	если подвал не помещается на странице, он переносится на другую
    //	//		страницу с последней строкой; исключение составляет случай,
    //	//		когда в таблице всего одна строка.
    Если КоличествоСтрок() <= 4 Тогда
    ПереноситьПоследнююСтроку = 0;
    Иначе
    ЦелыхСтраницСПодвалом = Цел((СтрокШапки+КоличествоСтрок()+СтрокПодвала)/СтрокНаСтранице);
    ЦелыхСтраницБезПодвала = Цел((СтрокШапки+КоличествоСтрок()-1)/СтрокНаСтранице);
    ПереноситьПоследнююСтроку = ЦелыхСтраницСПодвалом - ЦелыхСтраницБезПодвала;
    КонецЕсли;
    //Если ПереноситьПоследнююСтроку = 1 - переносить,
    //если ПереноситьПоследнююСтроку = 0 - не надо переносить.
    
    Если Итог("НП") > 0 Тогда
    ФлагНП = 1;
    Иначе
    ФлагНП = 0;
    КонецЕсли;
    
    Если Договор.ВалютаДоговора.Выбран() = 1 Тогда
    ЦеныВДоговоре = 2;
    Кратность = Договор.ВалютаДоговора.Кратность.Получить(ДатаДок);
    Кратность = ?(Кратность = 0, 1, Кратность);
    Иначе
    ЦеныВДоговоре = 1;
    КонецЕсли;
    //
    //	Таб = СоздатьОбъект("Таблица");
    //	ИмяФайлаПечатнойФормы = КаталогИБ()+"ExtForms\PrnForms\1cbt-12.mxl";
    //	Если ФС.СуществуетФайл(ИмяФайлаПечатнойФормы) = 1 Тогда
    //		Таб.ИсходнаяТаблица(ИмяФайлаПечатнойФормы);
    //	Иначе
    //		Таб.ИсходнаяТаблица("ТОРГ-12");
    //	КонецЕсли;
    //
    ОрганизацияАдрес = СокрЛП(Константа.НазваниеОрганизации);
    глДобавитьРеквизит(ОрганизацияАдрес, ", ", глПредставлениеАдреса(Константа.АдресОрганизации));
    глДобавитьРеквизит(ОрганизацияАдрес, ", тел. : ", Константа.ТелефоныОрганизации);
    глДобавитьРеквизит(ОрганизацияАдрес, ", ИНН/КПП: ", Константа.ИННОрганизации);
    Если РасчетныйСчет.Выбран() = 1 Тогда
    глДобавитьРеквизит(ОрганизацияАдрес, ", р/с ", СокрЛП(РасчетныйСчет.Номер) + " в " + РасчетныйСчет.БанкОрганизации);
    глДобавитьРеквизит(ОрганизацияАдрес, ", БИК ", СокрЛП(РасчетныйСчет.БанкОрганизации.Код));
    глДобавитьРеквизит(ОрганизацияАдрес, ", корр/с ", РасчетныйСчет.БанкОрганизации.КоррСчет);
    КонецЕсли;
    ПредставлениеГода = Лев(ДатаГод(ДатаДок),2);
    Таб.ВывестиСекцию("Шапка|БезНГСМиНП");
    
    НомерСтраницы = 1;
    ИтогоКоличествоНаСтранице = 0;
    ИтогоСуммаНаСтранице = 0;
    ИтогоНДСНаСтранице = 0;
    ИтогоСуммаСНДСНаСтранице = 0;
    ИтогоНПНаСтранице = 0;
    ИтогоСумма = 0;
    ИтогоСуммаСНДС = 0;
    ИтогоНДС = 0;
    ИтогоНП = 0;
    Таб.ВывестиСекцию("ЗаголовокТаблицы|БезНГСМиНП");
    Если ФлагНП = 1 Тогда
    Таб.ПрисоединитьСекцию("ЗаголовокТаблицы|НП");
    КонецЕсли;
    
    Ном = 0;
    ВыбратьСтроки();
    Пока ПолучитьСтроку() = 1 Цикл
    Ном = Ном + 1;
    //Начинаем новую страницу, если предыдущая строка была последней на странице
    //или пора переносить последнюю строку на последнюю страницу с подвалом.
    ЦелаяСтраница = (СтрокШапки+Ном-1)/СтрокНаСтранице;
    Если (ЦелаяСтраница = Цел(ЦелаяСтраница))
    или ((ПереноситьПоследнююСтроку = 1) и (Ном = КоличествоСтрок())) Тогда
    Таб.ВывестиСекцию("ИтогоПоСтранице|БезНГСМиНП");
    Если ФлагНП = 1 Тогда
    Таб.ПрисоединитьСекцию("ИтогоПоСтранице|НП");
    КонецЕсли;
    ИтогоКоличествоНаСтранице = 0;
    ИтогоСуммаНаСтранице = 0;
    ИтогоНДСНаСтранице = 0;
    ИтогоСуммаСНДСНаСтранице = 0;
    ИтогоНПНаСтранице = 0;
    Таб.НоваяСтраница();
    НомерСтраницы = НомерСтраницы + 1;
    Таб.ВывестиСекцию("ЗаголовокТаблицы|БезНГСМиНП");
    Если ФлагНП = 1 Тогда
    Таб.ПрисоединитьСекцию("ЗаголовокТаблицы|НП");
    КонецЕсли;
    КонецЕсли;
    //СтавкаНДС = глСтавкаНалога(Контекст, "НДС").Ставка;		
    Кол = ?(Количество = 0, 1, Количество);
    // по просьбе бух	
    Если Цел(СтавкаНДС) = СтавкаНДС Тогда
    ЦенаНаПечать = (Всего - НП)/Кол;
    СуммаНаПечать = Всего - НП;
    Иначе
    
    ЦенаНаПечать = (Всего - НДС - НП)/Кол;
    СуммаНаПечать = Всего - НДС - НП;
    КонецЕсли;
    Если ЦеныВДоговоре = 2 Тогда
    СуммаНаПечать = СуммаНаПечать*Курс/Кратность;
    ЦенаНаПечать = ЦенаНаПечать*Курс/Кратность;
    НДСНаПечать = НДС*Курс/Кратность;
    НПНаПечать = НП*Курс/Кратность;
    Иначе
    НДСНаПечать = НДС;
    НПНаПечать = НП;
    КонецЕсли;
    Таб.ВывестиСекцию("Строка|БезНГСМиНП");
    Если ФлагНП = 1 Тогда
    Таб.ПрисоединитьСекцию("Строка|НП");
    КонецЕсли;
    ИтогоКоличествоНаСтранице = ИтогоКоличествоНаСтранице + Количество;
    ИтогоСуммаНаСтранице = ИтогоСуммаНаСтранице + СуммаНаПечать;
    ИтогоСумма = ИтогоСумма + СуммаНаПечать;
    ИтогоНДС = ИтогоНДС + НДСНаПечать;
    ИтогоНП = ИтогоНП + НПНаПечать;
    ИтогоНДСНаСтранице = ИтогоНДСНаСтранице + НДСНаПечать;  
    //по просьбе бух
    Если Цел(СтавкаНДС) = СтавкаНДС Тогда
    ИтогоСуммаСНДСНаСтранице = ИтогоСуммаСНДСНаСтранице + СуммаНаПечать;
    ИтогоСуммаСНДС = ИтогоСуммаСНДС + СуммаНаПечать;
    Иначе
    ИтогоСуммаСНДСНаСтранице = ИтогоСуммаСНДСНаСтранице + СуммаНаПечать + НДСНаПечать;
    ИтогоСуммаСНДС = ИтогоСуммаСНДС + СуммаНаПечать + НДСНаПечать;
    КонецЕсли;
    ИтогоНПНаСтранице = ИтогоНПНаСтранице + НПНаПечать;
    КонецЦикла;
    
    Таб.ВывестиСекцию("ИтогоПоСтранице|БезНГСМиНП");
    Если ФлагНП = 1 Тогда
    Таб.ПрисоединитьСекцию("ИтогоПоСтранице|НП");
    КонецЕсли;
    Таб.ВывестиСекцию("Всего|БезНГСМиНП");
    Если ФлагНП = 1 Тогда
    Таб.ПрисоединитьСекцию("Всего|НП");
    КонецЕсли;
    Таб.ВывестиСекцию("Подвал|БезНГСМиНП");
    Таб.Опции(0,0,0,0,"ОпцииПечатиНакладной","ОкноНакладной");
    Таб.ПараметрыСтраницы(1,,,,,0,0,,,1);
    Таб.ТолькоПросмотр(1);
    Таб.Показать("Печать накладной","");
    
    //Удостов о качестве
    Если СФ_УдКач = 1 Тогда
    Таб.ВывестиСекцию("Секция_4");
    ВыбратьСтроки();
    Пока ПолучитьСтроку() = 1 Цикл
    Если Товар.ВидНоменклатуры.Наименование = "Хлеб" Тогда
    ДатаВремяВыпечки = ""+ДатаДок + ", 2:00";
    Иначе
    ДатаВремяВыпечки = ""+ДатаДок + ", 6:00";
    КонецЕсли;
    
    СрокРеализ = Товар.СрокРеализации;
    Влажность = Товар.Влажность;
    Кислотность = Товар.Кислотность;
    Пористость = Товар.Пористость;
    СодержаниеЖира = Товар.СодержаниеЖира;
    СодержаниеСахара = Товар.СодержаниеСахара;
    ГОСТ = Товар.Гост;
    Таб.ВывестиСекцию("Секция_5");
    КонецЦикла;
    Таб.ВывестиСекцию("Секция_6");
    КонецЕсли;
    
    //Наша накладная
    
    Таб.НоваяСтраница();	
    Таб.ВывестиСекцию("Шапка|БезНГСМиНП");
    Таб.ВывестиСекцию("ЗаголовокТаблицы|БезНГСМиНП");  
    
    Если ФлагНП = 1 Тогда
    Таб.ПрисоединитьСекцию("ЗаголовокТаблицы|НП");
    КонецЕсли;
    
    Ном = 0;
    ВыбратьСтроки();
    Пока ПолучитьСтроку() = 1 Цикл
    Ном = Ном + 1;
    //Начинаем новую страницу, если предыдущая строка была последней на странице
    //или пора переносить последнюю строку на последнюю страницу с подвалом.
    ЦелаяСтраница = (СтрокШапки+Ном-1)/СтрокНаСтранице;
    Если (ЦелаяСтраница = Цел(ЦелаяСтраница))
    или ((ПереноситьПоследнююСтроку = 1) и (Ном = КоличествоСтрок())) Тогда
    Таб.ВывестиСекцию("ИтогоПоСтранице|БезНГСМиНП");
    Если ФлагНП = 1 Тогда
    Таб.ПрисоединитьСекцию("ИтогоПоСтранице|НП");
    КонецЕсли;
    ИтогоКоличествоНаСтранице = 0;
    ИтогоСуммаНаСтранице = 0;
    ИтогоНДСНаСтранице = 0;
    ИтогоСуммаСНДСНаСтранице = 0;
    ИтогоНПНаСтранице = 0;
    Таб.НоваяСтраница();
    НомерСтраницы = НомерСтраницы + 1;
    Таб.ВывестиСекцию("ЗаголовокТаблицы|БезНГСМиНП");
    Если ФлагНП = 1 Тогда
    Таб.ПрисоединитьСекцию("ЗаголовокТаблицы|НП");
    КонецЕсли;
    КонецЕсли;
    //СтавкаНДС = глСтавкаНалога(Контекст, "НДС").Ставка;		
    Кол = ?(Количество = 0, 1, Количество);
    Если Цел(СтавкаНДС) = СтавкаНДС Тогда
    ЦенаНаПечать = (Всего - НП)/Кол;
    СуммаНаПечать = Всего - НП;
    Иначе               
    ЦенаНаПечать =  (Всего  - НДС - НП)/Кол;
    СуммаНаПечать = (Всего  - НДС - НП);
    КонецЕсли;                    
    Если ЦеныВДоговоре = 2 Тогда
    СуммаНаПечать = (СуммаНаПечать*Курс/Кратность);
    ЦенаНаПечать = (ЦенаНаПечать*Курс/Кратность);
    НДСНаПечать = НДС*Курс/Кратность;
    НПНаПечать = НП*Курс/Кратность;
    Иначе
    НДСНаПечать = НДС;
    НПНаПечать = НП;
    КонецЕсли;
    Таб.ВывестиСекцию("Строка|БезНГСМиНП");
    Если ФлагНП = 1 Тогда
    Таб.ПрисоединитьСекцию("Строка|НП");
    КонецЕсли;
    ИтогоКоличествоНаСтранице =  ИтогоКоличествоНаСтранице + Количество;    
    ИтогоСумма = ИтогоСумма + СуммаНаПечать; 
    ИтогоСуммаНаСтранице = ИтогоСуммаНаСтранице + СуммаНаПечать;
    ИтогоНДС = (ИтогоНДС + НДСНаПечать);
    ИтогоНП = ИтогоНП + НПНаПечать;
    ИтогоНДСНаСтранице = ИтогоНДСНаСтранице + НДСНаПечать;
    Если Цел(СтавкаНДС) = СтавкаНДС Тогда
    ИтогоСуммаСНДСНаСтранице = ИтогоСуммаСНДСНаСтранице + СуммаНаПечать;
    ИтогоСуммаСНДС = ИтогоСуммаСНДС + СуммаНаПечать ; 
    Иначе
    
    ИтогоСуммаСНДСНаСтранице = ИтогоСуммаСНДСНаСтранице + СуммаНаПечать + НДСНаПечать;
    ИтогоСуммаСНДС = ИтогоСуммаСНДС + СуммаНаПечать + НДСНаПечать;
    КонецЕсли;
    ИтогоНПНаСтранице = ИтогоНПНаСтранице + НПНаПечать;
    КонецЦикла;
    
    Таб.ВывестиСекцию("ИтогоПоСтранице|БезНГСМиНП");
    Если ФлагНП = 1 Тогда
    Таб.ПрисоединитьСекцию("ИтогоПоСтранице|НП");
    КонецЕсли;
    Таб.ВывестиСекцию("Всего|БезНГСМиНП");
    Если ФлагНП = 1 Тогда
    Таб.ПрисоединитьСекцию("Всего|НП");
    КонецЕсли;
    Таб.ВывестиСекцию("Подвал|БезНГСМиНП");
    Таб.Опции(0,0,0,0,"ОпцииПечатиНакладной","ОкноНакладной");
    Таб.ПараметрыСтраницы(1,,,,,0,0,,,1);
    Таб.ТолькоПросмотр(1);
    Таб.Показать("Печать накладной","");
    
    КонецПроцедуры // Торг12()
    
    :unsure: :smile: :aua:
  2. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Код:
    НомерСтраницы = 1;	
    ИтогоКоличествоНаСтранице = 0;	
    ИтогоСуммаНаСтранице = 0;	
    ИтогоНДСНаСтранице = 0;	
    ИтогоСуммаСНДСНаСтранице = 0;	
    ИтогоНПНаСтранице = 0;	
    ИтогоСумма = 0;	
    ИтогоСуммаСНДС = 0;	
    ИтогоНДС = 0;	
    ИтогоНП = 0;
    //Наша накладная	
    Таб.НоваяСтраница();
    
    
  3. TopicStarter Overlay
    anton
    Offline

    anton Опытный в 1С

    Регистрация:
    3 авг 2009
    Сообщения:
    187
    Симпатии:
    0
    Баллы:
    26
    Спасибо ОГРОМНОЕ тема закрыта!!!!
Похожие темы
  1. BigM@zzy
    Ответов:
    0
    Просмотров:
    579
Загрузка...

Поделиться этой страницей