[РЕШЕНО] ОбработкаПроверкиЗаполнения/НаСервере

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем Andy20151110, 25 май 2016.

  1. TopicStarter Overlay
    Andy20151110
    Offline

    Andy20151110 Новичок в 1С

    Регистрация:
    10 ноя 2015
    Сообщения:
    48
    Симпатии:
    1
    Баллы:
    4
    Добрый день!

    В модуле документа
    Написал процедуру

    &НаСервере
    Процедура ОбработкаПроверкиЗаполненияНаСервере(Отказ, ПроверяемыеРеквизиты)
    ЭтоУслуга = ПроверяемыеРеквизиты.Найти("ЭтоУслуга");
    сообщить(ЭтоУслуга);
    КонецПроцедуры

    Конфигурация УНФ
    1С ее не выпоняет! Почему?
  2. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.781
    Симпатии:
    509
    Баллы:
    204
    Отладчик вам поможет :)
  3. TopicStarter Overlay
    Andy20151110
    Offline

    Andy20151110 Новичок в 1С

    Регистрация:
    10 ноя 2015
    Сообщения:
    48
    Симпатии:
    1
    Баллы:
    4
    не помог!
  4. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.781
    Симпатии:
    509
    Баллы:
    204
    Да ладно? Где точку ставили ???
  5. Николаич87
    Offline

    Николаич87 Опытный в 1С

    Регистрация:
    1 апр 2015
    Сообщения:
    122
    Симпатии:
    4
    Баллы:
    29
    эта процедура вызывается только при интерактивном проведении
    если программно, то вызвать ее можно так ДокОбъект.ПроверитьЗаполнение()
    Плюс ко всему прочему у реквизита свойство Проверка заполнения должно стоять Выдавать ошибку
    alexburn нравится это.
  6. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.781
    Симпатии:
    509
    Баллы:
    204
    Воооо, что и требовалось доказать :)
  7. TopicStarter Overlay
    Andy20151110
    Offline

    Andy20151110 Новичок в 1С

    Регистрация:
    10 ноя 2015
    Сообщения:
    48
    Симпатии:
    1
    Баллы:
    4
    СПАСИБО. ПОМОГЛО.
    --- Объединение сообщений, 25 май 2016 ---
    Написал дальше...

    ЭтоУслуга = ПроверяемыеРеквизиты.Найти("ЭтоУслуга");
    ПакетныйТур = ПроверяемыеРеквизиты.Найти("ПакетныйТур");

    сообщить(ЭтоУслуга);

    Если ЗначениеЗаполнено(ЭтоУслуга) Тогда
    иначе
    Если Не ЗначениеЗаполнено(ПакетныйТур) Тогда
    // Если он не заполнен, сообщим об этом пользователю
    Сообщение = Новый СообщениеПользователю();
    Сообщение.Текст = "Не указан ПакетныйТур!";
    Сообщение.Поле = "ПакетныйТур";
    Сообщение.Сообщить();

    ПроверяемыеРеквизиты.Удалить(ПроверяемыеРеквизиты.Найти("ПакетныйТур"));

    Отказ = Истина;
    КонецЕсли;
    КонецЕсли;

    =====
    Выдает ошибку
    {Документ.ТА_ЗаявкаНаТур.Форма.ФормаДокумента.Форма(2543)}: Ошибка при вызове метода контекста (Удалить)
    ПроверяемыеРеквизиты.Удалить(ПроверяемыеРеквизиты.Найти("ПакетныйТур"));
    по причине:
    Несоответствие типов (параметр номер '1')
    Несоответствие типов (параметр номер '1')

    Ругается на строку
    ПроверяемыеРеквизиты.Удалить(ПроверяемыеРеквизиты.Найти("ПакетныйТур"));

    Почему?
  8. TopicStarter Overlay
    Andy20151110
    Offline

    Andy20151110 Новичок в 1С

    Регистрация:
    10 ноя 2015
    Сообщения:
    48
    Симпатии:
    1
    Баллы:
    4
    Это исправил...
    --- Объединение сообщений, 25 май 2016 ---
    Задачка:
    Реквизит "ЭтоУслуга" - тип булево.
    Нужно если "ЭтоУслуга" = истина
    тогда не проверять заполненость поля "ПакетныйТур"

    Если я закоментирую
    //ЭтоУслуга = ПроверяемыеРеквизиты.Найти("ЭтоУслуга");

    То выдает ошибку:
    {Документ.ТА_ЗаявкаНаТур.Форма.ФормаДокумента.Форма(2534,28)}: Переменная не определена (ЭтоУслуга)
    Если Не ЗначениеЗаполнено(<<?>>ЭтоУслуга) Тогда (Проверка: Сервер)


    Почему?
  9. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.781
    Симпатии:
    509
    Баллы:
    204
    Потому что вы закомментировали объявление переменной.
  10. TopicStarter Overlay
    Andy20151110
    Offline

    Andy20151110 Новичок в 1С

    Регистрация:
    10 ноя 2015
    Сообщения:
    48
    Симпатии:
    1
    Баллы:
    4
    "ЭтоУслуга" - это реквизит - тип "булево" документа (новый - я добавил)
  11. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.781
    Симпатии:
    509
    Баллы:
    204
    Тогда походу: Объект.ЭтоУслуга
    Andy20151110 и roofless нравится это.
  12. TopicStarter Overlay
    Andy20151110
    Offline

    Andy20151110 Новичок в 1С

    Регистрация:
    10 ноя 2015
    Сообщения:
    48
    Симпатии:
    1
    Баллы:
    4
    СПАСИБО. ВСЕ получилось.

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