7.7 Печать таблиц справочника ТМЦ

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем geba, 28 май 2010.

  1. TopicStarter Overlay
    geba
    Offline

    geba

    Регистрация:
    27 авг 2009
    Сообщения:
    41
    Симпатии:
    0
    Баллы:
    1
    Есть карточка Номенклатуры, в ней таблица , Как вывести на печать строки из этой таблички???
    От сюда:
    Посмотреть вложение 4472

    Код:
     Процедура ЗаполнитьТЗ() 
    ВидыЦветовПечати.Очистить();
    ВидыЦветовПечати.НоваяКолонка("Цвет","Справочник",,,"Цвет печати");
    ВидыЦветовПечати.НоваяКолонка("Оттенок","Строка",100,0,"Оттенок");
    
    Спр = СоздатьОбъект("Справочник.КоличествоЦветовПечати");
    Спр.ИспользоватьВладельца(ТекущийЭлемент());
    Спр.ВыбратьЭлементы();  Л=0;
    Пока Спр.ПолучитьЭлемент()=1 Цикл
    ВидыЦветовПечати.НоваяСтрока();
    ВидыЦветовПечати.Цвет    = Спр.ТекущийЭлемент();
    ВидыЦветовПечати.Оттенок = Спр.Цвет.Pantone;		
    КонецЦикла;
    
    КонецПроцедуры  
    
    Сюда:
    Посмотреть вложение 4473

    Вложения:

    • kart.JPG
      kart.JPG
      Размер файла:
      108,7 КБ
      Просмотров:
      33
    • Print.JPG
      Print.JPG
      Размер файла:
      11,8 КБ
      Просмотров:
      12
  2. Бухгалтерский угодник
    Offline

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

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Нужно сначала узнать - каким образом эта табличка хранится в базе. (если правильно сделано, то это подчиненный справочник)
  3. TopicStarter Overlay
    geba
    Offline

    geba

    Регистрация:
    27 авг 2009
    Сообщения:
    41
    Симпатии:
    0
    Баллы:
    1
    Код:
      Процедура ДобавитьЦвет()
    ОткрытьФормуМодально("Элемент.КоличествоЦветовПечати",,,0,ТекущийЭлемент());
    ЗаполнитьТЗ();
    КонецПроцедуры
    
    Процедура ИзменитьЦвет()
    ОткрытьФормуМодально(ВидыЦветовПечати.Цвет,,0);
    ЗаполнитьТЗ();
    Конецпроцедуры    
    
    Процедура УдалитьЦвет()
    Спр = СоздатьОбъект("Справочник.КоличествоЦветовПечати");
    Спр.ВыбратьЭлементы();
    Спр.НайтиЭлемент(ВидыЦветовПечати.Цвет);
    Спр.Удалить();
    ЗаполнитьТЗ();
    КонецПроцедуры   
    
    
    
    Справочник.ЦветаПечати
    Посмотреть вложение 4478
    Справочник.КоличествоЦветовПечати
    Посмотреть вложение 4479

    Посмотреть вложение 4480

    В етой табличке может быть максимум 4 строки (4цвета)

    Вложения:

    • Color.JPG
      Color.JPG
      Размер файла:
      71,4 КБ
      Просмотров:
      8
    • color1.JPG
      color1.JPG
      Размер файла:
      18,7 КБ
      Просмотров:
      17
    • col2.JPG
      col2.JPG
      Размер файла:
      54,2 КБ
      Просмотров:
      15
  4. Бухгалтерский угодник
    Offline

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

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Вы не поняли... Есть справочник (не видно, но я так понял называется продукция). Так вот покажите его стуртуру в конфигураторе (непонятно каким образом хранятся данные по цветам)
  5. Requin
    Offline

    Requin Опытный в 1С

    Регистрация:
    10 май 2010
    Сообщения:
    1.911
    Симпатии:
    2
    Баллы:
    29
    Данные по цветам хранятся, я так понимаю, в подчиненном справочнике "КоличествоЦветовПечати"?


    Эта процедура где находиться? В форме элемента справочника?

    Как формируется печатная форма?

    А если пользователи введут больше?
    И в печатной форме только три строки предусмотрено :unsure:
  6. TopicStarter Overlay
    geba
    Offline

    geba

    Регистрация:
    27 авг 2009
    Сообщения:
    41
    Симпатии:
    0
    Баллы:
    1
  7. Requin
    Offline

    Requin Опытный в 1С

    Регистрация:
    10 май 2010
    Сообщения:
    1.911
    Симпатии:
    2
    Баллы:
    29
    Как вариант:
    Посмотреть вложение 4487

    Код:
    Процедура ПечятьТК()
    Перем Цвет[3];
    Перем Оттенок[3];
    
    // заполнить цвета и оттенки
    Сч = 1;
    Спр = СоздатьОбъект("Справочник.КоличествоЦветовПечати");
    Спр.ИспользоватьВладельца(ТекущийЭлемент());
    Спр.ВыбратьЭлементы();
    Пока Спр.ПолучитьЭлемент()=1 Цикл
    Цвет[Сч] = СокрЛП(Спр.Цвет.Наименование);
    Оттенок[Сч] = СокрЛП(Спр.Цвет.Pantone);
    Сч = Сч + 1;
    Если Сч > 3 Тогда
    // ограничение печатной формы
    Прервать;
    КонецЕсли;
    КонецЦикла;	
    
    Таб = СоздатьОбъект("Таблица"); 	
    Таб.ИсходнаяТаблица("ТехкартаГЯ");
    Таб.ВывестиСекцию("Шапка1");
    Таб.ВывестиСекцию("Шапка");
    Таб.Опции(0,0,0,0);
    Таб.Показать("Печать Номенклатура","");    
    КонецПроцедуры
    

    Вложения:

    • pic0001.PNG
      pic0001.PNG
      Размер файла:
      4,6 КБ
      Просмотров:
      10
  8. dianofob
    Offline

    dianofob (-_-)y-.o0O

    Регистрация:
    3 июл 2009
    Сообщения:
    711
    Симпатии:
    0
    Баллы:
    26
    забавно с массивом..) Только можно было по-простому одну строку в отдельную секцию и выводить в цикле.. Тогда цветов могло быть сколько угодно
  9. Requin
    Offline

    Requin Опытный в 1С

    Регистрация:
    10 май 2010
    Сообщения:
    1.911
    Симпатии:
    2
    Баллы:
    29
    :unsure:
    :smile: По-быстрому за 5 мин. склепал. А строку в секцию - там форма "неудобная".

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