Имя: Пароль:
1C
1C 7.7
v7: ТиС(упр+фин) Почему после провед. дока в движен дубл. каждая поз. с фирмой и без
0 vladimir-boy
 
04.11.12
11:04
Конфигурация "Торговля и Склад".
Когда есть у Фирмы свойство "Вести финансовый учёт" (допустим по FIFO), то в движениях (по регистрам, допустим "Остатки" ) документов по этой фирме всегда дублируется записи каждой позиции строки проводимого документа: в одной из дубляжных строк отсутствует измерение "Фирма", а в другой соответственно присутствует.
В конечном счёте, когда требуется вывести быстро Сводный Остаток по всем фирмам:
КоличествоТовара=Регистр.ОстаткиТоваров.СводныйОстаток( , ТекущийЭлемент(),,"ОстатокТовара");
то он получается НЕПРАВИЛЬНЫЙ, у Фирм которые ведут фин. учёт - он в 2 раза больше, у фирм без фин учёта он адекватный, но в суммовом итоге НЕКОРРЕКТНЫЙ получается.

Как избавиться от этой лишней дубл. записи?
з.ы.: кстати в демо-базе типовой конфы там тоже дубл. идёт от "Добро"(фин. учет), а от "Крон"(без фин. учет) всё окей.

Спасибо большое за ответы.
1 Voronve
 
04.11.12
11:09
(0) Версия ТиС какая ?
2 vladimir-boy
 
04.11.12
11:13
(1)Торговля+Склад для Украины 7.70.024
3 Voronve
 
04.11.12
11:14
(2) .024 - версия движка. Версия конфы какая ?
4 vladimir-boy
 
04.11.12
11:18
(3) Так оно и есть(можно считать совпадением), но движок у меня 7.70.027 , а конфа Торговля+Склад для Украины 7.70.024
5 Voronve
 
04.11.12
11:22
(4) Загони нужные фирмы в список значений. Подставляй его в .СводныйОстаток
6 vladimir-boy
 
04.11.12
11:24
(5) Спасибо, никогда не ещё не пробывал в измерения подставлять список значений. Сейчас испытаю.
7 Voronve
 
04.11.12
11:29
(6) Если тормоза будут при использовании метода со списком значений - тогда делай через цикл.
8 vladimir-boy
 
04.11.12
11:31
(7) Сердечно благодарствую! Фурычит!
9 vladimir-boy
 
04.11.12
11:33
Сделал так:

МассивФирм = СоздатьОбъект("СписокЗначений");
СпрФирмы = СоздатьОбъект("Справочник.Фирмы");
СпрФирмы.ВыбратьЭлементы();
Пока СпрФирмы.ПолучитьЭлемент() = 1 Цикл
МассивФирм.ДобавитьЗначение(СпрФирмы.ТекущийЭлемент());    
КонецЦикла;

КоличествоТовара=Регистр.ОстаткиТоваров.СводныйОстаток(МассивФирм , ТекущийЭлемент(), ВидСклада,"ОстатокТовара");
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.