-Поиск по дневнику

Поиск сообщений в rss_sql_ru_access_programming

 -Подписка по e-mail

 

 -Постоянные читатели

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 16.03.2006
Записей:
Комментариев:
Написано: 4

Invalid link!








Добавить любой RSS - источник (включая журнал LiveJournal) в свою ленту друзей вы можете на странице синдикации.

Исходная информация - http://www.sql.ru/forum/actualtopics.aspx?bid=4.
Данный дневник сформирован из открытого RSS-источника по адресу http://www.sql.ru/forum/actualrss.aspx?id=4, и дополняется в соответствии с дополнением данного источника. Он может не соответствовать содержимому оригинальной страницы. Трансляция создана автоматически по запросу читателей этой RSS ленты.
По всем вопросам о работе данного сервиса обращаться со страницы контактной информации.

[Обновить трансляцию]

Линковка DBF файла к базе

Воскресенье, 04 Ноября 2018 г. 08:17 + в цитатник
После автоматической линьковки файла xxx.dbf к базе,
    With CurrentDb
        Set TB = .CreateTableDef(TABLE_NAME)
        TB.Connect = "dBase 5.0;DATABASE=" & FOLDER & "\"
        TB.SourceTableName = TABLE_NAME
        .TableDefs.Append TB
    End With


в списке таблиц данная таблица не видна.
И, только после перезагрузки программы, данная таблица появляется в списке объектов базы.
Какую команду необходимо подать программно, что бы обновить список прилинькованных таблиц?
------------------------------------------------------------------------
Спасибо за ответ.

https://www.sql.ru/forum/1304866/linkovka-dbf-fayla-k-baze


Линковка DBF файла к базе

Воскресенье, 04 Ноября 2018 г. 08:17 + в цитатник
После автоматической линьковки файла xxx.dbf к базе,
    With CurrentDb
        Set TB = .CreateTableDef(TABLE_NAME)
        TB.Connect = "dBase 5.0;DATABASE=" & FOLDER & "\"
        TB.SourceTableName = TABLE_NAME
        .TableDefs.Append TB
    End With


в списке таблиц данная таблица не видна.
И, только после перезагрузки программы, данная таблица появляется в списке объектов базы.
Какую команду необходимо подать программно, что бы обновить список прилинькованных таблиц?
------------------------------------------------------------------------
Спасибо за ответ.

http://www.sql.ru/forum/1304866/linkovka-dbf-fayla-k-baze


Описание событий подформы

Суббота, 03 Ноября 2018 г. 13:05 + в цитатник
всем добрый день.

может кто знаком с вопросом. не могу понять как сделать вот какую штуку. Есть форма frm1, на ней есть подформа ufrmТаблица, в которой в качестве источника стоит таблица, в которую вносятся данные. Есть необходимость исполнят определенный код при переходе от одной записи подчиненной таблицы к другой.
Как я понимаю назначить событие можно так
Me.ufrmТаблица.Form.OnCurrent = "[Процедура обработки событий]"


а как и где прописать саму процедуру, то есть в этом же модуле (модуле основной формы) или в отдельном внешнем модуле? как обозначить данную процедуру, то есть как задать имя процедуры формата ПОДФОРМА_Current()?
и реально ли это в принципе, то есть будет ли событие Current случаться при переходе по строкам подформы?

заранее благодарствую за подсказки

https://www.sql.ru/forum/1304844/opisanie-sobytiy-podformy


Описание событий подформы

Суббота, 03 Ноября 2018 г. 13:05 + в цитатник
всем добрый день.

может кто знаком с вопросом. не могу понять как сделать вот какую штуку. Есть форма frm1, на ней есть подформа ufrmТаблица, в которой в качестве источника стоит таблица, в которую вносятся данные. Есть необходимость исполнят определенный код при переходе от одной записи подчиненной таблицы к другой.
Как я понимаю назначить событие можно так
Me.ufrmТаблица.Form.OnCurrent = "[Процедура обработки событий]"


а как и где прописать саму процедуру, то есть в этом же модуле (модуле основной формы) или в отдельном внешнем модуле? как обозначить данную процедуру, то есть как задать имя процедуры формата ПОДФОРМА_Current()?
и реально ли это в принципе, то есть будет ли событие Current случаться при переходе по строкам подформы?

заранее благодарствую за подсказки

http://www.sql.ru/forum/1304844/opisanie-sobytiy-podformy


Помогите с Iif и операторы сравнения >0

Суббота, 03 Ноября 2018 г. 12:45 + в цитатник
Здравствуйте! Я вроде не лентяй и погуглил и полопатил форум прежде чем задать свой чайниковский вопрос. Проблема какая-то дурацкая - не могу понять почему не работает Iif с оператором сравнения внутри >10000. Вот пример и база во вложении
SELECT tbl_source.DATE_RCV, tbl_source.SUMPRICE
FROM tbl_maindata INNER JOIN tbl_source ON tbl_maindata.IDOWNER = tbl_source.IDSELLER
WHERE (((tbl_source.SUMPRICE)=IIf([tbl_maindata].[STAT]=Yes,[tbl_source].[SUMPRICE]>10000)));

Запрос работает, но зараза не дает результат! Если просто поставить условие >10000, то всё нормуль! Как так? Я из найденного смог только попробовать вставить SELECT внутрь Iif и тоже не помогло

https://www.sql.ru/forum/1304843/pomogite-s-iif-i-operatory-sravneniya-0


Помогите с Iif и операторы сравнения >0

Суббота, 03 Ноября 2018 г. 12:45 + в цитатник
Здравствуйте! Я вроде не лентяй и погуглил и полопатил форум прежде чем задать свой чайниковский вопрос. Проблема какая-то дурацкая - не могу понять почему не работает Iif с оператором сравнения внутри >10000. Вот пример и база во вложении
SELECT tbl_source.DATE_RCV, tbl_source.SUMPRICE
FROM tbl_maindata INNER JOIN tbl_source ON tbl_maindata.IDOWNER = tbl_source.IDSELLER
WHERE (((tbl_source.SUMPRICE)=IIf([tbl_maindata].[STAT]=Yes,[tbl_source].[SUMPRICE]>10000)));

Запрос работает, но зараза не дает результат! Если просто поставить условие >10000, то всё нормуль! Как так? Я из найденного смог только попробовать вставить SELECT внутрь Iif и тоже не помогло

http://www.sql.ru/forum/1304843/pomogite-s-iif-i-operatory-sravneniya-0


Измение источника поля таблицы

Суббота, 03 Ноября 2018 г. 11:00 + в цитатник
всем добрый день.

подскажите, реально ли изменять программно свойства полей таблицы? в частности интересует реально ли изменить источник поля таблицы. получил список свойств поля таблицы через ADOX, не нашел нужного свойства. Есть еще способы обратиться к свойствам полей?

Спасибо за ответ.

http://www.sql.ru/forum/1304841/izmenie-istochnika-polya-tablicy


Помогите пожалуйста с DCount

Четверг, 01 Ноября 2018 г. 21:49 + в цитатник
Есть таблица rating в ней есть поля ID_Competition,ID_game и т.д. Мне захотелось проверить перед вставкой в таблицу на уникальность по этим полям ,для этого передаю переменную ReturnId и поле Me.ID_game ,но что то идет не так .Подскажите пожалуйста ,новичок в vba
Ну вот так пытался (strMsg = "ERROR"
If DCount([ID_Competition], "rating", "ID_game ='" & Me.ID_game & "' and "ID_Competition="& ReturnId") > 0 Then
MsgBox strMsg
End If

http://www.sql.ru/forum/1304768/pomogite-pozhaluysta-s-dcount


привести поведение UPDATE на SQL Server к поведению как у Access

Четверг, 01 Ноября 2018 г. 14:03 + в цитатник
И снова, здравствуйте.
При переводе системы с mdb+mdb на mdb+SQL возникла очередная проблема, вызванная различным поведением Access и SQL server. Заключается она в следующем: при обновлении поля таблицы данными из присоединённой таблицы, в случае, когда на каждую строку исходной таблицы приходится несколько строк присоединённой, результат для Access получается как суммарное/последовательное обновление каждой из соотнессёных строк. А результат SQL Server (как и написано в его документации) недетерминированное обновление какой нибудь из соотнесённых строк.

В Access:
CurrentDb.Execute "CREATE TABLE A (id int, valA real);"
CurrentDb.Execute "CREATE TABLE B (id int, valB real);" 
CurrentDb.Execute "insert into A(id, valA) VALUES (1, 1);"
CurrentDb.Execute "insert into A(id, valA) VALUES (1, 2);"
CurrentDb.Execute "insert into A(id, valA) VALUES (1, 3);"
CurrentDb.Execute "insert into A(id, valA) VALUES (2, 1);"
CurrentDb.Execute "insert into A(id, valA) VALUES (2, 2);"
CurrentDb.Execute "insert into A(id, valA) VALUES (3, 0);"
CurrentDb.Execute "insert into B(id, valB) VALUES (1, 0);"
CurrentDb.Execute "insert into B(id, valB) VALUES (2, 0);"
CurrentDb.Execute "insert into B(id, valB) VALUES (3, 0);"
CurrentDb.Execute "UPDATE A INNER JOIN B ON A.id = B.id SET B.valB = B.valB + A.valA;"
docmd.OpenTable "B"

Получается:
id valB
1 6
2 3
3 0


На SQL server:
CREATE TABLE A (id int, valA real);
insert into A(id, valA) VALUES (1, 1), (1, 2), (1, 3), (2, 1), (2, 2), (3, 0);

CREATE TABLE B (id int, valB real);
insert into B(id, valB) VALUES (1, 0), (2, 0), (3, 0);

UPDATE B SET B.valB = B.valB + A.valA FROM A INNER JOIN B ON A.id = B.id ;

SELECT * FROM B;

Получается:
id valB
1 1
2 1
3 0


Исправить проблему для одного простого запроса можно группировкой:
UPDATE B SET B.valB = B.valB + AA.valA FROM (SELECT SUM(valA) as valA, id FROM A GROUP BY id) AS AA INNER JOIN B ON AA.id = B.id ;

Но, таких запросов много и они, в основном, не простые. Писать программу по исправлению текста запросов не просто.
Но есть ли другие варианты?

http://www.sql.ru/forum/1304747/privesti-povedenie-update-na-sql-server-k-povedeniu-kak-u-access


Некорректное отображение десятичных чисел (пропускает запятую)

Четверг, 01 Ноября 2018 г. 12:13 + в цитатник
Всем приветы!
Создаем связную таблицу через ODBC к источнику данных, а именно к таблице БД Оракл. В этой таблице есть поля стоимость и вес.
Они, конечно же, могут иметь десятичные значения. Ну например, стоимость 99.90 и вес 12.7. Однако в Аксессе они отображаются как: 9990 и 127 соответственно. Т.е. он как бы просто "опускает" запятую.

Как это исправить?

P.S.
MS Access 2010 , Win XP, Oracle 10g

http://www.sql.ru/forum/1304733/nekorrektnoe-otobrazhenie-desyatichnyh-chisel-propuskaet-zapyatuu


Иерархия

Среда, 31 Октября 2018 г. 23:36 + в цитатник
Добрый час!

есть таблица Иерархическая

ID Наименование Родитель
1 Управление 1 0
2 Отдел 1 1
3 Отделение 1 2
4 Отделение 2 2
5 Управление 2 0
6 Отдел 1 5
7 Отделение 1 6
8 Отделение 2 6

Подскажите как создать позволяющий понять входит ли Отделение 2 в Управление 2 ?

http://www.sql.ru/forum/1304705/ierarhiya


Поле "вложение" путь к файлу

Среда, 31 Октября 2018 г. 21:23 + в цитатник
А 2010, поле Вложение (НЕ ОLE) в котором ОДИН муз. файл mp3
Как его проиграть из формы без бубна ?

С бубном так:
1. Выгружаем файл в каталог на диск.
2. Потом проигрываем так:
Public Declare Function mciExecute Lib "winmm.dll" (ByVal lpstrCommand As String) As Long
Call mciExecute("play C:\file1.mp3") ' В скобках после play путь к файлу

При этом всё чинно и благородно, играет как бы само приложение, плееры не стартуют...
Как сделать тоже самое без бубна, то есть без пункта 1, сразу проиграть файл чинно и благородно ?
- Управлять проигрыванием не нужно, соответственно и решения такие не нужны (с кучей Актив-Х, dll и т.д.)...
- Останов тоже не нужен, это рингтоны на пару секунд...
Самое интересное, что если добавить хотя бы один файл в бд штатным диалогом акцесса, то этой командой
Call mciExecute("play " & Me.ПолеMP3.FileName)

будут проигрываться все файлы из БД из этой же папки, пока не перезапустишь программу, но это уже похоже
на работу гиперссылок, а хотелось бы сразу проигрывать вложения без ссылок и выгрузки на диск...

http://www.sql.ru/forum/1304704/pole-vlozhenie-put-k-faylu


Как перейти на последнюю запись после наложения фильтра?

Среда, 31 Октября 2018 г. 18:22 + в цитатник
Ситуация такая:
В табличной (разделенной) форме пользователи широко используют штатные средства фильтрации, т.е. на панели кнопка "Дополнительно" и далее "Изменить фильтр". Все всех устраивает. Переделывать нет ни сил ни времени. НО нужно, чтобы после наложения/снятия фильтра происходило автоматическое перемещение на последнюю запись таблицы. Можно ли это как-то реализовать?
Заранее премного благодарен.

http://www.sql.ru/forum/1304700/kak-pereyti-na-poslednuu-zapis-posle-nalozheniya-filtra


Странное быстродействие прилинкованных вьюх

Среда, 31 Октября 2018 г. 13:34 + в цитатник
Доброго времени суток.
Помогите советом. Ситуация такая:
На SQL-сервере (2012) есть две вьюхи, которые различаются только тем, что у одной в WHERE стоит условие WorkDate>='20180401', а у другой WorkDate>='20180701'. Т.е. выборка второй вьюхи полностью содержится в первой. Обе совершенно одинаково (с указанием уникального индекса) прилинкованы к базе Access 2010 (accdb). При этом наблюдается следующий парадокс: перемещение к последней записи у первой вьюхи (~100 тыс. записей) занимает ~3 сек. , а у второй (~50 тыс. записей) - ~11 сек., т.е. почти в 4 раза ДОЛЬШЕ. Естественно, все запросы тоже выполняются дольше.
Но если я создаю "запрос к серверу", то такое же перемещение занимает, соответственно, 37 и 34 сек. Т.е., насколько я понимаю, дело не в сервере, а в Access-е. К тому же сервер далеко, я не администратор, для доступа к нему могу использовать только Access.
Подскажите, в чем может быть дело, куда порыть?
Заранее премного благодарен.

http://www.sql.ru/forum/1304672/strannoe-bystrodeystvie-prilinkovannyh-vuh


Блокировка таблицы ядром

Среда, 31 Октября 2018 г. 13:27 + в цитатник
Добрый день.

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

На сколько я понимаю остается открытым соединение таблицы и отчета.
Как его закрыть?
Recordset.Close тут не сработает же ("Это свойство доступно только в файлах ADP").

http://www.sql.ru/forum/1304671/blokirovka-tablicy-yadrom


Делимся нашими наработками?

Вторник, 30 Октября 2018 г. 16:38 + в цитатник
300 лет назад был топик про интерфейс и все такое. Давайте продолжим те традиции? Выкладываем примеры с небольшим сопроводительным описанием, скриншотами и плюсами решения.

Картинка с другого сайта.
Картинка с другого сайта.

1. Минималистичный внешний вид,
2. Разнесены данные и управление фильтрами на разные вкладки
3. В систему фильтров встроен гибкий фильтр по датам(сегодня, вчера, прошлый месяц и так далее), в том числе и указание периода и точной даты
4. Понятная настройка отображение столбцов и их порядок следования
5. Выгрузка отчета в Excel, исходя из настроек фильтров и столбцов
6. Вместо кнопок для новой операции и выгрузки в Excel применены костыли в виде картинки и label`а.


p.s. Это не "рабочий" проект, а сделанный на коленке прототип журнала операций.

http://www.sql.ru/forum/1304626/delimsya-nashimi-narabotkami


Помощь в создании запроса

Вторник, 30 Октября 2018 г. 11:31 + в цитатник
Добрый день! Не могу сам разобраться(
Есть основная таблица BASE в ней столбцы КодОбщий(ключевой), ФИО, Телефон и т.д.
Есть таблица Zakazi в ней столбцы КодУточн(ключевой), КодОбщий, ПериодПроведения, Округ, Район, Адрес.
Поля ПериодПроведения, округ, район, адрес вносятся с помощью поля со списком основанного на соответствующих таблицах(соответственно в таблицу Zakazi они попадают в виде ключевого кода)
Данные из Таблиц BASE и Zakazi связаны по КодУточн и КодОбщий.

Есть 3 отдельных запроса.
1)Сведение данных из 2 таблиц

SELECT Base.КодОбщий, Zakazi.ПериодПроведения, Zakazi.Округ, Zakazi.Район, Zakazi.Адрес,
 Base.Фамилия, Base.Имя, Base.Отчество,  Base.[Контактный телефон]
FROM Base INNER JOIN Zakazi ON Base.[КодОбщий] = Zakazi.[КодОбщ];


2)Подставляет в столбец ПериодПроведения обычные значения вместо кода

SELECT Zakazi.КодУточн, ПериодПроведения.ПериодПроведения
FROM Zakazi RIGHT JOIN ПериодПроведения
 ON ПериодПроведения.КодПериода=Zakazi.ПериодПроведения
;


3)Подставляет в соответствующие столбцы адреса обычные значения вместо кода

SELECT [Zakazi].КодОбщ, Zakazi.КодУточн, Округ.Округ, Районы.Район, Адреса.Адрес
FROM Адреса RIGHT JOIN (Районы
 RIGHT JOIN (Округ RIGHT JOIN Zakazi
 ON Округ.КодОКруга = [Zakazi].[Округ])
 ON Районы.КодРайона = [Zakazi].Район)
 ON Адреса.КодАдреса = [Zakazi].Адрес;



Не понимаю как эти 3 запроса объединить в один.
Заранее спасибо

http://www.sql.ru/forum/1304595/pomoshh-v-sozdanii-zaprosa


Помогите составить запрос

Понедельник, 29 Октября 2018 г. 14:36 + в цитатник
Добрый день!
Есть база данных в Access, в ней, к примеру, 3 столбца
Дата занесения дела (в формате дд.мм.гггг), ФИО и Статус дела.
Подскажите, как сделать запрос, чтобы в случае, если с момента даты занесения дела прошло 10 дней, и статус дела не "Закрыто", то значения выпадали в запрос.
К примеру
28.10.2018 Иванов А.А. Активно - не попадает в выборку
15.10.2018 Петров А.А. Активно - попадает в выборку.
Пробовал сделать

Select [Дата занесения дела], [ФИО], [Статус]
From [Инциденты]
WHERE [Дата занесения дела]>=dateadd(day,-10,now()) and [Статус]='Закрыто'

Выдает ошибку.

http://www.sql.ru/forum/1304556/pomogite-sostavit-zapros


Лучшее решение для обмена изменениями в БД (MS ACCESS)

Понедельник, 29 Октября 2018 г. 14:26 + в цитатник
Доброго дня!

Имеется следующая ситуация.
Есть одна БД, реализованная на ACCESS.
Есть два пользователя, работающих с этой БД. Работу они ведут с локальными экземплярами ввиду отсутствия возможности подсоединяться к БД через сеть.
Пользователи вносят информацию, входящую только в их зону ответственности, но необходимую для использования обеими сторонами.

Проблема состоит в переносе данных от одного пользователя к другому, чтобы БД всегда была актуальна для обоих.
Подскажите, пожалуйста, наиболее оптимальное решение данной проблемы, учитывая, что обмен может осуществляться только через MS OUTLOOK, при этом файл не может превышать 6Мб.

http://www.sql.ru/forum/1304554/luchshee-reshenie-dlya-obmena-izmeneniyami-v-bd-ms-access


Как ускорить обмен данных между Access и MySQL

Понедельник, 29 Октября 2018 г. 14:02 + в цитатник
Доброго дня!
Не нашел в инете ответа и даже намека на ответ.

Вводная инфо:
БД размещена на mysql сервере.
оболочка сделана на access.
подключение через ODBC

Проблема:
открытие карточки, создание ответов сопровождается задержкой от 1,5 до 10 секунд.
при этом запросы простые на выборку.
сохранение занимает от 1,5 до 3 секунд

Вопрос:
как ускорить обмен данными между Access и MySQL?
может использовать другой способ подключения, не ODBC?
или его можно как-то настроить для роста скорости?

http://www.sql.ru/forum/1304552/kak-uskorit-obmen-dannyh-mezhdu-access-i-mysql



Поиск сообщений в rss_sql_ru_access_programming
Страницы: 353 ... 325 324 [323] 322 321 ..
.. 1 Календарь