Запрос по базовым начислениям.. |
Я |
18.02.09 — 18:00
Сразу скажу, что с запросом по базовым начислениям ни разу не работал.
НАшел запрос:
ВЫБРАТЬ
СУММА(База.РезультатБаза) КАК РезультатБаза,
База.Регистратор КАК Регистратор,
База.НомерСтроки КАК НомерСтроки
ИЗ
(ВЫБРАТЬ
База1.РезультатБаза КАК РезультатБаза,
База1.Регистратор КАК Регистратор,
База1.НомерСтроки КАК НомерСтроки
ИЗ
РегистрРасчета.ОсновныеНачисленияРаботниковОрганизаций.БазаОсновныеНачисленияРаботниковОрганизаций(&парамИзмеренияОсновного, &парамИзмеренияБазового, &парамРазрезы, ) КАК База1
База1.ПериодРегистрации)
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
База2.РезультатБаза,
База2.Регистратор,
База2.НомерСтроки
ИЗ
РегистрРасчета.ОсновныеНачисленияРаботниковОрганизаций.БазаДополнительныеНачисленияРаботниковОрганизаций(&парамИзмеренияОсновного, &парамИзмеренияБазового, &парамРазрезы, ) КАК База2
) КАК База
СГРУППИРОВАТЬ ПО
База.Регистратор,
База.НомерСтроки
хочу в консоли его посмотреть, а она, консоль, ругается на значения параметров…
«Ошибка обработки представления….тип параметра Измерения основного регистра»
Подскажите, чего она ругается, и как надо чтобы заработало???
1 — 19.02.09 — 10:03
апппппппппппппппп
2 — 19.02.09 — 10:43
апушка
3 — 19.02.09 — 13:21
ВЫБРАТЬ
СУММА(База.РезультатБаза) КАК РезультатБаза,
База.Регистратор КАК Регистратор,
База.НомерСтроки КАК НомерСтроки
ИЗ
(ВЫБРАТЬ
База1.РезультатБаза КАК РезультатБаза,
База1.Регистратор КАК Регистратор,
База1.НомерСтроки КАК НомерСтроки
ИЗ
РегистрРасчета.ОсновныеНачисленияРаботниковОрганизаций.БазаОсновныеНачисленияРаботниковОрганизаций(&парамИзмеренияОсновного, &парамИзмеренияБазового, &парамРазрезы, ) КАК База1
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
База2.РезультатБаза,
База2.Регистратор,
База2.НомерСтроки
ИЗ
РегистрРасчета.ОсновныеНачисленияРаботниковОрганизаций.БазаДополнительныеНачисленияРаботниковОрганизаций(&парамИзмеренияОсновного, &парамИзмеренияБазового, &парамРазрезы, ) КАК База2
) КАК База
СГРУППИРОВАТЬ ПО
База.Регистратор,
База.НомерСтроки
4 — 19.02.09 — 13:24
открывается ли сам конструктор запроса? что передаешь в параметры — «парамИзмеренияОсновного», «парамИзмеренияБазового», «парамРазрезы»?
5 — 19.02.09 — 15:57
(3) что-то не заметил отличий от исходного запроса..
(4)Конструктор открывается
в все 3 параметра передаю строку «Сотрудник»
6 — 19.02.09 — 16:00
Надо передать МАССИВ из одной строки «Сотрудник»
7 — 19.02.09 — 16:08
(6)
попробовал в консоли массив организовать — тип параметра «Список значений», первое значение — строка «Сотрудник»
все равно консоль выдает ту же ошибку
8 — 19.02.09 — 16:38
ап
9 — 19.02.09 — 17:04
Люди, дайте запрос по базовым начислениям! а лучше отчет
хоть кто-то же писал..
10 — 19.02.09 — 17:29
Запрос = новый запрос;
Если ИмяРегистра = «ОсновныеНачисления» тогда
ТекстЗапроса = «ВЫБРАТЬ
| ОсновныеНачисленияДанныеГрафика.НомерСтроки КАК НомерСтроки,
| ОсновныеНачисленияДанныеГрафика.ЗначениеПериодДействия,
| ОсновныеНачисленияДанныеГрафика.ЗначениеФактическийПериодДействия»;
Если НеобходимаБаза тогда
ТекстЗапроса = ТекстЗапроса + «,
| ОсновныеНачисленияБазаОсновныеНачисления.РезультатБаза»;
КонецЕсли;
ТекстЗапроса = ТекстЗапроса + »
|ИЗ РегистрРасчета.ОсновныеНачисления.ДанныеГрафика(Регистратор = &парамРегистратор и ВидРасчета.КатегорияРасчета = &парамКатегорияРасчета) КАК ОсновныеНачисленияДанныеГрафика»;
Если НеобходимаБаза тогда
//присоединяем к базе
ТекстЗапроса = ТекстЗапроса + »
|ЛЕВОЕ СОЕДИНЕНИЕ РегистрРасчета.ОсновныеНачисления.БазаОсновныеНачисления(&парамИзмеренияОсновного, &парамИзмеренияБазового,,Регистратор = &парамРегистратор и ВидРасчета.КатегорияРасчета = &парамКатегорияРасчета) КАК ОсновныеНачисленияБазаОсновныеНачисления
|ПО ОсновныеНачисленияБазаОсновныеНачисления.НомерСтроки = ОсновныеНачисленияДанныеГрафика.НомерСтроки»;
КонецЕсли;
ТекстЗапроса = ТекстЗапроса + »
|УПОРЯДОЧИТЬ ПО
| НомерСтроки»;
ИначеЕсли ИмяРегистра = «ДополнительныеНачисления» тогда
ТекстЗапроса = «ВЫБРАТЬ
|ДополнительныеНачисления.НомерСтроки Как НомерСтроки»;
Если НеобходимаБаза тогда
ТекстЗапроса = ТекстЗапроса + «,
|ВЫБОР КОГДА (ДополнительныеНачисленияБазаОсновныеНачисления.РезультатБаза) ЕСТЬ NULL ТОГДА 0 ИНАЧЕ ДополнительныеНачисленияБазаОсновныеНачисления.РезультатБаза КОНЕЦ + ВЫБОР КОГДА (ДополнительныеНачисленияБазаДополнительныеНачисления.РезультатБаза) ЕСТЬ NULL ТОГДА 0 ИНАЧЕ ДополнительныеНачисленияБазаДополнительныеНачисления.РезультатБаза КОНЕЦ КАК РезультатБаза»;
КонецЕсли;
ТекстЗапроса = ТекстЗапроса + »
|ИЗ РегистрРасчета.ДополнительныеНачисления КАК ДополнительныеНачисления»;
Если НеобходимаБаза тогда
//присоединяем к базе
ТекстЗапроса = ТекстЗапроса +»
|ЛЕВОЕ СОЕДИНЕНИЕ РегистрРасчета.ДополнительныеНачисления.БазаОсновныеНачисления(&парамИзмеренияОсновного, &парамИзмеренияБазового,,Регистратор = &парамРегистратор и ВидРасчета.КатегорияРасчета = &парамКатегорияРасчета) КАК ДополнительныеНачисленияБазаОсновныеНачисления
|ПО (ДополнительныеНачисления.НомерСтроки = ДополнительныеНачисленияБазаОсновныеНачисления.НомерСтроки)
|ЛЕВОЕ СОЕДИНЕНИЕ РегистрРасчета.ДополнительныеНачисления.БазаДополнительныеНачисления(&парамИзмеренияОсновного, &парамИзмеренияБазового,,Регистратор = &парамРегистратор и ВидРасчета.КатегорияРасчета = &парамКатегорияРасчета) КАК ДополнительныеНачисленияБазаДополнительныеНачисления
|ПО (ДополнительныеНачисления.НомерСтроки = ДополнительныеНачисленияБазаДополнительныеНачисления.НомерСтроки)»;
КонецЕсли;
ТекстЗапроса = ТекстЗапроса + »
|ГДЕ ДополнительныеНачисления.Регистратор = &парамРегистратор и ДополнительныеНачисления.ВидРасчета.КатегорияРасчета = &парамКатегорияРасчета
|УПОРЯДОЧИТЬ ПО
| НомерСтроки»;
ИначеЕсли ИмяРегистра = «Удержания» тогда
ТекстЗапроса = «ВЫБРАТЬ
|Удержания.НомерСтроки Как НомерСтроки»;
Если НеобходимаБаза тогда
ТекстЗапроса = ТекстЗапроса + «,
|ВЫБОР КОГДА (УдержанияБазаОсновныеНачисления.РезультатБаза) ЕСТЬ NULL ТОГДА 0 ИНАЧЕ УдержанияБазаОсновныеНачисления.РезультатБаза КОНЕЦ + ВЫБОР КОГДА (УдержанияБазаДополнительныеНачисления.РезультатБаза) ЕСТЬ NULL ТОГДА 0 ИНАЧЕ УдержанияБазаДополнительныеНачисления.РезультатБаза КОНЕЦ КАК РезультатБаза»;
КонецЕсли;
ТекстЗапроса = ТекстЗапроса + »
|ИЗ РегистрРасчета.Удержания КАК Удержания»;
Если НеобходимаБаза тогда
//присоединяем к базе
ТекстЗапроса = ТекстЗапроса +»
|ЛЕВОЕ СОЕДИНЕНИЕ РегистрРасчета.Удержания.БазаОсновныеНачисления(&парамИзмеренияОсновного, &парамИзмеренияБазового,,Регистратор = &парамРегистратор и ВидРасчета.КатегорияРасчета = &парамКатегорияРасчета) КАК УдержанияБазаОсновныеНачисления
|ПО (Удержания.НомерСтроки = УдержанияБазаОсновныеНачисления.НомерСтроки)
|ЛЕВОЕ СОЕДИНЕНИЕ РегистрРасчета.Удержания.БазаДополнительныеНачисления(&парамИзмеренияОсновного, &парамИзмеренияБазового,,Регистратор = &парамРегистратор и ВидРасчета.КатегорияРасчета = &парамКатегорияРасчета) КАК УдержанияБазаДополнительныеНачисления
|ПО (Удержания.НомерСтроки = УдержанияБазаДополнительныеНачисления.НомерСтроки)»;
КонецЕсли;
ТекстЗапроса = ТекстЗапроса + »
|ГДЕ Удержания.Регистратор = &парамРегистратор и Удержания.ВидРасчета.КатегорияРасчета = &парамКатегорияРасчета
|УПОРЯДОЧИТЬ ПО
| НомерСтроки»;
КонецЕсли;
Измерения = новый Массив(3);
Измерения[0] = «ФизЛицо»;
Измерения[1] = «Подразделение»;
Измерения[2] = «Должность»;
Запрос.УстановитьПараметр(«парамИзмеренияОсновного», Измерения);
Запрос.УстановитьПараметр(«парамИзмеренияБазового», Измерения);
Запрос.УстановитьПараметр(«парамРегистратор», Регистратор);
Запрос.УстановитьПараметр(«парамКатегорияРасчета», КатегорияРасчета);
Запрос.Текст = ТекстЗапроса;
Возврат Запрос.Выполнить().Выбрать();
11 — 19.02.09 — 17:30
Это из курса по кинфигурирования подситсем расчета зарплаты
12 — 19.02.09 — 17:30
Я его проходил около полугода назад, но наскольку помню через консоль отладиьт не удасться
13 — 19.02.09 — 17:42
и на том спасибо!
14 — 20.02.09 — 10:55
(12) по-пробовал сегодня сделать обработку на базе отрывка, что ты предложил…
не работает ни фига..
выдает пустоту:
Процедура БазаЗапрос2() Экспорт
Запрос = новый запрос;
ТекстЗапроса = «ВЫБРАТЬ
| ОсновныеНачисленияДанныеГрафика.НомерСтроки КАК НомерСтроки,
| ОсновныеНачисленияДанныеГрафика.ПериодДействия,
| ОсновныеНачисленияДанныеГрафика.БазовыйПериодНачало,
| ОсновныеНачисленияДанныеГрафика.БазовыйПериодКонец,
| ОсновныеНачисленияБазаОсновныеНачисления.РезультатБаза
|ИЗ РегистрРасчета.ОсновныеНачисленияРаботниковОрганизаций.ДанныеГрафика(Регистратор = &парамРегистратор
| и ВидРасчета.КатегорияРасчета = &парамКатегорияРасчета) КАК ОсновныеНачисленияДанныеГрафика
|ЛЕВОЕ СОЕДИНЕНИЕ РегистрРасчета.ОсновныеНачисленияРаботниковОрганизаций.БазаОсновныеНачисленияРаботниковОрганизаций(&парамИзмеренияОсновного,
| &парамИзмеренияБазового,,Регистратор = &парамРегистратор и
| ВидРасчета.КатегорияРасчета = &парамКатегорияРасчета) КАК ОсновныеНачисленияБазаОсновныеНачисления
| ПО ОсновныеНачисленияБазаОсновныеНачисления.НомерСтроки = ОсновныеНачисленияДанныеГрафика.НомерСтроки
|
|УПОРЯДОЧИТЬ ПО
| НомерСтроки»;
Измерения = новый Массив(1);
Измерения[0] = «ФизЛицо»;
Запрос.УстановитьПараметр(«парамИзмеренияОсновного», Измерения);
Запрос.УстановитьПараметр(«парамИзмеренияБазового», Измерения);
Запрос.УстановитьПараметр(«парамРегистратор», Регистратор);
Запрос.УстановитьПараметр(«парамКатегорияРасчета», КатегорияРасчета);
Запрос.Текст = ТекстЗапроса;
Результат = Запрос.Выполнить().Выбрать();
Пока Результат.Следующий() Цикл
Сообщить(Результат.ЗначениеПериодДействия+», «+Результат.ЗначениеФактическийПериодДействия+», «+
Результат.РезультатБаза);
КонецЦикла;
КонецПроцедуры
Что не так, не пойму….
ПетяПетькин
15 — 20.02.09 — 11:11
апище
Подскажите плиз,1с 8.2, УТ11, нужен отчет в СКД небольшой сделать, вот что-то не пойму как сделать СрезПоследних на КонецПериода, То есть выбираю РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&КонецПериода, ) КАК ЦеныНоменклатурыСрезПоследних КонецПериода = &Период.ДатаОкончания, Период — стандартный параметр СКД…, Выдает такое: {(9, 2)}: Ошибка обработки представления «РегистрСведений.ЦеныНоменклатуры.СрезПоследних:Несоответствие типов (Параметр номер «»1″»)» <<?>>РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&П3, ) КАК ЦеныНоменклатурыСрезПоследних И я в шоке почему &ПЗ???? Честное слово, 100 раз проверил, там &КонецПериода, видимо где-то там собака и зарыта… Подскажите, как правильно в СКД сделать срещ последних на дату? В коде-то понятно, Запрос, Потом УстановитьПараметр…
Может нужно ка-то по-другому указывать параметр? мне нужен конец периода, выбранного в СКД
он сам параметр создает. на закладке Компоновка укажи свой.
France, да нету там &ПЗ в тексте запроса! Мистика!
Samozvanec, сейчас попробую, Спасибо. А все-таки как-то можно использовать стандартный Период?
ПЗ это скдэшный параметр КонецПериода переименуй например в КонецПериодаЫ
Блин сделал параметр Дата1, ВЫБРАТЬ ЦеныНоменклатурыСрезПоследних.ВидЦены, ЦеныНоменклатурыСрезПоследних.Номенклатура КАК Номенклатура1, ЦеныНоменклатурыСрезПоследних.Цена Пишет : {(4, 2)}: Ошибка обработки представления «РегистрСведений.ЦеныНоменклатуры.СрезПоследних:Несоответствие типов (Параметр номер «»1″»)»
Мне просто нужно сделать СрезНаДату, у меня в самописном отчете не в СКД это отрабатывает запросто, а тут…
Вот такая простая фигня отрабатывает запросто: А в СКД Как? Помогите плиз
да ты параметру с типом «Дата» суешь стандартный период. Расслабься уже
В Схеме СКД на закладке Параметры Период должен быть с типом дата. а ты видно добавил Период с типом СтандартныйПериод. Переименуй свой период на период1 или удали его. а Период строго типизируй типом Дата
возьми свою дату в {(&Дата1}… либо послушай народ, и прекрати подсовывать параметр, т.е., вообще ничего не ставь в условия виртуальной таблицы…. в настройках потом просто вручную поставишь нужное значение параметре..
Блин никак не выходит.. Я уже и в скобки брал и так сделал: И все та же ошибка: {(4, 2)}: Ошибка обработки представления «РегистрСведений.ЦеныНоменклатуры.СрезПоследних:Несоответствие типов (Параметр номер «»1″»)» Что это за &П вообще у него?
&П — это сферический в вакууме параметр, не забивай себе им голову. Смотри на тип параметры на одноимееной закладке. у тебя там стоит СтандартныйПериод наверняка, а надо Дата
pessok, я создал свой параметр с типом Дата, это точно, я смотрел..
и именно ЭТОТ параметр у тебя стоит параметр виртуальной таблицы?
на закладке Параметры в схеме что у тебя? огласи весь список
телепаты к вечеру подустали
Херасе заработало, даже не ожидал. Убрал вообще нафиг Период из Параметров и оставил только свою Дата1…. И вот это заработало: ВЫБРАТЬ
Благодарю всех за помощь, особенно приятно что не троллили и не отправляли читать гугл
чуваааааак.. это было в
В я создал свой параметр Дата1, и его использовал, но там все еще висел просто в списке параметр Период и что-то там не того…
если бы ты так сделал, запрос выглядел бы вот так:
епта… а че у тебя Дата1 в полях делает? ты куда че хочешь передать-то? задать значение поля, или в параметр?
вестимо выводить дату остатков еще и в каждую строку отчета…
Тэги: 1С 8
Комментарии доступны только авторизированным пользователям
Ошибка проведения:
«В регистрах взаиморасчётов обнаружены отрицательные остатки на дату…» в 1С КА
При «перепроведении», «распроведении», попытке изменить или удалить документ в 1С КА может возникнуть ошибка, которая может быть следствием ошибок в регистрах взаиморасчётов.
Текстовый пример ошибки:
Ошибка при выполнении обработчика — ‘ОбработкаУдаленияПроведения’
по причине: Ошибка при вызове метода контекста (Записать)
{ОбщийМодуль.ПроведениеСерверУТ.Модуль(405)}:Объект.Движения.Записать();
{Документ.ПоступлениеБезналичныхДенежныхСредств.МодульОбъекта(546)}:ПроведениеСерверУТ.ЗаписатьНаборыЗаписей(ЭтотОбъект);
по причине: Ошибка при выполнении обработчика — ‘ПриЗаписи’
по причине: Поле объекта не обнаружено (НачалоДняПорядка)
или, так «В регистрах взаиморасчётов обнаружены отрицательные остатки на дату…»:
Стоит обратить внимание на одну из ошибок в приведённом текстовом примере «Поле объекта не обнаружено», которая как правило связана, например: с некорректным обновлением нетиповой конфигурации либо обновлении на конфигурацию, в которой разработчиками не качественно зачищен код. Запросы не могут быть нормально обработаны, ведь их способ оформления в коде уже изменился.
К сожалению, если дело касается переписанных блоков конфигураций или внешних обработок и отчетов, без достаточно глубокого знания программных продуктов 1С невозможно самостоятельно понять, как исправить «Поле объекта не обнаружено». Для решения проблемы стоит пригласить специалиста, потому как причина в каждом конкретном случае может быть своя.
Приведенные выше примеры ошибок возникли у пользователя при выполнении действий с расчётно-платежными документами: Приходным кассовым ордером (ПКО) или Поступление безналичных ДС (ПБДС) по причине нарушения целостности хронологической цепочки отражения в регистрах взаиморасчётов. Такое может происходить, например: при переходе от взаиморасчетов «Офлайн» на взаиморасчеты «Онлайн».
Для устранения ошибок, описанных в примере, была использована штатная обработка «Заполнение регистров взаиморасчётов*», её можно найти, используя функцию технического специалиста. Перед запуском процедуры необходимо обязательно (!) сделать копию рабочей базы данных.
Для исправления в регистрах по одному партнёру и одному договору («Частичное перезаполнение») необходимо заполнить «Аналитику учёта по партнёрам» (Партнёр) и «Объект расчётов» (в примере этого Договор), выбрать дату если она известна, и нажать кнопку «Заполнить по указанным». После этого появится окно с предупреждением, в котором необходимо нажать «Да».
После запуска процесса обработки регистры взаиморасчетов перезаполняются, восстанавливается хронологическая последовательность записей при этом удаляются «лишние» или корректировочные записи, внесенные вручную.
После выполнения данной встроенной обработки появится возможность редактирования «проблемного» документа: отменять проведение, заменять данные, перепроводить, удалять. Дополнительно после процедуры необходимо проверить корректность заполнения отчётов по расчётам с клиентами.
Докторова С.А.
ошибки при проведении документа
- Подписаться на тему
- Сообщить другу
- Скачать/распечатать тему
|
|
Доброго дня Ошибка при выполнении обработчика — ‘{ОбщийМодуль.ОбщегоНазначения(2177)}: Ошибка при вызове метода контекста (Выполнить): {(11, 2)}: Ошибка обработки представления «РегистрБухгалтерии.Хозрасчетный.Остатки:Использов ание итогов выключено» по причине: что делать????, помогите плиз |
Rust |
|
Отсюда — 1C-PRO — Форум по 1С Цитата В: При формировании отчетов выдает следующее — «….Использование итогов выключено» Цитата УстановитьИспользованиеТекущихИтогов (SetPresentTotalsUsing) Тип: Булево. Значение флага использования разделителя итогов. Как этого могло случиться: «Например, вы запустили обработку по загрузке данных из XML или какой-нибудь обмен и прервали досрочно — почти все эти обработки обмена первым делом отключают итоги (для ускорения работы), потом грузят данные, а потом включают итоги. Но если прервать выполнение — итоги останутся выключенными.» (с) Эмин |
mams |
|
спасибо… |
0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
0 пользователей:
- Предыдущая тема
- 1С: Проблемы и решения
- Следующая тема
[ Script execution time: 0,0764 ] [ 15 queries used ] [ Generated: 6.06.23, 01:14 GMT ]
Опубликовано: 16.02.2018 /
Рубрики: 1С
Разрабатывал я простенький отчет на СКД в 1С:ERP Управление предприятием 2 (2.2.3.138)
Краткое ТЗ такое:
За основу взять типовой отчет «Ведомость товаров на складах»
Добавить возможность выводить в поля отчета следующие показатели:
-
Коэффициент. Вычисляется как отношение количества конечного остатка за период к количеству продаж за соответствуюий период в единицах хранения
-
Цена. Последняя актуальная цена товара в соответствующий период по виду цен = «Розничная»
-
Количество. Количество продаж в единицах хранения (расход в отчете — общий расход со склада, нужны только продажи)
-
Сумма. Выручка от продаж
Задача простейшая,пишу такой запрос (тут часть):
Товары КАК Товары
ПОЛНОЕ СОЕДИНЕНИЕ Продажи КАК Продажи
ПО Товары.Номенклатура = Продажи.Номенклатура
И Товары.Характеристика = Продажи.Характеристика
И Товары.Склад = Продажи.Склад
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ВидЦены = &ВидЦены) КАК ЦеныНоменклатурыСрезПоследних
ПО Товары.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура
И Товары.Характеристика = ЦеныНоменклатурыСрезПоследних.Характеристика
И столкнулся с такой ошибкой:
Ошибка обработки представления «РегистрСведений.ЦеныНоменклатуры.СрезПоследних:Несоответствие типов (Параметр номер «»1″»)»
Проблема решается не хитрым путем, но решил сохранить ее решение для себя и для вас.
Решение:
Нужно устанавливать параметры для СКД на вкладке «компоновка данных» в конструкторе запроса.
Пример:
и
Ошибка по причине Несоответствие типов в 1С 8.3 связана с передачей параметров в командах и запросах 1С.
Изучив статью, вы:
- ознакомитесь с порядком исправления ошибки в запросе и командах 1С и узнаете, как исправить;
- получите два внешних отчета, демонстрирующих ошибочный и правильный коды.
В какой момент выходит ошибка
Как правило, параметры в командах 1С идут в определенной очередности и ссылаются на данные конкретного типа. Ошибка в указании параметра не на том месте или не того типа приводит к появлению сообщения о несоответствии типов:
Исправляется подобная ошибка восстановлением правильной последовательности в строке параметров команды или указанием нужного типа данных Ошибка 1С Несоответствие типов наиболее часто появляется при написании запросов и при некорректном указании параметров команды.
Рассмотрим причины ее возникновения и исправление на конкретном примере.
Ошибка в таблице запроса
При чтении цен номенклатуры по регистру сведений Цены номенклатуры из внешнего отчета появляется ошибка Неоднозначное поле «ТипЦен.Номенклатура».
В окне сообщений уже указано место возникновения ошибки: Несоответствие типов Параметр номер «1» в строке Регистр сведений.ЦеныНоменклатуры.СрезПоследних(&&ТипЦен,) КАК ЦеныНоменклатурыСрезПоследних.
Для исправления ошибки необходимо открыть отчет в Конфигураторе 1С и найти в модуле формы указанную строчку.
Правильность написания команды проверьте по выделенной кнопке Синтаксис-Помощник в меню 1 С Предприятие:
Из описания видно, что команда СрезПоследних имеет 2 параметра:
- Период;
- Отбор.
Если параметр Период не указывается, место в команде остается пустым, а через запятую указывается параметр отбора, в нашем случае: ТипЦен. Исправленная команда выглядит следующим образом: СрезПоследних(, ТипЦен = &ТипЦен ).
После исправления команды запустите отчет в 1 С Бухгалтерия по кнопке Главное меню — Файл — Открыть:
Теперь отчет формируется правильно!
Исправление ошибки в команде 1С
При поиске ссылок на контрагента в отчете 1С появляется ошибка Несоответствие типов (параметр номер 2):
1С сообщает место ошибки — Параметр номер 2 при нажатии кнопки ERROR.
Для ее исправления необходимо открыть отчет в Конфигураторе 1С и найти в модуле формы строчку с командой НайтиПоСсылкам.
Правильность написания команды проверьте по выделенной кнопке Синтаксис-Помощник в меню 1С:
Из описания идно, что команда НайтиПоСсылкам имеет 4 параметра:
- СписокСсылок;
- ОбластьПоиска;
- ВключитьОбъекты;
- ИсключитьОбъекты.
Параметр ОбластьПоиска имеет тип «массив», а в нашем примере указано число 1: НайтиПоСсылкам(МассивПоиска, 1, , МассивИсключений). Область поиска — необязательный параметр, поэтому исправленная команда может выглядеть следующим образом: НайтиПоСсылкам(МассивПоиска, , , МассивИсключений).
После исправления команды запустите внешний отчет в 1С по кнопке Главное меню — Файл — Открыть:
Теперь команда поиска ссылок на контрагента отрабатывает правильно.
Вот так можно получить ошибку 1С Несоответствие типов в 1С, поэтому контролируйте правильность указания параметров в запросах и командах 1С в Синтаксис-Помощнике!
Заказать консультацию
По этой или иной ошибке Вы можете обратиться к нашим специалистам, мы Вам поможем решить Вашу проблему.
Небольшой вопрос по СКД |
Я |
Double_Medved
23.01.13 — 16:31
Подскажите плиз,1с 8.2, УТ11, нужен отчет в СКД небольшой сделать, вот что-то не пойму как сделать СрезПоследних на КонецПериода, То есть выбираю РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&КонецПериода, ) КАК ЦеныНоменклатурыСрезПоследних
КонецПериода = &Период.ДатаОкончания, Период — стандартный параметр СКД…, Выдает такое: {(9, 2)}: Ошибка обработки представления «РегистрСведений.ЦеныНоменклатуры.СрезПоследних:Несоответствие типов (Параметр номер «»1″»)»
<<?>>РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&П3, ) КАК ЦеныНоменклатурыСрезПоследних
И я в шоке почему &ПЗ???? Честное слово, 100 раз проверил, там &КонецПериода, видимо где-то там собака и зарыта… Подскажите, как правильно в СКД сделать срещ последних на дату? В коде-то понятно, Запрос, Потом УстановитьПараметр…
Double_Medved
1 — 23.01.13 — 16:32
Может нужно ка-то по-другому указывать параметр? мне нужен конец периода, выбранного в СКД
France
2 — 23.01.13 — 16:34
(&П3 — убрать…
samozvanec
3 — 23.01.13 — 16:34
он сам параметр создает. на закладке Компоновка укажи свой.
Double_Medved
4 — 23.01.13 — 16:35
France, да нету там &ПЗ в тексте запроса! Мистика!
Double_Medved
5 — 23.01.13 — 16:35
Samozvanec, сейчас попробую, Спасибо. А все-таки как-то можно использовать стандартный Период?
eklmn
6 — 23.01.13 — 16:39
ПЗ это скдэшный параметр
КонецПериода переименуй например в КонецПериодаЫ
Double_Medved
7 — 23.01.13 — 16:45
Блин сделал параметр Дата1,
ВЫБРАТЬ
ЦеныНоменклатурыСрезПоследних.ВидЦены,
ЦеныНоменклатурыСрезПоследних.Номенклатура КАК Номенклатура1,
ЦеныНоменклатурыСрезПоследних.Цена
ИЗ
РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&Дата1, ) КАК ЦеныНоменклатурыСрезПоследних
ГДЕ
ЦеныНоменклатурыСрезПоследних.ВидЦены = &ВидЦены
Пишет :
{(4, 2)}: Ошибка обработки представления «РегистрСведений.ЦеныНоменклатуры.СрезПоследних:Несоответствие типов (Параметр номер «»1″»)»
<<?>>РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&П, ) КАК ЦеныНоменклатурыСрезПоследних
Double_Medved
8 — 23.01.13 — 16:46
Я в ах????е
Double_Medved
9 — 23.01.13 — 16:48
Мне просто нужно сделать СрезНаДату, у меня в самописном отчете не в СКД это отрабатывает запросто, а тут…
Double_Medved
10 — 23.01.13 — 16:51
Вот такая простая фигня отрабатывает запросто:
Запрос = Новый Запрос;
Запрос.Текст =
«Выбрать
|ЦеныНоменклатуры.Номенклатура,
|ЦеныНоменклатуры.Цена
|ИЗ
|РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&ДатаНачЗ,) КАК ЦеныНоменклатуры
|ГДЕ
|ЦеныНоменклатуры.ВидЦены = &ВидЦеныЗ
|»
;
Запрос.УстановитьПараметр(«ДатаНачЗ»,ДатаНач);
Запрос.УстановитьПараметр(«ВидЦеныЗ»,ВидЦены);
ТЗРН = Новый ТаблицаЗначений;
ТЗРН = Запрос.Выполнить().Выгрузить();
А в СКД Как? Помогите плиз
pessok
11 — 23.01.13 — 16:53
(10) да ты параметру с типом «Дата» суешь стандартный период. Расслабься уже
2757028
12 — 23.01.13 — 16:56
(0) В Схеме СКД на закладке Параметры Период должен быть с типом дата. а ты видно добавил Период с типом СтандартныйПериод. Переименуй свой период на период1 или удали его. а Период строго типизируй типом Дата
France
13 — 23.01.13 — 16:59
возьми свою дату в {(&Дата1}… либо послушай народ, и прекрати подсовывать параметр, т.е., вообще ничего не ставь в условия виртуальной таблицы…. в настройках потом просто вручную поставишь нужное значение параметре..
Double_Medved
14 — 23.01.13 — 17:21
Блин никак не выходит.. Я уже и в скобки брал и так сделал:
ВЫБРАТЬ
&Дата1 КАК Дата,
ЦеныНоменклатурыСрезПоследних.ВидЦены КАК ВидЦены,
ЦеныНоменклатурыСрезПоследних.Номенклатура КАК Номенклатура,
ЦеныНоменклатурыСрезПоследних.Цена КАК Цена
{ВЫБРАТЬ
Дата,
ВидЦены,
Номенклатура,
Цена}
ИЗ
РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&Дата, ) КАК ЦеныНоменклатурыСрезПоследних
И все та же ошибка:
{(4, 2)}: Ошибка обработки представления «РегистрСведений.ЦеныНоменклатуры.СрезПоследних:Несоответствие типов (Параметр номер «»1″»)»
<<?>>РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&П, ) КАК ЦеныНоменклатурыСрезПоследних
Что это за &П вообще у него?
pessok
15 — 23.01.13 — 17:22
&П — это сферический в вакууме параметр, не забивай себе им голову. Смотри на тип параметры на одноимееной закладке. у тебя там стоит СтандартныйПериод наверняка, а надо Дата
Double_Medved
16 — 23.01.13 — 17:23
pessok, я создал свой параметр с типом Дата, это точно, я смотрел..
pessok
17 — 23.01.13 — 17:23
и именно ЭТОТ параметр у тебя стоит параметр виртуальной таблицы?
pessok
18 — 23.01.13 — 17:23
*параметром
samozvanec
19 — 23.01.13 — 17:25
на закладке Параметры в схеме что у тебя? огласи весь список
samozvanec
20 — 23.01.13 — 17:26
телепаты к вечеру подустали
Double_Medved
21 — 23.01.13 — 17:27
Херасе заработало, даже не ожидал. Убрал вообще нафиг Период из Параметров и оставил только свою Дата1…. И вот это заработало:
ВЫБРАТЬ
&Дата1 КАК Дата,
ЦеныНоменклатурыСрезПоследних.ВидЦены КАК ВидЦены,
ЦеныНоменклатурыСрезПоследних.Номенклатура КАК Номенклатура,
ЦеныНоменклатурыСрезПоследних.Цена КАК Цена
{ВЫБРАТЬ
Дата,
ВидЦены,
Номенклатура,
Цена}
ИЗ
РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&Дата, ) КАК ЦеныНоменклатурыСрезПоследних
Double_Medved
22 — 23.01.13 — 17:27
Благодарю всех за помощь, особенно приятно что не троллили и не отправляли читать гугл
pessok
23 — 23.01.13 — 17:28
(21) чуваааааак.. это было в (3)
Double_Medved
24 — 23.01.13 — 17:29
В (3) я создал свой параметр Дата1, и его использовал, но там все еще висел просто в списке параметр Период и что-то там не того…
samozvanec
25 — 23.01.13 — 17:37
(24) если бы ты так сделал, запрос выглядел бы вот так:
ВЫБРАТЬ
&Дата1 КАК Дата,
ЦеныНоменклатурыСрезПоследних.ВидЦены КАК ВидЦены,
ЦеныНоменклатурыСрезПоследних.Номенклатура КАК Номенклатура,
ЦеныНоменклатурыСрезПоследних.Цена КАК Цена
ИЗ
РегистрСведений.ЦеныНоменклатуры.СрезПоследних({&Дата}, ) КАК ЦеныНоменклатурыСрезПоследних
samozvanec
26 — 23.01.13 — 17:38
епта… а че у тебя Дата1 в полях делает? ты куда че хочешь передать-то? задать значение поля, или в параметр?
pessok
27 — 23.01.13 — 17:50
(26) вестимо выводить дату остатков еще и в каждую строку отчета…
Содержание:
1. Несоответствие типов данных
2. Ошибка внутри таблицы в запросе
3. Причина ошибки внутри команды
Приветствую, коллеги! В данной статье рассмотрим понятие и описание типа данных и переменных в системе 1С версии 8.3. Также поговорим о распространенной ошибке «Несоответствие типов», изложим инструкцию с по ее устранению.
1. Несоответствие типов данных
Тип – это характеристика у значения, которая определяет поведение и свойства, которые имеет данное значение.
В командах внутри системы 1С параметры имеют некую специальную очерёдность, а также все параметры имеют ссылку на данные, которые связаны с каким-либо типом. В случае, когда какой-то из параметров находится в неположенном месте, либо название не соответствует типу, выполняются невозможные действия для конкретного типа – появляется сообщение, в котором говорится о несоответствии типов данных (показано на скриншоте ниже):
Рис. 1 Сообщение об ошибке несоответствии типов
Чаще всего данная неполадка возникает, когда при написании запроса внутри команды не верно указывают параметры. Исправление подобной ошибки производится при помощи изменения типа передаваемого параметра или используемой переменной на правильный тип данных.
2. Ошибка внутри таблицы в запросе
Рассмотрим пример: при чтении цен из номенклатуры согласно регистру данных «Цены номенклатуры» с общего внешнего отчёта всплывает ошибка «Неоднозначное поле «ТипЦен.Номенклатура».
Рис. 2 Ошибка Неоднозначное поле
Видим, что в окне с сообщением о неполадке указано место в коде, где возникла ошибка несоответствия типов: «Параметр номер «1», в строчке вида:
«РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&&ТипЦен,) КАК ЦеныНоменклатурыСрезПоследних.
Чтобы устранить данную ошибку в первую очередь откроем конфигурацию с данным отчётом и найдем внутри кода с формой строчку, которая была приведена выше:
Рис. 3 Исправление ошибки несоответствия типов (Параметр номер 1)
При помощи «Синтаксис-Помощника», в меню конфигурации 1С можно сверить, насколько правильно была написана команда:
Рис. 4 Проверка написания команды с помощью Синтаксис-Помощника
Согласно описанию, в команде «СрезПоследних» находится два параметра: «Отбор» и «Период».
В случае, когда параметр «Период» не был указан, в данной команде будет пустое поле, а после запятой будет написан параметр для отбора. Для нашего примера этим параметром будет «ТипЦен». После правок команда видоизменится так: «СрезПоследних(,ТипЦен = &ТипЦен).
Рис. 5 Исправление команды СрезПоследних
После того как команда СрезПоследних была исправлена, стоит снова сформировать отчёт из «Главное меню → Файл → Открыть».
3. Причина ошибки внутри команды
Имеем такую ошибку: когда происходит поиск вариантов ссылок на контрагента в отчёте системы 1С, то возникает ошибка «Несоответствие типов (параметр номер «2»), как на скриншоте ниже:
Рис. 6 Несоответствие типов (параметр номер «2»)
В системе 1С указано то место, где произошла неполадка – это недопустимый параметр номер 2, если кликнуть на кнопку «ERROR». Чтобы её исправить нужно запустить отчёт в конфигураторе системы 1С, далее ищем форму строчки, в которой написана команда «НайтиПоСсылкам», внутри модуля.
Рис. 7 Команда НайтиПоСсылкам внутри модуля
Можно проверить верность того, как написана команда при помощи «Синтаксис-Помощника» в панели меню системы 1С, кнопка будет выделена:
Рис. 8 Команда НайтиПоСсылкам в Синтаксис-Помощнике
По описанию следует: в команде «НайтиПоСсылкам» находится такие четыре параметра: СписокСсылок, ИсключитьОбъекты, ВключитьОбъекты и ОбластьПоиска.
В параметре с названием «ОбластьПоиска» будет тип «массив», в примере указана единица. Параметр «ОбластьПоиска» — не является обязательным, так что команда, которую исправили будет иметь следующий новый вид: НайтиПоСсылкам(МассивПоиска, , , МассивИсключений).
Рис. 9 Тип массив в НайтиПоСсылкам
Далее запускаем наш отчёт в системе 1С.
После наших действий команда работает исправно и ошибки нет.
Рис. 10 Проверка на наличие ошибок в системе конфигурации 1С
В данной статье было рассмотрено как устранить ошибку несоответствия типов в 1С. На примерах была устранена эта ошибка для запроса и для команды. По данному алгоритму можно всегда устранять данную ошибку.
Специалист компании «Кодерлайн»
Айдар Фархутдинов
bless18 |
|
||
---|---|---|---|
Здравствуйте!
Выдается такая ошибка:
Подскажите, пожалуйста, как исправить эту ошибку |
Подскажите плиз,1с 8.2, УТ11, нужен отчет в СКД небольшой сделать, вот что-то не пойму как сделать СрезПоследних на КонецПериода, То есть выбираю РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&КонецПериода, ) КАК ЦеныНоменклатурыСрезПоследних КонецПериода = &Период.ДатаОкончания, Период — стандартный параметр СКД…, Выдает такое: {(9, 2)}: Ошибка обработки представления «РегистрСведений.ЦеныНоменклатуры.СрезПоследних:Несоответствие типов (Параметр номер «»1″»)» <<?>>РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&П3, ) КАК ЦеныНоменклатурыСрезПоследних И я в шоке почему &ПЗ???? Честное слово, 100 раз проверил, там &КонецПериода, видимо где-то там собака и зарыта… Подскажите, как правильно в СКД сделать срещ последних на дату? В коде-то понятно, Запрос, Потом УстановитьПараметр…
Может нужно ка-то по-другому указывать параметр? мне нужен конец периода, выбранного в СКД
он сам параметр создает. на закладке Компоновка укажи свой.
France, да нету там &ПЗ в тексте запроса! Мистика!
Samozvanec, сейчас попробую, Спасибо. А все-таки как-то можно использовать стандартный Период?
ПЗ это скдэшный параметр КонецПериода переименуй например в КонецПериодаЫ
Блин сделал параметр Дата1, ВЫБРАТЬ ЦеныНоменклатурыСрезПоследних.ВидЦены, ЦеныНоменклатурыСрезПоследних.Номенклатура КАК Номенклатура1, ЦеныНоменклатурыСрезПоследних.Цена Пишет : {(4, 2)}: Ошибка обработки представления «РегистрСведений.ЦеныНоменклатуры.СрезПоследних:Несоответствие типов (Параметр номер «»1″»)»
Мне просто нужно сделать СрезНаДату, у меня в самописном отчете не в СКД это отрабатывает запросто, а тут…
Вот такая простая фигня отрабатывает запросто: А в СКД Как? Помогите плиз
да ты параметру с типом «Дата» суешь стандартный период. Расслабься уже
В Схеме СКД на закладке Параметры Период должен быть с типом дата. а ты видно добавил Период с типом СтандартныйПериод. Переименуй свой период на период1 или удали его. а Период строго типизируй типом Дата
возьми свою дату в {(&Дата1}… либо послушай народ, и прекрати подсовывать параметр, т.е., вообще ничего не ставь в условия виртуальной таблицы…. в настройках потом просто вручную поставишь нужное значение параметре..
Блин никак не выходит.. Я уже и в скобки брал и так сделал: И все та же ошибка: {(4, 2)}: Ошибка обработки представления «РегистрСведений.ЦеныНоменклатуры.СрезПоследних:Несоответствие типов (Параметр номер «»1″»)» Что это за &П вообще у него?
&П — это сферический в вакууме параметр, не забивай себе им голову. Смотри на тип параметры на одноимееной закладке. у тебя там стоит СтандартныйПериод наверняка, а надо Дата
pessok, я создал свой параметр с типом Дата, это точно, я смотрел..
и именно ЭТОТ параметр у тебя стоит параметр виртуальной таблицы?
на закладке Параметры в схеме что у тебя? огласи весь список
телепаты к вечеру подустали
Херасе заработало, даже не ожидал. Убрал вообще нафиг Период из Параметров и оставил только свою Дата1…. И вот это заработало: ВЫБРАТЬ
Благодарю всех за помощь, особенно приятно что не троллили и не отправляли читать гугл
чуваааааак.. это было в
В я создал свой параметр Дата1, и его использовал, но там все еще висел просто в списке параметр Период и что-то там не того…
если бы ты так сделал, запрос выглядел бы вот так:
епта… а че у тебя Дата1 в полях делает? ты куда че хочешь передать-то? задать значение поля, или в параметр?
вестимо выводить дату остатков еще и в каждую строку отчета…
Тэги: 1С 8
Комментарии доступны только авторизированным пользователям
LexaK, вот так весь мой код выглядит
ВЫБРАТЬ РАЗЛИЧНЫЕ
ПересчетТоваровТовары.Номенклатура КАК Номенклатура,
ПересчетТоваровТовары.Характеристика КАК Характеристика,
ПересчетТоваровТовары.Серия КАК Серия,
ИСТИНА КАК ИспользуетсяОтборПоПересчетуТоваров
ПОМЕСТИТЬ ОтборПоПересчетуТоваров
ИЗ
Документ.ПересчетТоваров.Товары КАК ПересчетТоваровТовары
{ГДЕ
ПересчетТоваровТовары.Ссылка.* КАК ПересчетТоваров}
ИНДЕКСИРОВАТЬ ПО
Номенклатура,
Характеристика,
Серия,
ИспользуетсяОтборПоПересчетуТоваров
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗРЕШЕННЫЕ РАЗЛИЧНЫЕ
Сегменты.Номенклатура КАК Номенклатура,
Сегменты.Характеристика КАК Характеристика,
ИСТИНА КАК ИспользуетсяОтборПоСегментуНоменклатуры
ПОМЕСТИТЬ ОтборПоСегментуНоменклатуры
ИЗ
РегистрСведений.НоменклатураСегмента КАК Сегменты
{ГДЕ
Сегменты.Сегмент.* КАК СегментНоменклатуры,
Сегменты.Номенклатура.* КАК Номенклатура,
Сегменты.Характеристика.* КАК Характеристика}
ИНДЕКСИРОВАТЬ ПО
Номенклатура,
Характеристика,
ИспользуетсяОтборПоСегментуНоменклатуры
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗРЕШЕННЫЕ
ТоварыНаСкладахОстаткиИОбороты.Номенклатура КАК Номенклатура,
ТоварыНаСкладахОстаткиИОбороты.Характеристика КАК Характеристика,
ТоварыНаСкладахОстаткиИОбороты.Назначение КАК Назначение,
ТоварыНаСкладахОстаткиИОбороты.Номенклатура.ЕдиницаИзмерения КАК ЕдиницаХранения,
ТоварыНаСкладахОстаткиИОбороты.Номенклатура.ЕдиницаДляОтчетов КАК ЕдиницаДляОтчетов,
ТоварыНаСкладахОстаткиИОбороты.Серия КАК Серия,
ТоварыНаСкладахОстаткиИОбороты.Склад КАК Склад,
ТоварыНаСкладахОстаткиИОбороты.Помещение КАК Помещение,
ВЫБОР
КОГДА ТоварыНаСкладахОстаткиИОбороты.Регистратор = НЕОПРЕДЕЛЕНО
ТОГДА NULL
ИНАЧЕ ТоварыНаСкладахОстаткиИОбороты.Регистратор
КОНЕЦ КАК Регистратор,
ТоварыНаСкладахОстаткиИОбороты.ПериодСекунда КАК ПериодСекунда,
ТоварыНаСкладахОстаткиИОбороты.ПериодДень КАК ПериодДень,
ТоварыНаСкладахОстаткиИОбороты.ПериодНеделя КАК ПериодНеделя,
ТоварыНаСкладахОстаткиИОбороты.ПериодДекада КАК ПериодДекада,
ТоварыНаСкладахОстаткиИОбороты.ПериодМесяц КАК ПериодМесяц,
ТоварыНаСкладахОстаткиИОбороты.ПериодКвартал КАК ПериодКвартал,
ТоварыНаСкладахОстаткиИОбороты.ПериодГод КАК ПериодГод,
ВЫБОР
КОГДА &ЕдиницыКоличества = 0
ТОГДА ТоварыНаСкладахОстаткиИОбороты.ВНаличииНачальныйОстаток
КОГДА &ЕдиницыКоличества = 1
ТОГДА ВЫБОР
КОГДА ТоварыНаСкладахОстаткиИОбороты.Номенклатура.КоэффициентЕдиницыДляОтчетов <> 0
ТОГДА ТоварыНаСкладахОстаткиИОбороты.ВНаличииНачальныйОстаток / ТоварыНаСкладахОстаткиИОбороты.Номенклатура.КоэффициентЕдиницыДляОтчетов
ИНАЧЕ 0
КОНЕЦ
КОНЕЦ КАК НачальныйОстаток,
ВЫБОР
КОГДА &ЕдиницыКоличества = 0
ТОГДА ТоварыНаСкладахОстаткиИОбороты.ВНаличииКонечныйОстаток
КОГДА &ЕдиницыКоличества = 1
ТОГДА ВЫБОР
КОГДА ТоварыНаСкладахОстаткиИОбороты.Номенклатура.КоэффициентЕдиницыДляОтчетов <> 0
ТОГДА ТоварыНаСкладахОстаткиИОбороты.ВНаличииКонечныйОстаток / ТоварыНаСкладахОстаткиИОбороты.Номенклатура.КоэффициентЕдиницыДляОтчетов
ИНАЧЕ 0
КОНЕЦ
КОНЕЦ КАК КонечныйОстаток,
ВЫБОР
КОГДА &ЕдиницыКоличества = 0
ТОГДА ТоварыНаСкладахОстаткиИОбороты.ВНаличииПриход
КОГДА &ЕдиницыКоличества = 1
ТОГДА ВЫБОР
КОГДА ТоварыНаСкладахОстаткиИОбороты.Номенклатура.КоэффициентЕдиницыДляОтчетов <> 0
ТОГДА ТоварыНаСкладахОстаткиИОбороты.ВНаличииПриход / ТоварыНаСкладахОстаткиИОбороты.Номенклатура.КоэффициентЕдиницыДляОтчетов
ИНАЧЕ 0
КОНЕЦ
КОНЕЦ КАК Приход,
ВЫБОР
КОГДА &ЕдиницыКоличества = 0
ТОГДА ТоварыНаСкладахОстаткиИОбороты.ВНаличииРасход
КОГДА &ЕдиницыКоличества = 1
ТОГДА ВЫБОР
КОГДА ТоварыНаСкладахОстаткиИОбороты.Номенклатура.КоэффициентЕдиницыДляОтчетов <> 0
ТОГДА ТоварыНаСкладахОстаткиИОбороты.ВНаличииРасход / ТоварыНаСкладахОстаткиИОбороты.Номенклатура.КоэффициентЕдиницыДляОтчетов
ИНАЧЕ 0
КОНЕЦ
КОНЕЦ КАК Расход,
ВЫБОР
КОГДА &ЕдиницыКоличества = 0
ТОГДА ТоварыНаСкладахОстаткиИОбороты.КОтгрузкеНачальныйОстаток
КОГДА &ЕдиницыКоличества = 1
ТОГДА ВЫБОР
КОГДА ТоварыНаСкладахОстаткиИОбороты.Номенклатура.КоэффициентЕдиницыДляОтчетов <> 0
ТОГДА ТоварыНаСкладахОстаткиИОбороты.КОтгрузкеНачальныйОстаток / ТоварыНаСкладахОстаткиИОбороты.Номенклатура.КоэффициентЕдиницыДляОтчетов
ИНАЧЕ 0
КОНЕЦ
КОНЕЦ КАК КОтгрузкеНачальныйОстаток,
ВЫБОР
КОГДА &ЕдиницыКоличества = 0
ТОГДА ТоварыНаСкладахОстаткиИОбороты.КОтгрузкеКонечныйОстаток
КОГДА &ЕдиницыКоличества = 1
ТОГДА ВЫБОР
КОГДА ТоварыНаСкладахОстаткиИОбороты.Номенклатура.КоэффициентЕдиницыДляОтчетов <> 0
ТОГДА ТоварыНаСкладахОстаткиИОбороты.КОтгрузкеКонечныйОстаток / ТоварыНаСкладахОстаткиИОбороты.Номенклатура.КоэффициентЕдиницыДляОтчетов
ИНАЧЕ 0
КОНЕЦ
КОНЕЦ КАК КОтгрузкеКонечныйОстаток,
ВЫБОР
КОГДА &ЕдиницыКоличества = 0
ТОГДА ТоварыНаСкладахОстаткиИОбороты.КОтгрузкеПриход
КОГДА &ЕдиницыКоличества = 1
ТОГДА ВЫБОР
КОГДА ТоварыНаСкладахОстаткиИОбороты.Номенклатура.КоэффициентЕдиницыДляОтчетов <> 0
ТОГДА ТоварыНаСкладахОстаткиИОбороты.КОтгрузкеПриход / ТоварыНаСкладахОстаткиИОбороты.Номенклатура.КоэффициентЕдиницыДляОтчетов
ИНАЧЕ 0
КОНЕЦ
КОНЕЦ КАК КОтгрузкеПриход,
ТоварыНаСкладахОстаткиИОбороты.ВНаличииНачальныйОстаток * &ТекстЗапросаВесНоменклатуры КАК НачальныйОстатокВес,
ТоварыНаСкладахОстаткиИОбороты.ВНаличииКонечныйОстаток * &ТекстЗапросаВесНоменклатуры КАК КонечныйОстатокВес,
ТоварыНаСкладахОстаткиИОбороты.ВНаличииПриход * &ТекстЗапросаВесНоменклатуры КАК ПриходВес,
ТоварыНаСкладахОстаткиИОбороты.ВНаличииРасход * &ТекстЗапросаВесНоменклатуры КАК РасходВес,
ТоварыНаСкладахОстаткиИОбороты.ВНаличииНачальныйОстаток * &ТекстЗапросаОбъемНоменклатуры КАК НачальныйОстатокОбъем,
ТоварыНаСкладахОстаткиИОбороты.ВНаличииКонечныйОстаток * &ТекстЗапросаОбъемНоменклатуры КАК КонечныйОстатокОбъем,
ТоварыНаСкладахОстаткиИОбороты.ВНаличииПриход * &ТекстЗапросаОбъемНоменклатуры КАК ПриходОбъем,
ТоварыНаСкладахОстаткиИОбороты.ВНаличииРасход * &ТекстЗапросаОбъемНоменклатуры КАК РасходОбъем,
ТоварыНаСкладахОстаткиИОбороты.КОтгрузкеНачальныйОстаток * &ТекстЗапросаВесНоменклатуры КАК КОтгрузкеНачальныйОстатокВес,
ТоварыНаСкладахОстаткиИОбороты.КОтгрузкеКонечныйОстаток * &ТекстЗапросаВесНоменклатуры КАК КОтгрузкеКонечныйОстатокВес,
ТоварыНаСкладахОстаткиИОбороты.КОтгрузкеПриход * &ТекстЗапросаВесНоменклатуры КАК КОтгрузкеПриходВес,
ТоварыНаСкладахОстаткиИОбороты.КОтгрузкеНачальныйОстаток * &ТекстЗапросаОбъемНоменклатуры КАК КОтгрузкеНачальныйОстатокОбъем,
ТоварыНаСкладахОстаткиИОбороты.КОтгрузкеКонечныйОстаток * &ТекстЗапросаОбъемНоменклатуры КАК КОтгрузкеКонечныйОстатокОбъем,
ТоварыНаСкладахОстаткиИОбороты.КОтгрузкеПриход * &ТекстЗапросаОбъемНоменклатуры КАК КОтгрузкеПриходОбъем,
ЦеныНоменклатурыПоставщиковСрезПоследних.Цена КАК Цена
{ВЫБРАТЬ
Номенклатура.*,
Характеристика.*,
ЕдиницаХранения.*,
ЕдиницаДляОтчетов.*,
Серия.*,
Склад.*,
Помещение.*,
Регистратор.*,
ПериодСекунда,
ПериодДень,
ПериодНеделя,
ПериодДекада,
ПериодМесяц,
ПериодКвартал,
ПериодГод,
НачальныйОстаток,
КонечныйОстаток,
Приход,
Расход,
КОтгрузкеНачальныйОстаток,
КОтгрузкеКонечныйОстаток,
КОтгрузкеПриход,
НачальныйОстатокВес,
КонечныйОстатокВес,
ПриходВес,
РасходВес,
НачальныйОстатокОбъем,
КонечныйОстатокОбъем,
ПриходОбъем,
РасходОбъем,
КОтгрузкеНачальныйОстатокВес,
КОтгрузкеКонечныйОстатокВес,
КОтгрузкеПриходВес,
КОтгрузкеНачальныйОстатокОбъем,
КОтгрузкеКонечныйОстатокОбъем,
КОтгрузкеПриходОбъем}
ИЗ
РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(, , Авто, , {((Номенклатура, Характеристика) В
(ВЫБРАТЬ
ОтборПоСегментуНоменклатуры.Номенклатура,
ОтборПоСегментуНоменклатуры.Характеристика
ИЗ
ОтборПоСегментуНоменклатуры
ГДЕ
ОтборПоСегментуНоменклатуры.ИспользуетсяОтборПоСегментуНоменклатуры = &ИспользуетсяОтборПоСегментуНоменклатуры)), ((Номенклатура, Характеристика, Серия) В
(ВЫБРАТЬ
ОтборПоПересчетуТоваров.Номенклатура,
ОтборПоПересчетуТоваров.Характеристика,
ОтборПоПересчетуТоваров.Серия
ИЗ
ОтборПоПересчетуТоваров
ГДЕ
ОтборПоПересчетуТоваров.ИспользуетсяОтборПоПересчетуТоваров = &ИспользуетсяОтборПоПересчетуТоваров))}) КАК ТоварыНаСкладахОстаткиИОбороты
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатурыПоставщиков.СрезПоследних КАК ЦеныНоменклатурыПоставщиковСрезПоследних
ПО ТоварыНаСкладахОстаткиИОбороты.Номенклатура = ЦеныНоменклатурыПоставщиковСрезПоследних.Номенклатура
И ТоварыНаСкладахОстаткиИОбороты.Характеристика = ЦеныНоменклатурыПоставщиковСрезПоследних.Характеристика
{ГДЕ
ТоварыНаСкладахОстаткиИОбороты.Номенклатура.*,
ТоварыНаСкладахОстаткиИОбороты.Характеристика.*,
ТоварыНаСкладахОстаткиИОбороты.Номенклатура.ЕдиницаИзмерения.*,
ТоварыНаСкладахОстаткиИОбороты.Номенклатура.ЕдиницаДляОтчетов.*,
ТоварыНаСкладахОстаткиИОбороты.Серия.*,
ТоварыНаСкладахОстаткиИОбороты.Склад.*,
ТоварыНаСкладахОстаткиИОбороты.Помещение.*,
(ВЫБОР
КОГДА ТоварыНаСкладахОстаткиИОбороты.Регистратор = НЕОПРЕДЕЛЕНО
ТОГДА NULL
ИНАЧЕ ТоварыНаСкладахОстаткиИОбороты.Регистратор
КОНЕЦ).* КАК Регистратор,
ТоварыНаСкладахОстаткиИОбороты.ПериодСекунда,
ТоварыНаСкладахОстаткиИОбороты.ПериодДень,
ТоварыНаСкладахОстаткиИОбороты.ПериодНеделя,
ТоварыНаСкладахОстаткиИОбороты.ПериодДекада,
ТоварыНаСкладахОстаткиИОбороты.ПериодМесяц,
ТоварыНаСкладахОстаткиИОбороты.ПериодКвартал,
ТоварыНаСкладахОстаткиИОбороты.ПериодГод,
(ВЫБОР
КОГДА &ЕдиницыКоличества = 0
ТОГДА ТоварыНаСкладахОстаткиИОбороты.ВНаличииНачальныйОстаток
КОГДА &ЕдиницыКоличества = 1
ТОГДА ВЫБОР
КОГДА ТоварыНаСкладахОстаткиИОбороты.Номенклатура.КоэффициентЕдиницыДляОтчетов <> 0
ТОГДА ТоварыНаСкладахОстаткиИОбороты.ВНаличииНачальныйОстаток / ТоварыНаСкладахОстаткиИОбороты.Номенклатура.КоэффициентЕдиницыДляОтчетов
ИНАЧЕ 0
КОНЕЦ
КОНЕЦ) КАК НачальныйОстаток,
(ВЫБОР
КОГДА &ЕдиницыКоличества = 0
ТОГДА ТоварыНаСкладахОстаткиИОбороты.ВНаличииКонечныйОстаток
КОГДА &ЕдиницыКоличества = 1
ТОГДА ВЫБОР
КОГДА ТоварыНаСкладахОстаткиИОбороты.Номенклатура.КоэффициентЕдиницыДляОтчетов <> 0
ТОГДА ТоварыНаСкладахОстаткиИОбороты.ВНаличииКонечныйОстаток / ТоварыНаСкладахОстаткиИОбороты.Номенклатура.КоэффициентЕдиницыДляОтчетов
ИНАЧЕ 0
КОНЕЦ
КОНЕЦ) КАК КонечныйОстаток,
(ВЫБОР
КОГДА &ЕдиницыКоличества = 0
ТОГДА ТоварыНаСкладахОстаткиИОбороты.ВНаличииПриход
КОГДА &ЕдиницыКоличества = 1
ТОГДА ВЫБОР
КОГДА ТоварыНаСкладахОстаткиИОбороты.Номенклатура.КоэффициентЕдиницыДляОтчетов <> 0
ТОГДА ТоварыНаСкладахОстаткиИОбороты.ВНаличииПриход / ТоварыНаСкладахОстаткиИОбороты.Номенклатура.КоэффициентЕдиницыДляОтчетов
ИНАЧЕ 0
КОНЕЦ
КОНЕЦ) КАК Приход,
(ВЫБОР
КОГДА &ЕдиницыКоличества = 0
ТОГДА ТоварыНаСкладахОстаткиИОбороты.ВНаличииРасход
КОГДА &ЕдиницыКоличества = 1
ТОГДА ВЫБОР
КОГДА ТоварыНаСкладахОстаткиИОбороты.Номенклатура.КоэффициентЕдиницыДляОтчетов <> 0
ТОГДА ТоварыНаСкладахОстаткиИОбороты.ВНаличииРасход / ТоварыНаСкладахОстаткиИОбороты.Номенклатура.КоэффициентЕдиницыДляОтчетов
ИНАЧЕ 0
КОНЕЦ
КОНЕЦ) КАК Расход,
(ВЫБОР
КОГДА &ЕдиницыКоличества = 0
ТОГДА ТоварыНаСкладахОстаткиИОбороты.КОтгрузкеНачальныйОстаток
КОГДА &ЕдиницыКоличества = 1
ТОГДА ВЫБОР
КОГДА ТоварыНаСкладахОстаткиИОбороты.Номенклатура.КоэффициентЕдиницыДляОтчетов <> 0
ТОГДА ТоварыНаСкладахОстаткиИОбороты.КОтгрузкеНачальныйОстаток / ТоварыНаСкладахОстаткиИОбороты.Номенклатура.КоэффициентЕдиницыДляОтчетов
ИНАЧЕ 0
КОНЕЦ
КОНЕЦ) КАК КОтгрузкеНачальныйОстаток,
(ВЫБОР
КОГДА &ЕдиницыКоличества = 0
ТОГДА ТоварыНаСкладахОстаткиИОбороты.КОтгрузкеКонечныйОстаток
КОГДА &ЕдиницыКоличества = 1
ТОГДА ВЫБОР
КОГДА ТоварыНаСкладахОстаткиИОбороты.Номенклатура.КоэффициентЕдиницыДляОтчетов <> 0
ТОГДА ТоварыНаСкладахОстаткиИОбороты.КОтгрузкеКонечныйОстаток / ТоварыНаСкладахОстаткиИОбороты.Номенклатура.КоэффициентЕдиницыДляОтчетов
ИНАЧЕ 0
КОНЕЦ
КОНЕЦ) КАК КОтгрузкеКонечныйОстаток,
(ВЫБОР
КОГДА &ЕдиницыКоличества = 0
ТОГДА ТоварыНаСкладахОстаткиИОбороты.КОтгрузкеПриход
КОГДА &ЕдиницыКоличества = 1
ТОГДА ВЫБОР
КОГДА ТоварыНаСкладахОстаткиИОбороты.Номенклатура.КоэффициентЕдиницыДляОтчетов <> 0
ТОГДА ТоварыНаСкладахОстаткиИОбороты.КОтгрузкеПриход / ТоварыНаСкладахОстаткиИОбороты.Номенклатура.КоэффициентЕдиницыДляОтчетов
ИНАЧЕ 0
КОНЕЦ
КОНЕЦ) КАК КОтгрузкеПриход,
(ТоварыНаСкладахОстаткиИОбороты.ВНаличииНачальныйОстаток * &ТекстЗапросаВесНоменклатуры) КАК НачальныйОстатокВес,
(ТоварыНаСкладахОстаткиИОбороты.ВНаличииКонечныйОстаток * &ТекстЗапросаВесНоменклатуры) КАК КонечныйОстатокВес,
(ТоварыНаСкладахОстаткиИОбороты.ВНаличииПриход * &ТекстЗапросаВесНоменклатуры) КАК ПриходВес,
(ТоварыНаСкладахОстаткиИОбороты.ВНаличииРасход * &ТекстЗапросаВесНоменклатуры) КАК РасходВес,
(ТоварыНаСкладахОстаткиИОбороты.ВНаличииНачальныйОстаток * &ТекстЗапросаОбъемНоменклатуры) КАК НачальныйОстатокОбъем,
(ТоварыНаСкладахОстаткиИОбороты.ВНаличииКонечныйОстаток * &ТекстЗапросаОбъемНоменклатуры) КАК КонечныйОстатокОбъем,
(ТоварыНаСкладахОстаткиИОбороты.ВНаличииПриход * &ТекстЗапросаОбъемНоменклатуры) КАК ПриходОбъем,
(ТоварыНаСкладахОстаткиИОбороты.ВНаличииРасход * &ТекстЗапросаОбъемНоменклатуры) КАК РасходОбъем,
(ТоварыНаСкладахОстаткиИОбороты.КОтгрузкеНачальныйОстаток * &ТекстЗапросаВесНоменклатуры) КАК КОтгрузкеНачальныйОстатокВес,
(ТоварыНаСкладахОстаткиИОбороты.КОтгрузкеКонечныйОстаток * &ТекстЗапросаВесНоменклатуры) КАК КОтгрузкеКонечныйОстатокВес,
(ТоварыНаСкладахОстаткиИОбороты.КОтгрузкеПриход * &ТекстЗапросаВесНоменклатуры) КАК КОтгрузкеПриходВес,
(ТоварыНаСкладахОстаткиИОбороты.КОтгрузкеНачальныйОстаток * &ТекстЗапросаОбъемНоменклатуры) КАК КОтгрузкеНачальныйОстатокОбъем,
(ТоварыНаСкладахОстаткиИОбороты.КОтгрузкеКонечныйОстаток * &ТекстЗапросаОбъемНоменклатуры) КАК КОтгрузкеКонечныйОстатокОбъем,
(ТоварыНаСкладахОстаткиИОбороты.КОтгрузкеПриход * &ТекстЗапросаОбъемНоменклатуры) КАК КОтгрузкеПриходОбъем}