Что использовать: регистр сведений или регистр оборотов #723700


#0 by Антиквар
Всем привет! Для некоторых задач требуется перенести все продажи всех товаров за всё время из одной базы в другую. Это нужно для определенной статистики. Не нужно никаких документов, чисто информацию по дате продажи, какой товар, кол-во, сумма, себестоимость на дату продажи. Будет требоваться получить себестоимость на определенную дату, а также продажи товара за период. Планирую перенести всё это в один регистр, но вот не знаю, какой лучше выбрать. Строк в регистре будет около 200 тысяч (столько примерно продаж было). Мне было бы проще использовать регистр сведений. Сделать его периодическим и на любую дату можем получить себестоимость товара. Но вот справится ли он с задачей получения продаж за период? Т.е. насколько быстро он выберет продажи конкретного товара за определенный интервал. Ведь он не предназначен для получения оборотов, и придется делать запрос с условием "Период МЕЖДУ Дата1 и Дата2" и последующей группировкой. Не будет ли слишком больших тормозов при таких объемах? (Регистр увеличиваться не будет со временем, т.е. всегда будут эти 200 тысяч строк). Если делать регистр оборотов, то во-первых проблемно получить себестоимость на дату, а во-вторых придется делать документы, хранящие эти 200 тыщ строк. Это вобщем-то ни к чему. Два регистра делать не хочется, т.к. себестоимость нужна на каждую продажу и получится два регистра по 200 тыщ строк. Сам склоняюсь к регистру сведений, согласен даже на тормоза в пределах разумного. Но думаю, что особых тормозов быть не должно, ведь период регистра сведений индексирован системой, и выборка по нему должна быть быстрой. Но решил посоветоваться с вами, друзья. Может предостережете от чего-нибудь.
#1 by PR
Почему РС?
#2 by Джинн
"Себестоимости на дату" не существует в природе.
#3 by Джинн
А по задаче - не нужно хрень всякую придумывать. Это оборотный регистр.
#4 by Fragster
смотря какой метод оценки, бро! у меня благодаря хотелкам от бухов - есть :)
#5 by К_Дач
А база то файловая или нет?
#6 by Chameleon1980
рс
#7 by Джинн
Бухи приняли новое ПБУ?
#8 by Fragster
ну, для начала "Оценка материально-производственных запасов по средней себестоимости производится по каждой группе (виду) запасов путем деления общей себестоимости группы (вида) запасов на их количество, складывающихся соответственно из себестоимости и количества остатка на начало месяца и поступивших запасов в течение данного месяца."
#9 by Джинн
Это средняя за период. А никак не "на каждый день".
#10 by Fragster
специально для тебя разрешаю считать "на дату" равной "на начало месяца". ну а у нас, например, управленческая себестоимость считается по подобному правилу на каждый день.
#11 by Джинн
"На начало" здесь только один из элементов формулы. В полном виде таки за период. "По подобному правилу на каждый день" - это обычная среднескользящая.
#12 by Fragster
ну так она на каждую дату своя, вот и получается "на дату"
#13 by Bober
+ в сторону РС.
#14 by Джинн
На каждый документ или на каждую дату? Если в середине дня у Вас новый приход меняет себестоимость, то с этим Вы что делаете?
#15 by Fragster
на дату
#16 by dmpl
Из соображений симметрии сделай справочник "Продажи".
#17 by gae
Лучше в регистр расчета, стоподово
#18 by МимохожийОднако
При таком подходе только блокнотик и бумажные копии... в 3-х экземплярах. А если всерьез то, только регистр накопления.
#19 by dmpl
Точно! И каждый отчет - запись в нем, а продажи - база :)
#20 by gae
Типа того :)
#21 by IVT_2009
при подключении флешки она будет не диском а папкой на диске. Это точно можно сделать начиная с ХР , у меня такое было. Посмотрите в инете , сейчас уже не помню как. Работало почти 2 года. Причем монтировалась так только какая одна флешка, остальные как диск.
#22 by IVT_2009
сорри не туда
#23 by Антиквар
Себестоимость на дату уже есть.В той программе, откуда это будет перекачиваться, уже есть табличка продаж и себестоимость при каждой продаже. База файловая, но это пока. Что за симметрия? По справочнику выборка дат ещё дольше будет идти наверное "только регистр накопления" - почему? Поясню: бухов никаких нет. Программа чисто торговая, бухгалтерия ведется в отдельной 1С бухгалтерии. В этой торговой программе при продаже товара нужно знать, по какой партии списание и цену этой партии. Это и есть себестоимость, т.е. цена закупки товара. По каждой продаже видно цену закупки и цену продажи. Табличка, которую нужно перенести, имеет все эти данные. Их нужно одноразово перенести, потом использовать какое-то время в паре обработок, после чего вообще удалить этот регистр. Т.е. данные нужны будут может быть в течении года, потом надо удалить. Я поэтому и хотел регистр сведений, с ним проще в этом плане, не надо регистраторов. Данные вноситься в него не будут, как загрузятся, так и останутся до решения о их удалении. В чем тут минус регистра сведений? Такой объем данных не потянет? Выборка по датам будет очень долго идти?
#24 by dmpl
Если реквизит Дата будет индексированным - все нормально будет. А соображение симметрии такое: если не можешь решить РН или РС - то надо использовать что-то другое. Опять же, нет никаких проблем создать регистр, заполнить его записями и провести натурные испытания.
#25 by МимохожийОднако
Это исходит из постановки задания. "Так учит партия"© Мне не понятно, чем использование регистров накопления сложнее регистров сведений.
#26 by gae
В регистре накопления есть таблицы итогов, то есть получение оборотов за месяц или несколько должно работать быстрее.
#27 by gae
Но регистр накопления обязательно зависимый, то есть придется еще лепить документ, хотя бы фиктивный.
#28 by dmpl
Итоги можно добавить и в РС - просто сформировать записи с признаком Итоговая ;)
#29 by gae
и еще писать алгоритм их акутализации.... Сделай уже и р.с. и р.н., грузани в оба и попробуй читать, сравни скорость записи, чтения.
#30 by dmpl
Зачем? Данные же меняться не будут. Впрочем - пишется без проблем в модуле набора записей.
#31 by Антиквар
"Если реквизит Дата будет индексированным - все нормально будет." Да, я вообще думал периодический регистр сделать, и период и будет той датой продажи. По периоду регистра наверное быстрее всё будет делаться "Мне не понятно, чем использование регистров накопления сложнее регистров сведений". В конфигурацию придется добавлять ещё документ-регистратор, который вобщем-то не нужен, делать его проведение.  Причем в программе одним документом не обойтись, т.к. строк очень много. В итоге будем иметь документы с общим кол-вом строк 200 тысяч, и регистр, дублирующий эти строки, с кол-вом записей 200 тысяч. Можно конечно сделать фиктивный документ, без табличной части, и обработкой запихать ему движения. Но мало ли кто его отменит, распроведет, в общем лишние заморочки. Ну и во-вторых, как я уже писал, из оборотного регистра проблемно вытащить цену закупки, по которой прошло списание. С учетом того, что явление это вообще временное, и в будущем будет всё удалено, хотелось бы обойтись малой кровью, пусть и в ущерб скорости. Люди потерпят, если обработка вместо 10 секунд будет "думать" 1 минуту. Но если регистр сведений с 200 тысячами записей будет на полчаса зависать, то конечно не вариант. Но тут наверное надо в самом деле пробовать.
#32 by МимохожийОднако
Если задача временная и используется "в паре обработок", то помести таблицы в макеты этих обработок. Тогда вообще обойдешься без регистров.
#33 by dmpl
В минуту должен уложиться любой вариант. Нечему там зависать дольше. Посмотрите на ГрафикиРаботыПоВидамВремени в ЗУП/УПП - в нем даже в файловом вариант может быть миллион записей, и полей в нем дофига - а он ворочается, да еще и совместно с регистром расчета.
#34 by Антиквар
Ну как вариант. Правда в макете будет 200 тысяч записей, прикольно. И при открытии обработки придется всегда эти записи в ТЗ помещать, и потом с ТЗ работать. В общем с регистром удобнее, его почистим потом и всё. Ок, понял. Попробую РС, а там посмотрим что получится.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С