|
v7: Шапка в отчете, помогите | ☑ | ||
---|---|---|---|---|
0
dianna
20.03.13
✎
12:50
|
Всем привет, ребят помогите пожалуйста
есть отчет в который нужно добавить дату в шапку кокда я нажимаю сформировать от отчет открывает как надо с датой и с контрагентом но когда я нажимаю Плановый то там в отчет такого нет. подскажите как его добавить, пожалуйста http://s017.radikal.ru/i442/1303/74/23bfb74706ed.png http://s43.radikal.ru/i100/1303/7d/bec90337fd6c.png http://www.fayloobmennik.net/2712804 //******************************************* Процедура Сформировать() лтб=СоздатьОбъект("ТаблицаЗначений"); лтб.НоваяКолонка("Док"); лтб.НоваяКолонка("Контр"); лтб.НоваяКолонка("ТМЦ"); лтб.НоваяКолонка("тмцГрп"); лтб.НоваяКолонка("кво","число"); лтб.НоваяКолонка("Вес","число"); лтб.НоваяКолонка("ЦенаБ","число"); лтб.НоваяКолонка("ЦенаС","число"); лтб.НоваяКолонка("СуммаБ","число"); лтб.НоваяКолонка("СуммаС","число"); нтб=СоздатьОбъект("ТаблицаЗначений"); лтб.Выгрузить(нТб); РасчитатьТБ(лтб); таб=СоздатьОбъект("Таблица"); таб.ИсходнаяТаблица("Таблица"); таб.ВывестиСекцию("Шапка"); лФлт=""; если фТмц.Выбран()=1 тогда Если фТмц.ЭтоГруппа()=1 тогда лФлт=лФлт+" группе ТМЦ - """+СокрЛп(ФтМЦ.Наименование)+""""; иначе лФлт=лФлт+" тмц - """+СокрЛп(ФтМЦ.Наименование)+""""; Конецесли; конецесли; если фвИДтМЦ.Выбран()=1 тогда Если пУСТАЯСТРОКА(ЛфЛТ)=0 тогда лФлт=лфлт+";"; Конецесли; лФлт=лФлт+"виду продукции - """+фВидТмц.Наименование+""""; конецесли; если фКонтр.Выбран()=1 тогда Если пУСТАЯСТРОКА(ЛфЛТ)=0 тогда лФлт=лфлт+";"; Конецесли; Если ФКонтр.ЭтоГруппа()=1 тогда лФлт=лФлт+" группе Контрагентов - """+СокрЛп(ФКонтр.Наименование)+""""; иначе лФлт=лФлт+" контрагенту - """+СокрЛп(фКонтр.Наименование)+""""; Если фтт.Выбран()=1 тогда лФлт=лФлт+" по торговой точке - """+СокрЛп(фТТ.Наименование)+""""; Конецесли; Конецесли; конецесли; Если ПустаяСтрока(лфлт)=0 тогда лФлт="с ограничениями по " +лФлт; Конецесли; Если пУСТАЯСТРОКА(ЛфЛТ)=0 тогда лФлт=лфлт+";"; Конецесли; Если фГрпКонтр=1 тогда лФлт=лфлт+" с группировкой по контрагентам"; иначе лФлт=лфлт+" без группировки по контрагентам"; Конецесли; Если фВидОтчета=1 тогда лфлт="полный отчет "+ лфлт; иначеЕсли фВидОтчета=2 тогда лфлт="верхняя часть "+ лфлт; иначеЕсли фВидОтчета=3 тогда лфлт="нижняя часть "+ лфлт; Конецесли; Если фАкция=1 тогда лФлт=лФлт+", только акционная продукция"; Конецесли; Если фНетто=1 тогда лФлт=лфлт+", количество в кг."; Конецесли; лфлт=лфлт+"."; таб.ВывестиСекцию("фильтр"); Если фБШ=0 тогда таб.ПовторятьПриПечатиСтроки(1,таб.ВысотаТаблицы()); Конецесли; таб.Опции(0,0,0,0); лтб.сортировать("Контр,док"); контрТб=СоздатьОбъект("ТаблицаЗначений"); лтб.Выгрузить(контрТб); контрТб.Свернуть("Контр","кво"); для н=1 по контрТБ.количествоСтрок() цикл пКонтр=контрТб.ПолучитьЗначение(н,1); нтб.УдалитьСтроки(); лтб.выбратьСтроки(); Пока лтб.ПолучитьСтроку()=1 цикл Если лтб.контр<>ПКонтр тогда продолжить; Конецесли; нтб.НоваяСтрока(); нтб.док=лтб.док; нтб.Тмц=лтб.тмц; нтб.ТмцГрп=лтб.тмцГрп; нтб.кво=лтб.кво; нтб.Ценаб=лтб.ЦенаБ; нтб.Ценас=лтб.ценаС; нтб.СуммаС=лтб.СуммаС; нтб.СуммаБ=лтб.суммаБ; КонецЦикла; Если ПКонтр="" тогда пКонтр="По всем отобранным" Конецесли; Если (н>1)и(фРазбивка=1) тогда Таб.НоваяСтраница(); Конецесли; таб.ВывестиСекцию("ПКонтр"); Если фВидОтчета<3 тогда ВывестиНакладные(таб, нтб); Конецесли; Если фВидОтчета <> 2 тогда ВывестиТмц(таб, нтб); Конецесли; конецЦикла; таб.ПараметрыСтраницы(1,100,0,0.5,0.5,0.5,0.5,,,1,1); таб.Показать("Реестр отгруженной продукции",,1); Если фПСтр=1 тогда Если фГрпКонтр=1 тогда Если фРазбивка=0 тогда высотаСтраницы=1080; тт=СоздатьОбъект("ТаблицаЗначений"); тт.НоваяКолонка("Высота","Число"); тт.НоваяКолонка("Начало","Число"); тт.НоваяКолонка("Конец","Число"); квоСтр=Таб.ВысотаТаблицы(); н=1; тт.НоваяСтрока(); тт.Начало=н; лВыс=0; итв=0; для н=1 по квоСтр цикл обл=таб.Область(н,1,н,1); Если обл.Расшифровка()="1" тогда тт.Высота=лВыс; лВыс=0; тт.Конец=н-1; тт.НоваяСтрока(); тт.Начало=н; Конецесли; лВыс=лвыс+обл.ВысотаСтроки(); //итв=итв+обл.ВысотаСтроки(); //обл.текст=итв; конеццикла; тт.Конец=квоСтр; тт.Высота=лВыс; Если фБШ=1 тогда снос=0; иначе снос=тт.ПолучитьЗначение(1,1); Конецесли; рТаб=0; тт.ВыбратьСтроки(); кон=0; Пока тт.ПолучитьСтроку()=1 цикл Если (рТаб+тт.Высота)>ВысотаСтраницы тогда таб.НоваяСтраница(кон); рТаб=0; Если фБШ=0 тогда рТаб=снос; конецесли; Если тт.Высота>ВысотаСтраницы тогда таб.НоваяСтраница(Тт.Конец); кон=тт.конец; продолжить; Конецесли; Конецесли; РТаб=рТаб+тт.Высота; кон=тт.конец; КонецЦикла; Конецесли; Конецесли; Конецесли; таб.ТолькоПросмотр(1); КонецПроцедуры //======================================== Процедура кнПлан() фНетто=1; лтб=СоздатьОбъект("ТаблицаЗначений"); лтб.НоваяКолонка("Док"); лтб.НоваяКолонка("Контр"); лтб.НоваяКолонка("ТМЦ"); лтб.НоваяКолонка("тмцГрп"); лтб.НоваяКолонка("кво","число"); лтб.НоваяКолонка("Вес","число"); лтб.НоваяКолонка("ЦенаБ","число"); лтб.НоваяКолонка("ЦенаС","число"); лтб.НоваяКолонка("СуммаБ","число"); лтб.НоваяКолонка("СуммаС","число"); нтб=СоздатьОбъект("ТаблицаЗначений"); лтб.Выгрузить(нТб); РасчитатьТБ(лтб); таб=СоздатьОбъект("Таблица"); таб.ИсходнаяТаблица("Плановый"); таб.ВывестиСекцию("Шапка1"); лФлт=""; лтб.Свернуть("тмцГрп,тмц","кво,вес,СуммаС,СуммаБ"); лтб.НоваяКолонка("ЦенаС","число"); лтб.НоваяКолонка("ЦенаБ","число"); лтб.Сортировать("тмцГрп,тмц"); если фТмц.Выбран()=1 тогда Если фТмц.ЭтоГруппа()=1 тогда лФлт=лФлт+" группе ТМЦ - """+СокрЛп(ФтМЦ.Наименование)+""""; иначе лФлт=лФлт+" тмц - """+СокрЛп(ФтМЦ.Наименование)+""""; Конецесли; конецесли; если фвИДтМЦ.Выбран()=1 тогда Если пУСТАЯСТРОКА(ЛфЛТ)=0 тогда лФлт=лфлт+";"; Конецесли; лФлт=лФлт+"виду продукции - """+фВидТмц.Наименование+""""; конецесли; Если ПустаяСтрока(лфлт)=0 тогда лФлт="с ограничениями по " +лФлт; Конецесли; Если пУСТАЯСТРОКА(ЛфЛТ)=0 тогда лФлт=лфлт+";"; Конецесли; Если фАкция=1 тогда лФлт=лФлт+", только акционная продукция"; Конецесли; лфлт=лфлт+"."; таб.ВывестиСекцию("шапка"); Если фБШ=0 тогда таб.ПовторятьПриПечатиСтроки(4,4); Конецесли; лтб.выбратьСтроки(); нпп=1; грпВес=0; грпСуммаМ=0; грпСуммаП=0; иВес=0; иСуммаМ=0; иСуммаП=0; лгрп=""; Пока лтб.ПолучитьСтроку()=1 цикл Если лтб.кво<>0 тогда лтб.ЦенаС=окр(лтб.СуммаС/лтб.кво,2); лтб.Ценаб=окр(лтб.Суммаб/лтб.кво,2); лтб.СуммаС=окр(лтб.СуммаС,2); Конецесли; Если лГрп<>лтб.ТмцГрп тогда Если ПустоеЗначение(лГрп)=0 тогда таб.ВывестиСекцию("иГрп"); иВес=иВес+грпВес; иСуммаМ=иСуммаМ+грпСуммаМ; иСуммаП=иСуммаП+грпСуммаП; грпВес=0; грпСуммаМ=0; грпСуммаП=0; Конецесли; таб.ВывестиСекцию("Грп"); лГрп=лтб.ТмцГрп; Конецесли; таб.ВывестиСекцию("стр"); грпВес=грпВес+лтб.вес; грпСуммаМ=грпСуммаМ+лтб.СуммаБ; грпСуммаП=грпСуммаП+лтб.СуммаС; нпп=нпп+1; КонецЦикла; таб.ВывестиСекцию("иГрп"); иВес=иВес+грпВес; иСуммаМ=иСуммаМ+грпСуммаМ; иСуммаП=иСуммаП+грпСуммаП; таб.ВывестиСекцию("итог"); таб.ТолькоПросмотр(1); таб.ПараметрыСтраницы(1,100,0,0,0,0,0,0,0,1); таб.Показать("Реестр",,1); КонецПроцедуры |
|||
1
Godofsin
20.03.13
✎
12:53
|
(0) в таблице добавить надо
|
|||
2
Ёпрст
20.03.13
✎
12:54
|
за целые сутки так и не дотумкала ?
|
|||
3
dianna
20.03.13
✎
12:55
|
я дабавляла, но у меня пишет
Реестр реализованной продукции с Дата1 по Дата2 |
|||
4
dianna
20.03.13
✎
12:55
|
(2) это немножко другое, я не правильно тогда поняла, мне нужно было добавить в шапку а не табличную часть)
|
|||
5
mikecool
20.03.13
✎
12:56
|
(3) тип ячейки Параметр
переменную с именем параметра - объявить в коде |
|||
6
mikecool
20.03.13
✎
12:57
|
+5 или посмотреть как сделано в первом отчете
|
|||
7
Godofsin
20.03.13
✎
12:58
|
+ (5) (6) и традиционно выложить фото
|
|||
8
dianna
20.03.13
✎
12:58
|
(6) я смотрела, но я не могу найти там как прописана дата для шапки
|
|||
9
Godofsin
20.03.13
✎
12:58
|
а то работать не будет
|
|||
10
zak555
20.03.13
✎
13:01
|
фотки нет, отчёт работать не хочет
|
|||
11
mikecool
20.03.13
✎
13:02
|
фотка была, вот только не факт - что его/ее
|
|||
12
Конфигуратор1с
20.03.13
✎
13:03
|
Ну так параметры в макете пропишите.
|
|||
13
dianna
20.03.13
✎
13:03
|
вымагатели, загрузила, подскажите плиз как сделать
|
|||
14
dianna
20.03.13
✎
13:04
|
(12) вот я и хочу узнать как его прописать
|
|||
15
zak555
20.03.13
✎
13:06
|
что такое РасчитатьТБ?
|
|||
16
Godofsin
20.03.13
✎
13:07
|
(13)
Процедура кнПлан() фНетто=1; лтб=СоздатьОбъект("ТаблицаЗначений"); лтб.НоваяКолонка("Док"); лтб.НоваяКолонка("Контр"); лтб.НоваяКолонка("ТМЦ"); лтб.НоваяКолонка("тмцГрп"); лтб.НоваяКолонка("кво","число"); лтб.НоваяКолонка("Вес","число"); лтб.НоваяКолонка("ЦенаБ","число"); лтб.НоваяКолонка("ЦенаС","число"); лтб.НоваяКолонка("СуммаБ","число"); лтб.НоваяКолонка("СуммаС","число"); нтб=СоздатьОбъект("ТаблицаЗначений"); лтб.Выгрузить(нТб); РасчитатьТБ(лтб); таб=СоздатьОбъект("Таблица"); таб.ИсходнаяТаблица("Плановый"); Дата1 = ТвоеНачалоПериода; Дата2 = ТвойКонецПериода; таб.ВывестиСекцию("Шапка1"); // не забываем у ячеек поставить тип = параметр |
|||
17
Lionee
20.03.13
✎
13:09
|
(13)красота ,давно бы загрузила
|
|||
18
sapphire
20.03.13
✎
13:15
|
(0) Таки тебе надо что бы в заголовке период показывался, где Реестр реализованной продукции?
В ячейке 2,1 макета "Плановый" Alt-Enter, вместо "Текст" выбрать "Шаблон" и в вставить: Реестр реализованной продукции за [ПериодСтр(дата1,дата2)] |
|||
19
dianna
20.03.13
✎
13:18
|
(18) (16) огоромное спасибо за помощь, все работает
всех цёмки)) |
|||
20
sapphire
20.03.13
✎
13:22
|
(19) А що, в СПб теперь номенклатура на мове?
|
|||
21
zak555
20.03.13
✎
13:23
|
> всех цёмки
это как ? |
|||
22
sapphire
20.03.13
✎
13:27
|
(21) А это так же як и в СПб на Украине :)
|
|||
23
dianna
20.03.13
✎
17:28
|
ребят не подскажите как сделать так что бы у меня в шапке так же показывало и контрагента?
|
|||
24
Толич
20.03.13
✎
17:39
|
Шо Опять?... (Про пса)
Ячейку вместо "шаблон" сделай "выражение" и замени формулу на "Контрагент: "+Контрагент + " ща период: " + ПериодСтр(дата1,дата2) Как то так... |
|||
25
Толич
20.03.13
✎
17:42
|
Только вместо "контрагент" у вас по моему "ПКонтр"
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |