Имя: Пароль:
1C
1С v8
создание основания для реализации, ошибка, найдите кто может
0 Genby
 
07.10.14
08:10
Идея в том, чтобы создать основание-заказ для реализации, у которых нет заказа. Тут тестовый вариант, только для первой ссылки срабатывает. Заказ создается, но в структуру подчиненности не попадает. Кто может сказать почему и как сделать чтобы попадал?

&НаСервере
Процедура СделатьВсеНаСервере()
    запрос1=новый запрос;
    если значениезаполнено(объект.партнер)тогда
    запрос1.Текст="ВЫБРАТЬ
                  |    РеализацияТоваровУслуг.Ссылка
                  |ИЗ
                  |    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
                  |ГДЕ
                  |    РеализацияТоваровУслуг.Партнер = &Партнер
                  |    И РеализацияТоваровУслуг.Проведен = ИСТИНА
                  |    И РеализацияТоваровУслуг.ЗаказКлиента = ЗНАЧЕНИЕ(Документ.Заказклиента.ПустаяСсылка)";
    запрос1.УстановитьПараметр("партнер",объект.партнер);
иначе
        запрос1.Текст="ВЫБРАТЬ
                      |    РеализацияТоваровУслуг.Ссылка
                      |ИЗ
                      |    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
                      |ГДЕ
                      |    РеализацияТоваровУслуг.Проведен = ИСТИНА
                      |    И РеализацияТоваровУслуг.ЗаказКлиента = ЗНАЧЕНИЕ(Документ.Заказклиента.ПустаяСсылка)";
конецесли;
    итог=запрос1.Выполнить().Выгрузить();
    для каждого стр из итог цикл
        сообщить(стр.ссылка.партнер);
        сообщить(стр.ссылка.дата);
    конеццикла;    
    ДокЗак=документы.ЗаказКлиента.СоздатьДокумент();
    ДокЗак.Дата=итог[0].ссылка.дата;
    докзак.Партнер=итог[0].ссылка.партнер;
    докзак.Соглашение=итог[0].ссылка.соглашение;
    докзак.договор=итог[0].ссылка.договор;

    ДокЗак.ЖелаемаяДатаОтгрузки=итог[0].ссылка.дата;
    докзак.Товары.Загрузить(итог[0].ссылка.товары.выгрузить());
    докзак.Записать();
    ДокРеал=итог[0].ссылка.получитьобъект();
    докреал.заказклиента=докзак;
    докреал.Основание=докзак;
    докреал.записать();
    
КонецПроцедуры
1 Genby
 
07.10.14
08:13
ап
2 Peltzer
 
07.10.14
08:15
Господи, научи использовать циклы по выборке. А то ведь пропадёт человек.
3 Dmitry1c
 
07.10.14
08:27
(0) курс "Основные объекты" стоит что-то около 5к рублей.
4 Genby
 
07.10.14
08:28
давайте по существу
5 Dmitry1c
 
07.10.14
08:29
(4) это как раз по существу.
6 zak555
 
07.10.14
08:31
(2) какая разница -- есть цикл или нет ?
если тз[] -- позиционируется на сроке ТЗ
7 Peltzer
 
07.10.14
08:32
(4) А я по существу. Ты получил таблицу "Итог", далее в цикле выводишь сообщение про наименование партнера и дату отдельной строкой. Потом берешь первый элемент, и обрабатываешь.
Понятно, что ты совсем не понимаешь, что выполняет твой код.
Настолько, что готов спросить левых чуваков из интернета, почему не работает.
8 butterbean
 
07.10.14
08:33
(0) докреал.заказклиента=докзак.Ссылка;
9 Genby
 
07.10.14
08:38
(8)
спасибо, требовалось именно это. А не болтовня, как выше.