|
19318 / 2625 / 84
Регистрация: 17.02.2009
Сообщений: 30,364
|
|
Делимся наработками03.11.2009, 11:04. Показов 474831. Ответов 282
Метки нет (Все метки)
в этой теме предлагаю выкладывать интересные наработки по акцессу...
зы. в дальнейшем на основе их можно будет создать темы "важное" Добавлено через 45 секунд ззы. флуд и спам в этой теме будет награжден красными карточками
17
|
|
| 03.11.2009, 11:04 | |
|
Ответы с готовыми решениями:
282
Для рубрики "Делимся наработками", добить БД поставка-сделка авто Обсуждение поста #137 в теме "Делимся наработками". Программный модуль контроля ресурсов принтеров сети. Строковый тип данных. С наработками. Работает, но не верно |
|
1365 / 285 / 16
Регистрация: 16.01.2014
Сообщений: 896
|
|
| 27.06.2018, 14:24 | |
|
А можно здесь критиковать выложенные примеры? Просмотрел пример, выложенный в предыдущем посте. Оказалось очень много замечаний. Например, зачем закрывать пример паролем? Его лучше убрать перед публикацией. Есть замечания по интерфейсу, оформлению, обработке ошибок и т.д. Если это что-то типа курсовой, то ещё сойдёт. Но если это программа для работы, то её надо дорабатывать, и очень серьёзно. Но может быть это интересно только разработчику? Так что на этом заканчиваю. Если нужны подробности, спрашивайте. Личку ещё никто не отменял.
0
|
|
|
1365 / 285 / 16
Регистрация: 16.01.2014
Сообщений: 896
|
|
| 27.06.2018, 15:14 | |
|
Ещё один небольшой модуль
Когда-то мне досталось задание написания базы данных, одной из задач в которой было определение даты окончания определенной работы. Например: обработка различных типов документов. Вы получаете документы для обработки, и Вам на это отводится определенный срок, разный, для разных типов документов. На одни надо ответить в течение двух рабочих дней, на другие – пяти, ну и так далее… Надо вести учет, к какому числу должен быть подготовлен ответ (или проделана какая-то определенная работа). Сроки на это обычно задают в рабочих днях. Дополнительным условием было максимально автоматизировать настройку календаря и сделать её как можно проще, так как работать с программой будут люди, далекие от вычислительной техники. Всё должно быть сделано через формы, а не через прямую правку таблиц. И вот что у меня получилось. В программе используются таблицы. Таблица рабочих дней (заполняется для каждого года) – tblRabDay, содержит список календарных дней, с разбивкой по годам, месяцам, числам, дням недели, с признаком рабочий день или нет. Таблица tblWeekDay – хранит недельный график работы, содержит номера и названия дней недели и признак - рабочий день или нет. Таблица tblNewFRDay - хранит список переносов рабочих дней, перечень новых рабочих и выходных дней (содержит столбцы с годом, месяцем, днем и признаком – рабочий день или выходной). Таблица tblMonth - содержит список месяцев. Таблица tblFriDay – содержит список государственных праздников. Использование программы очень простое. Вводишь дату начала работы, задаешь срок, возле окошка "Окончание" жмешь кнопку с тремя точками, и в окошке видишь дату. График работы для недели задается в таблице "Рабочие дни недели" (одноименная кнопка на главной форме). Список государственных праздников в таблице "Государственные праздники" (одноименная кнопка на главной форме). Добавить переносы рабочих дней, новые праздничные и рабочие дни можно через специальный справочник. Для его вызова нажмите кнопку "Переносы, новые рабочие и выходные дни" на главной форме. Переносы рабочих и выходных дней задаются как парные добавление нового рабочего и нового выходного дней. Сейчас в таблице рабочих дней данные за 3 года 2005, 2006, 2007. Для добавления нового года нажмите кнопку "стрелочка со звездочкой" на форме "Переносы, новые рабочие и выходные дни" и в диалоговом окне введите год. В таблицу tblRabDay добавляется календарный список дней на указанный год с расстановкой признака рабочий/выходной день. Для этого используется таблица tblWeekDay. Программа была первоначально разработана как часть большой системы, но потом я решил оформить её как отдельный модуль. Вам представлен, так сказать, облегченный вариант программы. Что она не может делать? Не может автоматически составить календарный список для графиков со скользящими выходными днями. В этом случае в таблице tblWeekDay необходимо указать рабочими все дни недели, а потом через форму "Переносы, новые рабочие и выходные дни" задать вручную выходные дни. Не может автоматически составить календарный список, если у Вас на предприятии раз в месяц есть рабочие субботы (хотя такое и маловероятно). В этом случае в таблице tblWeekDay необходимо указать выходными субботу и воскресение, а потом через форму "Переносы, новые рабочие и выходные дни" задать вручную дополнительные рабочие дни. Не может изменить график выходных и рабочих дней, если он у Вас изменился в середине года. В этом случае новые выходные и рабочие дни необходимо задать через форму "Переносы, новые рабочие и выходные дни». Вот вроде и все особенности программы. Примечание. В таблице «Государственные праздники», занесены государственные праздники РБ. Приложенный пример выполнен в формате Access 2000. P.S. Программа была написана в 2006 году. Сейчас я бы сделал её немного по другому
1
|
|
|
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,375
|
|
| 29.06.2018, 02:43 | |
|
0
|
|
|
11478 / 5810 / 1489
Регистрация: 05.10.2016
Сообщений: 16,372
|
||
| 23.07.2018, 01:28 | ||
|
0
|
||
|
1365 / 285 / 16
Регистрация: 16.01.2014
Сообщений: 896
|
|||||||||||
| 23.07.2018, 11:27 | |||||||||||
|
Игры с анимацией формы
Разгребал сегодня свой архив. Наткнулся на старый пример, который разрабатывал, когда хотел немного украсить программы. Немного доработал. Для анимации использовал функцию AnimateWindow. Функция AnimateWindow
Возвращаемое значение В случае ошибки функция возвращает 0 (используйте GetLastError для получения кода ошибки). В успешном случае возвращается ненулевое значение Параметры hwnd Описатель окна для анимации dwTime Время, отведенное для анимации(в миллисекундах). Обычно используют 200 миллисекунд dwFlags Флаг, определяющий тип анимации. Можно комбинировать несколько значений: AW_SLIDE = &H40000 - Эффект слайда. Данный параметр игнорируется при использовании AW_CENTER AW_ACTIVATE = &H20000 - Активизирует окно. Не используйте с AW_HIDE AW_BLEND = &H80000 - Эффект проявления. Может использоваться, только, если окно поверх остальных AW_HIDE = &H10000 - Скрытие окна. По умолчанию окно видимо AW_CENTER = &H10 - Сжимание окна по центру AW_HOR_POSITIVE = &H1 - Анимация окна слева направо. Флаг игнорируется при использовании AW_CENTER или AW_BLEND AW_HOR_NEGATIVE = &H2 - Анимация окна справа налево. Флаг игнорируется при использовании AW_CENTER или AW_BLEND AW_VER_POSITIVE = &H4 - Анимация окна сверху вниз. Флаг игнорируется при использовании AW_CENTER или AW_BLEND AW_VER_NEGATIVE = &H8 - Анимация окна снизу вверх. Флаг игнорируется при использовании AW_CENTER или AW_BLEND Примечание: Можно комбинировать флаги AW_HOR_POSITIVE или AW_HOR_NEGATIVE с AW_VER_POSITIVE или AW_VER_NEGATIVE для анимации окна по диагонали Пример
Замечания. Форма разворачивается как черный прямоугольник. Чтобы сделат видимым наполнение формы необходимо после анимации по очереди использовать свойства формы Visible = False и Visible = True. Описание функции желательно помещать в той форме, где она используется. Почему-то иногда в некоторых программах Access отказывался работать с функцией, если её описание помещено в глобальном модуле, хотя она и описана как Public. Пример выполнен в формате Access 2000, показывает, как можно анимировать открытие/закрытие форм на экране. Вообще-то это по большому счёту баловство, но иногда помогает развлечь пользователя.
4
|
|||||||||||
|
1365 / 285 / 16
Регистрация: 16.01.2014
Сообщений: 896
|
|
| 25.07.2018, 10:35 | |
Сообщение было отмечено Capi как решение
Решение
Программное создание водяных знаков в отчёте (фоновый рисунок)
Однажды у меня возникла необходимость вставлять в отчёт фоновые надписи (водяные знаки). Причём, в зависимости от условий, водяные знаки могли присутствовать, могли отсутствовать и иметь разные значения. На сайте SQL.RU я нашел топик Андрея Усачёва "Как создать водяной знак в виде даты в отчёте?", которым и воспользовался. Там описано несколько способов получения требуемого результата. Я воспользовался последним, когда необходимый результат получается при помощи метафайла. Неплохое решение. Пример рассчитан на 32-х разрядную версию офиса. Для 64-х разрядной надо переписать вызов API.
3
|
|
|
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,375
|
|
| 25.07.2018, 22:40 | |
|
Ссылки на другие форумы запрещены.
0
|
|
|
0 / 0 / 0
Регистрация: 14.08.2018
Сообщений: 1
|
|
| 15.08.2018, 17:24 | |
|
Нашёл на компе, скачал для себя с уже-не-помню какого источника, может кому нужна будет, описание в архиве
0
|
|
|
1365 / 285 / 16
Регистрация: 16.01.2014
Сообщений: 896
|
|
| 16.08.2018, 13:17 | |
|
Это пример с сайта Евгения Серебрякова. Когда-то он назывался "Кирпичики кода". Сейчас сменил дизайн и название. На нём находится много примеров и справочной информации. Форум отсутствует. Ресурс довольно старый, известен с 2000 года. Меня уже предупреждали, что ссылки на сторонние сайты размещать нельзя. Но в представленном примере есть ссылка на ресурс с которого он скачан. Успехов в изучении ресурса.
1
|
|
|
9119 / 6108 / 591
Регистрация: 27.03.2013
Сообщений: 19,929
|
|
| 16.08.2018, 17:16 | |
|
3
|
|
|
11478 / 5810 / 1489
Регистрация: 05.10.2016
Сообщений: 16,372
|
||||
| 17.08.2018, 22:09 | ||||
|
Я и сам тащю с инта, и разглядываю потом - как умные люди делают, но при этом подписываю: - Когда - Откуда - Описание (Зачем и для чего) ... и рядом укладываю этот текстовичёк ... Признаю! - Пример мой! Делал вообще и публиковал на форуме как одно из решений задачки. (Сыла работает: Подчинённые поля со списком (ComboBox-ами) в ленточной (табличной) форме (+ Пример)) Хотя... страна должна знать своих героев! ![]() Добавлено через 24 минуты Время шло ... Конструкции кода усложнялись ... Вот "приехал" к тому что есть теперь, и старое название уже не подходило к содержимому. Надеюсь что ресурс всё ещё полезен.
5
|
||||
|
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,375
|
|
| 18.08.2018, 10:27 | |
|
Кирпичики помню, 10 лет назад их изучал
Хорошая подборка.
1
|
|
|
11478 / 5810 / 1489
Регистрация: 05.10.2016
Сообщений: 16,372
|
||
| 18.08.2018, 12:29 | ||
|
Ну просто мёд на сердце. Спасибо на добром слове. (А всё Пух виноват - сдал меня с потрохами)
1
|
||
|
1365 / 285 / 16
Регистрация: 16.01.2014
Сообщений: 896
|
|
| 28.08.2018, 15:06 | |
|
Автоматическое подключение внешних таблиц
Для чего разделяют базы? Для того, чтобы при модификации кода, разработке новых форм и отчетов можно было легко заменить файл с кодом и оставить базу с таблицами нетронутой. (Разбиение производится так же при построении сетевых систем, но это мы оставим в стороне) После разделения получаются два файла, один из них будет иметь старое имя и в нем будет содержаться програмный код, запросы, формы, отчеты, а другой будет иметь имя "ИмяБазы_be.mdb" или "ИмяБазы_be.accdb" (расширение зависит от версии файла), и в нем будут содержаться таблицы с данными. Предлагаемый пример позволяет автоматизировать подключение базы с таблицами к базе с кодом, а не возиться с ручным подключением таблиц при смене размещения программы или при получении новой версии. Необходимо соблюдать только одно условие: файл с кодом и файл с таблицами должны находится в одном разделе. Теперь достаточно макрос autoexec вставить функцию fnConnectCureFolderCheck() и программа сама найдет базу с таблицами и подключит все таблицы, находящиеся в базе. Примечание: функция fnConnectCureFolderCheck() отличается от функции fnConnectCureFolder() наличием блока контроля предыдущего подключения. Ограничения: такой способ не годится для сетевых версий программ, т.к. в этом случае база с таблицами располагается на сервере и требуется явно указать путь к ней. Хотя саму подпрограмму подключения всех таблиц из указанной базы можно использовать. В приложении содержатся два примера: для формата MDB (Access 2000) и формата ACCDB. Если место не менялось, то происходит контроль подключения. Функцию перелинковки всех связанных таблиц можно отключить для ускорения запуска программы
4
|
|
|
1365 / 285 / 16
Регистрация: 16.01.2014
Сообщений: 896
|
|
| 29.08.2018, 11:35 | |
|
И ещё немного о подключении таблиц из других баз.
Программный модуль, облегчающий подключение таблиц из внешних баз Возможности: можно подключать произвольное число баз и таблиц (в пределах разумного) можно сохранять выбранные подключения/линковки можно линковать как все, так и отдельные таблицы из выбранной базы можно присваивать линкованным таблицам новые имена можно осуществлять подключения/отключения как всех сразу так и отдельных баз Список таблиц подключаемой базы программа создаёт автоматически (по нажатию кнопки) Краткая инструкция в приложенном примере. Пример дан в форматах MDB и ACCDB Дополнительно приложен пример Крамарева Владимира. Взят на сайте Новиков Сергея в далёком 2002 году. Описание в архиве. P.S. Интерфейс красивее чем у меня. Завидую. Делает практически то же что у меня. Пример как-то затерялся у меня в архивах. Пришлось разрабатывать свой. И только через пару лет после создания своего модуля я наткнулся на этот пример. Ещё одно доказательство того, что появление "новых" велосипедов - недостаточная информированность разработчиков. "Всё уже украдено до нас" операция Ы (с)
3
|
|
|
1365 / 285 / 16
Регистрация: 16.01.2014
Сообщений: 896
|
|
| 23.09.2018, 22:54 | |
|
И снова новая версия модуля подключения.
Теперь модуль может работать с запароленными базами данных, а так же в 32-х и 64-х битных версиях Access.
4
|
|
|
1 / 1 / 0
Регистрация: 29.10.2018
Сообщений: 26
|
||||||||
| 29.10.2018, 15:33 | ||||||||
![]() Может быть кто-то выложит жизнеспособный вариант? Пожалуйста ![]()
0
|
||||||||
|
1 / 1 / 0
Регистрация: 29.10.2018
Сообщений: 26
|
|
| 31.10.2018, 15:32 | |
|
Как-будто бы ожило творение из 2012го...
Но я не шарю в Accesse и прошу помощи с этим справиться ![]() Пароль такой же - 12345
0
|
|
|
1365 / 285 / 16
Регистрация: 16.01.2014
Сообщений: 896
|
|
| 02.11.2018, 15:31 | |
|
Попробуй вот этот вариант. У меня открывается нормально в 32-х разрядном Access. Сделал однопользовательской. Лень было делать многопользовательской. Ставлю: Завод 3, Admin Admin, ну и пароль тот же 12345.
1
|
|
| 02.11.2018, 15:31 | |
|
Помогаю со студенческими работами здесь
120
Кто занимался работой с timer поделитесь пожалуйста наработками интеренсыми Делимся. Делимся vpn) Делимся опытом Делимся знаниями по С++ Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|
Фото: Daniel Greenwood
kumehtar 13.11.2025
|