fixin (fixin) wrote,
fixin
fixin

Тысяча 1С-чертей!

Давеча пришлось ковыряться с одним отчетом. На него не выделялось очень много времени,  т.к. горели сроки. А жаль, потому что хотелось этот отчет переписать заново.
Косяков там много, настоящий индийский код, хотя автор русский, лично его знаю, правда, он уже уволился.

Итак, основные проблемы отчета:

1. Отчет собран через UNION, т.е. объединяется запрос по остаткам и по движениям, в итоге добавить новый показатель в такую схему сложно, приходится прописывать нули во все остальные запросы, где это поле не рассчитывается. Аналогично сложно понять, как рассчитывается каждое конкретное поле – нужно высчитывать номер колонки в каждом запросе и смотреть, равна она нулю или нет.

2. Автору самому надоело менять этот UNION-отчет и некоторые показатели он вытаскивает отдельным запросом по каждой позиции. Выполняет не всегда (чтобы не напрягать отчет), а по условию. Но ошибся с условием, в итоге в нужных позициях не срабатывает иногда.

3. Копи-паста, друзья мои. Один и тот же расчет по позиции происходит  в двух местах. Нет, чтобы вынести в функции, так сделано дублирование. В итоге проще оказалось вынести те куски кода, в которых я точно уверен, что они одинаковые в двух местах, в отдельную функцию, остальное не трогал, поэтому мне менял эту копи-пасту.

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

5. Нет таблиц расшифровки. Данные строятся на основе одной таблицы, выводятся в другую. Пришлось вытащить на форму первую таблицу, чтобы понять некоторые моменты.

6. Скорость. В отчете 10 000 позиций. Отлаживать нереально – расчет длится минут 10. Пришлось добавить отбор, чтобы работал по 2-3 выбранным позициям.

Вот видите, коллеги, как важен в написании даже отчетов опыт. Потому что этот отчет использовался раз в год и был написан на тяп-ляп, но через год кое-что поменялось, и отчет пришлось менять, но уже другому человеку. Думайте о тех, кто придет после вас!

Tags:
Subscribe

Posts from This Journal “1С” Tag

  • Долгострои 1С

    Если вы хотите узнать, почему программисты 1С любят платформу 1С и местами ненавидят разработчиков этой платформы, то сейчас я Вам расскажу. Уже 10…

  • Ловкость рук и обработка результата запроса

    Как то я пообещал заказчику, что обработаю определенный список документов, но забыл, что эти документы были в базе с управляемыми формами. Как быть?…

  • 1С и искусственные серверные барьеры

    Заметил, что в управляемых формах 1С принуждает программистов к плохой архитектуре решений. Вкратце упомяну, что теперь большинство внешних…

  • Особенности белорусского Налогоплательщика

    Взял подработку у одного знакомого чувака из Беларуси. Платил мало (я то беру 1500 в час, а там по 800), но знакомый хороший, грех было отказывать,…

  • 1С отрицает очевидное

    Работаю с флагманом 1С, конфигурацией ERP. Вижу, что 1С прошило всю конфигурацию обращениями к модулям, где разработчик, внедряющий 1С может…

  • Как обмануть макет 1с?

    В 1С можно менять макеты в режиме 1с Предприятия. Но 1с-овцы не подумали, что пользователи не захотят видеть некоторые поля. Если просто удалить…

  • Корректировка регистра на 80 документов

    Мне прислали список из 80 документов, суммы которых нужно было внести в УПП в документ корректировки записей регистров для того, чтобы закрыть…

  • Ручной способ получить список реквизитов справочников

    Была поставлена задача расписать реквизиты справочника договоров и контрагентов в двух базах, написать соответствия между ними. Для начала нужно…

  • Открытие файла с нужным именем

    Небольшой гуру-тест. При сохранении файла в базу 1С сохраняется его первоначальное имя, например «Договор ННН.PDF». Задача – при открытии файла из…

Buy for 40 tokens
На сайтах знакомств хватает РСП. И мужчин, которые уже разобрались в вопросах гендера, и понимают, что мужчинам в современном обществе намного тяжелей, чем женщинам, тоже хватает. Иногда и те и другие начинают общаться. Получается забавно. Мужчина дает объявление: Поехали со мной в Тайланд (на…
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 18 comments