|   |   | 
| 
 | Преобразование значения к типу Дата не может быть выполнено при создании документа | ☑ | ||
|---|---|---|---|---|
| 0
    
        Gill 17.10.22✎ 15:18 | 
        Всем привет!
 ERP 2.5.8.267 При попытке создания документа из обработки (Меню "Финансовый результат и контроллинг" - "Распределение РБП" - "Распределить расходы") вылетает с ошибкой, при этом некоторые статьи РБП формируются без проблем. Сравнение данных в соответствующих элементах справочника "Статьи РБП" результата не дали. Ошибка при вызове метода контекста (ОткрытьФорму) {Документ.РаспределениеРасходовБудущихПериодов.Форма.ФормаСпискаДокументов.Форма(284)}: ОткрытьФорму("Документ.РаспределениеРасходовБудущихПериодов.ФормаОбъекта", СтруктураПараметры, Элементы.Список); по причине: Ошибка при выполнении обработчика - 'ОбработкаЗаполнения' по причине: {Документ.РаспределениеРасходовБудущихПериодов.МодульМенеджера(290)}: Преобразование значения к типу Дата не может быть выполнено ОткрытьФорму("Документ.РаспределениеРасходовБудущихПериодов.ФормаОбъекта", СтруктураПараметры, Элементы.Список); Отладчик закинул сюда ТУТ : Функция ПолучитьДатуВозникновенияРБП(ДанныеЗаполнения) Экспорт ТекстЗапроса = " |ВЫБРАТЬ | МАКСИМУМ(ДатыРасходов.Период) КАК Период |ИЗ | (ВЫБРАТЬ | ПрочиеРасходы.Период КАК Период | ИЗ | РегистрНакопления.ПрочиеРасходы КАК ПрочиеРасходы | ГДЕ | ПрочиеРасходы.Организация = &Организация | И ПрочиеРасходы.Подразделение = &Подразделение | И ПрочиеРасходы.НаправлениеДеятельности = &НаправлениеДеятельности | И ПрочиеРасходы.СтатьяРасходов = &СтатьяРасходов | И ПрочиеРасходы.АналитикаРасходов = &АналитикаРасходов | И ПрочиеРасходы.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход) | И ПрочиеРасходы.Активность | И ПрочиеРасходы.Период МЕЖДУ НАЧАЛОПЕРИОДА(&Период, МЕСЯЦ) И КОНЕЦПЕРИОДА(&Период, МЕСЯЦ) | | ОБЪЕДИНИТЬ ВСЕ | | ВЫБРАТЬ | СебестоимостьТоваров.Период | ИЗ | РегистрНакопления.СебестоимостьТоваров КАК СебестоимостьТоваров | ГДЕ | СебестоимостьТоваров.Организация = &Организация | И СебестоимостьТоваров.Подразделение = &Подразделение | И СебестоимостьТоваров.КорНаправлениеДеятельности = &НаправлениеДеятельности | И СебестоимостьТоваров.СтатьяРасходовСписания = &СтатьяРасходов | И СебестоимостьТоваров.АналитикаРасходов = &АналитикаРасходов | И СебестоимостьТоваров.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход) | И СебестоимостьТоваров.Активность | И СебестоимостьТоваров.Период МЕЖДУ НАЧАЛОПЕРИОДА(&Период, МЕСЯЦ) И КОНЕЦПЕРИОДА(&Период, МЕСЯЦ) | И СебестоимостьТоваров.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.СписаниеТоваровПоТребованию)) КАК ДатыРасходов"; //++ НЕ УТ Если НЕ ЗначениеЗаполнено(ДанныеЗаполнения.СтатьяРасходов) И ТипЗнч(ДанныеЗаполнения.АналитикаРасходов) = Тип("СправочникСсылка.ОбъектыВозникновенияЗатрат") Тогда ТекстЗапроса = " |ВЫБРАТЬ | МАКСИМУМ(ДатыРасходов.Период) КАК Период |ИЗ | (ВЫБРАТЬ | ПрочиеРасходы.Период КАК Период | ИЗ | РегистрНакопления.ПрочиеРасходы КАК ПрочиеРасходы | ГДЕ | ПрочиеРасходы.Организация = &Организация | И ПрочиеРасходы.Подразделение = &Подразделение | И ПрочиеРасходы.АналитикаРасходов = &АналитикаРасходов | И ПрочиеРасходы.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход) | И ПрочиеРасходы.Активность | И ПрочиеРасходы.Период МЕЖДУ НАЧАЛОПЕРИОДА(&Период, МЕСЯЦ) И КОНЕЦПЕРИОДА(&Период, МЕСЯЦ) | | ОБЪЕДИНИТЬ ВСЕ | | ВЫБРАТЬ | СебестоимостьТоваров.Период | ИЗ | РегистрНакопления.СебестоимостьТоваров КАК СебестоимостьТоваров | ГДЕ | СебестоимостьТоваров.Организация = &Организация | И СебестоимостьТоваров.Подразделение = &Подразделение | И СебестоимостьТоваров.АналитикаРасходов = &АналитикаРасходов | И СебестоимостьТоваров.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход) | И СебестоимостьТоваров.Активность | И СебестоимостьТоваров.Период МЕЖДУ НАЧАЛОПЕРИОДА(&Период, МЕСЯЦ) И КОНЕЦПЕРИОДА(&Период, МЕСЯЦ) | И СебестоимостьТоваров.ХозяйственнаяОперация = ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.СписаниеТоваровПоТребованию)) КАК ДатыРасходов"; КонецЕсли; //-- НЕ УТ Запрос = Новый Запрос; Запрос.Текст = ТекстЗапроса; ОбщегоНазначенияУТ.УстановитьПараметрыЗапроса(Запрос, ДанныеЗаполнения); Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(); Если Выборка.Следующий() Тогда Возврат НачалоДня(Выборка.Период); //ВОТ ЗДЕСЬ ВЫЛЕТАЕТ КонецЕсли; Возврат КонецМесяца(ДанныеЗаполнения.Период); КонецФункции | |||
| 1
    
        Мультук гуру 17.10.22✎ 15:41 | 
        (0) 
 Ну и что показывает в отладчике Выборка.Период NULL ? | |||
| 2
    
        alarm2020 17.10.22✎ 15:42 | 
        Классный запрос!     | |||
| 3
    
        Gill 17.10.22✎ 15:43 | 
        (1)
 Выражение Значение Тип Выборка.Период Null | |||
| 4
    
        Gill 17.10.22✎ 15:44 | 
        (2) Это из типовой     | |||
| 5
    
        kostyan29 17.10.22✎ 15:49 | 
        Выдернуть в отладчике ТекстЗапроса. Вставить в Консоль запросов. Посмотреть ДанныеЗаполнения, и из них заполнить все параметры в консоли запросов.
 Запустить запрос на выполнение и посмотреть, что там происходит, почему возвращается null | |||
| 6
    
        alarm2020 17.10.22✎ 15:50 | 
        (4) Я понимаю, что из типовой. Это вовсе не мешает ему быть классным     | |||
| 7
    
        alarm2020 17.10.22✎ 15:51 | 
        (5) Там происходит классный запрос     | |||
| 8
    
        Gill 17.10.22✎ 16:05 | 
        (5) Делал.
 Записей в результате 1, Период пусто... | |||
| 9
    
        alarm2020 17.10.22✎ 16:49 | 
        (8) Неудивительно. МАКСИМУМ от пусто и должен возвращать пусто     | |||
| 10
    
        Gill 17.10.22✎ 16:56 | 
        так всё-таки, куда рыть дальше?     | |||
| 11
    
        alarm2020 17.10.22✎ 17:09 | 
        (10) Зачем еще куда-то рыть?     | |||
| 12
    
        Gill 17.10.22✎ 19:16 | 
        (11) в чем тут подвох? Подскажите     | |||
| 13
    
        alarm2020 17.10.22✎ 19:31 | 
        (12) Ну мы же выяснили уже. Кривой запрос в типовой. Не будет у тебя работать распределение     | |||
| 14
    
        Gill 18.10.22✎ 08:39 | 
        (13) а почему работает в зависимости от выбора конкретной статьи расхода? )     | |||
| 15
    
        mikecool 18.10.22✎ 08:55 | 
        (14) все уже догадались     | |||
| 16
    
        Мультук гуру 18.10.22✎ 08:56 | 
        (14) 
 Тут два варианта 1) 1С налажала в коде. Это бывает 2) У вас какая-то ерунда в исходных данных >>а почему работает в зависимости от выбора конкретной статьи расхода? ) Потому что по одной статье движения таки есть, а по другой нужных движений по указанным отборам таки нет? | |||
| 17
    
        Gill 18.10.22✎ 09:03 | 
        (17) дело в том, что я проверил оба регистра, и удивительно, что по 2 проверяемым статьям (одна из которой срабатывает) записи есть только одном регистре (а именно "ПрочиеРасходы").Таким образом я убедился в наличии данных.     | |||
| 18
    
        Gill 18.10.22✎ 09:05 | 
        (16) Про "ерунду" в исходных данных, имеется ввиду в ДанныеЗаполнения?     | |||
| 19
    
        Мультук гуру 18.10.22✎ 09:06 | 
        (17) 
 Хорошо, статья есть, а остальные отборы ? P.S. | ГДЕ | ПрочиеРасходы.Организация = &Организация | И ПрочиеРасходы.Подразделение = &Подразделение | И ПрочиеРасходы.АналитикаРасходов = &АналитикаРасходов | И ПрочиеРасходы.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход) | И ПрочиеРасходы.Активность | И ПрочиеРасходы.Период МЕЖДУ НАЧАЛОПЕРИОДА(&Период, МЕСЯЦ) И КОНЕЦПЕРИОДА(&Период, МЕСЯЦ) | |||
| 20
    
        Gill 18.10.22✎ 09:24 | 
        (19) вот записи по 2 статьям
 https://disk.yandex.ru/i/H1PR3__h6Sn0fA https://disk.yandex.ru/i/GfH3aqFUb4kkhw | |||
| 21
    
        alarm2020 18.10.22✎ 10:41 | 
        (20) НАЧАЛОПЕРИОДА(&Период, МЕСЯЦ) И КОНЕЦПЕРИОДА(&Период, МЕСЯЦ)     | |||
| 22
    
        Gill 18.10.22✎ 11:42 | 
        (21) вот скрины из рабочей базы, записи идентичны, тем не менее такая же история
 https://disk.yandex.ru/i/sSP3yBBObg4lkg https://disk.yandex.ru/i/7oPjaEtbEFqSiQ | |||
| 23
    
        Smallrat 18.10.22✎ 12:36 | 
        (5) ОбщегоНазначения.ЗапросВСтрокуXML(Запрос)
 В консоли запросов в меню "Ещё" есть команда "Заполнить из XML" | |||
| 24
    
        kostyan29 18.10.22✎ 13:11 | 
        (23) Спасибо большое, не знал!     | |||
| 25
    
        Gill 18.10.22✎ 13:12 | 
        (23) спасибо за способ, но результаты запроса идентичны.
 Я не могу понять логику работы его в разрезе статей при одинаковых (с точки зрения заполнения) данных в регистре накопления. | |||
| 26
    
        Gill 18.10.22✎ 13:13 | 
        (24) аналогично)     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |