|
Вывести макет с именным ообластями и ячейками типа параметр | ☑ | ||
---|---|---|---|---|
0
SZA
11.05.15
✎
15:16
|
ПОдскажите.
Хочу произвести макет средствами 1С: Нужно вывести на экран/для сохранения в файл (MXL) такой ТабличныйДокумент, в котором установлены имена областей и некоторые ячейки- тип параметры: https://yadi.sk/i/dvmVBPpngYvMt То есть такой, который в свою очередь будет являться полноценным макетом для импорта в конфигурацию или задействован при печати. Что-то не могу нарыть документацию к такому функционалу полноценной работы с макетом. Гуглить тяжело - тема редкая, а индексы поиска забиты примитивными задачами печати по макету. Есть документация/пример? |
|||
1
Лодырь
11.05.15
✎
15:17
|
(0) искал в свое время - не нашел.
|
|||
2
Рэйв
11.05.15
✎
15:19
|
(0) Не летает этот олень....
|
|||
3
Рэйв
11.05.15
✎
15:20
|
хотя функционал был бы полезный.
|
|||
4
DrShad
11.05.15
✎
15:25
|
ну почему же нет, есть! ща найду свою обработку
|
|||
5
Рэйв
11.05.15
✎
15:26
|
(4)Я думаю, что не один я в ожидании:-)
|
|||
6
Рэйв
11.05.15
✎
15:26
|
Если конечно мы об одном и том же говорим.
|
|||
7
Garykom
гуру
11.05.15
✎
15:31
|
(6) эээ платформа как бы не уточнена...
|
|||
8
Garykom
гуру
11.05.15
✎
15:31
|
(7) к (4)
|
|||
9
DrShad
11.05.15
✎
15:36
|
саму обработку нашел, но вот БД для которой она писалась, чтобы сделать скрины, не нахожу
Если кратко в чем была идея Нам нужно было формировать отчеты по строгому шаблону из Excel, при этом при равном наборе данных, форма могла быть разной и меняться со временем. Сделали формирование табличного дока из EXCEL с сохранением форматрирования, вывели на форму и дали возможность юзверям именовать области, правда параметры пришлось делать не в самом макете, а в сопроводительном XML файле |
|||
10
Garykom
гуру
11.05.15
✎
15:37
|
(9) лисапеда... ((
|
|||
11
DrShad
11.05.15
✎
15:40
|
(10) сорри, но да :)))
с параметрами действительно не выйдет, а открыть макет с именованными областями и даже их менять легко |
|||
12
DrShad
11.05.15
✎
15:40
|
погорячился с параметрами, так что нет такой возможности
|
|||
13
DrShad
11.05.15
✎
15:41
|
но наш вариант работал, причем в немаленькой такой контрое
|
|||
14
DmitrO
11.05.15
✎
15:42
|
(0)ну и в чем проблема то, у нас таким образом шаблоны договоров сделаны, их пользователи сами себе составляют.
|
|||
15
Рэйв
11.05.15
✎
15:42
|
(11)А я то ждал прорывов и открытий!:-))
|
|||
16
DrShad
11.05.15
✎
15:43
|
(15) ну извращение - не прорыв, увы :)))
|
|||
17
Лодырь
11.05.15
✎
15:44
|
(11) Это мы умеем. Нам параметры подавай )
|
|||
18
DrShad
11.05.15
✎
15:46
|
(17) параметры сохраняли через адреса областей в сопроводительный XML, ну а при формировании заполняли подобласть нужным текстом
|
|||
19
RomanYS
11.05.15
✎
15:53
|
не врублюсь в чем проблема,
ставь галочку "макет" и сохраняй с параметрами хоть из тонкого клиента. Или надо это программно делать? |
|||
20
DrShad
11.05.15
✎
15:55
|
(19) ему надо параметры править в режиме предприятия
|
|||
21
RomanYS
11.05.15
✎
15:57
|
(20) названия параметров? все правится
|
|||
22
DrShad
11.05.15
✎
16:02
|
ну вот никто в этой ветке не смог, полноценно работать с параметрами, даже я
так что ждем, как? |
|||
23
RomanYS
11.05.15
✎
16:04
|
https://cloud.mail.ru/public/3sanJ4TXtCca/Безымянный.png
тонкий клиент 8.2 |
|||
24
Garykom
гуру
11.05.15
✎
16:04
|
а в 7.7 можно... ))
|
|||
25
DrShad
11.05.15
✎
16:10
|
(23) но как!? у меня не получается
|
|||
26
RomanYS
11.05.15
✎
16:10
|
(24) да, даже галочку "макет" не надоставить
тип ячейки (Текст/ВЫражение/Шалбон/Фикс.шаблон) доступно в режиме предприятия |
|||
27
DrShad
11.05.15
✎
16:10
|
(26) все, нашел
|
|||
28
RomanYS
11.05.15
✎
16:11
|
(27) поздравляю)
|
|||
29
DrShad
11.05.15
✎
16:14
|
(28) где ж ты раньше был?
|
|||
30
RomanYS
11.05.15
✎
16:16
|
(29) а вы раньше не спрашивали, я долго понять не мог, что именно не получается
|
|||
31
DrShad
11.05.15
✎
16:18
|
(30) ну галочку макет я и до этого ставил чтобы именованные области формировать, а вот после этого параметры уже не создавал :(((
|
|||
32
RomanYS
11.05.15
✎
16:18
|
(29) плюс у тебя появилась такая возможность в конструировании лисапедов, полезный опыт для разработчика)
|
|||
33
RomanYS
11.05.15
✎
16:20
|
(31) а не смущало, что макеты, сохраненные из кофигуратора, прекрасно открываются и редактируются. Я галочку только после этого начал искать, ушло не более минуты на ее поиск
|
|||
34
DrShad
11.05.15
✎
16:20
|
(32) это да, если бы я тогда еще в строну СКД подумал, то вообще бы ничего не пришлось рисовать самому
|
|||
35
DrShad
11.05.15
✎
16:21
|
(31) работая столько лет с 1С уже ничего не смущает
|
|||
36
SZA
11.05.15
✎
16:33
|
(--) Спасибо за внимание. Можно пример вывода программного, чтобы например:
ТабДок.Область("R1C2", "R10, С20").ЗадатьИмя("МоёИмя"); ТабДок.Область("R1C2").Тип = параметр ТабДок.Область("R1C2").Значение = "<номенклатура>" ТабДок.Показать(); дайте хоть намётку на синтаксис? |
|||
37
Garykom
гуру
11.05.15
✎
16:35
|
Тьфу ты, как то не задумывался что можно
ТабДок = Новый ТабличныйДокумент; Область = ТабДок.Область(1, 1); Область.Заполнение = ТипЗаполненияОбластиТабличногоДокумента.Параметр; Область.Параметр="Параметр_1"; Возврат ТабДок; |
|||
38
Garykom
гуру
11.05.15
✎
16:37
|
(37)+ только еще изврат чтобы значениями заполнилось по параметрам надо этот ТабДок юзать как макет для ТабДок2 и уже его выводить ))
|
|||
39
RomanYS
11.05.15
✎
16:39
|
(38) ТС вроде макет сохранять собирается, а уже потом использовать. Так что без особого "изврата".
|
|||
40
SZA
11.05.15
✎
16:41
|
отлично, то что нужно!!
Но как сказать, что это - макет? ТабДок.Макт = ИСТИНА тогда и области сразу пооявляются, номне приходится вывести таблицу на экран, заставить открыть окно свойств - чтобы пользователь выбрал свойство МАКЕТ - и тогда сохранял в файл |
|||
41
SZA
11.05.15
✎
16:50
|
https://yadi.sk/i/q5LcJWl-gZ2Mu
вот этот параметр можно задать программно для табдока ? |
|||
42
RomanYS
11.05.15
✎
16:54
|
(41) сходу не нашел, приходится согласиться с (35)
Как вариант(костыль) открывать сохраненный файл-шаблон с установленным флагом |
|||
43
SZA
11.05.15
✎
17:02
|
не я такой костыль придумал
1. я сохраняю мхл 2. открываю его, как текстовый 3. в предпоследней строчке меняю ..,0,0,"ru",0,1, на ..,1,1,"ru",0,1, сохраняю обратно 4. - открываю как ТабДок.прочитать( вуаля! оно себе уже макет Всем спасибо большое за брейншторм |
|||
44
DrShad
11.05.15
✎
17:09
|
(43) ну ты это по-аккуратней, а то желтая фигня может свои байты добавлять при записи в текст и сломать нафиг все
|
|||
45
RomanYS
11.05.15
✎
17:11
|
(43) Да здравствует 1С, флагман костылеведения и лисапедостроения
|
|||
46
mistеr
11.05.15
✎
19:48
|
А Yoksel разве не умет макеты?
|
|||
47
SZA
12.05.15
✎
03:06
|
Если кому интересно, как записать ТабДок в качестве макета
ИмяФайлаМакета = ПолучитьИмяВременногоФайла("mxl"); ТабДок.Записать(ИмяФайлаМакета); ТекстовыйФайлМакета = Новый ЧтениеТекста(ИмяФайлаМакета, КодировкаТекста.UTF8); Сч = 0; СтрокаФайла = ""; ОпределеннаяСтрока = ТекстовыйФайлМакета.ПрочитатьСтроку(); Пока ОпределеннаяСтрока <> Неопределено Цикл Сч = Сч + 1; Если Сч = 16 Тогда ОпределеннаяСтрока = СтрЗаменить(ОпределеннаяСтрока, "{0,0},0", "{0,0},1"); КонецЕсли; СтрокаФайла = СтрокаФайла + ОпределеннаяСтрока; ОпределеннаяСтрока = ТекстовыйФайлМакета.ПрочитатьСтроку(); КонецЦикла; Попытка УдалитьФайлы(ИмяФайлаМакета); Исключение КонецПопытки; ИмяФайлаМакета = ПолучитьИмяВременногоФайла("mxl"); НовыйФайлМакета = Новый ЗаписьТекста(ИмяФайлаМакета, КодировкаТекста.ANSI); НовыйФайлМакета.Закрыть(); НовыйФайлМакета = Новый ЗаписьТекста(ИмяФайлаМакета,,, Истина); НовыйФайлМакета.Записать(СтрокаФайла); НовыйФайлМакета.Закрыть(); ТабДок.Прочитать(ИмяФайлаМакета); Попытка УдалитьФайлы(ИмяФайлаМакета); Исключение КонецПопытки; нужно убрать БОМ |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |