Раздел 1 (столбец1) при печати НН вывдит в каждой строке "i"
10.01.12, 10:12
Общительный
Группа: Пользователи
Сообщений: 45
Из: Украина
Спасибо сказали: 0 раз
Рейтинг: 0
Налоговая накладная, 1С предприятие 7.7 версия 7.70.027, Конфигурация "торговля и склад 7.70.007".
Раздел 1 (столбец1) при печати выводит в каждой строке "I". Как в модуле прописать, чтоб выводило один раз?
Сейчас прописано так:
ПерваяСтрока = 1; ТрансСуммаБезНДС = 0; ТрансСуммаСНДС = 0; ТрансНДС = 0; ИтСуммаБезСкидки = 0; ВыбратьСтроки(); Пока ПолучитьСтроку() > 0 Цикл Если Товар.Транспорт = 0 Тогда Если ПерваяСтрока = 1 Тогда НомерРаздела = "I"; ПерваяСтрока = 0; Иначе НомерРаздела = ""; КонецЕсли;
В тавблице прописано " ?(ПерваяСтрока=1,"I","") "
Подскажите в чем может быть причина.
Причина редактирования: Правила, п 11! Вофка.
10.01.12, 10:15
У нас здесь своя атмосфера...
Группа: Основатель
Сообщений: 13955
Из: Киев
Спасибо сказали: 4520 раз
Рейтинг: 3642.8
ПерваяСтрока = 1; ТрансСуммаБезНДС = 0; ТрансСуммаСНДС = 0; ТрансНДС = 0; ИтСуммаБезСкидки = 0; ВыбратьСтроки(); Пока ПолучитьСтроку() > 0 Цикл Если Товар.Транспорт = 0 Тогда Если ПерваяСтрока = 1 Тогда НомерРаздела = "I"; ПерваяСтрока = 0; Иначе НомерРаздела = ""; КонецЕсли; ПерваяСтрока = ПерваяСтрока + 1;
10.01.12, 11:09
Ветеран
Группа: Местный
Сообщений: 975
Из: Киев
Спасибо сказали: 168 раз
Рейтинг: 0
Цитата(Vofka @ 10.01.12, 7:04)
Я ж написал, так не работает?
в этом контексте, который видно, нет, не заработает. ПерваяСтрока обнуляется, становится не первой, вы снова плюсуете 1. Становится опять первой.
10.01.12, 11:23
Общительный
Группа: Пользователи
Сообщений: 45
Из: Украина
Спасибо сказали: 0 раз
Рейтинг: 0
Процедура Печать Процедура Печать(БыстраяПечать=0) Перем ПечЦенаБезНДС, ПечСуммаБезСкидки, ПечСуммаБезТранс, ПечСуммаТранс, ПечВозвТара, ПечСуммаНадбавки, ПечСуммаСкидки, ПечИтогСуммаБезНДС, ПечИтогНДС, ПечИтогСуммаСНДС, ПечВсего, НФ; Фирма.ИспользоватьДату(ДатаДок); //ФирмаНалогНомер = Фирма.ИНН; //ФирмаНомСвид = Фирма.НомерСвидетельства; ФирмаНалогНомер = Прав(" " + СокрЛП(Фирма.ИНН),12); ФирмаНомСвид = Прав(" " + СокрЛП(Фирма.НомерСвидетельства),10); Если Найти(Фирма.Телефоны,",") <> 0 Тогда ФирмаТел = Лев(Фирма.Телефоны,Найти(Фирма.Телефоны,",")-1); ИначеЕсли Найти(Фирма.Телефоны,";") <> 0 Тогда ФирмаТел = Лев(Фирма.Телефоны,Найти(Фирма.Телефоны,";")-1); Иначе ФирмаТел = Фирма.Телефоны; КонецЕсли; ФирмаТел = СтрЗаменить(ФирмаТел,"-",""); ФирмаТел = СтрЗаменить(ФирмаТел," ",""); ФирмаТел = СтрЗаменить(ФирмаТел,")",""); ФирмаТел = СтрЗаменить(ФирмаТел,"(",""); ФирмаТелефоны = Прав(" " + СокрЛП(ФирмаТел),10); Если Найти(Контрагент.Телефоны,",") <> 0 Тогда КонтрТел = Лев(Контрагент.Телефоны,Найти(Контрагент.Телефоны,",")-1); ИначеЕсли Найти(Контрагент.Телефоны,";") <> 0 Тогда КонтрТел = Лев(Контрагент.Телефоны,Найти(Контрагент.Телефоны,";")-1); Иначе КонтрТел = Контрагент.Телефоны; КонецЕсли; КонтрТел = СтрЗаменить(КонтрТел,"-",""); КонтрТел = СтрЗаменить(КонтрТел," ",""); КонтрТел = СтрЗаменить(КонтрТел,")",""); КонтрТел = СтрЗаменить(КонтрТел,"(",""); КонтрагентТелефоны = Прав(" " + СокрЛП(КонтрТел),10); Если ДатаДок < Дата ("10.01.2011") Тогда КонтрагентНалогНомер = ?(ПустоеЗначение(Контрагент.ИНН)=1," 0", Прав(" " + СокрЛП(Контрагент.ИНН),12)); КонтрагентНомСвид = ?(ПустоеЗначение(Контрагент.НомерСвидетельства)=1, " 0", Прав(" " + СокрЛП(Контрагент.НомерСвидетельства),10)); Иначе КонтрагентНалогНомер = ?(ПустоеЗначение(Контрагент.ИНН)=1," 0", Прав(" " + СокрЛП(Контрагент.ИНН),12)); КонтрагентНомСвид = ?(ПустоеЗначение(Контрагент.НомерСвидетельства)=1, " 0", Прав(" " + СокрЛП(Контрагент.НомерСвидетельства),10)); КонецЕсли; Приложение1 = ""; ПечНомерДок = глНомерБезПрефикса(Контекст); ПечНомерДок = Прав(" "+Число(ПечНомерДок),7); ЧМГ=Формат(ДатаДок,"ДГГГГММДД"); Дог = Контрагент.ОсновнойДоговорТорг; ДатаДоговора=Формат(Дог.ДатаДок,"ДГГГГММДД"); НомерДоговора=Дог.НомерДок; Таб = СоздатьОбъект( "Таблица" ); Если (Валюта <> Гривня) И (Контрагент.ВидКонтрагента = Перечисление.ВидыКонтрагентов.Нерезидент) Тогда // Экспорт Таб.ИсходнаяТаблица("НДСЭкспорт"); Иначе Если СтавкаНДС = Перечисление.ЗначенияНДС.БезНДС Тогда Таб.ИсходнаяТаблица("БезНДС"); ИначеЕсли СтавкаНДС = Перечисление.ЗначенияНДС.ЛьготнаяСтавкаНДС Тогда Таб.ИсходнаяТаблица("НДС0"); Иначе Если ДатаДок < Дата ("10.01.2011") Тогда Таб.ИсходнаяТаблица("НДС20"); Иначе Таб.ИсходнаяТаблица("НДС20_2011"); КонецЕсли; КонецЕсли; КонецЕсли; // ОбщСуммаНадбавки = 0; // ОбщСуммаСкидки = 0; Для Страница = 1 По 2 Цикл ОбщСуммаНадбавки = 0; ОбщСуммаСкидки = 0; Таб.ВывестиСекцию( "Пробел" ); Если Страница = 1 Тогда Таб.ВывестиСекцию( "Оригинал" ); ИначеЕсли Страница = 2 Тогда Таб.ВывестиСекцию( "ПерваяКопия" ); Иначе Таб.ВывестиСекцию( "ВтораяКопия" ); КонецЕсли; Таб.ВывестиСекцию( "Шапка" ); //Таб.ВывестиСекцию( "РазделI1" ); ПерваяСтрока = 1; ТрансСуммаБезНДС = 0; ТрансСуммаСНДС = 0; ТрансНДС = 0; ИтСуммаБезСкидки = 0; ВыбратьСтроки(); Пока ПолучитьСтроку() > 0 Цикл Если Товар.Транспорт = 0 Тогда Если ПерваяСтрока = 1 Тогда НомерРаздела = "I"; ПерваяСтрока = 0; Иначе НомерРаздела = ""; КонецЕсли; ПерваяСтрока = ПерваяСтрока + 1; ЕдИзм = Единица; СуммаБезСкидкиГрн = глПересчет(СуммаБезСкидки,Валюта,Курс,Гривня,Дата_курса); ПечСуммаБезСкидки = глФРМ3(СуммаБезСкидкиГрн,Гривня,0); ПечЦенаБезНДС = ФРМСумма(глПересчет(ЦенаБезНДС,Валюта,Курс,Гривня,Дата_курса)); ИтСуммаБезСкидки = ИтСуммаБезСкидки + СуммаБезСкидкиГрн; Таб.ВывестиСекцию("РазделI2"); Иначе ТрансСуммаБезНДС = ТрансСуммаБезНДС + СуммаБезНДС; КонецЕсли; Если СуммаСкидки < 0 Тогда ОбщСуммаНадбавки = ОбщСуммаНадбавки - СуммаСкидки; Иначе ОбщСуммаСкидки = ОбщСуммаСкидки + СуммаСкидки; КонецЕсли; КонецЦикла; ПечСуммаБезТранс = ФРМСумма(ИтСуммаБезСкидки); ПечСуммаТранс = ФРМСумма(глПересчет(ТрансСуммаБезНДС,Валюта,Курс,Гривня,Дата_курса)); ПечВозвТара = ФРМСумма(глПересчет(СуммаВозвратнойТары,Валюта,Курс,Гривня,Дата_курса)); ПечСуммаНадбавки = ФРМСумма(глПересчет(ОбщСуммаНадбавки,Валюта,Курс,Гривня,Дата_курса)); ПечСуммаСкидки = ФРМСумма(глПересчет(ОбщСуммаСкидки,Валюта,Курс,Гривня,Дата_курса)); ПечИтогСуммаБезНДС = ФРМСумма(глПересчет(Итог("СуммаБезНДС"),Валюта,Курс,Гривня,Дата_курса)); ПечИтогНДС = ФРМСумма(глПересчет(Итог("СуммаСНДС")-Итог("СуммаБезНДС"),Валюта,Курс,Гривня,Дата_курса)); ПечИтогСуммаСНДС = ФРМСумма(глПересчет(Итог("СуммаСНДС"),Валюта,Курс,Гривня,Дата_курса)); ПечВсего = ФРМСумма(глПересчет(Итог("СуммаСНДС")+СуммаВозвратнойТары,Валюта,Курс,Гривня,Дата_курса)); Таб.ВывестиСекцию( "РазделIВсего" ); // Таб.ВывестиСекцию( "ТовТранс" ); Таб.ВывестиСекцию( "ВозврТара" ); // Таб.ВывестиСекцию( "Надбавка" ); // Таб.ВывестиСекцию( "ВсегоПоI_II_IV" ); Таб.ВывестиСекцию( "НДС" ); Таб.ВывестиСекцию( "ОбщаяСумма" ); Таб.ВывестиСекцию( "Подвал" ); Если Страница <> 2 Тогда Таб.НоваяСтраница(); КонецЕсли; КонецЦикла; Таб.Опции(0, 0, 0, 0); Таб.ПараметрыСтраницы(1,,,,,,,,); Если БыстраяПечать=1 Тогда Таб.ПараметрыСтраницы(,,,,,,,,,1,,); Таб.КоличествоЭкземпляров(Константа.ПечКолЭкзННПриБыстройПродаже); Таб.Напечатать(глОтладка); Иначе Таб.Защита(Константа.ФлагЗащитыТаблиц); Таб.ТолькоПросмотр(1); Таб.Показать("Печать налоговой накладной",""); КонецЕсли; КонецПроцедуры
Цитата(Vofka @ 10.01.12, 12:04)
Я ж написал, так не работает?
нет не работает
Не нашли ответа на свой вопрос?
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!