Имя: Пароль:
1C
1С v8
Как в 1С8узнать по какой строке табличной части документа сформирована проводка?
,
0 sergey0703ua
 
11.05.13
12:43
Здравствуйте, можно ли в 1С8 определить по какой строке табличной части документа сформирована проводка? Выгружаю проводки по документу:
ЭтотОбъект.Движения.Хозрасчетный.Прочитать();
НаборДвиженийБУ=ЭтотОбъект.Движения.Хозрасчетный.Выгрузить();

Как теперь перебирая:
Для Каждого Проводка Из НаборДвиженийБУ Цикл

узнать в теле цикла по какой строке документа проводка????

КонецЦикла;
1 Жуть
 
11.05.13
12:46
Номер строки вроде
2 Жуть
 
11.05.13
12:47
А вообще в табличной части может быть 1000 строк, а в проводках одна.
3 zak555
 
11.05.13
12:49
+ (1)
это типовой реквизит регистра бухгалтерии
4 sergey0703ua
 
11.05.13
13:10
Спасибо Большое!!! Все просто оказалось:

Для Каждого Проводка Из НаборДвиженийБУ Цикл

НомерСтрокиДокумента=Проводка.НомерСтроки;

КонецЦикла;
5 unregistered
 
11.05.13
13:58
(1) (3) Идиоты? Или на праздниках перебухали?

Номер строки в регистрах - это номер записи в наборе.

Совершенно ни какой связи с номером строки табличной части не имеет.

Если у меня в документе "Поступление товаров работ услуг" заполнены все табличные части (услуги, товары, тара), то по-вашему в наборе записей будут повторяться номера строк для проводок по каждой из табличных частей?
6 unregistered
 
11.05.13
14:00
(4) Бред сивой кобылы. В документе может вообще не быть табличных частей и при это сколько угодно записей в регистре, а может быть несколько табличных частей по сотне строк в каждой, а запись в регистре всего одна.
7 Сияющий Асинхраль
 
11.05.13
14:03
Ближе к ответу (5), дело в том, что табличная часть документа частенько может обрабатываться, например, сворачиваться для исключения дублей строк по номенклатуре и т.д., поэтому очень часто тот набор проводок который формирует документ не имеет однозначных соответствий в строках документа. Самый простой пример - закрытие месяца, проводок может быть тысячи, а какое соответствие строкам документа?
8 Жуть
 
11.05.13
14:10
(4) Зато отстатыщь и много работы для будущих поколении 1с -иков на моей фирме!
А что ты сделал для нашего брата?
9 sergey0703ua
 
11.05.13
14:12
Так получается что если есть табличная часть документа и именно по этой табличной части проводки, то абсолютно НЕТ возможности определить по какой из строк данная проводка?
10 Сияющий Асинхраль
 
11.05.13
14:15
(9) В принципе, теоретически, привязать можно, по крайней мере в семерке была возможность такой привязки, думаю возможность осталась и в восьмерке, НО практической потребности этого почти не бывает, ну и модули проведения надо править для привязки...
11 sergey0703ua
 
11.05.13
14:21
Именно-в семерке БЫЛА такая возможность, а сейчас эта возможность понадобилась так как в документах в старом периоде (которые нельзя перепроводить),есть расхождения в сумме проводки с суммой в табличной части, а мне необходимо сделать отчет который бы эти расхождения показал.
12 unregistered
 
11.05.13
14:23
(9) Абсолютно.

Остается загадкой с какого перепугу разработчики платформы обозвали реквизит регистра "Номер строки", а не "Номер записи".

По сути это именно номер записи в наборе записей. И это справедливо для любого регистра, а не только для регистра бухгалтерии.
13 Сияющий Асинхраль
 
11.05.13
14:27
(11) В семерке для проводок она никогда не использовалась ни в одной типовой, хотя для регистров использовалась, а в восьмерке практически всегда движения по проводкам делаются после дополнительной обработки табличных частей, допустим даже после определения партий, которых в табличной части нет, соответственно, что куда ты привязывать будешь...
14 ivanovnm
 
11.05.13
14:46
(0) Никак. Если очень надо - заводи реквизит.
15 МихаилМ
 
11.05.13
15:19
в номер строки завписывается не номер строки тч
а uid  строки докемента .

уникальный в пределах документа, тк размер тч ограничен 100 000
16 unregistered
 
11.05.13
15:22
(14) >> заводи реквизит.

И какой смысл?
Что это будет за реквизит и как он его будет заполнять?
17 unregistered
 
11.05.13
15:28
(15) Речь о номере строки в наборе записей регистра, а не в строке табличной части документа.

Эти два реквизита ни как не связаны. И уж точно полный бред - писать в номер строки регистра уид строки документа.

При списании одного материала (одна строка документа) родилось десять записей в регистре (списалось по десяти партиям). По-вашему, в этих десяти строках должен быть один и тот же какой-то там загадочный уид строки документа?....

PS Всем:
Проснитесь уже наконец! Хватит бухать!
Номера записей в наборах записей регистров не связаны ни как с номерами строк в табличных частях документов-регистраторов. Вообще! Ни как!
18 Жуть
 
11.05.13
15:55
(17) Ну, за регистр бухгалтерии.
19 Жуть
 
11.05.13
16:09
За проводки!
20 Жуть
 
11.05.13
16:15
За Нуралиева.
21 EugeniaK
 
11.05.13
16:17
(0) Стандартно никак.
Количество записей в наборе движений обычно отличается от количества строк в табличной части.
Иногда может получиться соответствие
НомерСтрокиДокумента=Проводка.НомерСтроки;
Но это именно случайность, а не правило.
Для одного документа может совпасть, для другого нет.
При необходимости такой связи можно добавить в регистр реквизит "Номер строки документа" и заполнять его при формировании движений, а потом уже по нему связывать.
22 unregistered
 
11.05.13
16:57
(21) >> заполнять его при формировании движений

Это прокатит для самописных документов, где алгоритм проведения выглядит, как цикл обхода строк табличной части, внутри которого добавляются записи в регистры.

В типовых конфигурациях такое встречается крайне редко - буквально единичные случаи. Так что для какой-нибудь бухни протащить этот реквизит в проводки не так уж просто.
23 ivanovnm
 
11.05.13
17:16
(16) Реквизит - номер строки документа
Заполнять можно простым присваиванием реквизиту значения.
Неужели так сложно?
24 ivanovnm
 
11.05.13
17:17
(15) У набора записей нет uid.
25 ivanovnm
 
11.05.13
17:20
(22) И в типовые регистры можно добавить реквизит для отслеживания номера строки документа, целесообразность такого добавления - уже другой вопрос.
26 EugeniaK
 
11.05.13
17:24
(22) Аккуратно вклиниться в стандартное проведение. Туда же, где движения формируются. Не всегда просто, но можно при необходимости.
27 unregistered
 
11.05.13
17:43
(25) Конечно реквизит добавить можно. Ни кто и не спорит. Вопрос в его заполнении. Придется править алгоритмы проведения, и не в одном месте - добавить в запросы по табличным частям, убрать из этих запросов группировки, наконец добавить само заполнение этого реквизита том месте, где делаются сами записи.

С учетом требований в (0) - "перепроводить старые документы нельзя" - всё это превращается в профанацию и бесполезное теоретизирование.
28 Пеппи
 
11.05.13
17:53
(11) С учетом этого поста номер строки не нужен вообще. Все делается запросом. Запрос по табличным частям документом чтобы собрать суммы по документам и запрос по регистру бухгалтерии. Суммы затем сравниваются.
29 zak555
 
12.05.13
10:10
(5) > Идиоты? Или на праздниках перебухали?

он у тебя в штанах
никто про "штатное" свойство регистра не говорил