|
v7: Что можно придумать с областью табличного документа ? Ø (Волшебник 09.07.2024 10:27) |
☑ | ||
---|---|---|---|---|
0
ALCAPONA
05.07.24
✎
15:42
|
Всем доброго дня.
Есть табличный документ. В нём в цикле выводятся секции шапки, детализации, подвала. Возможно ли каким-то способом после вычисления значений подвала удалить всю область с последней шапки и до конца таблицы ? В 7.7 нет Область.Удалить(), УдалитьОбласть() и т.п. методов. Как вариант можно было бы делать через 2 табличных документа: вычислять во втором документе необходимые данные и в зависимости от этого переносить 2-й документ в первый или очищать, но и этого 7.7 не умеет. Метод "Вывести" работает со всем макетом в целом. Гугл предлагает много способов, но все они для 1с8. |
|||
1
Злопчинский
05.07.24
✎
16:00
|
Нихера не понял.
Что ты хочешь решить? Избавиться от полностью или частично висящего подвала? - так это штано решается |
|||
2
Злопчинский
05.07.24
✎
16:02
|
И какая "последняя шапка"
Та что повторятьстрокиприпечати или шапка, которая выводится прямым кодом? |
|||
3
ALCAPONA
05.07.24
✎
16:02
|
Я формирую печатную форму, в процессе проводя вычисления и при определённом результате этих вычислений мне нужно из готовой сформированной печатной формы к примеру удалить строки с 20-й по 30-ю.
Как это сделать в 7.7 ? |
|||
4
Мультук
05.07.24
✎
16:05
|
(3)
Сначала всё посчитать в уме Потом вывести то что нужно |
|||
5
Участковый
05.07.24
✎
16:05
|
Делай виртуальные вычисления и готовый результат уже пиши в табличный документ.
|
|||
6
DCKiller
05.07.24
✎
16:06
|
(3) Может, стоит сначала все вычисления провести, а потом уже из них удалить то, что не нужно, и вывести результат в таблицу?
|
|||
7
Злопчинский
05.07.24
✎
16:07
|
(3) пихай вычисленное в ТЗ.
Потом готовую тз тупо выводи на печать |
|||
8
ALCAPONA
05.07.24
✎
16:08
|
Это двойная работа программы получится: сначала всё обсчитать до конца, понять, устраивает ли нас результат. Если устраивает, считать всё заново во второй раз, выводя всё это в секции шапки и детализаций.
Долго и нерационально. |
|||
9
ALCAPONA
05.07.24
✎
16:09
|
В ТЗ красиво не запихаешь всё это, там много разнокалиберных значений, будет куча разных ТЗ.
|
|||
10
Злопчинский
05.07.24
✎
16:11
|
Да один хрен куда выводить в печформу или в нет пизировпнную тз.
|
|||
11
ALCAPONA
05.07.24
✎
16:13
|
Ясно, думал может есть способ более правильный и простой, но видимо нет.
Всем спасибо. |
|||
12
Злопчинский
05.07.24
✎
16:13
|
(8) ну если хочется гемора читай сформированный моксель поячеечно и перекидывай в новый моксель. Озеренно быстро будет по сравнению с выводом ране прочитанного результата ;-)
|
|||
13
Мультук
05.07.24
✎
16:18
|
[skip]
|
|||
14
MarySue
05.07.24
✎
18:51
|
я в шоке
|
|||
15
Злопчинский
05.07.24
✎
19:02
|
(14) это да, слабонервным тут не выжить ;-)
|
|||
16
Salimbek
07.07.24
✎
13:13
|
(11) Создаешь новый ТабДок с нужной структурой и нужным количеством секций, потом перебираешь первый ТабДок через Область = ТабДок.ПолучитьОбласть(Х,У); и во втором документе устанавливаешь значения через ТабДок2.ПолучитьОбласть(Х2,У2).Текст = Область.Текст;
|
|||
17
Волшебник
07.07.24
✎
13:48
|
(5) Чем виртуальные вычисления отличаются от реальных?
|
|||
18
Злопчинский
07.07.24
✎
18:01
|
(16) в (12) предлагал уже.
Но это редкостное извращение если сложное оформление |
|||
19
Salimbek
07.07.24
✎
22:57
|
(18) Проще всего, конечно, для секций Шапки и подвала формировать секции, которые выводились в первую таблицу, в отдельных переменных. И если первая таблица оказалась ненужна, то сделать в итоге просто:
ТабДок2.ВывестиСекцию(СекцияШапки); ТабДок2.ВывестиСекцию(СекцияПодвала); |
|||
20
Злопчинский
08.07.24
✎
00:07
|
(19) ничего не понял.
Тут произвольная часть тела таблицы в конце формирования оказывается ненужной... |
|||
21
Salimbek
08.07.24
✎
02:16
|
(20) Таблицу то до этого формируют, а для этого Секции создают.
Даже, лучше сразу два Табличных дока создавать. В один выводить все секции, в другой только избранные. А в конце вывести только нужный. |
|||
22
MarySue
08.07.24
✎
04:08
|
(21) для таких случаев (предварительные вычисления, свёртки, сортировки, преобразования) придуман максимально удобный инструмент, называется - ТАБЛИЦА ЗНАЧЕНИЙ
перестаньте удалять гланды через неподобающее место, юзайте нормальые практики |
|||
23
DJ Anthon
08.07.24
✎
06:24
|
(8) а удалять уже сформированные строки табличного документа офигеть как рационально
|
|||
24
Злопчинский
08.07.24
✎
11:50
|
(21) избранные становятся известны только после полного формирования. Поэтому таб1 и таб2 будут совпадать
|
|||
25
maxab72
08.07.24
✎
11:53
|
Если автор очень хочет геморроя, то в 77 можно не удалять область, а очищать все ее содержимое.
|
|||
26
ALCAPONA
08.07.24
✎
12:06
|
(25)
Можно очищать, но она всё равно останется в табличном документе, и следующая секция будет добавлена ниже неё. |
|||
27
LienXo
08.07.24
✎
13:14
|
(26) давно это было, но если верно помню в 77 можно играть с высотой строки, очисти и высоту строки в 0. Но это неточно
|
|||
28
maxab72
08.07.24
✎
13:17
|
(26) так я же говорю про геморрой, где у меня сказано про заполнение таблицы по секциям? Только хардкор, только прямой адресацией ячеек.
|
|||
29
ALCAPONA
08.07.24
✎
14:14
|
(27)
Пробовал, установка 0 ничего не даёт, установка 1 даёт довольно обширный белый кусок на странице. |
|||
30
ALCAPONA
08.07.24
✎
14:17
|
Да ладно, забейте, нет красивого способа в клюшках.
Уже сделал облегчённый предварительный расчёт результата, и если результат положительный, делаю полный расчёт с выводом всех секций. Программа само собой работает чуть дольше, но оказывается не критично дольше. А всё остальное потребовало бы или гемора с перебором ячеек, или множества ТЗ с кучей мусорной информации. |
|||
31
MarySue
09.07.24
✎
09:04
|
беда отрасли 1С в том, что программистами становятся люди без профильного образования, слыхом не слыхавшие о методологии решения задач, и понятия не имеющие о том, что такое "best practice"
а самое удручающее - когда они и не желают ничему учиться |
|||
32
trad
09.07.24
✎
09:08
|
(31) так можно сказать про любую отрасль
|
|||
33
АЛьФ
09.07.24
✎
09:33
|
Не выводить секции в таблицу, а сохранять их в список значений. В случае необходимости удалить из списка ненужные секции. В конце прой
|
|||
34
АЛьФ
09.07.24
✎
09:33
|
+(33) В конце пройтись по списку значений и вывести все в таблицу.
|
|||
35
АЛьФ
09.07.24
✎
09:35
|
А еще можно использовать объект "ТабличныйДокумент" из Йокселя. Он умеет удалять строки.
|
|||
36
Масянька
09.07.24
✎
09:43
|
(35) +100500!
Один раз потратить полдня, зато потом за 5 минут долететь! © |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |