8.х Копирование договора программно

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем Milya_mali, 23 мар 2016.

  1. TopicStarter Overlay
    Milya_mali
    Offline

    Milya_mali

    Регистрация:
    19 фев 2016
    Сообщения:
    17
    Симпатии:
    0
    Баллы:
    1
    Доброго времени суток! УТ 10.3. Стоит задача копировать документы реализации при создании (чтоб в дальнейшем редактировать только те, которые необходимы) с изменением организации... Создана рег. задание с методом
    Процедура СкопироватьДокументыРеализации() Экспорт

    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("Орг",Справочники.Организации.НайтиПоКоду("УТ0000010"));
    Запрос.УстановитьПараметр("ОргУпр",Справочники.Организации.НайтиПоКоду("УТ0000011"));
    Запрос.УстановитьПараметр("Дата1",ТекущаяДата()-10);
    Запрос.УстановитьПараметр("Дата2",ТекущаяДата()+10);
    Запрос.Текст = "ВЫБРАТЬ
    | РеализацияТоваровУслуг.Комментарий
    |ИЗ
    | Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
    |ГДЕ
    | РеализацияТоваровУслуг.Организация = &ОргУпр
    | И РеализацияТоваровУслуг.Проведен = ИСТИНА
    | И РеализацияТоваровУслуг.Дата МЕЖДУ &Дата1 И &Дата2";
    Выборка = Запрос.Выполнить().Выбрать();
    Список = Новый СписокЗначений();
    Пока Выборка.Следующий() Цикл
    Список.Добавить(Выборка.Комментарий);
    КонецЦикла;

    Запрос.УстановитьПараметр("Список",Список);
    Запрос.Текст = "ВЫБРАТЬ
    | РеализацияТоваровУслуг.Ссылка,
    | РеализацияТоваровУслуг.Номер,
    | РеализацияТоваровУслуг.Дата,
    | РеализацияТоваровУслуг.Контрагент
    |ИЗ
    | Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
    |ГДЕ
    | НЕ РеализацияТоваровУслуг.Номер В (&Список)
    | И РеализацияТоваровУслуг.Дата МЕЖДУ &Дата1 И &Дата2
    | И РеализацияТоваровУслуг.Проведен = ИСТИНА
    | И РеализацияТоваровУслуг.Организация = &Орг";
    Выборка = Запрос.Выполнить().Выбрать();

    Пока Выборка.Следующий() Цикл
    Запрос.УстановитьПараметр("Контрагент",Выборка.Контрагент);
    Запрос.Текст = "ВЫБРАТЬ
    | ДоговорыКонтрагентов.Ссылка КАК Ссылка
    |ИЗ
    | Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов
    |ГДЕ
    | ДоговорыКонтрагентов.Владелец = &Контрагент
    | И ДоговорыКонтрагентов.Организация = &Орг";
    ВыборкаДоговора = Запрос.Выполнить().Выбрать();
    // ВыборкаДоговора.Следующий();

    НовыйДокумент = Выборка.Ссылка.Скопировать();
    НовыйДокумент.Дата = Выборка.Дата;
    НовыйДокумент.Комментарий = Выборка.Номер;
    НовыйДокумент.Организация = Справочники.Организации.НайтиПоКоду("УТ0000011");
    НовыйДокумент.ДоговорКонтрагента = ВыборкаДоговора.Ссылка;

    НовыйДокумент.Записать(РежимЗаписиДокумента.Проведение);
    КонецЦикла;

    КонецПроцедуры


    Ошибка выдается, что заполнены не все обязательные реквизиты, в частности, договор... По ссылке скопировать как понимаю не получится...по такому запросу в консоли выдает такие данные...может как-то через код договора можно вставить в новый документ ?? Подскажите пожалуйста !!!! Заранее спасибо!!
    upload_2016-3-23_16-59-29.png
  2. Draco
    Offline

    Draco Модераторы Команда форума Модератор

    Регистрация:
    28 окт 2009
    Сообщения:
    13.628
    Симпатии:
    946
    Баллы:
    204
    1. НУ раз у Вас реализация то договоры надо отбирать с типом С покупателем т.к у контрагента могут быть несколько договоров
    2 я смотрю у вас закоменчено ВыборкаДоговора.Следующий(); попробуйте раскоментировтаь
    3. Вы посмотрите разве тут НовыйДокумент = Выборка.Ссылка.Скопировать(); после этого договор разве не заполнен? зачем перезаполнять?
  3. TopicStarter Overlay
    Milya_mali
    Offline

    Milya_mali

    Регистрация:
    19 фев 2016
    Сообщения:
    17
    Симпатии:
    0
    Баллы:
    1
    1. наверное, как-то нужно сделать по коду договора, если в первой реализации такой-то код, то и копировать в новый тот же....
    2. пока это не помогло...надежда была, что хотя бы что-нибудь подставит...
    3. вы были правы насчет этого (((( теперь выдает такую ошибку
    Проведение документа: Реализация товаров и услуг УПР00000001 от 23.03.2016 17:21:55 (продажа, комиссия)
    Выбран договор контрагента, не соответствующий организации, указанной в документе!

    Это означает, что появлется необходимость и договоры плодить как и док. реализации ??
    --- Объединение сообщений, 23 мар 2016 ---
    Может в документе реализации убрать обязательное заполнение договора и очищать, не зависимо от того что в него копируется... во втором документе будет просто пустым...а?
  4. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.735
    Симпатии:
    508
    Баллы:
    204
    Может проще обратиться к специалистам, чтоб не курочить и не усугу***** ситуацию:), ...а ?
  5. Draco
    Offline

    Draco Модераторы Команда форума Модератор

    Регистрация:
    28 окт 2009
    Сообщения:
    13.628
    Симпатии:
    946
    Баллы:
    204
    я просто не совсем пойму что вы хотите скопировать документы реализации с одной орагнизации на другую или что?
  6. TopicStarter Overlay
    Milya_mali
    Offline

    Milya_mali

    Регистрация:
    19 фев 2016
    Сообщения:
    17
    Симпатии:
    0
    Баллы:
    1
    да, копируем реализацию со сменой организации...для определенных показателей для организации необходимо...задача есть - нужно уж решать...но ошибка вышла, потому что договор не копируется...да и не скопируется, т.к. в договоре указана организация...получится только если копировать и договор (но это ересь...)...
  7. TopicStarter Overlay
    Milya_mali
    Offline

    Milya_mali

    Регистрация:
    19 фев 2016
    Сообщения:
    17
    Симпатии:
    0
    Баллы:
    1
    посоветуйте пожалуйста что-нибудь ((( тот же прог.код работает на УТ 11....как быть с договором контрагента?(
    Последнее редактирование: 24 мар 2016

Поделиться этой страницей