Имя: Пароль:
1C
 
проведение документов за 4 года. как провести быстро?
,
0 unbred
 
17.02.20
13:09
нужно провести хреналион документов. стандартная обработка отпадает, так как проводит период неделя за 4 часа. посоветовали в одной транзакции проводить. попробовал. результат секунда в секунду почти в сравнении со стандартной обработкой.
видимо не так использую "в одной транзакции". подскажите пожалуйста, как ускорить проведение?
код для транзакции:


        НачатьТранзакцию();
        Попытка
            
            Для Каждого Док из ТаблицаДокументов цикл
                объект =     Док.ссылка.получитьОбъект();
                объект.Записать(РежимЗаписиДокумента.Проведение);
            КонецЦикла;
            ЗафиксироватьТранзакцию();
        Исключение
            Если ТранзакцияАктивна() Тогда
                Сообщить("Чот не срослось");
                ОтменитьТранзакцию();
                
            КонецЕсли;
            ВызватьИсключение;
        КонецПопытки;

1 Неуловимый Джо
 
17.02.20
13:10
(0) Как транзакция может повлиять на скорость? Ты вообще знаешь что означает это слово?
2 WebberNSK
 
17.02.20
13:19
(0) Какая конфигурация? Зачем нужно перепроведение, что оно должно изменить?
3 yavasya
 
17.02.20
13:21
(0) как ты можешь быть не в одной транзацкции ? 1 документ - 1 транзакция. + (2) , зачем?
4 AlvlSpb
 
17.02.20
13:25
(0) Самый быстрый способ - быстрее начать. Самый умный - разобраться, а на хрена нужна проводка за ЧЕТЫРЕ года. Уверен - это глупость без которой вполне можно решить поставленную задачу
5 Бешеный заяц
 
17.02.20
13:25
(0) в 7.7 запись (не уверен по поводу перепроведения) фиксировалась в конце транзакции по этому для убыстрения процесса сие действо было оправдано в 8 это уже не работает. в любом случае проведение в транзакции не кошерно.
6 unbred
 
17.02.20
13:28
(3) код выше. 500 документов в одной транзакции.
(1) не владею темой. посоветовали.
(2) , (4) УПП 1.3.52.1. режим совместимости 8.2 . перепроводить нужно в связи  с тем, что вели учёт по характеристикам( по некоторой номенклатуре), а цены на них не делали.себестоимость считается не правильно.
7 unenu
 
17.02.20
13:28
теоретически можно разбить документы на непересекающиеся группы и запускать столько потоков сколько получиться групп.
фактически - хрен, прошло почти 100 со старта кибернетики, а в 1С до сих пор во главе угла линейно-последовательная обработка данных.
8 unbred
 
17.02.20
13:29
(7) читал на эту тему. 1с так не умеет.
9 b_ru
 
17.02.20
13:32
Провести в копии, выявить разницу между копией и оригиналом на какую-нибудь дату, например на начало 2020 года, ввести в оригинале корректировку, которая приведет его к виду копии на эту дату. С этой даты перепровести оригинал
10 unbred
 
17.02.20
13:32
(4) я тоже был уверен, что можно по другому. но с учётом производства ( производство ведётся разными документами нетиповыми. разве что комплектация почти типовая)
11 unenu
 
17.02.20
13:32
4*4*56/24 = 37
чуть больше месяца проводите в копии, потом перебросите текущий месяц из боевой за сутки.
12 unbred
 
17.02.20
13:34
(11) очень хочу в отпуск. (не подписывают, пока начальник не увидит реальную себестоимость)) чуть больше месяца- это если 24/7 . а по факту 3 месяца с лишним. плюс нагрузка на сервак. но это как бы пофиг..
13 unregistered
 
17.02.20
13:35
(11) В году 52 недели, а не 56. Но, увы, принципиально это сути не меняет...
14 yavasya
 
17.02.20
13:36
(12) у тебя какая конфа ? какой режим блокировок ? закомментируй обработки проверки заполнения, события перед записью и т.д.
15 Фокусник
 
17.02.20
13:36
(0) Отключить итоги по регистрам, провести документы, включить итоги
16 yavasya
 
17.02.20
13:37
регистрации на обмены отключи и т. д.
17 yavasya
 
17.02.20
13:38
(6) все понял, если режим блокировок управляемый, поставь автоматический
18 yavasya
 
17.02.20
13:38
(6) убери режим совместимости
19 unbred
 
17.02.20
13:38
(14) (15) (17) спасибо, попробую.
20 unregistered
 
17.02.20
13:39
(15) Вряд ли это прокатит. 90% документов имеют обусловленное проведение и дёргают различные остатки.
21 yavasya
 
17.02.20
13:39
(19)  (17) это точно поможет
22 AlvlSpb
 
17.02.20
13:42
(6) Скажи, что тебе даст себестоимость за 2015, 16, 17 и т.д. год? Нахрена она нужна? Все налоги уплачены, зарплаты выданы и т.п. Проще и правильней вручную сделать корректировки по себестоимости на начало этого года и перепровести два месяца. Все остальное - бред и не приведет к нужному результату
23 unbred
 
17.02.20
13:43
(22) аналитика нужна по динамике цен.к сожалению.
24 1Снеговик
 
гуру
17.02.20
13:43
"вели учёт по характеристикам( по некоторой номенклатуре), а цены на них не делали.себестоимость считается не правильно."
А почему не перепровести только по этой номенклатуре?
А разве себестоимость не рассчитывается отдельной обработкой?
25 unbred
 
17.02.20
13:43
(22) я предлагал это в первую очередь.
26 unbred
 
17.02.20
13:44
(24) себестоимость считается отчётом. больше ничем.
27 unbred
 
17.02.20
13:46
(22) есть мысль перепилить отчёт, ввести корректировку и сказать, что типа вот так щас есть, а  динамику увидите опосля. но они отпихиваются. перепроводи, говорят.
28 unbred
 
17.02.20
13:47
и да, перепроведение помогает. уже попробовал.
29 unregistered
 
17.02.20
13:48
Что касается итогов по регистрам, то единственное, что теоретически может ускорить проведение - двигать границу итогов с каждым месяцем.
Т.е. устанавливаем итоги на декабрь 2015-го года, проводим январь 2016-го, сдвигаем границу на январь 2016-го, проводим февраль, сдвигаем границу на февраль и т.д.
Но особых чудес я бы не ждал от такого подхода.

Другой способ - уменьшение количества проводимых документов. Провести только те документы, которые влияют на нужные регистры. Но для этого надо быть уверенным что у вас нормально настроены и работают последовательности. Восстанавливаете последовательности путём проведения только тех документов, которые влияют на последовательность.
30 ASU_Diamond
 
17.02.20
13:48
(6) где связь между ценами и с/с?
31 1Снеговик
 
гуру
17.02.20
13:48
(22) это что за динамика цен, которая учитывает себестоимость за 4 года?
(26) если все считает отчет, зачем перепроводить?
32 NorthWind
 
17.02.20
13:49
(0) какой размер базы и какой сервер? Перенести на быстрый десктоп с SSD и в одно рыло... Не?
33 1Снеговик
 
гуру
17.02.20
13:50
(28) так можно пройтись только по нужным документам и сделать запись только в нужном регистре по определенной номенклатуре, зачем полностью их перепроводить.
34 unregistered
 
17.02.20
13:52
(27) >> перепроводи, говорят.

Ну тогда перепроводи. Продолжительность тебе уже посчитали в (11) - больше месяца. И это в том случае, если не будет ни одного сбоя, и сервак будет молотить без остановки.
35 1Снеговик
 
гуру
17.02.20
13:52
Вопрос изначально не совсем верный - надо не перепровести все документы быстро, а результат получить быстро. А вот что меняется в движениях при перепроведении уже смотри сам.
36 ИС-2
 
naïve
17.02.20
13:54
(0) попробовать отключить расчет итогов. Но хз сработает или нет
37 unbred
 
17.02.20
13:55
(32) 20 Гб dt весит. у меня быстрый десктоп с ssd
(33) эта номенклатура- сырьё. она в каждой ГП почти участвует.
(31) отчёт берёт данные из нетиповых документов и нетиповых регистров.
38 yzimin
 
17.02.20
13:59
(37) не очень понятна проблема. Ну проводится месяц и проводится...Бизнесу нужно быстрее - платите.

Возьмите уж в аренду что-то из серверного Intel Xeon E-2288G Processor или десктоп 9900K
64Gb DDR4 ECC
Samsung 970PRO NVMe
39 unbred
 
17.02.20
13:59
(17) автоматический
40 StanLee
 
17.02.20
14:12
"перепроводить нужно в связи  с тем, что вели учёт по характеристикам( по некоторой номенклатуре), а цены на них не делали.себестоимость считается не правильно"
т.е. в документах за тот период цены стоят неправильно?
т.е. по-видимому какойто обработкой документы подверглись злостному заполнению ценами?
т.е. эта же обработка могла бы и подправить регистры, по которым документ проводится?
41 djekting
 
17.02.20
14:17
unbred тут работы не на один день даже если ты решишь проблему с быстрым проведением, что врятли...
После проведения гарантированно где-то поплывет отчетность, а там придется вообще все перепроверять и годовые сводить с тем что сдано.
42 palsergeich
 
17.02.20
14:22
(0) Транзакции чуть чуть по другому работают.
Если большой кусок обернуть в транзакцию весь вигрыш теряется, ибо транзакционный кеш не бесплатный
43 StanLee
 
17.02.20
14:22
кстати а эта УПП, в ней какой учет ведется?
44 Serg_1960
 
17.02.20
14:54
Имхо: автору нужно не перепроводить, а нужно изменить поведение типовой конфигурации :) Смысл изменения: определение цены товара с характеристиками без цен  - по цене товара без указания характеристики (если я правильно понял его проблему).
45 Said_We
 
17.02.20
15:14
(0) Задачу по мойму поставил(и) не верно.
Есть старые периоды, которые трогать никто совсем не хочет.
▓Себестоимость находится в каком-то регистре, а не проводить все документы по всем регистрам.
Проще от обратного по учетной политике остаточную себестоимость рассчитать и остатком откорректировать.
▓Период старый совсем всем закрыть, в том числе себе. Оставшийся можно перепровести, но можно и только по одному регистру обработкой перепровести, но тут время написания обработки и время проведения. Что быстрее и проще с учетом текущих работ - есть они или нет.
Опять же можно вносить изменения только по тем позициям, по которым разбежалась себестоимость, а не всё подряд.

Общий вывод: Сократить время можно только за счет сокращения выполняемых действий.
46 unbred
 
17.02.20
15:49
(43) оперативный
(44) предлагал ненавязчиво. но там в головах : "перепровести и всё взлетит"
(45) беда в том, что сначала сунулись перепроводить, а потом обратились к программисту. откат на 4 дня назад-это полный алес. около 300 доков  день одних только реализаций + производство примерно столько же, не считая поступлений и прочая.
общий вывод: может вместо отпуска дислокацию работы сменить..
47 unbred
 
17.02.20
15:49
(42) спасибо.
48 unbred
 
17.02.20
15:52
(38)
Сервер HPE ProLiant DL360 Gen10 Intel Xeon-S 4210 10-Core (2.20GHz 13.75MB) 64GB (4 x 16GB) PC4-2933Y-R DDR4 RDIMM /5 x1.2Tb 10k SAS Hot Plug SFF (8max) /SA P408i-a NC/ 2x500W/ 3yr NBD
Это под две виртуалки.  Рейд 10 из 4 дисков 10к и один хоствап. на sql другая конфигурация. (с) админ.
49 unbred
 
17.02.20
15:55
(43) по сути там ВЕСЬ учёт, но зп считают в зупе, а деньги в бухе. всё на прямых обменах.
50 pechkin
 
17.02.20
16:03
(0) этот совет родом из 77. там транзацкии обрабатывались в памяти без записи на диск
51 unbred
 
17.02.20
16:13
(50) hhhh советовал. он вроде во всём разбирается, насколько я внимательно читаю форум.
http://skrinshoter.ru/s/170220/ikbcpPpi не молчи))) хочу в отпуск))
52 DmitriyDI
 
17.02.20
16:25
(0) перепровести документы только по нужным не типовым регистрам, записать данные напрямую в sql в обход 1С и потом пересчитать итоги)
53 unbred
 
17.02.20
16:28
(52) 1. я так ещё не умею. но научусь, если 2
     2. а это насколько ускорит?
54 StanLee
 
17.02.20
17:19
записать данные напрямую в регистры проведенных документов
понимаю что это не есть хорошо, но и период нехороший выбран
55 pechkin
 
17.02.20
17:48
(51) теперь ты знаешь что верить никому нельзя. мне можно (с)
56 sergey yevsenya
 
17.02.20
17:54
Тебе уже советовали разбить документы на непересекающиеся группы и проводить в отдельных потоках. Либо разбить проведение по отдельным регистрам в разные потоки
(8) И да, 1с так умеет
57 pechkin
 
17.02.20
18:09
если док двигает партии + деньги, то практически наверняка они не бьются на группы
58 VladZ
 
17.02.20
18:14
Первое, что нужно сделать - это понять для каких целей нужно перепроводить документы.
Второе, какие именно документы нужно проводить. Выделить критерий.
И последнее: провести только те, которые нужны.
59 NorthWind
 
17.02.20
19:53
(51) в снеговике транзакции к ускорению ничего не дают. Они дают только коммит и роллбэк, ну в общем как и положено транзакциям.
В семерке, по крайней мере в файловой - да, взлетало. Но это было давно.
60 NorthWind
 
17.02.20
19:55
по имеющейся инфе - на таком монстрике - 20Г dt - ничего вы быстро не сделаете. Рекомендую понять и принять.
Можно попытаться надыбать мега-машину типа i9/samsung 970Pro/64G и посадить на ней одну эту задачу в одно рыло, запустив на ней же скуль в шаред мемори.
Но все равно это будет время.
61 Конструктор1С
 
17.02.20
20:05
(8) 1с так прекрасно умеет. Ты можешь запустить одновременно хоть 5 фоновых заданий, хоть 50.
62 Сияющий в темноте
 
17.02.20
20:07
можно дернуть код проведения,перенести его в обработину и стартануть.
63 NorthWind
 
17.02.20
20:24
(7) здесь дело не в том сколько лет прошло, а в том, что есть задачи, которые параллелятся, и есть, которые нет.
Если вам для того чтобы выполнить следующее действие обязательно нужен результат предыдущего - ну никуда вы от последовательной обработки не денетесь при всем желании.
64 dmpl
 
17.02.20
21:01
(12) А ты оптимист, однако. За 3 месяца всего думаешь управиться. Фига с два. 3 года будете косяки в учете выводить, чтобы расчет себестоимости хотя бы без ошибок завершился. Не трогайте старые периоды - ничего хорошего из этого, как правило не выходит. Если хочешь что-то подправить - рихтуй точечно.
65 palsergeich
 
17.02.20
21:12
(12) тікай з городу, тобі *****
66 Ёпрст
 
17.02.20
21:13
(0) учет себестоимости то какой хоть? Партионка/по средней/рауз ? Провести можно быстро, только толкая определенные регистры, можно и прямым запросом, модно и записывая готовый набор движений
67 palsergeich
 
17.02.20
21:14
(66) как я понял из темы - мало перепровести, надо ещё и цифры реальные, а это уже совсем другая история
68 shuhard
 
17.02.20
21:43
(37)[ отчёт берёт данные из нетиповых документов и нетиповых регистров.]
которые перепроведение кокнет
не будет ни каких отчетов совсем
69 Krendel
 
17.02.20
21:50
(26) А я смотрю вы мастера
70 Krendel
 
17.02.20
21:50
Тема перестала быть томной ;-)
71 Krendel
 
17.02.20
21:52
Себестоимость считается в отчете, я смотрю ща прямо мода
72 Krendel
 
17.02.20
21:53
73 vde69
 
17.02.20
21:55
(0) тут есть один момент, тотальное перепроведение банально может убить тот учет который сейчас есть, например партии перераспределятся по другому а от них себестоимость зависит...

