|
Получить значение из табличной части по номеру строки Garykom, ass1c, ТДК, paramedic, Bigbro, Franchiser, Dedal, Neo58, unenu, АгентБезопаснойНацио, mikecool, Timon1405, DeeK, trk415e76, Homer, serpentt, Гипервизор, Олдж, Dmitrii, maxab72, , Zamestas, IVT_2009, orakool, maxar, Джордж1, JohnGilbert, X Leshiy, Sneer, vova1122, Мультук, AntiBuh, Redaktor, toypaul, Kopchi, obs191, NikeArz, Галахад, Климов Сергей, vicof, RVN, aptomilov, Kongo2019, kittystark, crotnn, ЕRPe, yurikmellon2, RomanYS, George Wheels, глазковыколупыватель, Михаил Козлов, tir654, kubik_live, Андрюха, lxndr, DemonShinji2, ГдеСобакаЗарыта, Vstur, DimVad, AlexKimp, dergreche, Мнемоника, Кир Пластелинин, Mr_Boogie, 2S, integer, Lama12, Ненавижу 1С, ndrv, Tarlich, Gucci76, skafandr, Prog_man, Irbis, Serpuh, alexela, phabeZ, rozer76, Silgis, Indian, trooba, vsy
| ☑ | ||
|---|---|---|---|---|
|
0
aptomilov
15.06.26
✎
11:15
|
Привет всем.
Интересная задачка. в есть отчетик который формируется из документа но информацию берет из регистра накопления. Задача в том что взять еще одно поле из таблично части по номеру строки которые есть в регистре. Крутил так и сяк пока ума не приложу как взять значение из таб части документа по номеру строки? Добавить поле в регистр не предлагаем ) |
|||
|
1
aptomilov
15.06.26
✎
11:18
|
тут надо добавить что это скд шный отчет
то есть запросом |
|||
|
2
RomanYS
15.06.26
✎
11:26
|
(0) соединение с ТЧ не предлагать? В чём проблема то?
|
|||
|
3
Ненавижу 1С
гуру
15.06.26
✎
11:27
|
подумать над тем, что строки в документе и регистре вообще говоря не соответствуют друг другу однозначно. Боюсь придется более развернуто написать задачу
|
|||
|
4
Homer
15.06.26
✎
11:28
|
В регистре накопление есть поле "НомерСтроки" и в документе в табличной части есть "НомерСтроки". делаешь вот так НомерСтроки = НомерСтроки
С вас 5 тыс) |
|||
|
5
aptomilov
15.06.26
✎
11:34
|
(3) проверил на скольких документ номер строки вроде сходится
|
|||
|
6
aptomilov
15.06.26
✎
11:35
|
ВЫБРАТЬ РАЗРЕШЕННЫЕ
ТрудозатратыКОформлениюОбороты.ПериодДень КАК ПериодДень, ТрудозатратыКОформлениюОбороты.ПериодНеделя КАК ПериодНеделя, ТрудозатратыКОформлениюОбороты.ВидРабот КАК ВидРабот, // ВОТ ТУТ ДОБАВИТЬ ЕЩЕ ОДНО ПОЛЕ ИЗ ТЧ ДОКУМЕНТА ТрудозатратыКОформлениюОбороты.Подразделение КАК Подразделение, ТрудозатратыКОформлениюОбороты.ПартияПроизводства КАК ПартияПроизводства, ТрудозатратыКОформлениюОбороты.ПартияПроизводства.ОсновноеИзделиеНоменклатура КАК Изделие, ВЫБОР КОГДА ТрудозатратыКОформлениюОбороты.Распоряжение ССЫЛКА Документ.ЭтапПроизводства2_2 ТОГДА ТрудозатратыКОформлениюОбороты.Распоряжение КОГДА ТрудозатратыКОформлениюОбороты.Распоряжение ССЫЛКА Документ.ПроизводственнаяОперация2_2 ТОГДА ВЫРАЗИТЬ(ТрудозатратыКОформлениюОбороты.Распоряжение КАК Документ.ПроизводственнаяОперация2_2).Этап ИНАЧЕ ЗНАЧЕНИЕ(Документ.ЭтапПроизводства2_2.ПустаяСсылка) КОНЕЦ КАК Этап, ВЫБОР КОГДА ТрудозатратыКОформлениюОбороты.Распоряжение ССЫЛКА Документ.ЭтапПроизводства2_2 ТОГДА ВЫРАЗИТЬ(ТрудозатратыКОформлениюОбороты.Распоряжение КАК Документ.ЭтапПроизводства2_2).Статус КОГДА ТрудозатратыКОформлениюОбороты.Распоряжение ССЫЛКА Документ.ПроизводственнаяОперация2_2 ТОГДА ВЫРАЗИТЬ(ТрудозатратыКОформлениюОбороты.Распоряжение КАК Документ.ПроизводственнаяОперация2_2).Этап.Статус ИНАЧЕ ЗНАЧЕНИЕ(Перечисление.СтатусыЭтаповПроизводства2_2.ПустаяСсылка) КОНЕЦ КАК СтатусЭтапаПроизводства, ВЫБОР КОГДА ТрудозатратыКОформлениюОбороты.ВидРабот.КратностьТрудоемкости = 0 ТОГДА 0 ИНАЧЕ ТрудозатратыКОформлениюОбороты.КоличествоПриход * ТрудозатратыКОформлениюОбороты.ВидРабот.Трудоемкость / ТрудозатратыКОформлениюОбороты.ВидРабот.КратностьТрудоемкости КОНЕЦ КАК ЗатраченноеВремя, ТрудозатратыКОформлениюОбороты.ПартияПроизводства.Документ КАК ЗаказНаПроизводство {ВЫБРАТЬ ВидРабот.*, Подразделение.*, Этап.*, ПериодДень, ПериодНеделя, ЗатраченноеВремя КАК ЗатраченноеВремя, ПартияПроизводства.*, Изделие.*, ЗаказНаПроизводство.*, СтатусЭтапаПроизводства.*} ИЗ РегистрНакопления.ТрудозатратыКОформлению.Обороты( {(&НачалоПериода)}, {(&КонецПериода)}, Авто, ПартияПроизводства В (ВЫБРАТЬ РАЗЛИЧНЫЕ ВТ_ЗаказыНаПроизводство.Партия КАК Партия ИЗ ВТ_ЗаказыНаПроизводство КАК ВТ_ЗаказыНаПроизводство)) КАК ТрудозатратыКОформлениюОбороты {ГДЕ ТрудозатратыКОформлениюОбороты.ПериодДень, ТрудозатратыКОформлениюОбороты.ПериодНеделя, ТрудозатратыКОформлениюОбороты.ВидРабот.*, ТрудозатратыКОформлениюОбороты.Подразделение.*, (ВЫБОР КОГДА ТрудозатратыКОформлениюОбороты.Распоряжение ССЫЛКА Документ.ЭтапПроизводства2_2 ТОГДА ТрудозатратыКОформлениюОбороты.Распоряжение КОГДА ТрудозатратыКОформлениюОбороты.Распоряжение ССЫЛКА Документ.ПроизводственнаяОперация2_2 ТОГДА ВЫРАЗИТЬ(ТрудозатратыКОформлениюОбороты.Распоряжение КАК Документ.ПроизводственнаяОперация2_2).Этап ИНАЧЕ ЗНАЧЕНИЕ(Документ.ЭтапПроизводства2_2.ПустаяСсылка) КОНЕЦ).* КАК Этап, ТрудозатратыКОформлениюОбороты.ПартияПроизводства.*, ТрудозатратыКОформлениюОбороты.ПартияПроизводства.Документ.* КАК ЗаказНаПроизводство, ТрудозатратыКОформлениюОбороты.ПартияПроизводства.ОсновноеИзделиеНоменклатура.* КАК Изделие, (ВЫБОР КОГДА ТрудозатратыКОформлениюОбороты.Распоряжение ССЫЛКА Документ.ЭтапПроизводства2_2 ТОГДА ВЫРАЗИТЬ(ТрудозатратыКОформлениюОбороты.Распоряжение КАК Документ.ЭтапПроизводства2_2).Статус КОГДА ТрудозатратыКОформлениюОбороты.Распоряжение ССЫЛКА Документ.ПроизводственнаяОперация2_2 ТОГДА ВЫРАЗИТЬ(ТрудозатратыКОформлениюОбороты.Распоряжение КАК Документ.ПроизводственнаяОперация2_2).Этап.Статус ИНАЧЕ ЗНАЧЕНИЕ(Перечисление.СтатусыЭтаповПроизводства2_2.ПустаяСсылка) КОНЕЦ В (&СтатусыЭтапа))} |
|||
|
7
aptomilov
15.06.26
✎
12:04
|
может кто то подсказать вот это выражение что значит ?
|
|||
|
8
aptomilov
15.06.26
✎
12:06
|
{ВЫБРАТЬ
ЗаказНаПроизводство.*, Подразделение.*, Этап.*, ВидРабот.*, Изделие.*, ПартияПроизводства.*, ПлановоеВремя} |
|||
|
9
vicof
15.06.26
✎
12:16
|
Выбрать поля и их подчиненные реквизиты. Кэпа звать?
|
|||
|
10
aptomilov
15.06.26
✎
12:38
|
(9) спасибо
сможете помочь с выбором реквизита из таб части по номеру строки? |
|||
|
11
vicof
15.06.26
✎
12:44
|
Да. Сначала надо описать задачу, а не ее решение.
|
|||
|
12
aptomilov
15.06.26
✎
12:47
|
1С ерп отчет Трудоемкость по этапу из документа этап.
- показывает только Вид работ а нужно что бы показывало еще и назначение работ это вот как до меня она дошла далее я смотрю отчет вижу что он берет из регистра накопления инфу по трудоемкости и вид работа там есть а назначения нет |
|||
|
13
maxab72
15.06.26
✎
12:48
|
(8) это надо смотреть книжку "Профессиональная разработка в системе 1С:Предприятие 8", первое издание. Раздел о построителе отчетов.
|
|||
|
14
Dmitrii
гуру
15.06.26
✎
12:49
|
(5) >> проверил на скольких документ номер строки вроде сходится
Реквизит НомерСтроки в табличной части - это номер СТРОКИ табличной части. Реквизит НомерСтроки в наборе записей - это номер ЗАПИСИ в наборе записей. Почему он называется НомерСтроки, а не НомерЗаписи? - Скорее всего простая случайность. Даже если ты проверишь абсолютно все записи регистра и сверишь со всеми табличными частями всех документов, вполне возможно, что у тебя всё сойдётся. Однако это не значит, что оно будет сходиться всегда. Завтра появится новая табличная часть у документа, которая будет добавлять тебе записи в набор, или изменится логика добавления записей в набор (многие строки табличной части к одной строке набора или наоборот, или сортировку пририсует разработчик в запросе, который формирует набор записей регистра), и вся твоя сходимость накроется медным тазом. |
|||
|
15
Dmitrii
гуру
15.06.26
✎
13:18
|
(0) >> Добавить поле в регистр не предлагаем )
Предлагаем-предлагаем! Это единственное верное и вменяемое решение. Особенно, если регистр оборотов, а не остатков. Тогда можно как измерение бахнуть. Если регистр остатков, то сделать реквизит и переписать запрос с виртуальной таблицы оборотов на таблицу первичных записей. А то что ты пишешь - это костыль, который может отвалиться в любой момент. И хорошо, если просто отвалиться - сообщение об ошибке проявит проблему. А то может просто молча начать выдавать неверные данные из-за неверной связи номера строки с номером записи. |
|||
|
16
maxab72
15.06.26
✎
13:54
|
(15) ну, это тоже решение довольно геморройное, вероятно придется править логику проведения и т.п. лучше искать строки из табличной части документа по набору полей - измерениям регистра, а потом делить их по количеству или еще как надо, но только в запросе.
|
|||
|
17
aptomilov
15.06.26
✎
13:59
|
(16) проблеск нужного решения
помоги друг ) |
|||
|
18
Homer
15.06.26
✎
14:10
|
а потом данные специалисты жалуются что их заменил ИИ, а они 14 лет работал «как не в себя».
|
|||
|
19
maxab72
15.06.26
✎
14:11
|
(17) составь табличку: реквизиты табличной части vs измерения регистра. Поймешь по какому набору полей можно вытащить строку с нужным назначением.
|
|||
|
20
Dmitrii
гуру
15.06.26
✎
14:53
|
(16) >> решение довольно геморройное, вероятно придется править логику проведения и т.п.
Возможно... Чтобы это понять надо знать больше подробностей. В простейшем варианте все изменения в логике проведения сводятся к созданию одной подписки на событие - либо на ПриПроведении документа (если добавленный реквизит заполняется только в этом документе), либо на ПриЗаписи набора записей регистра (если работать должно в нескольких документах). Больше проблем может возникнуть с переписыванием отчета с виртуальной таблицы регистра накопления на таблицу движений. >> лучше искать строки из табличной части документа по набору полей - измерениям регистра, а потом делить их по количеству или еще как надо, но только в запросе. Тут проблема может возникнуть, когда по набору полей не получится однозначная связь "один к одному". |
|||
|
21
maxab72
15.06.26
✎
15:58
|
(20) "Тут проблема может возникнуть, когда по набору полей не получится однозначная связь "один к одному"." Это как фишка ляжет. Если одна строка документа с одним назначением представлена несколькими строками регистра - это одна разница, а если несколько строк документа с разными назначениями схлопываются в одну строку регистра - это совсем иная разница.
|
|||
|
22
Garykom
гуру
15.06.26
✎
17:37
|
(0) А вот если регистр сведений и без регистратора (назависимый) то никак без добавления номера строки в РС
Ибо могут быть дубли ключевых полей |
|||
|
23
Garykom
гуру
15.06.26
✎
17:54
|
Кстати а зачем номер строки ТЧ документа понадобился в отчете?
Просто "чтоб було"? |
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |