Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.58/89: Рейтинг темы: голосов - 89, средняя оценка - 4.58
0 / 0 / 0
Регистрация: 13.02.2010
Сообщений: 22

Работа с DBNavigator

19.03.2010, 11:52. Показов 17651. Ответов 26
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!
Помогите справиться с некотрыми вопросами:
Я использую для просмотра данных компоненты DBGrid, DBNavigator и меня это впролне устаивает.
Как при редактировании или вставке новой записи уберечь пользователя от неправильного ввода данных? Т. е. предупредить пользователя в случае ошибочного ввода значения в определенную ячейку таблицы. Для навигации я использую компонент dbNavigator. Кнопки dbNavigator не требуют программного кода. Подскажите, если усложнить логику некоторых кнопок Навигатора, как это сделать? И как можно поменять сообщение с англ. Яз. На русский во время удаления записи? (сообщение появляется при нажатии кнопки удаления на Навигаторе)
Заранее Спасибо.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
19.03.2010, 11:52
Ответы с готовыми решениями:

Работа с DBGrid и DBNavigator
Здравствуйте, я столкнулась с двумя маленькими, но серьезными проблемами. 1) В программе когда я включаю таблицу и двигаю курсор в...

DBNavigator
Здравствуйте. Такой вопрос. Имеется БД. В форме используется DBGrid и DBNavigator. Жму на кнопку в DBNavigatorе для добавления записи,...

DBNavigator
Ребята помогите пожалуйста. Делаю тест(анкетирование) как бодрое приложение(оформление, анимации ну как под современость). Использую как...

26
 Аватар для NemiroFFyo
70 / 70 / 3
Регистрация: 29.09.2009
Сообщений: 530
28.03.2010, 18:02
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от anna_fors Посмотреть сообщение
Там по прежнему этот проклятый тип висит.
в каком плане висит?))
Цитата Сообщение от anna_fors Посмотреть сообщение
Помогите разобраться..
нечего тут разбираться - создаете пустой проект, кидаете, query datasource навигатор и грид. Все это подключаете к своей таблице и сморите как работае.
0
0 / 0 / 0
Регистрация: 13.02.2010
Сообщений: 22
28.03.2010, 18:21  [ТС]
нечего тут разбираться - создаете пустой проект, кидаете, query datasource навигатор и грид. Все это подключаете к своей таблице и сморите как работае.
Это не вариант. А если я переделываю проект, и просто его дорабатываю, и там могут быть связанные таблицы. Поэтому я и спрашиваю, можно как то убрать ошибку, которая появилась после внесенных изменений над таблицей? Есть другие варианты???
0
 Аватар для NemiroFFyo
70 / 70 / 3
Регистрация: 29.09.2009
Сообщений: 530
28.03.2010, 18:38
anna_fors, а какие могут быть варианты? тупа садитесь... и просматриваете все что каким либо боком касается данного поля. Аналогичто прослеживаете правильность связей таблиц, впрочем тут проблем возникнуть не должно ибо это поле вероятнее всего не ключевое.
0
15 / 15 / 1
Регистрация: 30.03.2010
Сообщений: 47
30.03.2010, 15:04
Цитата Сообщение от anna_fors Посмотреть сообщение
Поэтому я и спрашиваю, можно как то убрать ошибку, которая появилась после внесенных изменений над таблицей?
Как правило, не вариант - это внесение изменений в таблицу. С ней может работать не один модуль не одной программы, и вот такое вот изменение типа в базе приводит к необходимости править все куски, работающие с этим полем. И очень сильно повезет, если все эти куски будут хотябы известны. Вобщем, никогда так не делайте.

BigInt и TLargeintFielD - это int64, текст в него можно сконвертить функцией StrToInt64(). Для присвоения значения полю не обязательно явно указывать его тип, можно использовать FieldByName().Value:

Delphi
1
DataMOdule2.ADOTable_PDDn.FieldByName('Kol').Value:= StrToInt64(Edit3.Text);

Другой вопрос касательно ДБНавигатора... Как можно заставить его НЕ делать то, что он делает? Точнее: данные в грядку отбираются запросом из двух таблиц. В первую по ID подтягивается инфа из справочника. Попытка удалить строку в грядке через навигатор приводит к удалению нужной строки из таблицы и прикрученной к ней по ИДу строки из справочника. Надо как-то поймать команду Навигатора на удаление и отменить её, чтобы потом можно было руками выпилить запись только из нужной таблицы. Хэлп...
1
0 / 0 / 0
Регистрация: 13.02.2010
Сообщений: 22
30.03.2010, 17:23  [ТС]
THTP, Вы меня очень выручили благодаря подробному ответу. Я уже и не надеялась услышать что-то подобное. А сама буду внимательней..

Добавлено через 23 минуты
А еще не подскажите: а какими функциями воспользоваться для перевода в текст в случае испльзования таких полей как TBSDField? В СУБД оно описывается типом money.
0
57 / 57 / 10
Регистрация: 27.02.2010
Сообщений: 282
30.03.2010, 19:31
CurrToStr Переводит тип Currency в строку
0
0 / 0 / 0
Регистрация: 18.01.2010
Сообщений: 27
18.12.2010, 15:45
подскажите, как заставить навигатор управлять 2-3 таблицами? с первой табл проблем нет, но при добавлении записей во вторую таблицу выдается ошибка
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.12.2010, 15:45
Помогаю со студенческими работами здесь

DBNavigator
Всем Привет! Использую DBNavigator и DBGrid для записи в базу данных. Хотелось бы, чтобы при нажатии на кнопку Post, фиксация новой...

Удаление DBNavigator
Всем привет. Появилась нужда в стандартном навигаторе, при удалении "-" вылетает дефолтное диалоговое окно "Delete record?"....

GBGridEh DbNavigator
Есть связка компонентов ADOQUERY + DataSetProviderEh + MemTableEh + DataSource. при добавлении новых данных в БД Access все проходит...

DbGrid dbnavigator БД
Подгружаю базу с файла .FDB Все отображается. Кнопки функционируют нормально. Как сделать, что бы то что я отредактировал этим...

DBNavigator и 3 DBGrid
Вот как перемещаться с помощью одного DBNavigator сразу по нескольким DBGrid-ам?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
27
Ответ Создать тему
Новые блоги и статьи
[golang] Двоичная куча, min-heap
alhaos 20.05.2026
Двоичная куча Двоичная куча — структура данных, которая всегда держит самый важный элемент наготове. Представьте очередь к хилеру в игре, и очередь из игроков в приоритете те у кого меньше. . .
[golang] Breadth-First Search
alhaos 19.05.2026
BFS (Breadth-First Search) — это базовый алгоритм обхода графа в ширину, который поуровнево исследует все связанные вершины. Он начинает с выбранной точки и проверяет всех соседей, прежде чем. . .
[golang] Алгоритм «Хак Госпера»
alhaos 17.05.2026
Алгоритм «Хак Госпера» Хак Госпера (Gosper's Hack) — алгоритм нахождения следующего по величине числа с тем же количеством установленных бит. Придуман Биллом Госпером в 1970-х, опубликован в. . .
Рисование бинарного древа до 6-го колена на js, svg.
russiannick 17.05.2026
<svg width="335" height="240" viewBox="0 0 335 240" fill="#e5e1bb"> <style> <!]> </ style> <g id="bush"> </ g> </ svg> function fn(){ let rost;/ / высота древа let xx=165,yy=210,w=256;
FSharp: interface of module
DevAlt 16.05.2026
Интерфейс модуля F# позволяет управлять доступностью членов, содержащихся в реализации модуля. По-умолчанию все члены модуля доступны: module Foo let x = 10 let boo () = printfn "boo" . . .
Хитросплетение родственных связей пантеона греческих богов.
russiannick 14.05.2026
Однооконник, позволяющий узреть и изучить отдельных героев древней Греции. <!DOCTYPE html> <html lang="ru"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible". . .
[golang] Угол между стрелками часов
alhaos 12.05.2026
По заданным значениям часа и минуты необходимо определить значение меньшего угла между стрелками аналогового циферблата часов. import "math" func angleClock(hour int, minutes int) float64 { . . .
Debian 13: Установка Lazarus QT5
ВитГо 09.05.2026
Эта инструкция моя компиляция инструкций volvo https:/ / www. cyberforum. ru/ blogs/ 203668/ 10753. html и его же старой инструкции по установке Lazarus с gtk2. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru