8.х Заполнение документа 1 на основании документа 2

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

  1. TopicStarter Overlay
    PowerMan
    Offline

    PowerMan

    Регистрация:
    29 мар 2011
    Сообщения:
    8
    Симпатии:
    0
    Баллы:
    1
    Проблема следующая: нужно, чтобы в документе 1 на основании документа 2 заполнялись реквизиты. Строил конструктором ввода на основании, при отладке ни чего не заполняет. Кто знает подскажите как нужно правильно сделать, чтобы на основании документа1 заполнялись реквизиты и табличная часть в документе 2. :angry:
  2. 1cUserAndrew
    Offline

    1cUserAndrew Профессионал в 1С Команда форума

    Регистрация:
    27 май 2010
    Сообщения:
    4.948
    Симпатии:
    149
    Баллы:
    104
    Конструктор нормально сработал?
    Вот тут в общих чертах.

    Процедура "ОбработкаЗаполнения" в модуле объекта (документа, который вводится на основании) появилась???
    Покажите процедуру, сформированную конструктором и структуру (реквизитный состав) обоих документов.
  3. TopicStarter Overlay
    PowerMan
    Offline

    PowerMan

    Регистрация:
    29 мар 2011
    Сообщения:
    8
    Симпатии:
    0
    Баллы:
    1

    Конструктор сработал не нормально, потому что когда нажимал "Заполнить выражения" он там сам ни чего не сделал, поэтому сам заполнял. Процедура конечно же появилась, но не работает, а вот и она:
    Процедура ОбработкаЗаполнения(Основание)
    //{{__КОНСТРУКТОР_ВВОД_НА_ОСНОВАНИИ
    // Данный фрагмент построен конструктором.
    // При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!
    Если ТипЗнч(Основание) = Тип("ДокументСсылка.ПродлениеКниги") Тогда
    // Заполнение шапки
    Читатель = Основание.Читатель;
    Для Каждого ТекСтрокаТблЧит Из Основание.ТблЧит Цикл
    НоваяСтрока = ТблВозвр.Добавить();
    НоваяСтрока.Книга = ТекСтрокаТблЧит.Книга;
    НоваяСтрока.Количество = ТекСтрокаТблЧит.Количество;
    НоваяСтрока.СрокВозврата = ТекСтрокаТблЧит.НовыйСрокВозврата;
    КонецЦикла;
    ИначеЕсли ТипЗнч(Основание) = Тип("ДокументСсылка.ВыдачаКниги") Тогда
    // Заполнение шапки
    Читатель = Основание.Читатель;
    Для Каждого ТекСтрокаТблКниги Из Основание.ТблКниги Цикл
    НоваяСтрока = ТблВозвр.Добавить();
    НоваяСтрока.Книга = ТекСтрокаТблКниги.Книга;
    НоваяСтрока.Количество = ТекСтрокаТблКниги.Количество;
    НоваяСтрока.СрокВозврата = ТекСтрокаТблКниги.СрокВозврата;
    КонецЦикла;
    КонецЕсли;
    //}}__КОНСТРУКТОР_ВВОД_НА_ОСНОВАНИИ
    КонецПроцедуры


    Ниже представлен реквизитный состав, впринципе один и тот же
    Посмотреть вложение 7257 Посмотреть вложение 7258 Посмотреть вложение 7259
    Да еще у меня в документе "возврат книги" может выводиться на основании документа "выдача" или "продление".

    Вложения:

    • 1.jpg
      1.jpg
      Размер файла:
      57,1 КБ
      Просмотров:
      27
    • 2.jpg
      2.jpg
      Размер файла:
      55,4 КБ
      Просмотров:
      21
    • 3.jpg
      3.jpg
      Размер файла:
      54,7 КБ
      Просмотров:
      20
  4. 1cUserAndrew
    Offline

    1cUserAndrew Профессионал в 1С Команда форума

    Регистрация:
    27 май 2010
    Сообщения:
    4.948
    Симпатии:
    149
    Баллы:
    104
    Да, вроде, всё нормально. Странно, что не работает...
    Посмотрите прикрепленную базу. Сравните.

    Посмотреть вложение 7271

    Вложения:

    • База.rar
      Размер файла:
      19,8 КБ
      Просмотров:
      20
  5. Dmitriy_76
    Offline

    Dmitriy_76 Опытный в 1С Команда форума

    Регистрация:
    26 мар 2011
    Сообщения:
    2.174
    Симпатии:
    13
    Баллы:
    29
    Для начала поставь точку отстановки на первой строке твоей процедуры..Останавливается когда создаешь на основании...?
    Вычисли переменные :
    Основание (значение и тип покажи)
    Основание.Читатель (то же значение и тип)
  6. TopicStarter Overlay
    PowerMan
    Offline

    PowerMan

    Регистрация:
    29 мар 2011
    Сообщения:
    8
    Симпатии:
    0
    Баллы:
    1
    Эта база наверное 8.1. у меня она не открывается у меня 8.0.

    Поставил точку остановки в процедуре не останавливается, значения при вычислении переменных ни чего не показывает.
  7. Dmitriy_76
    Offline

    Dmitriy_76 Опытный в 1С Команда форума

    Регистрация:
    26 мар 2011
    Сообщения:
    2.174
    Симпатии:
    13
    Баллы:
    29
    Есть над чем задуматься..не правда ли...

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