Форум программистов, компьютерный форум, киберфорум
Наши страницы
1С: Собственные программы
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
domovenok
0 / 0 / 0
Регистрация: 13.10.2012
Сообщений: 87
1

Загрузка табличной части

27.03.2015, 18:26. Просмотров 1149. Ответов 15
Метки нет (Все метки)

Всем привет. Возможно ли загрузить табличную часть одного документа (ранее созданного и проведенного) в табличную часть другого документа (только созданный) если поля обоих табличный частей полностью совпадают по типу дынных. Заранее спасибо.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.03.2015, 18:26
Ответы с готовыми решениями:

1C Розница загрузка табличной части из xml
Розница (базовая), редакция 2.2 (2.2.5.22) обработка загружает из xml файла данные в табличную...

Загрузка и выгрузка табличной части документа в Excel
Учусь. Есть Документ в котором Табличные Части -> ПереченьТоваров с Реквизитами Товар Цена...

Значение строки табличной части получить в табличной части другого документа
Есть документ ПриходнаяНакладная (товар приходит от поставщика по его цене), с табличной частью...

Программное заполнение табличной части документа из табличной части справочника
Доброго! Ситуация, поставившая меня в тупик. Имеем 1с 8.2 УФ Имеем справочник "Работ" Имеем...

Автоматическое заполнение табличной части документа из табличной части другого
Добрый день. Совсем недавно начал изучать 1С и пока не могу найти решения собственной задачи)...

15
Напосарам
10 / 10 / 1
Регистрация: 04.05.2011
Сообщений: 142
27.03.2015, 18:44 2
Да, можно
0
domovenok
0 / 0 / 0
Регистрация: 13.10.2012
Сообщений: 87
27.03.2015, 19:01  [ТС] 3
А можно пример
0
Напосарам
10 / 10 / 1
Регистрация: 04.05.2011
Сообщений: 142
27.03.2015, 20:33 4
что то типа

1C
1
2
3
4
Для Каждого Стр из ЗаписанныйДокумент.ТабличнаяЧасть Цикл
    НоваяСтрока = НовыйДокумент.Таблица.Добавить();
    НоваяСтрока.Колонка = Стр.Колонка;
КонецЦикла;
0
domovenok
0 / 0 / 0
Регистрация: 13.10.2012
Сообщений: 87
27.03.2015, 21:00  [ТС] 5
1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
&НаКлиенте
Процедура Реквизит1ПриИзменении(Элемент)
загрузка (Элемент); 
    
КонецПроцедуры
 
&НаКлиенте
  Процедура загрузка (Элемент)
      
      
    Для Каждого Товар из Реализация_товаров_услуг.ТабличнаяЧасть Цикл
    НоваяСтрока = Возврат_товара_от_покупателей.Таблица.Добавить();
    НоваяСтрока.Колонка = Товар.Колонка;
КонецЦикла;
 
 
   КонецПроцедуры
Реквезит1 в нем выбираем номер ранее записанного документа

Ругается на:
{Документ.Возврат_товара_от_покупателей.Форма.ФормаДокумента.Форма(13,23)}: Переменная не определена (Реализация_товаров_услуг)
Для Каждого Товар из <<?>>Реализация_товаров_услуг.ТабличнаяЧасть Цикл (Проверка: Тонкий клиент)
{Документ.Возврат_товара_от_покупателей.Форма.ФормаДокумента.Форма(14,19)}: Переменная не определена (Возврат_товара_от_покупателей)
НоваяСтрока = <<?>>Возврат_товара_от_покупателей.Таблица.Добавить(); (Проверка: Тонкий клиент)
0
Напосарам
10 / 10 / 1
Регистрация: 04.05.2011
Сообщений: 142
27.03.2015, 22:03 6
Нет не правильно. Ты новый документ каким образом вводишь? С формы уже записаного? или на основании?
0
domovenok
0 / 0 / 0
Регистрация: 13.10.2012
Сообщений: 87
27.03.2015, 22:17  [ТС] 7
Создаю новый. Т.е выхожу в меню документы выбираю документ "Возврат_товара_от_покупателей"
0
Напосарам
10 / 10 / 1
Регистрация: 04.05.2011
Сообщений: 142
27.03.2015, 22:29 8
а как ты определяешь из какого документа брать табличную часть?
0
domovenok
0 / 0 / 0
Регистрация: 13.10.2012
Сообщений: 87
27.03.2015, 22:33  [ТС] 9
Реквезит1 в нем ссылка на номер документа
0
Напосарам
10 / 10 / 1
Регистрация: 04.05.2011
Сообщений: 142
27.03.2015, 22:47 10
аааааа.... ясно

Ты просто в процедуру Процедура загрузка (Элемент) не передал Ссылку на документ, ты передал элемент

попробуй так

1C
1
2
3
4
5
6
7
8
9
&НаКлиенте
  Процедура загрузка ()
ТаблицаДок = Реквизит1.Таблица;
 
Для Каждого Стр Из ТаблицаДок Цикл
  НоваяСтрока = Возврат_товара_от_покупателей.Таблица.Добавить();
  НоваяСтрока.Колонка = Товар.Колонка;
КонецЦикла
КонецПроцедуры
0
domovenok
0 / 0 / 0
Регистрация: 13.10.2012
Сообщений: 87
27.03.2015, 23:02  [ТС] 11
1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
&НаКлиенте
Процедура Реквизит1ПриИзменении(Элемент)
загрузка ();    
    
КонецПроцедуры
 
 
&НаКлиенте
  Процедура загрузка ()
      
      
   ТаблицаДок = Реквизит1.Таблица;
   Для Каждого Стр Из ТаблицаДок Цикл
   НоваяСтрока = Возврат_товара_от_покупателей.Таблица.Добавить();
   НоваяСтрока.Колонка = Товар.Колонка;
КонецЦикла;
 
 
КонецПроцедуры
{Документ.Возврат_товара_от_покупателей.Форма.ФормаДокумента.Форма(14,16)}: Переменная не определена (Реквизит1)
ТаблицаДок = <<?>>Реквизит1.Таблица; (Проверка: Тонкий клиент)
{Документ.Возврат_товара_от_покупателей.Форма.ФормаДокумента.Форма(16,17)}: Переменная не определена (Возврат_товара_от_покупателей)
НоваяСтрока = <<?>>Возврат_товара_от_покупателей.Таблица.Добавить(); (Проверка: Тонкий клиент)
{Документ.Возврат_товара_от_покупателей.Форма.ФормаДокумента.Форма(17,25)}: Переменная не определена (Товар)
НоваяСтрока.Колонка = <<?>>Товар.Колонка; (Проверка: Тонкий клиент)

Все равно не выходит.
0
Напосарам
10 / 10 / 1
Регистрация: 04.05.2011
Сообщений: 142
27.03.2015, 23:28 12
блин после пивасика плохо соображаю чето так вроде


1C
1
2
3
4
5
6
7
8
9
&НаКлиенте
  Процедура загрузка ()
ТаблицаДок = Объект.Реквизит1.Таблица;
 
Для Каждого Стр Из ТаблицаДок Цикл
  НоваяСтрока = Возврат_товара_от_покупателей.Таблица.Добавить();
  НоваяСтрока.Колонка = Стр.Колонка;
КонецЦикла
КонецПроцедуры
0
Dethmontt
Модератор
Эксперт 1С
2643 / 2436 / 415
Регистрация: 10.03.2011
Сообщений: 8,699
Записей в блоге: 1
Завершенные тесты: 1
27.03.2015, 23:36 13
Цитата Сообщение от Напосарам Посмотреть сообщение
Объект.Реквизит1.Таблица;
Первое: На клиенте нельзя обращаться через точку от ссылки! (это запрос к БД, а запрос не доступен на клиенте)
Что бы получить табличную часть другого документа придется уходить на сервер

Второе: Зачем цикл если у табличной части есть метод Загрузить()

Пример:
1C
1
2
3
4
5
6
7
8
9
&НаКлиенте
Процедура КнопкаНажатие(Кнопка)
    ВызватьЗаполнениеНаСервере();
КонецПроцедуры
 
&НаСервере
Процедура ВызватьЗаполнениеНаСервере()
   Объект.ИмяТабличнойЧасти.Загрузить(Объект.Реквизит1.ИмяТабличнойЧасти.Выгрузить());
КонецПроцедуры
1
Напосарам
10 / 10 / 1
Регистрация: 04.05.2011
Сообщений: 142
27.03.2015, 23:46 14
Цитата Сообщение от Dethmontt Посмотреть сообщение
Первое: На клиенте нельзя обращаться через точку от ссылки! (это запрос к БД, а запрос не доступен на клиенте)
Что бы получить табличную часть другого документа придется уходить на сервер
Совершено точно, скопировал и даже не посмотрел.

Цитата Сообщение от Dethmontt Посмотреть сообщение
Второе: Зачем цикл если у табличной части есть метод Загрузить()
Если человек не знает 1С то по моему через цикл для примера понятнее как это происходит
0
domovenok
0 / 0 / 0
Регистрация: 13.10.2012
Сообщений: 87
28.03.2015, 00:04  [ТС] 15
Спасибо.
0
Dethmontt
Модератор
Эксперт 1С
2643 / 2436 / 415
Регистрация: 10.03.2011
Сообщений: 8,699
Записей в блоге: 1
Завершенные тесты: 1
28.03.2015, 03:15 16
Цитата Сообщение от Напосарам Посмотреть сообщение
понятнее как это происходит
Пусть учится сразу делать правильно
0
28.03.2015, 03:15
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.03.2015, 03:15

Запрос к табличной части 1С
Пожалуйсто помогите, очень хочу разобраться. Студенты-справочник Курс- таблична часть его ...

Автозаполнение табличной части
Добрый день, как поставить автозаполнение табличной части документа при выборе определённого...

Данные - Табличной части
Как работать с данными Табличной части в запросе??? Как его тоже выгружать и записывать в него...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru