Заполнение ТЧ по ТЧ и просто заполнение.

Обработки - Обработка документов

41
Обработка выполняет любые действия со значениями табличной части в том числе заполнение на основании табличных частей других объектов (не обязательно с похожей структурой). Позволяет заполнять такие экзотические поля как "КлючСтроки" и прочие, требующие сложных вычислений.
Навеяно "ОбработкаТабличнойЧастиТовары". Оформленно в виде внешней саморегистрируемой обработки заполнения табличных частей. С претензией на универсальность.

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

В обработке достуны ряд алгоритмов:

 

Перечень доступных алгоритмов

Для алгоритмов у которых доступно заполнение соответствия и/или алгоритма возможно сохранение настроек:

Действия

При заполнении ТЧ на основании другой ТЧ есть три варианта заполнение: 1. По соответствию; 2. По произвольному алгоритму; 3. Их комбинация.:

Заполнения ТЧ приемник по ТЧ источника

Соответствия заполняются вручную (с учетом типов),  по имени (с учетом типа), по типу (не взирая на имя):

 

Соответствие

При написании алгоритма доступны три помошника: 1. Шаблон запроса(ов); 2. Изменение текста написанного запроса (требует его выделения); 3. Все поля объекта, откуда была вызвана обработка, и текущие (по циклу) строки таблиц источника и приемника:

 

Редактор текста алгоритма.

После выбора поля путь к данным вставляется в алгоритм:

 

Выбор поля

 

41

Скачать файлы

Наименование Файл Версия Размер
Обработка "Заполнение ТЧ по ТЧ".
.epf 43,30Kb
02.04.10
356
.epf 43,30Kb 356 Скачать бесплатно

См. также

Комментарии
Сортировка: Древо
1. gutentag 254 31.03.10 22:33 Сейчас в теме
2. CheBurator 3558 02.04.10 21:13 Сейчас в теме
не понял, есть ли такая возможность:
приемник - строка, источник - реквизит.
???
как будет сделано приведение типов?
.
например я в ТЧприемнике хочу заполнить строка.Артикул значением Товар.Артикул
8. CheBurator 3558 02.04.10 21:44 Сейчас в теме
(5) спсб. я примерно так себе и представлял.
.
по поводу "пропадающих" сообщений и прочих проблем - это временные трудности на портале, связанные с большим трафиком. Саппорт работает над устранение проблем и повышением производительности.
9. obmailok 54 02.04.10 22:13 Сейчас в теме
(8) - я понял подвох.
Задача автоматического подбора соответствий в этой обработке не решалась. Тем боле, что кроме типа может не совпадать имя реквизита. Для этого и потребовалось сохранение преднастроек. Обработка в первую очередь предназначалась для случаев, когда из одной строки или нескольких, связанных по ключу строк нужно создать одну или несколько ответных строк. А поскольку алгоритм выполняется в цикле, то была создана СтруктураЛичная для хранения каких-нибудь промежуточных значений, чтоб не пересчитывать.
Сложные случаи требуют преднастроек программистом.
В остальных случаях вполне пригодна для простых пользователей.
10. CheBurator 3558 03.04.10 01:07 Сейчас в теме
(9) это вы сильно хорошего мнения о "простых пользователях" - они вот так не глядя, например (для 7.7 ибо у меня есть мелкопохожая разработка), ПО ПРОТСОМУ - такой обработкой столько наворотят - неделю разгребать.. абизянам гранаты в руки - не давать!
11. obmailok 54 03.04.10 07:39 Сейчас в теме
(10) К сожалению обезьянам и давать ничего не надо - они сами находят.
А если по существу, то была идея при вызове обработки в структуре параметров передавать настройки по некоторому ограничению, но что ограничивать и как симпатичней это сделать пока не решил.

P.S. Есть ли вообще защита от "генератора нажатий случайных кнопок"? По-моему только большая вожделенная кнопка "Сделать всё". А посему, моё глубокое убеждение, что от пользователя тоже нужно требовать понимания происходящего и профессионализма. А то доживем до времен, когда работодатель скажет: "Да не будем мы брать программиста на работу, а то он такого напрограммирует...". Так зачем брать на работу такого бухгалтера или оператора? (Заранее согласен, что это не соответствует действительности, а жаль).
4. obmailok 54 02.04.10 21:28 Сейчас в теме
(2) Если я правильно понял, то строка - это реквизит типа "Строка".
Тогда на закладке "Алгоритм" нужно написать примерно такую строку:

ТекСтрокаТЧ_Приемник.РеквизитТипаСтрока = Строка(ТекСтрокаТЧ_Источник.Товар.РеквизитЛюбогоТипа);

Алгоритм отрабатывается после заполнения соответствия, если таковое имеется.
12. y22-k 222 01.06.10 15:55 Сейчас в теме
Типовая торговля 10.3.
Заполняю Заказ покупателя на основании заказа покупателя (Да так надо) вылетает ошибка при нажатии на кнопку Выплнить и выбора ТЧ товары.
ТЧ_Источник = ПустоеЗначениеТипа(ТипЗначения)[мИмяТЧ].Выгрузить();
13. mrdc 06.11.10 12:45 Сейчас в теме
Аналогичная ошибка при заполнении "Инвентаризации товаров на складе" (делаем "Добавить из объекта" - выбираем "Инвентаризация товаров на складе" - Подбор - выбираем документ из списка - Ок - нажимаем "Выполнить" - "Товары" - вылетает окошко с ошибкой "Получение элемента по индексу для значения не определено" - нажимаем "Подробно...":

{Форма.ФормаПереноса(517)}: Получение элемента по индексу для значения не определено
ТЧ_Источник = ПустоеЗначениеТипа(ТипЗначения)[мИмяТЧ].Выгрузить();
Оставьте свое сообщение