Кодирование в 1С

Как использовать внутренний язык программы 1С

Что такое для вас красота? Когда я учился в колледже на бухгалтера-аудитора, на лекции по психологии я услышал высказывание (кажется, Гумилёва) о том, что такое есть красота, и звучало оно следующим образом.

Красота - это наивысшая степень целесообразности

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

Кодирование
  • Красивым может быть дом. И красота дома будет выражаться в целесообразности его архитектуры, внутреннего убранства, цветового сочетания мебели, обоев и ковра, цветов в вазе и свежих фруктов на журнальном столике.
  • Красивой может быть женщина. И красота женщины проявляется в её гармоничном и целесообразном вплетении в канву жизни. Жизни с окружающими друзьями и сотрудниками, кухонной утварью и косметикой, зимними сапожками и парфюмерией, любимым мужем и не менее красивыми детьми.

Красивым может быть и программный код, из которого потом слагаются алгоритмы, диалоговые формы, бизнесс-процессы и конфигурации, с которыми затем работают люди, желающие жить в красивом и целесообразном мире.

Я считаю, что любой человек, который стремится к званию успешного человека, должен иметь чувство красоты. Человек должен взглянуть на вещь, на явление или на человека и сразу почувствовать наличие или отсутствие красоты, которая является подтверждением того, что наблюдаемое явление целесообразно, а потому - гармонично вписывается в окружающий мир. И если так, то красивому можно пророчить долгую и успешную жизнь, потому что весь мир будет этому способствовать.

Красота спасёт мир

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

Почему же тогда некоторым людям так сложно увидеть в окружающем мире красивое? Почему некоторые творения совершенно не вписываются в окружающий мир, из-за чего не могут быть названы красивыми? Наверно, потому, что творец, желающий создать красивое, не осознаёт цели, поставленной перед ним Творцом, который создал его самого. И чтобы понять, для чего, например, программисту создавать конфигурацию, ему стоит разобраться, для чего был создан он сам. Не так ли, друзья?

Почему бухгалтеры не понимают программистов?

В конце сентября 2008 года я беседовал со своей очень хорошей знакомой. Мы вместе проработали в организации, для которой я создал конфигурацию. Я неизбежно благодарен той организации, потому что именно на ней я нашёл себя, как программиста. И теперь я питаю к этой организации самые тёплые чувства потому, что в ней осталось моё самое первое детище, созданное на платформе 1С.

О чём обычно говорят люди? Как правило, о проблемах. Ведь ещё великий русский классик Лев Николаевич Толстой заметил, что все счастливые люди одинаковы, а из несчастных людей каждый несчастен по-своему. И если разобраться, то в счастливых людях нет разнообразия, новизны и остроты чувств. А потому говорить о них скучно. Поэтому люди если говорят друг с другом, то о проблемах. И именно наши проблемы делают нас индивидуальностями.

Моя знакомая рассказала мне о том, как ей тяжело работается с новым программистом. Со мной ей было работать удобнее, потому что мне можно было всего лишь сказать "Андрей, расходная накладная неправильно считает", и я сам находил ошибку и исправлял её. Нынешний же программист требует, чтобы бухгалтер составила ему техническое задание и объяснила, по каким синтетическим счетам и какие суммы должны проводиться. Я понимаю, что не у всех программистов 1С есть высшее экономическое образование и степень магистра по бухгалтерскому учёту. Но я также понимаю бухгалтера, который ничего не понимает в программировании и зачастую не способен найти с программистом 1С общий язык. Из-за чего, кстати, большинство проектов автоматизации оказываются незавершёнными. А если и завершаются, то бухгалтер работать с ним не может. Иначе говоря, сие творение оказывается нецелесообразным и некрасивым.

Кодеры

И тогда я сам понял то, о чём часто слышал от знакомых программистов. Ведь из числа программистов можно и даже нужно вычленить многочисленную армию людей, которые не способны мыслить системно. Эти люди не могут воссоздать в своей голове всю многообразную структуру той системы, для которой они пишут свой программный код. Ведь из теории систем известно, что надёжность всей системы определяется надёжностью самого слабого её элемента. И если один из программных модулей 1С будет работать неправильно, значит и на всей системе 1С можно ставить крест!

Раньше, когда моя знакомая работала со мной, она была счастлива работать с 1С и рассказывала всем своим знакомым о том, насколько 1С - хорошая программа. Теперь же программа 1С для неё - это источник проблем и головной боли. Более того, некоторые операции нужно вести в MS Excel. А ведь это ужасно!

Раздел о кодировании

Чем закончилась история с моей знакомой? Я посоветовал ей найти нового программиста. Но и для меня беседа не прошла бесследно. Я понял, что на моём сайте "Я люблю 1С" нужно создать выделенный раздел о кодировании. Не скрою, что я несколько недолюбливаю людей, которые способны только писать программный код по составленному кем-то другим техническому заданию. Но я также смиренно признаю право таких людей на самоидентифиувцию и на занятие тем, что им удаётся лучше всего.

О красоте

И в завершение этой вступительной статьи я хочу рассказать о приятном явлении, которое часто сопровождает меня в моей красивой жизни. Скажем, когда я покупаю стиральную машину, я конечно же подключаю к процессу выбора свой ум, а потому интересуюсь параметрами стиральной машины, её достоинствами и недостатками. Но когда разумный выбор уже сделан, я замечаю, что выбранная стиральная машина является просто самой красивой из предложенных.

Или другой пример. На главной странице сайта "Я люблю 1С" располагается блок с картинками, нажав на которые можно перейти к соответствующему разделу сайта. Картинок уже много, и их нужно располагать в два ряда.  Семь, как известно, пополам без остатка не делится, а потому ряды были несимметричными, и общая картина была некрасивой. Я понимал и чувствовал, что картинки расположены некрасиво. И я также предвидел, что однажды наступит тот день, когда на сайте появится новый интересный раздел, а в рядах картинок - новая пиктограммка.

И вот теперь этот день настал! Информация на сайте теперь в ещё большей степени соответствует главной цели "Творить красоту", а сам сайт "Я люблю 1С" стал ещё более красивым!

Что в разделе?

Труд кодера прост, как пробка. Ведь правда же? На самом деле кодеры только тем и занимаются, что пишут функции и процедуры. Функции возвращают значения, а процедуры не возвращают значения. Ничего сложного. Другое дело, что функций и процедур бывает очень много, и каждая функция или процедура выполняет какую-то конкретную задачу. Но как ни крути, а даже всё многообразие функций с процедурами можно классифицировать и сгруппировать.

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

Как было замечено выше, в системе 1С:Предприятие имеется ограниченное количество типов метаданных. Но количество видов объектов метаданных может быть очень большим. А если учесть, что только у самой фирмы 1С имеется около пяти типовых конфигураций, то к этому числу добавляем количество конфигураций, написанных программистами 1С для собственных нужд или же для эксклюзивных нужд своих заказчиков. Как тогда работать с таким большим количеством баз данных? Оказывается, есть методы, позволяющие создавать универсальные обработки и отчёты, которые можно использовать на любой конфигурации системы 1С:Предприятие. Для этого нужно научиться работать с метаданными.

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

Но при всей своей мощи и великолепии, 1С нельзя назвать программой для работы с электронной почтой или текстовым редактором. И тогда помимо системы 1С:Предприятие используются такие программные продукты, как MS Excel, MS Outlook, Банк-Клиент и другие. Для обмена данными с внешними приложениями в системе 1С:Предприятие предусмотрены специальные методы. Более того, система 1С:Предприятие может связываться и обмениваться данными с внешними приложениями напрямую, если будет установлено соединение через механизм OLE Automation.

Ну что же? Инструменты для написания красивого программного кода у вас на руках. И теперь вы сможете легко и с удовольствием делать так, чтобы количество красоты в мире увеличивалось!

Реклама:
Смотрите также:
Поиск и нахождение ключа защиты для 1С
Почта доходит до нужного адресата своевременно
Переброска данных из 1С в Эксель
Обработка ячейки таблицы