Имя: Пароль:
1C
1C 7.7
v7: Присоединить секцию
,
0 serg-lom89
 
28.08.13
15:32
Подскажите как реализовать для Удостоверений качества

Если Продукция одинаковая но показатели разные,то вывожу одну строку продукции а затем строки с показателями.затем хочу для этой части продукции,с показателями просоединить секцию.
вопрос в след.->как для количества строк определить высоту секции?
возможно ли такое?
1 1Сергей
 
28.08.13
15:35
вынос мозга
2 serg-lom89
 
28.08.13
15:36
(1) )))))))))))))
3 Ёпрст
 
28.08.13
15:38
просто справа дорисуй что надо через область ручонками.
4 1Сергей
 
28.08.13
15:38
(2) для начала напиши что за конфигурация и покажи код где ты выводишь/присоединяешь секции, было бы не плохо показать скриншоты макета и нормально сформулируй сам вопрос
5 serg-lom89
 
28.08.13
15:45
если наша продукция одинаковая,но показатели разные ее.
То тогда в первой строке вывожу я наименование продукции с ее первым показателям на дата1,а затем я вывожу строки с показателями по дате(дата2,дата3 и т.п.).Так во мне затем надо присоеденить секцию с к этой продукции с ее сроком и условием хранения.Так если строк с показателями будет пять,а секция будет с описанием только на строчки 3 по сравнение со строками показателей.
6 lamme
 
28.08.13
15:48
ну можно так сделать
7 aka AMIGO
 
28.08.13
15:49
секция присоединяется справа от выведенной, без вариантов.
"высота секции" тебе ничего не даст
8 lamme
 
28.08.13
15:50
сначала выводишьсекцию типа (
таб.вывестиСекцию("Товар|ТутСекцияГдеИмяТовара")
потом присоединяешь др секции
таб.ПрисоединитьСекцию("Товар|СтрокаСДаннымиПоказателейНаДата2Итд")

а высота секции - сделай авто высоту
9 serg-lom89
 
28.08.13
15:52
получаеться если даже без присоеденея то в первой секции где  первые показатели,там  ячейка продукции с ее сроком и условием хранения,то она обрезается след строкой в которой идут просто показатели по датам
10 lamme
 
28.08.13
15:53
в 1С7 управлять высотой секции - это полный изврат. я даже не знаю такого.

чтобы влез весь текст - в свойствах ячейки выбрать надо - Переносить (не авто, не обрезать .. а именно переносить)
и высоту строки - авто

тогда весь текст ячейки будет влазить с автоматической корректировкой высоты строки
11 lamme
 
28.08.13
15:54
(9)
ты где-то не так делаешь.
если ты сначала выводишь секцию - то обрезаться ничего не будет.

Код показывай
12 aka AMIGO
 
28.08.13
15:54
(9) все вынуждены гадать, что там тебе надо

просили-ж тебя в (4)..
13 serg-lom89
 
28.08.13
15:56
счас первоначльный выложу.где без присоеденения
там просто строками вывожу



    СоздатьТаблицу = 0;
    НашлиДок = 0;
    Продукция = "";
    ВыбратьСтроки();
    Пока ПолучитьСтроку()>0 Цикл
        Если Номенклатура.ТипНоменклатуры<>Перечисление.ТипыНоменклатуры.Продукция Тогда
            Продолжить;    
        КонецЕсли;
        Если СоздатьТаблицу = 0 Тогда
            Таб = СоздатьОбъект("Таблица");
            Таб.ИсходнаяТаблица("Таблица");
            Таб.ВывестиСекцию("Шапка");
            //Таб.ПрисоединитьСекцию("Шапка|Секция_5");
            СоздатьТаблицу = 1;
        КонецЕсли;
        
        ДатаВыработки = ДатаИзгот;
        ДатаИзгот = ДатаИзгот;
        ТНПА = Номенклатура.ТНПА;
        Жир = Жир;
        Влага = Влага;
        Кислотность = Кислотность;
        Температура = Температура;
        КислПлазмы = КислотностьПл;
        Орг = Орг;
        Сорт=Сорт;
        УсловияХранения = Номенклатура.УсловияХранения;
        НомерПартии = НомерПартии;
        Должность1 = Ответственный1.Должность;
        Должность2 = Ответственный2.Должность;
        Должность3 = Ответственный3.Должность;
        Должность4 = Ответственный4.Должность;
        Должность5 = Ответственный5.Должность;
        ФИО1 = ФИО(Ответственный1);
        ФИО2 = ФИО(Ответственный2);
        ФИО3 = ФИО(Ответственный3);
        ФИО4 = ФИО(Ответственный4);
        ФИО5 = ФИО(Ответственный5);
        Если Продукция = Номенклатура Тогда
            Таб.ВывестиСекцию("Строка_2");    
            Продукция = Номенклатура;
            Продолжить;
        КонецЕсли;    
        Продукция = Номенклатура;
        Таб.ВывестиСекцию("Строка");  
        НашлиДок = 1;
    КонецЦикла;
14 Ёпрст
 
28.08.13
16:05
см. (3)
15 FlashC
 
29.08.13
00:06
(0) может поможет) недавно делал:
                    Пока Запрос.Группировка(4) = 1 Цикл
                        тПродукция = Запрос.Продукция;
                        Модель = Лев(тПродукция.Наименование,9);
                        тСерия = Запрос.Серия;
                        тКонтрагент = Запрос.Контрагент;
                        ПредЗаказ = Запрос.ПредЗаказ;
                        тПредЗаказ = ПредЗаказ.НомерДок;
                        
                        Если УчРазмеров = 1 тогда  
                            
                            НачСтрока = ТекСтрока+1;
                            
                            Пока Запрос.Группировка(5) = 1 Цикл
                                
                                ТекСтрока = ТекСтрока+1;    
                                
                                Таб.ВывестиСекцию("Строка|к1");    
                                
                                Размер = Запрос.Размер;
                                тРазмер = ""+Размер.Наименование+"/"+Размер.Размер;
                                
                                Таб.ПрисоединитьСекцию("Строка|к2");
                                
                                но1=0;п1=0;р1=0;ко1=0;
                                но2=0;п2=0;р2=0;ко2=0;
                                
                                Пока Запрос.Группировка(6) = 1 Цикл
                                    
                                    тМестоХранения = Запрос.МестоХранения;
                                    Если сзМ1.НайтиЗначение(тМестоХранения) > 0 Тогда
                                        но1=но1+Запрос.НачКол;
                                        п1=п1+Запрос.ПиходКол;
                                        р1=р1+Запрос.РасходКол;
                                        ко1=ко1+Запрос.КонКол;
                                    КонецЕсли;
                                    Если сзМ2.НайтиЗначение(тМестоХранения) > 0 Тогда
                                        но2=но2+Запрос.НачКол;
                                        п2=п2+Запрос.ПиходКол;
                                        р2=р2+Запрос.РасходКол;
                                        ко2=ко2+Запрос.КонКол;
                                    КонецЕсли;
                                    
                                КонецЦикла;
                                
                                Таб.ПрисоединитьСекцию("Строка|к3");
                                КонСтрока = КонСтрока+1;
                            КонецЦикла;
                            
                            Для кСтр = 1 По 4 Цикл
                                Таб.Область(НачСтрока,кСтр,ТекСтрока,кСтр).Объединить();
                            КонецЦикла;
                            Таб.Область(ТекСтрока,1,ТекСтрока,13).РамкаСнизу(3);
                        Иначе
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший