Здравствуйте!
Пришла задача на возможность закрытия смены на следующей день после открытия. Площадка 1С Предприятие 8.3, конфигурация Управление нашей фирмой.
Проблема заключается в том, что при попытке закрыть смену следующей датой модуль "Дата запрета" блокирует такую возможность. Из этого вытекает вопрос, как можно обойти данную проверку, ведь строку кода ссылающейся на данный модуль, так найти и не получилось. Прикладываю текст команды по закрытию смены.
Процедура ЗакрытьКассовуюСмену(Команда)
ОчиститьСообщения();
Если НЕ ЗначениеЗаполнено(КассаККМ) Тогда
ТекстОшибки = НСтр("ru='Выберите кассу ККМ!'");
ОбщегоНазначенияКлиент.СообщитьПользователю(
ТекстОшибки,
,
"КассаККМ"
);
Возврат;
КонецЕсли;
ПараметрыКассыККМ = УправлениеНебольшойФирмойПовтИсп.ПолучитьПараметрыКассыККМ(КассаККМ);
Если Не ПараметрыКассыККМ.СоздаватьВыемку Тогда
ЗакрытьКассовуюСменуПродолжение(Истина, Новый Структура);
Иначе
Оповещение = Новый ОписаниеОповещения("ЗакрытьКассовуюСменуПродолжение", ЭтотОбъект);
ВыемкаДенег(Неопределено, ПараметрыКассыККМ, Оповещение);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ЗакрытьКассовуюСменуПродолжение(Результат, ДополнительныеПараметры) Экспорт
ПараметрыКассыККМ = УправлениеНебольшойФирмойПовтИсп.ПолучитьПараметрыКассыККМ(КассаККМ);
ИдентификаторУстройства = ПараметрыКассыККМ.ИдентификаторУстройства;
ИспользоватьБезПодключенияОборудования = ПараметрыКассыККМ.ИспользоватьБезПодключенияОборудования;
ИДЗамера = ОценкаПроизводительностиКлиент.ЗамерВремени("РМК_ПолучитьСостояниеКассовойСменыНаСервере", Истина, Ложь);
СостояниеКассовойСмены = ПолучитьСостояниеКассовойСменыНаСервере(КассаККМ);
Если ИспользоватьАгентскиеПлатежиИРазделениеВыручки Тогда
ДополнитьСтруктуруСостоянияКассовойСмены(СостояниеКассовойСмены);
КонецЕсли;
ОценкаПроизводительностиКлиент.ЗавершитьЗамерВремени(ИДЗамера, Ложь);
Если ИспользоватьБезПодключенияОборудования Тогда
СформироватьОтчетОРозничныхПродажах(ИспользоватьБезПодключенияОборудования);
ИначеЕсли ИспользоватьПодключаемоеОборудование И ЗначениеЗаполнено(ИдентификаторУстройства) Тогда
ПараметрыОперации = МенеджерОборудованияКлиентСервер.ПараметрыОткрытияЗакрытияСмены();
РеквизитыКассира = РозничныеПродажиСервер.ПолучитьРеквизитыКассира(Объект.Автор);
Если РеквизитыКассира.ИмяКассираИДолжность <> "" Тогда
ПараметрыОперации.Кассир = РеквизитыКассира.ИмяКассираИДолжность;
ПараметрыОперации.КассирИНН = РеквизитыКассира.КассирИНН;
КонецЕсли;
Оповещение = Новый ОписаниеОповещения("ПечатьФискальногоОтчетаЗавершение", ЭтотОбъект);
МенеджерОборудованияКлиент.НачатьЗакрытиеСменыНаФискальномУстройстве(
Оповещение,
УникальныйИдентификатор,
ПараметрыОперации,
ИдентификаторУстройства,
,
СостояниеКассовойСмены.КассоваяСмена
);
КонецЕсли;
КонецПроцедуры
Для информативности ошибка ссылается на эту строку:
ЗакрытьКассовуюСменуПродолжение(Истина, Новый Структура);
И на модуль ДатаЗапрета