Ответы пользователя по тегу Microsoft Access
  • Как сделать связанные таблицы в Access 2013, что бы при удалении в связанных таблицах удаленный элемент так же форматировался?

    @art_karetnikov
    Лучший мой проект: Мобильный банк Сбербанка РФ.
    Зайти в схему данных, накидать туда эти таблицы, поставить между ними связи и указать - каскадное обновление/ каскадное удаление.
    Ответ написан
    Комментировать
  • Как внести в цикл array(i) = array(i).ItemData(0)?

    @art_karetnikov
    Лучший мой проект: Мобильный банк Сбербанка РФ.
    FOR ... EACH
    Ответ написан
    Комментировать
  • Как массив элементов с .Itemdata(0) внести в цикл?

    @art_karetnikov
    Лучший мой проект: Мобильный банк Сбербанка РФ.
    Доброго. Для работы с элементами есть FOR Each ... IN.
    Ответ написан
    Комментировать
  • Как составить запрос на пустоту поля?

    @art_karetnikov
    Лучший мой проект: Мобильный банк Сбербанка РФ.
    Значит, на пустое поле так не проверяют. Надо понимать разницу между "пустая строка" и Null

    самое простое для акцесса - это прибавлять к строке пустую, тогда NULL станет тоже строкой.

    MyValue = trim(MyValue) & ""

    что здесь делается - если значение строки MyValue - одни пробелы, оно провратится в ""
    Если значение строки NULL - оно провратится в ""

    select * from mytable where trim(MyValue) & "" <> "" -- вот этот запрос отработает.

    Теперь, две таблицы:

    select * from mytable mt
    join mytable2 mt2 on mt.id = mt2.id_item
    where trim(mt.MyValue) & "" <> ""
    Ответ написан
    Комментировать
  • Что использовать для простой работы с большими таблицами?

    @art_karetnikov
    Лучший мой проект: Мобильный банк Сбербанка РФ.
    если надо делать быстро - акцесс тут тоже не очень подойдет. Ничего серьезного в этой задаче нет, конечно.
    я бы поставил бесплатную версию sql сервера, загнал все в одну таблицу и дал бы признак Department
    и в него ваши филиалы от 1 до 100.

    А дальше простой селект. Должно летать и ничего сложного не будет.
    Ответ написан
  • [HELP] Как добавить все элементы из списка с привязкой id студента?

    @art_karetnikov
    Лучший мой проект: Мобильный банк Сбербанка РФ.
    Вот я примерно об этом вам только что и писал. Подход странный.
    Вы меняете или добавляете в один момент - одну запись. Одну. Нахрена писать их все?
    Ловим событие after_update комбобокса с оценками. И вставляем/обновляем запись. Одну. Не забудьте проверять, что заполнены комбобоксы Grade, Subject, Student.

    Это если очень хочется кодом. А ведь это же самое можно сделать вообще код не используя.
    Ответ написан
    2 комментария
  • [VBA] Как добавить все элементы списка в таблицу?

    @art_karetnikov
    Лучший мой проект: Мобильный банк Сбербанка РФ.
    дорогой коллега. Во-первых, выставлять оценки, выбирая их из комбобокса... Странновато. Проще сделать три проверки для текстбокса: что выше нуля, что меньше 5 и что значение целое. Возможно, конечно, что вы имели ввиду предметы, но их тоже выбирать из комбобокса немного странно... Скорее тут нужен листбокс с фильтром или вообще подчиненная форма.

    Т.е. уже по описанию задачи видно, что вы делаете ее не очень правильно, имхо.

    Почему бы не передать это профессионалам? Будет значительно быстрей, равно как можете попросить прокомментировать решение.
    Ответ написан
    Комментировать
  • Что выбрать для разработки?

    @art_karetnikov
    Лучший мой проект: Мобильный банк Сбербанка РФ.
    Не менять Access 2010. Поддержка adp в более старших версиях прекратилась, очень многие разработчики далее не идут поэтому. И вообще это нормальная, стабильно работающая система - я бы не рекомендовал от 2010 уходить.
    Ответ написан
    Комментировать
  • Как развенуть элемент "Список" в форме на 90% против часовой стрелки?

    @art_karetnikov
    Лучший мой проект: Мобильный банк Сбербанка РФ.
    Доброго. Не надо экономить место таким странным образом. Откройте для себя элемент Вкладки. На каждой вкладке можно разместить свои элементы, равно как и вообще сабформу. Вот тут будет и экономия места и список учеников и вообще мир во всем мире.
    Ответ написан
    Комментировать
  • Как изменить содержимое таблицы Microsoft Access?

    @art_karetnikov
    Лучший мой проект: Мобильный банк Сбербанка РФ.
    Доброго.

    Простой вопрос. Для самого грида - это вот таблица, делаете запрос, возвращающий данные.
    В комбобоксах - выпадающих списках, есть свойство after_update.
    В нем делаете проверку на условия, если все хорошо - изменение запроса под новые условия.

    Условно:
    комбобокс класс, в нем два поля, id_class, class_name. Первое поле скрытое.

    cmb_class_afterupdate()

    ' проверили значение комбобокса

    ' если все хорошо - присвоили новое значение рекордсету

    ' присвоили рекордсет подформе.
    Ответ написан
    Комментировать
  • Как в Microsoft Access сохранить данные из формы?

    @art_karetnikov
    Лучший мой проект: Мобильный банк Сбербанка РФ.
    Создать для формы источник данных, запрос. Все будет сохраняться само при переходе на следующую запись. Нужна группа и староста в нем.
    Ответ написан
    Комментировать
  • Как скопировать данные из поля одной формы в поле другой формы access?

    @art_karetnikov
    Лучший мой проект: Мобильный банк Сбербанка РФ.
    Ай вэй... Вообще детский вопрос. Реализовать его можно минимум тремя вариантами.

    Я лично, чтобы руку не сбивать, передаю через параметры формы.
    ' собираю строку для передачи в форму для редактирования
    strOpenParam = me.txt_id & "#"
    DoCmd.OpenForm "frmLocationAddEdit", acNormal, , , , acDialog, strOpenParam

    Где me.txt_id - то самое поле. А "#" - разделитель.
    Если надо еще параметров - передаешь их таким же образом, добавляя разделитель.

    И в форме 2 делаешь вот это:

    Private Sub Form_Open(Cancel As Integer)
    Dim searchArgument As String
    searchArgument = Nz(OpenArgs, "")
    If Len(searchArgument) = 0 Then
    MsgBox "The open arguments are not correctly transferred ", vbInformation
    Cancel = True
    Exit Sub
    End If
    me.id_form = Split(OpenArgs, "#")(0)

    У этого метода есть один, но серьезный недостаток. Разделитель, в данном случае # не должен присутствовать в переданной строке. Поэтому для себя выбери разделитель другой - и контролируй передаваемую строку перед тем, как, открывать вторую форму.
    Достоинство его - удобно передавать кучу данных сразу, наглядно.
    Ответ написан
    Комментировать
  • Как вызвать функцию с ms sql сервера из access?

    @art_karetnikov
    Лучший мой проект: Мобильный банк Сбербанка РФ.
    Доброго.
    В такой постановке: 1 вариант прост и не требует дополнительных телодвижений. Что в нем не нравится, зачем нужен второй?

    Меня лично смущает: "к полю в акцессе". А почему, собственно, не сделать stored procedure с параметрами, из акцесса формировать строку, и выполнять вообще всё, а не конкретно апдейт одного поля, на стороне сервера?
    Ответ написан
  • Как связать целую таблицу БД с определённой строкой другой таблицы?

    @art_karetnikov
    Лучший мой проект: Мобильный банк Сбербанка РФ.
    Доброго. Делаем промежуточную таблицу. Три поля.

    Rid - рендом айди для этой таблицы,
    id_bus - сюда пишем номер маршрутаа
    id_busstop - сюда пишем остановку.

    Всё. Сколько угодно остановок на маршрут, сколько угодно маршрутов. Ну, признак еще можно добавить, is_direct, битовый. Если 1 - то прямой маршрут, если 0 - обратный.
    Ответ написан
    Комментировать
  • Как реализовать проверку изменений в access?

    @art_karetnikov
    Лучший мой проект: Мобильный банк Сбербанка РФ.
    Конечно. before_update событие для этого предназначено.
    Ответ написан
    2 комментария
  • Как перенести БД с Access на SQL Server?

    @art_karetnikov
    Лучший мой проект: Мобильный банк Сбербанка РФ.
    Не использовать мастер преобразования, а использовать в sql server - импорт данных.
    Правой кнопкой по базе, Tasks, Import data.
    Ответ написан
    Комментировать
  • Проблема с подчинением и формами в Access, как решить?

    @art_karetnikov
    Лучший мой проект: Мобильный банк Сбербанка РФ.
    Конечно, он недоступен, потому что в обоих случаях первичный ключ. Зачем в таблице Общая - такой сложный составной первичный ключ? Зачем в ней же тип оборудования уже есть - но еще и ссылка на таблицу типа оборудования?
    Как минимум это - лишнее. У вас в таблице "общая" поле Код_ТО должно быть не первичным ключем. Поле "тип оборудования" - вообще к аллаху, его не нужно, потому что на него будет ссылка.

    В таблице "тип оборудования" - поле тип оборудования - тоже не должно быть первичным ключем. А вот Код_ТО - это первичный ключ однозначно. И вот его берете мышой и швыряете на таблицу "Общая" - тогда у вас как раз создастся тип "один ко многим".
    Сама схема данных... Оставляет желать, конечно, лучшего. Почему в "выезде" - код_ремонтника - не первичный ключ, а ремонтник, т.е. текстовое поле с фамилией именем, первичный? Должно быть с точностью до наоборот.
    Зачем в депо код депо - не первичный ключ, а первичным ключем сделаны Название_Депо и Код_ВРК? И так далее.
    Ответ написан
    Комментировать
  • Access - где загвоздка при запуске одинаковых баз?

    @art_karetnikov
    Лучший мой проект: Мобильный банк Сбербанка РФ.
    Не бывает чудес, Золушка. А это именно чудо, а скорее - невнимательность. Скопирована, например, не база, а линк на нее. Или при открытии базы данных выбираете одну, а полагаете, что другую.

    Хотя есть еще один вариант, вполне вероятный. Если есть третья база, в которой собственно хранятся значения и она прилинкована как источник данных. Скриншот с окна с таблицами нужен, там это сразу видно.
    Ответ написан
    Комментировать
  • Почему не функционируют программируемые кнопки в MS Access?

    @art_karetnikov
    Лучший мой проект: Мобильный банк Сбербанка РФ.
    А реализация на макросах, с вероятностью в 99 процентов. У майкрософта по умолчанию макросы отключены и им не доверяют. Варианта два - сделать файл доверенным, открыв его через офис, и - правильный, заменить макросы на программный код и не использовать.
    Ответ написан
    Комментировать
  • Как сделать правиль но Запрос из Формы в Access?

    @art_karetnikov
    Лучший мой проект: Мобильный банк Сбербанка РФ.
    Осталось понять - а типы-то соответствуют? :) Запрос можно упростить, русские имена использовать не надо, поле50 - стоит переименовать на значимое и надо проверить тип поля50 - что там сейчас, дата?

    Если дата, то возможно, это стандартные грабли: акцесс может использовать хранение даты в формате американском, когда первый месяц, потом день и год. А у тебя скорее всего дата вбита в русском.
    Тогда, как легко понять, запрос будет работать ровно до тех пор, пока у тебя первое число не больше 12. Проверь, если при дате 12-05-2016 отработает, а при 15-05-2016 - нет, это оно. Исправляется командой Format.
    Ответ написан
    Комментировать