| |||
![]()
|
![]() ![]() |
![]()
Крою матом. Просто напрочь. Ох уж мне эти заказчики!!! Уходит от нас парнишка. Передаёт мне недописанный проект и ТЗ на доработку. Заверяет: "Там фигня одна осталась!" Ушёл. Дошли руки до недобитого проекта. Смотрю ТЗ. Правда фигня осталась. Выдежка (дослвно): "Если тип документа "счёт", а валюта, указанная в этом документе долл, евро, переводи в валюту тура по кроскурсу на день оплаты, который указан в в поле "дате получения" соответствующей проводке, которая находится по содержащейся в ней информации, а именно: № заказа из столбика 3 должен содержаться где-то в поле "№ заказа" в сканирующей программе и у них должны быть общие отправители." Я в шоке... Главное, так - 3 листа! Для программистов. "№ заказа" - поле типа NvarChar(4000) в SQL базе, в котором номера перечисленны через запятую. Хрен с ним, разобрался. Долго пытал заказчика, но разобрался. Написал. Потом долго пытал на предмет того, что такое "правильный кросскурс". Выпытал. Потом долго "искал ошибки". Что-то правил, но в большинстве случаев оказалось, что заказчик "в ТЗ немного недоговорил". (Ну например, написано, что если валюты 2 документов совпадают, то в отчёт выводится сумма, указанная в одном из них, иначе - см. выдежку выше. Ну я так и сделал - точка в точку. Только уточнил у заказчика, а что делать если нет в базе фигни, описанной в выдежке. Потом выяснилось, что заказчик имел в виду, что бы фигню из выдежки я всегда проверял. Ну и прочее.) В общем, закончил я отчёт. Ох тяжело он мне дался!!! И тут... Представляете. Отчёт строится на основе некой трёхмерной таблицы. Углубляться не буду, но скажу, что довольно сложная такая структура. И тут выясняется, что заказчик ЗАБЫЛ в ТЗ указать столбец. Нет, от ЗАБЫЛ!!! И на возражение, что теперь добавить его туды тяжко, заявляет: "Я так думаю, это не трудно! Чего тебе стоит ещё столбец нарисовать!" То, что половина ячеек вычисляемые, что мне нужно переписывать запросы и прочее, прочее, прочее. И, самое главное, я не представляю себе, как я этот столбец в структуру без потери производительности воткну, он не понимает! Не понимает! Ему кажется, что это так просто! Раз, и нарисовал столбец в отчёте! Вот так вот... Сижу и матерюсь.... А теперь для программистов. Прикол. То поле, которое мне нужно добавить в отчёт, является числовым, приведённым по курсу доллара. Ну, грубо говоря, там должно отображаться число, умноженное на другое число. Теперь аут. В БД в поле, откуда берутся данные... ИМЕЕТ ТИП NvarChar(4000) и содержатся записи типа "12,44 * 15,90", "12 + 34 *(55/11)"... Считай, Максик, считай... Вот так... БД строилась не мною, но на основе ТЗ того же заказчика... Слава Богу, уже почти всё сделал. И структуру в голове представил, и процедуры для вычисления значений в текстовых полях написал... Но, блин, когда заказчик вспоминает, что ему надо, в момент сдачи проекта, стольких нервов это стоит!!! Заказчики, будьте внимательны к программистам! Прошу вас! |
||||||||||||||
![]() |
![]() |