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

Поиск сообщений в 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 ленты.
По всем вопросам о работе данного сервиса обращаться со страницы контактной информации.

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

Изменение формата поля Access при переходе по записям

Пятница, 21 Сентября 2018 г. 02:08 + в цитатник
Добрый день, уважаемые спецы VBA и Access

Подскажите, какой событие использовать в форме.

Суть такова:
--есть форма, в которой в качестве источника данных указана соответствующая таблица
--есть поле "валюта" для каждой валюты (RUR, USD и т.д.) и поле сумма. Для каждой валюты в поле "сумма" указано указано свое кол-во знаков после запятой, для этих целей использовано свойство поля [сумма].DecimalPlaces, в котором посредством IF, ELSEIF устанавливается нужное кол-во знаков после запятой при смене записи (событие "текущая запись"), то есть смотрит, что написано в поле валюта и ставит нужное кол-во знаков.

Все работает, но есть один нюанс. Сначала в поле загружается значение по умолчанию (либо то кол-во знаков, которое осталось с прошлой валюты), например с нулевым кол-вом знаков после запятой или 3 знака, а уже потом Access обрабатывает поле и устанавливает нужное кол-во знаков, например 2 знака, этот момент перещелкивания кол-во знаков очень хорошо заметен.

Пример: предыдущая запись 12.333, следующая должна быть 10.1. При смене записи в ячейке сначала видно, 10.100 и только потом ячейка отобразит 10.1, это момент форматирования хорошо виден.

Можно ли данный момент обыграть событием, чтобы кол-во знаков изменилось до отображения суммы в поле или же надо делать, чтобы поле заполнялось запросом и в нем уже установить форматирование передаваемых в поле данных, то есть чтобы информация в поле уже пришла с нужным форматом?

Заранее спасибо за ответы

Модератор: Тема перенесена из форума "Microsoft Office".

http://www.sql.ru/forum/1302822/izmenenie-formata-polya-access-pri-perehode-po-zapisyam


Обращение к конкретной записи отчета в секции Details

Пятница, 21 Сентября 2018 г. 02:00 + в цитатник
добрый день, уважаемые спецы Access и VBA

Прошу подсказать как можно обратиться к конкретной записи секции Details отчета Access (если это возможно в принципе) и как подсчитать общее кол-во записей в данной секции отчета. Поиск по MS справкам результата не дал, пересмотрел все свойства, нашел только свойство CurrentRecord и Сount, но в случае отчета count дает кол-во controls'ов в нужной части отчета или во всем отчете, но не кол-во строк в нужной секции

Также для секции есть свойство RecordSet, но вот его свойства в справках обнаружить не удалось. Например, конструкция RecordsSet.RecordCount как для Forms для отчета не работает.

Потребность обращения к конкретной строке связана с необходимость менять свойства полей нужной строки. Можно конечно поменять свойства по условию через событие Format, но данные свойства будут корректно меняться только в случае, если отчет будет включен в режим "Предварительный просмотр", для режима "Представление отчета" такое событие не даст эффекта.

Буду признателен за подсказку, где почитать и куда копать в поисках.

Модератор: Тема перенесена из форума "Microsoft Office".

http://www.sql.ru/forum/1302821/obrashhenie-k-konkretnoy-zapisi-otcheta-v-sekcii-details


Прошу сделать ревью приложения

Четверг, 20 Сентября 2018 г. 23:36 + в цитатник
Здравствуй, Форум и Обитатели!
Я начинающий разработчик (очень хочу им быть, по крайней мере) и волею судьбы подвернулась задачка, которую я постарался решить :)

Суть задачи
Из некой АИС пользователем выгружаются отчёты о движении ТС. Пользователь не обладает достаточным доступом для формирования своих запросов (форматов, в смысле). Пользователю очень нннада знать, когда (во сколько) тачка начинает движение и во сколько кончает. Пользователь получает в указанном выше запросе информацию по отметкам времени с интервалом несколько минут (менее 5) в которых содержится следующая информация:

Поля ->Номер точкиДата/ВремяМестоположениеПробег кмСкорость км/чСобытия
Мои примечания->-формат дд.мм.гггг чч:мм:сс статус тс + приблизительный ориентир пробег с начала отчётного периода текущая всякая фигня типа "включено зажигание"

а так же информация о ТС в фиксированых ячейках, всё в формате xlsx. Пользователь очень страдает от несправедливости по жизни, что фиг найдёшь когда эта колымага помчалась, а отчёт нужен был ещё вчера и пользователю настоятельно рекомендовали выполнить всё в хорошо читаемом виде.

Моё решение:
1.Загрузка данных из отчётов АИС в одну БД
2.Автоматический анализ данных
3.Вывод отчёта через интерфейс
ДатаМашина 1Машина 2
Дата 1чч:мм(старт) - чч:мм(стоп)чч:мм(старт) - чч:мм(стоп)
Дата 2чч:мм(старт) - чч:мм(стоп)чч:мм(старт) - чч:мм(стоп)
Дата 3чч:мм(старт) - чч:мм(стоп)чч:мм(старт) - чч:мм(стоп)

4.Очистка избыточных данных из БД по запросу пользователя
5.Очистка всех данных из БД

Прошу Вас посмотреть получившееся приложение и поделиться мыслями на счёт адекватности кода вообще и конкретных решений в частности. Особенно интересует оценка работы с классами, так как только начал постигать эту науку. Отчёты АИС выкладывать не буду, если очень интересно пишите в вк или на почту. Хотя так же интересно, можно ли (конечно можно, просто я [пока] не знаю как) как то более адекватно делать импорт, ибна файлик на 100 000 строк больно долго грузится.

Жду Вашу критику, я знаю её у Вас есть!
____
vk.com/taenfox

файло: https://yadi.sk/d/XR2yzL44MHoLwg
ибна велик

http://www.sql.ru/forum/1302818/proshu-sdelat-revu-prilozheniya


Помогите с контекстным меню

Четверг, 20 Сентября 2018 г. 20:10 + в цитатник
Подскажите пожалуйста код, чтобы сделать свою кнопку в контекстном меню вместо стандартной кнопки:
    Set CBB = CB.Controls.Add(msoControlButton, 12951, , , True) 'Экспорт в PDF/XPS
    CBB.Caption = "Экспорт в PDF"
    CBB.OnAction = "OpenReportInPDF"
    CBB.BeginGroup = True


___________________________________
Использую Microsoft Access 2010, 64 бит.
Спасибо каждому, кто мне когда-либо здесь помог и продолжает помогать.

http://www.sql.ru/forum/1302814/pomogite-s-kontekstnym-menu


объединить несколько процедур

Четверг, 20 Сентября 2018 г. 16:31 + в цитатник
Подскажите как повесть несколько процедур на одно событие.

Private Sub toplivo_kart_AfterUpdate()
Dim a, b, s, f, z
s = Forms!frmZakazKart!Код.Value
a = Me![toplivo_kart].Value
f = DLookup("[Spidom0]", "ZakazKart", "[код] = " & s & "")
z = DCount("*", "qerzakaz", "[toplivo_kart] > 0")

'ввод первую строку если toplivo_kart не равно 0
If z = 0 And a > 0 Then
Me.spidom_z = f + [probeg]
End If

If a > 0 And z > 0 Then
b = DMax("[spidom_z]", "ZakazKomplektKart", "[idzakaz] = " & s & "")
Me.spidom_z = b + [probeg]
End If

Debug.Print b
Debug.Print f
Debug.Print a
Debug.Print z
End Sub

и вторую

Private Sub fakt_AfterUpdate()
Me.[probeg] = ([fakt] / Forms!frmZakazKart!na100) * 100
End Sub

http://www.sql.ru/forum/1302798/obedinit-neskolko-procedur


Будут ли проблемы с большой (кмк) транзакцией

Четверг, 20 Сентября 2018 г. 12:51 + в цитатник
Нужно сделать что-то подобное

WS.BeginTrans
  DB.Execute "INSERT INTO T1() VALUES()"
  
  for i=0 to ~11
    DB.Execute "INSERT INTO T2() VALUES()"
  next i

  for i=0 to ~36*12
    DB.Execute "INSERT INTO T3() VALUES()"
  next i

WS.CommitTrans или RollBack, как повезет.


В Т2 есть ФК на Т1, в INSERT будут ссылки будут на еще не закоммиченную запись в Т1, у Т3 тоже самое с Т2, плюс у обоих еще на таблицу-другую которые здесь не меняются.

Всего примерно 360-400 записей, база локальная, не возникнет ли проблем с исполнением и производительностью на слабой машине?

Операция редкая, потерпеть 2-3 мин, при наличии уведомлений от акцесса, можно.

http://www.sql.ru/forum/1302786/budut-li-problemy-s-bolshoy-kmk-tranzakciey


Использование параметров в запросах, формах и отчетах

Четверг, 20 Сентября 2018 г. 10:01 + в цитатник
Тема названа в честь справки MS, которой оказалось недостаточно.
Дано: форма с комбобоксом для выбора параметра, запрос с условием
SELECT Таблица1.Поле1
FROM Таблица1
WHERE (((Таблица1.Поле1)=[Формы]![Форма1]![кмбПоле1]));

Проблема: если комбобоксом ничего не выбрано (или если форма закрыта), то запрос должен вернуть все записи
SELECT Таблица1.Поле1
FROM Таблица1;

Помогите, пожалуйста. Перепробовал функции проверки - не получилось. Ошибка #Имя?

http://www.sql.ru/forum/1302775/ispolzovanie-parametrov-v-zaprosah-formah-i-otchetah


Функция sum?

Четверг, 20 Сентября 2018 г. 08:58 + в цитатник
SELECT MAIN.CODE, techproc.cm1, MAIN.COMMENT, MAIN.MARKA, matsuP.mqq, mun.measun
FROM..........
WHERE............
GROUP BY MAIN.CODE, techproc.cm1, MAIN.COMMENT, MAIN.MARKA, matsuP.mqq, mun.measun;

Беру я из этого запроса несколько строк с одинаковым MAIN.CODE, суммирую руками matsuP.mqq и получаю некую цифру

Убираю одно поле и ставлю sum
SELECT MAIN.CODE, MAIN.COMMENT, MAIN.MARKA, Sum(matsuP.mqq) AS [Sum-mqq], mun.measun
FROM..........
WHERE ........
GROUP BY MAIN.CODE, MAIN.COMMENT, MAIN.MARKA, mun.measun;

И в строке с нужным MAIN.CODE получаю бред - цифра на порядок больше посчитанной руками....
Что я делаю не так?

http://www.sql.ru/forum/1302773/funkciya-sum


Как в Access (VBA) использовать REST API mail

Среда, 19 Сентября 2018 г. 18:12 + в цитатник
Доброго времени суток!

Пробую из Access вызвать REST API mail, но не понимаю как это сделать.

Описание находиться по этому адресу http://api.mail.ru/docs/guides/restapi/, описание функции здесь https://api.mail.ru/docs/reference/rest/friends-get/

Пишу такой код:

Private Sub ch_REST_Click()

    Set objHTTP = CreateObject("MSXML2.XMLHTTP")
    Dim myxml As String

    myxml = "" & _
            "" & _
            "" & _
            "soft@mail.ru" & _
            "Мой пароль" & _
            "" & _
            ""
            

    objHTTP.Open "POST", "http://www.appsmail.ru/platform/api?method=friends.get&app_id=423004&session_key = be6ef89965d58e56dec21acb9b62bdaa&sig=ee120d11bab79b5770af536ee05dfa78", False, myxml
    objHTTP.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
    objHTTP.send
    result = objHTTP.responseText   ' Get the result
    
    
    MsgBox (result)


но выходит ошибка код 102


Что делать?

http://www.sql.ru/forum/1302756/kak-v-access-vba-ispolzovat-rest-api-mail


Странная ошибка после фильтра на подформе

Среда, 19 Сентября 2018 г. 10:55 + в цитатник
Уважаемый форум,

Впервые сталкиваюсь с таким: при использовании встроенного фильтра поля на подформе вылетает ошибка - файл прилагается.
Кто знает, что это и как побороть?

Событий на полях нет. События на форме уже проверил - там нет вариантов. Кроме того, такая ошибка выпадает только если выбрано больше одного значения в фильтре и только на цифровых полях.

Спасибо!

http://www.sql.ru/forum/1302730/strannaya-oshibka-posle-filtra-na-podforme


Вывод данных выделенной строки в подчинённой форме

Вторник, 18 Сентября 2018 г. 14:09 + в цитатник
Всем привет.

Есть форма, на которой находятся кнопки, поля со списками и т.д. А так же есть и подчинённая форма в виде таблицы.

Нужно, при выделении строки таблицы, стянуть данные этой строки с определённых столбцов и использовать их уже в другой всплывающей форме.

Как это можно реализовать? Желательно на меню правой кнопки или на двойное нажатие.
Спасибо.

http://www.sql.ru/forum/1302682/vyvod-dannyh-vydelennoy-stroki-v-podchinyonnoy-forme


Подправить запрос

Вторник, 18 Сентября 2018 г. 14:05 + в цитатник
Здравствуйте!
Помогите, пожалуйста, решить проблему, ибо сам перепробовал несколько вариантов и все равно получаю не тот результат, который мне нужен.
В запросе требуется получить результат по работе кладовщиков за указанный период (ФИО, кол-во актов, сум. стоимость актов).
Я записал запрос в таком виде(пока без даты):
SELECT Registry.Кладовщик, 
COUNT(Registry.Номер) AS кол, 
SUM(Waybill.Стоимость*Waybill.Количество) AS [Сумарная стоимость актов]
FROM Registry, Waybill
WHERE Waybill.Номер=Registry.Номер
GROUP BY Registry.Кладовщик;

Но вместо того, чтобы выдать мне количество накладных, запрос возвращает мне количество товаров, которые входят в эти накладные.
Базу прилагаю. Надеюсь объяснил понятно.

http://www.sql.ru/forum/1302681/podpravit-zapros


Combo box в форме. Как по выбору текстового поля изменять ID?

Вторник, 18 Сентября 2018 г. 11:35 + в цитатник
Всем привет!
Подскажите, пжл, как в уже созданной форме текстовые поля переделать на выпадающий список,
чтобы при этом менялся ID, а не само поле.
Правой кнопкой по полю и Change to ... Combo box нужного результата не дали.

ХЗ, как объяснить понятнее. Приложил пример ))
Надо, чтобы в форме f_list при выборе из списка фамилии менялось поле user_id в таблице t_list.
И в подчиненной форме ff_lisr_car аналогично менялось поле car_id в таблице t_list.

P.S. пользуюсь английской версией.

http://www.sql.ru/forum/1302641/combo-box-v-forme-kak-po-vyboru-tekstovogo-polya-izmenyat-id


Сортировка столбцов в перекрестном запросе

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

http://www.sql.ru/forum/1302631/sortirovka-stolbcov-v-perekrestnom-zaprose


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

Понедельник, 17 Сентября 2018 г. 18:30 + в цитатник
Имеем таблицу вида
CINameSummaPriznak
1aaa10AB
1aaa12AC
1aaa23AD
2bbb14AB
2bbb15AC
2bbb13AD
3ccc20AB
3ccc11AC
3ccc21AD
4eee26AD


Очень хотелось бы получить в виде
CINameABACAD
1aaa101420
2bbb121511
3ccc231321
4eee26


Т.е. группировать по полю CI+Name. А поле priznak перевернуть в столбцы. Предполагаю, что можно получить через TRANSFOM и PIVOT, вот только даже в конструкторе не могу понять как с этим работать. Буду благодарен за помощь. Спасибо.

http://www.sql.ru/forum/1302606/pomogite-pozhaluysta-s-zaprosom


Помогите с IIf по условию другого поля

Понедельник, 17 Сентября 2018 г. 15:43 + в цитатник
Всем добрый день. Подскажите как правильно написать формулу. Есть главная форма frmZakazKart с полем Серія 05-КК № в котором задается последний номер акта за прошлый месяц, и подчиненная ленточная форма frmZakazKomplektKart с полем МотоЧ и № Акта. Нужно автоматом поставить № Акта, чтобы в каждой следующей строке номер был больше на 1 от предыдущего, т.е. в первой строке к значению поля Серія 05-КК № добавить 1, а в следующем поле - предыдущий № Акта +1 и т.д., а если в поле МотоЧ проставлен 0, то № Акта считать не нужно. Пишу формулу в ячейку № Акта подчиненной ленточной формы, и во всех строках считает одно и то же значение. Подскажите что не так.
=IIf([МотоЧ]=0;0;[Формы]![frmZakazKart]![Серія 05-КК №]+1)

http://www.sql.ru/forum/1302597/pomogite-s-iif-po-usloviu-drugogo-polya


Access VBA SQL запрос

Понедельник, 17 Сентября 2018 г. 15:02 + в цитатник
Доброго времени суток форумчане.
Помогите всю голову уже пеплом обсыпал.

есть запрос уже готовый (datasel) надо выбрать записи где есть дата с формы записанная в переменную (L1) и вернуть мне сообщения найдено или нет. Но увы запись он не может обнаружить. Добавил для проверки MsgBox l1 да выдает нужную дату ,Set Me.lstBox.Recordset = rst да выводит запрос если грохнуть условие отбора WHERE отправлено= " & L1 &. Помогите.

Private Sub Кнопка126_Click()

Dim db As Database
Dim rst As DAO.Recordset
Dim L1, L2 As String

L1= (Forms![MENUDataPicker]![dd35])

Set rst = CurrentDb.OpenRecordset("SELECT * FROM datasel WHERE отправлено= " & L1 &)
Set Me.lstBox.Recordset = rst

MsgBox l1

If rst.BOF Or rst.EOF Then
MsgBox " пусто"
Else
MsgBox "Что то есть"
End If

If Not rst.EOF Then
MsgBox "Что то есть"
Else
MsgBox "пусто"
End If

http://www.sql.ru/forum/1302594/access-vba-sql-zapros


Увеличивается погрешность, когда связываю таблицы в Access

Воскресенье, 16 Сентября 2018 г. 20:22 + в цитатник
Добрый день! Подготовил пример с данным (простая БД) есть таблица, где находятся доли по продажам. В другой года. Я пытаюсь посмотреть доли по годам. И фишка в том, что если я сделаю сумму этих долей в исходной таблице получаю одно число,
Картинка с другого сайта.

а когда тоже самое, только связав с другой таблицей, у меня сумма не сходится. И на боевых данных расхождение существенное!!!

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

http://www.sql.ru/forum/1302541/uvelichivaetsya-pogreshnost-kogda-svyazyvau-tablicy-v-access


TOP 1 + Union

Суббота, 15 Сентября 2018 г. 11:19 + в цитатник
Здравствуйте, уважаемые форумчане

дано: таблица movng с записями о движениях автомобилей
надо: запрос выводящий две записи - начало движения за день и конец движения за день
хотел решить так:
SELECT TOP 1 ID, DateMove FROM Movng WHERE (((Speed)<>0) AND ((Car)=15) AND ((Format([DateMove],"dd/mm/yyyy"))=#8/1/2017#)) ORDER BY DateMove
union
SELECT TOP 1 ID, DateMove FROM Movng WHERE (((Speed)<>0) AND ((Car)=15) AND ((Format([DateMove],"dd/mm/yyyy"))=#8/1/2017#)) ORDER BY DateMove desc

но возвращает только одну запись, а не две
ЧЯДНТ
____
vk.com/taenfox

http://www.sql.ru/forum/1302511/top-1-union


туплю с dll

Суббота, 15 Сентября 2018 г. 01:07 + в цитатник
в DLL вот это:
Namespace myName
    Public Class myCalculator
        Public Function myPlus(ByVal x As Integer, ByVal y As Integer) As Integer
            Return (x + y)
        End Function
    End Class
End Namespace

ну типа складывает целые числа...
не могу сложить 2 и 2
:-)
Если делать так
Public Declare Function myPlus Lib "C:\dll\dll.dll" (ByVal x As Integer, ByVal y As Integer) As Integer
MsgBox myPlus(2, 2)

(да в общем то - хоть как) ругается на отсутствие точки входа...
dll замутил в VS Studio Communyti 2017 (может не так замутил или не там), dll прилагается

Может кто подскажет именно этот пример (текст DLL и вызов из vba)

http://www.sql.ru/forum/1302505/tuplu-s-dll



Поиск сообщений в rss_sql_ru_access_programming
Страницы: 353 ... 320 319 [318] 317 316 ..
.. 1 Календарь