1. Уважаемые участники и гости, 19 октября codeby будет работать в режиме "Только чтение". Регистрация новых участников будет закрыта. 20 октября портал продолжит работу в прежнем режиме.

Копировать документ!

Тема в разделе "1C и всё что с ней связано", создана пользователем Sergoon, 1 июл 2009.

Статус темы:
Закрыта.
  1. Sergoon

    Sergoon Гость

    Репутация:
    0
    Доброе время суток! Вопрос такой, в журнале есть функция копировать строку (F9), какая процедура вызываеться и как мне ее прописать для своей кнопки? 1С недавно колупать начал, помогите пожалуйста!!!
     
  2. gorlanovmax

    gorlanovmax Well-Known Member

    Репутация:
    0
    Регистрация:
    19 июн 2008
    Сообщения:
    286
    Симпатии:
    0
    В модуле формы документа вставляется предопределенная процедура ВводНового(Скопирован)

    Если документ введен копированием, то переменная Скопирован будет равна 1
     
  3. Sergoon

    Sergoon Гость

    Репутация:
    0
    Спасибо! Это я нашел, но вот что-то пишет ошибку что неизвестное имя процедуры!!! Я так тупо и пишу:
    ВводНового("название переменной")! Правильно? Может мозг уже перегрелся! Завтра еще буду пробывать!
     
  4. Hryv

    Hryv Гость

    Репутация:
    0
    Не совсем понятен вопрос
    Надо перехватить момент копирования или выполнить копирование при нажатии кнопки?

    Чтобы создать копию документа надо сделать примерно так
    На кнопку повесить (если кнопка на форме журнала)
    ОткрытьФорму("Документ.Счет",,ТекущийДокумент);//Счет - это для примера, надо подставить правильный вид документа
    А в самом документе поставить галочку, что он может вводиться на основании самого себя
    И процедуру вставить в модуль

    Код:
    Процедура ВводНаОсновании(ДокОсн)
    Если ДокОсн.Вид()="Счет" Тогда
    РеквизитШапки1 = ДокОсн.РеквизитШапки1; // РеквизитШапки1 - тоже для примера
    //Далее тоже самое для всех реквизитов шапки
    //Если есть табличная часть, то
    ТЗ = СоздатьОбъект("ТаблицаЗначений");
    ДокОсн.ВыгрузитьТабличнуюЧасть(ТЗ);
    Док.ЗагрузитьТабличнуюЧасть(ТЗ);
    КонецЕсли;
    КонецПроцедуры
    Если процедура ВводНаОсновании в модуле уже есть, то подправить
     
  5. LxS

    LxS Гость

    Репутация:
    0
    Код:
    	Док = Документы.АнкетаЗастрахованногоЛица.НайтиПоНомеру();
    Док1 = Док.Скопировать();
    Описание переменной Док привел как пример.

    Его можно получать, как угодно.Лишь бы на выходе была ссылка на копируемый документ.
     
  6. Hryv

    Hryv Гость

    Репутация:
    0
    LxS, по вопросу не понятно о какой вермии идет речь
    Мой пример для 7.7
    При этом также как по [F9] откроется новый уже заполненный, но не сохраненный документ (вроде бы именно это требуется)

    Как сделать в 8 версии я не в курсе
     
  7. Sergoon

    Sergoon Гость

    Репутация:
    0
    Спасибо Hryv, именно твой то пример мне и нужен, а где он???
     
  8. LxS

    LxS Гость

    Репутация:
    0
    Как спросили, так ответил.
    Чьи это проблемы, если автору вопроса не вдомек, что 1С существует уже в 4х версиях, и все друг от друга в разной степени отличны.

    По поводу моего примера, выполнится то же самое действие, что ты и сказал("вроде бы это и требуется.."), только с той разницей, что это кусок кода для восьмерки.

    - теперь в курсе.
     
  9. Hryv

    Hryv Гость

    Репутация:
    0
    Теперь - да! Однако, прогресс не стоит на месте, всего 2 строки


    Повтор
     
  10. LxS

    LxS Гость

    Репутация:
    0
    А так одна:
     
Загрузка...
Статус темы:
Закрыта.

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