Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
12 Дек 2017, 09:50
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: При проведении одного документа продажа, товар списывается со всех приходов  (Прочитано 1086 раз)

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

Оффлайн Константин163

  • *
  • Сообщений: 36
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-07-31
  • Сайт: 
  • Профессия: Ученик 1С
Подскажите в чем проблема: создал 3 документа прихода и 1 документ продажа, но количество списывается со всех приходов!.
Вот код:
Процедура ОбработкаПроведения(Отказ, Режим)

Движения.Общий.Записывать = истина;

   Запрос = Новый Запрос;
   Запрос.Текст =
   
          "  Выбрать
 | Товар,
 | Сумма(Количество) как Количество,
 | Сумма(Сумма) как Сумма
 | Поместить ДокТЧ
 | из
 | Документ.Продажа.Товары
 | где
 | ссылка = &Ссылка и
 | ссылка.склад = &склад
 
 | Сгруппировать по
 | Товар
 | ;
 |
 | Выбрать
 | ДокТЧ.Товар как товар,
 | ДокТЧ.Количество как количество,
 | рег.Количествоостаток как количествоостаток,
 | рег.стоимостьостаток как стоимостьостаток,
 | рег.партия как партия,
 |
 |ДокТЧ.Сумма как Продажа
 |
 |из
 |ДокТЧ как ДокТЧ
 |
 |Левое Соединение
 |Регистрнакопления.общий.остатки(&МоментВремени, Склад = &Склад) как рег
 |
 |По
 |ДокТЧ.Товар = рег.товар
 |
 |упорядочить по Партия.дата возр
 |
 |Итоги Минимум(Количество), сумма(Количествоостаток) По
 |ДокТЧ.Товар";
       
   Запрос.УстановитьПараметр("МоментВремени", МоментВремени());
   Запрос.УстановитьПараметр("Ссылка", Ссылка);
    Запрос.УстановитьПараметр("склад", склад);
    Запрос.УстановитьПараметр("ссылка.склад", склад);
   
    Результат = Запрос.Выполнить();

   Выборка = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);


   Пока Выборка.Следующий() Цикл
      Если Выборка.Количество > Выборка.количествоостаток тогда
      Сообщить("Не хватает товара   " + Выборка.Товар + " в количестве " + (Выборка.Количество - Выборка.КоличествоОстаток));

      Отказ = истина;
       Движения.Общий.Записывать = ложь;
   КонецЕсли;
КонецЦикла;

Если отказ тогда
   Возврат;
КонецЕсли;

Выборка.Сбросить();
   
   Пока Выборка.Следующий() Цикл
      
      ОсталосьСписать = Выборка.Количество;
      
      ВыборкаПартии = Выборка.Выбрать();
       Пока ВыборкаПартии.Следующий() И ОсталосьСписать <> 0 Цикл
         
         Списать = Мин(ОсталосьСписать, ВыборкаПартии.КоличествоОстаток);
         Себестоимость = Списать / ВыборкаПартии.КоличествоОстаток *
                             ВыборкаПартии.СтоимостьОстаток;
    
      Движение = Движения.Общий.Добавить();
      Движение.ВидДвижения = ВидДвиженияНакопления.Расход;
      Движение.Период = Дата;
      Движение.Склад  =Склад;
      Движение.Товар = Выборка.Товар;
      Движение.Количество = Списать;
      Движение.Стоимость = Себестоимость;
        Движение.СуммаПродажи = Выборка.Продажа;
      Движение.Партия = ВыборкаПартии.Партия;
   КонецЦикла;
   КонецЦикла;
    КонецПроцедуры

Последний раз редактировалось: cska-fanat-kz; 02 Апр 2015, 03:44


Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн Константин163

  • *
  • Сообщений: 36
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-07-31
  • Сайт: 
  • Профессия: Ученик 1С
выделил
А что не так? Код полностью списал с Чистова, только подставил его себе.
Добавлено: 02 Апр 2015, 10:02

выделил
А что не так? Код полностью списал с Чистова, только подставил его себе.

Все, разобрался, спасибо. Видимо был уставший и не допонял, спасибо

Последний раз редактировалось: Константин163; 02 Апр 2015, 10:02. Причина: Объединение сообщений


Теги:
 

Не открывает форму сохраненного документа, открывает форму нового.

Автор EHOTРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 4470
Последний ответ 13 Апр 2012, 23:26
от Vit1501
Автоматическое заполнение табличной части документа из табличной части другого

Автор WillРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 6
Просмотров: 15903
Последний ответ 16 Авг 2012, 12:07
от Will
Заполнение поля табличной части документа из табличной части справочника.

Автор Kurt_WagnerРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 3
Просмотров: 4195
Последний ответ 06 Апр 2015, 20:08
от Kurt_Wagner
Заполнение табличной части документа реквизитами табличной части справочника

Автор kaf_infoРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 618
Последний ответ 10 Май 2017, 20:44
от ilnur75
Добавление сведений в графу "основание" документа "ТОРГ-12"

Автор Ярослав1984Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 4
Просмотров: 7734
Последний ответ 20 Авг 2013, 18:45
от Ярослав1984

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

Смотрите бесплатно более 300 видеоуроков по работе в 1С:Бухгалтерия 8 и 1C:ЗУП 8 ред. 3.0

СМОТРЕТЬ >>

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
168 Сообщений
ilyay ilyay
75 Сообщений
oleg-x
55 Сообщений
alex0402
46 Сообщений
andron81_81
42 Сообщений
AIFrame
37 Сообщений
MuI_I_Ika MuI_I_Ika
31 Сообщений
BuhRust
29 Сообщений
Golickoff Golickoff
28 Сообщений
Dima Dddd Dima Dddd
26 Сообщений

* Кто онлайн

  • Точка Гостей: 758
  • Точка Скрытых: 0
  • Точка Пользователей: 10
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal