Создание и заполнения документа на основании нескольких
Самописная конфа, такой вопрос: Есть документ - заказ в карьер, в нем реквизиты и ТЧ, на основании этого документа можно сформировать ТТН. В чем собственно вопрос, как сделать заполнение одной ТТН на основании 2х, например заказов в карьер? выделить их шифтом, а как перенести потом данные из 2х тч в одну? сделал обработку для вызова таблицы с списокм выбираемых документов, дошел до запроса, который их потом обрабатывает, и тут летит ошибка:
{Обработка.ОбработкаЗагрузкиТТН.Форма.Форма.Форма(60)}: Ошибка при вызове метода контекста (Выполнить)
Результат = Запрос.Выполнить();
по причине:
{(12, 46)}: Неверные параметры в операции сравнения. Нельзя сравнивать поля
неограниченной длины и поля несовместимых типов.
И ЗаказыКлиентовОстатки.ЗаказКлиента.Ссылка <<?>>= &Ссылка
вот сам код процедуры:
&НаКлиенте
Процедура Команда1(Команда)
НаСервере();
КонецПроцедуры
&Насервере
Процедура НаСервере()
Массив=новый массив;
Для Каждого Стр из Объект.ЗаказВКарьер Цикл
массив.добавить(Стр);
КонецЦикла;
Запрос=Новый Запрос;
Запрос.Текст= "ВЫБРАТЬ
| ЗаказыКлиентовОстатки.Номенклатура,
| ЗаказыКлиентовОстатки.ЗаказаноОстаток,
| ЗаказыКлиентовОстатки.СуммаОстаток,
| ЗаказыКлиентовОстатки.ЗаказКлиента,
| ЗаказыКлиентовОстатки.ЗаказКлиента.Ссылка
|ПОМЕСТИТЬ втОстатки
|ИЗ
| РегистрНакопления.ЗаказыКлиентов.Остатки КАК ЗаказыКлиентовОстатки
|ГДЕ
| ЗаказыКлиентовОстатки.ЗаказаноОстаток > 0
| И ЗаказыКлиентовОстатки.ЗаказКлиента.Ссылка = &Ссылка
|;
|
| X
|ВЫБРАТЬ
| ЗаказВКарьер.Контрагент,
| ЗаказВКарьер.Дата,
| ЗаказВКарьер.Менеджер,
| ЗаказВКарьер.Организация,
| ЗаказВКарьер.Ссылка,
| втОстатки.Номенклатура,
| ЗаказВКарьерТовары.Цена,
| ЗаказВКарьерТовары.СтавкаНДС,
| ЗаказВКарьерТовары.ЕдиницаИзмерения,
| втОстатки.ЗаказаноОстаток,
| втОстатки.СуммаОстаток,
| втОстатки.ЗаказаноОстаток * ЗаказВКарьерТовары.Цена КАК Сумма,
| ВЫБОР
| КОГДА втОстатки.ЗаказаноОстаток = 0
| ТОГДА 0
| ИНАЧЕ ЗаказВКарьерТовары.СуммаНДС / ЗаказВКарьерТовары.Количество * втОстатки.ЗаказаноОстаток
| КОНЕЦ КАК СуммаНДС
|ИЗ
| втОстатки КАК втОстатки
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказВКарьер КАК ЗаказВКарьер
| ПО втОстатки.ЗаказКлиентаСсылка = ЗаказВКарьер.Ссылка
| И втОстатки.Номенклатура = ЗаказВКарьер.Товары.Номенклатура,
| Документ.ЗаказВКарьер.Товары КАК ЗаказВКарьерТовары
|ГДЕ
| ЗаказВКарьер.Товары.Ссылка = &Ссылка";
Запрос.УстановитьПараметр("Ссылка",массив);
Результат = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = Результат.Выбрать();
ТТН=Документы.ТТН.СоздатьДокумент();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
ТТН.Организация = ВыборкаДетальныеЗаписи.Организация;
ТТН.Дата = ВыборкаДетальныеЗаписи.Дата;
ТТН.Контрагент = ВыборкаДетальныеЗаписи.Контрагент;
НоваяСтрока = ТТН.Товары.Добавить();
Если ВыборкаДетальныеЗаписи.Количество = 0 Тогда
Продолжить;
КонецЕсли;
НоваяСтрока.ЕдиницаИзмерения = ВыборкаДетальныеЗаписи.ЕдиницаИзмерения;
НоваяСтрока.Количество = ВыборкаДетальныеЗаписи.Количество;
НоваяСтрока.Номенклатура = ВыборкаДетальныеЗаписи.Номенклатура;
НоваяСтрока.СтавкаНДС = ВыборкаДетальныеЗаписи.СтавкаНДС;
НоваяСтрока.Сумма = ВыборкаДетальныеЗаписи.Сумма;
НоваяСтрока.СуммаНДС = ВыборкаДетальныеЗаписи.СуммаНДС;
НоваяСтрока.СуммаСНДС = ВыборкаДетальныеЗаписи.СуммаСНДС;
НоваяСтрока.Цена = ВыборкаДетальныеЗаписи.Цена;
НоваяСтрока.ЗаказВКарьер = ВыборкаДетальныеЗаписи.Ссылка;
КонецЦикла;
ТТН.записать();
ТТн.ПолучитьФорму();
ТТн.открыть();
КонецПроцедуры
Как разобраться с этой ошибкой?
{Обработка.ОбработкаЗагрузкиТТН.Форма.Форма.Форма(60)}: Ошибка при вызове метода контекста (Выполнить)
Результат = Запрос.Выполнить();
по причине:
{(12, 46)}: Неверные параметры в операции сравнения. Нельзя сравнивать поля
неограниченной длины и поля несовместимых типов.
И ЗаказыКлиентовОстатки.ЗаказКлиента.Ссылка <<?>>= &Ссылка
вот сам код процедуры:
&НаКлиенте
Процедура Команда1(Команда)
НаСервере();
КонецПроцедуры
&Насервере
Процедура НаСервере()
Массив=новый массив;
Для Каждого Стр из Объект.ЗаказВКарьер Цикл
массив.добавить(Стр);
КонецЦикла;
Запрос=Новый Запрос;
Запрос.Текст= "ВЫБРАТЬ
| ЗаказыКлиентовОстатки.Номенклатура,
| ЗаказыКлиентовОстатки.ЗаказаноОстаток,
| ЗаказыКлиентовОстатки.СуммаОстаток,
| ЗаказыКлиентовОстатки.ЗаказКлиента,
| ЗаказыКлиентовОстатки.ЗаказКлиента.Ссылка
|ПОМЕСТИТЬ втОстатки
|ИЗ
| РегистрНакопления.ЗаказыКлиентов.Остатки КАК ЗаказыКлиентовОстатки
|ГДЕ
| ЗаказыКлиентовОстатки.ЗаказаноОстаток > 0
| И ЗаказыКлиентовОстатки.ЗаказКлиента.Ссылка = &Ссылка
|;
|
| X
|ВЫБРАТЬ
| ЗаказВКарьер.Контрагент,
| ЗаказВКарьер.Дата,
| ЗаказВКарьер.Менеджер,
| ЗаказВКарьер.Организация,
| ЗаказВКарьер.Ссылка,
| втОстатки.Номенклатура,
| ЗаказВКарьерТовары.Цена,
| ЗаказВКарьерТовары.СтавкаНДС,
| ЗаказВКарьерТовары.ЕдиницаИзмерения,
| втОстатки.ЗаказаноОстаток,
| втОстатки.СуммаОстаток,
| втОстатки.ЗаказаноОстаток * ЗаказВКарьерТовары.Цена КАК Сумма,
| ВЫБОР
| КОГДА втОстатки.ЗаказаноОстаток = 0
| ТОГДА 0
| ИНАЧЕ ЗаказВКарьерТовары.СуммаНДС / ЗаказВКарьерТовары.Количество * втОстатки.ЗаказаноОстаток
| КОНЕЦ КАК СуммаНДС
|ИЗ
| втОстатки КАК втОстатки
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказВКарьер КАК ЗаказВКарьер
| ПО втОстатки.ЗаказКлиентаСсылка = ЗаказВКарьер.Ссылка
| И втОстатки.Номенклатура = ЗаказВКарьер.Товары.Номенклатура,
| Документ.ЗаказВКарьер.Товары КАК ЗаказВКарьерТовары
|ГДЕ
| ЗаказВКарьер.Товары.Ссылка = &Ссылка";
Запрос.УстановитьПараметр("Ссылка",массив);
Результат = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = Результат.Выбрать();
ТТН=Документы.ТТН.СоздатьДокумент();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
ТТН.Организация = ВыборкаДетальныеЗаписи.Организация;
ТТН.Дата = ВыборкаДетальныеЗаписи.Дата;
ТТН.Контрагент = ВыборкаДетальныеЗаписи.Контрагент;
НоваяСтрока = ТТН.Товары.Добавить();
Если ВыборкаДетальныеЗаписи.Количество = 0 Тогда
Продолжить;
КонецЕсли;
НоваяСтрока.ЕдиницаИзмерения = ВыборкаДетальныеЗаписи.ЕдиницаИзмерения;
НоваяСтрока.Количество = ВыборкаДетальныеЗаписи.Количество;
НоваяСтрока.Номенклатура = ВыборкаДетальныеЗаписи.Номенклатура;
НоваяСтрока.СтавкаНДС = ВыборкаДетальныеЗаписи.СтавкаНДС;
НоваяСтрока.Сумма = ВыборкаДетальныеЗаписи.Сумма;
НоваяСтрока.СуммаНДС = ВыборкаДетальныеЗаписи.СуммаНДС;
НоваяСтрока.СуммаСНДС = ВыборкаДетальныеЗаписи.СуммаСНДС;
НоваяСтрока.Цена = ВыборкаДетальныеЗаписи.Цена;
НоваяСтрока.ЗаказВКарьер = ВыборкаДетальныеЗаписи.Ссылка;
КонецЦикла;
ТТН.записать();
ТТн.ПолучитьФорму();
ТТн.открыть();
КонецПроцедуры
Как разобраться с этой ошибкой?
По теме из базы знаний
- 1С 8.0, 8.1 Обработка по заполнению документов на основании
- Несколько документов на основании одного
- Создание "сводного" счёта-фактуры на основании нескольких реализаций. БП 3.0
- Создание нескольких документов на основании одного с открытием созданных документов
- Заполнение табличной части документа Счет на оплату покупателя на основании нескольких документов Заказ покупателя с контролем отгруженных товаров
Ответы
В избранное
Подписаться на ответы
Сортировка:
Древо развёрнутое
Свернуть все
(2) starjevschik,
"ВЫБРАТЬ
| ЗаказыКлиентовОстатки.Номенклатура,
| ЗаказыКлиентовОстатки.ЗаказаноОстаток,
| ЗаказыКлиентовОстатки.СуммаОстаток,
| ЗаказыКлиентовОстатки.ЗаказКлиента
|ПОМЕСТИТЬ втЗаказКлиентаОстаток
|ИЗ
| РегистрНакопления.ЗаказыКлиентов.Остатки КАК ЗаказыКлиентовОстатки
|ГДЕ
| ЗаказыКлиентовОстатки.ЗаказКлиента.Ссылка = &Ссылка
| И ЗаказыКлиентовОстатки.ЗаказаноОстаток > 0
|;
|
| X
|ВЫБРАТЬ
| втЗаказКлиентаОстаток.Номенклатура,
| ЗаказВКарьерТовары.Цена,
| ЗаказВКарьерТовары.СтавкаНДС,
| ЗаказВКарьерТовары.ЕдиницаИзмерения,
| ЗаказВКарьерТовары.Ссылка,
| втЗаказКлиентаОстаток.ЗаказаноОстаток КАК Количество,
| втЗаказКлиентаОстаток.СуммаОстаток КАК СуммаСНДС,
| втЗаказКлиентаОстаток.ЗаказаноОстаток * ЗаказВКарьерТовары.Цена КАК Сумма,
| ВЫБОР
| КОГДА втЗаказКлиентаОстаток.ЗаказаноОстаток = 0
| ТОГДА 0
| ИНАЧЕ ЗаказВКарьерТовары.СуммаНДС / ЗаказВКарьерТовары.Количество * втЗаказКлиентаОстаток.ЗаказаноОстаток
| КОНЕЦ КАК СуммаНДС
|ИЗ
| втЗаказКлиентаОстаток КАК втЗаказКлиентаОстаток
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказВКарьер.Товары КАК ЗаказВКарьерТовары
| ПО втЗаказКлиентаОстаток.Номенклатура = ЗаказВКарьерТовары.Номенклатура
| И втЗаказКлиентаОстаток.ЗаказКлиента.Ссылка = ЗаказВКарьерТовары.Ссылка
|ГДЕ
| ЗаказВКарьерТовары.Ссылка = &Ссылка";
теперь ругается:
{Обработка.ОбработкаЗагрузкиТТН.Форма.Форма.Форма(83)}: Ошибка при вызове метода контекста (Выполнить)
Результат = Запрос.Выполнить();
по причине:
{(12, 39)}: Неверные параметры
И ЗаказыКлиентовОстатки.ЗаказКлиента <<?>>В(&Ссылка)
что значит неверные параметры? когда я массив туда передаю:
Запрос.УстановитьПараметр("Ссылка", Массив);
"ВЫБРАТЬ
| ЗаказыКлиентовОстатки.Номенклатура,
| ЗаказыКлиентовОстатки.ЗаказаноОстаток,
| ЗаказыКлиентовОстатки.СуммаОстаток,
| ЗаказыКлиентовОстатки.ЗаказКлиента
|ПОМЕСТИТЬ втЗаказКлиентаОстаток
|ИЗ
| РегистрНакопления.ЗаказыКлиентов.Остатки КАК ЗаказыКлиентовОстатки
|ГДЕ
| ЗаказыКлиентовОстатки.ЗаказКлиента.Ссылка = &Ссылка
| И ЗаказыКлиентовОстатки.ЗаказаноОстаток > 0
|;
|
| X
|ВЫБРАТЬ
| втЗаказКлиентаОстаток.Номенклатура,
| ЗаказВКарьерТовары.Цена,
| ЗаказВКарьерТовары.СтавкаНДС,
| ЗаказВКарьерТовары.ЕдиницаИзмерения,
| ЗаказВКарьерТовары.Ссылка,
| втЗаказКлиентаОстаток.ЗаказаноОстаток КАК Количество,
| втЗаказКлиентаОстаток.СуммаОстаток КАК СуммаСНДС,
| втЗаказКлиентаОстаток.ЗаказаноОстаток * ЗаказВКарьерТовары.Цена КАК Сумма,
| ВЫБОР
| КОГДА втЗаказКлиентаОстаток.ЗаказаноОстаток = 0
| ТОГДА 0
| ИНАЧЕ ЗаказВКарьерТовары.СуммаНДС / ЗаказВКарьерТовары.Количество * втЗаказКлиентаОстаток.ЗаказаноОстаток
| КОНЕЦ КАК СуммаНДС
|ИЗ
| втЗаказКлиентаОстаток КАК втЗаказКлиентаОстаток
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказВКарьер.Товары КАК ЗаказВКарьерТовары
| ПО втЗаказКлиентаОстаток.Номенклатура = ЗаказВКарьерТовары.Номенклатура
| И втЗаказКлиентаОстаток.ЗаказКлиента.Ссылка = ЗаказВКарьерТовары.Ссылка
|ГДЕ
| ЗаказВКарьерТовары.Ссылка = &Ссылка";
теперь ругается:
{Обработка.ОбработкаЗагрузкиТТН.Форма.Форма.Форма(83)}: Ошибка при вызове метода контекста (Выполнить)
Результат = Запрос.Выполнить();
по причине:
{(12, 39)}: Неверные параметры
И ЗаказыКлиентовОстатки.ЗаказКлиента <<?>>В(&Ссылка)
что значит неверные параметры? когда я массив туда передаю:
Запрос.УстановитьПараметр("Ссылка", Массив);
{Обработка.ОбработкаЗагрузкиТТН.Форма.Форма.Форма(83)}: Ошибка при вызове метода контекста (Выполнить)
Результат = Запрос.Выполнить();
по причине:
{(12, 39)}: Неверные параметры в операции сравнения. Нельзя сравнивать поля
неограниченной длины и поля несовместимых типов.
И ЗаказыКлиентовОстатки.ЗаказКлиента <<?>>= &Ссылка
хотя вот, все равно летит)
Результат = Запрос.Выполнить();
по причине:
{(12, 39)}: Неверные параметры в операции сравнения. Нельзя сравнивать поля
неограниченной длины и поля несовместимых типов.
И ЗаказыКлиентовОстатки.ЗаказКлиента <<?>>= &Ссылка
хотя вот, все равно летит)
я так и делал, и все равно:
{Обработка.ОбработкаЗагрузкиТТН.Форма.Форма.Форма(83)}: Ошибка при вызове метода контекста (Выполнить)
Результат = Запрос.Выполнить();
по причине:
{(12, 39)}: Неверные параметры
И ЗаказыКлиентовОстатки.ЗаказКлиента <<?>>В (&Ссылка)
вот код:
ВЫБРАТЬ
| ЗаказыКлиентовОстатки.Номенклатура,
| ЗаказыКлиентовОстатки.ЗаказаноОстаток,
| ЗаказыКлиентовОстатки.СуммаОстаток,
| ЗаказыКлиентовОстатки.ЗаказКлиента,
| ЗаказыКлиентовОстатки.ЗаказКлиента.Ссылка
|ПОМЕСТИТЬ втОстатки
|ИЗ
| РегистрНакопления.ЗаказыКлиентов.Остатки КАК ЗаказыКлиентовОстатки
|ГДЕ
| ЗаказыКлиентовОстатки.ЗаказаноОстаток > 0
| И ЗаказыКлиентовОстатки.ЗаказКлиента В (&Ссылка)
|;
|
| X
|ВЫБРАТЬ
| ЗаказВКарьер.Контрагент,
| ЗаказВКарьер.Дата,
| ЗаказВКарьер.Менеджер,
| ЗаказВКарьер.Организация,
| ЗаказВКарьер.Ссылка,
| втОстатки.Номенклатура,
| ЗаказВКарьерТовары.Цена,
| ЗаказВКарьерТовары.СтавкаНДС,
| ЗаказВКарьерТовары.ЕдиницаИзмерения,
| втОстатки.ЗаказаноОстаток,
| втОстатки.СуммаОстаток,
| втОстатки.ЗаказаноОстаток * ЗаказВКарьерТовары.Цена КАК Сумма,
| ВЫБОР
| КОГДА втОстатки.ЗаказаноОстаток = 0
| ТОГДА 0
| ИНАЧЕ ЗаказВКарьерТовары.СуммаНДС / ЗаказВКарьерТовары.Количество * втОстатки.ЗаказаноОстаток
| КОНЕЦ КАК СуммаНДС
|ИЗ
| втОстатки КАК втОстатки
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказВКарьер КАК ЗаказВКарьер
| ПО втОстатки.ЗаказКлиентаСсылка = ЗаказВКарьер.Ссылка
| И втОстатки.Номенклатура = ЗаказВКарьер.Товары.Номенклатура,
| Документ.ЗаказВКарьер.Товары КАК ЗаказВКарьерТовары
|ГДЕ
| ЗаказВКарьерТовары.Ссылка В(&Ссылка)";
{Обработка.ОбработкаЗагрузкиТТН.Форма.Форма.Форма(83)}: Ошибка при вызове метода контекста (Выполнить)
Результат = Запрос.Выполнить();
по причине:
{(12, 39)}: Неверные параметры
И ЗаказыКлиентовОстатки.ЗаказКлиента <<?>>В (&Ссылка)
вот код:
ВЫБРАТЬ
| ЗаказыКлиентовОстатки.Номенклатура,
| ЗаказыКлиентовОстатки.ЗаказаноОстаток,
| ЗаказыКлиентовОстатки.СуммаОстаток,
| ЗаказыКлиентовОстатки.ЗаказКлиента,
| ЗаказыКлиентовОстатки.ЗаказКлиента.Ссылка
|ПОМЕСТИТЬ втОстатки
|ИЗ
| РегистрНакопления.ЗаказыКлиентов.Остатки КАК ЗаказыКлиентовОстатки
|ГДЕ
| ЗаказыКлиентовОстатки.ЗаказаноОстаток > 0
| И ЗаказыКлиентовОстатки.ЗаказКлиента В (&Ссылка)
|;
|
| X
|ВЫБРАТЬ
| ЗаказВКарьер.Контрагент,
| ЗаказВКарьер.Дата,
| ЗаказВКарьер.Менеджер,
| ЗаказВКарьер.Организация,
| ЗаказВКарьер.Ссылка,
| втОстатки.Номенклатура,
| ЗаказВКарьерТовары.Цена,
| ЗаказВКарьерТовары.СтавкаНДС,
| ЗаказВКарьерТовары.ЕдиницаИзмерения,
| втОстатки.ЗаказаноОстаток,
| втОстатки.СуммаОстаток,
| втОстатки.ЗаказаноОстаток * ЗаказВКарьерТовары.Цена КАК Сумма,
| ВЫБОР
| КОГДА втОстатки.ЗаказаноОстаток = 0
| ТОГДА 0
| ИНАЧЕ ЗаказВКарьерТовары.СуммаНДС / ЗаказВКарьерТовары.Количество * втОстатки.ЗаказаноОстаток
| КОНЕЦ КАК СуммаНДС
|ИЗ
| втОстатки КАК втОстатки
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказВКарьер КАК ЗаказВКарьер
| ПО втОстатки.ЗаказКлиентаСсылка = ЗаказВКарьер.Ссылка
| И втОстатки.Номенклатура = ЗаказВКарьер.Товары.Номенклатура,
| Документ.ЗаказВКарьер.Товары КАК ЗаказВКарьерТовары
|ГДЕ
| ЗаказВКарьерТовары.Ссылка В(&Ссылка)";
(7) Вожак,
Для Каждого Стр из Объект.ЗаказВКарьер Цикл
массив.добавить(Стр);
КонецЦикла;
чтобы сравнить В(&Ссылка), Ссылка должна быть массивом ссылок. И называться она, по-хорошему, должна МассивСсылок, как-нибудь так.
Отладчиком еще можно пользоваться, вместе с мануалом. Методом тыка и форума здесь в основном барышни "программируют" :) ну им-то простительно...
Для Каждого Стр из Объект.ЗаказВКарьер Цикл
массив.добавить(Стр);
КонецЦикла;
чтобы сравнить В(&Ссылка), Ссылка должна быть массивом ссылок. И называться она, по-хорошему, должна МассивСсылок, как-нибудь так.
Отладчиком еще можно пользоваться, вместе с мануалом. Методом тыка и форума здесь в основном барышни "программируют" :) ну им-то простительно...
(9) Вожак, надо сделать массив и сложить туда ссылки.
Из того, что я вижу (дубль 2. Почему люди не читают даже то, что для них пишется??)
Для Каждого Стр из Объект.ЗаказВКарьер Цикл
массив.добавить(Стр);
КонецЦикла;
в массив сложены некие Стр. Есть подозрение, что это строки чего-то, то ли табличной части, то ли еще чего-то. А должны там быть ссылки на документы.
Из того, что я вижу (дубль 2. Почему люди не читают даже то, что для них пишется??)
Для Каждого Стр из Объект.ЗаказВКарьер Цикл
массив.добавить(Стр);
КонецЦикла;
в массив сложены некие Стр. Есть подозрение, что это строки чего-то, то ли табличной части, то ли еще чего-то. А должны там быть ссылки на документы.
(13) jigourt, вот процедура сама:
Процедура НаСервере()
Массив=новый массив;
Для Каждого Стр из Объект.ЗаказВКарьер Цикл
массив.добавить(Стр.ЗаказВКарьерКлиента.Ссылка);
КонецЦикла;
Запрос=Новый Запрос;
Запрос.Текст= "ВЫБРАТЬ
| ЗаказыКлиентовОстатки.Номенклатура,
| ЗаказыКлиентовОстатки.ЗаказаноОстаток,
| ЗаказыКлиентовОстатки.СуммаОстаток,
| ЗаказыКлиентовОстатки.ЗаказКлиента,
| ЗаказыКлиентовОстатки.ЗаказКлиента.Ссылка
|ПОМЕСТИТЬ втОстатки
|ИЗ
| РегистрНакопления.ЗаказыКлиентов.Остатки КАК ЗаказыКлиентовОстатки
|ГДЕ
| ЗаказыКлиентовОстатки.ЗаказаноОстаток > 0
| И ЗаказыКлиентовОстатки.ЗаказКлиента В (&МассивСсылка)
|;
|
| X
|ВЫБРАТЬ
| ЗаказВКарьер.Контрагент,
| ЗаказВКарьер.Дата,
| ЗаказВКарьер.Менеджер,
| ЗаказВКарьер.Организация,
| ЗаказВКарьер.Ссылка,
| втОстатки.Номенклатура,
| ЗаказВКарьерТовары.Цена,
| ЗаказВКарьерТовары.СтавкаНДС,
| ЗаказВКарьерТовары.ЕдиницаИзмерения,
| втОстатки.ЗаказаноОстаток,
| втОстатки.СуммаОстаток,
| втОстатки.ЗаказаноОстаток * ЗаказВКарьерТовары.Цена КАК Сумма,
| ВЫБОР
| КОГДА втОстатки.ЗаказаноОстаток = 0
| ТОГДА 0
| ИНАЧЕ ЗаказВКарьерТовары.СуммаНДС / ЗаказВКарьерТовары.Количество * втОстатки.ЗаказаноОстаток
| КОНЕЦ КАК СуммаНДС
|ИЗ
| втОстатки КАК втОстатки
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказВКарьер КАК ЗаказВКарьер
| ПО втОстатки.ЗаказКлиентаСсылка = ЗаказВКарьер.Ссылка
| И втОстатки.Номенклатура = ЗаказВКарьер.Товары.Номенклатура,
| Документ.ЗаказВКарьер.Товары КАК ЗаказВКарьерТовары
|ГДЕ
| ЗаказВКарьерТовары.Ссылка В(&МассивСсылка)";
Запрос.УстановитьПараметр("МассивСсылка", Массив);
Результат = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = Результат.Выбрать();
ТТН=Документы.ТТН.СоздатьДокумент();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
ТТН.Организация = ВыборкаДетальныеЗаписи.ЗаказКлиента.Организация;
ТТН.Дата = ВыборкаДетальныеЗаписи.ЗаказКлиента.Дата;
ТТН.Контрагент = ВыборкаДетальныеЗаписи.ЗаказКлиента.Контрагент;
НоваяСтрока = ТТН.Товары.Добавить();
Если ВыборкаДетальныеЗаписи.ЗаказаноОстаток = 0 Тогда
Продолжить;
КонецЕсли;
НоваяСтрока.ЕдиницаИзмерения = ВыборкаДетальныеЗаписи.ЕдиницаИзмерения;
НоваяСтрока.Количество = ВыборкаДетальныеЗаписи.Количество;
НоваяСтрока.Номенклатура = ВыборкаДетальныеЗаписи.Номенклатура;
НоваяСтрока.СтавкаНДС = ВыборкаДетальныеЗаписи.СтавкаНДС;
НоваяСтрока.Сумма = ВыборкаДетальныеЗаписи.Сумма;
НоваяСтрока.СуммаНДС = ВыборкаДетальныеЗаписи.СуммаНДС;
НоваяСтрока.СуммаСНДС = ВыборкаДетальныеЗаписи.СуммаСНДС;
НоваяСтрока.Цена = ВыборкаДетальныеЗаписи.Цена;
НоваяСтрока.ЗаказВКарьер = ВыборкаДетальныеЗаписи.ЗаказКлиента;
КонецЦикла;
ТТН.записать();
ТТн.ПолучитьФорму("ФормаДокумента").Открыть();
//ТТн.поткрыть();
КонецПроцедуры
Показать
точнее вот что вылетает в ошибке:
{Обработка.ОбработкаЗагрузкиТТН.Форма.Форма.Форма(83)}: Ошибка при вызове метода контекста (Выполнить)
Результат = Запрос.Выполнить();
по причине:
Ошибка выполнения запроса
по причине:
Запрос невозможно исполнить
{Обработка.ОбработкаЗагрузкиТТН.Форма.Форма.Форма(83)}: Ошибка при вызове метода контекста (Выполнить)
Результат = Запрос.Выполнить();
по причине:
Ошибка выполнения запроса
по причине:
Запрос невозможно исполнить
все равно:
{Обработка.ОбработкаЗагрузкиТТН.Форма.Форма.Форма(61)}: Ошибка при вызове метода контекста (Выполнить)
Результат = Запрос.Выполнить();
по причине:
Ошибка выполнения запроса
по причине:
Запрос невозможно исполнить
{Обработка.ОбработкаЗагрузкиТТН.Форма.Форма.Форма(61)}: Ошибка при вызове метода контекста (Выполнить)
Результат = Запрос.Выполнить();
по причине:
Ошибка выполнения запроса
по причине:
Запрос невозможно исполнить
СписокЗнач=новый СписокЗначений;
Для Каждого Стр из Объект.ЗаказВКарьер Цикл
СписокЗнач.добавить(Стр.ЗаказВКарьерКлиента.Ссылка);
КонецЦикла;
Запрос=Новый Запрос;
Запрос.Текст= "ВЫБРАТЬ
| ЗаказыКлиентовОстатки.Номенклатура,
| ЗаказыКлиентовОстатки.ЗаказаноОстаток,
| ЗаказыКлиентовОстатки.СуммаОстаток,
| ЗаказыКлиентовОстатки.ЗаказКлиента,
| ЗаказыКлиентовОстатки.ЗаказКлиента.Ссылка
|ПОМЕСТИТЬ втОстатки
|ИЗ
| РегистрНакопления.ЗаказыКлиентов.Остатки КАК ЗаказыКлиентовОстатки
|ГДЕ
| ЗаказыКлиентовОстатки.ЗаказаноОстаток > 0
| И ЗаказыКлиентовОстатки.ЗаказКлиента В (&СписокЗнач)
|;
|
| X
|ВЫБРАТЬ
| ЗаказВКарьер.Контрагент,
| ЗаказВКарьер.Дата,
| ЗаказВКарьер.Менеджер,
| ЗаказВКарьер.Организация,
| ЗаказВКарьер.Ссылка,
| втОстатки.Номенклатура,
| ЗаказВКарьерТовары.Цена,
| ЗаказВКарьерТовары.СтавкаНДС,
| ЗаказВКарьерТовары.ЕдиницаИзмерения,
| втОстатки.ЗаказаноОстаток,
| втОстатки.СуммаОстаток,
| втОстатки.ЗаказаноОстаток * ЗаказВКарьерТовары.Цена КАК Сумма,
| ВЫБОР
| КОГДА втОстатки.ЗаказаноОстаток = 0
| ТОГДА 0
| ИНАЧЕ ЗаказВКарьерТовары.СуммаНДС / ЗаказВКарьерТовары.Количество * втОстатки.ЗаказаноОстаток
| КОНЕЦ КАК СуммаНДС
|ИЗ
| втОстатки КАК втОстатки
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказВКарьер КАК ЗаказВКарьер
| ПО втОстатки.ЗаказКлиентаСсылка = ЗаказВКарьер.Ссылка
| И втОстатки.Номенклатура = ЗаказВКарьер.Товары.Номенклатура,
| Документ.ЗаказВКарьер.Товары КАК ЗаказВКарьерТовары
|ГДЕ
| ЗаказВКарьерТовары.Ссылка В(&СписокЗнач)";
Запрос.УстановитьПараметр("СписокЗнач", СписокЗнач);
Результат = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = Результат.Выбрать();
Показатьпочему не удалось выполнить хер пойми(
(20) Вожак,
а насчет смысла такого запроса вообще идеи есть?
Выбираются данные из двух таблиц независимо - из остатков и табличной части документа. Что это вообще такое должно быть по задумке автора?...
|ИЗ
| втОстатки КАК втОстатки
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказВКарьер КАК ЗаказВКарьер
| ПО втОстатки.ЗаказКлиентаСсылка = ЗаказВКарьер.Ссылка
| И втОстатки.Номенклатура = ЗаказВКарьер.Товары.Номенклатура,
| Документ.ЗаказВКарьер.Товары КАК ЗаказВКарьерТовары
|ГДЕ
| ЗаказВКарьерТовары.Ссылка В(&МассивСсылка)";
Показатьа насчет смысла такого запроса вообще идеи есть?
Выбираются данные из двух таблиц независимо - из остатков и табличной части документа. Что это вообще такое должно быть по задумке автора?...
(27) Вожак,
надо для начала осмыслить запрос и написать его правильно. Потом уже ставить параметры. Запрос будет чуть сложнее самого банального, поэтому нам пригодится понимание того, что такое таблица базы данных, что возвращают запросы и как связываются между собой таблицы в запросе, что такое СОЕДИНЕНИЕ, левое, правое, полное.
Я не готов сейчас читать лекцию на эту тему, советую 1) ознакомиться с документацией, причем лучше не по 1с, а по языку запросов SQL, из которого сделан язык запросов 1с.
Дальше советую 2) составить запрос с ОДНИМ документом. Составить полностью, от начала до конца, и чтобы он в консоли запросов давал правильный результат. Для правильности советую в документе сделать несколько строк. Если в одном документе может быть две строки с одной номенклатурой, то советую так и сделать. И вот на таких данных получить правильный результат.
И вот только после выполнения пп 1) и 2) можно будет переходить к передаче в запрос нескольких документов.
Сейчас беседа явно зашла в тупик из-за того, что делается совершенно не то, что ведет к цели :)
я хочу взять все остатки по выбранным документам, и ими заполнить документ
надо для начала осмыслить запрос и написать его правильно. Потом уже ставить параметры. Запрос будет чуть сложнее самого банального, поэтому нам пригодится понимание того, что такое таблица базы данных, что возвращают запросы и как связываются между собой таблицы в запросе, что такое СОЕДИНЕНИЕ, левое, правое, полное.
Я не готов сейчас читать лекцию на эту тему, советую 1) ознакомиться с документацией, причем лучше не по 1с, а по языку запросов SQL, из которого сделан язык запросов 1с.
Дальше советую 2) составить запрос с ОДНИМ документом. Составить полностью, от начала до конца, и чтобы он в консоли запросов давал правильный результат. Для правильности советую в документе сделать несколько строк. Если в одном документе может быть две строки с одной номенклатурой, то советую так и сделать. И вот на таких данных получить правильный результат.
И вот только после выполнения пп 1) и 2) можно будет переходить к передаче в запрос нескольких документов.
Сейчас беседа явно зашла в тупик из-за того, что делается совершенно не то, что ведет к цели :)
Тут (исходя из (20)): вообще мусор какой-то - соединение с документом, а не ТЧ. Выборка из ТЧ документа, но без соединения.
|ИЗ
| втОстатки КАК втОстатки
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказВКарьер КАК ЗаказВКарьер
| ПО втОстатки.ЗаказКлиентаСсылка = ЗаказВКарьер.Ссылка
| И втОстатки.Номенклатура = ЗаказВКарьер.Товары.Номенклатура,
| Документ.ЗаказВКарьер.Товары КАК ЗаказВКарьерТовары
СписокЗнач=новый СписокЗначений;
Для Каждого Стр из Объект.ЗаказВКарьер Цикл
СписокЗнач.добавить(Стр.ЗаказВКарьерКлиента);
КонецЦикла;
Запрос=Новый Запрос;
Запрос.Текст= "ВЫБРАТЬ
| ЗаказВКарьерТовары.Номенклатура,
| ЗаказВКарьерТовары.Количество,
| ЗаказВКарьерТовары.Цена,
| ЗаказВКарьерТовары.Сумма,
| ЗаказВКарьерТовары.СтавкаНДС,
| ЗаказВКарьерТовары.ЕдиницаИзмерения,
| ЗаказВКарьерТовары.СуммаНДС,
| ЗаказВКарьерТовары.Ссылка.Контрагент,
| ЗаказВКарьерТовары.Ссылка.Организация,
| ЗаказВКарьерТовары.Ссылка.Менеджер,
| ЗаказВКарьерТовары.Ссылка.Дата
|ИЗ
| Документ.ЗаказВКарьер.Товары КАК ЗаказВКарьерТовары
|ГДЕ
| ЗаказВКарьерТовары.Ссылка В(&СписокЗнач)";
Запрос.УстановитьПараметр("СписокЗнач", СписокЗнач);
Результат = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = Результат.Выбрать();
Показатьвот запрос выбирает данные ИЗ ТЧ По документам, которые я передал в список значений, теперь нужно выбрать только остатки по этим документам чтобы переносились
"ВЫБРАТЬ
| ЗаказВКарьерТовары.Номенклатура,
| ЗаказВКарьерТовары.Количество,
| ЗаказВКарьерТовары.Цена,
| ЗаказВКарьерТовары.Сумма,
| ЗаказВКарьерТовары.СтавкаНДС,
| ЗаказВКарьерТовары.ЕдиницаИзмерения,
| ЗаказВКарьерТовары.СуммаНДС,
| ЗаказВКарьерТовары.Ссылка.Контрагент,
| ЗаказВКарьерТовары.Ссылка.Организация,
| ЗаказВКарьерТовары.Ссылка.Менеджер,
| ЗаказВКарьерТовары.Ссылка.Дата,
| ЗаказыКлиентовОстатки.Номенклатура КАК Номенклатура1,
| ЗаказыКлиентовОстатки.ЗаказаноОстаток,
| ЗаказыКлиентовОстатки.СуммаОстаток,
| ЗаказыКлиентовОстатки.СуммаБезНДСОстаток
|ИЗ
| Документ.ЗаказВКарьер.Товары КАК ЗаказВКарьерТовары
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.ЗаказыКлиентов.Остатки КАК ЗаказыКлиентовОстатки
| ПО ЗаказВКарьерТовары.Номенклатура = ЗаказыКлиентовОстатки.Номенклатура
|ГДЕ
| ЗаказВКарьерТовары.Ссылка В(&СписокЗнач)
| И ЗаказыКлиентовОстатки.ЗаказаноОстаток > 0";
Показатьтак?
В Документе 1 есть песок обычный, и в Документе 2 есть песок обычный, когда я хочу по остаткам создать документ на основании этих 2х документов, будет песок обычный в одной строке, и песок обычный в другой, то есть 2 строки с одинаковой номенклатурой
(42)В (20) у вас все верно было, за исключением того, что во втором запросе надо брать только ТЧ документа, а параметры документа получать из ДОкументТовары.ССылка.НужныйПараметр
(43)У вас условие накладывается только на левую часть соединения. При этом параметр, на который накладывается условие в соединение не входит.
(43)У вас условие накладывается только на левую часть соединения. При этом параметр, на который накладывается условие в соединение не входит.
|ВЫБРАТЬ
| ЗаказВКарьер.Контрагент,
| ЗаказВКарьер.Дата,
| ЗаказВКарьер.Менеджер,
| ЗаказВКарьер.Организация,
| ЗаказВКарьер.Ссылка,
| втОстатки.Номенклатура,
| ЗаказВКарьерТовары.Цена,
| ЗаказВКарьерТовары.СтавкаНДС,
| ЗаказВКарьерТовары.ЕдиницаИзмерения,
| втОстатки.ЗаказаноОстаток,
| втОстатки.СуммаОстаток,
| втОстатки.ЗаказаноОстаток * ЗаказВКарьерТовары.Цена КАК Сумма,
| ВЫБОР
| КОГДА втОстатки.ЗаказаноОстаток = 0
| ТОГДА 0
| ИНАЧЕ ЗаказВКарьерТовары.СуммаНДС / ЗаказВКарьерТовары.Количество * втОстатки.ЗаказаноОстаток
| КОНЕЦ КАК СуммаНДС
|ИЗ
| втОстатки КАК втОстатки
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказВКарьер КАК ЗаказВКарьер
| ПО втОстатки.ЗаказКлиентаСсылка = ЗаказВКарьер.Ссылка
| И втОстатки.Номенклатура = ЗаказВКарьер.Товары.Номенклатура,
| Документ.ЗаказВКарьер.Товары КАК ЗаказВКарьерТовары
|ГДЕ
| ЗаказВКарьерТовары.Ссылка В(&СписокЗнач)";
Показатьвыборка из тч, соединение с документом, условие на тч, поправьте этот бред и все будет работать.
(48)убрать, а точнее заменить на ЗаказВКарьерТовары.Ссылка.ТоЧтоНадо
| ЗаказВКарьер.Контрагент,
| ЗаказВКарьер.Дата,
| ЗаказВКарьер.Менеджер,
| ЗаказВКарьер.Организация,
| ЗаказВКарьер.Ссылка,
А тут, соответственно
на ЗаказВКарьерТовары.Ссылка и ЗаказВКарьерТовары.Номенклатура
ПО втОстатки.ЗаказКлиентаСсылка = ЗаказВКарьер.Ссылка
| И втОстатки.Номенклатура = ЗаказВКарьер.Товары.Номенклатура,
у вас соединяются ТРИ таблицы, а должны быть ДВЕ.
| ЗаказВКарьер.Контрагент,
| ЗаказВКарьер.Дата,
| ЗаказВКарьер.Менеджер,
| ЗаказВКарьер.Организация,
| ЗаказВКарьер.Ссылка,
А тут, соответственно
на ЗаказВКарьерТовары.Ссылка и ЗаказВКарьерТовары.Номенклатура
ПО втОстатки.ЗаказКлиентаСсылка = ЗаказВКарьер.Ссылка
| И втОстатки.Номенклатура = ЗаказВКарьер.Товары.Номенклатура,
у вас соединяются ТРИ таблицы, а должны быть ДВЕ.
(49) mymyka, вот что нарисовал:
ВЫБРАТЬ
| ЗаказыКлиентовОстатки.Номенклатура,
| ЗаказыКлиентовОстатки.ЗаказаноОстаток,
| ЗаказыКлиентовОстатки.СуммаОстаток,
| ЗаказыКлиентовОстатки.ЗаказКлиента,
| ЗаказыКлиентовОстатки.ЗаказКлиента.Ссылка
|ПОМЕСТИТЬ втОстатки
|ИЗ
| РегистрНакопления.ЗаказыКлиентов.Остатки КАК ЗаказыКлиентовОстатки
|ГДЕ
| ЗаказыКлиентовОстатки.ЗаказаноОстаток > 0
| И ЗаказыКлиентовОстатки.ЗаказКлиента В(&СписокЗнач)
|;
|
| X
|ВЫБРАТЬ
| ЗаказВКарьер.Контрагент,
| ЗаказВКарьер.Дата,
| ЗаказВКарьер.Менеджер,
| ЗаказВКарьер.Организация,
| ЗаказВКарьер.Ссылка,
| ЗаказВКарьерТовары.Цена,
| ЗаказВКарьерТовары.СтавкаНДС,
| ЗаказВКарьерТовары.ЕдиницаИзмерения,
| ЗаказыКлиентовОстатки.ЗаказаноОстаток * ЗаказВКарьерТовары.Цена КАК Сумма,
| ВЫБОР
| КОГДА ЗаказыКлиентовОстатки.ЗаказаноОстаток = 0
| ТОГДА 0
| ИНАЧЕ ЗаказВКарьерТовары.СуммаНДС / ЗаказВКарьерТовары.Количество * ЗаказыКлиентовОстатки.ЗаказаноОстаток
| КОНЕЦ КАК СуммаНДС,
| ЗаказыКлиентовОстатки.ЗаказаноОстаток КАК ЗаказаноОстаток1,
| ЗаказыКлиентовОстатки.СуммаОстаток КАК СуммаОстаток1,
| ЗаказыКлиентовОстатки.Номенклатура КАК Номенклатура1
|ИЗ
| Документ.ЗаказВКарьер КАК ЗаказВКарьер
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.ЗаказыКлиентов.Остатки КАК ЗаказыКлиентовОстатки
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказВКарьер.Товары КАК ЗаказВКарьерТовары
| ПО ЗаказВКарьерТовары.Номенклатура = ЗаказыКлиентовОстатки.Номенклатура
| ПО ЗаказВКарьер.Ссылка = ЗаказыКлиентовОстатки.ЗаказКлиента.Ссылка
|ГДЕ
| ЗаказВКарьерТовары.Ссылка В(&СписокЗнач)
Показать
(51)/рукалицо
Временная таблица у тебя в ПЕРВОМ запросе, никуда ее убирать не надо.
Надо убрать любое упоминание о ДОКУМЕНТЕ, а все данные получать из ТАБЛИЧНОЙ ЧАСТИ!
Во втором запросе пакета у тебя должно быть ДВЕ таблицы.
Когда строишь запроса, надо из таблицы метаданных мышой тащить не сам документ, а его табличную часть. Я просто не знаю, как еще объяснить.
|ИЗ
| Документ.ЗаказВКарьер КАК ЗаказВКарьер
вот тут долджно быть
|ИЗ
| Документ.ЗаказВКарьер.Товары КАК ЗаказВКарьерТовары
Временная таблица у тебя в ПЕРВОМ запросе, никуда ее убирать не надо.
Надо убрать любое упоминание о ДОКУМЕНТЕ, а все данные получать из ТАБЛИЧНОЙ ЧАСТИ!
Во втором запросе пакета у тебя должно быть ДВЕ таблицы.
Когда строишь запроса, надо из таблицы метаданных мышой тащить не сам документ, а его табличную часть. Я просто не знаю, как еще объяснить.
|ИЗ
| Документ.ЗаказВКарьер КАК ЗаказВКарьер
вот тут долджно быть
|ИЗ
| Документ.ЗаказВКарьер.Товары КАК ЗаказВКарьерТовары
(56) mymyka, суда по тому, как вы сказали, получается следующее:
ВЫБРАТЬ
| ЗаказыКлиентовОстатки.Номенклатура,
| ЗаказыКлиентовОстатки.ЗаказаноОстаток,
| ЗаказыКлиентовОстатки.СуммаОстаток,
| ЗаказыКлиентовОстатки.ЗаказКлиента,
| ЗаказыКлиентовОстатки.ЗаказКлиента.Ссылка
|ПОМЕСТИТЬ втОстатки
|ИЗ
| РегистрНакопления.ЗаказыКлиентов.Остатки КАК ЗаказыКлиентовОстатки
|ГДЕ
| ЗаказыКлиентовОстатки.ЗаказаноОстаток > 0
| И ЗаказыКлиентовОстатки.ЗаказКлиента В(&СписокЗнач)
|;
|
| X
|ВЫБРАТЬ
| втОстатки.Номенклатура,
| ЗаказВКарьерТовары.Цена,
| ЗаказВКарьерТовары.СтавкаНДС,
| ЗаказВКарьерТовары.ЕдиницаИзмерения,
| втОстатки.ЗаказаноОстаток,
| втОстатки.СуммаОстаток,
| втОстатки.ЗаказаноОстаток * ЗаказВКарьерТовары.Цена КАК Сумма,
| ВЫБОР
| КОГДА втОстатки.ЗаказаноОстаток = 0
| ТОГДА 0
| ИНАЧЕ ЗаказВКарьерТовары.СуммаНДС / ЗаказВКарьерТовары.Количество * втОстатки.ЗаказаноОстаток
| КОНЕЦ КАК СуммаНДС,
| ЗаказВКарьерТовары.Ссылка.Контрагент КАК Контрагент1,
| ЗаказВКарьерТовары.Ссылка.Дата КАК Дата1,
| ЗаказВКарьерТовары.Ссылка.Менеджер КАК Менеджер1,
| ЗаказВКарьерТовары.Ссылка.Организация КАК Организация1
|ИЗ
| втОстатки КАК втОстатки
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказВКарьер.Товары КАК ЗаказВКарьерТовары
| ПО втОстатки.Номенклатура = ЗаказВКарьерТовары.Номенклатура
| И втОстатки.ЗаказКлиентаСсылка = ЗаказВКарьерТовары.Ссылка
|ГДЕ
| ЗаказВКарьерТовары.Ссылка В(&СписокЗнач)
Показать
хотя вот, обновленный вариант:
"ВЫБРАТЬ
| ЗаказВКарьер.Контрагент,
| ЗаказВКарьер.Дата,
| ЗаказВКарьер.Менеджер,
| ЗаказВКарьер.Организация,
| ЗаказВКарьер.Ссылка,
| ЗаказВКарьерТовары.Цена,
| ЗаказВКарьерТовары.СтавкаНДС,
| ЗаказВКарьерТовары.ЕдиницаИзмерения,
| ЗаказыКлиентовОстатки.ЗаказаноОстаток * ЗаказВКарьерТовары.Цена КАК Сумма,
| ВЫБОР
| КОГДА ЗаказыКлиентовОстатки.ЗаказаноОстаток = 0
| ТОГДА 0
| ИНАЧЕ ЗаказВКарьерТовары.СуммаНДС / ЗаказВКарьерТовары.Количество * ЗаказыКлиентовОстатки.ЗаказаноОстаток
| КОНЕЦ КАК СуммаНДС,
| ЗаказыКлиентовОстатки.ЗаказаноОстаток КАК Количество,
| ЗаказыКлиентовОстатки.СуммаОстаток КАК СуммаСНДС,
| ЗаказыКлиентовОстатки.Номенклатура КАК Номенклатура
|ИЗ
| Документ.ЗаказВКарьер КАК ЗаказВКарьер
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.ЗаказыКлиентов.Остатки КАК ЗаказыКлиентовОстатки
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказВКарьер.Товары КАК ЗаказВКарьерТовары
| ПО (ЗаказВКарьерТовары.Номенклатура = ЗаказыКлиентовОстатки.Номенклатура)
| ПО ЗаказВКарьер.Ссылка = ЗаказыКлиентовОстатки.ЗаказКлиента.Ссылка
|ГДЕ
| ЗаказВКарьерТовары.Ссылка В(&СписокЗнач)
| И ЗаказыКлиентовОстатки.ЗаказаноОстаток > 0";
Показать
НАверное все из-за
Документ.ЗаказВКарьер КАК ЗаказВКарьер
ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.ЗаказыКлиентов.Остатки КАК ЗаказыКлиентовОстатки
ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказВКарьер.Товары КАК ЗаказВКарьерТовары
А в регистре Накопления Заказы клиентов Реквизит заказ клиента какой тип ????
Документ.ЗаказВКарьер КАК ЗаказВКарьер
ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.ЗаказыКлиентов.Остатки КАК ЗаказыКлиентовОстатки
ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказВКарьер.Товары КАК ЗаказВКарьерТовары
А в регистре Накопления Заказы клиентов Реквизит заказ клиента какой тип ????
вы меня запутали с удалениями таблиц, давайте по порядку, первый запрос по РН:
так? мы делаем из него ВТ?
ВЫБРАТЬ
ЗаказыКлиентовОстатки.Номенклатура,
ЗаказыКлиентовОстатки.ЗаказаноОстаток,
ЗаказыКлиентовОстатки.СуммаОстаток,
ЗаказыКлиентовОстатки.ЗаказКлиента
ПОМЕСТИТЬ втОстатки
ИЗ
РегистрНакопления.ЗаказыКлиентов.Остатки КАК ЗаказыКлиентовОстатки
ГДЕ
ЗаказыКлиентовОстатки.ЗаказаноОстаток > 0
И ЗаказыКлиентовОстатки.ЗаказКлиента В(&СписокЗнач)
;
Показатьтак? мы делаем из него ВТ?
вроде сформировалось, но только теперь появилась новая трабла: у меня управляемое приложение, а когда создаетс ядокумент, он открывается как в обычном приложении, почему так?
ТТН=Документы.ТТН.СоздатьДокумент();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
ТТН.Организация = ВыборкаДетальныеЗаписи.Организация;
ТТН.Дата = ВыборкаДетальныеЗаписи.Дата;
ТТН.Контрагент = ВыборкаДетальныеЗаписи.Контрагент;
НоваяСтрока = ТТН.Товары.Добавить();
Если ВыборкаДетальныеЗаписи.Количество = 0 Тогда
Продолжить;
КонецЕсли;
НоваяСтрока.ЕдиницаИзмерения = ВыборкаДетальныеЗаписи.ЕдиницаИзмерения;
НоваяСтрока.Количество = ВыборкаДетальныеЗаписи.Количество;
НоваяСтрока.Номенклатура = ВыборкаДетальныеЗаписи.Номенклатура;
НоваяСтрока.СтавкаНДС = ВыборкаДетальныеЗаписи.СтавкаНДС;
НоваяСтрока.Сумма = ВыборкаДетальныеЗаписи.Сумма;
НоваяСтрока.СуммаНДС = ВыборкаДетальныеЗаписи.СуммаНДС;
НоваяСтрока.СуммаСНДС = ВыборкаДетальныеЗаписи.СуммаНДС + ВыборкаДетальныеЗаписи.Сумма;
НоваяСтрока.Цена = ВыборкаДетальныеЗаписи.Цена;
//НоваяСтрока.ЗаказВКарьер = ВыборкаДетальныеЗаписи.ЗаказКлиента;
КонецЦикла;
ТТН.записать();
ТТн.ПолучитьФорму("ФормаДокумента").Открыть();
Показать
а такой запрос не катит ???
ВЫБРАТЬ
ЗаказВКарьер.Контрагент,
ЗаказВКарьер.Дата,
ЗаказВКарьер.Менеджер,
ЗаказВКарьер.Организация,
ЗаказВКарьер.Ссылка,
ЗаказВКарьерТовары.Номенклатура КАК Номенклатура,
ЗаказВКарьерТовары.Цена,
ЗаказВКарьерТовары.СтавкаНДС,
ЗаказВКарьерТовары.ЕдиницаИзмерения,
ЗаказыКлиентовОстатки.ЗаказаноОстаток * ЗаказВКарьерТовары.Цена КАК Сумма,
ВЫБОР
КОГДА ЗаказыКлиентовОстатки.ЗаказаноОстаток = 0
ТОГДА 0
ИНАЧЕ ЗаказВКарьерТовары.СуммаНДС / ЗаказВКарьерТовары.Количество * ЗаказыКлиентовОстатки.ЗаказаноОстаток
КОНЕЦ КАК СуммаНДС,
ПОМЕСТИТЬ ВТ_Документ
ИЗ Документ.ЗаказВКарьер КАК ЗаказВКарьер
ГДЕ ЗаказВКарьерТовары.Ссылка В(&СписокЗнач)
;
ВЫБРАТЬ
ВТ_Документ.Контрагент,
ВТ_Документ.Дата,
ВТ_Документ.Менеджер,
ВТ_Документ.Организация,
ВТ_Документ.Ссылка,
ВТ_Документ.Номенклатура,
ВТ_Документ.Цена,
ВТ_Документ.СтавкаНДС,
ВТ_Документ.ЕдиницаИзмерения,
ВТ_Документ.Сумма,
ВТ_Документ.СуммаНДС,
ЗаказыКлиентовОстатки.ЗаказаноОстаток КАК Количество,
ЗаказыКлиентовОстатки.СуммаОстаток КАК СуммаСНДС,
ИЗ ВТ_Документ как ВТ_Документ
левое соединение РегистрНакопления.ЗаказыКлиентов.Остатки(,Номенклатура в(
ВЫБРАТЬ РАЗЛИЧНЫЕ
ВТ_Документ.Номенклатура
ИЗ ВТ_Документ КАК ВТ_Документ)) КАК ЗаказыКлиентовОстатки
по ВТ_Документ.Номенклатура = ЗаказыКлиентовОстатки.Номенклатура
ПоказатьЗаказВКарьер.Контрагент,
ЗаказВКарьер.Дата,
ЗаказВКарьер.Менеджер,
ЗаказВКарьер.Организация,
ЗаказВКарьер.Ссылка,
ЗаказВКарьерТовары.Номенклатура КАК Номенклатура,
ЗаказВКарьерТовары.Цена,
ЗаказВКарьерТовары.СтавкаНДС,
ЗаказВКарьерТовары.ЕдиницаИзмерения,
ЗаказыКлиентовОстатки.ЗаказаноОстаток * ЗаказВКарьерТовары.Цена КАК Сумма,
ВЫБОР
КОГДА ЗаказыКлиентовОстатки.ЗаказаноОстаток = 0
ТОГДА 0
ИНАЧЕ ЗаказВКарьерТовары.СуммаНДС / ЗаказВКарьерТовары.Количество * ЗаказыКлиентовОстатки.ЗаказаноОстаток
КОНЕЦ КАК СуммаНДС,
ПОМЕСТИТЬ ВТ_Документ
ИЗ Документ.ЗаказВКарьер КАК ЗаказВКарьер
ГДЕ ЗаказВКарьерТовары.Ссылка В(&СписокЗнач)
;
ВЫБРАТЬ
ВТ_Документ.Контрагент,
ВТ_Документ.Дата,
ВТ_Документ.Менеджер,
ВТ_Документ.Организация,
ВТ_Документ.Ссылка,
ВТ_Документ.Номенклатура,
ВТ_Документ.Цена,
ВТ_Документ.СтавкаНДС,
ВТ_Документ.ЕдиницаИзмерения,
ВТ_Документ.Сумма,
ВТ_Документ.СуммаНДС,
ЗаказыКлиентовОстатки.ЗаказаноОстаток КАК Количество,
ЗаказыКлиентовОстатки.СуммаОстаток КАК СуммаСНДС,
ИЗ ВТ_Документ как ВТ_Документ
левое соединение РегистрНакопления.ЗаказыКлиентов.Остатки(,Номенклатура в(
ВЫБРАТЬ РАЗЛИЧНЫЕ
ВТ_Документ.Номенклатура
ИЗ ВТ_Документ КАК ВТ_Документ)) КАК ЗаказыКлиентовОстатки
по ВТ_Документ.Номенклатура = ЗаказыКлиентовОстатки.Номенклатура
&НаКлиенте
Процедура Команда1(Команда)
НаСервере();
КонецПроцедуры
&Насервере
Процедура НаСервере()
СписокЗнач=новый СписокЗначений;
Для Каждого Стр из Объект.ЗаказВКарьер Цикл
СписокЗнач.добавить(Стр.ЗаказВКарьерКлиента);
КонецЦикла;
Запрос=Новый Запрос;
Запрос.Текст=
"ВЫБРАТЬ
| ЗаказыКлиентовОстатки.Номенклатура,
| ЗаказыКлиентовОстатки.ЗаказаноОстаток,
| ЗаказыКлиентовОстатки.СуммаОстаток,
| ЗаказыКлиентовОстатки.ЗаказКлиента,
| ЗаказыКлиентовОстатки.ЗаказКлиента.Ссылка
|ПОМЕСТИТЬ втОстатки
|ИЗ
| РегистрНакопления.ЗаказыКлиентов.Остатки КАК ЗаказыКлиентовОстатки
|ГДЕ
| ЗаказыКлиентовОстатки.ЗаказаноОстаток > 0
| И ЗаказыКлиентовОстатки.ЗаказКлиента В(&СписокЗнач)
|;
|
| X
|ВЫБРАТЬ
| втОстатки.Номенклатура,
| ЗаказВКарьерТовары.Цена,
| ЗаказВКарьерТовары.СтавкаНДС,
| ЗаказВКарьерТовары.ЕдиницаИзмерения,
| втОстатки.ЗаказаноОстаток КАК Количество,
| втОстатки.СуммаОстаток КАК СуммаСНДС,
| втОстатки.ЗаказаноОстаток * ЗаказВКарьерТовары.Цена КАК Сумма,
| ВЫБОР
| КОГДА втОстатки.ЗаказаноОстаток = 0
| ТОГДА 0
| ИНАЧЕ ЗаказВКарьерТовары.СуммаНДС / ЗаказВКарьерТовары.Количество * втОстатки.ЗаказаноОстаток
| КОНЕЦ КАК СуммаНДС,
| ЗаказВКарьерТовары.Ссылка.Контрагент КАК Контрагент,
| ЗаказВКарьерТовары.Ссылка.Дата КАК Дата,
| ЗаказВКарьерТовары.Ссылка.Менеджер КАК Менеджер,
| ЗаказВКарьерТовары.Ссылка.Организация КАК Организация
|ИЗ
| втОстатки КАК втОстатки
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказВКарьер.Товары КАК ЗаказВКарьерТовары
| ПО втОстатки.Номенклатура = ЗаказВКарьерТовары.Номенклатура
| И втОстатки.ЗаказКлиентаСсылка = ЗаказВКарьерТовары.Ссылка
|ГДЕ
| ЗаказВКарьерТовары.Ссылка В(&СписокЗнач)";
Запрос.УстановитьПараметр("СписокЗнач", СписокЗнач);
Результат = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = Результат.Выбрать();
ТТН=Документы.ТТН.СоздатьДокумент();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
ТТН.Организация = ВыборкаДетальныеЗаписи.Организация;
ТТН.Дата = ВыборкаДетальныеЗаписи.Дата;
ТТН.Контрагент = ВыборкаДетальныеЗаписи.Контрагент;
НоваяСтрока = ТТН.Товары.Добавить();
Если ВыборкаДетальныеЗаписи.Количество = 0 Тогда
Продолжить;
КонецЕсли;
НоваяСтрока.ЕдиницаИзмерения = ВыборкаДетальныеЗаписи.ЕдиницаИзмерения;
НоваяСтрока.Количество = ВыборкаДетальныеЗаписи.Количество;
НоваяСтрока.Номенклатура = ВыборкаДетальныеЗаписи.Номенклатура;
НоваяСтрока.СтавкаНДС = ВыборкаДетальныеЗаписи.СтавкаНДС;
НоваяСтрока.Сумма = ВыборкаДетальныеЗаписи.Сумма;
НоваяСтрока.СуммаНДС = ВыборкаДетальныеЗаписи.СуммаНДС;
НоваяСтрока.СуммаСНДС = ВыборкаДетальныеЗаписи.СуммаНДС + ВыборкаДетальныеЗаписи.Сумма;
НоваяСтрока.Цена = ВыборкаДетальныеЗаписи.Цена;
//НоваяСтрока.ЗаказВКарьер = ВыборкаДетальныеЗаписи.ЗаказКлиента;
КонецЦикла;
ТТН.записать();
ТТн.ПолучитьФорму("ФормаДокумента");
//ОткрытиеФормы(ТТН);
//ТТн.поткрыть();
КонецПроцедуры
&НаКлиенте
Процедура ОткрытиеФормы(Документ)
КонецПроцедуры
Показать
(81) jigourt, сделал так:
и все равно ругается:
ТТН.записать();
ТТн.ПолучитьФорму("ФормаДокумента");
ОткрытиеФормы(ТТН.Ссылка);
//ТТн.поткрыть();
КонецПроцедуры
&НаКлиенте
Процедура ОткрытиеФормы(Документ)
Структура = Новый СТруктура("Ключ",Документ);
ОткрытьФорму("Документ.ТТН.ФормаДокумента",Структура);
КонецПроцедуры
Показатьи все равно ругается:
{Обработка.ОбработкаЗагрузкиТТН.Форма.Форма.Форма(91,2)}: Процедура или функция с указанным именем не определена (ОткрытиеФормы)
<<?>>ОткрытиеФормы(ТТН.Ссылка); (Проверка: Сервер)
{Обработка.ОбработкаЗагрузкиТТН.Форма.Форма.Форма(91,2)}: Процедура или функция с указанным именем не определена (ОткрытиеФормы)
<<?>>ОткрытиеФормы(ТТН); (Проверка: Сервер)
&НаКлиенте
Процедура ОткрытиеФормы(Документ)
Документ.Открыть();
КонецПроцедуры
<<?>>ОткрытиеФормы(ТТН); (Проверка: Сервер)
&НаКлиенте
Процедура ОткрытиеФормы(Документ)
Документ.Открыть();
КонецПроцедуры
&НаКлиенте
Процедура Команда1(Команда)
Документ = НаСервере();
Структура = Новый СТруктура("Ключ",Документ);
ОткрытьФорму("Документ.ТТН.ФормаДокумента",Структура);
КонецПроцедуры
&Насервере
Функция НаСервере()
СписокЗнач=новый СписокЗначений;
Для Каждого Стр из Объект.ЗаказВКарьер Цикл
СписокЗнач.добавить(Стр.ЗаказВКарьерКлиента);
КонецЦикла;
Запрос=Новый Запрос;
Запрос.Текст=
"ВЫБРАТЬ
| ЗаказыКлиентовОстатки.Номенклатура,
| ЗаказыКлиентовОстатки.ЗаказаноОстаток,
| ЗаказыКлиентовОстатки.СуммаОстаток,
| ЗаказыКлиентовОстатки.ЗаказКлиента,
| ЗаказыКлиентовОстатки.ЗаказКлиента.Ссылка
|ПОМЕСТИТЬ втОстатки
|ИЗ
| РегистрНакопления.ЗаказыКлиентов.Остатки КАК ЗаказыКлиентовОстатки
|ГДЕ
| ЗаказыКлиентовОстатки.ЗаказаноОстаток > 0
| И ЗаказыКлиентовОстатки.ЗаказКлиента В(&СписокЗнач)
|;
|
| X
|ВЫБРАТЬ
| втОстатки.Номенклатура,
| ЗаказВКарьерТовары.Цена,
| ЗаказВКарьерТовары.СтавкаНДС,
| ЗаказВКарьерТовары.ЕдиницаИзмерения,
| втОстатки.ЗаказаноОстаток КАК Количество,
| втОстатки.СуммаОстаток КАК СуммаСНДС,
| втОстатки.ЗаказаноОстаток * ЗаказВКарьерТовары.Цена КАК Сумма,
| ВЫБОР
| КОГДА втОстатки.ЗаказаноОстаток = 0
| ТОГДА 0
| ИНАЧЕ ЗаказВКарьерТовары.СуммаНДС / ЗаказВКарьерТовары.Количество * втОстатки.ЗаказаноОстаток
| КОНЕЦ КАК СуммаНДС,
| ЗаказВКарьерТовары.Ссылка.Контрагент КАК Контрагент,
| ЗаказВКарьерТовары.Ссылка.Дата КАК Дата,
| ЗаказВКарьерТовары.Ссылка.Менеджер КАК Менеджер,
| ЗаказВКарьерТовары.Ссылка.Организация КАК Организация
|ИЗ
| втОстатки КАК втОстатки
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказВКарьер.Товары КАК ЗаказВКарьерТовары
| ПО втОстатки.Номенклатура = ЗаказВКарьерТовары.Номенклатура
| И втОстатки.ЗаказКлиентаСсылка = ЗаказВКарьерТовары.Ссылка
|ГДЕ
| ЗаказВКарьерТовары.Ссылка В(&СписокЗнач)";
Запрос.УстановитьПараметр("СписокЗнач", СписокЗнач);
Результат = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = Результат.Выбрать();
ТТН=Документы.ТТН.СоздатьДокумент();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
ТТН.Организация = ВыборкаДетальныеЗаписи.Организация;
ТТН.Дата = ВыборкаДетальныеЗаписи.Дата;
ТТН.Контрагент = ВыборкаДетальныеЗаписи.Контрагент;
НоваяСтрока = ТТН.Товары.Добавить();
Если ВыборкаДетальныеЗаписи.Количество = 0 Тогда
Продолжить;
КонецЕсли;
НоваяСтрока.ЕдиницаИзмерения = ВыборкаДетальныеЗаписи.ЕдиницаИзмерения;
НоваяСтрока.Количество = ВыборкаДетальныеЗаписи.Количество;
НоваяСтрока.Номенклатура = ВыборкаДетальныеЗаписи.Номенклатура;
НоваяСтрока.СтавкаНДС = ВыборкаДетальныеЗаписи.СтавкаНДС;
НоваяСтрока.Сумма = ВыборкаДетальныеЗаписи.Сумма;
НоваяСтрока.СуммаНДС = ВыборкаДетальныеЗаписи.СуммаНДС;
НоваяСтрока.СуммаСНДС = ВыборкаДетальныеЗаписи.СуммаНДС + ВыборкаДетальныеЗаписи.Сумма;
НоваяСтрока.Цена = ВыборкаДетальныеЗаписи.Цена;
//НоваяСтрока.ЗаказВКарьер = ВыборкаДетальныеЗаписи.ЗаказКлиента;
КонецЦикла;
ТТН.записать();
Возврат ТТН.Ссылка;
КонецФункции
Показать
эм, а как открыть ее потом?
&НаКлиенте
Процедура Команда1(Команда)
НаСервере();
//ОткрытьФорму(ТТН);
КонецПроцедуры
&Насервере
Функция НаСервере()
СписокЗнач=новый СписокЗначений;
Для Каждого Стр из Объект.ЗаказВКарьер Цикл
СписокЗнач.добавить(Стр.ЗаказВКарьерКлиента);
КонецЦикла;
Запрос=Новый Запрос;
Запрос.Текст=
"ВЫБРАТЬ
| ЗаказыКлиентовОстатки.Номенклатура,
| ЗаказыКлиентовОстатки.ЗаказаноОстаток,
| ЗаказыКлиентовОстатки.СуммаОстаток,
| ЗаказыКлиентовОстатки.ЗаказКлиента,
| ЗаказыКлиентовОстатки.ЗаказКлиента.Ссылка
|ПОМЕСТИТЬ втОстатки
|ИЗ
| РегистрНакопления.ЗаказыКлиентов.Остатки КАК ЗаказыКлиентовОстатки
|ГДЕ
| ЗаказыКлиентовОстатки.ЗаказаноОстаток > 0
| И ЗаказыКлиентовОстатки.ЗаказКлиента В(&СписокЗнач)
|;
|
| X
|ВЫБРАТЬ
| втОстатки.Номенклатура,
| ЗаказВКарьерТовары.Цена,
| ЗаказВКарьерТовары.СтавкаНДС,
| ЗаказВКарьерТовары.ЕдиницаИзмерения,
| втОстатки.ЗаказаноОстаток КАК Количество,
| втОстатки.СуммаОстаток КАК СуммаСНДС,
| втОстатки.ЗаказаноОстаток * ЗаказВКарьерТовары.Цена КАК Сумма,
| ВЫБОР
| КОГДА втОстатки.ЗаказаноОстаток = 0
| ТОГДА 0
| ИНАЧЕ ЗаказВКарьерТовары.СуммаНДС / ЗаказВКарьерТовары.Количество * втОстатки.ЗаказаноОстаток
| КОНЕЦ КАК СуммаНДС,
| ЗаказВКарьерТовары.Ссылка.Контрагент КАК Контрагент,
| ЗаказВКарьерТовары.Ссылка.Дата КАК Дата,
| ЗаказВКарьерТовары.Ссылка.Менеджер КАК Менеджер,
| ЗаказВКарьерТовары.Ссылка.Организация КАК Организация
|ИЗ
| втОстатки КАК втОстатки
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказВКарьер.Товары КАК ЗаказВКарьерТовары
| ПО втОстатки.Номенклатура = ЗаказВКарьерТовары.Номенклатура
| И втОстатки.ЗаказКлиентаСсылка = ЗаказВКарьерТовары.Ссылка
|ГДЕ
| ЗаказВКарьерТовары.Ссылка В(&СписокЗнач)";
Запрос.УстановитьПараметр("СписокЗнач", СписокЗнач);
Результат = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = Результат.Выбрать();
ТТН=Документы.ТТН.СоздатьДокумент();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
ТТН.Организация = ВыборкаДетальныеЗаписи.Организация;
ТТН.Дата = ВыборкаДетальныеЗаписи.Дата;
ТТН.Контрагент = ВыборкаДетальныеЗаписи.Контрагент;
НоваяСтрока = ТТН.Товары.Добавить();
Если ВыборкаДетальныеЗаписи.Количество = 0 Тогда
Продолжить;
КонецЕсли;
НоваяСтрока.ЕдиницаИзмерения = ВыборкаДетальныеЗаписи.ЕдиницаИзмерения;
НоваяСтрока.Количество = ВыборкаДетальныеЗаписи.Количество;
НоваяСтрока.Номенклатура = ВыборкаДетальныеЗаписи.Номенклатура;
НоваяСтрока.СтавкаНДС = ВыборкаДетальныеЗаписи.СтавкаНДС;
НоваяСтрока.Сумма = ВыборкаДетальныеЗаписи.Сумма;
НоваяСтрока.СуммаНДС = ВыборкаДетальныеЗаписи.СуммаНДС;
НоваяСтрока.СуммаСНДС = ВыборкаДетальныеЗаписи.СуммаНДС + ВыборкаДетальныеЗаписи.Сумма;
НоваяСтрока.Цена = ВыборкаДетальныеЗаписи.Цена;
КонецЦикла;
ТТН.записать();
Возврат ТТН.Ссылка;
//ТТн.ПолучитьФорму("ФормаДокумента");
//ОткрытиеФормы(ТТН.Ссылка);
//ТТн.поткрыть();
КонецФункции
Показать
Вакансии
Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)