Имя: Пароль:
1C
1С v8
Ошибка: Переменная не определена (СкладОтветственногоХранения)
0 Lovchiy
 
23.01.19
22:46
Добрый вечер! При работе с 1С не понятно как, появилась ошибка:

{Справочник.Склады.МодульОбъекта(196,25)}: Переменная не определена (СкладОтветственногоХранения)
    Если Не ЭтоГруппа И НЕ <<?>>СкладОтветственногоХранения Тогда

Подскажите неопытному пользователю как исправить?
Заранее спасибо!
1 palsergeich
 
23.01.19
22:47
Посмотри ранее по коду где еще используется СкладОтветственногоХранения
2 Lovchiy
 
23.01.19
22:54
(1) Вот что нашел:
Процедура УстановитьЗначениеФОИспользоватьОтветственноеХранение()
    
    УстановитьПривилегированныйРежим(Истина);
    
    ЗначениеОпции = Константы.ИспользоватьОтветственноеХранение.Получить();
    
    Запрос = Новый Запрос("
    |ВЫБРАТЬ ПЕРВЫЕ 1
    |    ИСТИНА КАК ЕстьОтвСклад
    |ИЗ
    |    Справочник.Склады КАК Склады
    |ГДЕ
    |    Склады.СкладОтветственногоХранения");
    
    РезультатЗапроса = Запрос.Выполнить();
    
    Если РезультатЗапроса.Пустой() = ЗначениеОпции Тогда
        Константы.ИспользоватьОтветственноеХранение.Установить(НЕ ЗначениеОпции);
    КонецЕсли;
    
КонецПроцедуры
3 Lovchiy
 
23.01.19
22:57
(1) Вот код еще ранее:

Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты)
    МассивНепроверяемыхРеквизитов = Новый Массив;

    Если Не ЭтоГруппа Тогда
        
        Если (ТипСклада <> Перечисления.ТипыСкладов.РозничныйМагазин
            Или ЗначениеЗаполнено(РозничныйВидЦены) ) Тогда
            
            МассивНепроверяемыхРеквизитов.Добавить("РозничныйВидЦены");
        КонецЕсли;
        
        МассивНепроверяемыхРеквизитов.Добавить("Подразделение");
        
        МассивНепроверяемыхРеквизитов.Добавить("ВыборГруппы");
        
    Иначе
        
        ПроверитьКорректностьВыбораГруппыРодителя(Отказ);
        
    КонецЕсли;
    
    Если Не ЭтоГруппа И НЕ СкладОтветственногоХранения Тогда
        МассивНепроверяемыхРеквизитов.Добавить("ВидПоклажедержателя");
        МассивНепроверяемыхРеквизитов.Добавить("Поклажедержатель");
    КонецЕсли;
    
    ОбщегоНазначения.УдалитьНепроверяемыеРеквизитыИзМассива(ПроверяемыеРеквизиты, МассивНепроверяемыхРеквизитов);
    
КонецПроцедуры
4 palsergeich
 
23.01.19
23:08
Посмотри в реквизите объекта есть ли реквизит СкладОтветственногоХранения и какой у него тип?
5 palsergeich
 
23.01.19
23:09
У справочника Склад есть ли реквизит СкладОтветственногоХранения и какой тип у него?
6 palsergeich
 
23.01.19
23:10
Есть 2 варианта:
1) удалили этот реквизит.
2) Сделали его составным типом
7 palsergeich
 
23.01.19
23:12
https://yadi.sk/i/SEiYmZjDE7Mp6g вот как должно быть
8 palsergeich
 
23.01.19
23:15
Переменная не определена - Скорее всего такого реквизита нет в справочнике
9 Lovchiy
 
23.01.19
23:19
10 palsergeich
 
23.01.19
23:20
(9) Просто добавь этот реквизит.
Ничего не сломается.
См мой скриншот и сделай так же.
11 palsergeich
 
23.01.19
23:21
(9) Может дрогнула рука и его случайно удалили
12 Lovchiy
 
23.01.19
23:28
(11) Сейчас попробую создать. Последнее, что делали, это перенесли файловую базу на другой комп методом копирования папки с базой.
13 Lovchiy
 
23.01.19
23:36
(10) Реквизит добавил, кое что изменилось:

1. Склады могу редактировать
2. Могу скопировать склад
3. Когда создаю новый склад, через "Создать", вижу ошибку:

{Справочник.Склады.МодульОбъекта(165)}: Метод объекта не обнаружен (ЕстьВидНоменклатурыТребующийОбязательностиОрдернойСхемыПоИзлишкамНедостачам)
        Если НоменклатураСервер.ЕстьВидНоменклатурыТребующийОбязательностиОрдернойСхемыПоИзлишкамНедостачам() Тогда
14 palsergeich
 
23.01.19
23:37
(13) а вот это уже плохо
15 Lovchiy
 
23.01.19
23:39
(14) я так понимаю, проблема в каком-то виде номенклатуры?
16 palsergeich
 
23.01.19
23:40
Нет проблема в том, что нет функции в модуле.
Проблема только со складами?
Старая база осталась?
переносили давно?
17 Lovchiy
 
23.01.19
23:42
(16) недавно, точно есть старая рез. копия, могу ее отдельно восстановить.
18 palsergeich
 
23.01.19
23:46
Вариант 1 - делаешь так:
https://yadi.sk/i/pWOEaIF68p9RYQ
https://yadi.sk/i/dqRfeUW1uV_qqw
и потом анализируешь.
Вариант 2. Если потеря данных не принципиальна:
В старой базе делаешь так https://yadi.sk/i/uNYHAMf23_q70w
В новой (проблемной) https://yadi.sk/i/63O7jrBiXiL9nA
Но на всякий случай с проблемной базы сними бекап
19 palsergeich
 
23.01.19
23:47
+ никогда не используй динамические обновления
заобно посмотри в старой базе есть ли этот реквизит (5)
20 Lovchiy
 
23.01.19
23:55
(18) В старой аналогичная ситуация, скорее всего проблема давняя, просто заметил сегодня, буду искать еще старее бэкапы.
21 palsergeich
 
24.01.19
00:10
(20) Сравни объедини и из конфы поставщика просто вставь недостающий функционал
22 palsergeich
 
24.01.19
00:11
(18) Вариант 1
23 Lovchiy
 
24.01.19
00:16
(22) Спасибо! Буду пробовать
24 Lovchiy
 
24.01.19
00:26
(22) Повезло найти старый бэк, там все работает, займусь первым вариантом. Я так понимаю, его открыть в основной базе и сравнить/объединить со старой?
25 palsergeich
 
24.01.19
00:39
(24)
Или выгрузить CF в старой https://yadi.sk/i/4xlJwfyXssB9pg и сравнить его с новой.
Или сделать (18) вариант 1 по скриншотам.
26 palsergeich
 
24.01.19
00:39
Просто старая база может быть другого релиза и пойдут проблемы.
Сравнение с конфой поставщика - предпоччтительнее
27 Lovchiy
 
24.01.19
00:42
(26) проблема в самой конфигурации? А если просто загрузить свежую конфигурацию? База то сохранится.
28 palsergeich
 
24.01.19
00:48
(27) Не надо так.
Только через сравнение объединение
29 Lovchiy
 
24.01.19
01:38
(28) Объединил два модуля https://www.screencast.com/t/er2Wcynj7, заработало, ошибок по складам нет. Спасибо!

Вопрос второй, можно ли таким образом исправить ошибку https://www.screencast.com/t/hZHap6F3haKN
Которая возникает при нажатии кнопки "Из присоединенных файлов" в карточке номенклатуры? Подозреваю, что там тоже что-то удалилось.