Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
25 ноя 2024, 22:10

Создание на основание

Автор elai27, 18 мар 2011, 18:35

0 Пользователей и 1 гость просматривают эту тему.

elai27

Есть документ1 с реквизитами, но без табличной части!
Есть документ2 с реквизитами и табличной частью, который должен вводиться на основании документа1!
Причем один из реквизитов док.1 должен перенестись в табличную часть док.2 в создав новую строку и заполнив соответсвующий столбец!
как это реализовать?

Klyacksa

Делаем ввод на основании, конструктором ввода на основании заполняем нужные (копируемые) реквизиты, потом открываем ОБработкуЗаполнения в модуле документа2, и правим там код так, чтобы создавалась новая строка в табличной части документа2.
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

elai27

дело в том что у этого документа уже есть Обработка заполнения , т.к. это типовая конфа! а при открытии конструктора, Это обработка удаляется и создается новая! а мне нужно не потерять старую обработку!

***Vjacheslav***

А стандартная ОбработкаЗаполнения заполняет табличную часть? Или можно по конкретней что за документы и что нужно? так будет легче помогать.

Klyacksa

Раз есть - значит, и правим существующий код.
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

***Vjacheslav***

Если в общих словах то примерно так дописывать надо.

НоваяСтрока = Объект.ТабличнаяЧасть.Добавить();
НоваяСтрока.НужнаяКолонка = Основание.НужныйРеквизит;


elai27

Я и так делал! и вообще убирал заполнение табличной части, прописывал заполнение только реквизитов!
но в пользовательском режиме выскакивает ошибка
{Документ.ВозвратТоваровПоставщику(2634)}: Поле объекта не обнаружено (Дата) мСтруктураПараметровВзаиморасчетов.Дата = ТекущаяДата();

это часть кода также типовая! из-за нее я так понял не получается создать документ на основании!
1с8.1, УТ11

elai27


Klyacksa

Уважаемый, ну мы же не экстрасенсы, предугадывать, что Вы там где направили, и почему теперь вылазит ошибка.
Плюс, Вы нам так и не сказали как называются Документ1 и Документ2.
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

elai27

Если ТипЗнч(Основание) = Тип("ДокументСсылка.ПриемТехникиНаРемонт") Тогда
   
      // Заполнение шапки
      Комментарий = Основание.Комментарий;
                  
   КонецЕсли;   

      
   
   УправлениеВзаиморасчетами.ДополнитьСтруктуруПараметровДляЗаполненияТаблицыДокументовРасчетов(ЭтотОбъект, мСтруктураПараметровВзаиморасчетов);
   мСтруктураПараметровВзаиморасчетов.Дата = ТекущаяДата();
   УправлениеВзаиморасчетами.ЗаполнитьТаблицуДокументовРасчетовСКонтрагентом(ЭтотОбъект, мСтруктураПараметровВзаиморасчетов);




вот то что отмеченно красным добавил я! то что отмеченно зеленым - было! больше я НИЧЕГО НЕ МЕНЯЛ!

Документ1 - я создал сам!!!
Документ2 - ВозвратТоваровПостащику


Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск