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

    +1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    Если НЕ Объект.Валютный Тогда
        Объект.ПересчитыватьВалютнуюСумму=Ложь;
    Иначе
        Объект.ПересчитыватьВалютнуюСумму=Истина;
    КонецЕсли;

    Типовая УХ

    Запостил: aumsej, 29 Мая 2020

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

    • ЙУХ
      Ответить
    • Если НЕ Объект.Валютный Тогда
          Объект.ПересчитыватьВалютнуюСумму=Ложь;
      КонецЕсли;
      
      Если Объект.Валютный Тогда
          Объект.ПересчитыватьВалютнуюСумму= Истина;
      КонецЕсли;
      Ответить
      • Вы будете смеяться, но там рядом с другой парой реквизитов так и есть. Только эти два условия разнесены - одно в форме ПередЗаписью, второе в модуле объекта, ПередЗаписью. Темна вода во облацех!
        Ответить
      • Надо добавить в 1С особый оператор для присваивания булева:
        Объект.ПересчитыватьВалютнуюСумму Если Объект.Валютный

        Красиво же.
        Ответить
        • Может и 1С героем стать, если Perl - герой )))
          Главное, чтобы они сразу оператор die добавили.
          И в ПриНачалеРаботыСистемы, чего мучать людей зазря...
          Ответить
        • в свистоперделке под названием 1с можно так:
          Объект.ПересчитыватьВалютнуюСумму=Объект .Валютный;
          Ответить
    • Змейка на 1скрипт https://oscript.io/downloads/examples/snake.os
      Ответить
      • Не знал про «Адынэсскрипт». Интересно. Выглядит, как «Бейсик».
        Ответить
        • выглядит как 1С
          Ответить
          • Функция РазложитьСтрокуВМассивПодстрок(Знач Строка, Знач Разделитель = ",", Знач ПропускатьПустыеСтроки = Неопределено, СокращатьНепечатаемыеСимволы = Ложь) Экспорт
            	
            	Результат = Новый Массив;
            	
            	// Для обеспечения обратной совместимости.
            	Если ПропускатьПустыеСтроки = Неопределено Тогда
            		ПропускатьПустыеСтроки = ?(Разделитель = " ", Истина, Ложь);
            		Если ПустаяСтрока(Строка) Тогда 
            			Если Разделитель = " " Тогда
            				Результат.Добавить("");
            			КонецЕсли;
            			Возврат Результат;
            		КонецЕсли;
            	КонецЕсли;
            	//
            	
            	Позиция = Найти(Строка, Разделитель);
            	Пока Позиция > 0 Цикл
            		Подстрока = Лев(Строка, Позиция - 1);
            		Если Не ПропускатьПустыеСтроки Или Не ПустаяСтрока(Подстрока) Тогда
            			Если СокращатьНепечатаемыеСимволы Тогда
            				Результат.Добавить(СокрЛП(Подстрока));
            			Иначе
            				Результат.Добавить(Подстрока);
            			КонецЕсли;
            		КонецЕсли;
            		Строка = Сред(Строка, Позиция + СтрДлина(Разделитель));
            		Позиция = Найти(Строка, Разделитель);
            	КонецЦикла;
            	
            	Если Не ПропускатьПустыеСтроки Или Не ПустаяСтрока(Строка) Тогда
            		Если СокращатьНепечатаемыеСимволы Тогда
            			Результат.Добавить(СокрЛП(Строка));
            		Иначе
            			Результат.Добавить(Строка);
            		КонецЕсли;
            	КонецЕсли;
            	
            	Возврат Результат;
            	
            КонецФункции
            Ответить
            • Моя думать, что язык 1С писался под впечатлением басика конечно.

              Кстати, код вполне читаемый и внятный.
              Ответить
              • Интересно, что знак = и в «Бейсике», и в «1С», и в «SQL» играет две роли: оператор присвоения и оператор сравнения. При этом неоднозначностей не возникает, потому что присваивать внутри условия оператора IF или цикла нельзя, в отличие от сишки.
                Ответить
                • То-есть присвоение не является выражением со значением?
                  Ответить
                  • Выходит, что так: оно ничего не возвращает.
                    Ответить
                • Именно поэтому я за «PHP».
                  Ответить

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