Добрые люди! Помогите пожалуйста. Суть проблемы: упрощенно выглядит так: в табличный документ вывожу 2 поля рядом друг с другом "Продукция" и "Материалы" (на одно наименование продукции идет несколько наименований материалов) решаю так: первая область имеет 2 параметра (<Продукция> и <Материалы>), следующие области присоединяю с одним параметром (<Материалы>) Бухгалтеру нужно чтобы ячейки в столбике "Продукция" пообъединялись на количество строк в столбике "Материалы". Как это сделать - ума не приложу Помогите!!!
Графически нужно что-то такое ___________________________________________ | Продукция1 |Материал1 | |Материал2 | |Материал3 | |Материал4 | |Материал5 | |Материал6 __________________________________________ | Продукция2 |Материал1 | |
Табличка поехала: материалы должны быть под материалами, а ячейки под продукцией- объединиться с первой непустой ___________________________________________ | Продукция1 |Материал1 | |Материал2 | |Материал3 | |Материал4 | |Материал5 | |Материал6 __________________________________________ | Продукция2 |Материал1 | |
Нарисуй это тупо рамками. Без реального объединения.
Это первое, что мне пришло на ум. Так и сделал сразу - не прокатило. Не пойму, что они с этим документом дальше делают, но уперлись "объедини да объедини..."
По ходу там у продукции наименование длинное, и если просто рамками делать - строчка с продукцией увеличивается и на печати некрасиво получается (это мои догадки)
Все Спать пошел, утро ночи мудренее, мож завтра кто-нить чего-нить и подскажет....
В процедуре вывода в таблицу запоминать начальные и конечные строки для разделов которые надо объединить (в данном случае строки и столбцы продукции). Запоминать их скажем в таблицу значений. Потом, после вывода строчной части пройтись по таблице и объединить нужные ячейки.
ЗЫ: Насколько я помню 8-ка это позволяет, если нет с тем же успехом через скажем OLE использовать Excel, там точно можно. А вообще изврат ИМХО. Хотя и не такое приходилось делать
----------------------------------------------------------------------------------- Единственный, интуитивно понятный интерфейс - мамкина сиська! Всему остальному надо учиться! (с) Не знаю кто....
Группа: Команда
Сообщений: 3568
Из: Киев
Спасибо сказали: 1427 раз
Рейтинг: 0
А я вообще не понял сути проблемы. Если хотите выводить все последующие материалы под продукцией, то создайте отдельную строку макета и выводите в том виде как вам надо, а не мудрите с объединением.
Обычно такие задачи делаются немного по другому алгоритму: 1. Выводится элемент верхней группировки 2. выполняется команда начала группы строк 3. Выводятся элементы нижней группировки 4. Выполняется команда конца группы строк
группы строк можем выводить как в свернутом, так и в развернутом виде, вот быстро сваял пример кода. С выборкой запроса сделал специально (а не выложил готовый код для Вас) , что бы Вы увидели и применили к своему случаю, лучше саму разобраться.
ВыборкаВерхнейГруппы = РЗ.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам,"ВерхняяГруппа"); Пока ВыборкаВерхнейГруппы.Следующий Цикл
// заполняем параметры и выводим строку табличного документа верхней группировки
ТабДок.НачатьАвтогруппировкуСтрок(); ТабДок.НачатьГруппуСтрок(,Ложь); // второй параметр указывает на то будет ли по умолчанию раскрыта группировка строк ВыборкаНижнейГруппы = ВыборкаВерхнейГруппы.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам,"НижняяГруппа"); Пока ВыборкаНижнейГруппы.Следующий Цикл
// заполняем параметры и выводим строку табличного документа нижней группировки
Если применить к вашей задаче, то получится отчет по продукциям, а если нужно посмотреть в разрезе материалов то, достаточно будет в отчете изменить уровень группировки строк или нажать на "+" для отдельной интересующей продукции
Обычно такие задачи делаются немного по другому алгоритму:
Уважаемые коллеги! Если бы я столкнулся с обычной задачей, я бы не выносил вопрос на обсуждение на форуме! Я считаю что эта тема нестандартная и многим могла бы быть интересной.
Цитата(Batchir @ 28.04.11, 10:41)
А я вообще не понял сути проблемы.
Объясняю: генеральный директор моего заказчика - авторитарный тип. Он нарисовал определенный вид отчета и требует от подчиненных неукоснительного соблюдения формы. Сейчас работники получают данные из 1Ски стандартными отчетами и рисуют ему этот отчет ручками в Экселе. Заказчику легче заплатить программисту денег, чем переубедить шефа изменить форму отчета.
Цитата(Batchir @ 28.04.11, 10:41)
Если хотите выводить все последующие материалы под продукцией
.
не хочу выводить "под продукцией", я такого не писал. Я писал: "в табличный документ вывожу 2 поля рядом друг с другом "Продукция" и "Материалы" " - это значит 2 блока рядом друг с другом и в первом блоке требуется объединить ячейки на высоту второго блока.
Если бы не было особого требования к форме вывода, я бы с легкостью воспользовался системой компоновки данных, визуальными средствами сделал бы форму отчета и не парился...
Область = ТабДок.Область(2,2,3,3); Область.Объединить();
ОбластьШапкаТаблицы.Область(1,2,1,9+КоличествоКолонокПодЗаказ).Объединить(); ОбластьШапкаТаблицы.Область(1,2,1,9+КоличествоКолонокПодЗаказ).ГраницаСправа = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.Сплошная);
Группа: Команда
Сообщений: 3568
Из: Киев
Спасибо сказали: 1427 раз
Рейтинг: 0
Цитата(Zaval @ 29.04.11, 23:17)
Упс... это уже интересно.
Предложены пути решения. Что не устраивает? Картинку реализации результата и свои претензии - в студию!
Если продолжаем истерить - платить программисту, добро пожаловать в Стол Заказов.
А ещё лучше показать сам экселевский файл, тот который делают ручками, а хотят видеть в 1С-ке, потому что их первого поста непонятно что нужно, и выглядит это именно так что хотите видеть материл под продукцией
За неуклюжее изображение на первом посте прошу прощения, когда рисовал - все пробелами подогнал, а после отправления все пробелы ужались и получилось как будто материалы под продукцией.
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!