Форум программистов, компьютерный форум, киберфорум
Наши страницы
1С: Собственные программы
Войти
Регистрация
Восстановить пароль
 
Rod9i
3 / 3 / 1
Регистрация: 12.05.2016
Сообщений: 15
#1

Списание товара со склада - 1С/1C 8.x

22.02.2018, 00:42. Просмотров 226. Ответов 2
Метки нет (Все метки)

Добрый день! Помогите, пожалуйста, начинающему решить проблему.
Занимаюсь по Радченко и поэтому решение старался подстроить под его пример

Постановка задачи: Документ Расходная накладная списывает товары со складов по
себестоимости. Если товара на складе не хватает, документ
сообщает об этом и не проводится

К сожалению где-то я ошибся, но не могу понять в чем проблема.
Вот что получилось:
1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
Процедура ОбработкаПроведения(Отказ,РежимПроведения)
    Запрос = Новый Запрос;
    Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
    
    Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ
        |   РасходнаяНакладнаяТовары.Номенклатура,
        |   СУММА(РасходнаяНакладнаяТовары.Количество) КАК Количество,
        |   МАКСИМУМ(РасходнаяНакладнаяТовары.Цена) КАК Цена,
        |   СУММА(РасходнаяНакладнаяТовары.Сумма) КАК Сумма
        |ИЗ
        |   Документ.РасходнаяНакладная.Товары КАК РасходнаяНакладнаяТовары,
        |   МенеджерВременныхТаблиц КАК ВременнаяТаблица
        |ГДЕ
        |   РасходнаяНакладнаяТовары.Ссылка = &Ссылка
        |
        |СГРУППИРОВАТЬ ПО
        |   РасходнаяНакладнаяТовары.Номенклатура";
    
    Запрос.УстановитьПараметр("Ссылка", Ссылка);
    
    РезультатЗапроса = Запрос.Выполнить();
    
    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
    
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
        Движение = Движения.Регистр.ДобавитьРасход();
        Движение.Период = Дата;
        Движение.Материал = ВыборкаРасходнаяНакладнаяТовары.Номенклатура;
        Движение.Количество = ВыборкаРасходнаяНакладнаяТовары.Количество;
    КонецЦикла;
    
Движения.Регистр.Записывать = Истина;
Движения.Записать();
 
Запрос.Текст = "ВЫБРАТЬ
                    |   РегистрОстатки.Материал,
                    |   РегистрОстатки.КоличествоОстаток,
                    |   НоменклатураДокумента.Номенклатура
                    |ИЗ
                    |   РегистрНакопления.Регистр.Остатки(
                    |           ,
                    |           Материал В
                    |                   (ВЫБРАТЬ
                    |                       ТОвары.Номенклатура
                    |                   ИЗ
                    |                       ТОвары)
                    |               И Склады = &Склады) КАК РегистрОстатки,
                    |   НоменклатураДокумента КАК НоменклатураДокумента
                    |ГДЕ
                    |   РегистрОстатки.КоличествоОстаток < 0";
                    
    ГраницыКонтроля = Новый Граница(МоментВремени(),ВидГраницы.Включая);
    Запрос.УстановитьПараметр("МоментВремени",ГраницаКонтроля);
    РезультатЗапроса = Запрос.Выполнить();
    
    Если Не РезультатЗапроса.Пустой() Тогда 
        Отказ = Истина;
        ВыборкаОшибки = РезультатЗапроса.Выбрать();
        Пока ВыборкаОшибки.Следующий() Цикл
        Сообщение = Новый СообщениеПользователю;
        Сообщение.Текст = "Товара " +ВыборкаОшибки.НоменклатураПредставление+" недостаточно в количестве "+ВыборкаОшибки.Дефицит+" штук";
        Сообщение.Сообщить();
    КонецЦикла;
КонецЕсли;
 
КонецПроцедуры
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.02.2018, 00:42
Я подобрал для вас темы с готовыми решениями и ответами на вопрос 1C 8.x Списание товара со склада (1С):

Не работает списание товара по Чистову
Здравствуйте. Делаю всё как в этой статье чистова...

Запрос, осуществляющий оценку склада (общую ценность товара) по времени
Добрый день! Пишу запрос в Консоли запросов, который будет выводить оценку...

Система учета на складе. Проверка возможности списания заданного количества товара со склада.
Система учета на складе. Есть документ поставка (пришло 5 товаров) проводится и...

Про списание товара в торговля+склад
Здравствуйте. Существует ли возможность списания товара с остатков в данном...

Как возместить НДС при перемещении товара с оптового склада в розницу
Говорят можно операцией вручную 44.1.2/68.2 Сумма восстанавливаемого НДС 91.2...

Списание на счет
Допустим есть счет 29 делаем точно такой же счет 111, но с другим названием....

2
Dethmontt
Модератор
Эксперт 1С
2582 / 2383 / 393
Регистрация: 10.03.2011
Сообщений: 8,451
Записей в блоге: 1
Завершенные тесты: 1
23.02.2018, 18:35 #2
Цитата Сообщение от Rod9i Посмотреть сообщение
Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
Это есть у Радченко???
0
Joker_vad
Эксперт 1С
469 / 409 / 92
Регистрация: 26.09.2012
Сообщений: 1,811
25.02.2018, 10:10 #3
Во втором запросе нет связи между таблицами.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.02.2018, 10:10
Привет! Вот еще темы с решениями:

Списание ТМЦ
При списании ТМЦ стоит Константа.КонтролироватьРезервПриСписании = 1, а...

Списание сумм
Вношу документ Счет на сумму 50 т.р. (в табличной части) нет номенклатуры,...

Списание по партиям
Доброго времени суток. Попытался реализовать списание по партиям. Проблема в...

Списание по партиям
Помогите реализовать следящее задание: В бухгалтерском учете необходимо...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru