Форумы HiProg.com - MS ACCESS, VBA, VB

 

Ответить на сообщение

Вернуться к теме

Вы отвечаете на сообщение:

ник: gant
С SQL я не в ладах. Англичане говорят, старую собаку трудно учить новым трюкам.
Есть обычная файл . сервер программа. Работает стабильно 8 лет и в Access 2003, 2007 и 2010. Время от времени экономисты просят сделать некоторые не предусмотренные ранее вещи.
Я столкнулся с такой задачей . привожу упрощенный пример.
TabA
-------
VertragNr Result
25 0?
26 0?
27 0?

TabB
--------
LiefNr Oplata
25 3?
26 2 ?
25 3?
25 5?
26 10?
27 10?
27 15?

Результат должен оказаться в TabA

TabA
-------
VertragNr Result
25 11?
26 12?
27 25?

Мое решение примитивное: сделано два запроса, которые выполняю один за другим.
В Запр1 сжимаю TabB (Group) и формирую промежуточную Таб3
В Запр2 помещаю результат из Таб3 в TabA (UPDATE).

Здесь много недостатков - надо при входе в процедуру удалять Таб3, если она еще существует. Кроме того, эта Таблица3 формируется в программе PROG.MDE (Front-END).
Значит, PROG.MDE будет разбухать и надо будет заботиться об её систематическом сжатии
возможно 1 раз в день при старте PC (Autoexec).
А можно ли как-то с помощью Function сформировать массив в памяти и потом загнать его в
TabA.

Благодарю заранее за участие.


Ваше имя:

Пароль:

Цитировать: [quote][/quote] Код: [code][/code]
Жирный: [b][/b] Наклонный: [i][/i]
URL: [url][/url] 

Сообщение:

 Размер файла не более 50 Кбт. Большие файлы можно размещать на www.slil.ru

Прикрепить:

 

Для вставки смайлов в текст щелкните по значку.