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

Поиск сообщений в 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

Пятница, 08 Апреля 2016 г. 13:43 + в цитатник
как создать запрос access мож кто знает
если ясаков прошел 180 осмотр в 11 столбце а чем сообщит цифра 180
то выводилось бы автоматом как дубли эти специальности 20,25,26,27,50
то есть приравнять 180 к 20,25,26,27,50
может дополнительные параметры ввести

http://www.sql.ru/forum/1209033/kak-sozdat-zapros-access


Порядок выполнения макроса autoexec и загружаемой формы

Пятница, 08 Апреля 2016 г. 12:46 + в цитатник
Я считал что при загрузке базы сначала выполняется макрос autoexec, а потом грузится форма, указанная в параметрах загрузки базы. И вот столкнулся с такой вещью. У меня в autoexec вызываются несколько функций, а те в свою очередь вызывают другие функции. И получается, что autoexec ещё не отработал, а форма уже загрузилась.

У меня должны в autoexec выполниться следующие проверки
- наличие пути к удалённой базе
- наличие самой удалённой базы
- отсутствие подключенных пользователей к удалённой базе.

В случаи невыполнения очередной проверки выводится MsgBox с сообщением об этом и работа оканчивается.
Но у меня выводится загружаемая форма, а поверх её висит этот MsgBox с сообщением об ошибке. Странно это.

-------------------------------------------------------------
А ты вложил уже свой кровный рубль в 50-ти миллиардное состояние Билла Гейтса?

http://www.sql.ru/forum/1209016/poryadok-vypolneniya-makrosa-autoexec-i-zagruzhaemoy-formy


текстовый фильтр в форме

Пятница, 08 Апреля 2016 г. 11:13 + в цитатник
Сделал текстовый фильтр, но не получается сделать его так, чтобы я мог записывать в ячейку несколько слов, через пробел,
и вторая проблема, если я пишу в ячейке слово, которого нет, то вылетает ошибка кода, как сделать так чтобы в форме просто не показаловалось бы записей?

https://cloud.mail.ru/public/6NDU/3upFjww2H

http://www.sql.ru/forum/1208996/tekstovyy-filtr-v-forme


Вопрос по производительности запроса.

Пятница, 08 Апреля 2016 г. 10:59 + в цитатник
Наверно запрос глупый, но завис...
Есть запрос, являющийся источников данных для формы, вида:
SELECT F_Gr_A_Form_EX.*
FROM F_Gr_A_Form_EX
WHERE (((F_Gr_A_Form_EX.ID_Ob)=IIf(([forms]![Urovni_Gr_EX]![Spr_Object]=0),[ID_Ob],[forms]![Urovni_Gr_EX]![Spr_Object])));

Что бы мне с ним сделать, что бы увеличить производительность. В данном виде тормозит ощутимо.

http://www.sql.ru/forum/1208992/vopros-po-proizvoditelnosti-zaprosa


Parametrs

Пятница, 08 Апреля 2016 г. 09:18 + в цитатник
Добрый день, подскажите как правильно пользоваться параметрами.
Есть сохраненный запрос типа
select * form t1 where id=[введите значение]


Как передать в него значение id по нажатию кнопки?
Dim tq As DAO.QueryDef
    Set tq = CurrentDb.QueryDefs("tst")
    tq.Parameters(0).Value = "1"
        
    qdf.Execute


На строке Execute Невозможен запуск запроса на выборку

http://www.sql.ru/forum/1208969/parametrs


ADP проект в accdb

Четверг, 07 Апреля 2016 г. 12:25 + в цитатник
Доброго времени суток форумчане.
Может кто подсказать про ADP проекты Access.
Досталась по наследству, от предыдущего админа база данных, но с выходом 2013 офиса стало невозможно ее использовать. И возникла необходимость преобразования ее к новому формату.
В связи с этим возник ряд вопросов на которые хотелось бы найти ответы.
1. Я так понял, что в проектах ADP все объекты хранятся на SQL (включая формы). Так ли это?
2. Если так, то я экспортом перенес объекты (формы, отчеты, модули). Таблицы надо просто связать с проектом?
3. Как быть с остальными объектами которые не переносятся? Написать заново?
4. Что делать с функциями и чем они отличаются? (см. скрин)
5. Что делать со схемами данных (и почему их 5 шт) (см. скрин)
Премного благодарен за будущую помощь.

http://www.sql.ru/forum/1208836/adp-proekt-v-accdb


Нераспознаваемый формат неповрежденной базы данных mdb

Четверг, 07 Апреля 2016 г. 08:19 + в цитатник
Имеется база данных, созданная в access 2007 в формате mdb, благополучно существующая на одной машине. Однако попытка открыть копию этой базы на другой машине заканчивается неудачно: "Нераспознаваемый формат базы данных". Сначала пытался открыть ее в access 2003 - неудачно, mdb plus - то же самое, поставил access 2007 - с тем же успехом. Перерыв инет, ничего подобного не нашел - все сводится к обсуждению поврежденных баз данных. Здесь же совершенно другой случай - база не повреждена, но благополучно открываясь на одной машине, совершенно не желает этого делать на другой. Как быть?

http://www.sql.ru/forum/1208796/neraspoznavaemyy-format-nepovrezhdennoy-bazy-dannyh-mdb


Помогите чайнику с sql запросом

Четверг, 07 Апреля 2016 г. 08:00 + в цитатник
Всем привет!
Есть некая таблица, нужно (часть из ниже перечисленного я уже реализовал):
1 перевернуть таблицу через transform
2 подсчитать сумму строк (доп. столбец)
3 отсортировать по убыванию (доп. столбец)
4 отсортировать 10 первых записей, крупнейшие (доп. столбец)
5 найти сумму остальных строк (кол-во строк -10)
Вопрос: можно ли это сделать за 1 sql-запрос или нужно шаманить по отдельности?
Пункты 1 и 2 сделал, на остальных затык, работают по отдельности. Может я взялся за невозможное?

http://www.sql.ru/forum/1208792/pomogite-chayniku-s-sql-zaprosom


Recordset для Insert

Среда, 06 Апреля 2016 г. 21:51 + в цитатник
Вместо INSERT хочу использовать Recordset и мне нужно переделать код, если кто сможет помочь, буду благодарен.

INSERT INTO baza (IDpatient, IDtest, cena)
SELECT V.IDpatient, V.IDtest, Str(V.cena) 
FROM tab_q_2 AS V
WHERE Not Exists (SELECT B.IDpatient, B.IDtest, B.cena FROM baza B
             WHERE B.IDpatient= V.IDpatientAND B.IDtest= V.IDtest)


Наброски кода:

Dim rs As DAO.Recordset
Set rs = CurrentDb.OpenRecordset("baza", dbOpenDynaset)

Dim rst As DAO.Recordset
Set rst = CurrentDb.OpenRecordset("tab_q_2", dbOpenDynaset)

rs.AddNew  
    rs("IDpatient") = rst!IDpatient
    rs("IDtest") = rst!IDtest
    rs("cena") = rst!cena
rs.Update

rst.Close
Set rs = Nothing

rs.Close
Set rs = Nothing

http://www.sql.ru/forum/1208773/recordset-dlya-insert


Кнопки

Среда, 06 Апреля 2016 г. 15:42 + в цитатник
Может кто-нибудь подсказать почему кнопки разные по внешнему виду и как сделать единообразие?

http://www.sql.ru/forum/1208722/knopki


a2003 переход по контролам

Среда, 06 Апреля 2016 г. 15:04 + в цитатник
Знатоки.
Где кроется механизм ?
Есть некая форма старых авторов.
В форме в режиме таблица курсор переходит по полям 1, 4, 6 из 1,2,3,4,5,6,7,8,9 и переходит на новую строку
Индекс по таб по порядку 0..8 для полей 1...9
Никаких setfocus в модуле формы нет.

http://www.sql.ru/forum/1208712/a2003-perehod-po-kontrolam


программно создать пароль к базе данных

Среда, 06 Апреля 2016 г. 13:21 + в цитатник
Подскажите, пожалуйста, как сделать чтобы на определнную дату база данных зашифровывалалсь паролем ?

т.е., например, если наступило 06/04/2016 то база данных при окрытии запрашивает пароль

http://www.sql.ru/forum/1208680/programmno-sozdat-parol-k-baze-dannyh


Форма

Среда, 06 Апреля 2016 г. 08:55 + в цитатник
Добрый день, подскажите как сделать.
Есть форма , на ней две подчиненной, при выборе какого-то значения в первой форме отображать все связанные данные во второй.
На форуме вроде было что то подобное но я так и не нашел

http://www.sql.ru/forum/1208630/forma


Выбрать user_id за предыдущий год

Вторник, 05 Апреля 2016 г. 21:27 + в цитатник
Имеются 2 таблицы.
Первая:
user_id	cdate
166 1448095759
166 1445611138
166 1455777166
229 1423499149
229 1442648927
224 1458758619
66 1273854331
99 1355864765
99 1362604775

Вторая:
user_id	last_name	first_name	middle_name
166 1 1 1
229 2 2 2
224 3 3 3
66 4 4 4
99 5 5 5

cdate - время в unix Формате

Как можно получить имена тех, кто присутствует в списке за 2015-й год, но отсутствует в 2016-м? А все студенты до 2015-го игнорируются вообще.

SELECT max(cdate), user_id
FROM ast_vm_orders
WHERE (cdate>1420070401 AND cdate<1451606401)
GROUP BY user_id;

Выводит и тех, кто оказался в 2016-м. Как их обрезать можно?

http://www.sql.ru/forum/1208574/vybrat-user-id-za-predydushhiy-god


Хэширование в Access

Вторник, 05 Апреля 2016 г. 12:34 + в цитатник
Уважаемые, подскажите, может кто знает или сталкивался.
Есть задача сделать базу, в которой идентификация пользователей будет выполняться по логин/паролю.
Учетные данные будут храниться в базе.
Вопрос: каким образом можно хэшировать пароли (чтобы в базе хранился хэш, а не пароль в открытом виде)?
Может функция есть готовая?

Заранее спасибо!

http://www.sql.ru/forum/1208506/heshirovanie-v-access


Подключение

Вторник, 05 Апреля 2016 г. 12:24 + в цитатник
Добрый день. подскажите из-за чего выходит ошибка.
Выделяется строка rs2.Open
object variable or with block variable not set

Dim rs2 As Object
Dim objConnectionSer As Object

Set objConnectionSer = New ADODB.Connection

objConnectionSer.Open "Provider=SQLOLEDB.1;Password=SID;Persist Security Info=True;User ID=SID;Initial Catalog=tst;Data Source=r06"

rs2.Open "dbo.Dogovors", objConnectionSer, 3, 3

http://www.sql.ru/forum/1208503/podkluchenie


Создание кнопки

Вторник, 05 Апреля 2016 г. 12:18 + в цитатник
Есть некая форма. Как создать в нем кнопку, при нажатии которой сразу открывался нужный файл, а не не папка, с компьютера.

http://www.sql.ru/forum/1208501/sozdanie-knopki


Форма и отчет отпусков для сотрудников

Вторник, 05 Апреля 2016 г. 09:25 + в цитатник
Здравствуйте друзья. Создал таблицу "Сотрудники" и на основе этой таблицы форму и отчет. Кнопка "Вес список" выводит отчет со списком отпусков всех сотрудников, независимо от месяца.
Проблема такая: не могу создать макросы, чтобы сортировать список отпусков по месяцам, то есть,чтобы заработал кнопка "Список по месяцам". И еще одна просьба: когда в поле "Выбор месяца" выбираю, допустим месяц "Май", хотел бы, чтобы рядом с списками автоматически появилось отчет со списком отпусков всех сотрудников только на май месяц. Файл прилагаю.

http://www.sql.ru/forum/1208467/forma-i-otchet-otpuskov-dlya-sotrudnikov


Почему не выгружаются данные во второй лист с 1-го раза

Понедельник, 04 Апреля 2016 г. 22:32 + в цитатник
Приветствую, уважаемые форумчане!

Требуется наводка, уже голову сломал))

Есть MSA 2003 mdb-база, есть готовый шаблон экселя (на самом деле их уже много, они выгружаются как положено).
Есть некий шаблон с двумя листами: "манифест" и "акт". Требуется выгружать разные данные из таблицы Выгрузка в таблицы ManifTBL и AktTBL, затем из этих таблиц и неких запросов выгружаем в эксель-шаблон, который уже находится в базе акцесса.

Проблема:
- Первый раз при выгрузке (нажатии кнопки экспорта) выгружаются данные только в лист "манифест". Лист "акт" остается активным, и выделен диапазон B10 (- срабатывает код xlApp.Sheets("акт").Range("B10").Activate - ).
- Новые пустые строки в шаблон не вставляются ( - не работает For j = 0 To rs4.RecordCount - 3
xlApp.Selection.Insert Shift:=xlDown
Next j
-).
- Рекордсет не вставляется ( - не работает xlApp.Sheets("акт").Range("rangeVstavka").CopyFromRecordset rs4 - ).
- Остальные значения в ячейки с листа "акт" вставляются.

!!! Если не закрывать эту книгу и еще раз нажать кнопку Выгрузки в эксель - заполняется и лист "акт" !!!

Вопрос: где ошибка и почему такое происходит???

Примерный код (изменил несущественно):

+
Option Compare Text
Option Explicit
  Dim xlApp As Excel.Application
  Dim xlBook As Excel.Workbook
  Dim xlSheet As Excel.Worksheet
  Dim obExcel As Object
  Dim obWindow As Object  'окно документа

'Печать/выгрузка манифеста и акта
Private Sub ManifAkt_9()

'Открываем шаблон Excel-файла
  StartExcelEasy "Shabl"
  
'Отключаем вывод оповещаний
  DoCmd.SetWarnings False

'Вставка данных для листа-манифеста
  DoCmd.RunSQL "INSERT INTO [ManifTBL] (  бла-бла-бла )" & _
  "SELECT Выгрузка.бла-бла-бла " & _
  "FROM [Выгрузка];"
  
 'Включаем оповещания
  DoCmd.SetWarnings True
  
  CounterManif 'вызываем функцию счетчика

  Dim sNWind1 As String       ' For conn1 (ManifTBL-таблица)
  Dim sNWind2 As String       ' For conn2 (запрос)
  Dim sNWind3 As String       ' For conn3 (AktTBL, таблица)
  Dim sNWind4 As String       ' For conn4 (AktZapros, Запрос)
  
  Dim conn1 As New ADODB.Connection
  Dim conn2 As New ADODB.Connection
  Dim conn3 As New ADODB.Connection
  Dim conn4 As New ADODB.Connection
  
  Dim rs1 As ADODB.Recordset  
  Dim rs2 As ADODB.Recordset  
  Dim rs3 As ADODB.Recordset
  Dim rs4 As ADODB.Recordset
     
  sNWind1 = "c:\база.mdb"
  conn1.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & sNWind1 & ";"
  conn1.CursorLocation = adUseClient
   
  sNWind2 = "c:\база.mdb"
  conn2.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & sNWind2 & ";"
  conn2.CursorLocation = adUseClient
   
  sNWind3 = "c:\база.mdb"
  conn3.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & sNWind3 & ";"
  conn3.CursorLocation = adUseClient
  
  sNWind4 = "c:\база.mdb"
  conn4.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & sNWind4 & ";"
  conn4.CursorLocation = adUseClient
   
  Set rs1 = conn1.Execute("ManifTBL", , adCmdTable)                  ' Таблица
  Set rs2 = conn2.Execute("ManifZapros", , adCmdTable)                 ' Запрос
  Set rs3 = conn3.Execute("AktTBL", , adCmdTable)       ' Таблица
  Set rs4 = conn4.Execute("AktZapros", , adCmdTable) ' Запрос
    
'Вставка количества пустых строк в эксель, равную количеству строк в таблице ManifTBL
'- Делаем лист "манифест" активным
  xlApp.Sheets("манифест").Select
  xlApp.Sheets("манифест").Range("9:9").Select
  xlApp.Sheets("манифест").Range("B9").Activate
  
  Dim i As Integer
' - Вставляем нужное кол-во строк в таблице-шаблоне. // Здесь выполняется шикарно.
  For i = 0 To rs1.RecordCount - 3
  xlApp.Selection.Insert Shift:=xlDown
  Next i
   
'Экспорт из МСА-таблицы ManifTBL в Эксель, лист манифест // Здесь всё выполняется шикарно.
  xlApp.Sheets("манифест").Range("rangeManif").CopyFromRecordset rs1
  xlApp.Sheets("манифест").Range("date").value = Now()
  xlApp.Sheets("манифест").Range("Доставил_Маниф").value = rs2![Доставил_Маниф] ' ИЗ ЗАПРОСА!!!
  xlApp.Sheets("манифест").Range("WhoPrint").value = CurrentUser()
  xlApp.Sheets("манифест").Range("TimePrint").value = Time
  xlApp.Sheets("манифест").Range("A7").Select
  xlApp.Selection.Sort Key1:=xlApp.Sheets("манифест").Range("A7"), Order1:=xlAscending, Header:=xlGuess, _
  OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom

' Close 2 recordsets
  rs1.Close
  rs2.Close
  conn1.Close
  conn2.Close
  Set rs1 = Nothing
  Set rs2 = Nothing
     
' ============== Выгрузка Листа Акт ============================

'Отключаем вывод оповещаний
  DoCmd.SetWarnings False
     
'Вставляем данные для листа Акт
  DoCmd.RunSQL "INSERT INTO [AktTBL] ( бла-бла-бла )" & _
  "SELECT Выгрузка.бла-бла-бла " & _
  "FROM [Выгрузка];"

'Считаем и вставляем нумерацию строк в таблице AktTBL
  CounterAkt

'Проверяем, является ли отправитель ИМ и вставляем значения в ОценочнаяСтоимость и НаложенныйПлатеж
' - Является ИМ (ОцСт=ОцСт, НалПлат=ОцСт):
  DoCmd.OpenQuery "_AktPeredachiUpdIM_Sum"
' - НЕ является ИМ (ОцСт=3000, НалПлат=0)
  DoCmd.OpenQuery "_AktPeredachiUpdNotIM_Sum"

'Включаем оповещания
  DoCmd.SetWarnings True

' ===== ЭКСПОРТ В ЭКСЕЛЬ ===== !!!
  xlApp.Sheets("акт").Activate
  xlApp.Sheets("акт").Range("10:10").Select
  xlApp.Sheets("акт").Range("B10").Activate

'Вставляем нужное кол-во строк в таблицу-шаблон ' // ЗДЕСЬ НЕ РАБОТАЕТ, ВЫШЕ НА 1-м ЛИСТЕ РАБОТАЕТ.
  Dim j As Integer
  For j = 0 To rs4.RecordCount - 3
  xlApp.Selection.Insert Shift:=xlDown
  Next j
   
'Экспорт из МСА запроса AktZapros в Эксель, лист акт

  xlApp.Sheets("акт").Range("rangeAkt").CopyFromRecordset rs4 ' // ЗДЕСЬ НЕ РАБОТАЕТ
  
'Вставляем дату в шапку
  'xlApp.Sheets("акт").Range("date").value = Now() ' // И ТАК РАБОТАЕТ !!!
  xlSheet.Range("date").value = Now() ' // ЗДЕСЬ РАБОТАЕТ !!!
  xlApp.Sheets("акт").Range("WhoPrint").value = CurrentUser() ' // ЗДЕСЬ РАБОТАЕТ !!!
  xlApp.Sheets("акт").Range("TimePrint").value = Time ' // ЗДЕСЬ РАБОТАЕТ !!!
  
'Close the connection. Закрываем подключения, ресетим рекордсеты
 
  rs3.Close
  rs4.Close
  conn3.Close
  conn4.Close
  
  Set rs3 = Nothing
  Set rs4 = Nothing
  Set xlSheet = Nothing
  Set xlBook = Nothing
  Set xlApp = Nothing
   
End Sub

http://www.sql.ru/forum/1208429/pochemu-ne-vygruzhautsya-dannye-vo-vtoroy-list-s-1-go-raza


Импорт текстового файла (автоудаление пробелов). Баг или фича?

Понедельник, 04 Апреля 2016 г. 16:23 + в цитатник
Доброе время суток,

Случайно наткнулся на проблему при импорте текстового файла в A2010 (в формате mdb). Если в конце текстового значения содержатся пробелы, то они автоматически удаляются.

Есть ли возможность отключения этой фичи?

http://www.sql.ru/forum/1208387/import-tekstovogo-fayla-avtoudalenie-probelov-bag-ili-ficha



Поиск сообщений в rss_sql_ru_access_programming
Страницы: 353 ... 201 200 [199] 198 197 ..
.. 1 Календарь