Есть необходимость удалить определенные строки в уже сформированной таблице (до исполнения метода Показать()). Дело в том, что нужны ли будут эти строки или нет становится известным уже в самом конце кода. Возможно ли это сделать средствами 1С или 1С++, типа ВыбОбласть.Удалить()?
Группа: Местный
Сообщений: 1994
Из: Киева и окрестностей
Спасибо сказали: 406 раз
Рейтинг: 0
Можно. У таблицы есть строки - подвесьте в отладчике и посмотрите. Правда группировка строк ломается. Когда-то делал подобный изврат... до сих пор считаю это именно извратом.
А вариант Выгрузить результат в ТЗ, обработать в ней и вывести в Таблицу не подходит?
Можно, но заморочьки много. Там выборка идет из нескольких документов, разными циклами и построение таблицы полностью через ПрисоединитьСекцию("Строка|Столбец"). И все это из-за каприза бухгалтера, типа хчу чтоб таблица выглядела именно так, а не иначе.
Цитата(Zaval @ 03.02.12, 9:48)
Можно. У таблицы есть строки - подвесьте в отладчике и посмотрите. Правда группировка строк ломается. Когда-то делал подобный изврат... до сих пор считаю это именно извратом.
Да, но строку можно либо вывести, либо пропустить. А здесь строки уже выведены в таблицу, т.е. таблица сформирована (это печатная форма, а не ТЗ). И нужно удалить строки в уже сформированной таблице перед методом - Показать().
Группа: Основатель
Сообщений: 13957
Из: Киев
Спасибо сказали: 4523 раз
Рейтинг: 3646.4
Цитата
Можно, но заморочьки много. Там выборка идет из нескольких документов, разными циклами и построение таблицы полностью через ПрисоединитьСекцию("Строка|Столбец"). И все это из-за каприза бухгалтера, типа хчу чтоб таблица выглядела именно так, а не иначе.
А нельзя все эти данные собрать в таблицу значений, из неё поудалять лишнее, а потом уже без никаких ПрисоединитьСекцию вывести пользователю в отчет эту таблицу значений?
А нельзя все эти данные собрать в таблицу значений, из неё поудалять лишнее, а потом уже без никаких ПрисоединитьСекцию вывести пользователю в отчет эту таблицу значений?
Я же и говорю, что если мой вопрос не решим, то буду делать через ТЗ. Хотел узнать, есть ли возможность сделать так, как в вопросе.
Пробовал :-) Такая "Красота" получается, ужасть. Походу наверное перепишу весь отчет. Лучше с нуля самому делать, чем переписывать чужое. Там не шахматка, но вся проблема заключается в том, что запросом не сделать, т.к. в документе присутствует ТЗ-шка и половина данных берется из нее. Короче, задница полная. Но документ менять мне уже ни кто не даст.
Группа: Местный
Сообщений: 1994
Из: Киева и окрестностей
Спасибо сказали: 406 раз
Рейтинг: 0
Цитата(koteyka-2 @ 03.02.12, 11:18)
Да, но строку можно либо вывести, либо пропустить. А здесь строки уже выведены в таблицу, т.е. таблица сформирована (это печатная форма, а не ТЗ). И нужно удалить строки в уже сформированной таблице перед методом - Показать().
Хм... да, оперировать нужно Областью табличного документа. Можно анализировать и менять содержимое ячеек, саму область тоже можно удалить. Теперь - внимание! - вопрос: как обратиться к неименованной области ТабличногоДокумента?
как обратиться к неименованной области ТабличногоДокумента?
Ооооо... Там вообще через задницу к гландам. Есть реквизит типа строка с неограничеными символами. Потом черз ВстрокуСРазделителями и обратно. Как я понял, человеку нужно было в одном доке две таб.части. Потому что в ТЗ забивается один справочник и сумма, а в ТЧ другой справочник и сумма.
Конфа самописная. Что-то сделано толково, что-то нет. Один делал, или с миру по нитке, не знаю.
Группа: Основатель
Сообщений: 13957
Из: Киев
Спасибо сказали: 4523 раз
Рейтинг: 3646.4
Цитата
Конфа самописная. Что-то сделано толково, что-то нет. Один делал, или с миру по нитке, не знаю.
Вот видно человек адекватный . А то студенты обычно приходят сюда и пишут, что прошлый прогер лапух и написал какаху, а сами при этом 2 строчки связать не могут.
Группа: Местный
Сообщений: 1994
Из: Киева и окрестностей
Спасибо сказали: 406 раз
Рейтинг: 0
Это к "...вычислять координаты"
Угу. Или перебирать и искать крамолу, подлежащую удалению. Я изначально имел ввиду именно строку ТабличногоДокумента, а не таблицы, которая в него выводится.
Конечно же, итоговые суммы не меняются - именно в этом кроется великий смысл такого колдунства.
Метод извратный, сугубо для глубокого удовлетворения юзеров, являющихся клиническими идиотами. "Сумма должна быть правильная, но вот эту строку я видеть не хочу!" - вот тут очень важно не заржать вголос, когда будет озвучена "дюже важная причина"
От такого кадра никто не застрахован( Аха, это именно через... к гландам. Но реализуется легко и вполне соизмеримоВменяемо с запросом Заказчика
Я и сам часто с таким сталкиваюсь. Людям объясняешь, что если построить таблицу по другому, то и на создание самого отчета уйдет меньше времени, и на скорость его работы тоже. Но зачастую, упрутся рогом, хочу, чтоб такая же, как у меня в экселе была. И извращайся потом. А всё из-за того, что конечный пользователь (99,9% это вумен) ни как не хотят осваивать что-то новое. Привыкла так, значить давайте мне так.
Вот к примеру, сколько времени удет на создание такой таблицы (точь в точь)? Это еще при условии, что поставщиков, отделов и расходов магазина за разные периоды может быть разное кол-во. За одну неделю может быть 3, а за другую 15.
Хотя стадартным запросом и таблицей, которую конструктор автоматом формирует, эти же данные я бы получил за 10 минут работы.
"маленькие раки по три рубля, большие - по пять" вот и все ))). цену называете в том и другом случае (с поставщиками) и пусть выбирают сами. Конечно, по группировке строки легче вывести, чем колонки. с колонкам нужно через тз. и не одну тз.
Сообщение отредактировал Домовик - 03.02.12, 14:38
Группа: Местный
Сообщений: 1994
Из: Киева и окрестностей
Спасибо сказали: 406 раз
Рейтинг: 0
Цитата(koteyka-2 @ 03.02.12, 14:20)
(99,9% это вумен)
Епт!!! Вы, случАем, не колдун??? А то, по Вашей статистике, мне светит встреча с 1998 женщинами с такой "заточкой"!
Цитата(koteyka-2 @ 03.02.12, 14:20)
Вот к примеру, сколько времени уйдет на создание такой таблицы (точь в точь)? Это еще при условии, что поставщиков, отделов и расходов магазина за разные периоды может быть разное кол-во. За одну неделю может быть 3, а за другую 15.
Та ладно, выклянчить позволение добавить в шапку заголовок "По отделам", объединяющий колонки "Отдел.." - и отделы превращаются в вертикальную группировку. Расходы и Поставщики - это уже и так вертикальные группировки. При хорошем владении Построителем и некотором опыте конструирования запросов получится вполне нормальная задача.
Есть необходимость удалить определенные строки в уже сформированной таблице (до исполнения метода Показать()). Дело в том, что нужны ли будут эти строки или нет становится известным уже в самом конце кода. Возможно ли это сделать средствами 1С или 1С++, типа ВыбОбласть.Удалить()?
Сохраните в Excel, а дальше через объект его методами удаляйте, как хотите
Группа: Пользователи*
Сообщений: 940
Спасибо сказали: 285 раз
Рейтинг: 0
Цитата(koteyka-2 @ 03.02.12, 14:26)
А всё из-за того, что конечный пользователь (99,9% это вумен) ни как не хотят осваивать что-то новое.
У меня наоборот: бухгалтершу уломать на другой вид могу, а вот шеф-мужчина нифига не понимает, когда ему в другом виде табличку дают. И топает ногами: хочу, чтобы как раньше было, за что деньги платются?
Цитата(koteyka-2 @ 03.02.12, 14:26)
Это еще при условии, что поставщиков, отделов и расходов магазина за разные периоды может быть разное кол-во. За одну неделю может быть 3, а за другую 15.
У меня похожий отчет был: по сути, больше чем двухмерную матрицу изобразить в двухмерном виде. Ни ширина секций, ни к-во колонок наперед неизвестно. Пришлось и ТЗ использовать, и извращаться с таблицей путем объединения ячеек и т.д. Координаты считала в процессе заполнения, как и говорила. Формировался фиг знает сколько, зато в такой форме, как хотели: ни чтоб зазря пустых ячеек не было, ни чтоб лишнее не выводилось, и чтоб сводные данные были. Но это еще тот гемор был.
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!