Как не отображать в гриде нулевые значения? | |
---|---|
rud Автор Сообщений: 640 Откуда: Москва Дата регистрации: 02.09.2000 |
Забыл, как сделать, чтобы нулевые значения в гриде не отображались
![]() |
Re: Как не отображать в гриде нулевые значения? | |
---|---|
Alsim Сообщений: 3627 Откуда: Екатеринбург Дата регистрации: 17.11.2004 |
Если в коде то
.column1.Format = [BZ] Если в самом гриде, то в нужной колонке Format Z ![]() |
Re: Как не отображать в гриде нулевые значения? | |
---|---|
PaulWist Сообщений: 14433 Дата регистрации: 01.04.2004 |
------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) ![]() |
Re: Как не отображать в гриде нулевые значения? | |
---|---|
rud Автор Сообщений: 640 Откуда: Москва Дата регистрации: 02.09.2000 |
Спасибо
![]() |
Re: Как не отображать в гриде нулевые значения? | |
---|---|
of63 Сообщений: 24232 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
NullDisplay не про "ноль" (пусто), а именно про NULL...
![]() |
Re: Как не отображать в гриде нулевые значения? | |
---|---|
PaulWist Сообщений: 14433 Дата регистрации: 01.04.2004 |
Ааа, вот я тормоз, действительно вопрос про нОль.
![]() ------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) ![]() |
Re: Как не отображать в гриде нулевые значения? | |
---|---|
sphinx Сообщений: 30463 Откуда: Каменск-Уральски Дата регистрации: 22.11.2006 |
Пашк, ты бы знал как я торможу порой. Или часто. Все норм.
![]() ------------------ "Veni, vidi, vici!"(с) ![]() |
Re: Как не отображать в гриде нулевые значения? | |
---|---|
_vit Сообщений: 5116 Дата регистрации: 29.07.2002 |
Ноль не пусто. Пусто - NULL. ![]() |
Re: Как не отображать в гриде нулевые значения? | |
---|---|
akvvohinc Сообщений: 3930 Откуда: Москва Дата регистрации: 11.11.2008 |
Пусто - EMPTY (по версии гугла и прочих словарей). Значит, именно этой функцией надо проверять на пустоту. ![]() ? EMPTY(null) && .F. ![]() |
Re: Как не отображать в гриде нулевые значения? | |
---|---|
_vit Сообщений: 5116 Дата регистрации: 29.07.2002 |
Ну да есть такая функция.
Ведет себя таким образом. В каких-то случаях это поведение рационально. Какое значение в колонке SomeVal пустое?
[attachment 36580 cur3.jpg] ![]() |
Re: Как не отображать в гриде нулевые значения? | |
---|---|
akvvohinc Сообщений: 3930 Откуда: Москва Дата регистрации: 11.11.2008 |
Все подобные вопросы не помогут - надо просто знать, что именно хочет ТС. ![]() А хочет он сделать так: Так зачем нам выяснять, что такое "пустое"? ![]() А кто-то считает, что когда в корзине ноль яблок, то она пуста. ![]() Мне же значение Null привычнее "переводить" не как "пусто", а как "неизвестно сколько, не задано, нет данных" (n/a - not applicable). Исправлено 1 раз(а). Последнее : akvvohinc, 29.05.23 01:04 ![]() |
Re: Как не отображать в гриде нулевые значения? | |
---|---|
Владимир Максимов Сообщений: 14041 Откуда: Москва Дата регистрации: 02.09.2000 |
Если пошел разговор "за жизнь", то конкретно для FoxPro, если для хранения числа используется поле типа Numeric, то можно "стереть" ноль командой
BLANK Это фича FoxPro, связанная с тем, что физически, поля типа Numeric хранятся как обычный текст. Т.е. число 0 так напрямую как символ "0" в таблице и хранится. Команда Blank заменит символ "0" на символ пробела. Визуально, такое значение в Grid и будет выглядеть как "пустое значение" Но с полями, где числа хранятся не как символьные строки (Integer, Currency, Double) этот фокус уже не пройдет. Тут только Format = "Z" ![]() |
Re: Как не отображать в гриде нулевые значения? | |
---|---|
_vit Сообщений: 5116 Дата регистрации: 29.07.2002 |
И может ошибаться. ![]() Пусто это значит ничего нет. Если "нет данных" не означает пусто, то что значит пусто в контексте данных? ![]() |
Re: Как не отображать в гриде нулевые значения? | |
---|---|
akvvohinc Сообщений: 3930 Откуда: Москва Дата регистрации: 11.11.2008 |
Цитата:"Пусто" - это просто слово. А что оно означает, зависит от контекста. ![]() В моем предыдущем примере корзина пуста, если в ней нет яблок (0 штук) и это нам точно известно, а груш и чего-либо ещё там не может быть в принципе (корзина для яблок!). А если я не знаю, сколько в корзине яблок (n/a), то записываю в поле Null. Одновременно этот Null правильно сообщает, что корзину нельзя назвать пустой (EMPTY(null) - ложь). А если бы в Фоксе была функция NONEMPTY(), то, надеюсь, она бы тоже возвращала ложь при Null. ![]() (А для кого-то "в кармане пусто", если там менее 100 тыс.руб. ![]() Разработчики Фокса решили, что это "ноль" для числовых данных и т.п. в соответствии с работой функции EMPTY(). Исправлено 1 раз(а). Последнее : akvvohinc, 30.05.23 01:47 ![]() |
Re: Как не отображать в гриде нулевые значения? | |
---|---|
DmitryKn Сообщений: 276 Дата регистрации: 06.04.2022 |
А если в корзине есть яблоки, и это нам точно известно ( 0 как частный случай), но неизвестно сколько, это разве NULL ? Это скорее Х какой-то. Если верить гуглу в корзинке NULL когда ее только сплели и еще не решили, яблоки тут будут или груши, или песок. Или после яблок решаем, для чего сейчас будет. Исправлено 1 раз(а). Последнее : DmitryKn, 02.06.23 14:24 ![]() |
Re: Как не отображать в гриде нулевые значения? | |
---|---|
akvvohinc Сообщений: 3930 Откуда: Москва Дата регистрации: 11.11.2008 |
При чем здесь Гугл, если я постановщик задачи и сам решаю, что в ней будет означать Null? ![]() В моей задаче есть только корзины для яблок, их много и они разные (вес, объем, материал, цвет и т.п.) - таблица корзин для яблок. И в каждой из них может находиться некоторое количество яблок в некоторый момент времени (таблица количеств яблок в корзинах во времени): Id, DateTime, Quantity Значение Null в поле Quantity этой таблицы и означает, что я не знаю, сколько яблок находится в корзине Id в момент времени DateTime. А значение 0 означает, что эта корзина в это время была пуста. (можете убрать слово "яблоки" из моей задачи - а оставить "просто корзины" и сохранить все остальные поля. Тогда под количеством будем понимать "любые предметы в штуках"). Ну, чему-то же будет равен X в вашей таблице? До появления Null так и приходилось делать - либо выдумывать некоторое значение, которое заведомо не должно встретиться в исходных данных, либо использовать дополнительное, например, логическое поле, показывающее "неизвестность значения". Разработчики Фокса, естественно, выбрали второй путь, добавляя в таблицу служебное "невидимое" поле (_NullFlags типа "0") при наличии хотя бы одного Null-поля в таблице. И при заполнении Null-поля значением Null само значение остается без изменений, а бит в поле _NullFlags, отвечающий за это Null-поле таблицы, возводится в 1. Так что при необходимости можно и восстановить прежнее значение поля после его "нуллификации" (правда, штатных средств для этого я не знаю). ![]() |
Re: Как не отображать в гриде нулевые значения? | |
---|---|
DmitryKn Сообщений: 276 Дата регистрации: 06.04.2022 |
Ну вот только соберешься порассуждать о природе пустоты, даосизме, королях и капусте, как сразу - я сам решаю ... ![]() |
© 2000-2023 Fox Club  |