Имя: Пароль:
1C
1С v8
не работает программное заполнение заказа на производство.
0 pankrat00
 
07.05.15
15:16
Доброго времени. Программно создаю Заказ на производство и типовой процедурой из модуля объекта пытаюсь его заполнить... НО заказ на производство не заполняется.
Делаю так:
......
ЗаказНаПроизводствоОбъект.ЗаполнитьПродукциюПоЗаказуПокупателю(Ссылка);
.......

Когда в ручную заполняю заказ (Кнопка Заполнить-Заполнить по заказу покупателя) то все нормально заполняется!
Полез в отладчик. Нашел запрос который заполняет документ по остаткам. При программном заполнении результат запроса пустой!!! Причем я сравнил параметры они в обоих случаях абсолютно одинаковые...
Вот они:
Запрос.УстановитьПараметр("ТоварТара", Перечисления.ТоварТара.Товар);
Запрос.УстановитьПараметр("Ссылка", Ссылка);
Запрос.УстановитьПараметр("СтатусВозвратнаяТара",Перечисления.СтатусыПартийТоваров.ВозвратнаяТара);
Запрос.УстановитьПараметр("ЗаказПокупателя", ЗаказПокупателя);
Запрос.УстановитьПараметр("ДатаОстатков",ОбщегоНазначения.ПолучитьДатуОстатков(ЭтотОбъект));

Все перебробовал не могу понять в чем дело...
1 pankrat00
 
07.05.15
16:00
Конечно могу заполнялку отдельно написать, интересно просто почему типовая так себя ведет.
2 asady
 
07.05.15
16:03
(0) думаю надо продолжить манипуляции с отладчиком...
3 pankrat00
 
07.05.15
16:04
(2) Есть какие то идеи?
4 pankrat00
 
07.05.15
16:06
Текст запроса:
ВЫБРАТЬ
    ЗаказыПокупателейОстатки.Номенклатура,
    ЗаказыПокупателейОстатки.Номенклатура.СтавкаНДС КАК СтавкаНДС,
    ЗаказыПокупателейОстатки.ХарактеристикаНоменклатуры,
    ЗаказыПокупателейОстатки.ЗаказПокупателя,
    ВЫБОР
        КОГДА ЗаказыПокупателейОстатки.ЕдиницаИзмерения.Коэффициент ЕСТЬ NULL
            ТОГДА ЗаказыПокупателейОстатки.Номенклатура.ЕдиницаХраненияОстатков
        ИНАЧЕ ЗаказыПокупателейОстатки.ЕдиницаИзмерения
    КОНЕЦ КАК ЕдиницаИзмерения,
    ВЫБОР
        КОГДА ЗаказыПокупателейОстатки.ЕдиницаИзмерения.Коэффициент ЕСТЬ NULL
            ТОГДА ЕСТЬNULL(ЗаказыПокупателейОстатки.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент, 1)
        ИНАЧЕ ЗаказыПокупателейОстатки.ЕдиницаИзмерения.Коэффициент
    КОНЕЦ КАК Коэффициент,
    ЗаказыПокупателейОстатки.СуммаУпрОстаток КАК Сумма,
    ЗаказыПокупателейОстатки.КоличествоОстаток КАК Заказано,
    ЗаказыПоставщикамОстатки.КоличествоОстаток КАК ЗаказаноПоставщику,
    ТоварыВРезервеНаСкладах.КоличествоОстаток КАК Зарезервировано
ИЗ
    РегистрНакопления.ЗаказыПокупателей.Остатки(
            &ДатаОстатков,
            ЗаказПокупателя = &ЗаказПокупателя
                И СтатусПартии <> &СтатусВозвратнаяТара
                И НЕ Номенклатура.Комплект) КАК ЗаказыПокупателейОстатки
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.РазмещениеЗаказовПокупателей.Остатки(
                &ДатаОстатков,
                ЗаказПокупателя = &ЗаказПокупателя
                    И ЗаказПоставщику <> &Ссылка
                    И ТоварТара = &ТоварТара) КАК ЗаказыПоставщикамОстатки
        ПО ЗаказыПокупателейОстатки.Номенклатура = ЗаказыПоставщикамОстатки.Номенклатура
            И ЗаказыПокупателейОстатки.ХарактеристикаНоменклатуры = ЗаказыПоставщикамОстатки.ХарактеристикаНоменклатуры
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыВРезервеНаСкладах.Остатки(&ДатаОстатков, ДокументРезерва = &ЗаказПокупателя) КАК ТоварыВРезервеНаСкладах
        ПО ЗаказыПокупателейОстатки.Номенклатура = ТоварыВРезервеНаСкладах.Номенклатура
            И ЗаказыПокупателейОстатки.ХарактеристикаНоменклатуры = ТоварыВРезервеНаСкладах.ХарактеристикаНоменклатуры
5 asady
 
07.05.15
16:06
(3) я бы проверил ДополнительныеСвойства объекта
6 Serg_1960
 
07.05.15
16:08
В УПП не просто остатки заказа, а количество = заказано - зарезервировано - заказано поставщику.
7 pankrat00
 
07.05.15
16:13
(6) Это типовая процедура из Заказа на производство УПП 1.3.63.3
8 pankrat00
 
07.05.15
16:14
(5) Ты что то знаешь...?? А мне не говоришь)
9 pankrat00
 
07.05.15
16:32
Друзья плиз хелп.
10 asady
 
07.05.15
16:34
(8) ну сам посуди - запросы одинаковые, параметры одинаковые - а результат разный - чуднО?
значит что-то у них отличается..
скопируй этот запрос в консоль отчетов и проставь параметры как должно и посмотри из консоли.
11 pankrat00
 
07.05.15
16:47
(10) Брат, в консоли запросов деал. Сейчас перепроверил в консоли Отчетов. Выводит все ок.
12 pankrat00
 
07.05.15
16:58
Смотри сам 1 вариант программно:
https://www.dropbox.com/s/nr4xojvo1g3idqb/Безымянный.jpg?dl=0

Вариант 2 в ручную:
https://www.dropbox.com/s/w4dx786ifv425g9/Безымянный1.jpg?dl=0

Обрати внимание на табло Выборка.Количество()
в первом оно = 0, во втором = 2.
13 pankrat00
 
07.05.15
17:26
Параметры запроса все одинаковые.
14 hhhh
 
07.05.15
17:29
(13) всё-таки проверь отладчиком. Ведь и козе понятно, что в (0) ты передаешь Ссылка, ЭтотОбъект и ЗаказПокупателя совсем другие.
15 pankrat00
 
07.05.15
17:32
(14) Посмотри скрины в (12). Тип значения везде ссылка.
16 СвинТуз
 
07.05.15
17:40
где то ты тупишь по детски
сядь и прими позу лотоса
17 СвинТуз
 
07.05.15
17:43
если
ЗаказНаПроизводствоОбъект.ЗаполнитьПродукциюПоЗаказуПокупателю(Ссылка);
эспортная функция, то все равно что внутри
надо смотреть что на входе
18 pankrat00
 
07.05.15
17:45
(16) Возможно.. Вот тока где..?? Смотри скрины.
1. ПРоцедура одна и та же.
2. Отладчик в обоих случаях её цепляет.
3. Параметры одинаковые.

Результат то почему разный...
19 hhhh
 
07.05.15
17:48
(18) а откуда вызывается эта чудопроцедура?
20 hhhh
 
07.05.15
17:49
(19) только не говори, что из заказа покупателя.
21 pankrat00
 
07.05.15
17:50
(20) Да.
22 hhhh
 
07.05.15
17:50
(20) что да?
23 pankrat00
 
07.05.15
17:51
Вызывается из заказа покупателя.
24 hhhh
 
07.05.15
17:52
то есть ты там всё чистишь так спокойненько все регистры, а потом планируешь в них увидеть какие-то остатки в выборке?
25 pankrat00
 
07.05.15
17:54
(24) Погоди... Мысль я твою понял...щас проверю.
26 pankrat00
 
07.05.15
18:06
(24) Как ты чудовищно прав... Брат, спасибо огромное! Все верно регистры все чисты, остатков ни каких нет.. Мне было необходимо почувствовать себя идиотом. Еще раз спасибо брат.