|
Получить из Имя - Представление: СведенияОВзносах - Сведения о взносах. Как? | ☑ | ||
---|---|---|---|---|
0
loololool
15.11.18
✎
11:31
|
День добрый!
Есть готовое волшебство получения Представления из Имя? Пример: Имя: СведенияОВзносах Представление: Сведения о взносах Спасибо! |
|||
1
Случайный прохожий
15.11.18
✎
12:04
|
Тебе функцию преобразования строки нужно или ты из метаданных хочешь по имени синоним получить?
|
|||
2
loololool
15.11.18
✎
12:05
|
(1) Функцию преобразования, конечно же. Из БПС желательно, при наличии.
|
|||
3
Случайный прохожий
15.11.18
✎
12:12
|
Нету. Но можно же написать :)
|
|||
4
loololool
15.11.18
✎
12:21
|
ʘʘ Хм..
Вариант-то имеется, такой: Для каждой буквы из Имя Цикл Если буква = ВРЕГ(буква) Тогда Представление= СтрЗаменить(ТолькоЭтуБукву, " " + НРЕГ(буква)); КонецЕсли; КонецЦикла; Представление= ВРЕГ(Сред(Представление, 2, 1)) + Сред(Представление, 3); |
|||
5
dezss
15.11.18
✎
12:23
|
(4) первую большой оставь
|
|||
6
Случайный прохожий
15.11.18
✎
12:24
|
(4) А если несколько букв заглавными подряд идут?
|
|||
7
Случайный прохожий
15.11.18
✎
12:29
|
Глянь, может эта подойдет:
Функция ПреобразоватьСтроку(Знач ИсходнаяСтрока) ДлинаСтроки = СтрДлина(ИсходнаяСтрока); Рез = Лев(ИсходнаяСтрока,1); ИсходнаяСтрока = Прав(ИсходнаяСтрока,СтрДлина(ИсходнаяСтрока)-1); н = 1; ПредыдущаяБуква = Рез; Пока н <= ДлинаСтроки Цикл Буква = Лев(ИсходнаяСтрока,1); ИсходнаяСтрока = Прав(ИсходнаяСтрока,СтрДлина(ИсходнаяСтрока)-1); Если Буква=ВРег(Буква) и ПредыдущаяБуква = Врег(ПредыдущаяБуква) Тогда Рез = Лев(Рез, СтрДлина(Рез)-1) + Врег(ПредыдущаяБуква); Рез = Рез + ВРег(Буква); ИначеЕсли Буква=ВРег(Буква) Тогда Рез = Рез + " " +НРег(Буква); Иначе Рез = Рез + Буква; КонецЕсли; ПредыдущаяБуква = Буква; н=н+1; КонецЦикла; Возврат Рез; КонецФункции |
|||
8
Случайный прохожий
15.11.18
✎
12:31
|
Не, тоже не то :)
|
|||
9
loololool
15.11.18
✎
12:35
|
Почему не то - вполне похоже, и с учётов нескольких заглавных, вдруг пригодится. Пожалуй - воспользуюсь, в качестве эксперимента.
Спасибо! |
|||
10
Случайный прохожий
15.11.18
✎
12:35
|
Функция ПреобразоватьСтроку(Знач ИсходнаяСтрока)
ДлинаСтроки = СтрДлина(ИсходнаяСтрока); Рез = Лев(ИсходнаяСтрока,1); ИсходнаяСтрока = Прав(ИсходнаяСтрока,СтрДлина(ИсходнаяСтрока)-1); н = 1; ПредыдущаяБуква = Рез; Пока н <= ДлинаСтроки Цикл Буква = Лев(ИсходнаяСтрока,1); ИсходнаяСтрока = Прав(ИсходнаяСтрока,СтрДлина(ИсходнаяСтрока)-1); СледующаяБуква = Лев(ИсходнаяСтрока,1); Если Буква=ВРег(Буква) и ПредыдущаяБуква = Врег(ПредыдущаяБуква) и СледующаяБуква = Врег(СледующаяБуква) Тогда Рез = Лев(Рез, СтрДлина(Рез)-1) + Врег(ПредыдущаяБуква); Рез = Рез + ВРег(Буква); ИначеЕсли Буква=ВРег(Буква) Тогда Рез = Рез + " " +НРег(Буква); Иначе Рез = Рез + Буква; КонецЕсли; ПредыдущаяБуква = Буква; н=н+1; КонецЦикла; Возврат Рез; КонецФункции |
|||
11
Случайный прохожий
15.11.18
✎
12:36
|
Эта более правильная. Там подпилишь если что :)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |