1С: мини-библиотека

Тема в разделе "1C и всё что с ней связано", создана пользователем gudron, 6 май 2009.

  1. gudron

    gudron Гость

    Помогите, пожалуйста, есть код на 7 версии необходимо перевести на 8 версию.

    Процедура ОбработкаПроведения()

    СпрКниги = создатьОбъект("Справочник.Книги");
    СпрЧитатели = СоздатьОбъект("Справочник.Читатели");

    ВыбратьСтроки();
    Пока ПолучитьСтроку()=1 Цикл

    СпрКниги.НайтиЭлемент(Книга);

    Если СпрКниги.СрокВозврата < ДатаДок Тогда

    СпрЧитатели.НайтиЭлемент(Читатель);
    СпрЧитатели.КоличествоПредупреждений = СпрЧитатели.КоличествоПредупреждений + 1;
    СпрЧитатели.Записать();

    Если СпрЧитатели.КоличествоПредупреждений > Константа.МаксКолвоПредупреждений Тогда

    УстановитьРеквизитСправочника(Читатель, "Блокирован",Перечисление.ДаНет.Да, ДатаДок);
    УстановитьРеквизитСправочника(Читатель, "Блокирован",Перечисление.ДаНет.Нет, ДатаДок + Константа.КолвоДнейБлокировки);

    КонецЕсли;

    КонецЕсли;

    СпрКниги.Статус = Перечисление.СтатусКниги.Свободна;
    СпрКниги.Читатель = 0;
    СпрКниги.ДатаВыдачи = 0;
    СпрКниги.СрокВозврата = 0;
    СпрКниги.Записать();

    КонецЦикла;

    КонецПроцедуры
     
  2. vitfil

    vitfil IT-интегратор

    Регистрация:
    2 апр 2004
    Сообщения:
    2.070
    Симпатии:
    0
    Как помочь? Сделать это за вас?
     
  3. jcnby

    jcnby Гость

    Интернет вам в помощь) там много всего интерестного)
     
  4. vitfil

    vitfil IT-интегратор

    Регистрация:
    2 апр 2004
    Сообщения:
    2.070
    Симпатии:
    0
    Больше всего радует запись справочника в модуле проведения, а еще впечатлила строка
    СпрЧитатели.КоличествоПредупреждений = СпрЧитатели.КоличествоПредупреждений + 1;
    трижды провели документ и читатель получил три предупреждения...
     
  5. XOXOJI

    XOXOJI Гость

    Начну помогать с малого, глядишь кто-нибудь еще проявиться


    СпрКниги.НайтиЭлемент(Книга); -7.7
    СпрКниги = Справочники.Книги.НайтиПоНаименованию(Книга); - самый думаю лучший будет вариант. создание объекта не нужно

    если не ошибаюсь, хотя могу, запись справочника производиться автоматически СпрЧитатели.Записать(); можно вычеркнуть

    пока все, посомтрим, сможешь ли остальное додумать
     
  6. tanat

    tanat Well-Known Member

    Регистрация:
    2 мар 2007
    Сообщения:
    265
    Симпатии:
    0
    Маразм - в обработке проведения делать чтото, что никак абсолютно не связянно с проведением по регистрам (это я о 8. не знаю, как в 7-ке). Напишите конкретную задачу, которую вам надо реализовать. А то, что вы выложили - это, извините, ерунда. Ерунду переделывать - проще все с чистого листа написать.
     
  7. vbs

    vbs Well-Known Member

    Регистрация:
    18 фев 2007
    Сообщения:
    1.708
    Симпатии:
    3
    Задача-то из текста понятна
    А вот с этим трудно не согласиться. 8кой не владею, но что-то мне подсказывает, что переписать грамотно это безобразие совсем не сложно
     
  8. gudron

    gudron Гость

    Это документ Возврат книги, при условии, что читатель вернул книгу позже срока ему начисляется предупреждение, читатель блокируется если у него накапливается определенное кол во предупреждений.
     
Загрузка...

Поделиться этой страницей