Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 10:46

Расход\Приход 8.0

Автор warshadow, 24 фев 2011, 19:42

0 Пользователей и 1 гость просматривают эту тему.

warshadow

ЦитироватьВложенный запрос строится по ТЧ документа.
Поля: Номенклатура и количество.
Группировка по номенклатуре
Суммирование по количеству
Ну у меня он так и построен.

ЦитироватьЕсли добавить поле издательство, то будете получать несколько строк по номенклатуре
в зависимости от количества разных издательств...
Да, это понятно,  но меня интересует немного другое, сейчас объясню, у меня остаток одной книги на складе 10, если я создаю документ с 2 полями(наименование книги,количество,контрагент),и меняю контрагентов,то у меня проводиться данная книга и получается что списано 20 книг (10 книг), но разным контрагентам, если брать всего 2 контрагента, если 3,то 30 книг итд.
Саму книгу по количеству и даже хоть с 10 полями списать нельзя, а когда ставлю разные контрагентов в 2 полях ТЧ, то списывается.

warshadow

Вот наглядный пример:




cska-fanat-kz

Сейчас объясню.

Количество в документе вы сравниваете с количеством на складе.
Количество на складе вы получаете только по книге без разделения по издательствам.
Подчеркиваю - ТОЛЬКО ПО КНИГЕ.
Соответственно если вы соединяете с таблицей табличной части документа, то и с этой стороны
должно получаться ОДНО ЗНАЧЕНИЕ количества для списания.

А вы добавляете еще поле Издательство.
Естественно опять появляются несколько строк.
От чего избавлялись...

Вариантов несколько
1. Убрать издательство
2. Остатки считать еще и по издательствам
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

warshadow

Получается, если считать по издательствам то выдет вот так: пришло 5 книг от контрагент-1 => смогу списать или реализовать только этому контрагенту итд..
,ведь так?

cska-fanat-kz

Нет. От издательства вы же только книги принимаете.
Вы же им назад не перепродаете.

Запрос должен получиться такой как Klyacksa написала.
Сперва должна идти строка итогов вцелом по книге.
А потом уже количества по каждому отдельному издательству.

В строке итогов проверяете можете ли вообще реализовать такое количество книг,
какое указано в документе и в случае положительного результата
начинаете последовательно обходить строки по издательствам.
Алгоритм на псевдокоде такой:
ЦиклПоИздательствам
  Если КоличествоВДокументе <= КоличествоПоИздательству<<Счетчик>> Тогда
     <<делаем движение расход по регистру>>
     <<в поле Издательство пишем Издательство<<Счетчик>>>>
  Иначе
     <<делаем движение расход по регистру>>
     <<Количество = КоличествоПоИздательству<<Счетчик>>>>
     <<Издательство = Издательство<<Счетчик>>>>
     КоличествоВДокументе = КоличествоВДокументе - КоличествоПоИздательству<<Счетчик>>;//или завести отдельную переменку
  КонецЕсли;
КонецЦиклаПоИздательствам

Счетчик соотвественно 1,2,3...

Попробуйте реализовать сами...
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Теги:
Рейтинг@Mail.ru

Поиск