Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.10.2016, 00:33   #1
eXzmos
Пользователь
 
Регистрация: 21.10.2016
Сообщений: 21
По умолчанию Подключение базы данных Access к проекту...

Здравствуйте... Прошу помощи разобраться и помочь мне, надеюсь на помощь опытного человека... Я в этом не силен, так сказать новичек и только учусь... Программы писал и всякую всячину и тому подобное... А вот с базами я не работал вообще...Решил облегчить жизнь у себя на работе и чтоб не ковыряться в бумажками написать программу которая будет иметь в себе базу для хранения информации...
Так вот, ближе к сути... Так как я не обладаю знаниями с базами решил с икономить нервы и лишнее мучение и скачал исходник наполовину подходящий для меня, ура обрадовался, но не тут то было... Поля не подходят под мои нужды и пришлось редактировать)(лучше нет - это наилучший что мог скачать). Ладно отредактировал поля и интерфейс, все работает замечательно.. База написана типо под школу, поля не устраивали и я взялся за редактирование базы... скачал программу - открыл базу, и две таблицы отредактировал, внеся изменения в поля и переименовав написанное... третью оставил без изменения она устраивала и подходит под справочник так и осталась без ищменения... Проверил базу, норм, проверил подключение и вызов ее, норм... Закрыл программу сохранив изменения... Захожу в дельфи, послетали в свойствах Табл - актив, начал активировать.. Тот что остался без изменения активировал и база высветилась в поле редактора, а остальные не активируются и пишут (FanucTable: Field 'Фамилия' not found... И так из две которые не включаются и не отображают, они и есть редактированные... Я так понял то что он спрашивает фамилия это от старого осталось, там была эта надпись но я ее переименовал под свое слово (должна быть 'программа' )...
Подскажите люди добрые как избавиться и решить эту проблему, как заставить видеть таблицу из базы с моими надписями... В чем секрет или что я не так делал!????
Если что то нужно для разбритательств то я скину, только скажите что вам нужно чтоб вы увидели и поняли....
Изображения
Тип файла: jpg IMG_20161021_002116.jpg (123.4 Кб, 125 просмотров)
eXzmos вне форума Ответить с цитированием
Старый 21.10.2016, 10:43   #2
kropotkina-alice
Форумчанин
 
Аватар для kropotkina-alice
 
Регистрация: 27.10.2014
Сообщений: 594
По умолчанию

А зачем базу "редактировать"?
Если уж так хочется иметь столбцы с названиями на русском языке, то для этого есть свойство DBGrid.Columns[i].Title.Caption...
А русские наименования полей в самой базе... это нонсенс...
Кроме того, чтобы получить доступ к полям таблицы, надо:
- либо обращаться к ним так - Table1.FieldByName('имя_поля');
- либо активировать список полей (даблклик по TTable, потом правая мышка и "AddAllFields") и обращаться тогда можно Table1имя_поля...

Тогда "Field not found" будет только если такого поля и в самом деле нет
Плюс ко всему - еще неизвестно, что вы там "наредактировали" в структуре БД...

Последний раз редактировалось kropotkina-alice; 21.10.2016 в 10:46.
kropotkina-alice вне форума Ответить с цитированием
Старый 21.10.2016, 13:51   #3
eXzmos
Пользователь
 
Регистрация: 21.10.2016
Сообщений: 21
По умолчанию

Здравствуй kropotkina-alice ...
Спасибо огромное за помощь...
Блин в свойствах табл я не добавил и не поменял филды... Теперь все работает на окей... Спасибо вам огромное за помощь... Я так 2 дня искал в чем причина и не мог сообразить где собачка спрятана... Блин аж стыдно за такую глупую оплошность, я базу редактировал из ща того что полей не хватало и не таким образом были подписаны...
Скажем так, я писал программу для работы под веление отчетности документов хранящихся в базе (на бумаге это не удобно) особенно когда их свыше уже 754 экзепляров. А в программе проще найти нужную бумажку и быстро приступить к работе (мы на сделке) программа для хранения черчежей и номенклатур к программам, и когда начинаешь искать их среди бумажек это превращается в поиск не изведанного...
теперь можно найти любую информацию за считанные минуты...
редактировал базу (она была сделана под школу, брал готовую) но поля не подходили по причине не соотвествующего поля, поля были "имя, фамилия, клас, и тому подобное" а у меня "программа, наименование, номенклатура, операция, трудоемкость, время, станок, и еще несколько полей"...
теперь все работает и огромное спасибо вашему вниманию и помоще...
Спасибо вам огромное.....
eXzmos вне форума Ответить с цитированием
Старый 21.10.2016, 14:22   #4
come-on
Участник клуба
 
Регистрация: 21.10.2015
Сообщений: 1,361
По умолчанию

Цитата:
А русские наименования полей в самой базе... это нонсенс...
ну что такое говорите? ерунда же полная, нет никакой разницы какой язык
другое дело что их делать как название колонок в ГУИ не есть хорошо, мухи отдельно катлеты сабакам
come-on вне форума Ответить с цитированием
Старый 22.10.2016, 13:12   #5
eXzmos
Пользователь
 
Регистрация: 21.10.2016
Сообщений: 21
По умолчанию

Здравствуйте... Помогите еще с одной трудностью...
Хочу реализовать передачу файла на USB флэш карту...
Скажем так, есть столбцы : программа, наименование, инвентаризационный номер чертежа, и т. д.
внизу идут поля записей наших номенклатур...
так вот, при фокусе на определенное поле и клике правой мыши на нем открывается меню и внем выбор отправить на флэш... Он в свою очередь ищет внутренней папке, ищет совпадение с названием файла записанное в данном поле (напримел О0003) и при совпадение отправлял на плешку файл иначе, сообщение такого файла не существует...
И еще, при ставке флэшки он сканировал ее на наличие файлов на ней, сравнивал файлы с флэш с файлами в папке и при не совпадении имен копировал те файлы в папку с программой, писал сообщение в котором сообщается сколько скопировано или наоборот что данные отсутствуют...

вообще можно такое реализовать!?
помогите с кодом, исходников не нашел в гугле, а по тому что на некоторых ресурсах написано оно не подходит и не то выполнение...
eXzmos вне форума Ответить с цитированием
Старый 22.10.2016, 14:45   #6
kropotkina-alice
Форумчанин
 
Аватар для kropotkina-alice
 
Регистрация: 27.10.2014
Сообщений: 594
По умолчанию

1. Индикация вставки флэшки:
Код:
  private
    procedure WMDeviceChange(var Msg: TMessage);
    message WM_DEVICECHANGE; 
...
procedure TForm1.WMDeviceChange(var Msg: TMessage);
begin
ShowMessage('Помогите! В меня вставили флэшку!');
end;
2. Получение списка логических дисков:
Код:
var
ld : DWORD;
i : integer;
begin
ld := GetLogicalDrives;
for i := 0 to 25 do begin
if (ld and (1 shl i)) <> 0 then
Memo1.Lines.Add(Char(Ord('A') + i) + ':\');
end;
Memo1.Lines.Add('');//просто для разделения списков до и после:)
end;
3. Получение списка файлов с подкаталогами:
Код:
procedure ScanDir(StartDir: string; Mask:string; List:TStrings);
var
SearchRec : TSearchRec;
begin
if Mask = '' then Mask := '*.*';
if StartDir[Length(StartDir)] <> '\' then StartDir := StartDir + '\';
if FindFirst(StartDir+Mask, faAnyFile, SearchRec) = 0 then
begin
repeat
Application.ProcessMessages;
if (SearchRec.Attr and faDirectory) <> faDirectory then
List.Add(StartDir + SearchRec.Name)
else if (SearchRec.Name <> '..') and (SearchRec.Name <> '.') then
begin
List.Add(StartDir + SearchRec.Name + '\');
ScanDir(StartDir + SearchRec.Name + '\',Mask,List);
end;
until FindNext(SearchRec) <> 0;
FindClose(SearchRec);
end;
end;

//Вызов:
begin
ListBox1.Items.Clear;
ScanDir('c:','',ListBox1.Items);
//буковку ставим ту, которая появилась в списке дисков
end;
Ну вот вроде бы и все, что нужно для решения проблемы...
kropotkina-alice вне форума Ответить с цитированием
Старый 22.10.2016, 15:33   #7
eXzmos
Пользователь
 
Регистрация: 21.10.2016
Сообщений: 21
По умолчанию

kropotkina-alice, спасибо вам огромное за помощь... В первом пункте вставка флэшки, я пробывал эту функцию.. Она рабочая... но есть проблемка в том, что она циклирует... тоесть, один раз вставил флэшку, а он у меня высвечивает от 5 до 7 окон сообщений... это немного неудобно при каждый раз когда вставляешь флэшку...
А можно зделать так, вставил флэшку, на своей программе я нажал отправить, и файл ушел сам на эту карту...
Я просто не пойму как это реализовать чтоб он видел только ее без выбора, даже можно если по ее серийнику(будет лучше даже) чтоб другие не тыкали...
Не подбросите кусок кода как это реализовать... Заранее огромное спасибо...
eXzmos вне форума Ответить с цитированием
Старый 22.10.2016, 16:46   #8
kropotkina-alice
Форумчанин
 
Аватар для kropotkina-alice
 
Регистрация: 27.10.2014
Сообщений: 594
Восклицание

Вы, похоже, поиском пользоваться не умеете?
Вот полный проектик для определения серийника - GetFlashDiskSerial.zip

Далее.
Если вы надеетесь, что я буду делать программу вместо вас - вы глубоко заблуждаетесь...
Той информации, которую я вам дала, более чем достаточно, чтобы решить поставленную задачу.
Надо просто сесть и подумать, а не ждать готовый исходник.
Поверьте, вы получите огромный заряд положительных эмоций, когда самостоятельно (хотя бы и с чужими подсказками) решите задачу, которую вы себе поставили...

Цитата:
он у меня высвечивает от 5 до 7 окон сообщений
Используйте другое гнездо USB - возможно, что они у вас разболтаны.
И вообще - это проблема вашей ОС, а не кода - у меня такого дребезга нет...
Вложения
Тип файла: zip GetFlashDiskSerial.zip (9.5 Кб, 12 просмотров)

Последний раз редактировалось kropotkina-alice; 22.10.2016 в 16:49.
kropotkina-alice вне форума Ответить с цитированием
Старый 22.10.2016, 16:51   #9
eXzmos
Пользователь
 
Регистрация: 21.10.2016
Сообщений: 21
По умолчанию

kropotkina-alice, Спасибо огромное..
Нет писать я не прошу, иначе бы попросил...
Просто просил направление в нужную сторону...Поиском не скрываю пользоваться не умею... Иначе бы нашел, с утра сижу в нем, голова трещит и не чего не нашел... то что вы сверхе предложили я видел, но он коряво работает... Нашел другой, на апи, так там проблемы с драйверами.. Пишет не найдены всякие Dll, скачал запустил, теперь другие проблемы... Спасибо за помощь... Буду ковырять...
eXzmos вне форума Ответить с цитированием
Старый 22.10.2016, 19:17   #10
xxbesoxx
Участник клуба
 
Регистрация: 10.08.2010
Сообщений: 1,389
По умолчанию

Цитата:
eXzmos (FanucTable: Field 'Фамилия' not found... И так из две которые не включаются и не отображают, они и есть редактированные... Я так понял то что он спрашивает фамилия это от старого осталось, там была эта надпись но я ее переименовал под свое слово (должна быть 'программа' )...
Подскажите люди добрые как избавиться и решить эту проблему,
Fields надо пересоздать ! после переименование какой то поля , пересоздаем всё Fields
Изображения
Тип файла: jpg 1.jpg (117.1 Кб, 120 просмотров)
Тип файла: jpg 2.jpg (118.4 Кб, 120 просмотров)
Тип файла: jpg 3.jpg (119.5 Кб, 125 просмотров)
Тип файла: jpg 4.jpg (118.1 Кб, 128 просмотров)

Последний раз редактировалось xxbesoxx; 22.10.2016 в 19:22.
xxbesoxx вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подключение базы данных к проекту Вероника99 C/C++ Базы данных 1 22.12.2015 00:12
Подключение базы данных к проекту на C# No_Comments Помощь студентам 3 21.12.2012 16:13
Подключение базы Access OnCliCk.B БД в Delphi 2 28.06.2010 06:47
Подключение базы OpenOffice Base к проекту Visual C++ 2008 Camtasia Помощь студентам 1 26.02.2010 08:23
Открытие(подключение) уже существующей базы данных MS Access через ADO Moel БД в Delphi 7 24.10.2007 16:57