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

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

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

Как в подчиненной форме заполнять поля из предыдущей записи.

Среда, 28 Октября 2015 г. 15:25 + в цитатник
Здравствуйте, уважаемые форумчане!
Прошу помощи:

Действия происходят в подчиненной форме (табличный).
1. Как проверить не является ли новая запись первой записью?
2. Как добиться, чтобы при внесении новой записи, в поле "ТарифнаяСетка" (при входе в нее) скопировалось значение того же поля "ТарифнаяСетка" но предыдущей записи?

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

http://www.sql.ru/forum/1182170/kak-v-podchinennoy-forme-zapolnyat-polya-iz-predydushhey-zapisi


Импорт нескольких полей в БД одним INSERTом

Среда, 28 Октября 2015 г. 14:46 + в цитатник
Привет, камрады!

Задача закинуть диапазон EXCEL в существующую БД. Перебирать построчно нудно и непроизводительно, по этому хочется сделать одним INSERTом. Однако вот такой SQL запрос приводит к ошибке. Подскажите, пожалуйста, что не так.

INSERT INTO Operation(FIO)
SELECT * 
FROM [Excel 12.0 xml;HDR=Yes;IMEX=1;DATABASE=C:\myWorkbook.xlsx].[Лист1$C2:C500];

http://www.sql.ru/forum/1182159/import-neskolkih-poley-v-bd-odnim-insertom


Установка даты и времени в Access

Среда, 28 Октября 2015 г. 10:22 + в цитатник
База Access просматривает данные из Sql Server. Формат поля datetime, однако в Access я не нашел возможности установить дату со временем. Как быть?

http://www.sql.ru/forum/1182095/ustanovka-daty-i-vremeni-v-access


Модуль автоматического создания резервных копий (архивирования)

Среда, 28 Октября 2015 г. 10:09 + в цитатник
Пользуюсь давно. Вот решил оформить в качестве примера. Может кому-то и пригодится.

Модуль автоматического создания резервных копий табличной части разделённой базы данных.

Имя табличной части разделённой БД должно состоять из имени интерфейсной части и суффикса _be.
Может работать в ручном режиме и по расписанию.
Может производить сжатие перед созданием резервной копии.
Можно выбрать место для хранения резервной копии.
Имя резервной копии состоит из имени табличной части базы данных и даты-времени создания резервной копии.
Для Windows XP и выше используются встроенные средства создания ZIP архивов
для младших версий Windows резервные копии создаются без архивирования.

Может работать в Access от 2000 и выше в базах формата MDB и ACCDB.
Может функционировать в 32-х и 64-х версиях Access.
Табличная часть должна иметь тот же формат, что и интерфейсная - MDB или ACCDB.


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

http://www.sql.ru/forum/1182092/modul-avtomaticheskogo-sozdaniya-rezervnyh-kopiy-arhivirovaniya


Чем можно заменить функцию StrPtr(Ptr)

Вторник, 27 Октября 2015 г. 22:58 + в цитатник
Пришлось переводить свою программу на Access 2010 x64 (в х32 всё работало) и оказалось что функция StrPtr(Ptr) в х64 отсутствует

Функция StrPtr

StrPtr(Ptr)

Недокументированная функция StrPtr служит для получения указателя на Unicode-строку (адреса строки в памяти) для передачи его функции API

Возвращаемое значение
Возвращает данные типа Long, содержащие указатель на первый символ строки

Кроме этой функции, все функции работы с указателями оказались недокументированными. А они мне нужны. Что делать?

http://www.sql.ru/forum/1182054/chem-mozhno-zamenit-funkciu-strptr-ptr


вопрос по ListBox-у с MultiSelect-ом и его событиям

Вторник, 27 Октября 2015 г. 19:40 + в цитатник
На форме есть два списка со множественным выбором. Требуется, чтобы при выборе одного или нескольких значений в первом списке выбранные значения отображались бы во втором списке. Всё относительно неплохо работает через событие AfterUpdate первого списка при выборе значений из списка мышью (используется ItemsSelected в цикле). Если же выбирать значения с помощью клавиатуры стрелками - всё не работает должным образом. Это происходит из-за того, что выделение значений списка происходит после события AfterUpdate списка и в коллекции ItemsSelected новые значения просто не успевают появиться!

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

В прикрепленном файл примера.

http://www.sql.ru/forum/1182030/vopros-po-listbox-u-s-multiselect-om-i-ego-sobytiyam


ListView цвет границы ячеек

Вторник, 27 Октября 2015 г. 16:51 + в цитатник
Простой(сложный) вопрос, юзера!!(( не устраивает бледно серый цвет границ ячеек в ListView, очень хочет черный.
Собсна, зная историю с мытарствами насчет заливки фона ячеек произвольным цветом, хочется спросить с цветом границ ячеек ListView все так же плохо, или есть варианты ?

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

http://www.sql.ru/forum/1181997/listview-cvet-granicy-yacheek


Зависает аксесс при выходе из базы

Вторник, 27 Октября 2015 г. 15:42 + в цитатник
Добрый день, в процессе создания базы периодически получается, что при штатном выходе из базы аксесс остается открытым, закрыть его можно только диспетчером задач.
По наблюдениям такая штука получается в ходе написания кода, код при этом работает нормально. Поиски где сломалось занимают много времени, приходится откатывать назад и смотреть с какого места глючит, перекопировать формы и тп., вплоть до переноса всего в новую базу. Напрягает.
Может есть какой-то инструменты отследить сбой? Декомпайл и сжатие не помогают.

http://www.sql.ru/forum/1181982/zavisaet-aksess-pri-vyhode-iz-bazy


Отчет перпендикулярно листа

Вторник, 27 Октября 2015 г. 14:28 + в цитатник
У меня сейчас на основном отчете два подчиненных (один и тот же отчет), подчиненные отчеты должны печататься под углом в 90 градусов к бланку,
Это как?

http://www.sql.ru/forum/1181965/otchet-perpendikulyarno-lista


Не открывается запрос в событии формы

Вторник, 27 Октября 2015 г. 14:24 + в цитатник
Вот такой код, еще не доделал но уже ошибка инструкции SQL
ошибка при открытии запроса, сам запрос прекрасно открывается, в нем используются данные формы.
код
   Set RecFio = New ADODB.Recordset
   RecFio.Open "KvitanzijaReestr", CurrentProject.Connection
   Otv = MsgBox("Удалить запись!" & Chr(13) & _
       FioSokr(RecFio.Fields("Fam"), RecFio.Fields("Imja"), RecFio.Fields("Otch")) _
       & Chr(13) & "Продолжить?", vbYesNo)
     If Otv <> 6 Then
       RecFio.Close
       Set RecFio = Nothing
       Exit Sub
     End If
   RecFio.Close
   Set RecFio = Nothing

http://www.sql.ru/forum/1181962/ne-otkryvaetsya-zapros-v-sobytii-formy


Возможна ли оптимизация запроса ?

Понедельник, 26 Октября 2015 г. 20:52 + в цитатник
Вот весь запрос, он работает как надо, но есть предположение, что его выполнение можно оптимизировать...
SELECT a.prodID, a.prodName, c.Quantity, 
                                    (select sum(f.Quantity) from operations f where f.operName='realiz' and f.operDate<#7/23/15# and f.prodID=a.prodID) AS bRealiz,
                                    (select sum(f.Quantity) from operations f where f.operName='prihod' and f.operDate<#7/23/15# and f.prodID=a.prodID) AS bPrihod,
                                    (select sum(f.Quantity) from operations f where f.operName='spisanie' and f.operDate<#7/23/15# and f.prodID=a.prodID) AS bSpisanie,
                                    (select sum(f.Quantity) from operations f where f.operName='vozvrat' and f.operDate<#7/23/15# and f.prodID=a.prodID) AS bVozvrat,
                                    SUM (IIF(b.operName='realiz', b.Quantity, 0)) AS Realiz,
                                    SUM (IIF(b.operName='prihod', b.Quantity, 0)) AS Prihod,
                                    SUM (IIF(b.operName='spisanie',  b.Quantity, 0)) AS Spisanie,
                                    SUM (IIF(b.operName='vozvrat', b.Quantity, 0)) AS Vozvrat
FROM   (((products a)
LEFT JOIN  (SELECT * FROM operations WHERE operations.operDate between #7/23/15# and #7/30/15#) As b ON a.prodID = b.prodID)
LEFT JOIN  (SELECT * FROM remains WHERE remains.periodID=1) As c ON a.prodID=c.prodID)
GROUP BY a.prodName,a.prodID,c.Quantity

Объясню смысл происходящего, данный запрос из таблицы remains запрашивает остатки товаров на нужный период (начало месяца), затем серией подзапросов к таблице operations
 (select sum(f.Quantity) from operations f where f.operName='realiz' and f.operDate<#7/23/15# and f.prodID=a.prodID) AS bRealiz,
                                    (select sum(f.Quantity) from operations f where f.operName='prihod' and f.operDate<#7/23/15# and f.prodID=a.prodID) AS bPrihod,
                                    (select sum(f.Quantity) from operations f where f.operName='spisanie' and f.operDate<#7/23/15# and f.prodID=a.prodID) AS bSpisanie,
                                    (select sum(f.Quantity) from operations f where f.operName='vozvrat' and f.operDate<#7/23/15# and f.prodID=a.prodID) AS bVozvrat,

я получаю движение товара до нужной даты, чтобы рассчитать остаток на начало периода - 23.07.2015 (остаток на начало месяца + движение до нужной даты "23.07.2015")
И заключительная серия запросов
                                    SUM (IIF(b.operName='realiz', b.Quantity, 0)) AS Realiz,
                                    SUM (IIF(b.operName='prihod', b.Quantity, 0)) AS Prihod,
                                    SUM (IIF(b.operName='spisanie',  b.Quantity, 0)) AS Spisanie,
                                    SUM (IIF(b.operName='vozvrat', b.Quantity, 0)) AS Vozvrat

Рассчитывает уже само движение товара в нужном периоде (23.07.2015 - 30.07.2015)

http://www.sql.ru/forum/1181854/vozmozhna-li-optimizaciya-zaprosa


Почему 2003 Access не работает в многопользовательском режиме

Понедельник, 26 Октября 2015 г. 14:17 + в цитатник
Даже растерялся, на одном ПК открываю базу и работаю
на другом она просто не открывается, никаких ошибок не пишет, просто не открывается
совсем растерялся от неожинанности

http://www.sql.ru/forum/1181771/pochemu-2003-access-ne-rabotaet-v-mnogopolzovatelskom-rezhime


Ошибка в выражении в запросе

Понедельник, 26 Октября 2015 г. 14:13 + в цитатник
Доброго времени суток, уважаемые форумчане!

В простой запрос вставил выражение:

DLookUp("[tsSotrudSub]![Событие]";"[tsSotrudSub]";"[tsSotrudSub]![Дата]=#" & Format([ДатаПослСобытия];"Краткий формат даты") & "#")

где:
[ДатаПослСобытия] - поле этого же запроса, значение которого полученно функцией DMax и находит наибольшую дату из таблицы [tsSotrudSub].

На синтаксис не ругается но возвращает значение "#Ошибка".
Подскажите пожалуйста как исправить. Заранее спасибо!

http://www.sql.ru/forum/1181770/oshibka-v-vyrazhenii-v-zaprose


Выборка случайных вопросов из таблицы

Понедельник, 26 Октября 2015 г. 14:04 + в цитатник
Добрый день!
Подскажите, пожалуйста, как переделать запрос.
На данный момент выборка случайных вопросов для теста происходит так (количество вопросов в тесте знали точно при выборке Темы, Уровня экзамена)
Таблицы:
1.Сборник вопросов:
idСборник
НомерСборника
idтема
idВидэкзамена
idСварки
Количество(раньше поле было, когда не было разграничение по РД)

2.Вопросы
idВопрос
Вопрос
НомерправильныйОтвет
НомерВопроса
idправОтвет
id_RD

3.РД
id_РД
Название количество
id_Сборник

Запрос без поле РД:
strs = " SELECT TOP 20
& " Вопросы.IdВопрос, Вопросы.НомерВопроса, Вопросы.Вопрос, Вопросы.IdПравОтвет, Вопросы.НомерПравильныйОтвет, Вопросы.idСборник, " & Id & " as idСтудент" _
& " FROM Вопросы" _
& " WHERE (((Вопросы.idСборник) in (SELECT СборникВопросов.IdСборник" _
& " FROM СборникВопросов" _
& " WHERE (((СборникВопросов.idТема)=" & Forms!Задание!ВыбратьТему & ") " _
& " AND ((СборникВопросов.id_Видэкзамена)=" & Forms!Задание!ВыбратьУровень & "))))) " _
& " ORDER BY rnd(INT(NOW*Вопросы.IdВопрос)-NOW*Вопросы.IdВопрос)"

Сейчас в каждом сборнике вопросов есть еще определенное количество РД и в каждом РД есть количество вопросов, которые нужно выбрать случайным образом из вопросов.

Сделала запрос, который выводит все вопросы по всем РД из сборника, а как сделать выборку вопросов по определенному количеству для каждого РД не знаю(
SELECT Вопросы.IdВопрос, Вопросы.НомерВопроса, Вопросы.Вопрос, Вопросы.IdПравОтвет, Вопросы.НомерПравильныйОтвет, Вопросы.id_RD
FROM Вопросы
WHERE (((Вопросы.id_RD) In (SELECT РД.Id_RD
FROM РД
WHERE (РД.id_Сборник) In (SELECT CборникВопросов.IdСборник
FROM СборникВопросов
WHERE СборникВопросов.idТема=35 AND СборникВопросов.id_Видэкзамена=2 AND СборникВопросов.id_Сварки=5))));
Спасибо .

http://www.sql.ru/forum/1181768/vyborka-sluchaynyh-voprosov-iz-tablicy


Проблема объединения (LEFT JOIN) 3-х таблиц

Понедельник, 26 Октября 2015 г. 10:37 + в цитатник
Вот запрос
SELECT a.prodID, a.prodName, c.Quantity, 
                                    SUM (IIF(b.operName='realiz', b.Quantity, 0)) AS Realiz,
                                    SUM (IIF(b.operName='prihod', b.Quantity, 0)) AS Prihod,
                                    SUM (IIF(b.operName='spisanie',  b.Quantity, 0)) AS Spisanie,
                                    SUM (IIF(b.operName='vozvrat', b.Quantity, 0)) AS Vozvrat
FROM   (((products a)
LEFT JOIN  operations b ON a.prodID = b.prodID)
LEFT JOIN  remains c ON a.prodID=c.prodID)
WHERE c.periodID=1
GROUP BY a.prodName,a.prodID,c.Quantity


Когда таблицу operations добавляю к products, то она как надо добавляется (количество записей рекордсета products не обрезается до количества записей operations). А вот когда добавляется таблица remains с условием c.periodID=1, то рекордсет обрезается до количества записей удовлетворяющих условию "
WHERE c.periodID=1
"
Как сделать, чтобы значения добавлялись в имеющиеся поля без урезания рекордсета ?

http://www.sql.ru/forum/1181707/problema-obedineniya-left-join-3-h-tablic


Как через VBA проверить есть ли узел в файле xml

Понедельник, 26 Октября 2015 г. 10:17 + в цитатник
Подскажите, как средствами VBA проверить наличие/отсутствие узла в загружаемом файле xml?


<man>
	<pers1>
		<f>QQQ</f>
		<i>QQQ</i>
		<o>QQQ</o>
		<dr>QQQ</dr><dr>QQQ</dr>
       </pers1>
	<pers2>
		<f>QQQ</f>
		<i>QQQ</i>
		<o>QQQ</o>
       </pers2>
</man>

т.е. в узла в нет дочернего узла , который есть у узла , как программно это проверить? Пробую работать через MSXML2.DOMDocument60.

    Dim xmlDoc As MSXML2.DOMDocument60
    Dim xmlRoot As MSXML2.IXMLDOMNode
    
    Set xmlDoc = New MSXML2.DOMDocument60
    xmlDoc.async = False
    xmlDoc.validateOnParse = False
    
    If xmlDoc.Load("test.xml") = True Then
        if xmlDoc.???("man/pers1/dr") = True then   '!!! Вот сюда, какую функцию применить?
            Set xmlRoot = xmlDoc.selectSingleNode("man/pers1/dr")
        end if
    end if

http://www.sql.ru/forum/1181701/kak-cherez-vba-proverit-est-li-uzel-v-fayle-xml


как сделать две копии отчета на одной странице

Понедельник, 26 Октября 2015 г. 08:19 + в цитатник
Сформирован отчет
Нужно чтобы две его копии печатались на одной странице.

http://www.sql.ru/forum/1181683/kak-sdelat-dve-kopii-otcheta-na-odnoy-stranice


Ленточная форма граница области данных

Понедельник, 26 Октября 2015 г. 03:18 + в цитатник
Здравствуйте!
Возможно ли в ленточной форме убрать черную линию, отделяющую одну запись от другой?
В свойствах что-то не нашел

http://www.sql.ru/forum/1181666/lentochnaya-forma-granica-oblasti-dannyh


Изменение текста в XML

Воскресенье, 25 Октября 2015 г. 11:50 + в цитатник
День добрый, уважаемые форумчане!
Столкнулся с проблемой изменения xml(до этого дела с xml не имел)...
В принципе идея не нова, но найти решение я пока не смог(хотя уверен оно уже не раз здесь обсуждалось).
Дружу Access с сторонней прогой (если это имеет какое-то значение, то вот и вот)...и всё у меня вроде бы получилось и записи в базу этой проги идут на ура, но, как всегда затуп случился на довольно простом моменте
У проги этой есть файл settings.xml - в котором указывается среди прочего содержимое окна при открытии(думаю идея понятна - внёс данные в базу, хочу что б эти данные отобразились при открытии программы).

Данные указываются между тегами , то есть мне надо заменить весь текст между тегами.

Если есть необходимость, то вот выдержка(каждый - это новая вкладка на экране(их может быть сколько угодно, но мне надо не более двух), 00HQ13800JrY - это ID объекта на вкладке которого будет фокус при открытии )
<session>
      <documents>
        <document>
          <type>doc-invoice</type>
          <object>00HQ13800JrY</object>
        </document>
        <document>
          <type>doc-price-ticket</type>
          <object>00HQ1380007U</object>
        </document>
      </documents>
      <active>00HQ13800JrY</active>
</session>


Пробую открывать xml как текст используя FileSystemObject, копирую в буфер всё содержимое,пытаюсь заменить и записать обратно в файл...

Dim FileName as String
Dim objFSO as FileSistemObject
Dim F, Buffer

FileName = "C:\Base\settings.xml"

Set objFSO = New FileSystemObject

Set F = objFSO.OpenTextFile(FileName, ForReading)
Buffer = F.ReadAll
F.Close

Buffer = Replace(CStr(Buffer), " * ", " сюда вставлю всё что нужно :-) ", 1, -1, 1) 'вот здесь меня и заклинило!

Set F = objFSO.OpenTextFile(FileName, ForWriting)
F.Write Buffer
F.Close


Уверен, что есть путь логичнее, поэтому пока ищу решение - прошу помощи.

http://www.sql.ru/forum/1181579/izmenenie-teksta-v-xml


помогите, пожалуйста, сделать запрос к базе данных

Суббота, 24 Октября 2015 г. 18:13 + в цитатник
есть таблицы:

1. операции с товарами(код,договор,дата,товар,количество,единица,тип операции)
2. операции -(код,тип операции) приход/продажа/возврат поставщику/списание
3. товары(код,товар,категория и тд)

проблема в том, что все типы операции указываются в одной таблице и как сделать запрос на "склад" я не могу понять, чтобы учитывались все типы операции(
понимаю, что нужно с объединением и группировкой, но не могу понять как(
подскажите хоть что-нибудь, пожалуйста!

http://www.sql.ru/forum/1181521/pomogite-pozhaluysta-sdelat-zapros-k-baze-dannyh



Поиск сообщений в rss_sql_ru_access_programming
Страницы: 353 ... 170 169 [168] 167 166 ..
.. 1 Календарь