7.7 Сохранить в ревизит данные об документе на основании которого создали

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем fate-computers, 21 янв 2016.

  1. TopicStarter Overlay
    fate-computers
    Offline

    fate-computers

    Регистрация:
    12 янв 2016
    Сообщения:
    21
    Симпатии:
    0
    Баллы:
    1
    Пскажите мне плс, есть ли такая возможность в 7.7 вытянуть данные с документа на основании. Но уже после того как мы его ввели и сохранили...

    Есть 1й документ, он основной, 2 и 3 вводятся на основании первого.

    Если мы 1й меняем, уже после создания 2 и 3го, то с помощью процедуры уже в готовые 2й и 3й втянуть новые данные с 1го. Это вообще реально?

    Спасибо.
  2. Vlad
    Offline

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

    Регистрация:
    16 авг 2006
    Сообщения:
    3.517
    Симпатии:
    19
    Баллы:
    29
    Какие данные ты хочешь вытянуть?
    Если я правильно помню, то в 7.7 в модуле документа есть процедура что-то типа Создается на основании. Вот там порой.
  3. TopicStarter Overlay
    fate-computers
    Offline

    fate-computers

    Регистрация:
    12 янв 2016
    Сообщения:
    21
    Симпатии:
    0
    Баллы:
    1
    Да, но мы уже создали документы...
    А потом захотели изменить данные в ТЗ в старом (основном) документе.
    Вот нужно как-то в созданный втянуть уже новые данные, не пере создавая документ
  4. Vlad
    Offline

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

    Регистрация:
    16 авг 2006
    Сообщения:
    3.517
    Симпатии:
    19
    Баллы:
    29
    "А потом захотели изменить данные в ТЗ в старом (основном) документе.
    Вот нужно как-то в созданный втянуть уже новые данные, не пере создавая документ"

    На примере, на скринах можешь показать? А то не совсем понятно.
  5. TopicStarter Overlay
    fate-computers
    Offline

    fate-computers

    Регистрация:
    12 янв 2016
    Сообщения:
    21
    Симпатии:
    0
    Баллы:
    1
    Ну не знаю как на примерах.
    Но..

    Имеем документ 1. (основной)

    В него вносятся данные в ТЗ. номерклатура и т.п.

    Имеем документ 2 и 3 которые полность зависят от 1го и создаются на его основании.
    Вот мы создали 1й. Все в нем сделали, напепчатали, сохранили и т.д.
    Потом на основании 1го создали 2й. Ну и напечатали и т.д. (что там нам нужно от него).

    Возникает необходимость добавить (изменить) данные в 1м. (основном).

    Дилема:

    Как сделать, чтобы не плодить кол-во 2рых документов... Типа удалили и снова создали на основании.
    А просто заново вытащить данные из 1го. (обновить) ? :)

    Может так понятнее?

    Имеем счет. На основании создали накладную.
    Потом меняем данные в счете.
    Вот в накладную нужно втянуть измененный счет.

    Я логически понимаю как это сделать. Но мне ж нужна ссылка на основной документ. Я так понимаю его нужно каким-то образом сохранить в реквизитах документа (например накладной), ну а потом нажав кнопашку, обновить данные со счета...
    Последнее редактирование: 21 янв 2016
  6. Vlad
    Offline

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

    Регистрация:
    16 авг 2006
    Сообщения:
    3.517
    Симпатии:
    19
    Баллы:
    29
    Если я тебя правильно понял, то тут надо будет "кнопку" на накладную делать, а на нее прописывать процедуру, что бы она с документа основания данные брала. Вот так вот с ходу других вариантов не вижу.
  7. TopicStarter Overlay
    fate-computers
    Offline

    fate-computers

    Регистрация:
    12 янв 2016
    Сообщения:
    21
    Симпатии:
    0
    Баллы:
    1
    Верно....

    Сам описав проблему полез у документы (туже расходную накладную) и походу все понял :)
    Спасибо за помощь :)

    Остается программно реализовать попробовать


    Реализация оказалась еще проще, чем объяснение самой проблемы :)
    Последнее редактирование: 21 янв 2016
  8. Vlad
    Offline

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

    Регистрация:
    16 авг 2006
    Сообщения:
    3.517
    Симпатии:
    19
    Баллы:
    29
    Честно говоря, я такого не делал, но чисто теоретически, ничего сложного быть не должно. Успехов!
  9. TerANik
    Offline

    TerANik Профессионал в 1С

    Регистрация:
    19 ноя 2014
    Сообщения:
    997
    Симпатии:
    70
    Баллы:
    54
    Давно на семёрке не писал.. Тяжко это .. в обработке проведения я так подразумеваю не вариант, при записи есть признак проведения ?))

    А если сделать в общем модуле процедуры для поиска и перезаполнения документов 2 и 3 и ПриЗаписи документа 1 вызывать эту процедуру.

    Просто задача я так понимаю чтобы не было расхождения данных... а кнопка это дополнительный фактор.. либо если ввели на основании то менять должен определённый человек...

    Воо .. в рамках монолога рождаются идеи..
    Написать обработку в которой будете править документ 1... и в ней же при сохрании искать и перезаполнять 2 и 3..

    Процедура КнопкаЗаписатьИзменения()
    1.Записать()
    НайтиИПерезаполнитьДокументы2и3()
    КонецПроцедуры

    Ну там транзакции и тому подобное.
  10. Vlad
    Offline

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

    Регистрация:
    16 авг 2006
    Сообщения:
    3.517
    Симпатии:
    19
    Баллы:
    29
    Я в 7. 7 тоже давно не писал... :)
    По-моему ты в какие-то дебри лезешь.
    Попробуй сделать проще.
    На "кнопку" пишешь процедуру, а в ней указываешь, например, Документ.Товар = ДокументОснование.Товар., И т.д.
    Надеюсь, догадываешься, что это только пример. В табличной части, ессно, через цикл.
  11. TerANik
    Offline

    TerANik Профессионал в 1С

    Регистрация:
    19 ноя 2014
    Сообщения:
    997
    Симпатии:
    70
    Баллы:
    54
    мм.. изменить документ основание, найти и открыть два документа.. нажать в них кнопку.. вот это утопия.. программист должен автоматизировать и сокращать рабочее время сотрудника).. его затраты окупятся потом временными... ибо раз им лень это руками сделать.. то значит это частый случай.. А кнопки перезаполнить в семерке нет типовой?
  12. TopicStarter Overlay
    fate-computers
    Offline

    fate-computers

    Регистрация:
    12 янв 2016
    Сообщения:
    21
    Симпатии:
    0
    Баллы:
    1
    Да все еще проще :)

    // ===============================
    Процедура ОбновитьТЗ ()
    //Табличная часть
    ТЗ = СоздатьОбъект("ТаблицаЗначений");
    ВыгрузитьТабличнуюЧасть(ТЗ);
    ТЗ.УдалитьСтроки();
    ЗагрузитьТабличнуюЧасть(ТЗ);

    ВводНаОсновании (Заказ);
    КонецПроцедуры
  13. Vlad
    Offline

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

    Регистрация:
    16 авг 2006
    Сообщения:
    3.517
    Симпатии:
    19
    Баллы:
    29
    Когда получится -отзвонись.
  14. TopicStarter Overlay
    fate-computers
    Offline

    fate-computers

    Регистрация:
    12 янв 2016
    Сообщения:
    21
    Симпатии:
    0
    Баллы:
    1
    Да, все работает :)
  15. man37
    Offline

    man37 Опытный в 1С

    Регистрация:
    10 дек 2013
    Сообщения:
    197
    Симпатии:
    5
    Баллы:
    29
    А можно было посмотреть как это реализовано в документах реализация и счет-фактура, при изменении реализации автоматически (без всяких кнопочек) меняется и счет-фактура.
  16. Vlad
    Offline

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

    Регистрация:
    16 авг 2006
    Сообщения:
    3.517
    Симпатии:
    19
    Баллы:
    29
    Что ж, возможно, ты и прав.
  17. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    Потому что в СФ не заполняется табличная часть если есть основание.... Данные для печати берутся из основания.
  18. man37
    Offline

    man37 Опытный в 1С

    Регистрация:
    10 дек 2013
    Сообщения:
    197
    Симпатии:
    5
    Баллы:
    29
    Точно, проглядел, что нет ТЧ.
  19. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    во втором документе

    Процедура ВводНаОсновании()
    ДокОснование=Док;
    КонецПроцедуры

    где докОснование реквизит шапки документа №2 типа документ

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