|
91 / 47 / 8
Регистрация: 08.10.2008
Сообщений: 445
|
||||||||||||||||||||||||||||||||||||||||
Delphi 6-7 Интересное значение filter11.06.2018, 14:04. Показов 1548. Ответов 15
Метки нет (Все метки)
Всем привет! Начал разбираться с базами данных на Delphi 7 и столкнулся с одной интересной особенностью значения filter.
Имеется таблица в MS Access:
В дельфи на форму добавлены ADOTable, DataSource, DBGrid и Button. Все подключения настроены. В DBGrid отображается таблица. Далее код по удалению строки из таблицы:
Далее сделал так:
А теперь вопрос: куда передается строка
0
|
||||||||||||||||||||||||||||||||||||||||
| 11.06.2018, 14:04 | |
|
Ответы с готовыми решениями:
15
MixItUp: применить к селектору значение data-filter что бы работало как кнопка.
ИНТЕРЕСНОЕ)) |
|
Модератор
|
||
| 11.06.2018, 14:23 | ||
Сообщение было отмечено SashaRasha как решение
Решение
SashaRasha, прочитайте, что такое фильтр в таблицах БД и как он применяется...
Надеюсь, после этого Вы поймете, какую ерунду тут написали:
1
|
||
|
91 / 47 / 8
Регистрация: 08.10.2008
Сообщений: 445
|
||
| 11.06.2018, 14:49 [ТС] | ||
|
Добавлено через 15 минут Все, понял. Это синтаксис фильтрации таблиц в БД.
0
|
||
|
91 / 47 / 8
Регистрация: 08.10.2008
Сообщений: 445
|
|
| 11.06.2018, 14:50 [ТС] | |
|
Я немного вас опередил)
0
|
|
|
1076 / 989 / 340
Регистрация: 07.08.2012
Сообщений: 2,790
|
||||||
| 11.06.2018, 14:59 | ||||||
|
Непонятно, зачем нужна фильтрация при удалении строки из таблицы...
В принципе, весь код для удаления, выбранной в гриде строки, состоит лишь из следующей конструкции:
0
|
||||||
|
91 / 47 / 8
Регистрация: 08.10.2008
Сообщений: 445
|
||
| 11.06.2018, 15:04 [ТС] | ||
|
0
|
||
|
1076 / 989 / 340
Регистрация: 07.08.2012
Сообщений: 2,790
|
||
| 11.06.2018, 15:18 | ||
|
К тому же, в коде ясно показано, что после установки фильтра идет позиционирование на последнюю запись отфильтрованного набора данных и только потом идет удаление этой последней строки. И, главное, с помощью метода Delete невозможно за один раз удалить несколько строк. Как правило, удаление нескольких строк из таблицы бывает не только как редкое исключение, но для этого применяют SQL запрос. А эта горотьба с фильтром при удалении, который затем, после удаления строк, нужно еще и снять, вещь для пользователя весьма неудобная.
1
|
||
|
91 / 47 / 8
Регистрация: 08.10.2008
Сообщений: 445
|
|||||||
| 11.06.2018, 15:57 [ТС] | |||||||
|
Добавлено через 13 минут вот он:
0
|
|||||||
|
1076 / 989 / 340
Регистрация: 07.08.2012
Сообщений: 2,790
|
||||||
| 11.06.2018, 16:16 | ||||||
|
Лучше не брать у дилетантов коды - себе дороже.
Вся эта "нетленка", из которой скопирована фильтрация при удалении превращается в небольшой код:
И получается, что фильтр вообще здесь ни причём. А в случае удаления строки из одной таблицы даже Locate не нужен, т.к. выбранная для удаления строка уже та которая и требуется.
1
|
||||||
|
91 / 47 / 8
Регистрация: 08.10.2008
Сообщений: 445
|
|
| 11.06.2018, 16:29 [ТС] | |
|
0
|
|
|
1076 / 989 / 340
Регистрация: 07.08.2012
Сообщений: 2,790
|
|
| 11.06.2018, 16:39 | |
|
Если может встретиться несколько одинаковых значений в поле, то да, можно применить и этот кондовый прием.
Довольно забавный, но работающий. Удачи! Вначале не увидел цикла while, отсюда и дискуссия.
1
|
|
|
91 / 47 / 8
Регистрация: 08.10.2008
Сообщений: 445
|
|
| 13.06.2018, 11:22 [ТС] | |
|
Ребята, я все же не пойму. Куда передается chislo= '77' ? И как в самом access можно искать с помощью этого? Понятно, что это работает и ищет то, что нужно, но как?
0
|
|
|
91 / 47 / 8
Регистрация: 08.10.2008
Сообщений: 445
|
||||||
| 13.06.2018, 14:55 [ТС] | ||||||
|
Но там числовое значение
Сейчас по быстрому накидал программку
Проект Delphi 7, если понадобится:filter.rar Возможно придется перенастроить свойство ConectionString компонента ADOTable1.
0
|
||||||
|
|
|
| 13.06.2018, 15:09 | |
|
вы можете считать, что запрос выполняется внутри вашего датасета силами делфи
от этого его формат ничуть не меняется и вы можете смело думать про фильтр как SQL выражение WHERE
1
|
|
| 13.06.2018, 15:09 | |
|
Помогаю со студенческими работами здесь
16
Интересное предложение Интересное уравнение
интересное меню интересное наблюдение Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2.
Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники".
В. . .
|
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии.
. . .
|
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
|
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут.
https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc
Первый документ красиво выглядит, но без схемы.
Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
|
|
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере".
Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
|
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти".
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
В качестве источника данных. . .
|
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер
Написал заготовку:
dotnet new console --aot -o UrlHandler
var items = args. Split(":");
var tag = items;
var id = items;
var executable = args;. . .
|
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3.
Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
|