Вход | Регистрация
 

Хранение и поиск условно-временной информации о продажах в файле

Хранение и поиск условно-временной информации о продажах в файле
Я
   e053nk
 
03.01.22 - 12:44
После свертки базы данных (АльфаАвто) возникла задач получения оборота продаж в свернутом периоде для составления плана закупок. Старая база -будет недоступна.Через год, полтора эта информация будет не нужна, поэтому хранить в базе данных -не вижу смысла.  Поэтому  возник вариант выгрузки оборотов продаж в промежуточный файл. Формат хранения данных примерно такой : Товар-месяц продажи(-возможно склад/подразделение). Данные берутся только по количеству. Хранить предполагаю нарастающим итогом, в обратном порядке от даты свертки. Данных скорее всего будет много,примерно 30000 товаров*24 (за два последних года)=примерно 720000,это без учета аналитики складов (но от не скорее всего откажутся). Доступ к данным нужен произвольный, т.е  не по всему массиву ,а только по текущему набору товаров. Их может быть единицы,а может и сотни. Рассматриваю хранение либо вXML либо в Json. Но если у XMLвроде как есть механизм xpath , то у JSON вообще не знаю существует что то подобное. Да и сам xpath  я не разу не использовал-всегда приходилось считывать полностью файл данных. Вопросы: 1. какие варианты есть для произвольного поиска  данных в файле XML либо в Json. 2.Насколько это "тормознуто" работает. 3.Есть другие варианты получения информации-не имея доступа к исходной базе и не загружая весь массив данных в текущую базу? Внешние источники данных из 1с  -не используем, конфигурация относительно типовая
   2S
 
1 - 03.01.22 - 12:48
РН в расширение
   Aleksey
 
2 - 03.01.22 - 12:50
(1) РС же, зачем тут РН?
   Aleksey
 
3 - 03.01.22 - 12:51
Ну или ВИД, с табличкой на скуле
   e053nk
 
4 - 03.01.22 - 12:52
АЛьф Авто с расширениями не работает
   acht
 
5 - 03.01.22 - 12:54
(0) > Через год, полтора эта информация будет не нужна, поэтому хранить в базе данных -не вижу смысла

Ну и неумный человек. Размера там копейки, зато никаких проблем с правами/бэкапами/обменами. Сам себе проблемы создадешь.
   acht
 
6 - 03.01.22 - 12:55
(4) > с расширениями не работает
Серьезно?
   2S
 
7 - 03.01.22 - 12:57
(2) для итогов, раз есть разрезы, явно нужны суммы
(5) 5 версия?
   e053nk
 
8 - 03.01.22 - 12:58
(7) да
   e053nk
 
9 - 03.01.22 - 13:01
(7) Суммы не нужны, только количество продаж. Итоги будут в самом хранилище данных(файле?) содержаться
   acht
 
10 - 03.01.22 - 13:01
(7) > явно нужны суммы
РН, он для остатоков/оборотов. У него, я насколько понял, тупо готовые числа.
   acht
 
11 - 03.01.22 - 13:02
(9) Если уж так хочешь файлы - используй проверенный временем dbf.
   Aleksey
 
12 - 03.01.22 - 13:03
(7) Нужны обороты, а не итоги
   acht
 
13 - 03.01.22 - 13:04
Но получишь еще и геморой по ссылочной целостности. Удалят за "год, полтора" товар и все.
   e053nk
 
14 - 03.01.22 - 13:04
(11) О, я и забыл про него. А в dbf произвольный поиск есть по файлу?
   e053nk
 
15 - 03.01.22 - 13:05
(12) Скажем так -нужны "итоги" оборотов.
   acht
 
16 - 03.01.22 - 13:07
(14) Есть. Посмотри на методы объекта XBase. Добавишь индексов, еще и быстро будет.
Только это глупости все. Добавь РС/РH в базу и не парь никому мозги.
   Aleksey
 
17 - 03.01.22 - 13:08
(14)
Найти(<Ключ>, <Режим>);
НайтиПоКлючу(<Режим>).

А вообще не проще ли sqlite?
   acht
 
18 - 03.01.22 - 13:11
(17) Да тогда уж любую базу c доступом через ADO...
   acht
 
19 - 03.01.22 - 13:13
А, ну еще и с преобразованием идентификаторов в нормальные ссылки париться... Не, оно конечно хозяин-барин, но я бы женится посоветовал.
   e053nk
 
20 - 03.01.22 - 13:21
Тут подумалось, на основании (17) . Вариант - запилить свою базу, простейшую, и к ней по HTTPзапросу обращаться.
Жаль, Альфа Авто на 20 платформе запускать пока нельзя- можно было сразу запросом  идентификаторы выгружать
   ssh2006
 
21 - 03.01.22 - 13:41
(0)  типичный пример.  Программисту интересно поковыряться, напридумывать костылей. Бизнес оплатит его изыскания, тогда как задача решается просто добавлением регистра в базу на период востребованности данных.
   hhhh
 
22 - 03.01.22 - 17:26
(20) XBase работает только монопольно. То есть к твоей базе сможет подключиться только один человек.
   Aleksey
 
23 - 03.01.22 - 17:33
(20) А что мешает обращаться в копию до порезки?
   PLUT
 
24 - 03.01.22 - 17:36
(0) попробуй акселератор даты (йогурт без даты)

https://its.1c.ru/db/metod8dev/content/5951/hdoc
   Aleksey
 
25 - 03.01.22 - 17:38
(24) не взлетит. Раз нет расширения, то и акселератора нет, так как он позже появился. Да и памяти он жрет как в не себя, так что тем более не взлетит
   acht
 
26 - 03.01.22 - 17:43
(22) > только монопольно.
В режиме "Только чтение" не пробовал файлы открывать?
   e053nk
 
27 - 03.01.22 - 20:28
(24) Наверное мощное средство, но ни разу его не использовал в виду дикого количества необходимых ресурсов. у меня не взлетит
   hhhh
 
28 - 04.01.22 - 00:04
(26) а писать данные тоже будете в режиме чтение? А запись в эту табличку идет чуть ли не каждую минуту. В общем у этой базы нет шансов на нормальную работу.
   Aleksey
 
29 - 04.01.22 - 00:05
(28) А кто писать будет? В рамках задачи нужно просто данные из базы до порезки. Писать туда никто не будет
   hhhh
 
30 - 04.01.22 - 00:52
(29) если писать не будут, тогда ладно. Он тут всё пишет: база, база, я и повелся на это слово.

но согласен с (21), можно просто добавить регистр, чем так над собой издеваться. Он же там еще и итоги собирается считать.
 
 


Список тем форума
 
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.