Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
18 июл 2026, 11:20

Суммирование текстового поля

Автор Vasiliiaz, 06 июл 2026, 08:22

0 Пользователей и 1 гость просматривают эту тему.

Vasiliiaz

1C 1С КА 2.5.27.52

В документе "Реализация товаров и услуг" присутствует поле "Вес товара". Поле текстовое.
Задача - посчитать вес за период. В поле вес написан в виде "145 кг".
Как отделить "145" от "кг" и просуммировать за период?

antoneus

А в этом поле вес откуда берётся?

Vasiliiaz


antoneus

Для начала вместо этого поля сделать два - число и единица измерения и начать вносить нормальные данные.

Поскольку поле текстовое, там может быть что угодно, так? "140.83 кг", "140 клогармм", "140кг", "142 кг 500 г" - типа такого?

Vasiliiaz

Да, возможны вариации, но в основном как на скрине....

antoneus

Ну тогда изобретаем велосипед - Функцию Для Вытаскивания Числа Из Строки.

В цикле идем по символам, если нам попадается цифра - добавляем в финальную строку, если точка - тоже добавляем, если запятая - добавляем точку. Точка может быть только одна. Потом Вес = Число(ФинальнаяСтрока).

sali

не проще разделить поле на два? первое делаешь числовое с подсказкой на поле, что вводить туда цифры надо, второе - строковое , где тоже делаешь подсказку внутри поля
а так у тебя будет довольно объемный код с условиями:
если так напишут "140.83 кг", если вот так напишут "140кг" или вот так "142 кг 500 г" или еще как то . человеческий фактор - написать с ошибкой, не проверить/забить и двинуться дальше

Afinogen

 B) так проще можно,  сделать 1 числовое поле, а текст "кг" загнать в надпись поля и вместо "Вес" написать "Вес (кг)" и все)) только тут надо помнить, что придется какую то обработку делать по перезаписи текста в числовое поле для уже сформированных документов и вот в ней уже заниматься парсингом или регулярными выражениями выкручивать))

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск