§ 1.4. Где у платформы предел: когда автоформ перестаёт хватать
Автоформа поступления показывает всё, что у документа есть: номер, дату, контрагента, склад, таблицу товаров. Ни одного поля не забыто. И всё-таки кладовщик, оформляющий на ней по двадцать поступлений в день, через неделю придёт с просьбой «сделать под работу». Разберём, чего именно ему не хватает, — а заодно поймём, где у платформенной сборки предел.
1. Предел первый: длинный столбец
Платформа ставит поля подряд, в порядке дерева. Пока полей четыре, это незаметно. Когда их полтора десятка, экран превращается в ленту, по которой надо ехать глазами.
как строит платформа как нужно человеку
──────────────────── ──────────────────
Номер ┌ Шапка ─────────┐
Дата │ Номер Дата │
Контрагент │ Контрагент │
Склад │ Склад │
Ответственный └────────────────┘
Комментарий ┌ Товары ────────┐
таблица товаров │ таблица │
└────────────────┘
Слева — как собирает платформа: всё равнозначно, всё в одну колонку. Справа — как это устроено в голове у человека: шапка отдельно, товары отдельно, и служебное внизу. Платформа так не умеет не потому, что слаба, а потому, что не знает, что «Склад» и «Ответственный» — про разное. Это знание есть только у того, кто понимает задачу.
Платформа знает, из чего состоит объект. Она не знает, что из этого важно.
2. Предел второй: ничего не объяснить
В автоформе есть поля и нет слов о них. Нельзя ни пояснить, что значит «Ответственный», ни предупредить, что цену вводят без налога, ни отделить чертой то, что заполняют всегда, от того, что заполняют изредка.
| что хочется сказать пользователю | чем сказать в автоформе |
|---|---|
| «цена без налога» | нечем |
| «эти три поля заполняет кладовщик» | нечем |
| «остальное — бухгалтерия, не трогайте» | нечем |
Пояснения на форме — не украшение. Каждая такая надпись снимает вопрос, который иначе задают вслух по телефону.
3. Предел третий: показывается всё
Автоформа показывает все реквизиты объекта — включая те, которые пользователю видеть незачем: служебные признаки, технические поля, реквизиты, заполняемые программой. Спрятать их нельзя: в автоформе нет способа сказать «этого не показывай».
Обратная сторона того же предела — нельзя и добавить. Если на форме нужно показать что-то, чего у объекта нет — например, остаток товара на складе рядом со строкой, — автоформа этого не сделает: она знает только объект.
4. Предел четвёртый: только стандартные действия
Кнопки автоформы — те, что платформа даёт всем: записать, провести, закрыть. Ни одного своего действия в неё не добавить.
| что нужно в жизни | есть ли в автоформе |
|---|---|
| «Записать» и «Провести» | да |
| «Подобрать товары» из отдельного окна | нет |
| «Заполнить по прошлому поступлению» | нет |
| «Напечатать приходный ордер» | нет |
Последняя строка особенно показательна: печатная форма — обычная потребность любой конторы, и появляется она только вместе со своей формой и своей командой.
5. Предел пятый: ничего не происходит само
Автоформа не считает и не подставляет. Ввели количество и цену — сумма осталась пустой. Выбрали товар — цена не подтянулась. Ошиблись складом — никто не переспросил.
Причину стоит назвать точно, потому что поведение бывает двух родов. То, что следует из свойств, платформа обеспечивает сама: проверка заполнения сработает и в автоформе, потому что задана у реквизита. А то, что нужно описать шагами — «когда изменили количество, умножь его на цену», — пишут кодом, в модуле формы. У автоформы нет описания в дереве, а значит, нет и модуля, который можно было бы открыть: писать некуда. Чтобы у формы появилось место для кода, её придётся сначала сделать своей.
| откуда берётся поведение | работает в автоформе |
|---|---|
| тип реквизита | да |
| проверка заполнения | да |
| пересчёт, подстановка, свой вопрос пользователю | нет |
6. Чего этот список не означает
Пределы легко прочитать как приговор: раз всего этого нет, значит, автоформа — временная мера. Это не так.
| что думают | как на самом деле |
|---|---|
| автоформа медленнее своей | нет, она такая же |
| данные через неё вводить опасно | нет, проверки и права работают одинаково |
| её рано или поздно заменят | у служебных справочников она живёт годами |
| своя форма всегда лучше | своя форма лучше там, где есть что улучшать |
Автоформа перестаёт годиться не вообще, а для конкретной работы конкретного человека. Справочник складов, куда заглядывают раз в квартал, проживёт на автоформе всю жизнь конфигурации. Документ, который оформляют по двадцать раз в день, своей формы попросит быстро.
7. Как понять, что предел достигнут
Признаки одинаковы в любой конторе, и ни один из них не про красоту.
| признак | что за ним стоит |
|---|---|
| одно и то же объясняют новичкам устно | форме нечем объяснить |
| в поля попадает мусор, его чистят потом | форма не мешает ошибиться |
| ввод одного документа занимает минуты | лишние поля, лишние переходы |
| заводят инструкцию «как заполнять» | инструкция должна была стать формой |
Своя форма нужна не тогда, когда автоформа некрасива, а тогда, когда она заставляет человека помнить лишнее.
Проверяются эти признаки не в редакторе, а разговором. Три вопроса тому, кто работает с формой каждый день: что вы делаете в ней чаще всего? где чаще всего ошибаетесь? что приходится держать в голове или подсматривать в бумажке? Ответы и есть список того, чего форме не хватает, — и он всегда короче, чем кажется со стороны.
8. В режиме Предприятия
Посмотрим на предел своими глазами — это займёт пять минут.
-
Откройте любое поступление — например, № 12 — и попробуйте заполнить его так, будто принимаете товар: выберите контрагента, склад, добавьте строку, введите количество и цену.
-
Обратите внимание на сумму в строке. Она не пересчиталась — считать некому.
-
Выпишите на бумагу, чего вам не хватило: пояснений, порядка полей, кнопок, автоматических подстановок.
-
Сохранять не нужно: закройте карточку, отказавшись от записи.
Список, который у вас получился, — это и есть заказ на свою форму. Держите его под рукой: к концу книги вы соберёте форму, которая его закрывает.
Главное в одном абзаце
Автоформа даёт полный доступ к объекту и ничего не забывает, но у неё есть пять пределов, и все они об одном: платформа знает, из чего состоит объект, и не знает, что из этого важно. Поля идут подряд, в порядке дерева, и на длинном документе превращаются в ленту; пояснить, предупредить, разделить смысловые части нечем; показывается всё подряд, а спрятать лишнее или добавить чужое нельзя; кнопки только стандартные, поэтому ни подбора, ни печатной формы; и наконец, ничего не считается и не подставляется само: поведение, которое нужно описать шагами, живёт в коде, а у автоформы модуля нет — писать некуда. Предел достигнут не тогда, когда форма некрасива, а тогда, когда она заставляет человека помнить лишнее: объяснять новичкам устно, чистить мусор в полях, писать инструкцию по заполнению.
Пределы названы. Но из этого не следует, что своя форма нужна везде, где автоформа чего-то не умеет: у своей формы есть цена. Как решать?
Контрольные вопросы
- Почему платформа ставит поля подряд, а не группирует их по смыслу?
- Чего нельзя сказать пользователю в автоформе?
- Что автоформа показывает и чего не может показать?
- Какие действия доступны в автоформе и каких в ней не бывает?
- Почему в автоформе не пересчитывается сумма, хотя проверка заполнения работает?
- По каким признакам видно, что автоформы перестало хватать?
Упражнения
Соберите заказ. Проделайте опыт из параграфа и выпишите не меньше пяти вещей, которых вам не хватило в карточке поступления.
Своё: разложите по пределам. Возьмите свой список и отнесите каждый пункт к одному из пяти пределов: порядок, пояснения, состав, действия, поведение.
Ловушка: «сделаем красиво». Разработчик говорит: «Автоформы уродливы, надо нарисовать свои для всех справочников». Что он упускает и какой вопрос стоит задать вместо этого?
Чужая жалоба. Кладовщик пишет: «Каждый раз спрашиваю, в какое поле писать номер накладной поставщика, и всегда забываю поставить склад». Какие пределы автоформы стоят за этой жалобой?
Ответы — в конце части.