|
Вопрос с собеседования про ускорения загрузки ↓ (Волшебник 18.04.2023 21:38) |
☑ | ||
---|---|---|---|---|
0
nodrama
18.04.23
✎
16:06
|
Доброго времени суток. Не пятница но все же.. Тут не так давно смотрел вакансии что там интересного и в общем разок по собеседовался.. Вот один из вопросов с собеседования. Ответ/результат скажу позже, после ваших ;)
Вопрос : Есть конфигурация 1c, не суть какая. Пустая по справочникам и документам. В ней есть не типовой справочник который имеет 1 реквизит, пусть будет Артикул. Мы сгенерировали некую таблицу, в которой миллионы артикулов. В общем дооооффиигаа (не повторяющихся все норм). И далее банально циклом пробежались и записали эти данные в этот справочник. Заняло это у нас допустим 12 часов. (сама обработка). Но нам надо быстрее и не на 5-10 минут, а явно быстрее. Как можно это осуществить? Сразу уточню. ОбменДанными.Загрузка=истина, ни чего не дает, проверок и т.д ни каких нет. Запись в транзакциях (Начать транзакцию) записать скажет 50к, зафершитьтранзакцию и т.д. Дало совсем мизерный прирост, который не значительный. Закинуть эту таблицу сразу в SQL средствами SQL, нельзя, это как минимум нарушает рекомендации 1с или как там правильно сказать, ну и база может быть и не на sql, а на Оракле (не знаю можно там так записывать на прямую или нет). но в общем нельзя. Вот как-то так. Что думаете ? |
|||
1
Волшебник
18.04.23
✎
16:08
|
Генераторы миллионов артикулов должны страдать...
|
|||
2
nodrama
18.04.23
✎
16:10
|
(1) Ну мне правда интересно, кто бы что ответил если бы задали такой вопрос. =) даже могу потом назвать, что это за Комания такая, которая придумывает такие вопросы)
|
|||
3
Krendel
18.04.23
✎
16:11
|
(0) Они руками чтоли писали?
|
|||
4
dmt
18.04.23
✎
16:12
|
(0) несколько потоков
|
|||
5
nodrama
18.04.23
✎
16:12
|
(3) Руками что? собеседования онлайн. артикулы с генерировали как не важно, просто есть таблица с ними. а записывали. обработкой тупо циклом по таблице артикулов... миллионы миллионов артикулов это образно, 12 часов шла обработка тоже образно. вопрос именно как можно и можно ли ускорить)
|
|||
6
Lama12
18.04.23
✎
16:13
|
(4) Блокировки?
|
|||
7
VladZ
18.04.23
✎
16:14
|
(0) Можно рассмотреть вариант параллельной загрузки. Предварительно оценив влияние блокировок.
|
|||
8
Krendel
18.04.23
✎
16:19
|
(5) 1Ска пишет данные в таблицы ТТР 3 (смешанный тип чтения/записи дисковой подсистемы) * 20- мы достигали штатными способами, на твоей задаче это будут сроки в в минуты, но никак не часы
|
|||
9
Шурик71
18.04.23
✎
16:20
|
(4) +1.
Судя по описанию задания - запись в справочники логически независима. Соединить таблицу артикулов со справочниками. Разбить результат на порции и записать в несколько потоков фоновыми заданиями. |
|||
10
H A D G E H O G s
18.04.23
✎
16:20
|
(0) Пусть пишут в 1С, на партнерку, чтобы там сделали BulkInsert для ссылочных типов.
|
|||
11
DeeK
18.04.23
✎
16:22
|
(0) разбить на чанки и пулять фоновые
|
|||
12
НафНаф
18.04.23
✎
16:23
|
(6) строки то разные- блокировок не будет
|
|||
14
nodrama
18.04.23
✎
16:28
|
(9) Ну в общем, все что мне пришло в голову, это как и писали, поделить и лить в несколько потоков. Просто подумал вдруг есть какие то еще способы неведомые.. мне не приходилось миллионы миллионов артикулов записывать или чего либо. тем более на скорость)
Что самое смешное это было одно из более сложных заданий (впросов) из всех что были. остальные были совсем банальные. типо чем отличается регистр сведений от справочника. чем отличается левое от правого) и с какими ограничениями столкнулись прогшраммисты когда появились УФ формы, типо что можно было в ОФ но нельзя в УФ и на оборорот. |
|||
15
PR
18.04.23
✎
16:26
|
Правильный ответ — использовать РС, а не справочник
|
|||
16
H A D G E H O G s
18.04.23
✎
16:26
|
(12) Строки конечно разные, но UID справоника из коробки - монотонно возрастающий и кластерный индекс больше одно за раз не пережует.
|
|||
17
BeerHelpsMeWin
18.04.23
✎
16:27
|
(0)
-поинтересоваться, зачем им в 1с нетиповой справочник на десять миллионов записей и почему нельзя его вынести, например, во внешний источник -закинуть эту таблицу в SQL средствами SQL и никому не рассказывать |
|||
18
Волшебник
18.04.23
✎
16:27
|
(15) При записи будет проверяться отбор по измерениям. Вряд ли будет ускорение
|
|||
19
dmt
18.04.23
✎
16:28
|
(14) не расслабляйся ) может это первый этап из нескольких, как в Яндексе
|
|||
20
H A D G E H O G s
18.04.23
✎
16:29
|
(16) Но все равно выигрыш будет, песни-пляски 1С будут выполняться параллельно, все упрется в 2 узких горлышка - выдача нового UID и вставку в кластерных индекс. Ну или УстановитьСсылкуНового(), это снимет одно из горлышек, а может и оба.
|
|||
21
nodrama
18.04.23
✎
16:29
|
(17) Поинтересовался. Все что они с фантазировали. Это делается, для нагрузки базы, что бы проверить производительность )))
из серии конфы теста гилева, которая показывает производительность твоего сервера и показывает другие результаты других сборок) А по поводу SQL я так и сказал. если там тупо справочник с 1 реквизитом, то можно sql мне ответили что нет нельзя нарушает 1с и база может быть не на sql а на Oracle это дословно ) |
|||
22
PR
18.04.23
✎
16:30
|
(18) Ускорение в десятки раз, а то и в сотни, потому что используется набор записей, а не запись по одному элементу
Попробуй записать миллион записей в РС и проверь |
|||
23
BeerHelpsMeWin
18.04.23
✎
16:30
|
(17) дв, заодно надо спросить, чем их не устраивает текущие 12 часов обработки? Надо каждый день полностью перезаписывать справочник в миллионы записей?
|
|||
24
Lama12
18.04.23
✎
16:31
|
Варианты экзотические.
1. База при разворачивании должна иметь полностью заполненный справочник. Где и когда это делается - не важно. 2. Запихнуть базу и платформу в кэш 3 уровня AMD Epyc Genoa 9684X. 3. Весь справочник сразу вряд ли понадобится. Вообще отказаться от автоматического заполнения и вводить по мере необходимости пользователями. 4. В полях выбора сделать выбор из справочника и из таблицы. Если в справочнике элемент есть, брать из него, если нету, то создавать новый со значением выбранным из таблицы. 5. Хранить данные не в справочнике. 6. Взять базу с заполненным справочником, и одним документом. Удалить документ. 7. Вообще отказаться от хранения артикулов. Если их можно сгенерировать, то можно использовать алгоритм их формирования в логике работы программы. Ну это так, навскидку. |
|||
25
nodrama
18.04.23
✎
16:31
|
(23) я так же спросил. сказали тупо нужно, так как дедлайн ;)
|
|||
26
Garykom
18.04.23
✎
16:32
|
(0) Создать подчиненную РИБ базу
На отдельном шустром компе ее развернуть, создать элементы справочника Выполнить обмен |
|||
27
PR
18.04.23
✎
16:34
|
(25) То в (21) нагрузка базы для проверки производительности, то уже дедлайн
|
|||
28
nodrama
18.04.23
✎
16:34
|
(26) так это будет дольше. это надо развернуть базу, залить туда. а потом сделать обмен между базами. сама загрузка в обмене в нужную базу может и быстрее пройдет. а заливка в подчиненную базу еще займет время в итоге получится + - то же самое ;) (24) ВОпрос был без фантазий, надо было ответить именно на данную ситуацию, а не предлагать другие способы из серии хранить в РС а не справочниках, отказться вообще от артикулов и т.д.
именно данная ситуация и именно как ее ускорить)) а не избежать) |
|||
29
Garykom
18.04.23
✎
16:35
|
(28) Проблемы индейцев ...
Если эти лям элементов не могут быстро по РИБ то тут явно ограничение плафтормы и ответ: Никак. |
|||
30
nodrama
18.04.23
✎
16:36
|
(27) ну так сказали. я пытался выловить смысл а зачем а нафига.. но нет ;)
ну возможно. сделать нагрузку посмотреть производительность до дедлайна) что бы сообщить результат ;).. они хотели видимо получить ответ несколько потоков в фоне. что я примерно так и сказал. так как мои отговорки. если это разово то куда спешить, и зачем это вообще нужно и предложения сразу в sql и т.д. и что есть РС а не справочник. не принимались)) |
|||
31
Волшебник
18.04.23
✎
16:38
|
(28) А там не было таких вопросов?
Если бы Вы могли стать справочником, то каким? Продайте мне синтакс-помощник. Почему плюсики круглые? Представьте, что база разрушается, но ещё запускается. Какие три регистра вы спасёте? |
|||
32
nodrama
18.04.23
✎
16:40
|
Я вообще не понял как они от производительности сервера и 1с.. аля тест гилева (там конфа есть в свободном доступе для этого).. дошли до загрузки миллионной таблицы в справочник 1с ;). единственное что связало то и другое, что они сказали что мы сами хотим наполнить конфу 1с. для тестов производительности и вот решили начать с загрузки артикулов в справочники ))))
|
|||
33
OldCondom
18.04.23
✎
16:40
|
Перевести с автоматической на управляемую блокировку уже было?
|
|||
34
OldCondom
18.04.23
✎
16:41
|
И да, самый главный затык думаю был не в записи, а в чтении огромного файла.
|
|||
35
nodrama
18.04.23
✎
16:42
|
В общем мой ответ был SQL который сразу отказали ибо 1с не разрешает. потом несколько потоков фоном. удовлетворил их или нет не знаю) сказали до пятницы еще смотреть будут потом решение примут)
|
|||
36
d4rkmesa
18.04.23
✎
16:42
|
(14) Кстати, "чем отличается регистр сведений от справочника" - на этот вопрос какой у них правильный ответ? )
|
|||
37
nodrama
18.04.23
✎
16:43
|
(34) они толком не сказали что это за файл и где он вообще. сказали только сгенерировали таблицу артикулов. и залили циклом. но долго) на мой вопрос. а что за таблица и где она сказали не так важно, так как суть вопроса в другом)
|
|||
38
Krendel
18.04.23
✎
16:47
|
(37) Спрашивали про потоковую загрузку, ты или знаешь что такая существует, или нет
|
|||
39
PR
18.04.23
✎
16:51
|
(36) Там много отличий
|
|||
40
nodrama
18.04.23
✎
16:52
|
(36) Да я им накидал, так на вскидку шаблонными ответами. которые я выучил еще лет 8 назад с яндекса ;) Сказали, ок и перешли к слудеющему.
А вообще если перечислять и все. там и правда дофига отличий |
|||
41
Shur1cIT
18.04.23
✎
16:58
|
(0) Мне похожий задовали, но там в регистр нужно было из екселя + сопоставление по полям.
|
|||
42
toypaul
18.04.23
✎
16:54
|
(0) на этот вопрос ожидается один (по их мнению) правильный ответ из (4). к прикладному смыслу это маловероятно что имеет какое-то отношение. проходил 2 таких собеседования (у нас при заходе на проект так положено).
|
|||
43
dmt
18.04.23
✎
16:55
|
(35) сколько предлагают?
|
|||
44
Garykom
18.04.23
✎
16:55
|
(38) Даже загрузка в несколько потоков упрется в блокировки
|
|||
45
toypaul
18.04.23
✎
16:55
|
(41) сейчас все "конторы", которые более-менее заморачиваются оптимизацией, задают этот вопрос. просто выучи правильный ответ и глупых вопросов типа "а зачем"? не задавай. не трать свои и чужое время :)
|
|||
46
Ботаник Гарден Меран
18.04.23
✎
16:55
|
Для записи не "по одному элементу в справочник" есть транзакции.
|
|||
47
OldCondom
18.04.23
✎
16:57
|
(44) кстати да. Во всяком случае с проведением чего-либо - это всегда блокировки и эффект сомнительный. Но здесь все таки одна таблица , с управляемыми блокировками может и взлететь. Но в (38) речь о потоковом чтении была.
ПотокДанных = ФайловыеПотоки.ОткрытьДляЧтения("document.txt"); ЧтениеДанных = Новый ЧтениеДанных(ПотокДанных); Cтрока1 = ЧтениеДанных.ПрочитатьСтроку(); ЧтениеДанных.Закрыть(); ПотокДанных.Перейти(200, ПозицияВПотоке.Начало); ЧтениеДанных = Новый ЧтениеДанных(); Cтрока2 = ЧтениеДанных.ПрочитатьСтроку(); ЧтениеДанных.Закрыть(); |
|||
48
toypaul
18.04.23
✎
16:57
|
По-моему в типовых таким образом (в несколько потоков) загружается адресный классификатор (с какого-то сайта)
|
|||
49
nodrama
18.04.23
✎
16:58
|
(43) 250 на фулл удаленку.
|
|||
50
Shur1cIT
18.04.23
✎
16:59
|
(45) кстати чтобы почитать про оптимизацию? смотрел курс по подготовки к экперту, но там много лишней информации которая обычным сметным не нужна, а вот аналог "простые приемы разработки" в самый раз
|
|||
51
Волшебник
модератор
18.04.23
✎
22:02
|
Периодически в ветке есть попытки нарушить правило:
Запрещено обсуждение работодателей и условий работы в различных компаниях без их официальных представителей. |
|||
52
Shur1cIT
18.04.23
✎
17:04
|
(49) на ERP?
|
|||
53
toypaul
18.04.23
✎
17:01
|
(50) читать про оптимизацию это все равно что по картинкам женщин любить. надо смотреть курс(ы) и в бой :)
|
|||
54
nodrama
18.04.23
✎
17:04
|
(52) ерп, ДокументоОборот
|
|||
55
nodrama
18.04.23
✎
17:03
|
после пандемии 50% вакансий на хх точно удаленка. куда не тыкну. либо прям в названии (удаленная работа) либо уже в условиях.. ну иногда 1 раз в день в офис. ;) вот думаю перестать кататься и найти удаленку.. присматриваю потихоньку )
|
|||
56
Shur1cIT
18.04.23
✎
17:03
|
(54) Ок значит у одного собеседовались:-) Когда анкету СБ их увидешь поплохеет:-)
|
|||
57
nodrama
18.04.23
✎
17:05
|
(56) А заполнял анкету СБ на прошлом заводе (полу государственном)... там 5 листов и вопросы очень интересные)
особенно пункты там были. а вы знаете о какой нибудь коррупции или каком либо нарушении, сотрудников данного предприятия ? Если да, то сообщелили бы ?)) и половина все в этом духе))) |
|||
58
Garykom
18.04.23
✎
17:06
|
(47) Время затраченное на чтение 1 ляма элементов обычно незначительно с временем записи элементов справочников в базу.
|
|||
59
PR
18.04.23
✎
17:11
|
(46) Транзакции не ускоряют запись
Это вам не семерка |
|||
60
nodrama
18.04.23
✎
17:12
|
(59) вроде как ускоряют.. но совсем не значительно.. если было 12 часов, ну станет 11.5 грубо говоря.. я как то тестил когда заливал номенклатуру вроде чуть пошустрее.. но там не миллионы миллионов было)
|
|||
61
Garykom
18.04.23
✎
17:15
|
(59) Ускоряют
(60) Нет, значительно ускоряют. Бывает на порядок, но кол-во элементов в одной транзакции надо подбирать опытным путем каждый раз. |
|||
62
PR
18.04.23
✎
17:15
|
(60) Вроде как говорят в Москве кур доят
В семерке транзакция ускоряла, потому что это была особенность платформы В восьмерке не ускоряет Твои пять процентов в единственном эксперименте в разы меньше, чем разница из-за разогретости базы |
|||
63
PR
18.04.23
✎
17:16
|
(61) Проверял?
|
|||
64
Garykom
18.04.23
✎
17:17
|
(62)+ Но транзакции могут и замедлить ))
|
|||
65
Garykom
18.04.23
✎
17:17
|
(63) Да, проверял.
Написал же что надо опытным путем подбирать. Бывает что самое быстрое вырожденный вариант по 1 |
|||
66
PR
18.04.23
✎
17:18
|
(64) А могут и вообще не повлиять, да
Прекрасный разброс |
|||
67
PR
18.04.23
✎
17:19
|
(65) Тебе не кажется, что ты бредишь? :))
То у тебя имеет смысл использовать транзакцию, потому что это ускоряет в десять раз, то лучше по одному элементу писать, а то как бы медленнее не было Может ты уже как-то поточнее сформулируешь? |
|||
68
Garykom
18.04.23
✎
17:20
|
(66) От кучи факторов зависит.
Как минимум транзакция может помочь стопорнув других юзеров/потоки блокировкой. |
|||
69
OldCondom
18.04.23
✎
17:20
|
(63) так это в целом логично. Либо для каждой записи своя транзакция пишет лог, либо одна скажем на 500 элементов.
|
|||
70
Garykom
18.04.23
✎
17:20
|
(67) Куда уже точнее.
Только ОПЫТНЫМ ПУТЕМ можно определить в каждом конкретном случае полезна ли транзакция. |
|||
71
OldCondom
18.04.23
✎
17:22
|
я как то напрямую в бд писал insertы на пару десятков миллионов записей. Повесил маленький сервер, который был для этих задач. Мне потом БДшник доходчиво пояснил, почему я дурак. Сказал по 1к в транзакции писать все.
|
|||
72
Garykom
18.04.23
✎
17:22
|
(70)+ и ее размер
|
|||
73
Garykom
18.04.23
✎
17:23
|
(71) На сервере оперативки было маловато
|
|||
74
Garykom
18.04.23
✎
17:23
|
(73)+ разрядность
|
|||
75
Shur1cIT
18.04.23
✎
17:24
|
(71) почему нельзя? думал скуль довольно шустрая
|
|||
76
OldCondom
18.04.23
✎
17:24
|
(73) именно. После введения транзакций летало как пуля.
|
|||
77
PR
18.04.23
✎
17:24
|
(68) Рукалицо
База с нуля Один справочник без кодов Один пользователь Оперативки 128Гб SSD чтение запись 7000+ |
|||
78
andryscha1c
18.04.23
✎
17:25
|
(76) этому есть какие то объяснения, или опытным путем получилось?
|
|||
79
PR
18.04.23
✎
17:26
|
(70) А, ну понятно
Может быть все что угодно Влияет все Только замер в конкретной ситуации Прекрасные никому не всравшиеся рекомендации |
|||
80
OldCondom
18.04.23
✎
17:26
|
(78) Примерно так: Without a transaction, each INSERT is its own transaction. This means that SQL Server has to wait for the log record for the insert to be written to disk, so that the INSERT can be rolled forward if the server crashes and must restart.
|
|||
81
OldCondom
18.04.23
✎
17:27
|
плюс еще базу чистил, вот такая штука работала значительно быстрее чем без транзакций( я уже не помню сколько по времени, помню только сильно радовался, что все быстро стало):
-- РС Версии объектов. SET @countDel = (select count(_Fld22356) from _InfoRg22351 where _Fld22356 < @dateDelete); SET i = 0; WHILE (i <= @countDel/1000) BEGIN BEGIN TRAN T1 DELETE TOP(1000) FROM _InfoRg22351 WHERE _Fld22356 < @dateDelete SET i = i + 1; COMMIT TRAN T1 END PRINT 'РС Версии объектов OK' |
|||
82
nodrama
18.04.23
✎
17:31
|
(73) Так пока ты будешь тестить разное количество транзакций, что бы определить оптимальный вариант. есть вариант, и найдешь допустим. то пока ты искал о определял опытным путем. то быстрее было бы и так загрузить. если это разово ;) я образно.. а если это на постоянный основе, то конечно можно посидеть потыкать посравнивать )
|
|||
83
PR
18.04.23
✎
17:34
|
(82) Не не не, так нельзя
Сейчас использование транзакций на 11 элементов даст выигрыш в 7.5% А через пять минут влажность в комнате повысится и уже все не так, не нужно транзакции использовать Транзакции дело такое |
|||
84
Garykom
18.04.23
✎
17:36
|
(83) Как это не смешно но один знакомый (по одной работе) нам обоим товарищ.
Когда то давным-давно хватался тем что у него для долгой большой загрузки кол-во элементов в следующей транзакции подбирается на лету. Путем сравнения затраченного времени на предыдущие транзакции. |
|||
85
Garykom
18.04.23
✎
17:38
|
(84)+ Товарищ с коротким именем на букву А, а не длинным
|
|||
86
Ботаник Гарден Меран
18.04.23
✎
17:44
|
(85)
И фамилия на Г? |
|||
87
Garykom
18.04.23
✎
17:47
|
(86) нет, на С
|
|||
88
Garykom
18.04.23
✎
17:48
|
(84) *хвастался
|
|||
89
Новиков
18.04.23
✎
17:54
|
истинно-правильный ответ то какой?
|
|||
90
Garykom
18.04.23
✎
18:01
|
(89) Имхо на собесе от такого ответа ждут не "истинно-правильный ответ"
А знания-опыт и умение рассуждать |
|||
91
Garykom
18.04.23
✎
18:02
|
(90) *на такой вопрос
|
|||
92
Krendel
18.04.23
✎
18:55
|
(89) ставлю на ядра, потоки
|
|||
93
timurhv
18.04.23
✎
19:06
|
(77) транзакция в 50000+ элементов заблокирует всю таблицу без тюнинга MSSQL
|
|||
94
Dotoshin
18.04.23
✎
20:43
|
(0) Поделить файл на несколько частей и запустить загрузку каждой части на отдельном компе.
|
|||
95
timurhv
18.04.23
✎
21:03
|
(94) зачем отдельные компы?
В БСП добавили многопоточную обработку: ВыполнитьПроцедуруВНесколькоПотоков ВыполнитьФункциюВНесколькоПотоков |
|||
97
Aleksey
18.04.23
✎
21:26
|
(95) предлагаешь перед вставкой внедрить БСП?
|
|||
98
experimentator76
18.04.23
✎
21:27
|
(0) воспользуюсь размытой формулировкой задачи (возможно намеренно)
Создаем реквизит Артикул в табличной части справочника. Справочник.Создать ТЧ.Загрузить(ОгромнаяТаблицаАртикулов); Записать должно быть быстро. если нужно ссылаться на строку с артикулом - никто не мешает генерить идентификаторы и хранить их в полях ссылающихся объектов конфигурации. |
|||
99
H A D G E H O G s
18.04.23
✎
21:29
|
(98) 99999
|
|||
100
experimentator76
18.04.23
✎
21:29
|
сыто
|
|||
101
experimentator76
18.04.23
✎
21:30
|
(99) разве оно осталось? ну тогда не подходит
|
|||
102
experimentator76
18.04.23
✎
21:32
|
(99) хотя тоже можно обойти.
артикул - это малоограниченная или неограниченная строка. тогда артикула можно писать в одну строку на сколько хватит здравого смысла :) |
|||
103
experimentator76
18.04.23
✎
21:33
|
через запятую или иной разделитель
|
|||
104
experimentator76
18.04.23
✎
21:36
|
или артикул - это хранилище значения :)
но с индексированием могут быть заморочки |
|||
105
MyNick
18.04.23
✎
21:37
|
(0) Правильный ответ - запросить конфигурацию сервера.
Потом громко рассмеяться, порекомендовать выкинуть это овно и купить нормальное железо. - Поздравляем, Вы приняты. |
|||
106
experimentator76
18.04.23
✎
21:37
|
(99) или по достижении предела создавать новый элемент справочника.
в общем я на сегодня закончил :) |
|||
107
Волшебник
18.04.23
✎
21:39
|
(105) Правильнее сначала узнать режим базы: файловая или серверная, а если серверная, то какой сервер СУБД. Иначе услышите "Мы вам перезвоним"
|
|||
108
experimentator76
18.04.23
✎
21:54
|
(107) а если MS SQL то спросить на какой OS :)
|
|||
109
MyNick
18.04.23
✎
21:55
|
На самом деле все просто.
Кажытсо работодатель имел ввиду, что нужно отключить в метаданных справочника контроль уникальности кода и автонумерацию (код присваивать самому при загрузке). Даже на моем компике 10 летней давности мульен записей в файловой базе создается менее пяти минут. 12 лямов будет за час. На нормальном железе думаю до сотки лямов за час набьется. За 12 часов получится лярд и более, а это уже далеко не "несколько лямов" Поэтому либо (0) забыл про эти галки, либо вариант (105) |
|||
110
Волшебник
18.04.23
✎
21:57
|
(109)👍 Красивое решение!
|
|||
111
experimentator76
18.04.23
✎
22:02
|
(110) не по ТЗ
|
|||
112
PR
18.04.23
✎
22:02
|
(105) в админы
|
|||
113
experimentator76
18.04.23
✎
22:03
|
"В ней есть не типовой справочник который имеет 1 реквизит"
то есть ни кода ни наименования у справочника нет |
|||
114
experimentator76
18.04.23
✎
22:03
|
(112) разжаловать
|
|||
115
experimentator76
18.04.23
✎
22:04
|
(110) не опускай тему до пятницы :))
|
|||
116
Волшебник
18.04.23
✎
22:04
|
(113) Код и Наименование имеются по умолчанию + 1 реквизит Артикул
|
|||
117
experimentator76
18.04.23
✎
22:05
|
(116) ТЗ неточное и отправляется на доработку.
с таким прогать начинать нельзя |
|||
118
Волшебник
18.04.23
✎
22:06
|
(115) Уже всё решили, загадку разгадали. Тут больше нечего обсуждать. Осталось только дождаться результата собеседования. Я почему-то уверен, что кандидат будет отклонён, потому что нельзя публиковать вопросы с собеседования, да ещё публиковать название компании (которое я тщательно подтирал за ним). Он совершенно не умеет держать язык за зубами.
|
|||
119
Грю
19.04.23
✎
00:10
|
(0) Не помню уже как именно в 1С это делается, давно с ней не работал. Но суть в следующем:
Создать какой-либо новый объект метаданных с табличной частью, типа документа, например. И чтобы в табличной части строками являлись/содержались элементы справочника. Чтобы при проведении/записи этого документа, записались все эти строки сразу пачкой, а не по одному в цикле. Может не точно объяснил, поправьте с поправкой на 1С-овскую терминологию, но думаю что идея понятна: Запись пачкой, лююым из доступных способов. |
|||
120
ILM
19.04.23
✎
07:06
|
Рарус на конференции в Новосибирске, рассказывал как они грузили все продажи, закупки и логистику для одной конторы за 4 часа. Создавали документы из регистров сведений. Сначала грузили регистры в несколько потоков, потом сразу в фоне, в несколько потоков загружали данные из регистров в документы. Причём после успешной загрузки данные в регистре сведений удалялись, получался супер быстрый ввод в регистры сведений, и помедленее уже в документы. Причем заливались все продажи за день по каждому магазину в одну базу, а из неё агрегаты уже заливались в управленческую базу для анализа, оплат и т.д. Было это в году 2014, и лили они около лярда строк в день.
|
|||
121
Valdis2007
19.04.23
✎
10:26
|
(0) это вопрос на смекалку ...ключевая фраза здесь -"и записали эти данные в этот справочник"...После этого у вас уже есть база с таким справочником, соответственно выгружаем в дтэшник, и загружаем в новою конфу когда надо!))
|
|||
122
Волшебник
21.04.23
✎
14:09
|
(121)🔥 Оригинально
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |