![]() |
![]() |
![]() |
|
Откуда ошибка? | ☑ | ||
---|---|---|---|---|
0
vqwy
07.08.12
✎
21:11
|
УТ 10.3 слегка дописана (не мной), вт.ч. новые роли.
Проводим документ Отчет о розничных продажах (права в роли на этот документ и связанные регистры даны в роли все). Если провести его временем до 12:18:00, то проводится Если более поздним, то пишет сообщение: Ошибка при выполнении обработчика - 'ОбработкаПроведения' по причине: {ОбщийМодуль.УправлениеЗапасамиПартионныйУчет.Модуль(5008)}: Ошибка при вызове метода контекста (Выполнить) по причине: Ошибка выполнения запроса по причине: У пользователя недостаточно прав на исполнение операции над базой данных. Кодер из меня пока(?) не айс, так что прошу подсказать, за что зацепиться. |
|||
1
Анатоль
07.08.12
✎
21:13
|
(0) смотреть запрос, который выполняется в {ОбщийМодуль.УправлениеЗапасамиПартионныйУчет.Модуль(5008)} и таблицы, которые участвуют в запросе. Потом смотреть права на каждую таблицу по доступным ролям
|
|||
2
vqwy
07.08.12
✎
21:13
|
а по времени почему такая борода?
|
|||
3
Анатоль
07.08.12
✎
21:15
|
(3) может оперативность проведения?
|
|||
4
vqwy
07.08.12
✎
21:16
|
что именно с ней не так может быть??
|
|||
5
Пеппи
07.08.12
✎
21:22
|
при оперативном проведении проверяются остатки, может не на все регистры даны права
|
|||
6
vqwy
07.08.12
✎
21:25
|
проведение неоперативное
|
|||
7
Пеппи
07.08.12
✎
21:31
|
может подробнее, мы знаем только про время а про даты проведения ничего.
|
|||
8
hhhh
07.08.12
✎
21:33
|
(6) ну может там условие на дату, и подключается какая нибудь доп. таблица. запрос в студию
|
|||
9
vqwy
07.08.12
✎
21:40
|
Ругается на этот запрос
Запрос = Новый Запрос; ОсновнойДокумент = Неопределено; СтруктураПараметров.Свойство("ОсновнойДокумент",ОсновнойДокумент); Регистратор = СтруктураПараметров.Регистратор; СпособОценкиМПЗ = СтруктураПараметров.СпособОценкиМПЗУпр; СтратегияСтатусПартии = СтруктураПараметров.СтратегияСтатусПартииУпр; ВестиПартионныйУчетПоСкладам = СтруктураПараметров.ВестиПартионныйУчетПоСкладамУпр; // Для повышения быстродействия остатки партий получаются различными способами Если СтруктураПараметров.Свойство("ЗакрытиеЗаказовПокупателей") Тогда ЗаполнитьЗапросПартийНаСкладахДляЗакрытияЗаказовПокупателей(Запрос); ИначеЕсли ОсновнойДокумент <> Неопределено И НЕ СтруктураПараметров.СписыватьПартииРасходнымОрдером И ТипЗнч(ОсновнойДокумент) = Тип("ДокументСсылка.РеализацияТоваровУслуг")тогда // Списание расходным ордером товара реализованного и принятого на ответственное хранение (отложенная отгрузка) ЗаполнитьЗапросПартийНаСкладахДляОтложеннойОтгрузкиУпр(Запрос, ВестиПартионныйУчетПоСкладам); ИначеЕсли ОсновнойДокумент <> Неопределено тогда // Списание партий по ордерной схеме: // - Списание партий по расходному ордеру // - Перемещение партий по приходному ордеру // - Перемещение партий поступлением товаров и услуг в НТТ // Движения реализации выполняет расходный ордер, движения перемещения выполняет приходный ордер ЗаполнитьЗапросПартийНаСкладахДляСписанияПоОрдернойСхемеУпр(Запрос, ВестиПартионныйУчетПоСкладам, СтратегияСтатусПартии, СпособОценкиМПЗ); Иначе // Общий случай списания ЗаполнитьЗапросПартийНаСкладахУпр(Запрос, ВестиПартионныйУчетПоСкладам, СтратегияСтатусПартии, СпособОценкиМПЗ); Если НЕ СтруктураПараметров.ИспользоватьУказаниеСерийНоменклатурыПриРезервировании тогда Запрос.Текст = СтрЗаменить(Запрос.Текст,"ИЛИ ПартииТоваровНаСкладах.СерияНоменклатуры = &ПустаяСерияНоменклатуры", "ИЛИ ПартииТоваровНаСкладах.СерияНоменклатуры = &ПустаяСерияНоменклатуры |ИЛИ СписанныеТовары.КодОперацииПартииТоваров = &КодРезервирование"); Запрос.УстановитьПараметр("КодРезервирование" , СтруктураПараметров.КодыОпераций.РезервированиеПодЗаказ) КонецЕсли; КонецЕсли; Запрос.УстановитьПараметр("ПустаяСерияНоменклатуры", Справочники.СерииНоменклатуры.ПустаяСсылка()); Запрос.УстановитьПараметр("ПустойЗаказ", Документы.ЗаказПокупателя.ПустаяСсылка()); Запрос.УстановитьПараметр("ПустойСтатус", Перечисления.СтатусыПартийТоваров.ПустаяСсылка()); Запрос.УстановитьПараметр("СтатусПартииПоОрдеру", Перечисления.СтатусыПартийТоваров.ПоОрдеру); Запрос.УстановитьПараметр("ПустоеКачество", Справочники.Качество.ПустаяСсылка()); Запрос.УстановитьПараметр("КачествоНовый", Справочники.Качество.Новый); Запрос.УстановитьПараметр("ПустойСклад", Справочники.Склады.ПустаяСсылка()); Запрос.УстановитьПараметр("Ссылка", Регистратор); Если ОсновнойДокумент <> Неопределено Тогда Запрос.УстановитьПараметр("ОсновнойДокумент", ОсновнойДокумент); Иначе Запрос.УстановитьПараметр("ОсновнойДокумент", Регистратор); КонецЕсли; Запрос.УстановитьПараметр("Дат", МоментКон); Запрос.УстановитьПараметр("НаКомиссию", Перечисления.СтатусыПартийТоваров.НаКомиссию); Возврат Запрос.Выполнить().Выгрузить(ОбходРезультатаЗапроса.ПоГруппировкам); КонецФункции//ПолучитьДеревоПартийНаСкладахУпр Процедура ЗаполнитьЗапросПартийНаСкладахУпр(Запрос, ВестиПартионныйУчетПоСкладам, СтратегияСтатусПартии, СпособОценкиМПЗ) Запрос.Текст = "ВЫБРАТЬ | СписанныеТовары.НомерСтрокиДокумента КАК НомерСтрокиДокумента, | ПартииТоваровНаСкладах.Номенклатура, | ПартииТоваровНаСкладах.ДокументОприходования КАК ДокументОприходования, | ПартииТоваровНаСкладах.ДокументОприходования.Дата КАК ДокументОприходованияДата, | ПартииТоваровНаСкладах.Склад, | ПартииТоваровНаСкладах.ХарактеристикаНоменклатуры, | ПартииТоваровНаСкладах.СерияНоменклатуры, | ПартииТоваровНаСкладах.Качество, | ПартииТоваровНаСкладах.Заказ, | ПартииТоваровНаСкладах.КоличествоОстаток КАК Количество, | ПартииТоваровНаСкладах.СтоимостьОстаток КАК Стоимость, | ПартииТоваровНаСкладах.СтатусПартии, | ВЫБОР | КОГДА СписанныеТовары.СерияНоменклатуры = ПартииТоваровНаСкладах.СерияНоменклатуры | ТОГДА 0 | ИНАЧЕ 1 | КОНЕЦ КАК ЧислоСерияНоменклатуры, | ВЫБОР | КОГДА СписанныеТовары.ДокументПартии = НЕОПРЕДЕЛЕНО | ТОГДА 0 | ИНАЧЕ ВЫБОР | КОГДА СписанныеТовары.ДокументПартии = ПартииТоваровНаСкладах.ДокументОприходования | ТОГДА 0 | ИНАЧЕ 1 | КОНЕЦ | КОНЕЦ КАК ЧислоДокументОприходования, | ВЫБОР | КОГДА СписанныеТовары.ЗаказПартии = НЕОПРЕДЕЛЕНО | ТОГДА 0 | ИНАЧЕ ВЫБОР | КОГДА ПартииТоваровНаСкладах.Заказ = &ПустойЗаказ | ТОГДА 1 | ИНАЧЕ 0 | КОНЕЦ | КОНЕЦ КАК ЧислоЗаказ, | ВЫБОР | КОГДА ПартииТоваровНаСкладах.СтатусПартии = &НаКомиссию | ТОГДА 1 | ИНАЧЕ 0 | КОНЕЦ КАК ЧислоСтатусПартии |ИЗ | РегистрСведений.СписанныеТовары КАК СписанныеТовары | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.ПартииТоваровНаСкладах.Остатки( | &Дат, | Номенклатура В | (ВЫБРАТЬ | РегистрСведений.СписанныеТовары.Номенклатура | ИЗ | РегистрСведений.СписанныеТовары | ГДЕ | РегистрСведений.СписанныеТовары.Регистратор = &Ссылка)" + ?(ВестиПартионныйУчетПоСкладам, " | И (Склад В | (ВЫБРАТЬ | РегистрСведений.СписанныеТовары.Склад | ИЗ | РегистрСведений.СписанныеТовары | ГДЕ | РегистрСведений.СписанныеТовары.Регистратор = &Ссылка) ИЛИ Склад = &ПустойСклад)", "") + ") КАК ПартииТоваровНаСкладах | ПО СписанныеТовары.Номенклатура = ПартииТоваровНаСкладах.Номенклатура | И СписанныеТовары.ХарактеристикаНоменклатуры = ПартииТоваровНаСкладах.ХарактеристикаНоменклатуры | И (ВЫБОР | КОГДА ПартииТоваровНаСкладах.Качество = &ПустоеКачество | ТОГДА ИСТИНА | ИНАЧЕ ВЫБОР | КОГДА СписанныеТовары.Качество = &ПустоеКачество | ТОГДА ПартииТоваровНаСкладах.Качество = &КачествоНовый | ИНАЧЕ ПартииТоваровНаСкладах.Качество = СписанныеТовары.Качество | КОНЕЦ | КОНЕЦ) | " + ?(ВестиПартионныйУчетПоСкладам, "И (ПартииТоваровНаСкладах.Склад = СписанныеТовары.Склад ИЛИ ПартииТоваровНаСкладах.Склад = &ПустойСклад)", "") + " | И (ВЫБОР | КОГДА СписанныеТовары.ДопустимыйСтатус1 <> &ПустойСтатус | ИЛИ СписанныеТовары.ДопустимыйСтатус2 <> &ПустойСтатус | ИЛИ СписанныеТовары.ДопустимыйСтатус3 <> &ПустойСтатус | ИЛИ СписанныеТовары.ДопустимыйСтатус4 <> &ПустойСтатус | ТОГДА ПартииТоваровНаСкладах.СтатусПартии = &ПустойСтатус | ИЛИ ПартииТоваровНаСкладах.СтатусПартии = &СтатусПартииПоОрдеру | ИЛИ ПартииТоваровНаСкладах.СтатусПартии = СписанныеТовары.ДопустимыйСтатус1 | ИЛИ ПартииТоваровНаСкладах.СтатусПартии = СписанныеТовары.ДопустимыйСтатус2 | ИЛИ ПартииТоваровНаСкладах.СтатусПартии = СписанныеТовары.ДопустимыйСтатус3 | ИЛИ ПартииТоваровНаСкладах.СтатусПартии = СписанныеТовары.ДопустимыйСтатус4 | ИНАЧЕ ИСТИНА | КОНЕЦ) | | И (ВЫБОР | КОГДА СписанныеТовары.СписыватьТолькоПоЗаказу = ИСТИНА | ТОГДА ВЫБОР | КОГДА ПартииТоваровНаСкладах.Заказ <> СписанныеТовары.ЗаказПартии | ТОГДА ВЫБОР | КОГДА (НЕ СписанныеТовары.ЗаказПартии = НЕОПРЕДЕЛЕНО) | ТОГДА ЛОЖЬ | ИНАЧЕ ПартииТоваровНаСкладах.Заказ = &ПустойЗаказ | КОНЕЦ | ИНАЧЕ ИСТИНА | КОНЕЦ | ИНАЧЕ ВЫБОР | КОГДА ПартииТоваровНаСкладах.Заказ <> СписанныеТовары.ЗаказПартии | ТОГДА ПартииТоваровНаСкладах.Заказ = &ПустойЗаказ | ИНАЧЕ ИСТИНА | КОНЕЦ | КОНЕЦ) | И (СписанныеТовары.СерияНоменклатуры = ПартииТоваровНаСкладах.СерияНоменклатуры | ИЛИ ПартииТоваровНаСкладах.СерияНоменклатуры = &ПустаяСерияНоменклатуры) |ГДЕ | СписанныеТовары.Регистратор = &ОсновнойДокумент | |УПОРЯДОЧИТЬ ПО | ЧислоСерияНоменклатуры, | ЧислоДокументОприходования, | ЧислоЗаказ, | ЧислоСтатусПартии" + ?(СтратегияСтатусПартии = Перечисления.СтретегииСписанияПартийТоваровПоСтатусам.СначалаПринятыеПотомСобственные, " Убыв", "") + ", | ДокументОприходованияДата" + ?(СпособОценкиМПЗ = "ЛИФО", " Убыв","") + ", | ДокументОприходования" + ?(СпособОценкиМПЗ = "ЛИФО", " Убыв","") + " |ИТОГИ ПО | НомерСтрокиДокумента"; КонецПроцедуры // ЗаполнитьЗапросПартийНаСкладахУпр() |
|||
10
andrewks
07.08.12
✎
21:45
|
может, выбрать разрешенные?
|
|||
11
hhhh
07.08.12
✎
21:45
|
ну вот
| ПартииТоваровНаСкладах.ДокументОприходования КАК ДокументОприходования, после 12:18 было опрходование с другим видом документа. |
|||
12
vqwy
07.08.12
✎
21:48
|
(11) всё правильно, спасибо, что помогли
реально был документ перемещения, на которые нет прав |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |