Опять прошу помощи.
Не пинайте, ну не могу.
Ситуация такая.
Фирма - комиссионер, занимается разтаможкой.
ВМДешек очень много.
Товар (каждая единица уникальная) вносится в справочник ТМЦ, и в основном с ним много работы.
В частности сверки с фирмой закажчиком о количестве и наименованиях.
Есть много других внешних обработок но все не то.
Дело в том что товар на фирме не оприходуется и самый удобный вариант - печать прямо из справочника.
Внешне печатную форму переделал.
В справочник добавлен еще один уровень.(+ Дата)
ПРОБЛЕМА:
Подсчет количества идет по высоте таблицы.
Если выводить на печать с "Даты" - все настраивается (минус строки шапки).
В варианте:
Если взять "Месяц" то кроме номенклатуры в счет идут и строки "Даты". (сколько подпапок на столько увеличивается количество товара).
Здесь настроить таким же способом не удается, да и дат в каждом месяце будет разное количество.
Можно снять защиту в ячейке количества и вбивать его ручками, но это не серьезно.
Вот модуль:
Перем ВТ, ШТ, Укр;
// =======================
Процедура Печать()
ВТ=0;
ШТ=0;
// Создание Таблицы для выходного отчета
Тов=СоздатьОбъект("Справочник.ТМЦ");
Укр = Константа.ФормыНаУкраинском;
ВыбТовар=ТекущийЭлемент();
Если ВыбТовар.Уровень()=1 Тогда
Если Укр = Да Тогда
Заг="ВСЯ НОМЕНКЛАТУРА";
Иначе
Заг="";
КонецЕсли
Иначе
Тов.ВключатьПодчиненные(1);
Тов.ИспользоватьРодителя(ВыбТовар.Родитель);
Если Укр = Да Тогда
Заг = "";
Иначе
Заг = "";
КонецЕсли;
Заг=Заг+ВыбТовар.Родитель.Наименование;
КонецЕсли;
глЧислоСтрок=0;
Таб = СоздатьОбъект("Таблица");
Таб.ИсходнаяТаблица(?(Укр = Да,"Укр","Рус"));
Таб.ВывестиСекцию("Отчет");
Тов.ВыбратьЭлементы();
Пока Тов.ПолучитьЭлемент()>0 Цикл
Если Тов.ЭтоГруппа()=1 тогда
Таб.ВывестиСекцию("Группа");
Иначе
ПечПрод = глФРМВал(Тов.Цена_Прод,Тов.Валюта_Прод,1);
ПечРозн = глФРМВал(Тов.Цена_Розн.Получить(РабочаяДата()),Гривня,1);
ПечПрих = глФРМВал(Тов.Цена_Прих,Тов.Валюта_Прих,1);
Таб.ВывестиСекцию("Товар");
КонецЕсли;
глОживить(1);
КонецЦикла;
ВТ=Таб.ВысотаТаблицы();
ШТ=Таб.ШиринаТаблицы();
Таб.ПовторятьПриПечатиСтроки(4,4);
Таб.ВывестиСекцию("Итог");
// Вызов выходного отчета в окно просмотра и редактирования.
Таб.Опции(0,0,4,0);
Таб.Защита(Константа.ФлагЗащитыТаблиц);
Таб.ТолькоПросмотр(1);
Таб.Показать("Список ТМЦ по каталогу","");
ВыбТовар = 0;
КонецПроцедуры
// ===============================
Процедура ОткрытьПартии()
ОткрытьФорму("Справочник.Партии.ФормаСписка");
КонецПроцедуры
// ===============================
Функция УстДоступность()
фГруппа = ТекущийЭлемент().ЭтоГруппа();
Форма.ИсторияСписок.Доступность(1-фГруппа);
Форма.кПартии.Доступность(1-фГруппа);
Форма.кПравоваяПоддержка.Видимость(глВидимостьПравовойПоддержки);
Возврат "";
КонецФункции
а как сделать чтобы учитывались только строки наименований товара - не доходит.
ИМХО, и в таблице будут изменения.
- Если путь ведет к цели, то безразлично какова его длина...