«Книги» (форма списка) анықтамалығы
«Книги» анықтамалығының экрандық формасы келесі түрде болуы қажет:
Сурет 61 –«Произведения» анықтамалығының кестелік формасы
«Выдача книги» құжаты
Құжаттың экрандық формасы келесідегідей болады:
Сурет 62 –«Выдача книги» анықтамалығының кестелік формасы
Форманың модулін «Мини-библиотека» конфигурациясынан қараңыз.
Өткізу модулі:
Процедура ОбработкаПроведения()
СпрКниги = создатьОбъект("Справочник.Книги");
ВыбратьСтроки();
Пока ПолучитьСтроку()=1 Цикл
СпрКниги.НайтиЭлемент(Книга);
СпрКниги.Статус = Перечисление.СтатусКниги.Выдана;
СпрКниги.Читатель = Читатель;
СпрКниги.ДатаВыдачи = ДатаДок;
СпрКниги.СрокВозврата = СрокВозврата;
СпрКниги.Записать();
КонецЦикла;
КонецПроцедуры
«Продление книги» құжаты
Құжаттың экрандық формасы келесідегідей болады:
Сурет 63 –«Продление книги» құжатының кестелік формасы
Форманың модулін «Мини-библиотека» конфигурациясынан қараңыз.
Өткізу модулі:
Процедура ОбработкаПроведения()
СпрКниги = создатьОбъект("Справочник.Книги");
ВыбратьСтроки();
Пока ПолучитьСтроку()=1 Цикл
Если Число(НовыйСрокВозврата)<>0 Тогда
СпрКниги.НайтиЭлемент(Книга);
СпрКниги.СрокВозврата = НовыйСрокВозврата;
СпрКниги.Записать();
КонецЕсли;
КонецЦикла;
КонецПроцедуры
«Возврат книги» құжаты
Құжаттың экрандық формасы келесідегідей болады:
Сурет 64 –«Возврат книги» құжатының кестелік формасы
Форманың модулін «Мини-библиотека» конфигурациясынан қараңыз.
Өткізу формасы:
Процедура ОбработкаПроведения()
СпрКниги = создатьОбъект("Справочник.Книги");
СпрЧитатели = СоздатьОбъект("Справочник.Читатели");
ВыбратьСтроки();
Пока ПолучитьСтроку()=1 Цикл
СпрКниги.НайтиЭлемент(Книга);
Если СпрКниги.СрокВозврата < ДатаДок Тогда
СпрЧитатели.НайтиЭлемент(Читатель);
СпрЧитатели.КоличествоПредупреждений = СпрЧитатели.КоличествоПредупреждений + 1;
СпрЧитатели.Записать();
Если СпрЧитатели.КоличествоПредупреждений > Константа.МаксКолвоПредупреждений Тогда
УстановитьРеквизитСправочника(Читатель, "Блокирован",Перечисление.ДаНет.Да, ДатаДок);
УстановитьРеквизитСправочника(Читатель, "Блокирован",Перечисление.ДаНет.Нет, ДатаДок + Константа.КолвоДнейБлокировки);
КонецЕсли;
КонецЕсли;
СпрКниги.Статус = Перечисление.СтатусКниги.Свободна;
СпрКниги.Читатель = 0;
СпрКниги.ДатаВыдачи = 0;
СпрКниги.СрокВозврата = 0;
СпрКниги.Записать();
КонецЦикла;
КонецПроцедуры
«Потеря книги» құжаты
Құжаттың экрандық формасы келесідегідей болады:
Сурет 65 –«Потеря книги» құжатының экрандық формасы
Форманың модулін «Мини-библиотека» конфигурациясынан қараңыз.
Өткізу модулі:
Процедура ОбработкаПроведения()
СпрКниги = создатьОбъект("Справочник.Книги");
ВыбратьСтроки();
Пока ПолучитьСтроку()=1 Цикл
СпрКниги.НайтиЭлемент(Книга);
СпрКниги.Статус = Перечисление.СтатусКниги.Списана;
СпрКниги.Читатель = 0;
СпрКниги.ДатаВыдачи = 0;
СпрКниги.СрокВозврата = 0;
СпрКниги.Записать();
КонецЦикла;
УстановитьРеквизитСправочника(Читатель, "Блокирован", Перечисление.ДаНет.Да, ДатаДок);
УстановитьРеквизитСправочника(Читатель, "Блокирован", Перечисление.ДаНет.Нет, ДатаДок + Константа.КолвоДнейБлокировки);
КонецПроцедуры
«Библиотечная выписка» есебі
Есеп диалогінің экрандық формасы келесідей болады:
Сурет 66 –«Библиотечная выписка» құжатының экрандық формасы
Есептің жұмыс жасау мысалы:
Сурет 67 –«Библиотечная выписка» құжатының соңғы экрандық формасы
Форманың модулін «Мини-библиотека» конфигурациясынан қараңыз.
Достарыңызбен бөлісу: |