Бухгалтерия / Говнокод #25592 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
Запрос = Новый Запрос;
	Запрос.Текст = 
	"ВЫБРАТЬ
	|	ЭтапРемонт.Номер КАК Номер
	|ИЗ
	|	Документ.ЭтапРемонт КАК ЭтапРемонт
	|ГДЕ
	|	ЭтапРемонт.Основание = &Основание";
	Запрос.УстановитьПараметр("Основание", Объект.Ссылка);
	Выб = Запрос.Выполнить().Выбрать();
	Выгрузка = Запрос.Выполнить().Выгрузить();
	Количество = Выб.Количество();
	Если Количество > 0 Тогда
		Ссыль = Выгрузка[0].Номер;
		ЭтаФорма.Элементы.Этап.Заголовок = Документы.ЭтапРемонт.НайтиПоНомеру(Ссыль);
	КонецЕсли;

Задача кода - установить текстовое представление документа в надписи на форме, для этого автор сначала получает номер требуемого документа, потом проверяет выборку на наличие записей, а потом по полученному номеру ищет ссылку методом НайтиПоНомеру.
Говнокод в том, что:
1. Ссылку можно получить сразу же в запросе
2. Выгружать выборку в коллекцию значений нет никакой необходимости, можно всё необходимое взять из выборки, она для этого и предназначена.
Автор - один из франей Абакана.

Запостил: VladC VladC, (Updated )

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

  • Главный говнокод тут - что документ, полученный в запросе и документ в заголовке, полученный по НайтиПоНомеру - могут быть разные (если нумерация периодическая, например, или просто номера не уникальные).
    Ответить
    • Нумерация не периодическая, а так да, это был бы вообще лютый говнокод ;).
      Ответить

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

Из-за тебя ушел bormand, guest!

    А не использовать ли нам bbcode?


    8