Привет!
Меня зовут Антон, иногда я пишу в этот блог.
Но чаще не пишу.

define(false,true);

Если программисту не написать четкое ТЗ, он всегда напишет программы так, как удобнее ему самому — по себе знаю. Если что-то не оговорено детально, программист пойдёт по пути меньшего сопротивления и напишет самый простой из возможных вариантов. И в 99,9% случаев этот вариант будет неудобен для пользователя.

В общем, клиент-банк банка «Уралсиб» принимает платежки в ПФР только если в поле «плательщик» в конце строки в скобках указана форма собственности предприятия. Вот так: «ИП Иванов Иван Иванович (ИП)». Если написать без этих скобок, от возникнет ошибка и платежка не будет принята. Причём ошибка эта вылезет не на стадии заполнения, а на стороне банка во время проверки правильности заполнения. То есть легко может возникнуть такая ситуация, когда вы вечером подписали и отправили платёжки в полной уверенности, что всё ок (программа всё приняла, не показав никаких ошибок), а утром обнаружили, что они не приняты.

Насколько я понимаю, программистам было лень писать парсер, который бы искал подстроку в этом поле, и они написали регексп, который берет последние скобки, смотрит что в них написано и сравнивает с базой.

Ну правильно! А то напишет кто-нибудь «Индивидуальный предприниматель Иванов Иван Иванович» — это ведь всё надо обработать как-то! Это сложно! Гораздо проще, если он в конце в скобках всё напишет, как нам надо, вот тогда это будет легко обработать.

В общем, я к чему — не жалейте времени, пишите детальные ТЗ, не позволяйте программистам лезть в пользовательский интерфейс — это не их работа.

3 комментария
Ajven 2011

Ты очень разумный программист.
«не позволяйте программистам лезть в пользовательский интерфейс — это не их работа.»

Антон 2011

Ну так дизайн интерфейса — это работа, как ни удивительно, дизайнера интерфейсов. Ну или хотя бы просто графического дизайнера, если дизайнера интерфейсов нет под рукой. Проблема в том, что у клиент-банка, судя по внешнему виду и расположению элементов управления, не было даже обычного дизайнера — всё делали программисты(

имя 2011

по регламенту так пишется
Иванов Иван Иванович (ИП)
общепринятая форма :)

Антон 2011

а есть ссылки на официальные документы, что надо так?

Я вот по первой ссылке что нашёл:
Плательщик — наименование плательщика. Не более четырех строк. Важно, чтобы наименование плательщика было указано в таком же виде, как оно фигурирует в банковской карточке.

То есть то же отношение со стороны банка  — мы заполняем, как удобно нам и вы заполняйте, как удобно нам.

yakimoff 2012

А не проще сделать отдельное поле в котором в выпадающем списке можно будет выбирать ИП или что-то другое? А потом на сервере это уже будет подставляться куда надо.

Антон 2012

Я более того скажу — банк и так знает форму собственности, безо всяких выпадающих полей. При открытии счета ведь надо приносить копии документов из налоговой.