Ввод чисел в 1С 8.3: типы, точность и настройка формата
Содержание
Число в 1С вводят прямо в поле: целую часть набирают с клавиатуры, а дробную отделяют запятой или точкой — платформа обычно принимает оба знака и сама подставляет разделитель по формату поля. Разделители групп (пробелы между тысячами) вручную не ставят, их платформа добавляет сама, когда вы выходите из поля.
Дальше — что именно управляет вводом: тип данных «Число» с его разрядностью и точностью, настройка формата отображения, ввод в табличные части документов и разбор ситуаций, когда поле обрезает, округляет или вовсе не принимает введённое.
Как набрать число и чем отделить дробную часть
В любом числовом поле — в карточке справочника, в реквизите документа, в поле отчёта — работает один принцип: вводите цифры подряд, дробную часть отделяете разделителем.
- 🔢 Целая часть — просто набор цифр. Пробелы для разрядов набирать не нужно.
- Дробная часть — после запятой или точки. На цифровой клавиатуре клавиша
.обычно работает как десятичный разделитель наравне с,. - Знак минуса — набирают перед числом, если поле допускает отрицательные значения.
- Группы разрядов (
1 234 567) платформа расставляет сама при выходе из поля. Вводить их руками бессмысленно.
Если непонятно, какой знак ждёт поле, просто начните с запятой. В русской локали именно она — десятичный разделитель по умолчанию, и на экране дробная часть тоже отобразится через запятую.
Переход между полями — клавишей Tab или Enter (в табличных частях Enter переводит на следующую ячейку или строку). Если число не влезает по ширине, поле всё равно хранит полное значение — усечение только визуальное.
Арифметика прямо в поле: встроенный калькулятор
Числовое поле в 1С умеет считать само. Вместо того чтобы умножать в уме или в стороннем калькуляторе, выражение набирают прямо в ячейке.
- Наберите в поле
1000*12и нажмитеEnter— вместо выражения появится12 000. - Работают сложение, вычитание, умножение и деление:
15000/3,50000-7500,1200*1.2. - Так удобно считать цену с наценкой, сумму с НДС или годовую величину из месячной, не выходя из документа.
Рядом с числовым полем есть и кнопка выпадающего калькулятора — она открывает привычное окошко с цифрами, где можно посчитать значение и перенести результат в поле. Способ ввода выбирайте любой: клавиатура с выражением быстрее, калькулятор нагляднее.
Если нужно прибавить процент, набирайте 100000*1.2 (сумма плюс 20%) — это быстрее, чем считать 20% отдельно и складывать. Результат округлится до точности поля автоматически.
Результат выражения подчиняется той же точности реквизита, что и обычный ввод: если точность поля — 2 знака, деление 100/3 даст 33,33.
Тип «Число»: разрядность и точность
У каждого числового реквизита в конфигураторе заданы два параметра, и именно они определяют, что вы сможете ввести.
- Длина (разрядность) — сколько всего знаков помещается в число.
- Точность — сколько из этих знаков приходится на дробную часть.
- Неотрицательное — флаг, запрещающий отрицательные значения.
Например, для денежной суммы обычно берут длину 15 и точность 2: это допускает значения до 13 знаков в целой части и 2 знака после запятой. Для количества на складе точность чаще 3, чтобы вводить дробные единицы.
| Длина | Точность | Что помещается |
|---|---|---|
| 15 | 2 | суммы до 13 знаков + копейки |
| 15 | 3 | количество с точностью до грамма/литра |
| 10 | 0 | целые счётчики, номера, количество штук |
| 5 | 2 | проценты и ставки (до 999,99) |
Точность, равная нулю, означает целое число — дробную часть такой реквизит просто не хранит.
Эти параметры задаёт разработчик в конфигураторе, в свойствах реквизита. В пользовательском режиме их не поменять — поэтому если поле упорно отбрасывает копейки, причина не в вашем вводе, а в настройке типа.
Менять длину и точность у реквизита, в котором уже есть данные, нужно осторожно. Уменьшение точности при реструктуризации округлит уже сохранённые значения, и копейки потеряются безвозвратно. Перед такой правкой делают резервную копию базы.
Длину и точность платформа допускает в несколько десятков знаков, но конкретный предел зависит от версии и для учётных задач практически недостижим. На практике ограничение задаёт не платформа, а настройка конкретного реквизита.
Почему поле не принимает число или округляет его
Большинство проблем с вводом сводится к рассогласованию: вы вводите значение, которое не укладывается в тип реквизита. Разберём по симптомам.
Отдельная частая путаница — десятичный разделитель. Если вы вводите 1.5, а в поле попадает 15, значит точка не воспринялась как разделитель (такое бывает при нестандартных региональных настройках Windows). В этом случае используйте запятую — она в русской локали всегда трактуется как десятичный знак.
Ещё одна мелочь: ведущий ноль перед запятой можно не набирать. Введите ,5 — платформа покажет 0,5. А вот лишние нули в конце дробной части (1,50) отбрасываются до точности поля, это не ошибка.
Ввод чисел в табличные части документов
В документах — реализациях, поступлениях, актах — числа вводят в строки табличной части: количество, цену, сумму, ставку и сумму НДС. Здесь к обычному вводу добавляется автоматический пересчёт.
- Встаёте в ячейку
Количество, вводите число, нажимаетеTabилиEnter. - Курсор переходит к
Цена. После ввода цены платформа сама считаетСумма = Количество × Цена. - При включённом учёте НДС строка
Сумма НДСиВсегопересчитываются по выбранной ставке. - Если поменять количество или цену в уже заполненной строке, зависимые суммы пересчитаются заново.
Итоги по колонкам (общее количество, общая сумма) выводятся в подвале табличной части — вводить их вручную не нужно, они складываются из строк.
Несколько приёмов ускоряют ввод чисел в строки:
- 🔁 Копирование значения — встаньте в заполненную ячейку,
Ctrl+C, затемCtrl+Vв соседнюю: число перенесётся без повторного набора. - ➕ Арифметика в ячейке работает и здесь: наберите в поле количества
12*3и получите36. - Заполнение по образцу — часть документов позволяет размножить строку или заполнить колонку одним значением через команды табличной части.
Чтобы быстро заполнить однотипные строки, пользуйтесь подбором номенклатуры и вводом по штрихкоду — числа количества туда подставляются из документа-основания или сканера, без ручного набора.
Если в табличной части число не пересчитывает зависимую колонку — проверьте, не отключён ли автоматический расчёт в настройках документа и заполнены ли оба множителя. Пустое количество при заполненной цене сумму не даст.
Как настроить формат отображения числа
Как число выглядит на экране и в печати, задаёт формат — он не меняет само значение, только представление. Форматом управляют двумя способами.
Через свойства поля. У поля формы или колонки есть свойства Формат и ФорматРедактирования. Первое отвечает за отображение, когда поле неактивно, второе — за вид числа в момент ввода. Открываете свойство, вызываете конструктор формата и отмечаете нужные галочки: число дробных знаков, выделение групп разрядов, вывод ведущих нулей.
Разница между ними важна на практике. Формат может показывать сумму с пробелами и двумя знаками (1 234,50), а ФорматРедактирования на время ввода разделители групп убирает, чтобы они не мешали набирать цифры. Когда вы уходите из поля, значение снова отображается по Формат. Если оба свойства не заданы, число показывается по умолчанию локали.
Через функцию Формат в коде и макетах. Строка формата собирается из параметров:
Формат(1234567.5, "ЧДЦ=2") // "1 234 567,50"
Формат(1234567, "ЧГ=0") // "1234567" — без разделителей групп
Формат(3.14159, "ЧДЦ=2") // "3,14"
Формат(1234.5, "ЧДЦ=2; ЧРД=.; ЧРГ=,") // "1,234.50" — формат на западный манер
Основные параметры числового формата:
| Параметр | Что задаёт | Пример |
|---|---|---|
ЧДЦ | число знаков после запятой | ЧДЦ=2 → два знака |
ЧЦ | общее число разрядов | ЧЦ=10 |
ЧРД | символ десятичного разделителя | ЧРД=, |
ЧРГ | символ разделителя групп | ЧРГ=' ' (пробел) |
ЧГ | группировка разрядов | ЧГ=0 отключает |
ЧВН | выводить ведущие нули | ЧВН= |
Если разделители групп не нужны (например, в выгрузке для другой программы) — ставьте ЧГ=0. Если нужен ровно два знака после запятой — ЧДЦ=2. Комбинации параметров разделяют точкой с запятой.
Числа в отчётах: форматирование и группы разрядов
В отчётах число проходит тот же формат, что и в полях, но настраивается в своём месте — в системе компоновки данных (СКД).
- Формат ресурса (суммы, количества) задают в свойстве
Форматполя на вкладке настроек компоновки или в наборе данных. - Для денежных итогов обычно включают два знака после запятой и разделитель групп — так столбцы с суммами читаются ровно.
- Отрицательные значения можно выделять цветом через условное оформление — это настройка оформления, а не самого числа.
Если в готовом отчёте сумма выводится слитно, без пробелов между тысячами, — у поля сброшена группировка (эквивалент ЧГ=0). Добавьте в формат выделение групп, и разряды разделятся.
Для выгрузки отчёта в Excel с последующими расчётами, наоборот, разделители групп лучше убрать: иначе Excel может принять «1 234» за текст. Формат без группировки упрощает перенос чисел.
В печатных формах число форматируется так же — через свойство Формат ячейки макета или функцию Формат в коде. Поэтому если в счёте сумма печатается без копеек, а нужны два знака, правят не данные, а формат ячейки печатной формы.
Для округления значения в вычисляемых полях и в коде используют функцию Окр: Окр(123.456, 2) даст 123.46. Третий параметр задаёт режим округления (по умолчанию — округление 0,5 в большую сторону). Это именно изменение значения, в отличие от формата, который трогает только отображение.
Коротко разница: Формат и свойства поля меняют только картинку на экране и в печати, а Окр и точность реквизита меняют само сохранённое число. Путать их — частая причина расхождений в копейку между экраном и отчётом.
Какой знак ставить для дробной части — точку или запятую?
Почему в отчёте число без пробелов между тысячами?
ЧГ=0, задать ЧРГ), и число отобразится как 1 234 567.Можно ли ввести в числовое поле что-то вроде «5 кг»?
Какая максимальная разрядность у типа «Число»?
Как округлить число, а не просто скрыть лишние знаки?
ЧДЦ=2) вы меняете только вид — в базе остаётся полное значение. Чтобы изменить само число, применяют функцию Окр(Число, Точность) в коде или вычисляемом поле отчёта.