и еще куча моментов, например регламентные операции, ручные корректировки проводок.

короче в общем моменте то, что ты хочешь в автоматическом режиме сделать не надо....

ну а если все-же очень хочется то делай перезапись нужного регистра и все...
74 Ёпрст
 
17.02.20
22:26
(73) ну..в упп он не один, где учитывается себестоимость..+проводки еще
:)
75 Midrash
 
17.02.20
22:59
(0) распараллель задачу
76 vde69
 
17.02.20
23:05
(75) и как при распалеливании задачи будет вестись партионный учет?, вообще совет (75) почти наверняка приведет к огромным косякам
77 Midrash
 
17.02.20
23:11
(76) по складам например
78 vde69
 
17.02.20
23:14
(77) по 41 счету как правило не ведется суммой учет в разрезе складов, только количественный.... да и например перемещение сосклада на склад будет проблемой при этом
79 trdm
 
17.02.20
23:15
(6) > УПП 1.3.52.1. режим совместимости 8.2 . перепроводить нужно в связи  с тем, что вели учёт по характеристикам( по некоторой номенклатуре), а цены на них не делали.себестоимость считается не правильно.

Если бы была 77+SQL я бы просто эмулировал бы регистр и проведение, получил бы данные и сделал отчет.
А потом постепенно бы перепровел бд. 8.2 + SQL тоже наверное можно было-бы сделать.
80 trdm
 
17.02.20
23:20
+(79) т.е. отсек бы лишние движения по БД, работал бы только с себестоимостью. За счет этого было бы быстрее.
81 Midrash
 
17.02.20
23:23
(78) если ему ни по какому критерию не разделить на подзадачи, то остается увеличение мощи серверов.
82 ShAV
 
17.02.20
23:28
(0) Если без перепроведения не обойтись - для ускорения я бы выгрузил бы в RAM диск и там выполнил обработку
83 unbred
 
18.02.20
00:10
(68) , (73)  я конечно не гуру, но это было первое, что я сказал .
мне в ответ- покажи. начал проводить на копии.
не смог найти косяки. я понимаю, что они вылезут, но найти не могу.
84 unbred
 
18.02.20
00:13
я понял, что быстро не получится.
если не согласятся на "среднюю температуру по больнице" ( отчёт сделаю исходя из того, что есть) , то сменю работодателя, скорее всего.
год уже работаю на одном месте. зона комфорта началась)
85 Надо работать
 
18.02.20
00:41
(48) не вижу ssd

Что это за прошлый век)
86 Злопчинский
 
18.02.20
03:51
(8) на ИС есть разработка которая это всяко анализирует и делит на непересекающиеся подмножества. интересная штука. что-то типа Менеджер параллельных потоков.
87 Злопчинский
 
18.02.20
03:53
(6) нахрена все перепроводить за 4 года? всех все утсривало 4 года - внезапно все сломалось. так не бывает. если проведение ресурсозатратно - провести "инвентаризацию" себестоимости. текущей датой списать все кривое, текущей датой оприходовать правильное. если правильное трудно получить - ориентироваться на плановую с поправками (зависит от частностей). сделать так и забыть..
88 Злопчинский
 
18.02.20
03:59
(71) а че, норм. у меня клиент грохнул всю партионку, а оказалось что товаровед отчетом по грохнутому живет. пришлось писать "себестоимость" отчетом. практически нереально (комиссия, возвраты итд), сделал упрощенно - вроде устраивает. по кранйе мере цифры показываются соответсвующие ожиданиям. Единственное я отплевался от возвратов правильно разворачивать. это рекурсивно можно до начала базы так все дойти...
89 Злопчинский
 
18.02.20
04:00
(84) а че это они не согласятся или в чем твой трабл? я вот трабла твоего пока не вижу. чего зря рыпаться-то?
90 JeHer
 
18.02.20
04:54
Видел как-то самопальную конфу на 8-ке, где можно было указать, напримре, один вид регистра по одной номенклатуре и задать перепроведение за любой период. Там обработка проведения документов была сделана очень хитрым методом. 30-35 документов в секунду. Вот это скорость, я понимаю.
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан