Перестал работать или не работает метод ПоискПоНомеру 1С 8.2/8.3 - Программист 1С Минск. Автоматизация бизнеса.

Перейти к контенту

Перестал работать или не работает метод ПоискПоНомеру 1С 8.2/8.3

Данные > Статьи и инструкции > Программирование
 
 
Отчёт всегда работал! И вдруг ошибка: Документ не найден! А он есть…  Эта проблема обычно возникает, когда в документе, по которому происходит поиск, мы поменяли периодичность. Дело в том, что в методе НайтиПоНомеру(<НомерДокумента>-обязательный параметр, <ДатаИнтервала> - необязательный параметр, если периодичность: Непериодически и обязательный параметр, если периодичность: В пределах года, месяца, квартала, дня)

Решение проблемы: Всё, что нужно сделать, это добавить в параметры дату, в пределах периодичности которой будет происходить поиск документов. Например: Если периодичность документа установлена - "В пределах года". Дата в параметре = '21.07.2015', то отбор будет осуществляться за весь 2015 год.
Код "До" в 1С 8.3:
Процедура ТабличнаяЧасть1НомерПриИзменении(Элемент)
    Если
документы.ТТН_Расход.НайтиПоНомеру(ЭлементыФормы.ТабличнаяЧасть1.ТекущиеДанные.Номер)<>документы.ТТН_Расход.ПустаяСсылка() тогда
       
ЭлементыФормы.ТабличнаяЧасть1.ТекущиеДанные.Документ=
       
документы.ТТН_Расход.НайтиПоНомеру(ЭлементыФормы.ТабличнаяЧасть1.ТекущиеДанные.Номер);
       
ВвестиЧисло(ЭлементыФормы.ТабличнаяЧасть1.ТекущиеДанные.Количество, "Введите количество документов", 3, 0);
       
ЭлементыФормы.ТабличнаяЧасть1.ТекущиеДанные.Дата=
       
ЭлементыФормы.ТабличнаяЧасть1.ТекущиеДанные.Документ.Дата;
    ИначеЕсли
       
документы.ТТН_Приход.НайтиПоНомеру(ЭлементыФормы.ТабличнаяЧасть1.ТекущиеДанные.Номер)<>документы.ТТН_Приход.ПустаяСсылка() тогда
       
ЭлементыФормы.ТабличнаяЧасть1.ТекущиеДанные.Документ=
       
документы.ТТН_Приход.НайтиПоНомеру(ЭлементыФормы.ТабличнаяЧасть1.ТекущиеДанные.Номер);
       
ВвестиЧисло(ЭлементыФормы.ТабличнаяЧасть1.ТекущиеДанные.Количество, "Введите количество документов", 3, 0);
       
ЭлементыФормы.ТабличнаяЧасть1.ТекущиеДанные.Дата=
       
ЭлементыФормы.ТабличнаяЧасть1.ТекущиеДанные.Документ.Дата;
    Иначе
       
Сообщить("Документа с таким номером не обнаружено!");
    КонецЕсли;
КонецПроцедуры
Код "После" в 1С 8.3:
Процедура ТабличнаяЧасть1НомерПриИзменении(Элемент)
    Если
документы.ТТН_Расход.НайтиПоНомеру(ЭлементыФормы.ТабличнаяЧасть1.ТекущиеДанные.Номер,Дата)<>документы.ТТН_Расход.ПустаяСсылка() тогда
       
ЭлементыФормы.ТабличнаяЧасть1.ТекущиеДанные.Документ=
       
документы.ТТН_Расход.НайтиПоНомеру(ЭлементыФормы.ТабличнаяЧасть1.ТекущиеДанные.Номер,Дата);
       
ВвестиЧисло(ЭлементыФормы.ТабличнаяЧасть1.ТекущиеДанные.Количество, "Введите количество документов", 3, 0);
       
ЭлементыФормы.ТабличнаяЧасть1.ТекущиеДанные.Дата=
       
ЭлементыФормы.ТабличнаяЧасть1.ТекущиеДанные.Документ.Дата;
    ИначеЕсли
       
документы.ТТН_Приход.НайтиПоНомеру(ЭлементыФормы.ТабличнаяЧасть1.ТекущиеДанные.Номер,Дата)<>документы.ТТН_Приход.ПустаяСсылка() тогда
       
ЭлементыФормы.ТабличнаяЧасть1.ТекущиеДанные.Документ=
       
документы.ТТН_Приход.НайтиПоНомеру(ЭлементыФормы.ТабличнаяЧасть1.ТекущиеДанные.Номер,Дата);
       
ВвестиЧисло(ЭлементыФормы.ТабличнаяЧасть1.ТекущиеДанные.Количество, "Введите количество документов", 3, 0);
       
ЭлементыФормы.ТабличнаяЧасть1.ТекущиеДанные.Дата=
       
ЭлементыФормы.ТабличнаяЧасть1.ТекущиеДанные.Документ.Дата;
    Иначе
       
Сообщить("Документа с таким номером за "+СокрЛП(Формат(Дата,"ДФ=""гггг"""))+" год не обнаружено!");
    КонецЕсли;
КонецПроцедуры
Если Вы хотите заказать абонентское обслуживание или прочие услуги Вашей 1С. Пожалуйста, ознакомьтесь с прайс-листом и оформите заявку через контактную форму.
0
комментарии
____________________
Copyright©, «Программист 1С в г.Минске», 21.07.2015
Перепечатка текста и фотографий разрешена при наличии прямой ссылки на источник
Яндекс.Метрика
Защищенное соединение ssl
visa
mastercard
Maestro
Яндекс деньги
Назад к содержимому