Базовый курс. Решение ДЗ №1

Представляем решение первого домашнего задания.

К сожалению, у Вас недостаточно прав для просмотра этой записи. Если Вы еще не залогинены на сайте
залогиньтесь.

Если не активировали токен — посмотрите видео-инструкцию (видео N5)

Если вы залогинены, у Вас активирован токен доступа, но вы все равно видите эту запись —
напишите нам на e-mail поддержки.

комментария 23 на “Базовый курс. Решение ДЗ №1”

  1. По работе был полный загруз, только сейчас приступила к выполнению домашних заданий. Признаюсь, мое решение было более громоздким.

  2. Когда просмотрел ответы, думал, что мое решение самое короткое, а оказывается…

  3. &НаСервере
    Функция РазрешенаПродажа(ВидКлиента, СортТовара)
    Если (ВидКлиента = “VIP”) И (СортТовара = “Высший”) Тогда
    Возврат Истина;
    КонецЕсли;
    Если (ВидКлиента = “VIP”) И (НЕ СортТовара = “Высший”)  Тогда
    Возврат Ложь;
    КонецЕсли;
    Если (НЕ ВидКлиента =”VIP”) И (НЕ(СортТовара = “Высший”)) Тогда
    Возврат Истина;
    КонецЕсли;
    Если  (НЕ (ВидКлиента = “VIP”)) И (НЕ СортТовара = “Брак”) Тогда
    Возврат Истина;

    КонецЕсли;

    КонецФункции // РазрешенаПродажа()
    &НаСервере
    Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    //Вставить содержимое обработчика

    Сообщить(РазрешенаПродажа(“Постоянный”, “Высший”)); //1
    Сообщить(РазрешенаПродажа(“Непостоянный”, “Брак”)); //1
    Сообщить(РазрешенаПродажа(“VIP”, “Брак”));          //0
    Сообщить(РазрешенаПродажа(“VIP”, “Высший”));        //1
    КонецПроцедуры
    &НаСервере Функция РазрешенаПродажа(ВидКлиента, СортТовара) Если (ВидКлиента = “VIP”) И (СортТовара = “Высший”) Тогда Возврат Истина; КонецЕсли;  Если (ВидКлиента = “VIP”) И (НЕ СортТовара = “Высший”)  Тогда Возврат Ложь; КонецЕсли; Если (НЕ ВидКлиента =”VIP”) И (НЕ(СортТовара = “Высший”)) Тогда  Возврат Истина; КонецЕсли; Если  (НЕ (ВидКлиента = “VIP”)) И (НЕ СортТовара = “Брак”) Тогда  Возврат Истина; КонецЕсли;   КонецФункции // РазрешенаПродажа()
    &НаСервереПроцедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) //Вставить содержимое обработчика Сообщить(РазрешенаПродажа(“Постоянный”, “Высший”)); //1 Сообщить(РазрешенаПродажа(“Непостоянный”, “Брак”)); //1 Сообщить(РазрешенаПродажа(“VIP”, “Брак”));          //0 Сообщить(РазрешенаПродажа(“VIP”, “Высший”));        //1КонецПроцедуры

  4. Подскажите пожалуйста.Сделал домашнее задание во внешней обработке,перестало появляться окно сообщений,что нужно сделать чтобы оно появилось.

  5. Спасибо, здорово!

  6. Посмотрел решение. Признаю что круто.

  7. О сколько нам открытий чудных
    Готовит просвещения дух………
    Спасибо, за урок )

  8. Вариант №1:
    Создал форму обработки. Создал реквизиты формы:
    ВидКлиента и СортТовара – строковые. В прцедуре ВидКлиентаПриИзменении (Элемент) {Сообщить(РезрешенаПродажа(ВидКлиента,СортТовара))}
    Аналогично в процедуре СортТовараПриИзменении{ Сообщить(РезрешенаПродажа(ВидКлиента,СортТовара))}
    Функция РазрешенаПродажа(ВидКлиента,СортТовара)
    Если ((ВидКлиента=”VIP”) и (СортТовара=”Высший”)) или ((ВидКлиента<>”VIP”) или (СортТовара<>”Высший”)) тогда Возврат Истина; Иначе Возврат Ложь; КонецЕсли;КонецФункции
    Вариант№2:
    Создал Перечисления: ВидКлиента -VIP и Постоянный,
    СортТовара-Высший и БРАК.
    Создал форму обработки. Создал реквизиты формы:
    ВидКлиента и СортТовара – Типа -Перечисленияссылка. В прцедуре ВидКлиентаПриИзменении (Элемент) {Сообщить(РезрешенаПродажа(ВидКлиента,СортТовара))}
    Аналогично в процедуре СортТовараПриИзменении{ Сообщить(РезрешенаПродажа(ВидКлиента,СортТовара))}
    Функция РазрешенаПродажа(ВидКлиента,СортТовара)
    Если ((ВидКлиента=Перечисления.ВидКлиента.VIP) и (СортТовара=Перечисления.СортТовара.Высший)) или ((ВидКлиента<>Перечисления.ВилКлиента.VIP) или (СортТовара<>Перечисления.СортТовара.Высший)) тогда Возврат Истина; Иначе Возврат Ложь; КонецЕсли;КонецФункции
     

  9. подскажите куда высылать дз. в вступных роликах не могу найти!

    • Отчитываться нужно в теме, где выложено задание №1.
      Там вы увидите комментарии многих других участников курса.

  10. Красивое решение, причем сходу не очевидное. Вероятно приходит с практикой. Спасибо, возьму на вооружение.

  11. Что тут сказать: “Простое решение простой задачи!” :)

  12. Моё решение было таким же, если писать функцию РазрешенаПродажа() без использования функции Исключающее_ИЛИ().

  13. Спасибо. Очень красивое решение.  Крайне понравилось!

  14. Гуляев Алексей 22.01.2011 в 15:52

    Решение проще простого, а я подумал что нужно сделать две задачи
    – XOR,
    – для решения VIP и Высший.

  15. Красиво =)
    Спасибо, возьму на вооружение

  16. Вальдемар 22.01.2011 в 14:08

    В принципе, многие догадались, что использовать xor удобно, чтобы не писать громоздкие условия через условный оператор. Но чтоб так просто, вообще без “если” ! Как говорил Энштейн:  надо делать просто, но не проще :)

  17. Такая строчка была записана сразу, но почему-то решил что не надо в XOR использовать = и  надо показать работу с И,ИЛИ,НЕ и расписал по-другому. Учту на будущее :)

  18. А у меня кодаки неместные и решение получилось сложнее.

    • Да, ваше решение серьезное, сейчас займусь его изучением.
      А с кодеком что не так? Получилось видео просмотреть?

  19. Учение свет, а не учёных тьма :))
    Извлёк хорошую пользу из этого урока. Спасибо

  20. Харитонов Алексей 22.01.2011 в 09:28

    Блин. А ларчик то просто открывался.
    Вместо каких то громозких условий одна операция сравнения.
     
    Спасибо!