1. 1C / Говнокод #27173

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    Если ЗначениеЗаполнено(Подразделение.Родитель.Родитель.Родитель) Тогда
    		ВышестоящееПодразделение = Подразделение.Родитель.Родитель.Родитель;
    	ИначеЕсли ЗначениеЗаполнено(Подразделение.Родитель.Родитель) Тогда
    		ВышестоящееПодразделение = Подразделение.Родитель.Родитель;
    	ИначеЕсли ЗначениеЗаполнено(Подразделение.Родитель) Тогда
    		ВышестоящееПодразделение = Подразделение.Родитель;
    	Иначе ВышестоящееПодразделение = Подразделение;
    	КонецЕсли;

    Найдем максимально вышестоящее подразделение, ну, до поры - до времени максимальное..

    Запостил: Stipa, 24 Декабря 2020

    Комментарии (18) RSS

    • А у вас родитель [ОБЪЕКТ НЕНАЙДЕН]
      Ответить
      • > НЕНАЙДЕН

        Так вот по чему ты так странно раз биваешь слова... Во всём виноват 1С.
        Ответить
    • Если объект не найден, проваливается вот сюда: Иначе ВышестоящееПодразделение = Подразделение;
      Ответить
      • Разве? По-моему значениезаполнено у объект НЕНАЙДЕН обрабатывает как истину
        Ответить
        • Я бы так написал (не знаю 1С, не ругайте):
          ВышестоящееПодразделение = Подразделение;
          Пока ЗначениеЗаполнено(ВышестоящееПодразделение.Родитель)
              ВышестоящееПодразделение = ВышестоящееПодразделение.Родитель;
          КонецПока
          Ответить
          • > КонецПока

            Нет, правильно писать НяПока КонецЦикла
            https://helpme1c.ru/cikly-v-yazyke-1s-8-v-primerax
            Ответить
          • НачатьПривет
            Ответить
          • Я бы сделал рекурсивной функцией
            Ответить
            • Функция ВышестоящееПоздравление(Поздравление)
                  Если ЗначениеЗаполнено(Поздравление.Родитель) Тогда
                      Вернуть ВышестоящееПоздравление(Поздравление.Родитель);
                  Иначе
                      Вернуть Поздравление
                  КонецЕсли
              КонецФункции
              Как-то так? Х.з., мне цикл почему-то больше нравится.
              Ответить
              • Да как-то так. И тебя я поздравляю. и у тебя ошибка, не хватает одной ;
                Ответить
                • Зачем вообще ";" в языках, где на каждый чих КонецФункции да КонецУсловия? В "Lua" и без них норм получилось.
                  Ответить
      • https://forum.mista.ru/topic.php?id=704537
        Ответить
    • Добрый вечер.

      Этот оффтоп сгенерирован автоматически.

      Индекс оффтопов: https://index.gcode.space/.
      Зеркала Говнокода и полезные ресурсы:
      * https://govnokod.xyz/ (альтернативный Говнокод)
      * https://gcode.space/ (read-only зеркало Говнокода)
      * https://t.me/GovnokodBot (Говнокод-бот в «Telegram»)
      * https://t.me/GovnokodChannel (Тематический канал в «Telegram»)
      * https://vorec.space/ (глоссарий Говнокода)
      * https://app.element.io/#/room/#govnokod:matrix.org (резервный чат)
      Ответить

    Добавить комментарий