Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2011.08.14;
Скачать: [xml.tar.bz2];

Вниз

Delphi:Вывести в DBLookupComboBox нужною строку столбца   Найти похожие ветки 

 
Lutdan ©   (2011-05-03 00:55) [0]

НА форме кнопки ДОБАВИТЬ, УДАЛИТЬ, ИЗМЕНИТЬ, СОХРАНИТЬ. При добавлении всё устраивает т.е. можно из выпадающего списка(Таблица1) выбрать "Единицу измерения массы" (кг,т) и добавить в другую таблицу (Таблица2). Но при изменении  в Таблице 2 записи хотелось бы, чтоб в DBLookupComboBox стояла нужная единица. 2 эти таблицы не связаны между собой по ID, просто от туда(Таблица1) текст добавляется в Таблицу2. Пробовал реализовать так при нажатии на кнопку ИЗМЕНИТЬ:
DataModule4.EDVES1.Locate("Naimenovanie",sDBEdit10.Text,[]);
EDVES1 - Таблица1;
sDBEdit10.Text - Единица измерения в Таблице 2.
Но такой способ не работает или у меня знаний не хватает.
P/S/ Нужно это, чтобы пользователь при изменении данных не сохранил пустоту или неправильную единицу.

Ещё вопросик
Хотелось бы в программе сделать резервную копию БД, ну и потом с возможностью восстановить. Как это можно реализовать?
Я вот думал скопировать просто MDB файл в заранее созданную папку и в имени ещё прибавить дату. Но вот как это реализовать затрудняюсь. Спасибо, тем кто поможет!


 
OW ©   (2011-05-03 09:53) [1]


> скопировать просто MDB файл

Они копируются так же как любой файл.


> в заранее созданную папку и в имени ещё прибавить дату

Перевод даты в строку, конкатенация строк, создание папки - что конкретно не ясно?


 
Cobalt ©   (2011-05-03 10:07) [2]

Для начала определись точно - как связаны эти две таблицы, каковы правила изменения этих таблиц.
Просто возьми листик и выпиши, словами опиши подробно:
Добавление, Изменение, Удаление строки в каждой таблице.


 
oldman ©   (2011-05-03 10:11) [3]

С [] поиграй. Похоже ты ищешь "name              ", а в таблице 1 "name     "


 
oldman ©   (2011-05-03 10:31) [4]


> sDBEdit10.Text


Если все завязано на список из другой таблицы, зачем DBEdit???


 
Lutdan ©   (2011-05-04 14:04) [5]

OW
Просто не знаю кода, как по кнопочке копировать файл))
oldman
В DBEdit выводится текст (например, КГ) и по этому тексту я перехожу на строчку из таблицы 2 через Locate.
Возможно он и переходит на строчку, но не отображаются в DBLookupComboBox.

Или как лучше сделать, чтобы при добавлении выпадал список Единиц измерения. Ну и соответственно как при изменении выводилась ранее сохранённая Еденица измерения, но с возможностью её поменять


 
Cobalt ©   (2011-05-04 15:13) [6]

Хмммм....
InplaceEditor?
Хотя намучаетесь потом раскладку клавиатуры переключать )))


 
Dennis I. Komarov ©   (2011-05-04 16:24) [7]


> Lutdan ©   (03.05.11 00:55) 

Ничерта не понятно...

> Я вот думал скопировать просто MDB файл

С открытой базой? Непойдеть...


 
Lutdan ©   (2011-05-04 23:11) [8]

Ну закрыть базу не проблема.


 
Lutdan ©   (2011-05-05 03:41) [9]

Попробую объяснить ещё раз:
Нужно как-то программно выбрать запись из DBLookupComboBox1 используя текст из sDBEdit10.

EDVES1 - Таблица1, где хранятся просто наименования ЕДиНИЦ ИЗМЕРЕНИЯ (КГ, т и т.д.);
sDBEdit10.Text - Единица измерения в Таблице 2.Создал этот эдит для того чтобы выбрать программно запись в DBLookupComboBox1 т.к. Таблицы не связаны .

СПАСИБО ЗА ВАШИ ОТВЕТЫ!


 
MonoLife ©   (2011-05-05 07:37) [10]

не понятно зачем нужен sDBEdit...


// DBLookupComboBox.ListField= Таблица1.<field>
// DBLookupComboBox.KeyField= Таблица1.<field>

if dataset.Locate("Naimenovanie", sDBEdit10.Text,[loCaseInsensitive, loPartialKey]) then
 DBLookupComboBox.KeyValue:=sDBEdit10.Text;


 
Lutdan ©   (2011-05-05 19:05) [11]

MonoLife
Огромное спасибо! Всё работает как часики!!!

Остался вопрос с копированием БД. Может у кого завалялся для примера код...


 
Amoeba_   (2011-05-05 19:45) [12]


> Остался вопрос с копированием БД. Может у кого завалялся
> для примера код...

В общих чертах такой:
ADOConnection1.CloseDataSets;
ADOConnection1.Connected := False;
try
 //Здесь пишем код копирования файл БД
finally
 ADOConnection1.Connected := True;
 //Далее здесь открываем таблицы
end;


 
Lutdan ©   (2011-05-06 00:47) [13]

Спасибо .. будем искать, как копирнуть файл.


 
Amoeba_   (2011-05-06 01:40) [14]


> Lutdan ©   (06.05.11 00:47) [13]
>
> Спасибо .. будем искать, как копирнуть файл.
>

А чего тут искать?
Есть ф-ии CopyFile и CopyFileEx
См. справку по этим API ф-иям



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2011.08.14;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.003 c
15-1302979210
KilkennyCat
2011-04-16 22:40
2011.08.14
Начинающим разработчикам систем с ARM-процессорами


15-1303830643
Kerk
2011-04-26 19:10
2011.08.14
IT-профессионал - это кто?


1-1261468556
Neket
2009-12-22 10:55
2011.08.14
GEO- компанент


1-1261153710
d@vinchi
2009-12-18 19:28
2011.08.14
Работа с кодаками G.XXX и протоколом RTP в Delphi?


15-1303303521
Дмитрий Тимохов
2011-04-20 16:45
2011.08.14
Delphi &amp; Excel 2007





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский