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

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

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

Открыть книгу excell и обновить все связи

Четверг, 10 Апреля 2014 г. 12:44 + в цитатник
Есть код:
Private Sub Кнопка3_Click()
Set obj = GetObject("путь к файлу xlsx")
obj.Application.Visible = True
obj.Parent.Windows(1).Visible = True
End Sub

При нажатии на кнопку открывается экселовский файлик, только вот почему-то не просит обновить связи! Если открываю файл из-под винды - все нормально, но если через форму аксесса, открывается файлик и связи не обновляются и нет запроса на обновление.
Подскажите, пожалуйста, что не так???
Пробовал добавить: application.asktoupdatelinks = true, application.displayalerts = true - не помогло:(
Офис 2010-й...

http://www.sql.ru/forum/1088185/otkryt-knigu-excell-i-obnovit-vse-svyazi


Запрос с подсчетом количества трех типов значений поля

Четверг, 10 Апреля 2014 г. 09:17 + в цитатник
Здравствуйте. Помогите, пожалуйста, создать запрос. Имеется 2 таблицы со связью многие ко многим.
Необходимо создать запрос, который включает в себя название приборов (app_name). Место, где эти приборы находятся (GF, Shed_primary). А так же поля с количеством оборудования по типу сигнала (каждый прибор имеет свой тип сигнала - kind_signal). Всего существует 3 типа сигнала (т.е. в поле kind_signal содержится три типа записей “ИД”,”УД”,”АУ” )
SELECT apparature.app_name, buildings.GF, buildings.Shed_primary, COUNT (apparature.kind_signal)
FROM apparature INNER JOIN (buildings INNER JOIN OBJ_APP ON buildings.ID_OBJ = OBJ_APP.ID_OBJ) ON apparature.ID_APP = OBJ_APP.ID_APP
WHERE apparature.kind_signal = 'АУ'
GROUP BY  apparature.app_name, buildings.GF, buildings.Shed_primary


Но как сделать, чтоб в одном запросе отображалось количество трех типов, каждый в отдельном поле?

http://www.sql.ru/forum/1088134/zapros-s-podschetom-kolichestva-treh-tipov-znacheniy-polya


Глобальная переменная, доступная ВСЕМ формам MS ACCESS

Четверг, 10 Апреля 2014 г. 00:37 + в цитатник
Всем привет. А кто подскажет, как объявить в аксессе глобальную переменную, чтобы спокойно можно было забирать её значение из всех форм?

http://www.sql.ru/forum/1088104/globalnaya-peremennaya-dostupnaya-vsem-formam-ms-access


Заменить пустые ячейки

Среда, 09 Апреля 2014 г. 20:21 + в цитатник
Здравствуйте, уважаемые помогите пожалуйста,возможно ли сделать и как . В форме товар-при нажатии кнопки Заменить,чтоб автоматически все данные поднялись вверх заполнив пустые ячейки.Заранее благодарен за ответ!!

http://www.sql.ru/forum/1088069/zamenit-pustye-yacheyki


нужен вба код, прошу помощи

Среда, 09 Апреля 2014 г. 18:39 + в цитатник
Доброго времени суток.
Необходим вба код на обработку событий по нажатию кнопки:
-запуск запроса на выборку данных за последние полчаса
-если запросом выбраны данные то отправка на почту, если нет то отсчет полчаса и повторна выборка
и так в течении дня

http://www.sql.ru/forum/1088047/nuzhen-vba-kod-proshu-pomoshhi


Замена имени ключевого поля "малой кровью".

Среда, 09 Апреля 2014 г. 18:00 + в цитатник
У меня есть довольно обширная база данных, в ней, порядка 30-ти таблиц. Недавно, обнаружил, что некоторые ключевые поля я записал по разному, а этого мне не хотелось бы – т.е. я просто ошибся. Например: надо было бы "МГ_47", а я внёс как "МГ47"; и тому подобное. Так вот вопрос в том, как можно поменять их, естественно не убирая, а затем не возвращая все связи назад? Работаю в Access 2007 - 2010. Хочу подчеркнуть, что ошибки именно в ключевых полях...

http://www.sql.ru/forum/1088036/zamena-imeni-kluchevogo-polya-maloy-krovu


Сортировка по полю с подстановкой

Среда, 09 Апреля 2014 г. 17:29 + в цитатник
У меня на форме поле со списком, с источником строк.
В источнике строк я делаю сортировку по Наименованию.
Как мне эту сортировку вывести на форму.

http://www.sql.ru/forum/1088029/sortirovka-po-polu-s-podstanovkoy


Сосчитать количество отмеченных полей в записи на форме

Среда, 09 Апреля 2014 г. 14:56 + в цитатник

JVM 64 bit против Access 32 bit

Среда, 09 Апреля 2014 г. 11:21 + в цитатник
Добрый день. У меня такая проблема:
Windows 7 64 bit
JVM 64 bit
MS Office 2010 32 bit.

Установил с сайта Майкрософт драйвер AccessDatabaseEngine.exe
Но все равно при подключении к Access из приложение Java выдает ошибку:

[Microsoft][ODBC Driver Manager] The specified DSN contains an architecture mismatch between the Driver and Application

http://www.sql.ru/forum/1087919/jvm-64-bit-protiv-access-32-bit


Кто работал с типом данных datetimeoffset?

Среда, 09 Апреля 2014 г. 09:40 + в цитатник
Всем привет. Есть кто-нибудь , кто использовал в Акцессе тип данных datetimeoffset из таблиц MS SQL?
Поделитесь опытом.

http://www.sql.ru/forum/1087888/kto-rabotal-s-tipom-dannyh-datetimeoffset


как использовать iif для использование данных из некоторых таблиц

Среда, 09 Апреля 2014 г. 00:10 + в цитатник
Помогите пожалуйста!!! у меня есть токаяа проблема, когда я использоваю iif для использования данных из некоторых таблиц происходит ошибка, запрос не работает скажите от чего может быть? Очень прошу помогите!

http://www.sql.ru/forum/1087855/kak-ispolzovat-iif-dlya-ispolzovanie-dannyh-iz-nekotoryh-tablic


Раскодировать старый mda

Вторник, 08 Апреля 2014 г. 19:24 + в цитатник
И снова всем мое почтение.

Есть mda (файл рабочей группы), созданный еще при царе Горохе на Аксессе 2. Система работает на Аксессе 97, но с этим файлом она совместима, он на Аксесс 97 в свое время переведен не был. Сейчас я перевожу всю систему на Аксесс 2013, и он этого файла не понимает. Пытаюсь перевести этот файл на что-то более приемлемое. Открываю его в Аксессе 2007, он пытается его преобразовать и выдает сообщение:

You are trying to convert an encoded database. Decode the database, and then try again.
To protect the converted database, use the Encrypt with Password command.

Что он имеет в виду? Я в Аксессе 97 уже перевел файл в 97 и раскодировал, но он все равно выдает это сообщение.

http://www.sql.ru/forum/1087805/raskodirovat-staryy-mda


Поле с вложением на связанной главной форме из подчиненной

Вторник, 08 Апреля 2014 г. 18:29 + в цитатник
Здравствуйте,
в очередной раз прошу помощи.

Есть связанная главная форма "Ф2", на ней подчиненная "ПФ" в виде таблицы. У "ПФ" есть поле с фото, которое я хотел бы отображать на "Ф2". На основании запроса я сделал форму "Photo" и разместил на "Ф2". Картинка выходит, но динамически не меняется, при перемещении курсора в подчиненной.
На форуме нашел такие решения:

1. Создать на Главной поле с данными =[Формы]![Ф2]![ПФ].[Form]![Id3], связь двух форм через это поле, но это решение работает, если Главная форма - свободная, не связанная, как у меня по фильтру.

2. Set Me![Фото].Form.Recordset = Me![ПФ].Form.Recordset - здесь, как и указал автор "проблемы" с фильтрацией, которые лечатся, но я не знаю как. Да и в форме "Фото не все поля из "ПФ" и поэтому появляются ошибки в полях..

Пож-та, подскажите решение.

ps. в приложении БД

http://www.sql.ru/forum/1087786/pole-s-vlozheniem-na-svyazannoy-glavnoy-forme-iz-podchinennoy


Странное поведение Access ADP

Вторник, 08 Апреля 2014 г. 17:17 + в цитатник
После перехода на ADP обнаружил странное поведение проекта при запуске.
Клиентская часть работает одновременно на 3-х компах. Что бы не бегать с обновками, сделан "клиент" который проверяет версию в специальной таблице на сервере, перезаписывает клиент на компе и запускает его.
В модуле autoexec запускается процедура, создающая класс с данными текущего пользователя, который выбирается в зависимости от МАС-адреса компа. При запуске самого клиента на компе, пользователь определяеться правильно и без проблем.
Но стоит запустить "обновлялку" для копирования клиента с сервера, как пользователь определяеться как мой, потому как я редактирую клиента и выкладываю измененный на сервер.
Иду другим путем, после удачного запуска клиента на другом компе, закрываю его, выкладываю с этого компа на сервер. Теперь при запуске на другом компе "обновлялки" и получении клиента с сервера, пользователь начинает определяться на всех компах как с того компа, с которого его скопировали на сервер.
Запуск autoexec вручную ничего не дает. Пользователь определяеться неверно, до момента пока не запущу непосредственно клиента с локального компа.
Эта же конструкция отлично работала на DAO, а на ADODB отказывается.
Код класса пользователя примерно такой:

Dim cidworker As Integer

Private Sub Class_Initialize()
   On Error GoTo Class_Initialize_Error

  сidworker = 0
  SpecificationsNet

   On Error GoTo 0
   Exit Sub

Class_Initialize_Error:

  MsgBox "Error " & err.Number & " (" & err.Description & ") in procedure Class_Initialize of Class Module worker"
End Sub

Public Property Get idworker() As Long
  Dim id As Variant
  
  Dim rs As ADODB.Recordset
  
   On Error GoTo idworker_Error

  If Nz(cidworker, 0) <= 0 Then
    
    Set rs = New ADODB.Recordset
    
    rs.Open "SELECT dbo.idworker()", db, adOpenStatic, adLockReadOnly
    If rs.RecordCount > 0 Then
      id = rs.fields(0)
      If IsNumeric(id) Then
         cidworker = CLng(id)
      Else
        cidworker = 0
      End If
    Else
      cidworker = 0
    End If
    Set rs = nothing
  End If
  If cidworker = 0 Then
    MsgBox "Такого компьютера нет в базе!", vbCritical, "Ошибка доступа."
    Quit acQuitSaveAll
  Else
    idworker = cidworker
  End If

   On Error GoTo 0
   Exit Property

idworker_Error:

  MsgBox "Error " & err.Number & " (" & err.Description & ") in get property idworker of Class Module worker"
End Property

Private Sub SpecificationsNet()
  'http://www.sql.ru/forum/actualthread.aspx?tid=276571
  Dim strComputer As String
  Dim objWMIService As Object, colBIOS As Object, objBIOS As Object
  Dim rs As ADODB.Recordset
  Dim sqlworker As String
  
   On Error GoTo SpecificationsNet_Error

  If Not CurrentProject.IsConnected Then
    ChangeADPConnection "COMP-1\SQLEXPRESS", "restartf"
  End If
  If CurrentProject.IsConnected Then
    strComputer = "."
    Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
    Set colBIOS = objWMIService.ExecQuery("SELECT Name, MACAddress FROM Win32_NetworkAdapter WHERE (MACAddress is not null)")
    For Each objBIOS In colBIOS
      Set rs = New ADODB.Recordset
      rs.Open "SELECT SQLName FROM workers WHERE (MACaddress = '" & Replace(objBIOS.MACAddress, ":", "") & "')", db, adOpenStatic, adLockReadOnly
      If rs.RecordCount > 0 Then
        sqlworker = rs.fields(0)
      End If
      rs.Close
      Set rs = Nothing
    Next
    If sqlworker <> "" Then
      ChangeADPConnection "COMP-1\SQLEXPRESS", "restartf", sqlworker, sqlworker
    End If
    'cworker.idworker = 0
    Set objWMIService = Nothing
  End If

   On Error GoTo 0
   Exit Sub

SpecificationsNet_Error:

  MsgBox "Error " & err.Number & " (" & err.Description & ") in procedure SpecificationsNet of Class Module worker"
End Sub

Function ChangeADPConnection(strServerName As String, strDBName As _
   String, Optional strUN As String, Optional strPW As String) As Boolean
Dim strConnect As String
On Error GoTo EH:
Application.CurrentProject.CloseConnection
'The Provider, Data Source, and Initial Catalog arguments are required.
strConnect = "Provider=SQLOLEDB.1" & _
";Data Source=" & strServerName & _
";Initial Catalog=" & strDBName
If strUN <> "" Then
    strConnect = strConnect & ";user id=" & strUN
    If strPW <> "" Then
        strConnect = strConnect & ";password=" & strPW
    End If
Else  'Try to use integrated security if no username is supplied.
    strConnect = strConnect & ";integrated security=SSPI"
End If
Application.CurrentProject.OpenConnection strConnect
ChangeADPConnection = True
Exit Function
EH:
MsgBox err.Number & ": " & err.Description, vbCritical, "Connection Error"
ChangeADPConnection = False
End Function


Вот момент его создания:

Private wworker As worker
Private cdb As ADODB.Connection

Public Property Get db() As ADODB.Connection
   On Error GoTo db_Error

  If cdb Is Nothing Then
    Set cdb = New ADODB.Connection
    cdb.ConnectionString = CurrentProject.Connection.ConnectionString
  End If
  If cdb.State = 0 Then cdb.Open
  Set db = cdb

   On Error GoTo 0
   Exit Property

db_Error:

  MsgBox "Error " & err.Number & " (" & err.Description & ") in procedure db of Module pubvar"
End Property

Public Property Get cworker() As worker
   On Error GoTo cworker_Error

  If wworker Is Nothing Then
    Set wworker = New worker
  End If
  Set cworker = wworker

   On Error GoTo 0
   Exit Property

cworker_Error:

  MsgBox "Error " & err.Number & " (" & err.Description & ") in procedure cworker of Module pubvar"
End Property

Public Function autostart()
   On Error GoTo autostart_Error
  
  Set wworker = Nothing
  Set wworker = New worker
  Debug.Print cworker.idworker & " - " & cworker.wtype
  If cworker.idworker > 0 Then
    If cworker.idworker >= 1 And cworker.idworker <= 3 Then
      If cworker.idworker <= 2 Then SendKeys "{F11}"
      DoCmd.OpenForm "Вводкурса", , , , , acDialog
    ElseIf cworker.idworker > 3 Then
      SendKeys "{F11}"
      DoCmd.OpenForm "БоссАналитика"
    Else
        MsgBox "Проблема определения типа пользователя!", vbCritical
    End If
    If cworker.idworker = 3 Then Application.SetOption "Show Hidden Objects", True Else Application.SetOption "Show Hidden Objects", False
  Else
    MsgBox "Проблема определения пользователя!", vbCritical
  End If

   On Error GoTo 0
   Exit Function

autostart_Error:

  MsgBox "Error " & err.Number & " (" & err.Description & ") in procedure autostart of Module pubvar"
End Function

Так вот при запуске через "обновлялку" уже сразу в момент создания экземпляра класса worker в Set wworker = New worker, его свойство idworker и ее локальная копия cidworker оказываются не нулевыми, а равными "старым" значениям с компа, с корого скопировали клиента. Серверная функция idworker() всегда отдает правильного пользователя. Т.е. пользователь по маку определился, а вот откуда он берет "заполненную" локальную переменную cidworker?
Обновлялка запускает базу так:
Dim aspath As String
Dim pathcur As String
pathcur = CurrentProject.Path
aspath = SysCmd(acSysCmdAccessDir)
Shell """" & aspath & "msaccess.exe""" & " " & """" & pathcur & "\Склад Клиент-ver" & ver & ".adp""", vbMaximizedFocus

Предварительно взяв все нужные пути для запуска.

http://www.sql.ru/forum/1087763/strannoe-povedenie-access-adp


Умножение двух полей таблицы и сохранение в третьей.

Вторник, 08 Апреля 2014 г. 15:20 + в цитатник
Здравствуйте. Прошу помощи с вот такой проблемой:
Задача моей БД это создание декларации с налогов. Я беру с таблицы "Neruhom"(недвижимость) площадь квартиры, с таблицы "Declaration.." ставку налога. В итоге мне нужно что бы в поле "Nalog" (таблицы Declaration) обсчитывало умножение этих двух значений и там же его и сохраняло. Собственными силами смог только добиться умножение и то только через форму, а сохранять как-то не получилось.
Возможно есть другие способы это сделать в более простой форме? Главное что бы в итоге у меня сохранялись все декларации с подсчитанной в них сумме налога.

Снимок схемы данных прикрепил. Версия access 2007

http://www.sql.ru/forum/1087727/umnozhenie-dvuh-poley-tablicy-i-sohranenie-v-tretey


Рабочая директория в Аксессе 2013

Вторник, 08 Апреля 2014 г. 14:43 + в цитатник
Мое почтение всем и благодарность авансом.

Системщик установил Аксесс 2013. Всё работает, но при входе в Аксесс каждый раз выдается сообщение (далее мой приблизительный перевод с иврита): Аксессу не удалось переключить рабочую директорию на n:\files. Если закрыть это сообщение, дальше проблем нет, однако если я хочу открыть файл в Аксессе, то он мне сначала предлагает выбрать этот файл опять же из n:\files. При этом диска n на этом компе нет. И я не смог найти, где это n:\files зашито, чтобы поменять его.

http://www.sql.ru/forum/1087709/rabochaya-direktoriya-v-aksesse-2013


Вытащить вложенные файлы из Access

Вторник, 08 Апреля 2014 г. 12:43 + в цитатник
Имеется база, и в ней есть поля для вложения, как можно вытащить эти вложенные файлы в отдельную папку ?

http://www.sql.ru/forum/1087674/vytashhit-vlozhennye-fayly-iz-access


Выборка потворяющихся значений

Вторник, 08 Апреля 2014 г. 01:16 + в цитатник
Здравствуйте, помогите пожалуйста в следующем вопросе.
Допустим, имеется таблица с полями:
авторыНазваниеГод
Бутовлето1980
Любушкиназима1981
Андреевснег1986
Бутоввесна1982
Бутовосень1983

Мне же нужно создать запрос в виде такого:
авторыНазваниеГод
Бутовлето1980
Бутоввесна1982
Бутовосень1983

http://www.sql.ru/forum/1087605/vyborka-potvoryaushhihsya-znacheniy


Как программно импортировать данные из нескольких MS SQL в таблицу Access?

Понедельник, 07 Апреля 2014 г. 16:38 + в цитатник
Есть список серверов и нужных баз на них. Есть текст запроса на выборку.
Какие есть вар-ты скинуть рез-ты селектов по всем базам из списка в таблицу акцесса?

http://www.sql.ru/forum/1087510/kak-programmno-importirovat-dannye-iz-neskolkih-ms-sql-v-tablicu-access


В vba не работает предикат TOP

Понедельник, 07 Апреля 2014 г. 14:27 + в цитатник
Здравствуйте.
Делаю выгрузку рекордсета в Excel:
Private Sub &#202;&#237;&#238;&#239;&#234;&#224;12_Click()
On Error GoTo e
 Dim S As String
 Dim ReportRst As DAO.Recordset
 Dim ReportData As Variant
 If (IsNull(Me.month1.Value)) Or (IsNull(Me.day1.Value)) Then
  MsgBox "Не выбран период.", , "Отмена!"
 Exit Sub
 End If
     S = "SELECT TOP 100 Base.CLIENT_ID, Base.CLIENT_NAME, Base.MOBILE_PHONES "
     S = S & "FROM Base "
     S = S & "WHERE (((Day(Base.DATE_CREATE))=" & Me.day1.Value & ") And ((month(Base.DATE_CREATE))=" & Me.month1.Value & ")) "
     S = S & "ORDER BY Base.CLIENT_ID ASC"
   Set ReportRst = CurrentDb.OpenRecordset(S)
    If ReportRst.RecordCount > 0 Then
     ReportData = ReportRst.GetRows(ReportRst.RecordCount)
    Else
     MsgBox "Äàííûõ íåò.", , "Äåéñòâèå îòìåíåíî!"
     Exit Sub
    End If
  FillReport ReportData
e:
  Err.Clear
End Sub

Private Sub FillReport(rData As Variant)

    Dim xlApp As Excel.Application
    Dim xlBook As Excel.Workbook
    Dim xlSheet As Excel.Worksheet

    Dim i As Integer, j, k As Integer
  
    Const LPos = 1, TPos = 1
    
    On Error GoTo e:
    
    Set xlApp = CreateObject("Excel.Application")
    Set xlBook = xlApp.Workbooks.Add(Application.CurrentProject.Path & "\ReportForm.xlsx")
    Set xlSheet = xlBook.Worksheets(1)
    
    xlApp.Visible = False

    j = 0
    
    Set xlSheet = xlBook.Worksheets(1)
    xlSheet.Activate

    With xlSheet
        .Cells(TPos, LPos + 6).Value = Date
    End With
      
    For k = 0 To UBound(rData, 2)
        With xlSheet
            .Cells(TPos + j + 3, LPos + 1).Value = rData(0, k)
            .Cells(TPos + j + 3, LPos + 2).Value = rData(1, k)
            .Cells(TPos + j + 3, LPos + 3).Value = rData(2, k)
        End With
    
    j = j + 1

    Next k

    With xlSheet
        .Cells(TPos, LPos).Select
    End With

    xlApp.Visible = True

    Set xlSheet = Nothing
    Set xlBook = Nothing
    Set xlApp = Nothing

R:
    Set xlSheet = Nothing
    Set xlBook = Nothing
    Set xlApp = Nothing
    Exit Sub
e:
    MsgBox (Err.Description)
    Err.Clear
    Resume R
End Sub

Предикат TOP в запросе не работает. Выгружает всего 1 запись. В конструкторе все отлично работает.
Прошу помощи, что пропустил?
Заранее спасибо.

http://www.sql.ru/forum/1087467/v-vba-ne-rabotaet-predikat-top



Поиск сообщений в rss_sql_ru_access_programming
Страницы: 353 ... 33 32 [31] 30 29 ..
.. 1 Календарь