|
как в макете разделить слово на буквы которые будут вписываться по одной букве в клетку | ☑ | ||
---|---|---|---|---|
0
Niki13
01.12.22
✎
13:17
|
не понимаю как это сделать
|
|||
1
Aleksey
01.12.22
✎
13:21
|
сред()?
|
|||
2
PLUT
01.12.22
✎
13:23
|
(0)слово нужно положить в массив
а ячейки макета пронумеровать, начиная с нуля например Б0, Б1, ну и в цЫкле по размеру массива букф по имени ячейки "Б" + индекс поместить букву из текущего элемента массива как-то так как вариант |
|||
3
AneJIbcuH
01.12.22
✎
13:24
|
в каждой клетке свой параметр. СтрДлина() и Сред() вам помогут разбить слово на буквы
|
|||
4
PLUT
01.12.22
✎
13:25
|
(2) > а ячейки макета пронумеровать
задать имена ячейкам, чтобы с областями через координаты ХY не ипаться |
|||
5
PLUT
01.12.22
✎
13:30
|
> слово нужно положить в массив
в цЫкле с помощью магического заклинаний из (1) и (3) СтрДлина() для итератора цЫкла Сред() для складывания в массив букф |
|||
6
Обработка
01.12.22
✎
13:34
|
Заираешь крайнюю левую букву и запоминаешь в массив. А остальное по лине отсекай и по кругу то есть в цыкле.
|
|||
7
Aleksey
01.12.22
✎
13:37
|
А массив ли?
ИМХ не лучше Структуру чтобы через потом ЗаполнитьЗначенияСвойств(Область.Параметры, СтруктураЗначений); |
|||
8
Kassern
01.12.22
✎
13:38
|
(0) Каждая буква это параметр который занимает свою ячейку ТабДока. А дальше как обычно, заполняете параметры буквами и будет вам слово.
|
|||
9
Kassern
01.12.22
✎
13:39
|
(8) +Только предварительно лучше сетку сделать нужного размера, чтобы ячейки были нужной формы. Либо вообще сделать мелкой сетку и собирать нужные области объединением.
|
|||
10
PLUT
01.12.22
✎
13:48
|
(7) это как ТС решит
можно через параметры области, можно текст ячейке присвоить... |
|||
11
mikecool
01.12.22
✎
14:09
|
(9) зачем сетку? память о 7.7? )) область может иметь уникальную настройку ячеек
|
|||
12
Kassern
01.12.22
✎
14:10
|
(11) Удобно создавать области нужного размера
|
|||
13
mikecool
01.12.22
✎
14:15
|
(12) а я растягиваю те. что есть до нужного размера... )
|
|||
14
Fedor-1971
01.12.22
✎
14:38
|
(11) ТС не задал параметров: сколько будет символов.
А в общем и целом: 1. Делаем область в одну ячейку с оформлением, дабы не погнуть остальную таблицу по ширине колонок, задаём оной параметр 2. Откусываем первый символ из строки заполняем параметр и Выводим область 3. Кусаем остальные символы заполняем параметр и Присоединяем область Получится большущая строка, что не всегда удобно И да, не забываем добавить пустую ячейку для разделения слов, если в строке такое не предусмотрено |
|||
15
PR
01.12.22
✎
14:44
|
(0) А в чем сложность-то?
|
|||
16
mikecool
01.12.22
✎
14:49
|
(15) как обычно - сделать
|
|||
17
PLUT
01.12.22
✎
15:08
|
(14) на своей практике встречал такое один раз, когда формы заявлений для УФМС для мигрантов рисовал
так вот, там бланки определенного вида, клеточки "прибиты гвоздями". там проще или именованные ячейки или параметры в ячейках сами бланки из Гаранта вроде бы тырил (сохранял в эксель и конвертировал в макет 1С) |
|||
18
PLUT
01.12.22
✎
15:13
|
(14) > Получится большущая строка, что не всегда удобно
+ (17) а некоторые клеточки в несколько строк (адрес регистрации например) причем клеточки по бланкам разные (количество клеточек, количество строк клеточек в пределах логической "области") если делать через присоединение областей - тады в коде придется вышивать крестиком |
|||
19
RomaH
naïve
02.12.22
✎
07:17
|
Длина = СтрДлина(ТекстДляПечати);
Для к = 0 по Длина - 1 Цикл ТекОбласть = Макет.Область(Область.верх,Область.Лево + 2*к,Область.низ,Область.Лево + 2*к); ТекОбласть.Текст = Сред(ТекстДляПечати,к + 1,1); КонецЦикла; в макете просто именованная область ячеек |
|||
20
Kassern
02.12.22
✎
09:01
|
(17) О да, по молодости я тоже эти формы делал и флешбеки этой темы как раз от них)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |