|
v7: Выгрузить таблицу значений в таблицу | ☑ | ||
---|---|---|---|---|
0
MixanM
19.01.12
✎
13:37
|
Собственно из названия , все понятно нуэно выгрузить ТЗ в обычную таблицу, сделал так:
Процедура Сформировать() Спр = СоздатьОбъект("Справочник.Номенклатура"); Спр2 = СоздатьОбъект("Справочник.Номенклатура"); ТЗ = СоздатьОбъект("ТаблицаЗначений"); Таб = СоздатьОбъект("Таблица"); Таб.ИсходнаяТаблица("Сформировать"); Спр.ВыбратьЭлементы(); Тз.НоваяКолонка("Код"); ТЗ.НоваяКолонка("Номенклатура"); Таб.ВывестиСекцию("Заголовок"); Счетчик = 0; Пока Спр.ПолучитьЭлемент() = 1 Цикл Счетчик=Счетчик+1; КодСпр = Спр.ТекущийЭлемент().Код; ИмяСпр = Спр.ТекущийЭлемент().Наименование; спр2.ВыбратьЭлементы(); Если Спр2.НайтиПоНаименованию(ИмяСпр) = 1 Тогда КодСпр2 = Спр2.ТекущийЭлемент().Код; Если (КодСпр<>Спр2) Тогда ТЗ.НоваяСтрока(); ТЗ.Код = КодСпр; ТЗ.Номенклатура = ИмяСпр; Состояние("Обработано элементов " +Счетчик ); КонецЕсли; КонецЕсли; КонецЦикла; тз.ВыбратьСтроки(); Пока тз.ПолучитьСТроку() = 1 Цикл Таб.ВывестиСекцию("Код"); КонецЦикла; Таб.Опции(0,0,0,0 ); Таб.ПараметрыСтраницы(1,100,,20,5,5,5,,,1); Таб.ТолькоПросмотр(1); Таб.Показать("Бубли"); Сообщить("Всего бублей : "+Счетчик); КонецПроцедуры Но вывводит пустую таблицу с нужным мне количеством строк т.е. по условию работает норм, 200 строк вываливает, но пустые =( |
|||
1
1Сергей
19.01.12
✎
13:38
|
В макете что?
|
|||
2
Джинн
19.01.12
✎
13:39
|
См. секцию Код макета
|
|||
3
Попытка1С
19.01.12
✎
13:40
|
Нахрена тут вообще ТЗ. Выводи секцию при переборе справочника.
|
|||
4
1Сергей
19.01.12
✎
13:40
|
а вообще весь код в топку. Нафига эти игры с кодами? Задача какая?
|
|||
5
1Сергей
19.01.12
✎
13:41
|
Вот это ваще шедевр:
КодСпр2 = Спр2.ТекущийЭлемент().Код; Если (КодСпр<>Спр2) Тогда |
|||
6
MixanM
19.01.12
✎
13:41
|
найти будли товара с разными кодами
|
|||
7
MixanM
19.01.12
✎
13:42
|
(5) Пацаны - ваще ребята =D
|
|||
8
Mikeware
19.01.12
✎
13:43
|
У автора, похоже, классическая проблема с соотношением радиусов...
|
|||
9
155153144627
19.01.12
✎
13:43
|
:-)
В ячейках секции "код", есть выражения ТЗ.Код и ТЗ.Номенклатура? Пока Спр.ПолучитьЭлемент() = 1 Цикл ТЗ.НоваяСтрока(); ТЗ.Код = Спр.Код; ТЗ.Номенклатура = Спр.Наименование; Счетчик = Счетчик + 1; КонецЦикла; |
|||
10
Mikeware
19.01.12
✎
13:44
|
Процедура глПечатьТЗ(Результат,ВыбЗаголовок="") Экспорт
Если Результат.КоличествоСтрок() = 0 Тогда Возврат; КонецЕсли; ПечВыбЗаголовокДополнительный = ВыбЗаголовок; Таб = СоздатьОбъект("Таблица"); Таб.ИсходнаяТаблица("ПечатьТЗ"); Таб.ВывестиСекцию("Шапка|Номер"); спРазмеры = СоздатьОбъект("СписокЗначений"); Для Индекс1 = 1 По Результат.КоличествоКолонок() Цикл Графа = Результат.ПолучитьПараметрыКолонки(Индекс1); //Графа = "";//глИдентификаторВСтроку(Графа); Таб.ПрисоединитьСекцию("Шапка|Колонка"); ТекРазмер = СтрДлина(Графа); Для Индекс2 = 1 По Результат.КоличествоСтрок() Цикл ТекРазмер = Макс(ТекРазмер, СтрДлина(Результат.ПолучитьЗначение(Индекс2, Индекс1))); КонецЦикла; спРазмеры.ДобавитьЗначение(Мин(80, ТекРазмер + 3)); КонецЦикла; Таб.ПовторятьПриПечатиСтроки(1, Таб.ВысотаТаблицы()); Таб.Опции(0,0,Таб.ВысотаТаблицы(),1); ТекРазмер = 0; вВсегоСтрок = Результат.КоличествоСтрок(); Для Индекс1 = 1 По Результат.КоличествоСтрок() Цикл вПриставка = ?((Индекс1%2)=1,"2",""); Таб.ВывестиСекцию("Строка"+вПриставка+"|Номер"); Для Индекс2 = 1 По Результат.КоличествоКолонок() Цикл Графа = Результат.ПолучитьЗначение(Индекс1, Индекс2); Секция = Таб.ПолучитьСекцию("Строка"+вПриставка+"|Колонка"); Секция.Область().ШиринаСтолбца(спРазмеры.ПолучитьЗначение(Индекс2)); Если ТипЗначения(Графа) >= 10 Тогда Секция.Область().Расшифровка(Графа); КонецЕсли; Если (ТипЗначенияСтр(Графа) = "Число") Или (ТипЗначенияСтр(Графа) = "Дата") Тогда Секция.Область().ГоризонтальноеПоложение(2); Иначе Секция.Область().ГоризонтальноеПоложение(1); КонецЕсли; Таб.ПрисоединитьСекцию(Секция); КонецЦикла; Состояние(глПрогрессор(вВсегоСтрок,Индекс1)); КонецЦикла; Таб.ТолькоПросмотр(1); Таб.Показать(); КонецПроцедуры // глПечатьТЗ |
|||
11
MixanM
19.01.12
✎
13:45
|
(9) Да
|
|||
12
Попытка1С
19.01.12
✎
13:48
|
(10) Ну давай ему еще макет нарисуй тогда уж...
|
|||
13
155153144627
19.01.12
✎
13:49
|
Я так понимаю у тебя в справочнике номенклатуры дубли имеются?
|
|||
14
Mikeware
19.01.12
✎
13:50
|
(12) да куле там рисовать...
|
|||
15
Попытка1С
19.01.12
✎
13:51
|
(13) У него там бубли не видишь...
(14) Сдается мне автора это может ввести в ступор.. |
|||
16
MixanM
19.01.12
✎
13:51
|
(13) да завелись убли оператором, надо найти их, с "помощью " стороней обработки в базе изменилось название у некоторых номенклатур - задублировалось, но код остался прежний, счас выгрузил в таблицу код - наименование дублей и в ручную правим
|
|||
17
155153144627
19.01.12
✎
13:52
|
Если (КодСпр<>Спр2) Тогда - ошибка.
Если (КодСпр<>КодСпр2) Тогда ! |
|||
18
Попытка1С
19.01.12
✎
13:52
|
(0) Автор юзай свернуть не мучайся. А код свой выкини.
|
|||
19
MixanM
19.01.12
✎
13:52
|
(15) та кули, пусть будут бубли, ллишь бы их найти всех
|
|||
20
MixanM
19.01.12
✎
13:53
|
(17) да это я в запарке наваял, сейчас уже все исправил, заработалро вроде
|
|||
21
AlexNecro
19.01.12
✎
13:55
|
||||
22
MixanM
19.01.12
✎
14:03
|
Спасибо, ребята всем, поехало
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |