|
19318 / 2626 / 84
Регистрация: 17.02.2009
Сообщений: 30,364
|
|
Делимся наработками03.11.2009, 11:04. Показов 491477. Ответов 282
Метки нет (Все метки)
в этой теме предлагаю выкладывать интересные наработки по акцессу...
зы. в дальнейшем на основе их можно будет создать темы "важное" Добавлено через 45 секунд ззы. флуд и спам в этой теме будет награжден красными карточками
17
|
|
| 03.11.2009, 11:04 | |
|
Ответы с готовыми решениями:
282
Для рубрики "Делимся наработками", добить БД поставка-сделка авто Обсуждение поста #137 в теме "Делимся наработками". Программный модуль контроля ресурсов принтеров сети. Строковый тип данных. С наработками. Работает, но не верно |
|
13270 / 5947 / 1529
Регистрация: 05.10.2016
Сообщений: 16,651
|
|
| 16.08.2023, 20:47 | |
|
1
|
|
|
ᴁ ©
|
||
| 16.08.2023, 20:52 | ||
|
0
|
||
|
788 / 67 / 4
Регистрация: 28.05.2015
Сообщений: 114
|
|
| 29.01.2024, 13:31 | |
|
0
|
|
|
788 / 67 / 4
Регистрация: 28.05.2015
Сообщений: 114
|
||||||
| 30.01.2024, 13:21 | ||||||
|
Ну раз Вам, может быть, лень или типа не царское это дело, завершу коллекцию.
1
|
||||||
|
885 / 148 / 35
Регистрация: 05.08.2022
Сообщений: 681
|
|||||||
| 30.01.2024, 14:57 | |||||||
|
режет глаз
другой вариант Кликните здесь для просмотра всего текста
0
|
|||||||
|
921 / 294 / 58
Регистрация: 01.06.2023
Сообщений: 825
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 31.01.2024, 11:44 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Архив с базой данной ФИАС построенной по данным ГАР (от 29.01.2024). Каждый регион представлен отдельным файлом. Топик для обсуждения
Формат Кодировка: UTF-8 Формат файла: CSV Первая строка содержит заголовки: Да Разделитель полей: ; Ограничитель текста: " Структура таблицы
1
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
921 / 294 / 58
Регистрация: 01.06.2023
Сообщений: 825
|
|||||||||||||||||||||||||||||||||||||||||
| 15.02.2024, 23:34 | |||||||||||||||||||||||||||||||||||||||||
|
Комментарии, замечания предложения прошу размещать в отдельной теме
Основная ссылка на репозиторий Проект предназначен для демонстрации подключения таблиц Access как виртуальные таблицы в SQLLite3. Возможности запросов SQLite шире чем у Acccess, становятся доступны CTE таблицы, рекурсивные запросы, нумерация строк, частичная агрегация, оконные функции и тд. В целом SQL в SQLite является достаточным что бы на нем писать программы, например решение задачи 5 букв. С таблицами Аccess поддерживаются операторы SELECT, DELETE, INSERT, UPDATE. Для последних трех обязательно должен быть ключевой столбец с типом целое число, для него должен быть создан индекс (на 1 столбец). Есть поддержка прилинкованных таблиц, но работа по уникальным индексам с ними будет медленнее чем с обычными таблицами. Внимание! Решение пока не является законченным промышленным. Не выполняйте запросы над чувствительными данными или делайте резервные копии. Установка Проверялась работа только в 32 разрядном MS Office. Движок написан на VBScript и подключается к Access через компонент ScriptControl. Данное решение связано с тем что DLL скомпилирована по стандарту cdecl, для VBA нужно что бы было stdcall. Нативный движок SQLite3 представлен в виде DLL ( sqlite3.dll). Можно скачать актуальную версию или версию с большими возможностями (нужно 32 разрядная) с официального сайта SQLite. Версия должна быть не младше 3.10.0.Для работы с DLL используется компонент DynamicWrapperX. для проверки установлен компонент или нет запустите файл SQLite.vbs. Если выполнится без ошибок значит дополнительно ни чего устанавливать не нужно.Если появилась ошибка, то необходимо зарегистрировать библиотеку `dynwrapx.dll` как COM объект. Для этого скопируйте файл в постоянное место и выполните команду (Подробнее)
Начало работы Добавьте класс SQLiteEngine.cls в проект. При необходимости поправьте пути до файлов sqlite3.dll и SQLite.vbs в функции Class_Initialize.Пример работы
Поддержка русского языка частичная,
В SQLite всего 4 базовых типа данных
В данном проекте поддерживаются только первые три.
Результаты запроса нельзя куда-либо вывести, только программная обработка. Вывод отладочных сообщений Для вывода отладочных сообщений в файл используйте метод LogToFile класса SQLiteEngine
Например вывод в текстовое поле на форме:
Тестовая БД для быстрой демонстрации. Основная форма предоставляет графический интерфейс к основным функциям. Описание элементов управления:
1
|
|||||||||||||||||||||||||||||||||||||||||
|
13270 / 5947 / 1529
Регистрация: 05.10.2016
Сообщений: 16,651
|
||||||||||||
| 16.02.2024, 02:40 | ||||||||||||
|
Я бы так написал:
Private Function IsFormLoaded()
0
|
||||||||||||
|
788 / 67 / 4
Регистрация: 28.05.2015
Сообщений: 114
|
|
| 16.02.2024, 10:02 | |
|
А если еще добавить и модули отчетов, то код не только глаз будет резать, но и даже может вырвать.
И чем вдруг alecko5 не устроил краткий рабочий код, закрывающий все виды открытых в текущем моменте модулей? И приложение зачем-то предложил закрывать в конце своего нерабочего кода.
0
|
|
|
921 / 294 / 58
Регистрация: 01.06.2023
Сообщений: 825
|
|
| 11.04.2024, 13:15 | |
|
Как можно прикрутить HTTP сервер к access? Для этого понадобится AutoHotKey, не много VBScript и совсем чуть чуть JScript. Итак механизм следующий: Access запускает AutoHotKey. AutoHotKey через VBScript создает линк на Access. Так же AutoHotKey поднимает HTTP сервер по порту который передал Access.
Возможности:
Порядок работы:
Теперь у Вас есть еще больше возможностей создать на Access красивых, разнообразных приложений.
2
|
|
|
921 / 294 / 58
Регистрация: 01.06.2023
Сообщений: 825
|
|
| 11.04.2024, 13:31 | |
|
P.S. Только не нужно публиковать такие сайты в небезопасной среде. Вопрос безопасности здесь вообще ни как не решался.
0
|
|
|
921 / 294 / 58
Регистрация: 01.06.2023
Сообщений: 825
|
|
| 25.05.2024, 22:57 | |
|
Обновленная версия генератора отчетных форм в формате RTF.
В VBA для форматирования строки доступна функция FormatString - Производит замену в тексте подстановочных сиволов на значения заданные в словаре. Подстановочные символы обрамляются символом ` %`. Если нужно вывести символ как есть то его необходимо удвоить `%%`. Если первый символ равен $ далее следует выражение, значение которого нужно вставить в строку в виде SQL литерала. В остальных случаях значение между % рассматривается как выражение, значение которого нужно вставить как есть. Дополнительно можно указать формат для предварительной обработки.
1
|
|
|
1370 / 290 / 16
Регистрация: 16.01.2014
Сообщений: 925
|
||||||||||||||||
| 26.06.2024, 21:46 | ||||||||||||||||
|
Взято Using VBA To Lock The PC
Использование VBA для блокировки компьютера Когда-нибудь требовалось или хотелось иметь возможность заблокировать компьютер? Возможно, после запуска вашего кода? Ну, это на удивление просто сделать! К счастью для нас, есть простой API, который мы можем реализовать для выполнения всей тяжелой работы. Все, что нам нужно сделать, это создать простую функцию-оболочку вокруг него, как показано ниже:
0
|
||||||||||||||||
|
1370 / 290 / 16
Регистрация: 16.01.2014
Сообщений: 925
|
|||||||||||||||||||||||||||||||
| 28.06.2024, 15:17 | |||||||||||||||||||||||||||||||
|
Вот ещё о хэшировании VBA – Get a String’s Hash Но уже без PowerShell
VBA – получение хеша строки В предыдущей статье я продемонстрировал (не я а автор статьи), как мы можем использовать PowerShell для получения HASH MACTripleDES, MD5, RIPEMD160, SHA1, SHA256, SHA384 или SHA512 строки. Я также решил продемонстрировать, как это можно сделать с помощью простого VBA, без необходимости использования PowerShell. Основная функция
Вышеизложенное опирается на одну вспомогательную функцию:
Основная функция очень проста в использовании!
Для этого метода требуется .Net 3.5, который предварительно установлен в большинстве операционных систем.
1
|
|||||||||||||||||||||||||||||||
|
921 / 294 / 58
Регистрация: 01.06.2023
Сообщений: 825
|
|
| 02.01.2025, 18:21 | |
|
Обновлен генератор печатных форм (RTFReport)
Теперь шаблоны можно составлять в формате DOCX. При построении отчета или добавлении его во внутреннее хранилище документ будет автоматические пересохранен в RTF формат для получения шаблона, а по окончании заполнения сохранен в формате docx. Если нужно формировать много документов по одному и тому же шаблону, то рекомендуется сохранить шаблон во внутреннее хранилище при помощи макроса "InstallReportTemplate". Начиная с офиса 2019, изменилась внутренняя организация RTF файла после их редактирования, выражается это в не верной кодировке для кириллицы, поэтому создание шаблонов в формате docx будет необходимостью, а не возможностью. Добавлена возможность формирования шаблона в формате Excel. Основной идеей данного модуля - это создание документов из шаблонов используя минимум кода. Вся настройка будущего вида документа создается непосредственно в редакторе Excel. Основными структурными блоками шаблонизатора являются подстановочные поля и итерируемые по наборам данных строки. Подстановочные поля указываются непосредственно в ячейках. Для выделения их на фоне остального текста используются обрамляющие фигурные скобки {}.Внутри фигурных скобок нужно записать выражение (формулу) для получение значение. Вычисленное выражение будет вставлено вместо поля. В выражения можно использовать как переменные из контекста так и непосредственно данные с полей формы. Так же в выражениях можно использовать функции VBA. Доступен вывод штрих кода в формате: CODE128, EAN13, QRCode (если в проект включен модуль mdQRCodegen) Доступна вставка изображений, как из БД (из поля с типом вложение) так и из файла. Итерируемые строки - это строки шаблона которые будут повторяться для каждой строки из набора данных. Строки добавляются путем копирования оригинала, поэтому сохраняется форматирование. Источником для набора данных могут выступать:
В архиве есть пример шаблона "Контракт2.xlsx", что бы его вывести в заполненном виде - откройте на стартовой странице "Открыть форму с контрактами" и нажмите на кнопку "Карточка контракта".
1
|
|
|
1370 / 290 / 16
Регистрация: 16.01.2014
Сообщений: 925
|
||||||||||||||||||||||||||
| 05.03.2025, 10:14 | ||||||||||||||||||||||||||
|
Запуск базы данных из определённой папки
Можно запрограммировать базу так, чтобы она закрывалась, если она не запускается в нужной папке. Для защиты базы данных требуется комплексный подход. Поскольку база Access — это обычный файл, который можно легко скопировать и вынести за пределы рабочего компьютера, может быть важно предусмотреть меры по его блокировке, чтобы он запускался только в указанном каталоге. Таким образом, даже если его вынесут, база данных просто не запустится. Хорошая новость заключается в том, что настроить такую функцию безопасности относительно просто, и для этого потребуется всего несколько строк кода! Жестко заданный путь к папке Мы можем просто сравнить текущий путь к базе данных с указанным путём, и если они не совпадают, то закрыть базу данных. Для этого мы можем использовать такую процедуру, как:
В некоторых случаях мы можем не захотеть использовать жестко заданный путь. Возможно, мы хотим использовать динамический путь, например, к папке «Документы» пользователя, AppData, … В таких случаях нам нужно лишь внести небольшое изменение в исходный код, что-то вроде: Папка с Документами
Теперь, когда у нас есть процедура для выполнения проверки, нам нужно сделать так, чтобы она запускалась автоматически при запуске базы данных. Для этого мы можем использовать несколько различных решений, в том числе: Вызов этого как часть процедуры AutoExec Запускаем его при открытии ‘Display Form’ базы данных Ниже приведен шаблон общего подхода, который можно использовать для макроса AutoExec. Я использую свой макрос AutoExec для запуска кода общедоступной функции StartUp, которую я помещаю в отдельный модуль. Функция StartUp выглядит примерно так:
Внедрив такую меру, вы сможете эффективно заблокировать доступ к базе данных Access, чтобы она запускалась только из определённой папки, что ещё больше повысит безопасность и контроль над средой вашего приложения. Можно сделать, так, чтобы база запускалась везде, кроме определённой папки. Для этого нам надо просто инвертировать проверку.
По мотивам статьи Дэниеля Пино Взято здесь
0
|
||||||||||||||||||||||||||
|
1370 / 290 / 16
Регистрация: 16.01.2014
Сообщений: 925
|
|
| 19.03.2025, 14:10 | |
|
Нашел в архивах
Автор: Аюпов Рустем (AKA Ayupov_r) Бывает что очень не хватает места на форме: хочется уместить много информации и чтобы при этом форма не выглядела "перегруженной" контролами. Стандартные средства (вкладки или разрывы страниц) не позволяют выбирать информацию для одновременного просмотра. Например, я хочу, чтобы отображались поля с первой, третьей и четвертой вкладки (если используются вкладки-tabs) одновременно и только те поля, которые заполнены данными, но с вкладками такой фокус не пройдёт. Решение подсказал интерфейс windows - помните, в "папках" windows слева, есть список типичных задач, который сворачивается, разворачивается и индивидуален для каждого вида папки? Вот это я и решил реализовать для решения своей задачи. В прилагаемом примере: 1)сворачиваются-разворачиваются listbox-ы, но можно использовать естественно любой другой элемент управления (в работающей базе у меня - подчиненные формы); 2)не показана возможность при загрузке формы показывать "заполненные" элементы в развернутом виде (но это реализуется просто, если кому нужно - выложу пример); 3 в принципе количество "сворачиваемых-разворачиваемых" элементов управления можно использовать как переменную в цикле. Наверняка я не первый сделал это в аксесе, но мне примеры пока не встречались (да и не искал, чг). Пример можно так же отнести к топику Дизайн интерфейса Access
1
|
|
|
1370 / 290 / 16
Регистрация: 16.01.2014
Сообщений: 925
|
||||||
| 19.03.2025, 14:29 | ||||||
|
Опять же архивы
Автор: Андрей Викторович (AKA Oxa) Вот вырвал из своей старой работы, может пригодиться. Классы для создания панелей. Код имеет ошибки - не правильно работает с набором закладок и группой. Описание в модуле класса clsCollectionPanels. Если честно штука не совсем клеевая, так как давно написанная, но спасибо. И в примере нет, но необходимо в событии выгрузки формы ОБЯЗАТЕЛЬНО сделать:
Интересная вещь. Пример можно так же отнести к топику Дизайн интерфейса Access
0
|
||||||
|
1370 / 290 / 16
Регистрация: 16.01.2014
Сообщений: 925
|
|
| 19.03.2025, 14:35 | |
|
0
|
|
| 19.03.2025, 14:35 | |
|
Кто занимался работой с timer поделитесь пожалуйста наработками интеренсыми Делимся. Делимся vpn) Делимся опытом Делимся знаниями по С++ Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет!
За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|