Access? как победить большую базу

Обсуждение вопросов по использованию Excel, Access и других программ оптимизирующих работу закупщика
Sergey
Гуру
Гуру
Сообщений: 1135
Зарегистрирован: 28 май 2015 06:16
Имя: Сергей
Фамилия: Маркин
Должность: ведущий аналитик
Откуда: Москва

Сообщение Sergey » 14 ноя 2007 16:47

Roman писал(а):У меня даже задачка есть, но она для знатоков Access

а разве есть такие задачки для Аксесса, которые в Экселе не решаются? :)

Реклама
Аватар пользователя
Роман Бодряков
Авторитет
Авторитет
Сообщений: 5253
Зарегистрирован: 19 апр 2004 03:00
Имя: Роман
Фамилия: Бодряков
Должность: Ген.Директор в кубе - наноолигарх
Откуда: Россия

Сообщение Роман Бодряков » 14 ноя 2007 18:47

Есть,

Из движения товара сгенерить ежедневные остатки по 8 тыс. позиций за 500 дней и потом еще ряд расчетов из этой базы.

Естесственно решается, но делать это по частям долго и муторно. :-)

dimitrius
Пользователь
Пользователь
Сообщений: 100
Зарегистрирован: 20 июл 2007 03:00

Сообщение dimitrius » 14 ноя 2007 19:36

Roman писал(а):Есть,

Из движения товара сгенерить ежедневные остатки по 8 тыс. позиций за 500 дней и потом еще ряд расчетов из этой базы.

Естесственно решается, но делать это по частям долго и муторно. :-)


А в чем фишка и нюансы?  :D

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

Вобщем, нужно конкретизировать

Аватар пользователя
Роман Бодряков
Авторитет
Авторитет
Сообщений: 5253
Зарегистрирован: 19 апр 2004 03:00
Имя: Роман
Фамилия: Бодряков
Должность: Ген.Директор в кубе - наноолигарх
Откуда: Россия

Сообщение Роман Бодряков » 14 ноя 2007 20:23

История простая

Есть отчет по движению товаров.
приходный документ, расходный, инвертаризация и т.д.
Все идет в строчках, в день несколько документов.

Надо получить остатки каждого товара на конец каждого дня.

день,товар,остаток

Сложность 8000товаров * 500дней = 4 000 0000 записей, поэтому Excel не подходит. Не могу решить эту задачу без программирования.

А программировать не умею :-) Подскажите я прав или чего-то про ACCESS не знаю?

dimitrius
Пользователь
Пользователь
Сообщений: 100
Зарегистрирован: 20 июл 2007 03:00

Сообщение dimitrius » 15 ноя 2007 08:10

4 миллиона записей - достаточно большая таблица даже для Access. Количество строк в таблице и ее размер напрямую влияют на время обращения запросов к ней. Действительно ли необходимо создавать такую базу? Обычно в таких случаях используют обходные пути. Как один из вариантов тот, о котором я уже писал. Другой - использование технолоии OLAP.

Чтобы ответить более конкретно, нужно знать конечный результат (для чего в конечном итоге должна использоваться эта таблица), и структуру уже имеющихся данных. Например, таблица "Движение товаров": а) тип документа (приход/расход/инвентаризация); б) дата; в) артикул; г) количество и т.д.

С уважением,

Аватар пользователя
Дядя_Ежик

Сообщение Дядя_Ежик » 15 ноя 2007 09:14

И еще было бы неплохо уточнить, как часто этот расчет должен производиться? И какое время расчета вы считаете приемлемым?Достаточно ли провести его один раз, потратить на это пару суток и наслаждаться полученной таблицей или планируется запускать его как минимум раз в неделю?

Аватар пользователя
Роман Бодряков
Авторитет
Авторитет
Сообщений: 5253
Зарегистрирован: 19 апр 2004 03:00
Имя: Роман
Фамилия: Бодряков
Должность: Ген.Директор в кубе - наноолигарх
Откуда: Россия

Сообщение Роман Бодряков » 15 ноя 2007 10:50

Сразу отмечу - я не программист, я продвинутый пользователь.

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

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

На результирующую таблицу собираюсь повесить сводную из Excel (тот же OLAP). А вот из сводной результаты будут использоваться в других отчетах.

Почему так? Пока работали с небольшими массивами, все было просто. Теперь приходится тягать данные кусками. Очень мешает. 2007 Excel работу облегчил, но и это не спасает.

Скорость-не принципиальна. В пределах разумного.
Для подобной работы стоит машина 2DUO, с 2 винчестерами в зеркале и с оперативкой 2Гига. Она пустая и очень шустрая.

dimitrius
Пользователь
Пользователь
Сообщений: 100
Зарегистрирован: 20 июл 2007 03:00

Сообщение dimitrius » 15 ноя 2007 18:17

Наверное, проще это будет сделать действительно через написание макроса.

Однако еще нюанс:
инвентаризация одна, в начале периода, или их несколько по ходу?
возможно ли различие в расчетных остатках (инвентори нач + приход - расход) и фактических остатков (инвентори конечн)?
если да, нужно ли фиксировать это расхождение и принимать за новую точку инвентаризацию?

Аватар пользователя
stanley

Сообщение stanley » 26 ноя 2007 11:20

Roman писал(а):Сразу отмечу - я не программист, я продвинутый пользователь.

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

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

На результирующую таблицу собираюсь повесить сводную из Excel (тот же OLAP). А вот из сводной результаты будут использоваться в других отчетах.

Почему так? Пока работали с небольшими массивами, все было просто. Теперь приходится тягать данные кусками. Очень мешает. 2007 Excel работу облегчил, но и это не спасает.

Скорость-не принципиальна. В пределах разумного.
Для подобной работы стоит машина 2DUO, с 2 винчестерами в зеркале и с оперативкой 2Гига. Она пустая и очень шустрая.


делалось, неоднократно, на регулярной основе и с бОльшим количеством данных. любой приличный sql-server.
заодно и пачку стандартных отчетов единоразово рисуем. реально вижу два выбора - oracle, m$ssql. преимущество первого - высокая надежность и скорость, огромное количество стороннего софта, второго - простота, наличие в поставке инструмента генерации отчетов, не требующего особых знаний (как раз уровень продвинутого пользователя). обозначенного железа хватит за глаза.
доступ клиента можно вообще обеспечить через web :)


Вернуться в «Программы для закупщиков»

Кто сейчас на форуме

Количество пользователей, которые сейчас просматривают этот форум: CommonCrawl [Bot] и 0 гостей