Заявка в 1s и деление на нула
Занимавайки се с един от проектите 1s, попаднах на един отчет, в който имаше много колони с изчислени данни въз основа на други колони; в една от клетките фразата „Делене на 0“ привлече вниманието ми. Наистина, поради липсата на знаменател, се получи деление на нула. Който и да е програмирал доклада, не е предвидил този обрат на събитията. Пример от друг репортаж на снимката:
Разглеждайки кода, открих, че field1 е изчислено с помощта на схемата за съставяне на данни в раздела за изчислени полета, което, ако няма данни в желаната колона, води до съобщението.
По принцип това се третира чрез проверка за нула с помощта на конструкцията:
Тази конструкция може да се използва като в заявка:
Така че в раздела с изчислени полета
Резултатът ще бъде същият.
Когато попитах защо не ме помолят да го направя отново, те ми казаха, че са си направили отчет, така че това съобщение да не се показва. Оказва се, че са направили следното: задали са правило в условния раздел. Че когато знаменателят беше равен на нула, текстът в колоната беше заменен с интервал, така че изходът на съобщението за деление на нула беше потиснат и отчетът изглеждаше правилен.
Просто и ефективно. Изправени пред това, неволно си мислите, че някои потребители знаят повече от онези „програмисти“, които наемат.