Перезаполнить табличную часть связанного документа.
Добрый день.
Перезаполняю табличную часть документа ТаможеннаяДекларацияИмпорт.Товары из документа ПоступлениеТоваровУслуг
В Модуле формы документа обращаюсь к критериям отбора. Планирую получить ссылку на декларацию и перезаполнить табличную чать.
Вопрос:
Верно ли начал решение?
Перезаполняю табличную часть документа ТаможеннаяДекларацияИмпорт.Товары из документа ПоступлениеТоваровУслуг
В Модуле формы документа обращаюсь к критериям отбора. Планирую получить ссылку на декларацию и перезаполнить табличную чать.
Вопрос:
Верно ли начал решение?
&НаСервере
Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
ТекущийДокумент = ТекущийОбъект;
РезультатФункции = Новый Массив;
Если Метаданные.КритерииОтбора.СвязанныеДокументы.Тип.СодержитТип(ТипЗнч("Таможенная декларация на импорт"))Тогда
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| СвязанныеДокументы.Ссылка КАК Ссылка
|ИЗ
| КритерийОтбора.СвязанныеДокументы(&ЗначениеКритерияОтбора) КАК СвязанныеДокументы";
Запрос.УстановитьПараметр("ЗначениеКритерияОтбора",ТекущийДокумент);
РазультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РазультатЗапроса.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
РезультатФункции.Добавить(ВыборкаДетальныеЗаписи.Ссылка);
КонецЦикла;
КонецЕсли;
КонецПроцедуры
ПоказатьПо теме из базы знаний
- Загрузка документов и номенклатуры из Excel в 1С "одним нажатием": УПД, ТОРГ-12, отчеты маркетплейсов, заказы, счета, прайсы
- Переработка давальческого сырья в Комплексной Автоматизации
- Как сдать экзамен 1С:Специалист по платформе?
- Программное создание и расчет документов начисления зарплаты в конфигурации ЗУП 3.1 и ERP (по подразделениям)
- РеСольДо - редактор строк документов
Ответы
В избранное
Подписаться на ответы
Сортировка:
Древо развёрнутое
Свернуть все
(2)При проведении док. Поступление - перезаполнить табличную часть связанного с ним док. Таможенная декларация. Причина: Создали Поступление, на основании создали Таможенную декларацию - Всё ОК. Одумались, поменяли в поступлении некоторые позиции, за декларацию забыли. В итоге имеем: Декларацию не соответствует поступлению.
Вот это зачем?
"Если Метаданные.КритерииОтбора.СвязанныеДокументы.Тип.СодержитТип(ТипЗнч("Таможенная декларация на импорт"))Тогда"
да все нормально, единственное у вас в связанных документах может быть много других типов документов. Я бы обращался напрямую к таблице ТаможеннаяДекларацияИмпорт
"Если Метаданные.КритерииОтбора.СвязанныеДокументы.Тип.СодержитТип(ТипЗнч("Таможенная декларация на импорт"))Тогда"
да все нормально, единственное у вас в связанных документах может быть много других типов документов. Я бы обращался напрямую к таблице ТаможеннаяДекларацияИмпорт
(3)
КритерииОтбора содержится много вариантов документов, этой строкой пытаюсь типизировать отбор, только Таможенная декларация на импорт
Вот это зачем?
"Если Метаданные.КритерииОтбора.СвязанныеДокументы.Тип.СодержитТип(ТипЗнч("Таможенная декларация на импорт"))Тогда
"Если Метаданные.КритерииОтбора.СвязанныеДокументы.Тип.СодержитТип(ТипЗнч("Таможенная декларация на импорт"))Тогда
КритерииОтбора содержится много вариантов документов, этой строкой пытаюсь типизировать отбор, только Таможенная декларация на импорт
В Таможенной декларации в ТЧ Товары есть реквизит ДокументПоступления, запрос нужно не через Критерии отбора делать, а к ТЧ документа ТаможеннаяДекларацияИмпорт, в условии запроса указать ДокументПоступления
(6)
Далаю следующем образом, ошибок много. Если есть возможность направьте.
Документ ПоступлениеТоваровУслуг в Модуле формы:
Далаю следующем образом, ошибок много. Если есть возможность направьте.
Документ ПоступлениеТоваровУслуг в Модуле формы:
&НаСервере
Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ТаможеннаяДекларацияИмпортТовары.НомерСтроки КАК НомерСтроки,
| ТаможеннаяДекларацияИмпортТовары.Номенклатура КАК Номенклатура,
| ТаможеннаяДекларацияИмпортТовары.Характеристика КАК Характеристика,
| ТаможеннаяДекларацияИмпортТовары.Упаковка КАК Упаковка,
| ТаможеннаяДекларацияИмпортТовары.КоличествоУпаковок КАК КоличествоУпаковок,
| ТаможеннаяДекларацияИмпортТовары.Количество КАК Количество,
| ТаможеннаяДекларацияИмпортТовары.СуммаНДС КАК СуммаНДС,
| ТаможеннаяДекларацияИмпортТовары.СтранаПроисхождения КАК СтранаПроисхождения,
| ТаможеннаяДекларацияИмпортТовары.НомерГТД КАК НомерГТД
|ИЗ
| Документ.ТаможеннаяДекларацияИмпорт.Товары КАК ТаможеннаяДекларацияИмпортТовары
|ГДЕ
| ТаможеннаяДекларацияИмпортТовары.Ссылка = &Ссылка
| И ТаможеннаяДекларацияИмпортТовары.Ссылка.Проведен = ИСТИНА"
Запрос.УстановитьПараметр("Ссылка",ТекущийОбъект.Ссылка);
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Для каждого ТекСтрока ИЗ ВыборкаДетальныеЗаписи Цикл
ТекСтрока.НомерСтроки = ВыборкаДетальныеЗаписи.НомерСтроки;
ТекСтрока.Номенклатура = ВыборкаДетальныеЗаписи.Номенклатура;
ТекСтрока.Характеристика = ВыборкаДетальныеЗаписи.Характеристика;
ТекСтрока.Упаковка = ВыборкаДетальныеЗаписи.Упаковка;
ТекСтрока.Количество = ВыборкаДетальныеЗаписи.Количество;
ТекСтрока.СуммаНДС = ВыборкаДетальныеЗаписи.СуммаНДС;
ТекСтрока.СтранаПроисхождения = ВыборкаДетальныеЗаписи.СтранаПроисхождения;
ТекСтрока.НомерГТД = ВыборкаДетальныеЗаписи.НомерГТД;
КонецЦикла;
КонецПроцедуры
Показать
(8)Нашёл ошибку.
Вместо
Нужно
Вместо
|ГДЕ
| ТаможеннаяДекларацияИмпортТовары.Ссылка = &Ссылка
| И ТаможеннаяДекларацияИмпортТовары.Ссылка.Проведен = ИСТИНА"
Нужно
|ГДЕ
| ТаможеннаяДекларацияИмпортТовары.Ссылка.Проведен = ИСТИНА
| И ТаможеннаяДекларацияИмпортТовары.Ссылка.ПоступлениеТоваров = &ПоступлениеТоваров"
"ВЫБРАТЬ
| ТаможеннаяДекларацияИмпортТовары.НомерСтроки КАК НомерСтроки,
| ТаможеннаяДекларацияИмпортТовары.Номенклатура КАК Номенклатура,
| ТаможеннаяДекларацияИмпортТовары.Характеристика КАК Характеристика,
| ТаможеннаяДекларацияИмпортТовары.Упаковка КАК Упаковка,
| ТаможеннаяДекларацияИмпортТовары.КоличествоУпаковок КАК КоличествоУпаковок,
| ТаможеннаяДекларацияИмпортТовары.Количество КАК Количество,
| ТаможеннаяДекларацияИмпортТовары.СуммаНДС КАК СуммаНДС,
| ТаможеннаяДекларацияИмпортТовары.СтранаПроисхождения КАК СтранаПроисхождения,
| ТаможеннаяДекларацияИмпортТовары.НомерГТД КАК НомерГТД
|ИЗ
| Документ.ТаможеннаяДекларацияИмпорт.Товары КАК ТаможеннаяДекларацияИмпортТовары
|ГДЕ
| ТаможеннаяДекларацияИмпортТовары.ДокументПоступления = &Ссылка
| И ТаможеннаяДекларацияИмпортТовары.Ссылка.Проведен = ИСТИНА"
Показатьпоправил запрос
Вакансии
Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)